recall-os 0.1.1 → 0.2.1

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 (111) hide show
  1. package/README.md +43 -20
  2. package/dist/cli.js +1791 -792
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.js +1791 -792
  5. package/dist/index.js.map +1 -1
  6. package/examples/generated-flutter/docs/20-security/SECURITY_MODEL.md +25 -4
  7. package/examples/generated-flutter/docs/20-security/THREAT_MODEL.md +35 -3
  8. package/examples/generated-generic/docs/20-security/SECURITY_MODEL.md +25 -4
  9. package/examples/generated-generic/docs/20-security/THREAT_MODEL.md +35 -3
  10. package/examples/generated-ios-swift/docs/20-security/SECURITY_MODEL.md +25 -4
  11. package/examples/generated-ios-swift/docs/20-security/THREAT_MODEL.md +35 -3
  12. package/examples/generated-kotlin-android/docs/20-security/SECURITY_MODEL.md +25 -4
  13. package/examples/generated-kotlin-android/docs/20-security/THREAT_MODEL.md +35 -3
  14. package/examples/generated-laravel-api/.recall/config.json +17 -0
  15. package/examples/generated-laravel-api/.recall/hooks/pre-commit +9 -0
  16. package/examples/generated-laravel-api/AGENTS.md +15 -0
  17. package/examples/generated-laravel-api/CLAUDE.md +9 -0
  18. package/examples/generated-laravel-api/README.md +11 -0
  19. package/examples/generated-laravel-api/docs/00-product/BRD.md +9 -0
  20. package/examples/generated-laravel-api/docs/00-product/PRD.md +13 -0
  21. package/examples/generated-laravel-api/docs/10-architecture/ARCHITECTURE.md +11 -0
  22. package/examples/generated-laravel-api/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  23. package/examples/generated-laravel-api/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  24. package/examples/generated-laravel-api/docs/20-security/SECURITY_MODEL.md +32 -0
  25. package/examples/generated-laravel-api/docs/20-security/THREAT_MODEL.md +39 -0
  26. package/examples/generated-laravel-api/docs/30-modules/README.md +17 -0
  27. package/examples/generated-laravel-api/docs/40-features/README.md +22 -0
  28. package/examples/generated-laravel-api/docs/50-quality/QUALITY_GATES.md +11 -0
  29. package/examples/generated-laravel-api/docs/50-quality/TESTING_STRATEGY.md +5 -0
  30. package/examples/generated-laravel-api/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  31. package/examples/generated-laravel-api/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  32. package/examples/generated-laravel-api/docs/adrs/README.md +9 -0
  33. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-api-design-rest.md +31 -0
  34. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-application-structure.md +30 -0
  35. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-auth-sanctum.md +30 -0
  36. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-database-eloquent.md +31 -0
  37. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-framework.md +29 -0
  38. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-queues-horizon.md +29 -0
  39. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-testing-pest.md +30 -0
  40. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-validation-authorization.md +30 -0
  41. package/examples/generated-laravel-api/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  42. package/examples/generated-laravel-api/docs/ai/MCP_STRATEGY.md +6 -0
  43. package/examples/generated-laravel-api/docs/ai/RECALL_COMMANDS.md +133 -0
  44. package/examples/generated-laravel-api/docs/ai/presets/laravel-api-guidance.md +62 -0
  45. package/examples/generated-laravel-react/.recall/config.json +17 -0
  46. package/examples/generated-laravel-react/.recall/hooks/pre-commit +9 -0
  47. package/examples/generated-laravel-react/AGENTS.md +15 -0
  48. package/examples/generated-laravel-react/CLAUDE.md +9 -0
  49. package/examples/generated-laravel-react/README.md +11 -0
  50. package/examples/generated-laravel-react/docs/00-product/BRD.md +9 -0
  51. package/examples/generated-laravel-react/docs/00-product/PRD.md +13 -0
  52. package/examples/generated-laravel-react/docs/10-architecture/ARCHITECTURE.md +11 -0
  53. package/examples/generated-laravel-react/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  54. package/examples/generated-laravel-react/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  55. package/examples/generated-laravel-react/docs/20-security/SECURITY_MODEL.md +32 -0
  56. package/examples/generated-laravel-react/docs/20-security/THREAT_MODEL.md +39 -0
  57. package/examples/generated-laravel-react/docs/30-modules/README.md +17 -0
  58. package/examples/generated-laravel-react/docs/40-features/README.md +22 -0
  59. package/examples/generated-laravel-react/docs/50-quality/QUALITY_GATES.md +11 -0
  60. package/examples/generated-laravel-react/docs/50-quality/TESTING_STRATEGY.md +5 -0
  61. package/examples/generated-laravel-react/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  62. package/examples/generated-laravel-react/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  63. package/examples/generated-laravel-react/docs/adrs/README.md +9 -0
  64. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-application-structure.md +30 -0
  65. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-auth-sanctum.md +31 -0
  66. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-database-eloquent.md +31 -0
  67. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-framework.md +29 -0
  68. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-frontend-inertia-react.md +31 -0
  69. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-queues-horizon.md +29 -0
  70. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-testing-pest.md +30 -0
  71. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-validation-authorization.md +30 -0
  72. package/examples/generated-laravel-react/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  73. package/examples/generated-laravel-react/docs/ai/MCP_STRATEGY.md +6 -0
  74. package/examples/generated-laravel-react/docs/ai/RECALL_COMMANDS.md +133 -0
  75. package/examples/generated-laravel-react/docs/ai/presets/laravel-react-guidance.md +64 -0
  76. package/examples/generated-laravel-vue/.recall/config.json +17 -0
  77. package/examples/generated-laravel-vue/.recall/hooks/pre-commit +9 -0
  78. package/examples/generated-laravel-vue/AGENTS.md +15 -0
  79. package/examples/generated-laravel-vue/CLAUDE.md +9 -0
  80. package/examples/generated-laravel-vue/README.md +11 -0
  81. package/examples/generated-laravel-vue/docs/00-product/BRD.md +9 -0
  82. package/examples/generated-laravel-vue/docs/00-product/PRD.md +13 -0
  83. package/examples/generated-laravel-vue/docs/10-architecture/ARCHITECTURE.md +11 -0
  84. package/examples/generated-laravel-vue/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  85. package/examples/generated-laravel-vue/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  86. package/examples/generated-laravel-vue/docs/20-security/SECURITY_MODEL.md +32 -0
  87. package/examples/generated-laravel-vue/docs/20-security/THREAT_MODEL.md +39 -0
  88. package/examples/generated-laravel-vue/docs/30-modules/README.md +17 -0
  89. package/examples/generated-laravel-vue/docs/40-features/README.md +22 -0
  90. package/examples/generated-laravel-vue/docs/50-quality/QUALITY_GATES.md +11 -0
  91. package/examples/generated-laravel-vue/docs/50-quality/TESTING_STRATEGY.md +5 -0
  92. package/examples/generated-laravel-vue/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  93. package/examples/generated-laravel-vue/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  94. package/examples/generated-laravel-vue/docs/adrs/README.md +9 -0
  95. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-application-structure.md +30 -0
  96. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-auth-sanctum.md +31 -0
  97. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-database-eloquent.md +31 -0
  98. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-framework.md +29 -0
  99. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-frontend-inertia-vue.md +31 -0
  100. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-queues-horizon.md +29 -0
  101. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-testing-pest.md +30 -0
  102. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-validation-authorization.md +30 -0
  103. package/examples/generated-laravel-vue/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  104. package/examples/generated-laravel-vue/docs/ai/MCP_STRATEGY.md +6 -0
  105. package/examples/generated-laravel-vue/docs/ai/RECALL_COMMANDS.md +133 -0
  106. package/examples/generated-laravel-vue/docs/ai/presets/laravel-vue-guidance.md +64 -0
  107. package/examples/generated-nextjs/docs/20-security/SECURITY_MODEL.md +25 -4
  108. package/examples/generated-nextjs/docs/20-security/THREAT_MODEL.md +35 -3
  109. package/examples/generated-python-fastapi/docs/20-security/SECURITY_MODEL.md +25 -4
  110. package/examples/generated-python-fastapi/docs/20-security/THREAT_MODEL.md +35 -3
  111. package/package.json +1 -1
