GrapeRoot CLI

Selects code context for a coding agent from a repository graph, taking previous file reads and edits into account

  • 1,048 ★ on the repository
  • Last commit
  • Apache-2.0
CLI

Extended access

Why this level

  • Installation changes project MCP settings, instructions and hooks; the index and read history remain on disk.
  • Launcher updates and crash reporting are enabled by default.
  • Selected code reaches the model provider when the connected agent uses a cloud service.
All reasons and checks

kunal12203/graperoot

Install

Manual install

curl -sSL https://raw.githubusercontent.com/kunal12203/Codex-CLI-Compact/main/install.sh | bash

The author’s macOS/Linux installer. Inspect it before running and open a new terminal afterward.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Installation changes project MCP settings, instructions and hooks; the index and read history remain on disk.
  • Launcher updates and crash reporting are enabled by default.
  • Selected code reaches the model provider when the connected agent uses a cloud service.

This is third-party code. Review the repository files before installing.

What it does

GrapeRoot launches a coding agent with project context. It scans the repository, links files to symbols and retrieves code passages before each prompt. The agent receives those passages alongside your task. GrapeRoot accounts for files the agent has already read or edited. When more context is needed, the agent can request neighboring graph nodes through MCP. Claude Code uses `dgc`, while Codex uses `dg`; both accept a project path. You set limits for a single file read and the total amount read per turn. This caps the text that navigation adds to a prompt. The agent can open additional files when needed.

Who it is for. For developers who run long coding-agent sessions and repeatedly need to explain relationships inside a large project.

Good fit when

  • An agent starts each task by searching for the same definitions and imports
  • Analysis of an unfamiliar project will span several sessions
  • A module change requires context from related parts of the codebase
  • A large project’s context exceeds the allocated reading budget

Not a fit when

  • You want to inspect or modify the graph engine’s own source code
  • The task concerns one small file and does not need repository indexing
  • You only need manual symbol lookup through an existing language server

Example request

Launch Claude Code through GrapeRoot for this project and retrieve context for changing user-permission checks.

Limitations

Python 3.10 or later, Node.js 18 or later and an agent with model access are required. The installer adds dependencies and changes project MCP settings, instructions and hooks; inspect the generated files before working. Launcher updates and crash reports are enabled by default; disable them before using private projects if needed. The index stays local, but selected code reaches the provider when the agent uses a cloud model.

How to disable. Return to your agent’s normal launcher. Remove the added `dual-graph` connection and related hooks after reviewing project settings. The installation and index live in `~/.dual-graph/` and the project’s `.dual-graph/`; preserve useful context before deleting them.

FAQ

How do I install GrapeRoot?

On macOS or Linux, use the installation command below after reviewing its script, then open a new terminal. Windows has PowerShell and Scoop installation routes.

How do I launch Claude Code or Codex with GrapeRoot?

Use `dgc /path/to/project` for Claude Code or `dg /path/to/project` for Codex. Substitute the actual directory. GrapeRoot prepares the graph and starts the MCP server before launching the agent.

Can I choose another client?

Yes. `graperoot . --cursor` selects Cursor; Gemini CLI, OpenCode and GitHub Copilot are also supported. The dot denotes the current project.

How do I disable telemetry and automatic updates?

Run `graperoot --no-telemetry` and `graperoot --no-auto-update`. These controls disable crash reporting and automatic launcher replacement.

How do I limit how much code is read?

Set `DG_HARD_MAX_READ_CHARS` for a single file and `DG_TURN_READ_BUDGET_CHARS` for a turn. These are character limits; token usage also depends on the model, caching and additional reads.

Is the graph engine open source?

No. Launcher scripts use Apache-2.0; the graperoot engine is proprietary and has separate terms.

Discussion

No questions or reviews yet.

CLI tools

A code-intelligence engine for agents: builds a project graph and serves symbol lookup, call chains and blast radius, saving context

MCP serverExtended access2.1KRepository stars

A local code graph and context toolkit for agents: entities, Git relations and recorded mistakes served via CLI, hooks and MCP

MCP serverExtended access143Repository stars

Local code graph for agents: an MCP server returns entry points, symbol links and change impact in one call

MCP serverExtended access77.5KRepository stars

A CLI and MCP server that build a code graph of a repository and answer an agent with a ranked, repeatable set of symbols.

CLIExtended access180Repository stars
Editors’ pick

Indexes a codebase into a knowledge graph and gives the agent call chains, change blast radius and code search over MCP

MCP serverExtended access48.5KRepository stars

README in short

Inside the project’s `.dual-graph/` directory, `info_graph.json` stores the code graph and `chat_action_graph.json` stores read and edit history. `context-store.json` keeps decisions and tasks across sessions.

README badge

Report a problem