Control what your AI can see. LeanCTX (Lean Context) is the context intelligence layer for AI agents — one local Rust binary that decides what they read, remembers what they learn, guards what they touch, and proves what they save. 60–90% fewer tokens as the receipt. 76 MCP tools, 30+ agents, local-first.
$ npx -y skills add yvgude/lean-ctx --agent claude-code
Run the curl in your terminal, the rest in Claude Code.
Repo: yvgude/lean-ctx
What's inside
LeanCTX — Context Engineering Layer for AI Coding Agents
LeanCTX — short for Lean Context — is the context engineering layer for AI coding agents. It runs locally alongside your coding agent, helping it read repositories, run development commands, and send focused context to the model: it decides what agents read, compresses what they send (an optional local proxy shrinks every request — system prompt, history and tool results — prompt-cache-safe), remembers what they learn, guards what they touch — and proves what they save with a signed, verifiable savings ledger. The result: 60–90% fewer tokens. Zero config required. Local-first.
| Problem | With LeanCTX |
|---|---|
| Repeated file reads: ~2000 tokens each | Cached re-reads: ~13 tokens |
Raw git status: ~800 tokens | Compressed: ~120 tokens |
| Every turn re-sends the whole history | Proxy compresses each request, prompt-cache-safe |
| Context resets every chat | Session memory persists across chats |
| No visibility into context usage | Real-time dashboard + budget control |
Control what your AI can see. LeanCTX — short for Lean Context — is the context engineering layer for AI coding agents: one local Rust binary that helps agents read repositories, run development commands, compress context sent to the model, remember what they learn, guard what they touch — and prove what they save.
Token savings are the receipt. Intelligence is the product. Works with Cursor, Claude Code, Copilot, Windsurf, Codex, Gemini and 30+ other agents — no config needed.
lean-ctx setup command, no config changes neededModels are converging on commodity. The durable edge isn't which model you call — it's your context: what your agents read, what they remember, and what you can prove. And the layer that optimizes and owns that context can't come from the vendor that bills per token or keeps your memory in a black box — it has to sit on your side.
That's the shift behind "agent entities" that live in your chat and remember your company (Claude in Slack, ClickUp Brain): a context login, not a model login — you end up renting your own company knowledge back. LeanCTX is the opposite layer. It keeps the moat yours: local-first, portable (.ctxpkg), and model-agnostic — swap OpenAI, Anthropic or Gemini without losing context or cache. Own your context; don't rent it back.
LeanCTX treats context as a managed resource, not an afterthought. One binary covers the four dimensions that decide how well an AI agent actually performs:
Your AI agent reads files and runs commands. LeanCTX compresses both automatically.
full, map, signatures, diff, lines:N-M, density:X, …) — cached re-reads cost ~13 tokensdensity:0.4): SDE-style budget compression — keeps the highest-entropy lines until ~40% of the original tokens remain, deterministicsignatures carries line spans and points at lines:N-M for targeted expansion — outline first, bodies on demandctx_expand, ctx_retrieve, an in-band marker, or GET /v1/references/{id}. Five recovery paths →Not every file needs the same depth. LeanCTX sends the signal, not the noise.
ModePredictor: learns the optimal read mode per file type from past sessionsIntentEngine: classifies query complexity so simple lookups stay cheapContext doesn't disappear between chats anymore.
.ctxpkg package and move it across machines or models, instead of locking it in a vendor's black boxPerformance is accuracy, not just speed. You stay in control of the window.
ctx_proof, ctx_verify): 4-layer verification engine with CI drift gatesctx_url_read): pull a public web page, PDF, or YouTube transcript into context as compressed, citation-backed text — facts/quotes return claims with a confidence score + source URL, relevance-ranked research-compression distils to a token budget, SSRF-guarded (http/https only)ctx_refactor): language-server-powered rename, references, go-to-definition via rust-analyzer, typescript-language-server, pylsp, goplsctx_agent, ctx_handoff): agent handoff with context transfer bundles, diary system, synchronized shared statectx_expand search_all): FTS5-powered cross-archive search over all previously archived tool outputslean-ctx pack --pr builds a PR-ready context pack (changed files, related tests, impact, artifacts)lean-ctx pack create bundles Knowledge + Graph + Session into portable .ctxpkg files with SHA-256 integritylean-ctx snapshot create|list|show|verify|restore|publish|import — git-anchored, ed25519-signed snapshots of the layer state (lineage, ledger Φ, ROI, session) on an append-only timeline; replay them in the dashboard, restore to resume a session (and --git to check out the commit), or publish/import a signed snapshot to share it (concept →)lean-ctx gain --live for real-time savings, lean-ctx wrapped for weekly/monthly summaries (gain --svg/--share for a shareable card or self-hostable page), lean-ctx watch for TUI monitoringlean-ctx savings is an auditable, per-event ledger (tokenizer transparency, bounce-netting, tamper-evident SHA-256 chain) — local-only, on by defaultlean-ctx serve for Streamable HTTP MCP + /v1/tools/call (used by the Cookbook + SDK)You don't have to choose between LeanCTX and the other context tools you already
like. An addon wraps any MCP server in a tiny lean-ctx-addon.toml manifest;
LeanCTX runs it behind its gateway with one command, then treats what it returns
like your own reads instead of just proxying it.
lean-ctx addon search memory # browse the registry by category
lean-ctx addon add headroom # installs the upstream package + wires the MCP server, on add
lean-ctx addon list # what's wired into your gateway
addon add <name> installs the upstream package via its native manager (uv, pip, cargo, npm, brew, dotnet) and wires the MCP server into your gateway. No fork, no recompile.ctx_expand handle, index into BM25 / graph / knowledge. Typed adapters route specific tools straight into ctx_expand, ctx_callgraph and ctx_knowledge.[addons] policy a single repo can't override.The registry spans compression (Headroom, Sophon), code intelligence (Repomix, Serena), memory (Mem0, Cognee, Letta) and reasoning (Sequential Thinking). See the addon guide or browse them all.
LeanCTX is growing from a single context layer into a full cognitive context layer for whole teams: version-controlled context strategy, one unified graph, and a governance layer across many agents.
ctxpkg.com registry for hosted, versioned context history and a side-by-side model-view | git-diff replay. The temporal axis through everything LeanCTX does — it decides, remembers, guards, proves, and replays. (concept →)The full roadmap lives in VISION.md.
LeanCTX works on two planes — what your agents read and what they send to the model:
read path: AI tool → (MCP tools + shell) → lean-ctx → your repo + CLI
wire path: AI tool → lean-ctx proxy → model provider (every request, compressed)
ctx_* tools (read modes, caching, deltas, search, memory, multi-agent)lean-ctx proxy enable puts a local proxy between your agent and the model that compresses every request — system prompt, full history and tool results — prompt-cache-safe, with measured USD spend. It can also pin one reasoning-effort level across OpenAI, Anthropic & Gemini (proxy.effort) without breaking that cache, cut output tokens with a cache-safe verbosity steer plus a measured holdout, and relocate volatile fields (dates, UUIDs, commit SHAs) out of the cacheable prefix so a stable system prompt finally caches. Every rewrite is reversible (content-addressed recovery) and byte-stable by contract. Same layer as a standalone request-compression proxy (e.g. Headroom) — you don't need one on top.# 1) Install (pick one)
curl -fsSL https://leanctx.com/install.sh | sh # universal (no Rust needed)
brew tap yvgude/lean-ctx && brew install lean-ctx # macOS / Linux
npm install -g lean-ctx-bin # Node.js
cargo install lean-ctx # Rust
pi install npm:pi-lean-ctx # Pi Coding Agent
# 2) One-command setup for your agent
lean-ctx wrap cursor # or: wrap claude / wrap codex / wrap vscode
# Done. Savings appear after your AI's first lean-ctx call.
lean-ctx gain
lean-ctx wrap installs shell hooks, registers the MCP server, sets up agent hooks, starts the daemon, and verifies the connection — all in one command. Undo anytime with lean-ctx unwrap cursor.
lean-ctx onboard # connect all detected AI tools (zero prompts)
lean-ctx setup # interactive wizard with every option
Building from source on Windows? Clone the repo and run ./install.ps1 in PowerShell — it builds the release binary and installs it into Cargo's bin directory (pass -BuildOnly to build without installing).
lean-ctx-offlean-ctx -c --raw "git status"shell_activation = "agents-only" in ~/.config/lean-ctx/config.toml.lean-ctx.toml in your project root (auto-merged with global config)/workspace: create .lean-ctx-id with a unique name to prevent context collisionslean-ctx updatelean-ctx doctor --jsonBeyond the CLI, lean-ctx ships published libraries so you can call it directly from your app.
Drop-in prompt compression — lean-ctx-sdk (npm). Compress a chat-style messages array before it reaches any model — deterministic and prompt-cache friendly; images, tool-calls and ids pass through untouched.
# pip install lean-ctx-sdk
from lean_ctx import compress
messages = compress(messages, model="claude-sonnet-4")
// npm install lean-ctx-sdk
import { compress } from "lean-ctx-sdk";
messages = await compress(messages, { model: "gpt-4o" });
Framework adapters included (LiteLLM, LangChain, Vercel AI SDK). → compress() cookbook
Thin /v1 contract clients — lean-ctx-client (npm · crates.io). Wrap the full /v1 tool, event and session API over the process boundary — never links the engine, so it stays stable as lean-ctx evolves.
pip install lean-ctx-client # Python (imports as `leanctx`)
npm install lean-ctx-client # TypeScript / Node
cargo add lean-ctx-client # Rust
Start the server with lean-ctx serve, then point a client at it. → API reference
LeanCTX grows with you. Below are the journeys most people actually take — each links to a complete, function-by-function walkthrough in the Reference (every CLI command and all 82 MCP tools are documented there).
"I just installed it — now what?"
lean-ctx wrap cursor # one-command setup for your agent
lean-ctx doctor # confirm you're wired up
One command installs hooks, MCP registration, and verifies the connection. → Journey 1 — Setup & Onboarding
"Stop re-reading the same files."
lean-ctx read src/server.rs -m map # API surface, ~13 tok on re-read
lean-ctx -c "git status" # compressed shell output
Your agent reads less and searches smarter — automatically. → Journey 2 — Daily Use
"My new chat forgot everything."
lean-ctx overview # task-aware project recap
lean-ctx knowledge recall "auth" # facts that survive resets
lean-ctx knowledge consolidate # import session + compact lifecycle
lean-ctx knowledge consolidate --all # compact every project store
Session memory + a project knowledge graph persist across chats. → Journey 3 — Memory & Knowledge
"Where does this function ripple to?"
lean-ctx graph impact src/auth.rs # blast radius
lean-ctx smells scan # code-smell hotspots
A multi-edge property graph powers impact analysis + ranked search. → Journey 4 — Code Intelligence
"Pull in GitHub issues and our Postgres schema."
lean-ctx provider list
lean-ctx serve --root ./api --root ./web # multi-repo
External data flows through the same consolidation pipeline. → Journey 5 — Advanced & Integrations
"Update, fix, or cleanly remove."
lean-ctx doctor --fix
lean-ctx update
Self-healing diagnostics; surgical uninstall that only removes its own blocks. → Journey 6 — Lifecycle & Troubleshooting
"Budget my context like a pro."
lean-ctx plan "refactor billing" --budget 8000
lean-ctx compile --mode balanced
Phi-scored planning + knapsack compilation + a context ledger. → Journey 7 — Context Engineering
"Planner + coder + reviewer on one repo."
ctx_agent action=register role=dev
ctx_handoff action=create # baton-pass with full context
Shared message bus, diaries, knowledge, and deterministic handoffs. → Journey 8 — Multi-Agent Collaboration
"One shared index, headless in pipelines."
lean-ctx team serve --config team.toml
lean-ctx bootstrap # zero-prompt CI setup
Scoped tokens, optional cloud sync, verifiable context gates. → Journey 9 — Team, Cloud & CI
"Make it behave exactly how we want."
lean-ctx compression standard
lean-ctx harden # enforce token discipline
Compression levels, tool profiles, themes, and rules governance. → Journey 10 — Customization & Governance
"Show me the numbers."
lean-ctx gain --deep # savings, cost, per-agent, heatmap
lean-ctx wrapped # shareable recap (also: gain --svg / gain --share)
lean-ctx savings # verified per-event ledger (auditable; savings verify)
All analytics live in the CLI/dashboard — never burning agent tokens. → Journey 11 — Analytics & Insights
"I want to read everything."
Every command and all 83 MCP tools, organized as user journeys, plus appendices for the CLI map, MCP tools, and paths & config. → Reference index
LeanCTX is a standard MCP server, so it works with any MCP-compatible client. Two integration modes are auto-selected per agent:
| Mode | How it works | Best for |
|---|---|---|
| Hybrid | MCP for cached reads (~13 tokens) + shell hooks for command compression | Agents with shell access (Cursor, Claude Code, Codex, ...) |
| MCP | All 83 tools via MCP protocol, no shell hooks | Protocol-only agents (JetBrains, VS Code, Zed, ...) |
| Agent | Hybrid | MCP | Setup |
|---|---|---|---|
| Cursor | ● | lean-ctx init --agent cursor | |
| Claude Code | ● | lean-ctx init --agent claude | |
| CodeBuddy | ● | lean-ctx init --agent codebuddy | |
| Augment CLI / VS Code | ● | lean-ctx init --agent augment | |
| Codex CLI | ● | lean-ctx init --agent codex | |
| Grok | ● | lean-ctx init --agent grok | |
| Gemini CLI | ● | lean-ctx init --agent gemini | |
| Windsurf | ● | lean-ctx init --agent windsurf | |
| GitHub Copilot | ● | lean-ctx init --agent copilot | |
| CRUSH | ● | lean-ctx init --agent crush | |
| Hermes | ● | lean-ctx init --agent hermes | |
| OpenCode | ● | lean-ctx init --agent opencode | |
| Pi | ● | lean-ctx init --agent pi | |
| Qoder | ● | lean-ctx init --agent qoder | |
| Amp | ● | lean-ctx init --agent amp | |
| Cline | ● | lean-ctx init --agent cline | |
| Roo Code | ● | lean-ctx init --agent roo | |
| Kiro | ● | lean-ctx init --agent kiro | |
| Antigravity | ● | lean-ctx init --agent antigravity | |
| Amazon Q | ● | lean-ctx init --agent amazonq | |
| Qwen | ● | lean-ctx init --agent qwen | |
| Trae | ● | lean-ctx init --agent trae | |
| Verdent | ● | lean-ctx init --agent verdent | |
| Aider | ● | lean-ctx init --agent aider | |
| Mistral Vibe | ● | lean-ctx init --agent vibe | |
| Continue | ● | lean-ctx init --agent continue | |
| JetBrains IDEs | ● | lean-ctx init --agent jetbrains | |
| QoderWork | ● | lean-ctx init --agent qoderwork | |
| VS Code | ● | lean-ctx init --agent vscode | |
| Zed | ● | lean-ctx init --agent zed | |
| Neovim | ● | lean-ctx init --agent neovim | |
| Emacs | ● | lean-ctx init --agent emacs | |
| Sublime Text | ● | lean-ctx init --agent sublime |
Any MCP-compatible client works out of the box — the table above shows agents with first-class auto-setup.
Great fit if you...
Skip it if you...
--raw, but ROI is lower)The honest fine print: the payoff depends on three levers — reach (own the
window via the proxy/engine, not just the ctx_* tool layer), context
lifetime (one long-lived session vs. a fresh process per phase), and
provider pricing (prompt-cache-priced vs. re-billed every turn). They stack
into a clear win where they line up and net to break-even where they don't.
See the win vs. break-even matrix
for the full breakdown and how to tune for each case.
Try these in any repo:
lean-ctx read rust/src/server/mod.rs -m map
lean-ctx -c "git log -n 5 --oneline"
lean-ctx gain --live
lean-ctx dashboard # Context Manager (browser)
lean-ctx watch # TUI monitor
lean-ctx benchmark report .
demo/vhs demo/leanctx.tape
vhs demo/gain.tape
vhs demo/benchmark.tape
Real, reproduced numbers — never estimated. Measured on this repo with the GPT-4o
tokenizer (o200k_base); a tool that isn't installed is reported as such, never
guessed.
| Read mode | Compression | Tokens (50 files) | Quality |
|---|---|---|---|
| Raw read | 0% | 533.2K | 100% |
map | 98.1% | 8.0K | 78% |
signatures | 96.7% | 14.0K | 96% |
| Cached re-read | ~99.99% | ~13 tok | 100% |
lean-ctx's own cost is measured too: the CI-measured fixed per-session
footprint (advertised tool schemas + MCP instructions + wakeup briefing) is
~3.0K tokens and gated via lean-ctx doctor overhead --gate. And the
long-lived proxy rail has a deterministic self-verify —
lean-ctx benchmark dual-arm --json replays a 72-turn session and prices it per
model (digest f5ed145e61ce3689, 99.4% input-side saving on cache-priced rails;
methodology: bench/agent-task/r2).
Accuracy isn't a vibe: the lossy stages are CI-gated. A model-free A/B gate
proves the JSON crusher keeps every gold answer while cutting tokens, and proxy
rewrites are byte-stable by contract, so Anthropic (90%) / OpenAI (50%) prompt-cache
discounts survive compression. A deterministic off-vs-on testbench
(lean-ctx eval testbench) extends the proof to answers: it runs pinned real repos
through a raw-dump baseline and through lean-ctx at an identical token budget, grades
free-form QA with an LLM judge and code with each repo's own tests, and emits
FINDINGS.md (tokens / turns / walltime / quality) plus a regressions file — with a
committed recorded subset that blocks CI on any regression.
lean-ctx benchmark report .update_check_disabled = true or LEAN_CTX_NO_UPDATE_CHECK=1)See SECURITY.md.
One command removes everything — it stops all processes, then deletes hooks, editor configs, rules, autostart (LaunchAgent/systemd), the data dir, and the binary itself:
lean-ctx uninstall # full clean removal
lean-ctx uninstall --dry-run # preview every change, write nothing
lean-ctx uninstall --keep-config # keep MCP configs + rules (for reinstall)
lean-ctx-off # or just disable for the current shell session
No binary on PATH (or you used the curl installer)? Run the same removal from the installer:
curl -fsSL https://leanctx.com/install.sh | sh -s -- --uninstall
If you installed via a package manager, uninstall removes everything it wrote and
tells you the one command to finish removing the binary:
brew uninstall lean-ctx # Homebrew
cargo uninstall lean-ctx # cargo install
npm uninstall -g lean-ctx-bin # npm
pi uninstall npm:pi-lean-ctx # Pi Coding Agent
Start with CONTRIBUTING.md. Easy first PR: propose a new CLI compression pattern via the issue template.
Apache License 2.0 — see LICENSE.
--- lean-ctx: ctx_compose bundles search+read+symbols in one call ---
.claude-plugin/
manifest.json
.clinerules
.cursor/
rules/
compression-safety.mdc
.dockerignore
.gitattributes
.githooks/
pre-commit
pre-push
.github/
.github-ignore
actions/
windows-jemalloc/
action.yml
copilot/
copilot-instructions.md
mcp.json
FUNDING.yml
hooks/
hooks.json
pre-push-proprietary-guard.sh
ISSUE_TEMPLATE/
bug_report.md
compression_pattern.md
config.yml
feature_request.md
pull_request_template.md
scripts/
post-release-tweet.mjs
workflows/
addon-versions.yml
benchmark-study.yml
ci.yml
cla.yml
codeql.yml
dep-update.yml
go-conformance.yml
grammar-addons.yml
history-audit.yml
issue-reopen.yml
jetbrains-plugin.yml
publish-clients.yml
publish-sdk.yml
publish-vscode.yml
release.yml
secret-rotation-check.yml
security-check.yml
.gitignore
.gitmodules
.kiro/
steering/
lean-ctx.md
.pre-commit-config.yaml
.vscode/
settings.json
.windsurfrules
AGENTS.md
ARCHITECTURE.md
assets/
leanctx-benchmark.gif
leanctx-demo.gif
leanctx-gain.gif
leanctx-pr-pack.gif
aur/
lean-ctx/
.SRCINFO
PKGBUILD
bench/
agent-task/
.gitignore
config.json
PROMPT.md
PROTOCOL.md
r2/
faithful-arm.env
lean-ctx.toml
pi-config.json
preflight.mjs
README.md
README.md
requirements.txt
swebench_harness/
__init__.py
collect.py
preflight.py
report.py
run_arm.py
select_tasks.py
tasks.lock.json
compress/
benchmark.py
README.md
lifecycle/
config.json
harness/
__init__.py
__main__.py
codex_runner.py
repo_setup.py
report.py
run_lifecycle.py
lanes/
beets.json
fastify.json
terraform.json
README.md
research/
agent-1-information-theory.md
agent-2-neuroscience.md
agent-3-mathematics.md
agent-4-systems-engineering.md
SYNTHESIS.md
benchmark/
lean-ctx-benchmark.md
locomo/
LOCOMO.md
results/
locomo-latest.json
results/
benchmark-raw.json
benchmark-results-fixed.json
benchmark-results.json
run_benchmark.sh
benchmarks/
BENCHMARKS.md
bigcodebench-baseline-v2-2026-07-30.json
bigcodebench-compressed-v2-2026-07-30.json
capability-comparison/
rtk-v1/
git/
blame/
input.txt
metadata.json
diff_large/
input.txt
metadata.json
diff_medium/
input.txt
metadata.json
diff_small/
input.txt
metadata.json
log_compact/
input.txt
metadata.json
log_verbose/
input.txt
metadata.json
show/
input.txt
metadata.json
status_clean/
input.txt
metadata.json
status_staged/
input.txt
metadata.json
status_untracked/
input.txt
metadata.json
structured/
docker_ps/
docker_ps_all/
input.txt
metadata.json
input.txt
metadata.json
find_source_files/
input.txt
metadata.json
find_with_prune/
input.txt
metadata.json
kubectl_get_deployments/
input.txt
metadata.json
kubectl_get_pods/
input.txt
metadata.json
ls_la/
ls_la_nested/
input.txt
metadata.json
input.txt
metadata.json
npm_list/
npm_list_depth/
input.txt
metadata.json
input.txt
metadata.json
test/
cargo_test_fail/
input.txt
metadata.json
cargo_test_ignored/
input.txt
metadata.json
cargo_test_pass/
input.txt
metadata.json
cargo_test_workspace/
input.txt
metadata.json
go_test/
input.txt
metadata.json
jest_failure/
input.txt
metadata.json
jest_pass/
input.txt
metadata.json
pytest_failure/
input.txt
metadata.json
pytest_pass/
input.txt
metadata.json
pytest_verbose/
input.txt
metadata.json
E-BENCH-REPORT-v2.md
efficiency/
METHODOLOGY.md
RESULTS-baseline.md
task-spine-v1/
README.md
tasks/
task-001-python-bug/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-002-rust-refactor/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-003-typescript-tests/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-004-documentation/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-005-go-security/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-006-react-feature/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-007-rust-performance/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-008-ci-fix/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-009-fastapi-endpoint/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
task-010-database-migration/
baseline.json
context_plan.json
execution_receipt.json
outcome.json
task_envelope.json
validate.py
humaneval-baseline-v2-2026-07-29.json
humaneval-codex-cli-2026-07-29.json
humaneval-compressed-v2-2026-07-29.json
mbpp-baseline-v2-2026-07-30.json
mbpp-compressed-v2-2026-07-30.json
multifile-context-v2-2026-07-30.json
multifile-context-v3-2026-07-30.json
shell-compression-v2-2026-07-30.json
shell-compression-v3-2026-07-30.json
bin/
lctx
blog/
twir-lean-ctx.md
CHANGELOG.md
ci/
gitlab-ci.yml
CLA.md
clients/
python/
.gitignore
leanctx/
__init__.py
adapters/
__init__.py
_common.py
crewai.py
langchain.py
llamaindex.py
openai.py
client.py
conformance.py
errors.py
ocla_verify.py
ocla.py
tool_text.py
pyproject.toml
README.md
tests/
ocla-build-requirements.lock
test_adapters_live.py
test_adapters.py
test_client.py
test_conformance_live.py
test_conformance.py
test_ocla_cli.py
test_ocla_package.py
test_ocla_wire.py
rust/
lean-ctx-client/
.gitignore
Cargo.lock
Cargo.toml
contracts/
ocla-agent-envelope-v1.schema.json
ocla-wire-v1.schema.json
README.md
scripts/
verify-packaged-source.sh
src/
bin/
lean-ctx-ocla-verify.rs
client.rs
conformance.rs
error.rs
events.rs
lib.rs
ocla.rs
tool_text.rs
types.rs
tests/
conformance_live.rs
dependency_boundary.rs
external_consumer.rs
external-consumer/
Cargo.lock.fixture
Cargo.toml.in
main.rs.fixture
README.md
fixtures/
agent-envelope-v1.json
canonical-token-envelope-v1.json
invalid-agent-envelope-v1.json
invalid-token-envelope-v1.json
self-relay-agent-envelope-v1.json
http.rs
ocla_cli.rs
ocla_wire.rs
CODE_OF_CONDUCT.md
contracts/
CONTRACTS.md
ocla/
capability-manifests/
leanctx/
context-optimization-v1.json
passthrough-v1.json
rtk/
rtk-shell-v1.json
v1/
ocla.proto
CONTRIBUTING.md
cookbook/
.biomeignore
.gitignore
biome.json
examples/
autoupdate/
autoupdate.ps1
autoupdate.sh
... 1600 moreShowing a partial view of a very large repo.
FAQ
lean-ctx is a Claude Code plugin with 1 hand-picked skill for development work, indexed on Flowy. Install it with the command on its page. It includes lean-ctx. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.