devmap_overview
Project overview
Entry point for understanding the project: framework, stats, entry points, most critical files, detected features, flows and route counts. Call this first.
Takes no parameters.

io.github.itsflaidPublished by GitHub account itsflaidv0.9.0Updated Nov 7, 2026
Query a codebase map (routes, features, flows, impact) built by static analysis.
DevMap serves a precomputed static-analysis map of a codebase, letting an assistant query features, routes, flows, dependencies and change impact.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
[npm version] [license] [node]
Analyze once. Reuse context everywhere. A CLI that maps your codebase for developers and AI agents: entry points, critical files, features and routes.
Documentation · Website · GitHub
Every new AI chat about your code starts from zero — you re-explain the same codebase every time. DevMap fixes that.
It's a CLI that combines static analysis with optional AI
interpretation to build a structured, reusable understanding layer
of your project — once. That layer (.devmap/index.json, feature
maps, DEVMAP.md) is what you and any AI agent read afterward,
instead of re-scanning or re-pasting the whole repo. Full repo
source stays local — nothing gets sent wholesale to the AI model.
Or run without a global install:
Static analysis still works when AI is not configured.
Run these commands from the root of the project you want to understand:
devmap init selects a provider, validates its key, stores configuration locally, prepares
.devmap/, generates DEVMAP.md, and integrates with AGENTS.md safely.
Choose Groq, OpenRouter, or a custom OpenAI-compatible endpoint with the arrow keys during:
Groq keys are available at https://console.groq.com/keys. OpenRouter keys are available at https://openrouter.ai/keys.
For custom endpoints, DevMap asks for the base URL (prefilled with
http://localhost:20128/v1) and lists the models your server exposes, so any
OpenAI-compatible self-hosted gateway works out of the box.
For OpenRouter, DevMap prompts:
Press Enter to use the free router, or type any free or paid OpenRouter model ID. The selected model is saved and used as the primary choice.
For non-interactive Groq setup:
On PowerShell:
For non-interactive OpenRouter setup:
The key is stored locally in ~/.devmap/config.json. Requests go directly from
your machine to the selected provider. DevMap does not send the key to a
DevMap-owned server.
Groq and OpenRouter use the model selected during init. Change either provider's model with:
devmap mcp runs DevMap as a Model Context Protocol
server over stdio. An AI agent asks the project map questions with tool calls and
gets structured JSON back, instead of reading a whole context file up front.
Other clients launch the same command (npx -y @flaid/devmap mcp) as a stdio server:
Tools: devmap_overview, devmap_map, devmap_flow, devmap_routes,
devmap_impact, devmap_find, devmap_analyze and, only with --allow-ai,
devmap_explain.
The server is read-only and static by default: no AI provider is contacted unless
you start it with --allow-ai, and it only writes inside .devmap/ when the agent
calls devmap_analyze or you start it with --auto-refresh. Every answer reports
whether the snapshot is stale. See the
MCP guide for client
setup and tool inputs.
DevMap generates:
.devmap/index.json for lightweight AI-agent navigation.devmap/features/*.json for focused feature maps and source priority.devmap/snapshot.json for the full structured project analysis archiveDEVMAP.md for human and AI-agent usage guidanceAGENTS.md only after confirmation when the file
already existsExisting AGENTS.md and DEVMAP.md files are never overwritten.
Read .devmap/index.json first, open the relevant feature map, and inspect its
sourcePriority files. Use .devmap/snapshot.json only when the lightweight
navigation layer is insufficient.
Use --json for scripts, editors, CI, or AI agents:
JSON mode writes one parseable JSON document to stdout without ANSI colors, terminal decoration, or streamed partial output.
Detection covers the full list above; Next.js and Express receive the deepest analysis. Multi-package workspaces are classified per project type, so a monorepo containing a CLI and a web app is reported as both.
.env files and common generated directories are ignored.MIT
Source: packages/cli/README.md at commit 2c9a5e8
Project overview
Entry point for understanding the project: framework, stats, entry points, most critical files, detected features, flows and route counts. Call this first.
Takes no parameters.
Dependency map
Dependency map for the whole project (omit target), one feature (feature name) or one file (project-relative path): what it imports, what imports it, and related files. Use it to find where to look before reading code.
depthtargetincludeMermaidTrace a flow
Trace how a feature or API request works end to end (ordered steps with file paths). Omit target to list the curated top flows. Static analysis only, no AI.
alltargetList routes
List detected page and API routes with their handler file and HTTP methods. Filter by kind, path prefix or method.
kindlimitmethodprefixChange impact
What is affected if a file changes: direct and transitive dependents (follow imports up to `depth` hops), affected features, critical dependents, areas likely impacted, and what it imports. Call this before editing a shared file.
filerequireddepthlimitFind code
Locate features, files and routes by keyword using DevMap's index (paths, exported symbols, function names, search terms, purposes). Faster and more precise than grepping the whole repo for a concept.
limitqueryrequiredRefresh the project map
Re-analyze the project and refresh the DevMap snapshot (writes only inside .devmap/). Call it when a result reports snapshot.stale = true, or when no snapshot exists. Returns status "unchanged" without re-analyzing if no file changed (pass fresh: true to force a full rebuild). Static analysis only: no AI is used, so AI-derived data (domain, architecture) is not regenerated and aiDataDropped is reported when it is lost. If it takes longer than timeoutSeconds it keeps running in the background and status is "running"; call again to wait for it.
freshtimeoutSeconds90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
npm install --global @flaid/devmapnpx @flaid/devmap --helpdevmap initdevmap analyzedevmap onboardingdevmap doctordevmap initOpenRouter model [openrouter/free]:GROQ_API_KEY="your-key" devmap init$env:GROQ_API_KEY="your-key"devmap initRemove-Item Env:GROQ_API_KEYOPENROUTER_API_KEY="your-key" devmap initdevmap initdevmap analyzedevmap analyze --freshdevmap map # full project mapdevmap map <feature-or-file> # scoped to one feature or filedevmap flow # curated top flowsdevmap flow <feature-or-route>devmap explain <target> # file, feature, or functiondevmap onboarding --writedevmap onboarding --write --language iddevmap doctordevmap config model autodevmap mcp # run as an MCP serverdevmap config model <model-id>devmap config model autodevmap analyzeclaude mcp add devmap -- npx -y @flaid/devmap mcp{ "mcpServers": { "devmap": { "command": "npx", "args": ["-y", "@flaid/devmap", "mcp"] } }}devmap analyze --jsondevmap onboarding --jsondevmap doctor --json