From nazgul
View and change Nazgul settings — model assignments, formatter, notifications. Use when user says "configure nazgul", "change models", "nazgul settings", or wants to adjust config after init.
How this skill is triggered — by the user, by Claude, or both
Slash command
/nazgul:config [models][models]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
- `/nazgul:config` — View current settings and change any of them
/nazgul:config — View current settings and change any of them/nazgul:config models — Jump directly to model assignment configuration$ARGUMENTS
AskUserQuestion tool (deferred by default): run ToolSearch with query select:AskUserQuestion. Do this BEFORE any step that uses AskUserQuestion.nazgul/config.json exists. If not: "Nazgul not initialized. Run /nazgul:init first." and STOP.Read nazgul/config.json and display:
─── ◈ NAZGUL ▸ CONFIGURATION ───────────────────────────
Models:
Planning: [models.planning]
Discovery: [models.discovery]
Docs: [models.docs]
Review: [models.review]
Implementation: [models.implementation]
Specialists: [models.specialists]
Post-loop: [models.post_loop]
Default: [models.default]
Formatter: [formatter.enabled ? "enabled" : "disabled"]
Notifications: [notifications.on_complete || "disabled"]
If the ## Arguments block above contains the token models, skip directly to the Model Assignment sub-flow.
Otherwise, use AskUserQuestion (multiSelect: true):
AskUserQuestion:
If preset, use AskUserQuestion:
Preset values:
{ planning: "opus", discovery: "sonnet", docs: "sonnet", review: "sonnet", implementation: "sonnet", specialists: "sonnet", post_loop: "haiku", default: "sonnet" }{ planning: "opus", discovery: "opus", docs: "opus", review: "opus", implementation: "opus", specialists: "opus", post_loop: "opus", default: "opus" }{ planning: "sonnet", discovery: "haiku", docs: "haiku", review: "haiku", implementation: "sonnet", specialists: "sonnet", post_loop: "haiku", default: "haiku" }If per-stage, use AskUserQuestion in two batches:
Batch 1:
Batch 2:
Update nazgul/config.json → models with the selected values using jq:
jq '.models.planning = "opus" | .models.discovery = "sonnet" | ...' nazgul/config.json > nazgul/config.json.tmp && mv nazgul/config.json.tmp nazgul/config.json
Update model: field in generated agents by role:
nazgul/config.json → agents.reviewers and agents.specialists arrays.claude/agents/generated/*.md, extract the agent name from frontmatteragents.reviewers → set model: [models.review]agents.specialists → set model: [models.specialists]Display confirmation:
─── ◈ NAZGUL ▸ MODELS UPDATED ──────────────────────────
Planning: opus
Discovery: sonnet
...
Changes take effect on the next pipeline run.
Same as init Step 7 Question 1. Use AskUserQuestion:
nazgul/config.json → formatter.enabledUse AskUserQuestion:
say 'Nazgul loop complete' (macOS) or notify-send 'Nazgul' 'Loop complete' (Linux)nazgul/config.json → notifications.on_complete to the platform-appropriate commandnazgul/config.json → notifications.on_completenazgul/config.json → notifications.on_complete to the user's custom commandGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub orodruinlabs/nazgul --plugin nazgul