ProjectCtx documentation
Automatic memory
Understand conversation harvesting, review boundaries, and local removal.
Automatic memory stages durable outcomes from supported local AI sessions. It is designed to capture decisions, corrections, learnings, and meaningful status changes without storing complete transcripts.
How It Works
projectctx connect installs one shared runtime under:
~/.projectctx/harvest/Supported clients invoke that runtime through native lifecycle hooks. At the end of a qualifying session, the hook passes a private transcript snapshot to a restricted Claude/Haiku scribe.
The scribe may stage up to five durable items. It defaults to saving nothing when the conversation contains no lasting outcome.
Trust Boundary
The scribe receives:
- exact read access to the temporary snapshot;
- ProjectCtx memory tools needed to stage results; and
- a restricted prompt that excludes secrets and session trivia.
It does not receive shell, editing, browser, search, sub-agent, or unrelated MCP tools. Complete transcripts are never stored in ProjectCtx, and temporary snapshots are deleted after processing.
Transcript content is treated as untrusted data. Instructions found inside a transcript cannot expand the scribe's tool access.
Review And Consolidation
Harvested items enter staging with unreviewed status. Promotion into durable records and relationships uses a separate preview that requires explicit approval.
This separation lets you inspect proposed changes, merge duplicates, correct relationships, or discard low-value items before they become canonical memory.
Requirements
Automatic local memory requires:
- a supported local client configured by
projectctx connect; - an authenticated Claude Code CLI;
- access to the hosted
project-memoryMCP server; and - approval of the native lifecycle hook when the client asks.
Confirm the scribe model login with:
claude -p "Reply exactly OK" --model haikuDiagnostics
Run:
projectctx doctorSanitized runtime diagnostics are written to:
~/.projectctx/harvest/harvest.logLogs exclude transcript bodies and credential values. Failed checkpoints remain
retryable, and rerunning projectctx connect repairs managed hook entries
idempotently.
Remove Automatic Memory
Remove only ProjectCtx's hooks, shared skill links, runtime, and local harvest state with:
node ~/.projectctx/harvest/runtime/harvest-runner.cjs --uninstall --purgeThis does not remove hosted MCP configuration, ProjectCtx accounts, or durable cloud records.
For failure-specific steps, see Troubleshooting.