- Reliability 11/20
- Static evidence supports credible reliability claims: the repo is said to ship two benchmark harnesses (LongMemEval-S, LoCoMo) plus deja bench recall/context/block, with a CI badge and an explicit 'CI fails if recall drops' regression gate; distribution is a single local Go binary over stdio, and the manifest's npx positional 'mcp' argument matches the README's `deja mcp` entry point, with the tool surface (one `deja` tool plus six legacy names) internally consistent. Per the static calibration, nothing was executed and only the README/manifest excerpts were available, so no actual workflow YAML, test file, or error-handling code was observed and 12 is the ceiling. Deductions: the MCP init/tools-list handshake is not evidenced by committed tests; the harness matrix contains ⚠ (blocked by upstream bugs) and external sqlite3/zstd dependencies whose failure and degradation paths are not documented.
- Security and permissions 14/20
- No red-line signal: indexing and search are local, and the network is used only by `deja update`, `deja sync ssh`, and the doctor version check, with authorization explicit (local stdio process, no implicit remote command execution). Credential handling is a strength with stated bounds: AWS keys, api_key=/token= assignments, bearer tokens and raw JWTs, PEM blocks, provider tokens, and high-entropy values are redacted at index time, share/sync export re-applies redaction on the way out, and `deja forget` writes tombstones so a rebuild cannot restore sessions, backed by a dedicated security-model document that honestly states 'pattern matching is not secret detection.' Deductions: the optional semantic-recall probe auto-contacts localhost:11434/1234 when DEJA_EMBED_URL is unset, so on a machine already running Ollama/LM Studio an implicit call happens by default (DEJA_EMBED_OFF exists but is opt-out, not least privilege); a remote embedding endpoint receives redacted text truncated to ~2k chars, which the user must accept; and the install path is curl | sh with no verification step shown. Overall no red line, hence not in the 0-4 band.
- Maintenance 15/20
- Evidence shows an actively maintained project: version 0.13.0, GitHub Releases, a CI workflow, CONTRIBUTING.md, ROADMAP.md, an .mcpb bundle, and broad multi-ecosystem distribution (npm opencode-deja/dsh-deja, a Zed extension, Kimi/Grok/Codex plugin marketplaces, Homebrew, Scoop, go install), plus a 25-harness parser registry kept honest with synthetic fixtures, implying a dense release cadence and clear ownership (MIT © Vladislav Shulcz, single author). Deductions: 796 stars and 31 open issues are given, but the material contains no evidence of issue-response latency, a security-response channel, or a dependency-update policy; governance is a single maintainer with no governance file; and Windows support is self-described as not battle-tested, deferred to issue #9. Hence 15, not higher.
- Documentation 18/20
- Documentation is notably above average: install paths (install.sh/brew/go/npx/mcpb/Scoop), manual MCP configuration, a tool parameter table (the `deja` tool with mode and query/path/error/what/text/tags/harness/project/since/limit/offset/all), return shapes, legacy-name compatibility, a per-harness capability matrix across 25 agents with a legend (✅/⚠/✕/—), per-harness extra requirements (sqlite3/zstd/roo CLI), privacy and redaction scope, measured performance and index size, three benchmark commands with result tables, and explicit limitations ('pattern matching is not secret detection', lexical fallback when semantic recall is unavailable, Windows CI-only maturity, Claude Code's 30-day transcript cleanup), all with reviewable links (ARCHITECTURE/SECURITY-MODEL/registry/json-output). Deductions: only README excerpts were supplied, so SECURITY-MODEL.md, ARCHITECTURE.md, and benchmark reproduction details are not directly visible, and several figures (85.3% hit@1, 5.2 GB / 1,551 sessions) rest on external pages, so full marks are not justified.
- Setup experience 14/20
- The install path is clear and short: `curl -fsSL .../install.sh | sh` plus `deja install --auto` gives indexing and multi-agent wiring in two steps, with brew, go install, a zero-install `npx` try, Scoop, a Windows zip, and a Releases .mcpb bundle as alternatives; six harnesses also have native-ecosystem packages that are individually sufficient and explicitly non-conflicting with the CLI path (shared server id, only additive contributions). The manifest's npm package carries runtimeHint npx and a positional 'mcp' argument, so hand configuration is unambiguous. Deductions: the static calibration caps this at 15, and installation depends on executing a shell script (Windows exits with 'unsupported OS', forcing Scoop/zip), while Cursor/opencode/Crush/Zed need system tools like sqlite3 and zstd; the auto installer also writes guidance files for roughly 22 harnesses plus ~/.agents/skills, opt-out only via --no-guidance, so ease of use is environment-dependent rather than frictionless.