Documentação

Começando

Instale o LeanCTX e comece a economizar tokens em menos de 5 minutos. Guia passo a passo para macOS, Linux e Windows.

O LeanCTX reduz o consumo de tokens do seu LLM em até 99% através de um único binário Rust que oferece: um Shell Hook com mais de 95 padrões de compressão CLI, um MCP Server com 58 ferramentas para leituras em cache e inteligência de sessão, e um Grafo Persistente do Projeto para compreensão estrutural do código. Instale uma vez, e cada leitura de arquivo, comando shell e navegação de código se torna mais eficiente.

Gerador de Prompts

Selecione sua plataforma e ferramenta de IA abaixo. O prompt gerado pode ser colado em qualquer assistente de codificação IA - ele guiará automaticamente toda a instalação e configuração.

prompt gerado
 

Comece em 3 Etapas

3 comandos - é só isso
# 1. Install (pick one)
curl -fsSL https://leanctx.com/install.sh | sh          # universal
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. Setup (auto-configures shell + ALL detected editors)
lean-ctx setup

# 3. Restart your shell
source ~/.zshrc  # or ~/.bashrc

O lean-ctx setup detecta e configura automaticamente: Cursor, Claude Code, Windsurf, VS Code / Copilot, Codex CLI, Gemini CLI, Zed, Antigravity, OpenCode, Crush e Pi. Execute lean-ctx doctor para verificar se tudo funciona.

Instruções detalhadas de instalação por plataforma

Etapa 1: Instalar o Binário

Instalador Universal (qualquer plataforma)

A forma mais rápida de instalar o lean-ctx sem pré-requisitos:

curl -fsSL https://leanctx.com/install.sh | sh

The install script detects your OS and architecture, downloads the correct binary, and places it in /usr/local/bin. It works on macOS, Linux, and WSL.

If you prefer to review the script before running it:

curl -fsSL https://leanctx.com/install.sh -o install.sh
chmod +x install.sh
./install.sh --download    # pre-built binary (no Rust)
./install.sh               # build from source (requires Rust)

npm (Node.js)

Instale o binário pré-compilado via npm - sem necessidade de toolchain Rust:

npm install -g lean-ctx-bin

Isso baixa o binário correto para sua plataforma durante o postinstall com verificação SHA256. Funciona em macOS (Intel + Apple Silicon), Linux (x86_64) e Windows (x86_64).

macOS

Option A: Homebrew (recommended)

brew tap yvgude/lean-ctx
brew install lean-ctx

Homebrew handles updates and PATH automatically.

Option B: Cargo (build from source)

cargo install lean-ctx

If lean-ctx isn't found after install, add Cargo's bin directory to your PATH:

echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Option C: Manual binary download

  1. Download the binary for your architecture from GitHub Releases:
    • lean-ctx-aarch64-apple-darwin.tar.gz (Apple Silicon / M1+)
    • lean-ctx-x86_64-apple-darwin.tar.gz (Intel)
  2. Extract and move to PATH:
    tar xzf lean-ctx-aarch64-apple-darwin.tar.gz
    chmod +x lean-ctx
    sudo mv lean-ctx /usr/local/bin/

If macOS blocks the binary with a Gatekeeper warning, remove the quarantine attribute:

xattr -d com.apple.quarantine /usr/local/bin/lean-ctx

Linux

Option A: Homebrew

brew tap yvgude/lean-ctx && brew install lean-ctx

Option B: AUR (Arch Linux)

# Source build from crates.io
yay -S lean-ctx

# Or pre-built binary from GitHub
yay -S lean-ctx-bin

Works with any AUR helper: yay, paru, trizen, etc.

Option C: Cargo (build from source)

cargo install lean-ctx

Requires Rust toolchain. Install via rustup.rs if needed.

Option D: Manual binary download

  1. Download lean-ctx-x86_64-unknown-linux-gnu.tar.gz from GitHub Releases
  2. Extract and move to PATH:
    tar xzf lean-ctx-x86_64-unknown-linux-gnu.tar.gz
    chmod +x lean-ctx
    sudo mv lean-ctx /usr/local/bin/
