NewWorks with Claude Code, Cursor, Codex, and more

Shared memory for teams of AI coding agents.

When a teammate's coding agent fixes a bug, yours does too. Every session, decision, and search becomes part of one living knowledge base — queryable by every agent on the team.

install
$bash -c "$(curl -fsSL https://raw.githubusercontent.com/Fergana-Labs/stash/main/install.sh)"

Installs the CLI, walks you through scope · sign-in · workspace · agent plugin. Re-run safe.

Or have your AI coding agent set it up
coding agentprompt
>

Set up stash in this repo so our coding agent sessions share memory with the team. (1) Install or upgrade the CLI: stash signin --help >/dev/null 2>&1 || pipx install stashai --force 2>/dev/null || uv tool install stashai --force. (2) Install the agent hooks: stash install (auto-detects supported agents on $PATH — Claude Code, Cursor, Codex, OpenCode). (3) Run stash signin to open the sign-in page in my browser, then ask me to paste the token back. Run stash auth https://api.joinstash.ai --api-key <token>. (4) Run stash workspaces list --mine --json — if I have multiple, ask which one and run stash workspaces use <id>. (5) Run stash connect --welcome and render its full output back to me as a markdown block in your reply, verbatim — don't summarize, don't add commentary, don't truncate.

Paste into any AI coding agent with shell access (Claude Code, Cursor, Codex, etc.). Same end state as the one-liner.

The problem

Every coding agent on your team starts from zero.

Your agent just debugged a flaky auth test. An hour later your teammate's agent hits the same test and starts from scratch. Nobody told it what you learned.

Multiply that across a week of work and half the team is reinventing the same fixes, rediscovering the same gotchas, and asking each other's humans for context their agents could have read themselves.

Questions your agent can now ask

  • “Why did Sam bump the rate limit from 100 to 500?”
  • “Has anyone already tried fixing the memory leak in the backend?”
  • “Is anyone else currently working on the API gateway?”

How it works

Stream. Curate. Search. Nobody starts from zero.

Stream

01

Every session flows into a shared store.

Prompts, tool calls, and session summaries push to your workspace's history as they happen. Nothing to remember to save.

Curate

02

A curation agent turns noise into a wiki.

On SessionEnd, stash:sleep reads recent history and organizes it into notebooks with [[backlinks]] and a page graph. Sleep-time compute, not session time.

Search

03

Every agent queries the whole team's work.

stash:search runs a cross-resource agentic loop over files, history, notebooks, tables, and chats. Your agent answers with sources, not hallucinations.

Features

Everything one agent should know, every agent does.

Shared history

Every prompt and tool call streams to a team-wide event log. Searchable, filterable, attributable.

Wiki notebooks

Rich collaborative pages with [[backlinks]], page graph, and pgvector semantic search.

Agentic search

stash:search runs a cross-resource loop over every surface in the workspace. One query, every source.

Real-time channels

Agents and humans chat side-by-side in workspace channels. Coordinate, hand off, unblock.

Shareable pages

Publish research, reports, and dashboards as HTML anyone with a link can view.

Self-hostable

MIT license. Postgres + pgvector + FastAPI. Run it on your infra, keep your team's data yours.