Codebase Knowledge Graph Q&A
Egonex-AI/Understand-Anything
Answers questions about a codebase by searching a prebuilt knowledge graph of its files, functions, classes and dependencies, not by rereading every source file.
Integration guide for Morph's WarpGrep (fast agentic code search) and Fast Apply (10,500 tok/s code editing).
$ npx skills add letta-ai/skills --skill morph-warpgrep -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install letta-ai/skills morph-warpgrep --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/letta-ai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/tools/morph-warpgrep .claude/skills/morph-warpgrep && 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 "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .claude/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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/letta-ai/skills/tree/main/tools/morph-warpgrepType 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 letta-ai/skills --skill morph-warpgrep -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install letta-ai/skills morph-warpgrep --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/tools/morph-warpgrep .agents/skills/morph-warpgrep && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .agents/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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 letta-ai/skills --skill morph-warpgrep -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install letta-ai/skills morph-warpgrep --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/tools/morph-warpgrep .cursor/skills/morph-warpgrep && 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 "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .cursor/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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/letta-ai/skills.git --path tools/morph-warpgrep--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 letta-ai/skills --skill morph-warpgrep -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install letta-ai/skills morph-warpgrep --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/tools/morph-warpgrep .gemini/skills/morph-warpgrep && 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 "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .gemini/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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 letta-ai/skills morph-warpgrepInstalls 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 letta-ai/skills --skill morph-warpgrep -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/tools/morph-warpgrep .github/skills/morph-warpgrep && 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 "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .github/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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 letta-ai/skills --skill morph-warpgrep -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install letta-ai/skills morph-warpgrep --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/tools/morph-warpgrep .opencode/skills/morph-warpgrep && 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 "morph-warpgrep" agent skill from https://github.com/letta-ai/skills/tree/main/tools/morph-warpgrep into .opencode/skills/morph-warpgrep/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "morph-warpgrep", 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.
morph-warpgrepIntegration guide for Morph's WarpGrep (fast agentic code search) and Fast Apply (10,500 tok/s code editing).
Morph Warpgrep is an agent skill from letta-ai/skills. Integration guide for Morph's WarpGrep (fast agentic code search) and Fast Apply (10,500 tok/s code editing). Use when building coding agents that need fast, accurate code search or need to apply AI-generated edits to code efficiently. Particularly useful for large codebases, deep logic queries, bug tracing, and code path analysis.
Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including scripts (for example `scripts/test-warpgrep.ts`).
It sits in Development, covering Codebase onboarding. It works with Letta. The repository describes itself as: A shared repository for skills. Intended to be used with Letta Code, Claude Code, Codex CLI, and other agents that support skills. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 6785511. 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.
Ships 1 file in scripts/ (TypeScript), which the agent can run.
Shell commands in SKILL.md call:
bunnpmbrewaptrggitclaudecurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comapi.morphllm.comAlso links to:
morphllm.comdocs.morphllm.comdiscord.ggFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
MORPH_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Morph Warpgrep loads about 3.1k tokens when it runs. Until then it costs about 87 tokens; SKILL.md has 485 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 noted patterns worth knowing about, such as sudo or a known installer.
sudo apt install ripgrepsudo apt install ripgrep # Ubuntu/DebianAutomated 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); the scripts in this folder are not scanned.
The full file from letta-ai/skills at commit 6785511, republished under its MIT licence (© letta-ai). 485 words, ~3,078 tokens.
.claude/skills/morph-warpgrep/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Morph provides two tools that significantly improve coding agent performance:
export MORPH_API_KEY="your-api-key"bun add @morphllm/morphsdk
# or
npm install @morphllm/morphsdkripgrep is installed (required for local search):# macOS
brew install ripgrep
# Ubuntu/Debian
sudo apt install ripgrep
# Verify installation
rg --versionAfter setup, run the included test script on any local repository:
# Clone a test repo (or use any existing codebase)
git clone https://github.com/letta-ai/letta-code.git test-repo
# Install SDK
cd test-repo
bun add @morphllm/morphsdk
# Run test script
export MORPH_API_KEY="your-key"
bun ../scripts/test-warpgrep.ts .Expected output:
======================================================================
MORPH WARPGREP TEST
======================================================================
Repo: .
SDK: @morphllm/morphsdk
======================================================================
| Query | Result | Time | Files |
|------------------------------------|--------|--------|-------|
| Find the main entry point | ✅ | 5.2s | 2 |
| Find authentication logic | ✅ | 4.1s | 4 |
| Find where configuration is handled | ✅ | 3.8s | 3 |
| Find error handling patterns | ✅ | 4.5s | 5 |
======================================================================
Results: 4 passed, 0 failed
======================================================================grep/rg is free and fast enough)import { MorphClient } from '@morphllm/morphsdk';
const morph = new MorphClient({ apiKey: process.env.MORPH_API_KEY });
const result = await morph.warpGrep.execute({
query: 'Find authentication middleware',
repoRoot: '.'
});
if (result.success) {
for (const ctx of result.contexts) {
console.log(`File: ${ctx.file}`);
console.log(ctx.content);
}
} else {
console.error('Search failed');
}interface WarpGrepResult {
success: boolean;
contexts: Array<{
file: string; // File path relative to repo root
content: string; // File content with relevant code
}>;
summary?: string; // Human-readable summary
}import { MorphClient } from '@morphllm/morphsdk';
import Anthropic from '@anthropic-ai/sdk';
const morph = new MorphClient({ apiKey: process.env.MORPH_API_KEY });
const anthropic = new Anthropic();
// Define WarpGrep as a tool
const tools = [{
name: 'warpgrep_search',
description: 'Search codebase for relevant code. Use for finding implementations, tracing bugs, or understanding code flow.',
input_schema: {
type: 'object',
properties: {
query: { type: 'string', description: 'What to search for' }
},
required: ['query']
}
}];
// Handle tool calls
async function handleToolCall(name: string, input: { query: string }) {
if (name === 'warpgrep_search') {
const result = await morph.warpGrep.execute({
query: input.query,
repoRoot: process.cwd()
});
if (result.success) {
return result.contexts.map(c => `## ${c.file}\n${c.content}`).join('\n\n');
}
return 'No results found';
}
}Fast Apply merges AI-generated edits into existing code:
import { MorphClient } from '@morphllm/morphsdk';
const morph = new MorphClient({ apiKey: process.env.MORPH_API_KEY });
const result = await morph.fastApply.apply({
originalCode: `function divide(a, b) {
return a / b;
}`,
editSnippet: `function divide(a, b) {
if (b === 0) throw new Error("Division by zero");
return a / b;
}`
});
console.log(result.mergedCode);const response = await fetch('https://api.morphllm.com/v1/chat/completions', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.MORPH_API_KEY}`
},
body: JSON.stringify({
model: 'morph-v3-fast', // or 'morph-v3-large' for complex edits
messages: [{
role: 'user',
content: `<instruction>Add error handling</instruction>
<code>function divide(a, b) { return a / b; }</code>
<update>function divide(a, b) {
if (b === 0) throw new Error("Division by zero");
return a / b;
}</update>`
}],
temperature: 0
})
});
const data = await response.json();
const mergedCode = data.choices[0].message.content;Tested on the letta-code repository (~300 TypeScript files) using SDK v0.2.103:
| Query | Result | Time | Files Found |
|---|---|---|---|
| "Find authentication logic" | ✅ | 4.2s | src/auth/oauth.ts, src/auth/setup.ts, +2 |
| "Find the main CLI entry point" | ✅ | 5.8s | src/index.ts, src/cli/App.tsx |
| "Find where models are configured" | ✅ | 3.1s | src/agent/model.ts, src/models.json, +1 |
| "Find how memory blocks work" | ✅ | 3.9s | src/agent/memory.ts, src/agent/memoryFilesystem.ts, +1 |
| "Find the settings manager" | ✅ | 2.9s | src/settings-manager.ts, src/settings.ts |
5/5 tests passed
WarpGrep is an agentic search that runs up to 4 turns:
┌─────────────────────────────────────────────────────────────┐
│ Turn 1: Analyze query, map repo structure, initial search │
├─────────────────────────────────────────────────────────────┤
│ Turn 2-3: Refine search, read specific files │
├─────────────────────────────────────────────────────────────┤
│ Turn 4: Return all relevant code locations │
└─────────────────────────────────────────────────────────────┘The SDK handles the multi-turn conversation automatically, executing local tools:
| Tool | Description | Implementation |
|---|---|---|
grep | Regex search across files | Uses ripgrep (rg) |
read | Read file contents | Local filesystem |
list_dir | Show directory structure | Local filesystem |
┌──────────────────────────────────────────────────────────────┐
│ Your Code / Agent │
└──────────────────────────┬───────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────────────────────┐
│ @morphllm/morphsdk │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ 1. Build repo structure │ │
│ │ 2. Send query to Morph API │ │
│ │ 3. Execute local tools (grep, read, list_dir) │ │
│ │ 4. Multi-turn refinement │ │
│ │ 5. Return relevant code contexts │ │
│ └─────────────────────────────────────────────────────────┘ │
└──────────────────────────┬───────────────────────────────────┘
│
┌──────────────┴──────────────┐
▼ ▼
┌───────────────────────┐ ┌───────────────────────┐
│ Morph API │ │ Local Filesystem │
│ (morph-warp-grep-v1) │ │ (ripgrep, fs) │
└───────────────────────┘ └───────────────────────┘From Morph's SWE-bench evaluation with Claude 4.5 Opus:
| Metric | Without WarpGrep | With WarpGrep | Improvement |
|---|---|---|---|
| Input Tokens | 14K | 9K | 39% fewer |
| Agent Turns | 35.0 | 26.0 | 26% fewer |
| Tasks Solved | 74.4% | 81.9% | 10% more |
Source: Morph WarpGrep Benchmarks
import { MorphClient } from '@morphllm/morphsdk';
const morph = new MorphClient({ apiKey: process.env.MORPH_API_KEY });
// 1. Search for relevant code
const result = await morph.warpGrep.execute({
query: 'Where is the payment processing logic?',
repoRoot: '.'
});
// 2. Use found contexts to inform next steps
if (result.success) {
const relevantFiles = result.contexts.map(c => c.file);
console.log('Found relevant files:', relevantFiles);
// Now read/edit these specific files
}import { MorphClient } from '@morphllm/morphsdk';
const morph = new MorphClient({ apiKey: process.env.MORPH_API_KEY });
// 1. Find the code to modify
const search = await morph.warpGrep.execute({
query: 'Find the user validation function',
repoRoot: '.'
});
if (search.success && search.contexts.length > 0) {
const targetFile = search.contexts[0];
// 2. Apply an edit
const result = await morph.fastApply.apply({
originalCode: targetFile.content,
editSnippet: '// Add your modified version here'
});
console.log(result.mergedCode);
}For personal use with Claude Code, Cursor, or other MCP clients:
# Install MCP server
claude mcp add morph --scope user -e MORPH_API_KEY=YOUR_API_KEY --npx -y @morphllm/morphmcpThis adds a warpgrep_codebase_search tool to your MCP client.
# Install ripgrep
brew install ripgrep # macOS
sudo apt install ripgrep # Ubuntu/Debian
# Verify
rg --version# Verify API key works
curl -X POST https://api.morphllm.com/v1/chat/completions \
-H "Authorization: Bearer $MORPH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"morph-v3-fast","messages":[{"role":"user","content":"test"}]}'Ensure you're using the latest SDK:
bun add @morphllm/morphsdk@latest
# or
npm install @morphllm/morphsdk@latest© letta-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (scripts) in tools/morph-warpgrep of letta-ai/skills.
Open the folder on GitHubat commit 6785511
Morph Warpgrep 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 |
|---|---|---|---|---|---|---|
| Morph Warpgrep this skillletta-ai/skills | 149 | — | ~3.1k | Automated safety check: Notes | MIT | |
| Codebase Knowledge Graph Q&AEgonex-AI/Understand-Anything | 86k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Understand ExplainEgonex-AI/Understand-Anything | 86k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Project Onboarding Guide from Knowledge GraphEgonex-AI/Understand-Anything | 86k | — | ~1.2k | Automated safety check: Pass | MIT | |
| GitDiagram Repository Overviewahmedkhaleel2004/gitdiagram | 18k | — | ~427 | Automated safety check: Pass | MIT | |
| Deepwiki Rssopaco/deepwiki-rs | 3.1k | — | ~748 | Automated safety check: Pass | MIT |
Egonex-AI/Understand-Anything
Answers questions about a codebase by searching a prebuilt knowledge graph of its files, functions, classes and dependencies, not by rereading every source file.
Egonex-AI/Understand-Anything
Gives an in-depth explanation of one file, function or module by reading the project's knowledge graph and checking that the graph is still fresh.
Egonex-AI/Understand-Anything
Writes an onboarding guide for new team members from a project's existing knowledge graph, after checking that the graph still matches the current commit.
ahmedkhaleel2004/gitdiagram
Explains the architecture of a public GitHub repository through GitDiagram: how the code is organized, the main components with paths, and a Mermaid diagram.
sopaco/deepwiki-rs
AI-powered Rust documentation generation engine for comprehensive codebase analysis, C4 architecture diagrams, and automated technical documentation.
tirth8205/code-review-graph
Navigates a codebase through the code-review-graph MCP tools: architecture overview, symbol search, caller and callee tracing, flows and oversized functions.
letta-ai/skills
Build and maintain a persistent visual identity for your agent using Flux Kontext Pro.
letta-ai/skills
Fetch and summarize recent AI news from curated RSS feeds (Hugging Face, VentureBeat, The Verge, OpenAI, Anthropic, DeepMind, etc.) and YouTube channels (Yannic Kilcher, Two Minute Papers, AI…
letta-ai/skills
Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels.
letta-ai/skills
Configure LLM models and providers for Letta agents and servers.
letta-ai/skills
Migrates deprecated Letta Filesystem folders/files to MemFS using markdown document corpora, chunking, local lexical search, and QMD semantic search via the memfs-search skill.
letta-ai/skills
Semantic search over agent memory files. An agent skill from letta-ai/skills.
Works with
Categories
Integration guide for Morph's WarpGrep (fast agentic code search) and Fast Apply (10,500 tok/s code editing). Morph Warpgrep is an agent skill from letta-ai/skills. Integration guide for Morph's WarpGrep (fast agentic code search) and Fast Apply (10,500 tok/s code editing).
Morph Warpgrep fits situations like: building coding agents that need fast; accurate code search; need to apply AI-generated edits to code efficiently.
Run `npx skills add letta-ai/skills --skill morph-warpgrep -a claude-code`. Or copy the skill folder (tools/morph-warpgrep in letta-ai/skills) into .claude/skills/morph-warpgrep in your project. Claude Code loads it when a task matches its description.
Run `npx skills add letta-ai/skills --skill morph-warpgrep -a codex`. Or copy the skill folder (tools/morph-warpgrep in letta-ai/skills) into .agents/skills/morph-warpgrep 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 letta-ai/skills --skill morph-warpgrep -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/morph-warpgrep, .gemini/skills/morph-warpgrep, .github/skills/morph-warpgrep and .opencode/skills/morph-warpgrep in your project.
Going by SKILL.md and its folder, Morph Warpgrep needs TypeScript for the scripts in its folder, the command-line tools its instructions call (bun, npm, brew, apt, rg and git) and credentials named MORPH_API_KEY. Our summary lists: Node.js; A credential in MORPH_API_KEY.
SKILL.md names 5 domains. In commands or code: github.com and api.morphllm.com; the agent is likely to contact these when it follows the instructions. As links in the text: morphllm.com, docs.morphllm.com and discord.gg. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Morph Warpgrep is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.1k tokens (SKILL.md is roughly 12k 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 Morph Warpgrep: Codebase Knowledge Graph Q&A (Egonex-AI/Understand-Anything, 86k stars), Understand Explain (Egonex-AI/Understand-Anything, 86k stars), Project Onboarding Guide from Knowledge Graph (Egonex-AI/Understand-Anything, 86k stars) and GitDiagram Repository Overview (ahmedkhaleel2004/gitdiagram, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
letta-ai (a GitHub organization) maintains it in letta-ai/skills, which has 149 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 1, 2026.
Source: letta-ai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.