recallx 1.0.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 (37) hide show
  1. package/README.md +205 -0
  2. package/app/cli/bin/recallx-mcp.js +2 -0
  3. package/app/cli/bin/recallx.js +8 -0
  4. package/app/cli/src/cli.js +808 -0
  5. package/app/cli/src/format.js +242 -0
  6. package/app/cli/src/http.js +35 -0
  7. package/app/mcp/api-client.js +101 -0
  8. package/app/mcp/index.js +128 -0
  9. package/app/mcp/server.js +786 -0
  10. package/app/server/app.js +2263 -0
  11. package/app/server/config.js +27 -0
  12. package/app/server/db.js +399 -0
  13. package/app/server/errors.js +17 -0
  14. package/app/server/governance.js +466 -0
  15. package/app/server/index.js +26 -0
  16. package/app/server/inferred-relations.js +247 -0
  17. package/app/server/observability.js +495 -0
  18. package/app/server/project-graph.js +199 -0
  19. package/app/server/relation-scoring.js +59 -0
  20. package/app/server/repositories.js +2992 -0
  21. package/app/server/retrieval.js +486 -0
  22. package/app/server/semantic/chunker.js +85 -0
  23. package/app/server/semantic/provider.js +124 -0
  24. package/app/server/semantic/types.js +1 -0
  25. package/app/server/semantic/vector-store.js +169 -0
  26. package/app/server/utils.js +43 -0
  27. package/app/server/workspace-session.js +128 -0
  28. package/app/server/workspace.js +79 -0
  29. package/app/shared/contracts.js +268 -0
  30. package/app/shared/request-runtime.js +30 -0
  31. package/app/shared/types.js +1 -0
  32. package/app/shared/version.js +1 -0
  33. package/dist/renderer/assets/ProjectGraphCanvas-BMvz9DmE.js +312 -0
  34. package/dist/renderer/assets/index-C2-KXqBO.css +1 -0
  35. package/dist/renderer/assets/index-CrDu22h7.js +76 -0
  36. package/dist/renderer/index.html +13 -0
  37. package/package.json +49 -0
