Solenta - local-first desktop control surface for coding agents (Claude Code, Codex, Kimi, Grok, OpenCode)
https://solenta.app ↗// readme
Shared local memory across Claude Code, Codex, Cursor, Kimi, Grok, and OpenCode.
Session ten does not re-learn what session one already ruled out.
The problem
New coding-agent sessions start blank. Context gets re-pasted across Claude Code, Codex, and Grok. The tenth thread is not smarter than the first — just more expensive.
What Solenta remembers
A local memory server is auto-injected into every session. SQLite on disk, FTS + vector search, HTTP + MCP, localhost-only, bearer-token gated. No per-agent wiring.
Claude Code · thread 1
Ruled out a rewrite of auth. Cookie session stays.
Refresh lives in src/lib/auth.ts.
Codex · thread 3
The 401 retry is in src/lib/api.ts.
Moving it breaks the refresh path.
Grok · thread 6
Starts knowing both. Adds the expiry skew
and leaves the rest alone.
- Hypothesis ledger — the next thread inherits what the last one already ruled out.
- Provenance and trust score — every entry tracks which agent wrote it and how reliable that agent has been.
- File:line / thread / commit citations — before a fact is injected, its file citations are checked against the current worktree; contradicted…