From claudekit
Interactive setup wizard scaffolds claudekit rules, hooks, and MCP servers into .claude/ directory. Invoke /claudekit:init for new project setup or reconfiguration.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claudekit:init [--all] to skip prompts and install everything[--all] to skip prompts and install everythingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Interactive setup wizard that scaffolds project-level configuration files into the user's `.claude/` directory.
Interactive setup wizard that scaffolds project-level configuration files into the user's .claude/ directory.
Output styles ship with the plugin and are auto-discovered by Claude Code (no init step needed for them — see output-styles/ at the plugin root).
| Category | Files | Location |
|---|---|---|
| Rules | api.md, frontend.md, migrations.md, security.md, testing.md | .claude/rules/ |
| Hooks | auto-format, block-dangerous-commands, notify | .claude/hooks/ + settings.local.json |
| MCP Servers | context7, sequential, playwright, memory, filesystem | .mcp.json |
When invoked, ask the user ONE question at a time:
"Which rules do you want to install?"
If (b), list each rule with a one-line description and let user select:
For each selected rule, read the template from ${CLAUDE_PLUGIN_ROOT}/skills/init/templates/rules/<name>.md and write it to .claude/rules/<name>.md.
"Which hooks do you want to install?"
For each selected hook:
${CLAUDE_PLUGIN_ROOT}/skills/init/templates/hooks.json${CLAUDE_PLUGIN_ROOT}/scripts/<script>.cjs to .claude/hooks/<script>.cjs.claude/settings.local.json (create if it doesn't exist)Hook entry format for settings.local.json:
{
"hooks": {
"<event>": [
{
"matcher": "<matcher>",
"hooks": [
{
"type": "command",
"command": "node .claude/hooks/<script>.cjs"
}
]
}
]
}
}
If settings.local.json already has a hooks key, merge new entries into the existing structure — do not overwrite.
"Which MCP servers do you want to configure?"
For each selected server:
${CLAUDE_PLUGIN_ROOT}/skills/init/templates/mcp-servers.jsonprocess.platform === "win32" or use Bash uname to determine OSwin32 or posix key).mcp.json (create with {"mcpServers": {}} if it doesn't exist)Print a summary table of everything installed:
Claudekit setup complete!
Rules: 5 installed → .claude/rules/
Hooks: 3 installed → .claude/hooks/ + settings.local.json
MCP: 5 configured → .mcp.json
Next steps:
- Skills available as /claudekit:<name> (15 total)
- Agents available as claudekit:<name> (8 specialists)
- Output styles available via /config (5 shipped: Brainstorm, Deep Research,
Implementation, Review, Token Efficient)
If $ARGUMENTS contains --all, skip all prompts and install everything:
.claude/rules/ doesn't exist, create it before writing files.settings.local.json (not settings.json) — local is gitignored so hook config stays personal.${CLAUDE_PLUGIN_ROOT} to reference template files within the plugin.cmd /c npx, macOS/Linux uses npx directly.output-styles/ and are auto-discovered. Users switch them via /config or by setting outputStyle in .claude/settings.local.json.npx claudepluginhub duthaho/claudekit --plugin claudekitInitializes project configuration by auto-detecting framework, replacing CLAUDE.md placeholders, and installing rules, hooks, and scripts.
Generates Claude Code project setups including CLAUDE.md, hooks, permissions, commands, and agents. Analyzes stack (TypeScript, JavaScript, Python, Go, Rust, etc.) to create minimal/standard/full configs.
Details Claude Code's directory structure, CLAUDE.md hierarchy across enterprise/user/project levels, and settings.json schema for permissions, hooks, env vars, and models. Useful for project setup and customization.