You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 8cc07bc
Browse filesBrowse the repository at this point in the historyBrowse files
@@ -127,7 +127,7 @@ Examples: `fix(store): set busy_timeout before WAL`, `feat(cli): add --progress
127
127
128
128
The following changes will not be merged without prior design discussion in an issue:
129
129
130
-
-**API surface changes** — adding, removing, renaming, or changing defaults of MCP tools
130
+
-**CLI operation changes** — adding, removing, renaming, or changing defaults of supported operations
131
131
-**New pipeline passes or indexing algorithms** — anything that changes what gets extracted or how
132
132
-**Build system / Makefile changes** — beyond trivial fixes
133
133
-**Project configuration** — CLAUDE.md, skill files, .mcp.json, CI workflows
@@ -160,7 +160,7 @@ If you add a new `system()`, `popen()`, `fork()`, or network call, it must be ju
160
160
161
161
## Good First Issues
162
162
163
-
Check [issues labeled `good first issue`](https://github.com/DeusData/codebase-memory-mcp/labels/good%20first%20issue) for beginner-friendly tasks with clear scope and guidance.
163
+
Check [issues labeled `good first issue`](https://github.com/ngallodev/codebase-memory-cli/labels/good%20first%20issue) for beginner-friendly tasks with clear scope and guidance.
164
164
165
165
## License and sign-off (DCO) — required on every commit
Copy file name to clipboardExpand all lines: README.md
+49-17Lines changed: 49 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,23 @@
1
-
# Codebase Memory
1
+
# Codebase Memory CLI
2
2
3
-
Codebase Memory builds a persistent structural knowledge graph of a source repository and exposes it through a local command-line interface designed for coding agents and humans.
3
+
Codebase Memory CLI builds a persistent structural knowledge graph of a source
4
+
repository and exposes it through a local command-line interface for coding
5
+
agents and humans.
6
+
7
+
This repository is a fork and C port of
8
+
[Codebase Memory MCP](https://github.com/DeusData/codebase-memory-mcp). The
9
+
fork keeps the code-intelligence engine, but removes the MCP server and its
10
+
third-party MCP integration surface. It exists for workplace environments
11
+
where policy prohibits using third-party MCP servers while still allowing a
12
+
local, auditable developer tool.
4
13
5
14
The product executable is `codebase-memory-cli`. Running it with no command shows CLI help; there is no supported MCP stdio server entry point.
6
15
7
-
> Migration status: application operations, daemon execution, supervised workers, UI dispatch, and store hosting are protocol-neutral. The physical MCP subsystem has been removed. Remaining MCP-era names are limited to compatibility-sensitive persisted paths/package history that are being retired deliberately. See [`docs/CLI_MIGRATION_STATUS.md`](docs/CLI_MIGRATION_STATUS.md).
16
+
> The CLI is the supported product surface. Some cache and package paths retain
17
+
> the historical `codebase-memory-mcp` name for compatibility; they do not
18
+
> enable or start an MCP server.
8
19
9
-
## What it does
20
+
## Features
10
21
11
22
Codebase Memory parses source with tree-sitter and optional language-server enrichment, then stores functions, classes, methods, call relationships, imports, routes, cross-service links, and other structural facts in a local graph-backed index.
12
23
@@ -22,6 +33,17 @@ Use it when you need to answer questions such as:
22
33
23
34
The graph is a discovery and structural-evidence layer, not a substitute for source verification. For material claims, especially negative or exhaustive claims, verify exact source and index coverage.
24
35
36
+
It includes:
37
+
38
+
- tree-sitter parsing for 162 languages;
39
+
- hybrid LSP-style semantic enrichment for supported languages;
40
+
- definitions, calls, imports, usages, routes, channels, and cross-service links;
The setup scripts install the executable. They do not install hooks or write MCP client configuration. Afterward, run `codebase-memory-cli install --skip-binary` for CLI-first skills/instructions. Run `codebase-memory-cli install-hooks` separately only if you explicitly want CLI-owned agent hooks.
165
+
The setup scripts install the executable. They do not install hooks or write
166
+
MCP client configuration. Afterward, run `codebase-memory-cli install
167
+
--skip-binary` for CLI skills and instructions. Run
168
+
`codebase-memory-cli install-hooks` separately only if you explicitly want
169
+
CLI-owned agent hooks.
142
170
143
171
## Human and machine output
144
172
@@ -170,7 +198,7 @@ The existing indexing engine is intentionally unchanged by the CLI-first migrati
170
198
- hybrid LSP semantic enrichment for selected languages;
171
199
- persistent local indexes;
172
200
- call/import/definition and selected cross-service relationships;
173
-
- change detection, architecture, Cypher, ADR, trace-ingestion, and other operations still available through the temporary compatibility interface while canonical named commands are expanded.
201
+
- change detection, architecture, Cypher, ADR, traceingestion, and other operations exposed through the canonical CLI and its compatibility form.
174
202
175
203
The first vertical slice does **not** rewrite the graph schema, parser pipeline, store format, or existing indexes.
176
204
@@ -198,7 +226,7 @@ Important environment variables include:
198
226
199
227
See [`docs/CONFIGURATION.md`](docs/CONFIGURATION.md) for the full reference.
The CLI, hooks, daemon, supervised workers, and UI now dispatch through the neutral operation/runtime layers. Index supervision, project mutation locks, version-cohort checks, process containment, memory limits, cancellation, store recovery, and secure local coordination remain part of the correctness kernel rather than protocol adapters.
239
+
The CLI, hooks, daemon, supervised workers, watcher, and UI dispatch through
240
+
the operation and runtime layers. Index supervision, project mutation locks,
241
+
version-cohort checks, process containment, memory limits, cancellation, store
242
+
recovery, and secure local coordination are part of the application itself.
212
243
213
244
## Build
214
245
@@ -244,8 +275,9 @@ See [`SECURITY.md`](SECURITY.md) and [`docs/SECURITY-DISCLOSURE.md`](docs/SECURI
244
275
245
276
## Migration documents
246
277
247
-
-[`docs/CLI_FIRST_VERTICAL_SLICE_IMPLEMENTATION_PLAN.md`](docs/CLI_FIRST_VERTICAL_SLICE_IMPLEMENTATION_PLAN.md) — implementation-grade first-slice plan, critical review, checkpoints, and definition of done.
248
-
-[`docs/CLI_ONLY_MIGRATION_PLAN.md`](docs/CLI_ONLY_MIGRATION_PLAN.md) — original high-level CLI-only direction retained as historical input.
278
+
-[`docs/CLI_MIGRATION_STATUS.md`](docs/CLI_MIGRATION_STATUS.md) — current port and qualification status.
279
+
-[`docs/RELEASE_QUALIFICATION_PLAN.md`](docs/RELEASE_QUALIFICATION_PLAN.md) — build, platform, benchmark, and release gates.
280
+
-[`docs/CLI_ONLY_MIGRATION_PLAN.md`](docs/CLI_ONLY_MIGRATION_PLAN.md) — historical rationale and scope of the MCP removal.
Copy file name to clipboardExpand all lines: SECURITY.md
+22-30Lines changed: 22 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,37 +1,30 @@
1
-
# Security Policy
1
+
# Security Policy — Codebase Memory CLI
2
2
3
3
## Transparency & Disclaimer
4
4
5
-
codebase-memory-mcp interacts deeply with your filesystem. It reads source files across your entire codebase, writes to agent configuration files, and spawns background processes. This is inherent to what it does — not a bug.
5
+
Codebase Memory CLI interacts deeply with your filesystem. It reads source
6
+
files across your codebase, writes to agent configuration files when explicitly
7
+
requested, and may spawn local background processes for indexing. This is
8
+
inherent to what it does — not a bug. It is a CLI-only fork and C port of
9
+
Codebase Memory MCP, created for workplaces that prohibit third-party MCP
10
+
servers.
6
11
7
12
**If you are uncomfortable with these access patterns**, please audit the source code before running. The full source is available in this repository. Release archives produced by the current release pipeline are verifiably built from this source and can be independently verified via SLSA Build Level 3 provenance, Sigstore signatures, and SHA-256 checksums (see [Verification](#verification) below). Each archive contains a native executable and its authenticated release-owned runtime assets.
8
13
9
14
We are humans and can make mistakes. We take security seriously — it is Priority #1 for this project — but we cannot guarantee perfection. By using this software you accept responsibility for evaluating whether it meets your own security requirements.
10
15
11
16
## Runtime Network Behavior
12
17
13
-
Indexing, graph queries, semantic search, and MCP tool handling run locally. The
14
-
MCP server does not upload source code, repository paths, graph indexes, query
18
+
Indexing, graph queries, semantic search, and CLI operation handling run locally.
19
+
The CLI does not upload source code, repository paths, graph indexes, query
15
20
contents, environment variables, usage metrics, or telemetry.
16
21
17
-
The MCP server has one best-effort external runtime check: after MCP
18
-
`initialize`, it starts a background update-check thread that requests release
-**All dangerous function calls** require a reviewed entry in `scripts/security-allowlist.txt`
112
105
-**Time-bomb pattern detection** — scans for `time()`/`sleep()` near dangerous calls (could indicate delayed activation)
113
-
-**MCP tool handler file read audit** — tracks file read count in `mcp.c` against an expected maximum (detects added file reads that could exfiltrate data through tool responses)
114
106
-**CodeQL SAST** — static application security testing on every push (taint analysis, CWE detection, data flow tracking). Any open alert blocks the release.
115
-
-**Fuzz testing** — random/mutated inputs to MCP server and Cypher parser (60 seconds per build). Catches crashes, segfaults, and memory errors that structured tests miss.
107
+
-**Fuzz testing** — random/mutated inputs to the CLI parser and Cypher parser (60 seconds per build). Catches crashes, segfaults, and memory errors that structured tests miss.
116
108
-**Native antivirus scanning** on every platform (any detection fails the build):
117
109
-**Windows**: Windows Defender with ML heuristics — the same engine end users run
118
110
-**Linux**: ClamAV with daily signature updates
@@ -159,8 +151,8 @@ Users can independently verify any release archive and the runtime set it contai
159
151
```bash
160
152
# SLSA Build Level 3 provenance for release archives
0 commit comments