recall-os 0.1.0 → 0.2.0

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 (99) hide show
  1. package/README.md +52 -20
  2. package/dist/cli.js +1291 -547
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.js +1291 -547
  5. package/dist/index.js.map +1 -1
  6. package/examples/generated-laravel-api/.recall/config.json +17 -0
  7. package/examples/generated-laravel-api/.recall/hooks/pre-commit +9 -0
  8. package/examples/generated-laravel-api/AGENTS.md +15 -0
  9. package/examples/generated-laravel-api/CLAUDE.md +9 -0
  10. package/examples/generated-laravel-api/README.md +11 -0
  11. package/examples/generated-laravel-api/docs/00-product/BRD.md +9 -0
  12. package/examples/generated-laravel-api/docs/00-product/PRD.md +13 -0
  13. package/examples/generated-laravel-api/docs/10-architecture/ARCHITECTURE.md +11 -0
  14. package/examples/generated-laravel-api/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  15. package/examples/generated-laravel-api/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  16. package/examples/generated-laravel-api/docs/20-security/SECURITY_MODEL.md +11 -0
  17. package/examples/generated-laravel-api/docs/20-security/THREAT_MODEL.md +7 -0
  18. package/examples/generated-laravel-api/docs/30-modules/README.md +17 -0
  19. package/examples/generated-laravel-api/docs/40-features/README.md +22 -0
  20. package/examples/generated-laravel-api/docs/50-quality/QUALITY_GATES.md +11 -0
  21. package/examples/generated-laravel-api/docs/50-quality/TESTING_STRATEGY.md +5 -0
  22. package/examples/generated-laravel-api/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  23. package/examples/generated-laravel-api/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  24. package/examples/generated-laravel-api/docs/adrs/README.md +9 -0
  25. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-api-design-rest.md +31 -0
  26. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-application-structure.md +30 -0
  27. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-auth-sanctum.md +30 -0
  28. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-database-eloquent.md +31 -0
  29. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-framework.md +29 -0
  30. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-queues-horizon.md +29 -0
  31. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-testing-pest.md +30 -0
  32. package/examples/generated-laravel-api/docs/adrs/proposed/ADR-PROPOSED-laravel-api-validation-authorization.md +30 -0
  33. package/examples/generated-laravel-api/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  34. package/examples/generated-laravel-api/docs/ai/MCP_STRATEGY.md +6 -0
  35. package/examples/generated-laravel-api/docs/ai/RECALL_COMMANDS.md +133 -0
  36. package/examples/generated-laravel-api/docs/ai/presets/laravel-api-guidance.md +62 -0
  37. package/examples/generated-laravel-react/.recall/config.json +17 -0
  38. package/examples/generated-laravel-react/.recall/hooks/pre-commit +9 -0
  39. package/examples/generated-laravel-react/AGENTS.md +15 -0
  40. package/examples/generated-laravel-react/CLAUDE.md +9 -0
  41. package/examples/generated-laravel-react/README.md +11 -0
  42. package/examples/generated-laravel-react/docs/00-product/BRD.md +9 -0
  43. package/examples/generated-laravel-react/docs/00-product/PRD.md +13 -0
  44. package/examples/generated-laravel-react/docs/10-architecture/ARCHITECTURE.md +11 -0
  45. package/examples/generated-laravel-react/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  46. package/examples/generated-laravel-react/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  47. package/examples/generated-laravel-react/docs/20-security/SECURITY_MODEL.md +11 -0
  48. package/examples/generated-laravel-react/docs/20-security/THREAT_MODEL.md +7 -0
  49. package/examples/generated-laravel-react/docs/30-modules/README.md +17 -0
  50. package/examples/generated-laravel-react/docs/40-features/README.md +22 -0
  51. package/examples/generated-laravel-react/docs/50-quality/QUALITY_GATES.md +11 -0
  52. package/examples/generated-laravel-react/docs/50-quality/TESTING_STRATEGY.md +5 -0
  53. package/examples/generated-laravel-react/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  54. package/examples/generated-laravel-react/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  55. package/examples/generated-laravel-react/docs/adrs/README.md +9 -0
  56. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-application-structure.md +30 -0
  57. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-auth-sanctum.md +31 -0
  58. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-database-eloquent.md +31 -0
  59. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-framework.md +29 -0
  60. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-frontend-inertia-react.md +31 -0
  61. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-queues-horizon.md +29 -0
  62. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-testing-pest.md +30 -0
  63. package/examples/generated-laravel-react/docs/adrs/proposed/ADR-PROPOSED-laravel-react-validation-authorization.md +30 -0
  64. package/examples/generated-laravel-react/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  65. package/examples/generated-laravel-react/docs/ai/MCP_STRATEGY.md +6 -0
  66. package/examples/generated-laravel-react/docs/ai/RECALL_COMMANDS.md +133 -0
  67. package/examples/generated-laravel-react/docs/ai/presets/laravel-react-guidance.md +64 -0
  68. package/examples/generated-laravel-vue/.recall/config.json +17 -0
  69. package/examples/generated-laravel-vue/.recall/hooks/pre-commit +9 -0
  70. package/examples/generated-laravel-vue/AGENTS.md +15 -0
  71. package/examples/generated-laravel-vue/CLAUDE.md +9 -0
  72. package/examples/generated-laravel-vue/README.md +11 -0
  73. package/examples/generated-laravel-vue/docs/00-product/BRD.md +9 -0
  74. package/examples/generated-laravel-vue/docs/00-product/PRD.md +13 -0
  75. package/examples/generated-laravel-vue/docs/10-architecture/ARCHITECTURE.md +11 -0
  76. package/examples/generated-laravel-vue/docs/10-architecture/FILE_WRITE_POLICY.md +8 -0
  77. package/examples/generated-laravel-vue/docs/10-architecture/MEMORY_ENGINE.md +16 -0
  78. package/examples/generated-laravel-vue/docs/20-security/SECURITY_MODEL.md +11 -0
  79. package/examples/generated-laravel-vue/docs/20-security/THREAT_MODEL.md +7 -0
  80. package/examples/generated-laravel-vue/docs/30-modules/README.md +17 -0
  81. package/examples/generated-laravel-vue/docs/40-features/README.md +22 -0
  82. package/examples/generated-laravel-vue/docs/50-quality/QUALITY_GATES.md +11 -0
  83. package/examples/generated-laravel-vue/docs/50-quality/TESTING_STRATEGY.md +5 -0
  84. package/examples/generated-laravel-vue/docs/60-engineering/AI_AGENT_RULES.md +6 -0
  85. package/examples/generated-laravel-vue/docs/60-engineering/ENGINEERING_STANDARDS.md +11 -0
  86. package/examples/generated-laravel-vue/docs/adrs/README.md +9 -0
  87. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-application-structure.md +30 -0
  88. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-auth-sanctum.md +31 -0
  89. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-database-eloquent.md +31 -0
  90. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-framework.md +29 -0
  91. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-frontend-inertia-vue.md +31 -0
  92. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-queues-horizon.md +29 -0
  93. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-testing-pest.md +30 -0
  94. package/examples/generated-laravel-vue/docs/adrs/proposed/ADR-PROPOSED-laravel-vue-validation-authorization.md +30 -0
  95. package/examples/generated-laravel-vue/docs/ai/AI_AGENTS_SKILLS_MCP_STRATEGY.md +7 -0
  96. package/examples/generated-laravel-vue/docs/ai/MCP_STRATEGY.md +6 -0
  97. package/examples/generated-laravel-vue/docs/ai/RECALL_COMMANDS.md +133 -0
  98. package/examples/generated-laravel-vue/docs/ai/presets/laravel-vue-guidance.md +64 -0
  99. 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
 
