# screenpipe

> Records your screen and audio continuously on your own machine and hands that history to your coding agents over MCP

- Category: Agents & Automation / Agent Memory
- Language: Rust
- Licence: Source-available — see LICENSE.md in the repository
- Repository: https://github.com/screenpipe/screenpipe
- Website: https://screenpipe.com
- Canonical page: https://ai-tldr.dev/tools/screenpipe/

## In short

screenpipe is a local recorder that gives an agent the context it otherwise has no way to get: what you actually did. It captures screen and audio continuously on your own machine, stores everything locally, and exposes that history so assistants such as Claude, Codex, OpenClaw, Hermes and Runner can search it. It sits in the Agent Memory category of the Agents & Automation tools and is open-source, written in Rust and licensed Source-available — see LICENSE.md in the repository.

## Overview

screenpipe is a local recorder that gives an agent the context it otherwise has no way to get: what you actually did. It captures screen and audio continuously on your own machine, stores everything locally, and exposes that history so assistants such as Claude, Codex, OpenClaw, Hermes and Runner can search it. The pitch on the repository is plain — 'screenpipe remembers how you actually work' — and the practical result is that you can ask an agent what you saw in the last five minutes, or to summarise today's conversations, and get an answer grounded in a recording rather than a guess.

What it captures is broader than screenshots. It reads the full accessibility tree, falling back to OCR where that is unavailable, and records transcription with speaker attribution, keyboard input and application switches. Search is natural-language. Filters exist at the window, application and Chrome-extension level, plus password filtering and a proprietary AI PII model, and there is optional encryption at rest. Everything works offline.

The published resource envelope is modest for an always-on recorder: 5–10% CPU, 0.5–3 GB of RAM and roughly 20 GB of storage per month. It installs as a desktop application with auto-updates, or as a CLI, and registers with Claude Code as an MCP server in one command. A shipped skill file documents CLI-only operation for coding agents — the recorder-first service default, how to verify capture freshness and storage, local search, safe read-only SQLite access, pipes and connections — so an agent working from the repository can set capture up itself.

screenpipe is a YC S26 company and the code is source-available rather than open source under a standard licence; the repository's LICENSE.md is the authority on what you may do with it. Its own framing of the team feature is worth noting: a shared 'company brain' built without turning the product into surveillance.

## What it does

- Continuous local capture of screen, audio, accessibility tree, transcription with speakers, keyboard input and app switches
- 100% local storage with optional encryption at rest, and full offline operation
- Natural-language search over your own history, plus an MCP server so agents can query it directly
- Filters at window, application and Chrome-extension level, with password filtering and a PII model
- Modest always-on footprint: 5–10% CPU, 0.5–3 GB RAM, ~20 GB storage per month
- A shipped CLI skill for coding agents covering service setup, capture-freshness checks, search, pipes and read-only SQLite access
- Pipes — generated agents, skills and automations that act on what you do

## Getting started

The desktop application is the complete experience and auto-updates; the CLI does the same job from a terminal. Commands below come from the project README.

1. Start recording

   Either download the desktop app, or run the recorder straight from npx.

```bash
npx screenpipe record
```

2. Wire it into your agents

   screenpipe setup installs the skills and MCP configuration into every supported agent it finds on the machine; the second form registers it with Claude Code directly.

```bash
npx screenpipe setup
# or, for Claude Code only:
claude mcp add screenpipe -- npx -y screenpipe-mcp@latest
```

3. Ask it something

   Once capture is running and the MCP server is registered, query your own history in natural language.

```text
what did i see in the last 5 mins?
summarize today conversations
create a pipe that updates linear every time i work on task X
```

## When to use it

- Giving a coding agent real context about what you were working on instead of re-explaining it each session
- Recovering something you saw or heard hours ago without knowing which app it was in
- Summarising meetings and calls from local transcription with speaker attribution
- Building pipes that trigger automations from observed activity, such as updating a tracker when you work on a task
