@prmichaelsen/remember-mcp 3.15.4 → 3.15.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/AGENT.md +363 -5
  2. package/CHANGELOG.md +7 -0
  3. package/agent/commands/acp.clarification-capture.md +386 -0
  4. package/agent/commands/acp.clarification-create.md +50 -0
  5. package/agent/commands/acp.command-create.md +60 -0
  6. package/agent/commands/acp.design-create.md +62 -0
  7. package/agent/commands/acp.design-reference.md +355 -0
  8. package/agent/commands/acp.index.md +423 -0
  9. package/agent/commands/acp.init.md +48 -0
  10. package/agent/commands/acp.package-create.md +1 -0
  11. package/agent/commands/acp.package-info.md +1 -0
  12. package/agent/commands/acp.package-install.md +19 -0
  13. package/agent/commands/acp.package-list.md +1 -0
  14. package/agent/commands/acp.package-publish.md +1 -0
  15. package/agent/commands/acp.package-remove.md +1 -0
  16. package/agent/commands/acp.package-search.md +1 -0
  17. package/agent/commands/acp.package-update.md +1 -0
  18. package/agent/commands/acp.package-validate.md +1 -0
  19. package/agent/commands/acp.pattern-create.md +60 -0
  20. package/agent/commands/acp.plan.md +25 -0
  21. package/agent/commands/acp.proceed.md +621 -75
  22. package/agent/commands/acp.project-create.md +3 -0
  23. package/agent/commands/acp.project-info.md +3 -0
  24. package/agent/commands/acp.project-list.md +3 -1
  25. package/agent/commands/acp.project-set.md +1 -0
  26. package/agent/commands/acp.project-update.md +14 -3
  27. package/agent/commands/acp.projects-restore.md +228 -0
  28. package/agent/commands/acp.projects-sync.md +347 -0
  29. package/agent/commands/acp.report.md +13 -0
  30. package/agent/commands/acp.resume.md +3 -1
  31. package/agent/commands/acp.sessions.md +301 -0
  32. package/agent/commands/acp.status.md +13 -0
  33. package/agent/commands/acp.sync.md +1 -0
  34. package/agent/commands/acp.task-create.md +105 -3
  35. package/agent/commands/acp.update.md +1 -0
  36. package/agent/commands/acp.validate.md +32 -2
  37. package/agent/commands/acp.version-check-for-updates.md +1 -0
  38. package/agent/commands/acp.version-check.md +1 -0
  39. package/agent/commands/acp.version-update.md +1 -0
  40. package/agent/commands/command.template.md +23 -0
  41. package/agent/commands/git.commit.md +1 -0
  42. package/agent/commands/git.init.md +1 -0
  43. package/agent/design/complete-tool-set.md +157 -233
  44. package/agent/design/design.template.md +18 -0
  45. package/agent/design/user-preferences.md +11 -7
  46. package/agent/milestones/milestone-19-new-search-ghost-tools.md +46 -0
  47. package/agent/package.template.yaml +50 -0
  48. package/agent/patterns/pattern.template.md +18 -0
  49. package/agent/progress.yaml +162 -6
  50. package/agent/scripts/acp.common.sh +258 -15
  51. package/agent/scripts/acp.install.sh +91 -4
  52. package/agent/scripts/acp.package-create.sh +0 -1
  53. package/agent/scripts/acp.package-info.sh +19 -1
  54. package/agent/scripts/acp.package-install-optimized.sh +1 -1
  55. package/agent/scripts/acp.package-install.sh +388 -38
  56. package/agent/scripts/acp.package-list.sh +52 -4
  57. package/agent/scripts/acp.package-remove.sh +77 -1
  58. package/agent/scripts/acp.package-search.sh +2 -2
  59. package/agent/scripts/acp.package-update.sh +91 -12
  60. package/agent/scripts/acp.package-validate.sh +136 -1
  61. package/agent/scripts/acp.project-info.sh +34 -11
  62. package/agent/scripts/acp.project-list.sh +4 -0
  63. package/agent/scripts/acp.project-update.sh +66 -19
  64. package/agent/scripts/acp.projects-restore.sh +170 -0
  65. package/agent/scripts/acp.projects-sync.sh +155 -0
  66. package/agent/scripts/acp.sessions.sh +725 -0
  67. package/agent/scripts/acp.version-update.sh +21 -3
  68. package/agent/scripts/acp.yaml-parser.sh +20 -6
  69. package/agent/tasks/milestone-19-new-search-ghost-tools/task-203-create-search-by-tool.md +143 -0
  70. package/agent/tasks/milestone-19-new-search-ghost-tools/task-204-add-new-filters-existing-tools.md +77 -0
  71. package/agent/tasks/milestone-19-new-search-ghost-tools/task-205-add-feel-fields-create-update.md +137 -0
  72. package/agent/tasks/milestone-19-new-search-ghost-tools/task-206-add-byproperty-bysignificance-modes.md +135 -0
  73. package/agent/tasks/milestone-19-new-search-ghost-tools/task-207-add-emotional-composites-search-results.md +88 -0
  74. package/agent/tasks/milestone-19-new-search-ghost-tools/task-208-add-bybroad-byrandom-modes.md +115 -0
  75. package/agent/tasks/milestone-19-new-search-ghost-tools/task-209-create-ghost-memory-tools.md +192 -0
  76. package/agent/tasks/milestone-19-new-search-ghost-tools/task-210-create-get-core-tool.md +203 -0
  77. package/agent/tasks/milestone-19-new-search-ghost-tools/task-211-create-search-space-by-tool.md +182 -0
  78. package/agent/tasks/task-1-{title}.template.md +19 -0
  79. package/agent/tasks/unassigned/bug-report-remember-core-e2e-findings.md +99 -0
  80. package/dist/e2e-helpers.d.ts +26 -0
  81. package/dist/ghost-persona.e2e.d.ts +8 -0
  82. package/dist/memory-crud.e2e.d.ts +8 -0
  83. package/dist/preferences.e2e.d.ts +8 -0
  84. package/dist/relationships.e2e.d.ts +8 -0
  85. package/dist/search-modes.e2e.d.ts +8 -0
  86. package/dist/server-factory.js +1971 -94
  87. package/dist/server.js +1168 -45
  88. package/dist/shared-spaces.e2e.d.ts +8 -0
  89. package/dist/tools/create-ghost-memory.d.ts +70 -0
  90. package/dist/tools/create-memory.d.ts +175 -0
  91. package/dist/tools/get-core.d.ts +28 -0
  92. package/dist/tools/get-core.spec.d.ts +2 -0
  93. package/dist/tools/ghost-tools.spec.d.ts +2 -0
  94. package/dist/tools/query-ghost-memory.d.ts +34 -0
  95. package/dist/tools/query-memory.d.ts +4 -0
  96. package/dist/tools/search-by.d.ts +147 -0
  97. package/dist/tools/search-by.spec.d.ts +2 -0
  98. package/dist/tools/search-ghost-memory-by.d.ts +54 -0
  99. package/dist/tools/search-ghost-memory.d.ts +53 -0
  100. package/dist/tools/search-memory.d.ts +19 -0
  101. package/dist/tools/search-space-by.d.ts +78 -0
  102. package/dist/tools/search-space-by.spec.d.ts +2 -0
  103. package/dist/tools/search-space.d.ts +2 -0
  104. package/dist/tools/update-ghost-memory.d.ts +51 -0
  105. package/dist/tools/update-memory.d.ts +175 -0
  106. package/jest.e2e.config.js +11 -0
  107. package/package.json +2 -2
  108. package/src/e2e-helpers.ts +86 -0
  109. package/src/ghost-persona.e2e.ts +215 -0
  110. package/src/memory-crud.e2e.ts +203 -0
  111. package/src/preferences.e2e.ts +88 -0
  112. package/src/relationships.e2e.ts +156 -0
  113. package/src/search-modes.e2e.ts +184 -0
  114. package/src/server-factory.ts +56 -0
  115. package/src/shared-spaces.e2e.ts +204 -0
  116. package/src/tools/create-ghost-memory.ts +103 -0
  117. package/src/tools/create-memory.ts +45 -1
  118. package/src/tools/get-core.spec.ts +223 -0
  119. package/src/tools/get-core.ts +109 -0
  120. package/src/tools/ghost-tools.spec.ts +361 -0
  121. package/src/tools/query-ghost-memory.ts +63 -0
  122. package/src/tools/query-memory.ts +4 -0
  123. package/src/tools/search-by.spec.ts +325 -0
  124. package/src/tools/search-by.ts +298 -0
  125. package/src/tools/search-ghost-memory-by.ts +80 -0
  126. package/src/tools/search-ghost-memory.ts +73 -0
  127. package/src/tools/search-memory.ts +23 -0
  128. package/src/tools/search-space-by.spec.ts +289 -0
  129. package/src/tools/search-space-by.ts +173 -0
  130. package/src/tools/search-space.ts +20 -1
  131. package/src/tools/update-ghost-memory.ts +86 -0
  132. package/src/tools/update-memory.ts +45 -1