CommandMethod
lean-ctx-x86_64-unknown-linux-musl.tar.gzx86_64 - statically linked (musl)
lean-ctx-aarch64-unknown-linux-musl.tar.gzARM64 / aarch64 (Graviton, Raspberry Pi 4+, etc.) - statically linked

Windows

Option A: Binary download (recommended)

  1. Download lean-ctx-x86_64-pc-windows-msvc.zip from GitHub Releases
  2. Extract the .zip file
  3. Open the extracted folder - you'll see lean-ctx.exe
  4. Move lean-ctx.exe to a folder in your PATH, for example:
    mkdir %USERPROFILE%\bin
    move lean-ctx.exe %USERPROFILE%\bin\
  5. Add the folder to your PATH if it isn't already:
    • Open Settings → System → About → Advanced system settings
    • Click Environment Variables
    • Under User variables, select Path, click Edit, then New
    • Add the path to your bin folder (e.g. C:\Users\you\bin)
  6. Open a new PowerShell or CMD window and verify:
    lean-ctx --version

Option B: Cargo (build from source)

  1. Install Rust if not already installed
  2. Build and install:
    cargo install lean-ctx
  3. The binary is placed in %USERPROFILE%\.cargo\bin\ which is usually already in your PATH.

Option C: Build from source (clone & compile)

git clone https://github.com/yvgude/lean-ctx.git
cd lean-ctx\rust
cargo build --release
copy target\release\lean-ctx.exe %USERPROFILE%\bin\

WSL users: If you're running WSL, follow the Linux instructions instead.

Compilar a partir do código-fonte (qualquer plataforma)

git clone https://github.com/yvgude/lean-ctx.git
cd lean-ctx/rust
cargo build --release

O binário fica em target/release/lean-ctx (ou lean-ctx.exe no Windows). Copie-o para um diretório no seu PATH.

Etapa 2: Setup

Após instalar o binário, execute lean-ctx setup para configurar tudo automaticamente:

lean-ctx setup

Este único comando:

  • Instala 23 aliases de shell (git, npm, cargo, docker, kubectl, curl e mais)
  • Detecta automaticamente editores instalados (Cursor, Claude Code, Windsurf, VS Code/Copilot, Codex CLI, Gemini CLI, Zed, Antigravity, OpenCode, Crush)
  • Cria arquivos de configuração MCP para cada editor detectado
  • Injeta regras de agente na configuração global de cada ferramenta detectada, instruindo a IA a usar as ferramentas MCP do lean-ctx (ctx_read, ctx_shell, ctx_search, ctx_tree) em vez dos equivalentes nativos
  • Executa lean-ctx doctor para verificar tudo

Importante: Reinicie sua IDE após o setup!

A conexão MCP precisa ser restabelecida para que as novas ferramentas e regras de agente entrem em vigor. Feche e reabra completamente sua IDE (Cmd+Q / Ctrl+Q, depois reabra). Após reiniciar, as regras de agente também são atualizadas automaticamente a cada início da IDE - sem necessidade de executar lean-ctx setup novamente após futuras atualizações.

Após o setup, reinicie seu shell:

ShellComando para reiniciar
Zsh (macOS default)source ~/.zshrc
Bashsource ~/.bashrc
Fishsource ~/.config/fish/config.fish
PowerShellClose and reopen PowerShell

Em seguida, reinicie completamente seu editor.

Alternativa manual

Se preferir instalar apenas aliases de shell sem detecção automática de editores:

lean-ctx init --global

Em seguida, configure seu editor manualmente usando as instruções na Etapa 3 abaixo.

Inicialização baseada em eval (recomendado)

Como alternativa ao lean-ctx init --global, você pode usar o padrão eval - o mesmo método utilizado pelo starship, zoxide e atuin. O código do hook é impresso em stdout pelo binário atualmente instalado, portanto está sempre atualizado após upgrades:

# bash: add to ~/.bashrc
eval "$(lean-ctx init bash)"

# zsh: add to ~/.zshrc
eval "$(lean-ctx init zsh)"

# fish: add to ~/.config/fish/config.fish
lean-ctx init fish | source

# powershell: add to $PROFILE
lean-ctx init powershell | Invoke-Expression

Vantagem: O método eval gera hooks a partir do binário instalado na inicialização do shell, então os hooks nunca ficam desatualizados após um lean-ctx update. Não é necessário executar lean-ctx setup novamente após uma atualização.


