Use this page before reviewing or making a change. It turns the codebase map into practical guardrails.
| Capability | Maintainer lens |
|---|---|
| Agent setup | Does the selected adapter receive the right files without clobbering user content? |
| Persistent memory wiring | Does Engram MCP setup stay stable across terminals and IDE-launched agents? |
| SDD workflow | Do orchestrator, phase agents, skills, and model assignment files stay consistent? |
| Sync | Is repeated sync a no-op when assets are current? |
| Backup/rollback | Can users recover from every managed mutation? |
| TUI | Does the interactive path match CLI behavior where it should? |
| Updates | Are binary upgrade and post-upgrade sync guidance clear? |
| Skill registry | Does .atl/skill-registry.md reflect the skills users and subagents need? |
| Community tools | Is optional tool guidance separate from plugin registration and external runtime ownership? |
- Read the user-facing doc first.
- Find the owning package in Repository map.
- Inspect nearby tests before changing code.
- Check generated assets and golden files if output changes.
- Update the smallest relevant doc page.
- Do not touch local runtime state:
.engram/engram.db,.engram/cloud.json, and accidentalmainfiles are not documentation inputs. - Do not invent external internals: dashboard, cloud, and Engram store implementation must be backed by source or linked external docs.
- Do not bypass adapters: path and strategy logic belongs in agent packages.
- Do not bypass backups: any user config write needs a recovery story.
- Do not duplicate references: link to Usage, Engram Commands, or specialized docs for detailed command/API behavior.
- Add or update
model.AgentIDandcatalogentry. - Implement adapter paths and strategies.
- Wire component support through existing interfaces.
- Add tests for paths and generated config.
- Update Agents and README table if user-visible.
- Keep behavior in
internal/components/<component>/. - Verify planner dependencies still order correctly.
- Test idempotency and merge behavior.
- Update docs for the affected component only.
- Keep flag parsing in CLI packages.
- Mirror interactive choices in TUI only when intended.
- Update Usage.
- Add screen or app dispatch tests.
- Keep scan/cache behavior in
internal/skillregistry/. - Route command changes through
internal/app/skill-registry dispatch. - Update Skill Registry when user-visible flags or output change.
- Regenerate
.atl/skill-registry.mdonly when the indexed skills intentionally change.
- Use
internal/components/communitytool/for external tool install orchestration plus managed guidance/config/MCP reconciliation. - Use
internal/components/opencodeplugin/for OpenCode TUI plugin registration: external plugins add package names, while Gentle Logo writes/registers the managed local plugin file. - Keep external runtime ownership explicit in docs.
- Test idempotent sync/registration behavior.
- Keep version/update checks in
internal/update/and external tool execution ininternal/update/upgrade/. - Confirm TUI upgrade and upgrade+sync screens still match CLI behavior.
- Document post-upgrade sync guidance without implying unmanaged local files are modified.
- Test skipped, failed, and partial upgrade paths.
- Validate claims against source files.
- Link to existing references instead of copying them.
- Run markdown link validation for changed docs.
- Keep English filenames, headings, labels, and content.
| Review question | Why it matters |
|---|---|
| Does the change have one owner? | Prevents scattered behavior and future drift. |
| Is sync idempotent? | Users run sync after every upgrade. |
| Are user files protected? | This tool edits external config roots. |
| Are docs linked from the right entry point? | Maintainers and users need discoverability. |
| Are external capabilities represented honestly? | Avoids promising dashboard/cloud/API behavior that is not in this repo. |
Previous: Integrations | Next: Reference map