package/AGENT.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Agent Context Protocol (ACP)
2
2
 
3
3
  **Also Known As**: The Agent Directory Pattern
4
- **Version**: 4.5.0
4
+ **Version**: 5.13.1
5
5
  **Created**: 2026-02-11
6
6
  **Status**: Production Pattern
7
7
 
@@ -17,16 +17,17 @@
17
17
  6. [How to Use the Agent Pattern](#how-to-use-the-agent-pattern)
18
18
  7. [Pattern Significance & Impact](#pattern-significance--impact)
19
19
  8. [Problems This Pattern Solves](#problems-this-pattern-solves)
20
- 9. [Instructions for Future Agents](#instructions-for-future-agents)
21
- 10. [Best Practices](#best-practices)
20
+ 9. [Key File Index](#key-file-index)
21
+ 10. [Instructions for Future Agents](#instructions-for-future-agents)
22
+ 11. [Best Practices](#best-practices)
22
23
  - [Critical Rules](#critical-rules)
23
24
  - [Workflow Best Practices](#workflow-best-practices)
24
25
  - [Documentation Best Practices](#documentation-best-practices)
25
26
  - [Organization Best Practices](#organization-best-practices)
26
27
  - [Progress Tracking Best Practices](#progress-tracking-best-practices)
27
28
  - [Quality Best Practices](#quality-best-practices)
28
- 11. [What NOT to Do](#what-not-to-do)
29
- 12. [Keeping ACP Updated](#keeping-acp-updated)
29
+ 12. [What NOT to Do](#what-not-to-do)
30
+ 13. [Keeping ACP Updated](#keeping-acp-updated)
30
31
 
31
32
  ---
32
33
 
@@ -124,6 +125,16 @@ project-root/
124
125
  │ │ │ └── task-{M}-{name}.md
125
126
  │ │ └── task-{N}-{name}.md # Legacy flat structure (older tasks)
126
127
  │ │
128
+ │ ├── files/ # Template source files (in packages)
129
+ │ │ ├── config/ # Config templates
130
+ │ │ └── src/ # Source code templates
131
+ │ │
132
+ │ ├── index/ # Key file index
133
+ │ │ ├── .gitkeep
134
+ │ │ ├── local.main.yaml # Project's own key files
135
+ │ │ ├── local.main.template.yaml# Template with schema docs
136
+ │ │ └── {pkg}.main.yaml # Package-shipped indices
137
+ │ │
127
138
  │ └── progress.yaml # Progress tracking
128
139
 
129
140
  └── (project-specific files) # Your project structure
@@ -677,6 +688,123 @@ When working in any project, you can discover globally installed packages:
677
688
 
678
689
  ---
679
690
 
691
+ ## Project Registry System
692
+
693
+ ACP supports a global project registry at `~/.acp/projects.yaml` that tracks all projects in the `~/.acp/projects/` workspace. This enables project discovery, context switching, and metadata management across your entire ACP workspace.
694
+
695
+ ### Key Features
696
+
697
+ - **Project Discovery**: List all registered projects with filtering options
698
+ - **Context Switching**: Quickly switch between projects using `@acp.project-set`
699
+ - **Metadata Tracking**: Track project type, status, tags, and relationships
700
+ - **Automatic Registration**: Projects auto-register when created via `@acp.project-create`
701
+ - **Sync Discovery**: Find and register existing projects with `@acp.projects-sync`
702
+
703
+ ### Commands
704
+
705
+ | Command | Description |
706
+ |---------|-------------|
707
+ | [`@acp.project-list`](agent/commands/acp.project-list.md) | List all registered projects with optional filtering |
708
+ | [`@acp.project-set`](agent/commands/acp.project-set.md) | Switch to a project (set as current) |
709
+ | [`@acp.project-info`](agent/commands/acp.project-info.md) | Show detailed project information |
710
+ | [`@acp.project-update`](agent/commands/acp.project-update.md) | Update project metadata |
711
+ | [`@acp.project-remove`](agent/commands/acp.project-remove.md) | Remove project from registry |
712
+ | [`@acp.projects-sync`](agent/commands/acp.projects-sync.md) | Discover and register existing projects |
713
+
714
+ ### Registry Structure
715
+
716
+ The `~/.acp/projects.yaml` file tracks all registered projects:
717
+
718
+ ```yaml
719
+ projects:
720
+ - name: my-project
721
+ path: /home/user/.acp/projects/my-project
722
+ type: library
723
+ status: in_progress
724
+ registered: 2026-02-23T10:00:00Z
725
+ last_accessed: 2026-02-26T15:30:00Z
726
+ tags:
727
+ - typescript
728
+ - npm
729
+ related_projects: []
730
+ description: My awesome project
731
+
732
+ current_project: my-project
733
+ ```
734
+
735
+ ### Example Workflow
736
+
737
+ ```bash
738
+ # List all projects
739
+ @acp.project-list
740
+
741
+ # Switch to a specific project
742
+ @acp.project-set my-project
743
+
744
+ # View project details
745
+ @acp.project-info
746
+
747
+ # Update project metadata
748
+ @acp.project-update --tags "typescript,api,rest"
749
+
750
+ # Discover unregistered projects
751
+ @acp.projects-sync
752
+
753
+ # Remove a project from registry (keeps files)
754
+ @acp.project-remove old-project
755
+ ```
756
+
757
+ ### For Agents: How to Use the Registry
758
+
759
+ When working in any ACP project, you can:
760
+
761
+ 1. **Check current project**: Read `~/.acp/projects.yaml` and find `current_project`
762
+ 2. **List available projects**: Use `@acp.project-list` to see all projects
763
+ 3. **Switch context**: Use `@acp.project-set <name>` to change projects
764
+ 4. **Get project info**: Use `@acp.project-info` for detailed metadata
765
+
766
+ **Automatic Tracking**: The `@acp.init` command automatically reads the registry and reports the current project context.
767
+
768
+ ---
769
+
770
+ ## Sessions System
771
+
772
+ ACP supports global session tracking via `~/.acp/sessions.yaml` for awareness of concurrent agent work across projects. When multiple `claude` terminals run from a single IDE instance, sessions give each agent visibility into what other agents are doing.
773
+
774
+ This is an advisory-only visibility layer — no locking or coordination. Sessions are registered at `@acp.init` and deregistered at `@acp.report`, with automatic stale cleanup for crashed terminals.
775
+
776
+ ### What sessions.yaml Tracks
777
+
778
+ Each session entry contains: session ID, project name, description, timestamps (started, last_activity), status (active/idle), current milestone and task, PID (for stale detection), terminal, and optional remote URL.
779
+
780
+ ### Commands
781
+
782
+ | Command | Description |
783
+ |---------|-------------|
784
+ | [`@acp.sessions`](agent/commands/acp.sessions.md) | List, clean, deregister, or count sessions |
785
+ | `@acp.sessions list` | Show all active sessions |
786
+ | `@acp.sessions clean` | Remove stale sessions (dead PIDs, timeouts) |
787
+ | `@acp.sessions deregister` | End current session |
788
+
789
+ ### Integration with Other Commands
790
+
791
+ | Command | Integration |
792
+ |---------|-------------|
793
+ | `@acp.init` | Registers session and displays active siblings |
794
+ | `@acp.status` | Shows session count ("Sessions: N active") |
795
+ | `@acp.report` | Deregisters session on completion |
796
+
797
+ All integrations are optional — if `acp.sessions.sh` is missing, commands skip the session step silently.
798
+
799
+ ### Session Lifecycle
800
+
801
+ 1. **Register**: `@acp.init` registers a session with project, PID, timestamps
802
+ 2. **Heartbeat**: Activity updates via `acp.sessions.sh heartbeat`
803
+ 3. **Deregister**: `@acp.report` ends the session, or manual via `@acp.sessions deregister`
804
+ 4. **Stale Cleanup**: Dead PIDs removed immediately; inactive >2h removed; inactive >30m marked idle
805
+
806
+ ---
807
+
680
808
  ## Experimental Features
681
809
 
682
810
  ACP supports marking features as "experimental" to enable safe innovation without affecting stable installations.
@@ -754,6 +882,196 @@ Validation ensures consistency:
754
882
 
755
883
  ---
756
884
 
885
+ ## Benchmark Suite
886
+
887
+ ACP includes an automated E2E benchmark system that compares project outcomes with and without ACP to generate quantitative success metrics.
888
+
889
+ ### Quick Start
890
+
891
+ ```bash
892
+ # Run all benchmarks (ACP vs baseline)
893
+ bash agent/benchmarks/runner/run-benchmark.sh
894
+
895
+ # Run a specific task
896
+ bash agent/benchmarks/runner/run-benchmark.sh --task complex-auth-system
897
+
898
+ # Run ACP mode only, 3 runs for statistical averaging
899
+ bash agent/benchmarks/runner/run-benchmark.sh --task medium-rest-api --acp-only --runs 3
900
+
901
+ # Serve HTML reports
902
+ bash agent/benchmarks/runner/serve-reports.sh
903
+ ```
904
+
905
+ ### Benchmark Tasks
906
+
907
+ | Task | Complexity | Steps | Description |
908
+ |------|-----------|-------|-------------|
909
+ | hello-world | simple | 1 | Basic script creation |
910
+ | simple-cli-tool | medium | 3 | CSV-to-JSON CLI tool |
911
+ | medium-rest-api | medium | 4 | Express CRUD API with refactoring |
912
+ | complex-auth-system | complex | 5 | JWT authentication system |
913
+ | legacy-refactor | complex | 6 | Refactor messy legacy app (seed-based) |
914
+ | order-pipeline | complex | 7 | Order system with event-driven pivot |
915
+
916
+ ### How It Works
917
+
918
+ 1. Each task runs in an isolated temp directory using `claude -p` (non-interactive mode)
919
+ 2. Multi-turn conversations use `--resume` for step-by-step execution
920
+ 3. ACP mode installs ACP and injects `@acp.plan` / `@acp.proceed` directives
921
+ 4. After execution: automated verification checks + LLM evaluator (6-category rubric)
922
+ 5. Reports generated in Markdown and HTML (with Chart.js radar charts)
923
+
924
+ ### Key Files
925
+
926
+ - `agent/benchmarks/runner/run-benchmark.sh` — Main entry point
927
+ - `agent/benchmarks/runner/run-single.sh` — Single task/mode runner
928
+ - `agent/benchmarks/runner/verify.sh` — Verification functions per task
929
+ - `agent/benchmarks/runner/evaluator-prompt.md` — LLM evaluator rubric
930
+ - `agent/benchmarks/suite/` — Benchmark task definitions
931
+ - `agent/benchmarks/reports/` — Generated reports (gitignored)
932
+ - `.github/workflows/benchmark.yaml` — On-demand CI workflow
933
+
934
+ ### Design Document
935
+
936
+ See [agent/design/local.benchmark-suite.md](agent/design/local.benchmark-suite.md) for the full design specification.
937
+
938
+ ---
939
+
940
+ ## Template Source Files
941
+
942
+ ACP packages can bundle template source files (code, configs, etc.) alongside patterns, commands, and designs. Templates are declared in the `contents.files` section of `package.yaml` and stored in the `agent/files/` directory of the package.
943
+
944
+ ### Templates vs Other Content Types
945
+
946
+ | Type | Location | Purpose |
947
+ |------|----------|---------|
948
+ | Patterns | `agent/patterns/` | Documentation and guidance |
949
+ | Commands | `agent/commands/` | Agent directives |
950
+ | Designs | `agent/design/` | Architecture documentation |
951
+ | Scripts | `agent/scripts/` | Shell utilities |
952
+ | **Files** | **Project root (target paths)** | **Actual code and config files** |
953
+
954
+ ### Installing Template Files
955
+
956
+ ```bash
957
+ # Install all files (templates install to target paths)
958
+ @acp.package-install --repo <url>
959
+
960
+ # Install specific template files only
961
+ @acp.package-install --files config/tsconfig.json src/schemas/example.schema.ts --repo <url>
962
+
963
+ # Preview what would be installed
964
+ @acp.package-install --list --repo <url>
965
+ ```
966
+
967
+ ### Variable Substitution
968
+
969
+ Templates with `.template` extension can contain `{{VARIABLE}}` placeholders that are replaced during installation:
970
+
971
+ ```json
972
+ {
973
+ "name": "{{PACKAGE_NAME}}",
974
+ "author": "{{AUTHOR_NAME}}"
975
+ }
976
+ ```
977
+
978
+ Variables are declared in `package.yaml` and values are prompted during installation. Variable values are stored in the manifest for reproducible updates.
979
+
980
+ ### Target Paths
981
+
982
+ Each file declares a `target` path in `package.yaml`:
983
+ - `target: ./` installs to project root
984
+ - `target: src/schemas/` installs to `src/schemas/` directory
985
+ - `.template` extension is stripped (e.g., `settings.json.template` becomes `settings.json`)
986
+ - Unsafe paths (`../`, absolute paths) are rejected
987
+
988
+ ### Security Considerations
989
+
990
+ Templates install to project directories (not `agent/`):
991
+ - May overwrite existing files
992
+ - Always prompted before installation (unless `-y` flag)
993
+ - Target paths validated for safety
994
+ - Conflict detection warns about overwrites
995
+ - Use `--list` to preview before installing
996
+
997
+ ### Package.yaml Declaration
998
+
999
+ ```yaml
1000
+ contents:
1001
+ files:
1002
+ - name: config/tsconfig.json
1003
+ description: TypeScript configuration
1004
+ target: ./
1005
+ required: true
1006
+
1007
+ - name: config/settings.json.template
1008
+ description: Settings with variable substitution
1009
+ target: config/
1010
+ required: false
1011
+ variables:
1012
+ - PROJECT_NAME
1013
+ - AUTHOR_NAME
1014
+ ```
1015
+
1016
+ ---
1017
+
1018
+ ## Key File Index
1019
+
1020
+ This project uses the ACP Key File Index system to ensure agents read critical files before making decisions. Key files are declared in `agent/index/` with weights and descriptions.
1021
+
1022
+ ### How It Works
1023
+
1024
+ Index files in `agent/index/` declare which project files are critical. Each entry includes:
1025
+ - **path**: Path to the file (relative to project root)
1026
+ - **weight**: Priority from 0.0-1.0 (higher = more important)
1027
+ - **kind**: Type of file — `pattern`, `command`, `design`, or `requirements`
1028
+ - **description**: What the file contains
1029
+ - **rationale**: Why an agent must read it
1030
+ - **applies**: Comma-separated list of commands that should read this file (e.g. `acp.proceed, acp.plan`)
1031
+
1032
+ ### Index File Naming
1033
+
1034
+ Files follow `{namespace}.{qualifier}.yaml` naming:
1035
+ - `local.main.yaml` — Project's own key files (highest precedence)
1036
+ - `{package}.main.yaml` — Package-shipped key files (installed via `@acp.package-install`)
1037
+
1038
+ ### When Key Files Are Read
1039
+
1040
+ - **`@acp.init`**: Reads all key files with weight >= 0.8
1041
+ - **`@acp.proceed`**, **`@acp.plan`**: Read key files where `applies` includes the command name
1042
+ - **Creation commands** (`@acp.design-create`, etc.): Read key files where `applies` includes the command name
1043
+ - **After context compaction**: Re-read key files following [When Recovering from Context Loss](#when-recovering-from-context-loss)
1044
+
1045
+ ### Managing the Index
1046
+
1047
+ Use `@acp.index` to manage entries:
1048
+ ```
1049
+ @acp.index list # List all indexed key files
1050
+ @acp.index add <path> # Add a file to the index
1051
+ @acp.index remove <path> # Remove a file from the index
1052
+ @acp.index explore # Suggest files that should be indexed
1053
+ @acp.index show <path> # Show details for a specific entry
1054
+ ```
1055
+
1056
+ ### Weight Guidelines
1057
+
1058
+ | Weight | Use For |
1059
+ |--------|---------|
1060
+ | 0.9-1.0 | Requirements, critical design docs |
1061
+ | 0.7-0.8 | Important patterns, testing guides |
1062
+ | 0.5-0.6 | Useful references, conventions |
1063
+ | 0.3-0.4 | Package-shipped indices (convention) |
1064
+
1065
+ ### Validation
1066
+
1067
+ Run `@acp.validate` to check index health: valid schema, existing paths, reasonable limits (recommended max 20 entries total, 10 per namespace).
1068
+
1069
+ ### Design Document
1070
+
1071
+ See `agent/design/local.key-file-index-system.md` for the complete design specification.
1072
+
1073
+ ---
1074
+
757
1075
  ## Sample Prompts for Using ACP
758
1076
 
759
1077
  ### Initialize Prompt
@@ -918,6 +1236,29 @@ Run ./agent/scripts/unacp.install.sh to remove all ACP files (agent/ directory a
918
1236
  - Update milestone progress
919
1237
  - Add notes about work done
920
1238
 
1239
+ ### When Recovering from Context Loss
1240
+
1241
+ When your context is compacted, truncated, or you start a new session mid-task:
1242
+
1243
+ 1. **Re-read `agent/index/` key files**
1244
+ - Scan `agent/index/` for `*.yaml` files (excluding `*.template.yaml`)
1245
+ - Read entries with weight >= 0.8 to restore critical context
1246
+ - Filter by `applies` field if you know which command you were executing
1247
+
1248
+ 2. **Re-read `agent/progress.yaml`**
1249
+ - Identify current milestone and task
1250
+ - Check what was last completed
1251
+
1252
+ 3. **Re-read the current task document**
1253
+ - Determine which step you were on
1254
+ - Review remaining verification items
1255
+
1256
+ 4. **Offer scope control to the user**
1257
+ - Ask if they want full context reload or minimal recovery
1258
+ - Suggest relevant key files based on current work
1259
+
1260
+ This is equivalent to running `@acp.init` steps 2-2.8 followed by resuming the current task.
1261
+
921
1262
  ### When Creating New Features
922
1263
 
923
1264
  1. **Create design document first**
@@ -1115,6 +1456,16 @@ This pattern is because: ...
1115
1456
 
1116
1457
  **Rationale**: The `>` syntax provides a lightweight way for users to give inline feedback without needing to explain context. Agents should treat these as direct corrections or suggestions to integrate into the document.
1117
1458
 
1459
+ #### Use Direct Git Commits
1460
+
1461
+ When creating git commits, always use `git commit -m` directly:
1462
+
1463
+ - ✅ **DO** use `git commit -m "message"` to create commits
1464
+ - ❌ **DO NOT** use bash tools, subshells, or scripts to generate commits
1465
+ - ❌ **DO NOT** use heredocs, `echo`, or `cat` to construct commit messages
1466
+
1467
+ **Rationale**: Direct `git commit -m` is simpler, more transparent, and avoids escaping issues. The commit message should be authored directly, not piped through intermediate tools.
1468
+
1118
1469
  #### Format Commands for User Execution
1119
1470
 
1120
1471
  When providing commands for users to copy and paste:
@@ -1225,6 +1576,13 @@ touch acp.init.md
1225
1576
  - Include anti-patterns
1226
1577
  - Provide examples
1227
1578
 
1579
+ #### Documentation is a First-Class Deliverable
1580
+
1581
+ - README.md, architecture docs, and migration guides are deliverables equal to source code
1582
+ - A project with passing tests but missing required documentation is INCOMPLETE
1583
+ - Verify documentation files exist and contain required sections before marking tasks complete
1584
+ - Documentation tasks deserve the same rigor as implementation tasks
1585
+
1228
1586
  #### Review and Refine
1229
1587
 
1230
1588
  - Update docs as understanding improves
package/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.15.5] - 2026-03-07
9
+
10
+ ### Changed
11
+
12
+ - Add graph traversal guidance to `remember_search_memory` tool description — prompts LLM to use `include_relationships: true` for exploring a memory's connected knowledge
13
+ - Add graph traversal guidance to `remember_search_space` tool description — prompts LLM to use `remember_search_memory` to traverse the author's memory graph from space results
14
+
8
15
  ## [3.15.0] - 2026-03-06
9
16
 
10
17
  ### Fixed