Instalação Docker

Para usar lean-ctx dentro de um container Docker (ex. com Claude Code, Codex ou outros agentes de IA), use o binário musl linkado estaticamente e defina BASH_ENV para que o hook de shell carregue em shells não interativos.

ARG LEAN_CTX_VERSION=3.5.1

# Download the musl binary (statically linked, no glibc dependency)
RUN curl -fsSL \
    "https://github.com/yvgude/lean-ctx/releases/download/v${LEAN_CTX_VERSION}/lean-ctx-x86_64-unknown-linux-musl.tar.gz" \
    | tar -xz -C /usr/local/bin lean-ctx && \
    chmod +x /usr/local/bin/lean-ctx

# Install shell hook (non-interactive) + configure your AI tool
RUN lean-ctx init --global && \
    lean-ctx init --agent claude

# Load shell hook in non-interactive shells
ENV BASH_ENV="/root/.lean-ctx/env.sh"

# Claude Code: sources this file before each command
ENV CLAUDE_ENV_FILE="/root/.lean-ctx/env.sh"

For ARM64 hosts (AWS Graviton, Apple Silicon via Docker), use the aarch64 binary instead:

# For ARM64 (Apple Silicon / Graviton), use the aarch64 binary:
RUN curl -fsSL \
    "https://github.com/yvgude/lean-ctx/releases/download/v${LEAN_CTX_VERSION}/lean-ctx-aarch64-unknown-linux-musl.tar.gz" \
    | tar -xz -C /usr/local/bin lean-ctx

Por que funciona

PassoFinalidade
musl binary Linkado estaticamente - funciona em qualquer distribuição Linux sem instalar gcc-libs ou glibc
lean-ctx init --global Instala o hook de shell em ~/.bashrc (não interativo, ao contrário de lean-ctx setup)
lean-ctx init --agent claude Escreve a configuração do servidor MCP em ~/.claude.json. Substitua claude pelo seu agente: cursor, codex, gemini, etc.
BASH_ENV Shells não interativos genéricos (bash -c) carregam este arquivo. A maioria dos ~/.bashrc encerram prematuramente no modo não interativo - env.sh não tem essa proteção.
CLAUDE_ENV_FILE Claude Code carrega este arquivo antes de cada comando que executa. Esta é a forma oficialmente recomendada para configurar o ambiente shell do Claude Code.

Problemas comuns

ErroCausaSolução
command not found: _lc BASH_ENV não definido - hook de shell não carregadoAdicione ENV BASH_ENV="/root/.lean-ctx/env.sh" (ajuste o caminho para usuários não root)
lean-ctx setup hangs Prompt interativo sem stdin no DockerUse lean-ctx init --global em vez disso
Binary not found / exec format error Arquitetura errada ou binário gnu sem glibcUse o tarball musl para containers mínimos

Etapa 3: Verificar

  1. Check the binary is installed:
    lean-ctx --version   # → lean-ctx 3.5.1
    lean-ctx doctor      # checks PATH, config, aliases, MCP
  2. Test the shell hook:
    git status           # output is now compressed
    lean-ctx gain        # shows token savings so far
  3. Open your AI coding tool and start coding - lean-ctx tools should be available automatically.
Configuração manual do editor

apenas se o lean-ctx setup não funcionou

Connect lean-ctx to your AI coding tool by adding it as an MCP server.

Before you start: Find your lean-ctx binary path. You'll need it for editors that require a full path.

# macOS / Linux:
which lean-ctx
# Example output: /opt/homebrew/bin/lean-ctx  or  /Users/you/.cargo/bin/lean-ctx

# Windows (PowerShell):
where.exe lean-ctx
# Example output: C:\Users\you\.cargo\bin\lean-ctx.exe

Keep this path handy - some editors need the full absolute path instead of just lean-ctx.

Cursor

  1. Create or edit the MCP config file:
    # macOS / Linux:
    mkdir -p ~/.cursor
    nano ~/.cursor/mcp.json
    
    # Windows (PowerShell):
    mkdir -Force "$env:USERPROFILE\.cursor"
    notepad "$env:USERPROFILE\.cursor\mcp.json"
  2. Paste this JSON:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "lean-ctx"
        }
      }
    }
  3. Restart Cursor completely (Cmd+Q / Alt+F4, then reopen).
  4. Verify: open the MCP panel in settings - lean-ctx should show as "connected".

