Files
shahondin1624 eb1063da28 add cross-agent memory extension
A pi extension for reading and writing persistent memory across agent systems.

Reads its own canonical store (project ./.pi/memory/ + user ~/.pi/memory/, typed
markdown with frontmatter — Claude's user/feedback/project/reference taxonomy)
AND other agents' memory verbatim (Claude CLAUDE.md + ~/.claude/projects/<slug>/
memory/, Copilot, AGENTS.md, GEMINI.md, Aider CONVENTIONS.md). Writes only ever
touch the canonical store; foreign files are never modified.

Surfaces: memory_read / memory_search / memory_write / memory_forget tools,
/memory-* commands, and a canonical index appended to the system prompt at
agent start.

Enum-valued args (type/scope/system) are lenient strings normalized in-tool
rather than anyOf/const unions: some local models emit const-union values
JSON-quoted (e.g. "\"feedback\""), which strict schema validation rejected
before the tool ran. normalizeEnumArg strips the stray quoting; memory_read by
name also falls back to a foreign file of that name.

store.ts / sources.ts import only Node built-ins so tests load them directly
under --experimental-strip-types. 31 unit tests.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-29 08:23:39 +02:00

21 lines
356 B
Plaintext

# Default-deny: exclude every file and dir at the repo root,
# including dotfiles (so .env / .pi-runtime-caches never leak),
# then re-include only what we choose to track.
/*
/.*
# Re-included paths
!/.gitignore
!/README.md
!/ai-server/
!/dark-mechanicus/
!/llama.cpp/
!/memory/
!/scripts/
!/session-handoff/
!/shared/
!/tests/
!/themes/
!/token-stats/