π Pre-flight Checks
π Which Document?
DOCS.md β missing team usage section.
π What's Wrong or Missing?
DOCS.md documents Engram's mechanics well, but there is no guidance for teams adopting it collaboratively. Three specific gaps:
1. No mental model for scope: project vs scope: personal
The mem_save tool description only says:
"Scope for this observation: project (default) or personal"
There is no explanation of what this distinction means. A developer reading the docs cannot answer:
- Who can see each scope?
- Does git sync include
personal observations?
- When should I use one vs the other?
2. No language convention for shared memory
When a team uses engram sync to share project memory, there is no guidance on what language to use for scope: project observations.
Real scenario: a Spanish-speaking team works for a US English company. Code, commits, and PRs are in English. Personal notes (outside Engram) are in Spanish. But for scope: project Engram observations β no convention exists.
For globally distributed teams (e.g. Russian, French, Japanese, and English speakers on the same project), the consequences are concrete: if each developer saves project-scope memories in their native language, the shared knowledge base fragments. FTS5 cannot match a query in English against an observation saved in Spanish, so team members effectively can't find each other's shared knowledge.
3. No guidance on what belongs in each scope
Without a clear mental model, developers default to saving everything as scope: project (the default), polluting shared memory with personal notes β or avoid scope: personal entirely, missing the value of having a personal workspace within the same tool.
π‘ Suggested Improvement
A new docs/TEAM-USAGE.md (or a section added to DOCS.md) covering:
Scope mental model
scope: project = shared via git sync, accessible to all team members and their agents
scope: personal = your own workspace; syncs to your other devices via your personal sync repo, but not shared with teammates
- Rule of thumb: if a teammate's AI agent should find this β
project; if it's your personal learning or preference β personal
Language convention
scope: project β lingua franca of the team (English for most international teams)
scope: personal β any language you prefer
- Why it matters: the lingua franca ensures all teammates can search and find shared memories regardless of native language. FTS5 is language-agnostic but not multilingual β a search in one language won't match content in another.
What to save in each scope (with examples)
Git sync workflow for teams
- How
scope interacts with sync
- Personal sync repo (your devices) vs team sync repo (shared project)
I'm happy to write this documentation as a PR once approved.
π Additional Context
The scope parameter already supports this pattern by design β it just isn't explained. This is a documentation-only contribution with no code changes required.
The insight came from reasoning through a real cross-device + team-sharing use case: personal notes in any language syncing across my own devices, while shared team memory stays in the lingua franca. The system already handles this correctly β it just needs to be documented so other developers don't have to reason through it from scratch.
Originally reported in #175 (opened from wrong GitHub account).
π Pre-flight Checks
π Which Document?
DOCS.md β missing team usage section.
π What's Wrong or Missing?
DOCS.mddocuments Engram's mechanics well, but there is no guidance for teams adopting it collaboratively. Three specific gaps:1. No mental model for
scope: projectvsscope: personalThe
mem_savetool description only says:There is no explanation of what this distinction means. A developer reading the docs cannot answer:
personalobservations?2. No language convention for shared memory
When a team uses
engram syncto share project memory, there is no guidance on what language to use forscope: projectobservations.Real scenario: a Spanish-speaking team works for a US English company. Code, commits, and PRs are in English. Personal notes (outside Engram) are in Spanish. But for
scope: projectEngram observations β no convention exists.For globally distributed teams (e.g. Russian, French, Japanese, and English speakers on the same project), the consequences are concrete: if each developer saves project-scope memories in their native language, the shared knowledge base fragments. FTS5 cannot match a query in English against an observation saved in Spanish, so team members effectively can't find each other's shared knowledge.
3. No guidance on what belongs in each scope
Without a clear mental model, developers default to saving everything as
scope: project(the default), polluting shared memory with personal notes β or avoidscope: personalentirely, missing the value of having a personal workspace within the same tool.π‘ Suggested Improvement
A new
docs/TEAM-USAGE.md(or a section added toDOCS.md) covering:Scope mental model
scope: project= shared via git sync, accessible to all team members and their agentsscope: personal= your own workspace; syncs to your other devices via your personal sync repo, but not shared with teammatesproject; if it's your personal learning or preference βpersonalLanguage convention
scope: projectβ lingua franca of the team (English for most international teams)scope: personalβ any language you preferWhat to save in each scope (with examples)
Git sync workflow for teams
scopeinteracts with syncI'm happy to write this documentation as a PR once approved.
π Additional Context
The
scopeparameter already supports this pattern by design β it just isn't explained. This is a documentation-only contribution with no code changes required.The insight came from reasoning through a real cross-device + team-sharing use case: personal notes in any language syncing across my own devices, while shared team memory stays in the lingua franca. The system already handles this correctly β it just needs to be documented so other developers don't have to reason through it from scratch.