Optional: install agent rules to make Cursor prefer lean-ctx tools:

lean-ctx init --agent cursor

Claude Code

Claude Code has built-in MCP support. No config file needed:

# Add lean-ctx as MCP server:
claude mcp add lean-ctx lean-ctx

# Install the CLAUDE.md instructions (makes Claude use lean-ctx tools):
lean-ctx init --agent claude

The init command creates a CLAUDE.md file that teaches Claude to use lean-ctx tools instead of native file reads and shell commands.

Claude Code: 2048-Character Limit

Claude Code truncates MCP server instructions to 2048 characters. This means lean-ctx's full instruction set (session management, compression protocols, tool preferences) gets cut off.

lean-ctx handles this automatically: lean-ctx init --agent claude installs the full instructions as a Claude Rules file (~/.claude/rules/lean-ctx.md) and an Agent Skill (~/.claude/skills/lean-ctx/). Claude Code loads these without any character cap.

# Automatic (recommended) - run during init:
lean-ctx init --agent claude

# This automatically:
# 1. Registers MCP server in ~/.claude.json
# 2. Installs full instructions to ~/.claude/rules/lean-ctx.md
# 3. Installs Agent Skill to ~/.claude/skills/lean-ctx/

If you installed lean-ctx manually (without init), copy the rules file: lean-ctx init --agent claude to retroactively install rules + skills.

GitHub Copilot (VS Code)

Option A: Copilot CLI (.github/mcp.json)

  1. Create .github/mcp.json in your project root:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "lean-ctx"
        }
      }
    }
  2. Restart VS Code / Copilot CLI.

Option B: VS Code Copilot (.vscode/mcp.json)

  1. Create .vscode/mcp.json in your project root:
    {
      "servers": {
        "lean-ctx": {
          "type": "stdio",
          "command": "lean-ctx"
        }
      }
    }
  2. Restart VS Code.

Tip: lean-ctx init --agent copilot creates both files automatically.

Note: GitHub Copilot MCP support requires VS Code 1.99+ and the latest Copilot extension.

Per-project: This config is per-project. Add .github/mcp.json to your .gitignore or commit it to share with your team.

Windsurf

  1. Open the MCP config file:
    # macOS:
    mkdir -p ~/.codeium/windsurf
    nano ~/.codeium/windsurf/mcp_config.json
    
    # Linux:
    mkdir -p ~/.codeium/windsurf
    nano ~/.codeium/windsurf/mcp_config.json
    
    # Windows:
    mkdir -Force "$env:USERPROFILE\.codeium\windsurf"
    notepad "$env:USERPROFILE\.codeium\windsurf\mcp_config.json"
  2. Paste this JSON:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "/FULL/PATH/TO/lean-ctx"
        }
      }
    }

    Important: Windsurf requires the full absolute path to the binary. Example for Homebrew on macOS:

    {
      "mcpServers": {
        "lean-ctx": {
          "command": "/opt/homebrew/bin/lean-ctx"
        }
      }
    }
  3. Restart Windsurf completely.
  4. Check MCP connection in Windsurf settings.

Zed

  1. Open Zed settings:
    # macOS / Linux:
    ~/.config/zed/settings.json
    
    # Windows:
    %APPDATA%\Zed\settings.json
  2. Add the lean-ctx context server configuration:
    {
      "context_servers": {
        "lean-ctx": {
          "source": "custom",
          "command": "lean-ctx",
          "args": [],
          "env": {}
        }
      }
    }

    Note: Zed uses context_servers (not mcpServers) and requires source: "custom".

  3. Save and restart Zed.
  4. Verify: lean-ctx tools should appear in the assistant panel.

Tip: Run lean-ctx init --agent zed to install agent rules that make Zed prefer lean-ctx tools.

OpenAI Codex CLI

  1. Create or edit the Codex config file:
    # macOS / Linux:
    mkdir -p ~/.codex
    nano ~/.codex/config.toml
    
    # Windows:
    mkdir -Force "$env:USERPROFILE\.codex"
    notepad "$env:USERPROFILE\.codex\config.toml"
  2. Add the MCP server entry:
    [mcp_servers.lean-ctx]
    command = "lean-ctx"
    args = []
  3. Restart Codex CLI.