package/README.md CHANGED
@@ -16,7 +16,10 @@ decisions, module ownership, testing and security expectations, AI agent rules
16
16
  code generation.
17
17
 
18
18
  [Install](#install) · [Quickstart](#quickstart) · [Commands](#commands) ·
19
- [What Doctor Checks](#what-doctor-checks) · [Presets](#presets) · [Contributing](CONTRIBUTING.md)
19
+ [What Doctor Checks](#what-doctor-checks) · [Presets](#presets) · [Why I built this](PHILOSOPHY.md)
20
+ · [Contributing](CONTRIBUTING.md)
21
+
22
+ ![Recall OS — guided memory creation, ADR acceptance, and the doctor gate](https://raw.githubusercontent.com/Karthick-Ramachandran/recall-os/main/docs/media/recall-demo.gif)
20
23
 
21
24
  ---
22
25
 
@@ -113,14 +116,14 @@ git config core.hooksPath .recall/hooks
113
116
  `recall doctor` is the part that makes Recall OS more than a template. Every check is deterministic,
114
117
  local, and read-only.
115
118
 
116
- | Category | Detects | Severity |
117
- | ------------------- | -------------------------------------------------------------------------- | ------------ |
118
- | Structure | Missing config, required docs, or feature / module / ADR sections | error |
119
- | Completion evidence | A feature marked complete with review pending or no test / result evidence | error |
120
- | ADR quality | An accepted ADR with no meaningful consequences | error / warn |
121
- | Security | A security-sensitive feature with no documented security impact | error / warn |
122
- | Drift | Memory that references a missing, or not-yet-accepted, ADR | error / warn |
123
- | Content | A feature PRD still left as an unfilled template | warning |
119
+ | Category | Detects | Severity |
120
+ | ------------------- | --------------------------------------------------------------------------------------- | ------------ |
121
+ | Structure | Missing config, required docs, or feature / module / ADR sections | error |
122
+ | Completion evidence | A feature marked complete with review pending or no test / result evidence | error |
123
+ | ADR quality | An accepted ADR with no meaningful consequences | error / warn |
124
+ | Security | A security-sensitive feature with no documented security impact | error / warn |
125
+ | Drift | Memory that references a missing, or not-yet-accepted, ADR | error / warn |
126
+ | Content | A feature PRD, module, or (once work exists) the threat / security model left as a stub | warning |
124
127
 
125
128
  ```txt
126
129
  Exit codes: 0 = healthy 1 = warnings only 2 = errors
@@ -140,14 +143,17 @@ Presets are opinion packs. They ship **proposed** guidance and proposed ADRs for
140
143
  decision forks — and they can never silently accept a choice for you (the schema enforces `Proposed`
141
144
  status on every preset decision).
142
145
 
143
- | Preset | Stack | Proposes (always as proposed ADRs) |
144
- | ---------------- | ---------------- | ----------------------------------------------------------- |
145
- | `kotlin-android` | Kotlin / Android | Compose, Coroutines + Flow, Hilt, Room, MVVM |
146
- | `python-fastapi` | Python / FastAPI | FastAPI, PostgreSQL + SQLAlchemy, Pydantic, pytest, Redis |
147
- | `ios-swift` | iOS / Swift | SwiftUI, async/await + Observation, SwiftData, MVVM |
148
- | `nextjs` | Next.js / TS | App Router, typed data layer, Tailwind, Vitest + Playwright |
149
- | `flutter` | Flutter | Platform and state-management guidance |
150
- | `generic` | none | Architecture-neutral memory |
146
+ | Preset | Stack | Proposes (always as proposed ADRs) |
147
+ | ---------------- | ---------------- | ----------------------------------------------------------------------------------- |
148
+ | `laravel-react` | Laravel + React | Laravel, Inertia + React, Eloquent, Sanctum, Form Requests + Policies, queues, Pest |
149
+ | `laravel-vue` | Laravel + Vue | Laravel, Inertia + Vue, Eloquent, Sanctum, Form Requests + Policies, queues, Pest |
150
+ | `laravel-api` | Laravel (API) | Laravel, versioned REST + API Resources, Eloquent, Sanctum, queues, Pest |
151
+ | `kotlin-android` | Kotlin / Android | Compose, Coroutines + Flow, Hilt, Room, MVVM |
152
+ | `python-fastapi` | Python / FastAPI | FastAPI, PostgreSQL + SQLAlchemy, Pydantic, pytest, Redis |
153
+ | `ios-swift` | iOS / Swift | SwiftUI, async/await + Observation, SwiftData, MVVM |
154
+ | `nextjs` | Next.js / TS | App Router, typed data layer, Tailwind, Vitest + Playwright |
155
+ | `flutter` | Flutter | Platform and state-management guidance |
156
+ | `generic` | none | Architecture-neutral memory |
151
157
 
152
158
  Adding a preset is a small contribution — see [CONTRIBUTING.md](CONTRIBUTING.md).
153
159
 
@@ -165,6 +171,21 @@ Adding a preset is a small contribution — see [CONTRIBUTING.md](CONTRIBUTING.m
165
171
  recall doctor ──► 0 / 1 / 2 ──► hook or CI gate
166
172
  ```
167
173
 
174
+ ## How agents load the memory
175
+
176
+ Writing memory only helps if the agent reads it, so `recall init` wires each tool with its own
177
+ native mechanism:
178
+
179
+ | Tool | How memory loads |
180
+ | --------------- | -------------------------------------------------------------------------------------------------------------------------- |
181
+ | **Claude Code** | `CLAUDE.md` (auto) imports `AGENTS.md`; a SessionStart hook injects a live map of accepted ADRs and modules every session. |
182
+ | **Cursor** | `.cursor/rules/recall-memory.mdc` is an always-apply rule that loads the memory rules into every request. |
183
+ | **Codex** | `AGENTS.md` is auto-discovered and loaded. |
184
+
185
+ The portable guarantee across every tool is `AGENTS.md` plus the generated Agent Skills
186
+ (`.agents/skills/`). The dynamic per-session ADR/module map is a Claude Code bonus; the Cursor rule
187
+ and `AGENTS.md` carry the same rules everywhere else.
188
+
168
189
  ## Repository Memory
169
190
 
170
191
  Recall OS creates a memory structure under `docs/` and `.recall/config.json`, with an explicit
@@ -196,9 +217,11 @@ Recall OS does not:
196
217
  Committed sample outputs show the exact memory each preset generates:
197
218
 
198
219
  ```txt
199
- examples/generated-generic/ examples/generated-kotlin-android/
200
- examples/generated-nextjs/ examples/generated-python-fastapi/
201
- examples/generated-ios-swift/ examples/generated-flutter/
220
+ examples/generated-generic/ examples/generated-kotlin-android/
221
+ examples/generated-nextjs/ examples/generated-python-fastapi/
222
+ examples/generated-ios-swift/ examples/generated-flutter/
223
+ examples/generated-laravel-react/ examples/generated-laravel-vue/
224
+ examples/generated-laravel-api/
202
225
  ```
203
226
 
204
227
  ## Development