文档

入门指南

安装 LeanCTX 并在 5 分钟内开始节省 token。macOS、Linux 和 Windows 的分步指南。

LeanCTX 通过一个 Rust 二进制文件将 LLM 的 token 消耗降低高达 99%,提供:包含 95 多个 CLI 压缩模式的 Shell 钩子、包含 58 个工具用于缓存读取和会话智能的 MCP 服务器,以及用于结构化代码理解的持久化项目图谱。安装一次,每次文件读取、shell 命令和代码导航都变得更高效。

提示词生成器

选择您的平台和 AI 工具。生成的提示词可粘贴到任何 AI 编码助手中--它将自动引导完成完整的安装和配置。

生成的提示词
 

3 步即可开始

3 条命令--仅此而已
# 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

lean-ctx setup 自动检测并配置:CursorClaude CodeWindsurfVS Code / CopilotCodex CLIGemini CLIZedAntigravityOpenCodeCrushPi。运行 lean-ctx doctor 验证一切正常。

各平台详细安装说明

步骤 1:安装二进制文件

通用安装器(任意平台)

无需任何前置条件即可安装 lean-ctx 的最快方式:

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)

通过 npm 安装预构建的二进制文件--无需 Rust 工具链:

npm install -g lean-ctx-bin

postinstall 阶段自动下载适合您平台的正确二进制文件,并进行 SHA256 校验。支持 macOS(Intel + Apple Silicon)、Linux (x86_64) 和 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.

从源码构建(任意平台)

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

二进制文件位于 target/release/lean-ctx(Windows 上为 lean-ctx.exe)。将其复制到 PATH 中的目录。

步骤 2:设置

安装二进制文件后,运行 lean-ctx setup 自动配置所有内容:

lean-ctx setup

这条命令会:

  • 安装 23 个 shell 别名(git、npm、cargo、docker、kubectl、curl 等)
  • 自动检测已安装的编辑器(Cursor、Claude Code、Windsurf、VS Code/Copilot、Codex CLI、Gemini CLI、Zed、Antigravity、OpenCode、Crush)
  • 为每个检测到的编辑器创建 MCP 配置文件
  • 将代理规则注入每个检测到的工具的全局配置,指示 AI 使用 lean-ctx 的 MCP 工具(ctx_readctx_shellctx_searchctx_tree)替代原生工具
  • 运行 lean-ctx doctor 验证所有配置

重要:设置后请重启您的 IDE!

需要重新建立 MCP 连接才能使新工具和代理规则生效。完全关闭并重新打开您的 IDE(Cmd+Q / Ctrl+Q,然后重新打开)。重启后,代理规则也会在每次 IDE 启动时自动更新--未来更新后无需重新运行 lean-ctx setup

设置完成后,重启您的 shell:

Shell重启命令
Zsh (macOS default)source ~/.zshrc
Bashsource ~/.bashrc
Fishsource ~/.config/fish/config.fish
PowerShellClose and reopen PowerShell

然后完全重启您的编辑器。

手动替代方案

如果您只想安装 shell 别名而不自动检测编辑器:

lean-ctx init --global

然后按照下方步骤 3 的说明手动配置您的编辑器。

基于 eval 的初始化(推荐)

作为 lean-ctx init --global 的替代方案,您可以使用 eval 模式--与 starshipzoxideatuin 使用的方法相同。钩子代码由当前安装的二进制文件输出到 stdout,因此在升级后始终保持最新:

# 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

优势:eval 方法在 shell 启动时从已安装的二进制文件生成钩子,因此在 lean-ctx update 后钩子永远不会过时。升级后无需再次运行 lean-ctx setup


Docker 安装

要在 Docker 容器中使用 lean-ctx(例如配合 Claude Code、Codex 或其他 AI 代理),请使用静态链接的 musl 二进制文件,并设置 BASH_ENV 以便在非交互式 shell 中加载 shell 钩子。

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

原理说明

步骤用途
musl binary 静态链接 - 无需安装 gcc-libsglibc 即可在任何 Linux 发行版上运行
lean-ctx init --global 将 shell 钩子安装到 ~/.bashrc(非交互式,与 lean-ctx setup 不同)
lean-ctx init --agent claude 将 MCP 服务器配置写入 ~/.claude.json。将 claude 替换为你的代理:cursorcodexgemini 等。
BASH_ENV 通用非交互式 shell(bash -c)加载此文件。大多数 ~/.bashrc 在非交互模式下提前退出 - env.sh 没有此保护。
CLAUDE_ENV_FILE Claude Code 在每次执行命令前加载此文件。这是 官方推荐的为 Claude Code 配置 shell 环境的方式。

常见问题

错误原因解决方案
command not found: _lc 未设置 BASH_ENV - shell 钩子未加载添加 ENV BASH_ENV="/root/.lean-ctx/env.sh"(非 root 用户需调整路径)
lean-ctx setup hangs Docker 中无 stdin 的交互式提示改用 lean-ctx init --global
Binary not found / exec format error 架构错误或使用了不带 glibc 的 gnu 二进制文件使用 musl 压缩包用于精简容器

步骤 3:验证

  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.
手动编辑器配置

仅当 lean-ctx setup 不起作用时

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 需要 MCP 配置一个 steering 文件才能使用 lean-ctx 工具代替原生等效工具。

  1. 运行 lean-ctx setup--Kiro 会被自动检测,MCP 配置和 steering 文件都会被创建。
  2. 或使用专用命令(创建两个文件):
    lean-ctx init --agent kiro
  3. 这将创建两个文件:
    • ~/.kiro/settings/mcp.json - MCP 服务器连接
    • .kiro/steering/lean-ctx.md - Steering 文件,指示 Kiro 优先使用 mcp_lean_ctx_ctx_read 而非 readFile 等。
  4. 重启 Kiro 以激活。

重要:Steering 文件(.kiro/steering/lean-ctx.md)是按项目配置的。没有它,Kiro 将默认使用其原生工具,并忽略 MCP 服务器的读取和搜索功能。

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.

监控节省量

# 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

Agent Hooks 与编辑器集成

为您的特定 AI 代理或编辑器配置 lean-ctx。init 命令设置 MCP 配置、shell hooks,并验证一切正常工作。使用 doctor 诊断并自动修复问题。

# 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

更新

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

卸载

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.

代理规则

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.

工作原理

  • 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.

注入的内容

这些规则指示 AI 代理使用 lean-ctx MCP 工具替代原生等效工具:

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.

故障排除

lean-ctx: command not found

二进制文件不在您的 PATH 中。检查安装位置:

# 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

将正确的目录添加到 shell 配置文件中的 PATH。

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"

后续步骤