Alternative: use the Codex CLI built-in command:

codex mcp add lean-ctx

Install agent instructions for Codex:

lean-ctx init --agent codex

Gemini CLI

  1. Create or edit the Gemini MCP config:
    # macOS / Linux:
    mkdir -p ~/.gemini
    nano ~/.gemini/settings.json
    
    # Windows (PowerShell):
    mkdir -Force "$env:USERPROFILE\.gemini"
    notepad "$env:USERPROFILE\.gemini\settings.json"
  2. Add the MCP server configuration:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "lean-ctx"
        }
      }
    }

    Important: If Gemini can't find the binary, use the full path. Example for Homebrew on macOS:

    {
      "mcpServers": {
        "lean-ctx": {
          "command": "/opt/homebrew/bin/lean-ctx"
        }
      }
    }
  3. Restart Gemini CLI.
  4. Verify with a prompt that triggers tool use.

Known issue: Gemini CLI may not always invoke MCP tools consistently. If tools aren't triggered, try adding lean-ctx init --agent gemini to install a GEMINI.md with usage instructions.

Antigravity

Antigravity uses the same MCP config format as Gemini CLI but in a separate directory.

  1. Create the Antigravity MCP config directory and file:
    # macOS / Linux:
    mkdir -p ~/.gemini/antigravity
    nano ~/.gemini/antigravity/mcp_config.json
    
    # Windows (PowerShell):
    mkdir -Force "$env:USERPROFILE\.gemini\antigravity"
    notepad "$env:USERPROFILE\.gemini\antigravity\mcp_config.json"
  2. Paste this JSON:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "lean-ctx"
        }
      }
    }

    Important: If Antigravity can't find the binary, use the full absolute path to lean-ctx.

  3. Restart Antigravity.
  4. Verify with a prompt that triggers tool use.

You can also manage MCP servers via Antigravity's built-in server management UI.

OpenCode

  1. Create or edit the OpenCode config file:
    # macOS / Linux:
    mkdir -p ~/.config/opencode
    nano ~/.config/opencode/opencode.json
  2. Add the MCP server configuration:
    {
      "$schema": "https://opencode.ai/config.json",
      "mcp": {
        "lean-ctx": {
          "type": "local",
          "command": ["lean-ctx"],
          "enabled": true
        }
      }
    }
  3. Restart OpenCode.

OpenClaw

OpenClaw supports MCP servers natively. You can add lean-ctx from the settings UI or via CLI.

  1. Open OpenClaw settings and navigate to the MCP servers section.
  2. Add a new MCP server with command: lean-ctx
  3. Restart OpenClaw to activate.

Tip: Run lean-ctx init --agent openclaw to install lean-ctx skills for OpenClaw.

Pi

Pi has a dedicated lean-ctx plugin (pi-lean-ctx) that integrates automatically.

  1. Make sure lean-ctx is installed:
    cargo install lean-ctx
  2. Install the Pi plugin:
    pi install npm:pi-lean-ctx

    Or use lean-ctx's built-in command:

    lean-ctx init --agent pi
  3. Restart Pi.
  4. Verify: lean-ctx tools should appear in Pi's tool list.

Note: Pi's smart reads automatically use lean-ctx when the plugin is installed. No additional configuration needed.

AWS Kiro

AWS Kiro requer tanto uma configuração MCP quanto um arquivo de steering para usar as ferramentas lean-ctx em vez dos equivalentes nativos.

  1. Execute lean-ctx setup - o Kiro é detectado automaticamente e tanto a configuração MCP quanto o arquivo de steering são criados.
  2. Ou use o comando dedicado (cria ambos os arquivos):
    lean-ctx init --agent kiro
  3. Isso cria dois arquivos:
    • ~/.kiro/settings/mcp.json - Conexão do servidor MCP
    • .kiro/steering/lean-ctx.md - Arquivo de steering que instrui o Kiro a preferir mcp_lean_ctx_ctx_read em vez de readFile, etc.
  4. Reinicie o Kiro para ativar.

