Skip to main content
ClaudeWave
Skill21.4k repo starsupdated 3d ago

screenpipe-chats

Search what was said in existing screenpipe, Codex, Claude, Cursor, and Gemini CLI chats, then continue or steer one exact chat when the user explicitly asks. Use for requests about finding another agent conversation, recalling what an agent said, or sending work to one.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/screenpipe/screenpipe /tmp/screenpipe-chats && cp -r /tmp/screenpipe-chats/crates/screenpipe-core/assets/skills/screenpipe-chats ~/.claude/skills/screenpipe-chats
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# existing agent chats

screenpipe exposes `search_chats` and `send_to_chat` as agent tools. They use a
private core capability passed into the current chat process; do not scrape
transcript folders, guess runtime commands, or call a localhost app route.

## search

1. Call `search_chats` with a short title, message, workspace, or exact id. The
   query also matches the transcript, so a phrase said mid-conversation finds
   the chat even when the title never mentions it. Omit the query to list recent
   chats. Filter `sources` only when the user named a runtime.
2. Show enough title, source, preview, and workspace information to distinguish
   ambiguous results.
3. Treat the returned `source` and `id` as the address. Never derive an id from
   a title or reuse a stale result after the target disappears.
4. Read the `warnings` array. Transcript reading is bounded to the most recent
   chats per runtime, so report that older chats were not searched instead of
   claiming a phrase was never said.

Searching is read-only and does not require confirmation.

## send

1. Require an exact result from `search_chats` in the current turn.
2. Require explicit user authorization for that target and message. A draft,
   suggestion, or request to inspect chats is not permission to send.
3. Call `send_to_chat` with the exact `source`, `id`, message, and
   `confirmed: true`.
4. Use `mode: queue` by default. Use `mode: steer` only when the user asked to
   redirect a currently running screenpipe chat.
5. Report the returned status and exact target. Do not retry an uncertain or
   failed send until the result is reconciled.

Gemini CLI chats are search-only: Gemini has no non-interactive resume, so
`send_to_chat` rejects them instead of opening an interactive session. Say so
and offer to summarize what the chat already contains.

The tool refuses self-sends, guessed ids, dormant-chat steering, oversized
messages, unsendable sources, and sends without confirmation. Cross-chat sending
is disabled in unattended scheduled runs.
releaseSkill

Release the screenpipe monorepo. Bumps versions, triggers GitHub Actions for app, CLI, MCP, and JS packages.

screenpipe-apiSkill

Query the user's local and synced-device data via the screenpipe REST API at localhost:3030 — recordings, audio, UI, meetings, connected services, and memory. Use for screen activity, other-device or cross-device history, productivity, media export, connections, or durable memory.

screenpipe-cliSkill

Set up and operate screenpipe from the terminal, including always-on recording, service modes, capture health, storage, local search, pipes, and connections. Use when the user asks to install, run, inspect, query, automate, or debug screenpipe without relying on the desktop app.

screenpipe-healthSkill

Check Screenpipe health status, process state, and diagnose common issues

screenpipe-logsSkill

Retrieve and analyze Screenpipe CLI backend logs and desktop app logs for debugging

screenpipe-tauriSkill

Add or change Tauri commands and TypeScript bindings in the screenpipe desktop app. Use when editing #[tauri::command] handlers, lib/utils/tauri.ts, or Rust types exported to the frontend.

screenpipe-teamSkill

Use the native Screenpipe CLI to query Enterprise team activity or safely preview, deploy, and schedule managed team Pipes. Injected only by the Enterprise app for active admins.

render-html-reportSkill

Produce a human-facing visual report — a chart, dashboard, scorecard, or styled summary — that renders as a live page in the screenpipe viewer instead of plain text. Use when the task asks for a visual/graphical output rather than a plain note; do NOT use for plain text or raw data (prefer a markdown note for those).