tilth Code Reading CLI
jahala/tilth
Replaces grep, cat, find and ls with the tilth CLI, which returns AST-aware outlines, definitions, usages and callers across many languages in one call.
Teaches the agent to detect whether the codegraph symbol graph is available and use it for callers, callees and impact questions, without installing or writing anything for it.
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install itechmeat/open-second-brain codegraph-partner --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/codegraph-partner .claude/skills/codegraph-partner && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .claude/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partnerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install itechmeat/open-second-brain codegraph-partner --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/codegraph-partner .agents/skills/codegraph-partner && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .agents/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install itechmeat/open-second-brain codegraph-partner --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/codegraph-partner .cursor/skills/codegraph-partner && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .cursor/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/itechmeat/open-second-brain.git --path skills/codegraph-partner--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install itechmeat/open-second-brain codegraph-partner --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/codegraph-partner .gemini/skills/codegraph-partner && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .gemini/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install itechmeat/open-second-brain codegraph-partnerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/codegraph-partner .github/skills/codegraph-partner && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .github/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add itechmeat/open-second-brain --skill codegraph-partner -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install itechmeat/open-second-brain codegraph-partner --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/itechmeat/open-second-brain.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/codegraph-partner .opencode/skills/codegraph-partner && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "codegraph-partner" agent skill from https://github.com/itechmeat/open-second-brain/tree/main/skills/codegraph-partner into .opencode/skills/codegraph-partner/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "codegraph-partner", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
codegraph-partnerTeaches the agent to detect whether the codegraph symbol graph is available and use it for callers, callees and impact questions, without installing or writing anything for it.
The skill splits responsibilities between two tools. The vault side owns Markdown prose, preferences and audit records, while the codegraph CLI and its MCP server own the code-symbol graph of a repository, meaning callers, callees, impact radius and the syntax tree. The agent learns to detect codegraph in the current scope and then use it, recommend it or stay quiet about it, depending on what is nearby. It never installs, initializes or writes data for codegraph, which stays in your hands or in codegraph's own installer.
Detection runs in order: whether the CLI is on the path, whether the working directory is a code project, shown by a `.git/` folder plus a manifest such as `package.json`, `pyproject.toml`, `Cargo.toml` or `go.mod`, then the sibling folders next to the vault if it is not, the presence of a `.codegraph/` index folder, and a `codegraph status -j` call that reports whether the index is initialized. When several projects are found, each is checked separately, and if the installed CLI cannot take a project path the report covers only the first one and says so. The excerpt is cut off there.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 0f0c9a7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Codegraph Detection Partner loads about 1.6k tokens when it runs. Until then it costs about 76 tokens; SKILL.md has 889 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from itechmeat/open-second-brain at commit 0f0c9a7, republished under its MIT licence (© itechmeat). 889 words, ~1,616 tokens.
.claude/skills/codegraph-partner/SKILL.md (or your agent's skills folder).OSB and codegraph are complementary, not overlapping. OSB owns the vault (Markdown prose, the Brain layer, preferences, paid-action audit). The codegraph CLI and its MCP server own the code-symbol graph of a repository - callers, callees, impact radius, AST. This skill teaches the agent to detect codegraph in the current scope and to use, recommend, or stay quiet about it, depending on what is actually nearby.
This skill never installs, initializes, or writes data for codegraph itself. Those actions stay in the user's hands or in codegraph's own installer.
Run these checks in order. Stop at the first state that matches.
which codegraph (or, in Bun runtimes, Bun.which("codegraph"))..git/
directory plus at least one of package.json, pyproject.toml,
Cargo.toml, go.mod, tsconfig.json, Gemfile, composer.json,
build.gradle, pom.xml..codegraph/ directory inside the code project root.codegraph status -j <project_path> returns
{"initialized": true, ...}. The same command on an uninitialized
project returns {"initialized": false, ...} rather than failing.The structured way to ask is o2b doctor. When OSB is installed in the
workspace, the doctor report carries a code_graph line that summarises
the detection result with node count and file count.
Multi-project workspaces: when more than one code project is discovered,
the code_graph line covers EVERY project. Status is threaded per project
by passing each project's path to codegraph status, and the line
aggregates one entry per project (N code projects: followed by a bullet
per project naming its path and index state/health). This per-query
project-path threading is feature-detected: if the installed codegraph CLI
does not document a positional [path] argument for status, OSB cannot
trust per-project queries, so it degrades to reporting the first project
only and appends an explicit note: codegraph CLI has no per-query project_path support - reported 1 of N discovered projects only. A
single-project workspace is unaffected and its line is unchanged.
| State | Agent behaviour |
|---|---|
| ok (CLI present, indexed) | Use codegraph for AST and graph queries. No install talk. |
not_indexed (CLI present, no .codegraph/ or initialized: false) | Offer one line: "run codegraph init <path> to index this repo". Do not run it yourself unless the user asks. |
| missing + code project | Argued recommendation (Step 5). |
| missing + no code project in scope | Stay quiet. |
error (CLI present, status -j errors with a lock or schema issue) | Suggest codegraph unlock <path> or a rebuild, but do not run it. |
In a multi-project workspace the aggregate code_graph line can mix these
states across projects (one indexed, one not); read each bullet and act per
project. When the line ends with the note: ... project_path support marker,
only the first project was checked - query the others explicitly with
codegraph status <their_path> before trusting a single-project verdict.
codegraph initWhenever you run codegraph init in any repository on the user's
behalf, immediately read that repo's .gitignore and append a
.codegraph/ line if one is not already present. The append must be
atomic, must preserve the existing trailing newline policy, and must
not touch any other line.
If the repo does not have a .gitignore, do not create one yourself.
Tell the user the file is missing and that they should decide whether
to add it.
This rule exists so the local codegraph index never lands in a commit.
Use this table to pick the right tool for each kind of question. Do not duplicate a codegraph answer by also running a grep; treat its output as authoritative.
| Question shape | Tool |
|---|---|
| Where is symbol X defined? | codegraph_search |
| Who calls function Y? | codegraph_callers |
| What does Y call? | codegraph_callees |
| What would break if I change Z? | codegraph_impact |
| Show Y's signature or body. | codegraph_node |
| Survey several related symbols at once. | codegraph_explore |
| What files exist under path P? | codegraph_files |
| Prose, page bodies, MOC content, daily notes. | brain_search |
| Confirmed preferences, taste rules. | brain_query |
| Free-text fallback when neither index helps. | Plain grep, last resort. |
Trigger only when both conditions hold: there is a code project in the
current scope, and codegraph is not on the user's PATH.
Show the user a short paragraph that uses real numbers from their project, with no emoji and no marketing voice. Template:
Found a code project at
<path>with N source files. Without an index, every structural question (callers, impact, "where is X") spawns a grep+read loop that burns several thousand tokens per answer. codegraph keeps a SQLite knowledge graph and serves the same question in sub-millisecond time. Install it withnpm i -g @colbymchenry/codegraph(other options: https://github.com/colbymchenry/codegraph#1-install-the-cli). After install:codegraph init <path>from inside the repo.
If the user says no, drop the topic for the rest of the session. Do not nag.
codegraph install, codegraph init, or codegraph index automatically..codegraph/codegraph.db.~/.claude.json, .cursor/rules/, or any other agent
config on behalf of codegraph.© itechmeat, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/codegraph-partner of itechmeat/open-second-brain.
Open the folder on GitHubat commit 0f0c9a7
Codegraph Detection Partner next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Codegraph Detection Partner this skillitechmeat/open-second-brain | 430 | — | ~1.6k | Automated safety check: Pass | MIT | |
| tilth Code Reading CLIjahala/tilth | 352 | — | ~1.1k | Automated safety check: Pass | MIT | |
| trace-mcp Code Navigationnikolai-vysotskyi/trace-mcp | 185 | — | ~1.6k | Automated safety check: Notes | MIT | |
| Smart Explore Code Searchthedotmack/claude-mem | 97k | — | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| Basemind Code ContextGoldziher/basemind | 106 | — | ~2.6k | Automated safety check: Pass | MIT | |
| Basemind Code SearchGoldziher/basemind | 106 | — | ~1.3k | Automated safety check: Pass | MIT |
jahala/tilth
Replaces grep, cat, find and ls with the tilth CLI, which returns AST-aware outlines, definitions, usages and callers across many languages in one call.
nikolai-vysotskyi/trace-mcp
Routes code exploration through trace-mcp's indexed dependency graph, using symbol search, outlines, call graphs and change-impact tools instead of Read, Grep and Glob.
thedotmack/claude-mem
Explores code structure with tree-sitter AST search tools, getting a ranked symbol map and file outlines before reading full source, to save tokens.
Goldziher/basemind
Answers structural questions about a repository, such as where a symbol is defined, what calls it and what changed recently, through the basemind MCP server.
Goldziher/basemind
Answers where code is defined, who calls it and what shape a file has from a pre-built index, returning paths and line numbers instead of file contents.
Helweg/open-codebase-index
Chooses the right retrieval tool for code questions: compact context for unfamiliar repos, direct lookup for known symbols, call graphs for relationships and grep for exhaustive matches.
itechmeat/open-second-brain
Sets up, evaluates or turns off Open Second Brain's optional decision-model feature, starting from the o2b decision-model check command and a provider route you choose.
itechmeat/open-second-brain
Walks through turning on semantic search in Open Second Brain: embedding key, sqlite-vec extension, first reindex and an optional periodic refresh, starting from o2b search check.
itechmeat/open-second-brain
Adds, renames, reviews and explains Brain schema tokens, aliases, prefixes and link types in Open Second Brain vaults, previewing each change before applying it.
itechmeat/open-second-brain
Lets an agent read, write and maintain its own memory in a Brain folder of an Obsidian-compatible vault, while keeping the user's own notes read-only.
Works with
Categories
Teaches the agent to detect whether the codegraph symbol graph is available and use it for callers, callees and impact questions, without installing or writing anything for it. The skill splits responsibilities between two tools. The vault side owns Markdown prose, preferences and audit records, while the codegraph CLI and its MCP server own the code-symbol graph of a repository, meaning callers, callees, impact radius and the syntax tree.
Codegraph Detection Partner fits situations like: asking who calls a function or what breaks if a symbol changes; finding where a symbol is defined in a repository; getting an architectural overview of a code repository; checking whether codegraph is installed and indexed for a project.
Run `npx skills add itechmeat/open-second-brain --skill codegraph-partner -a claude-code`. Or copy the skill folder (skills/codegraph-partner in itechmeat/open-second-brain) into .claude/skills/codegraph-partner in your project. Claude Code loads it when a task matches its description.
Run `npx skills add itechmeat/open-second-brain --skill codegraph-partner -a codex`. Or copy the skill folder (skills/codegraph-partner in itechmeat/open-second-brain) into .agents/skills/codegraph-partner in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add itechmeat/open-second-brain --skill codegraph-partner -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/codegraph-partner, .gemini/skills/codegraph-partner, .github/skills/codegraph-partner and .opencode/skills/codegraph-partner in your project.
Going by SKILL.md and its folder, Codegraph Detection Partner needs the command-line tools its instructions call (npm). Our summary lists: The codegraph CLI or its MCP server; A code repository with a .git folder.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Codegraph Detection Partner is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Codegraph Detection Partner: tilth Code Reading CLI (jahala/tilth, 352 stars), trace-mcp Code Navigation (nikolai-vysotskyi/trace-mcp, 185 stars), Smart Explore Code Search (thedotmack/claude-mem, 97k stars) and Basemind Code Context (Goldziher/basemind, 106 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
itechmeat (a GitHub user) maintains it in itechmeat/open-second-brain, which has 430 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 6, 2026.
Source: itechmeat/open-second-brain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.