Importante: O arquivo de steering (.kiro/steering/lean-ctx.md) é por projeto. Sem ele, o Kiro usará suas ferramentas nativas por padrão e ignorará o servidor MCP para leituras e buscas.

Verdent

Verdent supports MCP servers via configuration or CLI.

  1. Open Verdent settings or navigate to the MCP section.
  2. Run the init command:
    lean-ctx init --agent verdent
  3. Or manually create the MCP config:
    {
      "mcpServers": {
        "lean-ctx": {
          "command": "lean-ctx"
        }
      }
    }
  4. Restart Verdent to activate.

Note: Verdent's MCP support may require a recent version. Update Verdent if tools don't appear.

Other MCP-compatible tools

Any tool that supports the Model Context Protocol can use lean-ctx. The standard MCP config format is:

{
  "mcpServers": {
    "lean-ctx": {
      "command": "lean-ctx"
    }
  }
}

Key points:

  • The command must point to the lean-ctx binary (use full path if not in PATH).
  • No args or env are required - lean-ctx auto-configures.
  • The binary communicates via stdio (standard MCP transport).
  • After adding the config, restart your tool and verify lean-ctx tools appear.

Monitorar Economias

# Terminal dashboard (colors, bars, sparklines)
lean-ctx gain

# Web dashboard with charts
lean-ctx dashboard

# Find uncompressed commands in shell history
lean-ctx discover

# Run a real benchmark on your project
lean-ctx benchmark run

Hooks de Agente & Integração com Editor

Configure o lean-ctx para o seu agente de IA ou editor específico. O comando init configura a configuração MCP, hooks de shell e verifica se tudo funciona. Use doctor para diagnosticar e corrigir problemas automaticamente.

# Configure a specific AI tool (mode auto-detected; override with --mode)
lean-ctx init --agent cursor
lean-ctx init --agent claude
lean-ctx init --agent codex
lean-ctx init --agent gemini
lean-ctx init --agent hermes
lean-ctx init --agent pi            # or: pi install npm:pi-lean-ctx
lean-ctx init --agent qoder
lean-ctx init --agent qoderwork

# Force MCP tools if you prefer ctx_* calls
lean-ctx init --agent cursor --mode mcp

# Run diagnostics and auto-fix issues
lean-ctx doctor --fix

# Check current status (MCP, shell, editors)
lean-ctx status --json

Atualização

The fastest way to update lean-ctx:

lean-ctx update

This auto-detects your installation method, downloads the latest version, and replaces the binary.

You can also update manually using the original installation method:

MethodCommand
Homebrewbrew update && brew upgrade lean-ctx
Cargocargo install lean-ctx
npmnpm update -g lean-ctx-bin
AURyay -Syu lean-ctx
Pipi install npm:pi-lean-ctx
install.shRe-run curl -fsSL https://leanctx.com/install.sh | sh
BinaryDownload latest from GitHub Releases

After updating, re-run lean-ctx setup to ensure shell hooks and editor configs are up to date:

lean-ctx setup           # re-configures shell + editors
source ~/.zshrc          # restart shell

Desinstalação

To fully remove lean-ctx from your system:

lean-ctx uninstall

This removes:

  • Shell hook entries from ~/.zshrc, ~/.bashrc, ~/.config/fish/config.fish, and PowerShell profiles
  • Agent rules files (CLAUDE.md, .cursorrules, etc.)
  • Cache and config files in ~/.lean-ctx/

Then remove the binary itself:

Installed viaRemove command
Cargocargo uninstall lean-ctx
Homebrewbrew uninstall lean-ctx
AURyay -R lean-ctx
Pipi uninstall npm:pi-lean-ctx
Manual binaryrm $(which lean-ctx)

Restart your terminal and AI coding tool to complete the uninstallation.

Regras de Agente

Agent rules tell your AI coding tool to prefer lean-ctx MCP tools (ctx_read, ctx_shell, ctx_search, ctx_tree) over native file reads, shell commands, and search. Run lean-ctx init --agent <name> to install them automatically.