package/README.md ADDED
@@ -0,0 +1,205 @@
1
+ # RecallX
2
+
3
+ RecallX is a local-first personal knowledge layer for humans and agents.
4
+
5
+ It gives your local API, CLI, MCP-capable tools, and source-run UI one durable workspace for shared memory instead of scattering context across prompts, notes, and tool-specific state.
6
+
7
+ ## What It Is For
8
+
9
+ RecallX is built to keep these things in one local workspace:
10
+
11
+ - notes
12
+ - projects
13
+ - ideas
14
+ - questions
15
+ - decisions
16
+ - references
17
+ - activities
18
+ - relationships between them
19
+
20
+ The core idea is simple: one brain, many tools.
21
+
22
+ ## Why RecallX
23
+
24
+ - local-first storage with SQLite-backed workspaces
25
+ - shared memory for humans and coding agents
26
+ - append-first writes with explicit provenance
27
+ - compact context assembly for agent workflows
28
+ - HTTP API, CLI, MCP, and source-run UI access over the same local data
29
+
30
+ ## Distribution Paths
31
+
32
+ RecallX is documented around three public ways to use it:
33
+
34
+ 1. Git public repo for direct source execution
35
+ 2. npm package `recallx` for the full local runtime
36
+ 3. npm package `recallx-headless` for the headless runtime
37
+
38
+ ## 1. Git Public Repo
39
+
40
+ Use the public repo when you want the full source-run surface:
41
+
42
+ - local API under `/api/v1`
43
+ - source-run renderer workflow through `npm run dev`
44
+ - source-run desktop workflow through `npm run dev:desktop`
45
+ - stdio MCP bridge through `npm run mcp`
46
+ - runtime workspace create/open switching without restarting the service
47
+
48
+ ```bash
49
+ git clone https://github.com/jazpiper/RecallX.git RecallX
50
+ cd RecallX
51
+ npm install
52
+ npm run dev
53
+ ```
54
+
55
+ Desktop runtime from source:
56
+
57
+ ```bash
58
+ npm run dev:desktop
59
+ ```
60
+
61
+ MCP from source:
62
+
63
+ ```bash
64
+ npm run mcp
65
+ ```
66
+
67
+ Server only:
68
+
69
+ ```bash
70
+ npm run build:server
71
+ npm start
72
+ ```
73
+
74
+ Checks:
75
+
76
+ ```bash
77
+ npm run check
78
+ npm test
79
+ npm run build
80
+ ```
81
+
82
+ If you want an installable runtime instead of source-run workflows, use one of the npm distribution paths below.
83
+
84
+ ## 2. npm Full Runtime (`recallx`)
85
+
86
+ Use the full npm package when you want a local install that includes the API, renderer, CLI, and MCP entrypoint:
87
+
88
+ ```bash
89
+ npm install -g recallx
90
+ recallx serve
91
+ ```
92
+
93
+ In another shell:
94
+
95
+ ```bash
96
+ recallx health
97
+ recallx mcp install
98
+ recallx-mcp --help
99
+ ```
100
+
101
+ The full npm package includes:
102
+
103
+ - local API under `/api/v1`
104
+ - browser renderer served from `/`
105
+ - `recallx`
106
+ - `recallx serve` and subcommands
107
+ - `recallx-mcp`
108
+
109
+ The full npm package does not include:
110
+
111
+ - desktop release artifacts
112
+
113
+ `recallx mcp install` writes a stable launcher to `~/.recallx/bin/recallx-mcp`, which is the recommended command path for Codex and other editor MCP configs.
114
+
115
+ If the API is running in bearer mode, set `RECALLX_API_TOKEN` in the MCP client environment. The launcher does not write tokens to disk.
116
+
117
+ Start the packaged runtime with:
118
+
119
+ ```bash
120
+ recallx serve
121
+ ```
122
+
123
+ Optional runtime overrides:
124
+
125
+ ```bash
126
+ recallx serve --port 8787 --bind 127.0.0.1
127
+ recallx serve --workspace-root /Users/name/Documents/RecallX
128
+ recallx serve --api-token secret-token
129
+ ```
130
+
131
+ ## 3. npm Headless Runtime (`recallx-headless`)
132
+
133
+ Use the headless npm package when you want the local API, CLI, and MCP entrypoint without shipping the renderer bundle:
134
+
135
+ ```bash
136
+ npm install -g recallx-headless
137
+ recallx serve
138
+ ```
139
+
140
+ In another shell:
141
+
142
+ ```bash
143
+ recallx health
144
+ recallx-mcp --help
145
+ ```
146
+
147
+ The headless npm package includes:
148
+
149
+ - local API under `/api/v1`
150
+ - `recallx`
151
+ - `recallx serve` and subcommands
152
+ - `recallx-mcp`
153
+
154
+ The headless npm package does not include:
155
+
156
+ - renderer pages
157
+ - desktop release artifacts
158
+
159
+ At `/`, the headless runtime returns a small runtime notice instead of the renderer.
160
+
161
+ Node requirements:
162
+
163
+ - npm packages: Node 20+
164
+ - local source development: Node 25+ is recommended because the backend uses `node:sqlite`
165
+
166
+ ## Use From Other Coding Agents
167
+
168
+ If you want another coding agent to use a running local RecallX service, start with health and bootstrap first instead of assuming the protected service index is available.
169
+
170
+ - health check: `GET http://127.0.0.1:8787/api/v1/health`
171
+ - bootstrap: `GET http://127.0.0.1:8787/api/v1/bootstrap`
172
+ - service index after auth or in optional mode: `GET http://127.0.0.1:8787/api/v1`
173
+ - current workspace after auth or in optional mode: `GET http://127.0.0.1:8787/api/v1/workspace`
174
+
175
+ Recommended instruction:
176
+
177
+ ```text
178
+ Use my running local RecallX service at http://127.0.0.1:8787/api/v1.
179
+ Start by calling GET /health and GET /bootstrap.
180
+ If authMode is bearer, include Authorization: Bearer <token> before calling GET /api/v1 or GET /workspace.
181
+ Use the returned endpoint list and request examples to search nodes and activities, inspect governance state, build context bundles, and switch workspaces.
182
+ Reuse the existing local service instead of starting a new one.
183
+ ```
184
+
185
+ ## MCP Bridge
186
+
187
+ RecallX also ships a stdio MCP adapter for agent clients that prefer tool discovery over raw HTTP calls.
188
+
189
+ ```bash
190
+ npm run mcp
191
+ node dist/server/app/mcp/index.js --api http://127.0.0.1:8787/api/v1
192
+ recallx-mcp --api http://127.0.0.1:8787/api/v1
193
+ ```
194
+
195
+ For launcher paths, environment variables, and editor-specific setup, see `docs/mcp.md`.
196
+
197
+ ## Docs
198
+
199
+ - `docs/README.md` for the full documentation map and reading order
200
+ - `app/cli/README.md` for the npm headless package
201
+ - `docs/concept.md` for product positioning
202
+ - `docs/api.md` for the local HTTP and CLI contract
203
+ - `docs/mcp.md` for MCP bridge setup
204
+ - `docs/workflows.md` for common usage flows
205
+ - `docs/schema.md` for storage and data model details
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import "../../mcp/index.js";
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ import { runCli } from "../src/cli.js";
3
+
4
+ runCli(process.argv).catch((error) => {
5
+ const message = error instanceof Error ? error.message : String(error);
6
+ process.stderr.write(`${message}\n`);
7
+ process.exitCode = 1;
8
+ });