AI coding tools
jorvel initcan scaffold ready-made config for the AI coding tools you use, so an assistant understands JORVEL's two-tier router, the shared-singleton federation boundary, and the CLI verbs from the first prompt — no cold start. It also wires a Model Context Protocol server that serves the live docs to any MCP client.
Choosing tools at init
In an interactive terminal, jorvel init asks which tools to generate support for (all pre-checked). Non-interactively it generates all of them. Drive it with flags:
jorvel init my-app # interactive checkbox — pick tools
jorvel init my-app --ai claude,cursor,mcp # only these
jorvel init my-app --no-ai # skip all AI config
jorvel init my-app --yes # non-interactive → all toolsValid --ai values: claude, codex, cursor, copilot, windsurf, gemini, mcp.
What each tool gets
| Tool | Files |
|---|---|
| Claude Code | CLAUDE.md + .claude/ (settings.json, skills/*.md, agents/*.md, README.md) |
| Codex / Aider / Continue | AGENTS.md (provider-neutral) |
| Cursor | .cursorrules + AGENTS.md |
| GitHub Copilot | .github/copilot-instructions.md |
| Windsurf | .windsurfrules + AGENTS.md |
| Gemini CLI | GEMINI.md + AGENTS.md |
| MCP (any client) | .mcp.json |
AGENTS.md is the shared base
AGENTS.md; their tool-specific file just points to it. Selecting any of them writes it once.Claude Code skills & agents
The .claude/ scaffold ships invokable skills and subagent definitions:
| Type | Included |
|---|---|
Skills (/name) | federation-contracts, file-routing, ssr, security, testing, jorvel-cli |
| Agents | host-builder, remote-builder, federation-auditor, security-reviewer |
settings.json pre-allows Bash(pnpm:*) and Bash(jorvel:*) and denies reading .env, so the agent is productive without prompting on every command and can't leak secrets.
The docs MCP server
@jorvel/mcp-docs is a Model Context Protocol server that exposes the JORVEL docs to any MCP client. When mcp is selected, init writes .mcp.json:
{
"mcpServers": {
"jorvel-docs": { "command": "npx", "args": ["-y", "@jorvel/mcp-docs"] }
}
}Claude Code reads .mcp.json at the project root automatically. For Cursor or Windsurf, add the same entry in their MCP settings. It exposes three tools:
| Tool | Args | Returns |
|---|---|---|
list_docs | — | Every doc page (section, title, URL). |
search_docs | query | The most relevant pages for a query. |
get_doc | path | A page as plain text (URL or /docs/…). |
Point it at a self-hosted docs deployment with the JORVEL_DOCS_BASE environment variable (defaults to the public site). Run it standalone to sanity-check:
npx -y @jorvel/mcp-docs # speaks MCP over stdioRegenerate any time
jorvel init in a fresh directory to regenerate a clean set to diff against.