Como funciona

  • lean-ctx init --agent <name> writes a rules/instructions file to the agent's expected location.
  • The rules file teaches the AI to use ctx_read, ctx_shell, ctx_search, and ctx_tree instead of native equivalents.
  • This is optional - lean-ctx works without agent rules, but performance improves when the AI actively uses lean-ctx tools.
  • The rules are idempotent - running init again updates them without duplicating content.

O que é injetado

As regras instruem o agente de IA a usar as ferramentas MCP do lean-ctx em vez dos equivalentes nativos:

Instead ofUseWhy
Read / catctx_readCached, 10 read modes, re-reads cost ~13 tokens
Shell / bashctx_shellPattern compression for git, npm, cargo, docker output
Grep / searchctx_searchCompact, token-efficient results
ls / findctx_treeCompact directory maps with file counts

Note: Write, StrReplace, Delete, and Glob have no lean-ctx replacement - the rules tell the AI to keep using native tools for those.

Where are rules installed?

AI ToolRules File
Claude Code~/.claude/CLAUDE.md
Codex CLI~/.codex/instructions.md
Cursor~/.cursor/rules/lean-ctx.mdc
Windsurf~/.codeium/windsurf/rules/lean-ctx.md
Gemini CLI~/.gemini/GEMINI.md
VS Code / Copilot.github/copilot-instructions.md
Zed~/.config/zed/rules/lean-ctx.md
OpenCode~/.config/opencode/rules/lean-ctx.md
Pipi-lean-ctx package (built-in via pi.dev)
Qoder~/.qoder/settings.json (PreToolUse hooks)

Manual rules (fallback)

If your AI tool doesn't support agent rules, you can paste these instructions into the system prompt or a rules file:

# lean-ctx - Context Engineering Layer

Default (CLI-first):
- Use lean-ctx CLI commands for reads/search:
  - lean-ctx read <path> [-m mode]
  - lean-ctx grep <pattern> <path>
  - lean-ctx ls <path>
- Use lean-ctx -c "<cmd>" for compressed shell output

If you're running in MCP/Hybrid mode:
- Prefer ctx_* tools instead of native equivalents:
  - ctx_read instead of Read/cat for file reads
  - ctx_shell instead of Shell/bash for commands
  - ctx_search instead of Grep/search for code search
  - ctx_tree instead of ls/find for directory listing

Keep using native tools for: Write, StrReplace, Delete, Glob (no lean-ctx replacement).
Do NOT fall back to native tools for reading/shell/search/tree when a lean-ctx path is available.

Cursor users: Save this as .cursor/rules/lean-ctx.mdc in your project root for project-level rules, or ~/.cursor/rules/lean-ctx.mdc for global rules.

Solução de Problemas

lean-ctx: command not found

O binário não está no seu PATH. Verifique onde foi instalado:

# Cargo installs here:
ls ~/.cargo/bin/lean-ctx

# Homebrew installs here (macOS):
ls /opt/homebrew/bin/lean-ctx

# Manual installs - wherever you placed it:
ls /usr/local/bin/lean-ctx

Adicione o diretório correto ao seu PATH no perfil do shell.

AI isn't using lean-ctx tools

If the AI keeps using native Read/Shell instead of ctx_read/ctx_shell:

  • Run lean-ctx init --agent <name> to install agent rules
  • Restart the AI tool completely (not just reload)
  • Check that the MCP server is connected (look for lean-ctx in the tool's MCP panel)
  • Try prompting explicitly: "use ctx_read to read this file"

No lean-ctx tools appearing

  • Verify the binary path is correct in your MCP config
  • Run lean-ctx doctor to check for issues
  • Check the AI tool's MCP logs for connection errors
  • Try using the full absolute path to lean-ctx in the config

Shell hook causes hangs

If commands hang after installing the shell hook, set the LEAN_CTX_ACTIVE environment variable to bypass compression for specific commands:

LEAN_CTX_ACTIVE=1 cargo test

This disables lean-ctx compression for that command. Useful for CI/CD scripts and long-running processes.

macOS Gatekeeper blocks lean-ctx

xattr -d com.apple.quarantine $(which lean-ctx)

Windows: PowerShell vs cmd.exe

lean-ctx prioritizes PowerShell on Windows. If you experience issues with cmd.exe, set the LEAN_CTX_SHELL environment variable to force PowerShell: $env:LEAN_CTX_SHELL = "powershell"

Próximos Passos