@@ -47,18 +50,22 @@ them.
47
50
 
48
51
  ## Install
49
52
 
53
+ Install the CLI globally from npm:
54
+
50
55
  ```bash
51
- # Local development
52
- pnpm install
53
- pnpm build
54
- node dist/cli.js --help
56
+ npm install -g recall-os
57
+ recall --help
55
58
  ```
56
59
 
60
+ Or run it without installing:
61
+
57
62
  ```bash
58
- # Once published to npm
59
- npm install -g recall-os
63
+ npx recall-os --help
60
64
  ```
61
65
 
66
+ (Requires Node.js >= 20. Published at
67
+ [npmjs.com/package/recall-os](https://www.npmjs.com/package/recall-os).)
68
+
62
69
  ## Quickstart
63
70
 
64
71
  ```bash
@@ -69,12 +76,17 @@ recall init --preset kotlin-android # optional, proposes stack decisions
69
76
  # 2. Capture intent and decisions as you work
70
77
  recall feature create checkout
71
78
  recall adr create payment-provider
72
- recall module create billing
79
+ recall adr accept payment-provider # promote a proposal to accepted memory
80
+
81
+ # 3. Bring an MCP server's context into durable memory (offline)
82
+ recall mcp add figma
73
83
 
74
- # 3. Validate the memory is healthy and complete
84
+ # 4. Validate the memory is healthy and complete
75
85
  recall doctor
76
86
  ```
77
87
 
88
+ Every command guides you — it names the file it created, where it is, and what to do next.
89
+
78
90
  `recall init` also generates a tracked pre-commit hook at `.recall/hooks/pre-commit` that runs
79
91
  `recall doctor` plus any gates you configure. Enable it once per clone — Recall OS proposes the
80
92
  command but never runs it for you:
@@ -131,14 +143,17 @@ Presets are opinion packs. They ship **proposed** guidance and proposed ADRs for
131
143
  decision forks — and they can never silently accept a choice for you (the schema enforces `Proposed`
132
144
  status on every preset decision).
133
145
 
134
- | Preset | Stack | Proposes (always as proposed ADRs) |
135
- | ---------------- | ---------------- | ----------------------------------------------------------- |
136
- | `kotlin-android` | Kotlin / Android | Compose, Coroutines + Flow, Hilt, Room, MVVM |
137
- | `python-fastapi` | Python / FastAPI | FastAPI, PostgreSQL + SQLAlchemy, Pydantic, pytest, Redis |
138
- | `ios-swift` | iOS / Swift | SwiftUI, async/await + Observation, SwiftData, MVVM |
139
- | `nextjs` | Next.js / TS | App Router, typed data layer, Tailwind, Vitest + Playwright |
140
- | `flutter` | Flutter | Platform and state-management guidance |
141
- | `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 |
142
157
 
143
158
  Adding a preset is a small contribution — see [CONTRIBUTING.md](CONTRIBUTING.md).
144
159
 
@@ -156,6 +171,21 @@ Adding a preset is a small contribution — see [CONTRIBUTING.md](CONTRIBUTING.m
156
171
  recall doctor ──► 0 / 1 / 2 ──► hook or CI gate
157
172
  ```
158
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
+
159
189
  ## Repository Memory
160
190
 
161
191
  Recall OS creates a memory structure under `docs/` and `.recall/config.json`, with an explicit
@@ -187,9 +217,11 @@ Recall OS does not:
187
217
  Committed sample outputs show the exact memory each preset generates:
188
218
 
189
219
  ```txt
190
- examples/generated-generic/ examples/generated-kotlin-android/
191
- examples/generated-nextjs/ examples/generated-python-fastapi/
192
- 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/
193
225
  ```
194
226
 
195
227
  ## Development