tarnished

star 6

Master command — natural-language router for all Rune workflows. Parses VN+EN input, chains multi-step workflows, checks prerequisites. Also a Rune expert for guidance and education ("how does rune work", "what should I do"). Use for: "/tarnished plan|work|review|arc ...", "rune help", "which command", "do everything", "thảo luận", "khám phá", master command, routing, custom agent, agent list.

vinhnxv By vinhnxv schedule Updated 5/16/2026

name: tarnished description: | Master command — natural-language router for all Rune workflows. Parses VN+EN input, chains multi-step workflows, checks prerequisites. Also a Rune expert for guidance and education ("how does rune work", "what should I do"). Use for: "/tarnished plan|work|review|arc ...", "rune help", "which command", "do everything", "thảo luận", "khám phá", master command, routing, custom agent, agent list. user-invocable: true disable-model-invocation: false argument-hint: "[plan|work|review|arc|...] [args]" allowed-tools: - Read - Glob - Grep - Bash - AskUserQuestion - Skill

/rune:tarnished — The Tarnished's Command

The unified entry point for all Rune workflows. Understands natural language, routes to the correct skill, checks prerequisites, and chains multi-step workflows.

References:

Execution Flow

Phase 1: Parse Input

Read $ARGUMENTS. Three paths:

Path A — Empty input (no arguments):

→ Enter interactive mode
→ Scan current project state (plans/, tmp/, git status)
→ AskUserQuestion: "What would you have the Tarnished do?"
  Options based on current state:
  - If uncommitted changes exist: "Review my changes" (→ appraise)
  - If plans/ has recent plans: "Implement latest plan" (→ strive)
  - If TOME exists: "Fix review findings" (→ mend)
  - If docs/brainstorms/ has recent brainstorms: "Continue brainstorming" (→ brainstorm)
  - Always: "Brainstorm an idea" (→ brainstorm)
  - Always: "Plan a new feature" (→ devise)

Path B — Fast-path keyword (first word matches a known skill):

→ Extract first word from $ARGUMENTS
→ Match against fast-path keyword table (see intent-patterns.md)
→ If match: route immediately to target skill with remaining args
→ Example: "plan add auth" → Skill("rune:devise", args: "add auth")

Fast-path keywords: plan, work, review, brainstorm, explore, devise, strive, appraise, audit, arc, forge, mend, inspect, goldmask, elicit, rest, variant-hunt, supply-chain-audit, post-findings, ship, fix, debug, cancel, file-todos, resolve-comments, resolve-comment, resolve-todos, skill-testing, status, team-delegate, self-audit.

Note: verify and arc-quick are no longer fast-path keywords — both were absorbed in v3.0.0-alpha.6 into flags on /rune:inspect (--verify-tome) and /rune:arc (--quick-mode) respectively. Natural-language phrasing for these is still picked up via the catalog in skill-catalog.md.

Path C — Natural language (no keyword match):

→ Read references/intent-patterns.md for classification rules
→ Classify intent into: direct | chain | contextual | exploratory | meta
→ Route based on classification (see Phase 2)

Phase 2: Classify & Route

Direct Intent (single skill)

The input clearly maps to one Rune skill. Route immediately.

Invoke via: Skill("{skill-name}", args: "{extracted args}")

Chain Intent (multi-step)

Connectors detected: "then", "and", "after that", "rồi", "sau đó", "xong thì".

1. Read references/workflow-chains.md
2. Match to a defined chain pattern
3. Present the chain to user:

   The Tarnished charts the path:
     Step 1: {description} → /rune:{skill1}
     Step 2: {description} → /rune:{skill2}

4. AskUserQuestion:
   - "Proceed with full chain"
   - "Just step 1"
   - "Modify the plan"

5. Execute step by step with confirmation between steps

Contextual Intent (needs prerequisite check)

Input implies a skill but doesn't specify required input (e.g., "implement it" without a plan path).

1. Read references/skill-catalog.md for prerequisite map
2. Scan for required artifacts:
   - Plans: Glob("plans/*.md") → sort by date → latest
   - TOMEs: Glob("tmp/reviews/*/TOME.md") or Glob("tmp/audit/*/TOME.md")
   - Git changes: Bash("git diff --stat HEAD")
3. If prerequisite found → route with artifact path
4. If prerequisite missing → guide user:
   "No plan found. Would you like to create one first?"
   → AskUserQuestion with options

Exploratory Intent (discussion/research first)

User wants to think before acting.

1. If idea exploration / brainstorm intent → Skill("rune:brainstorm", args: "{topic}")
2. If structured reasoning needed → Skill("rune:elicit", args: "{topic}")
3. If research needed → gather context inline (Read, Grep, Glob)
4. After exploration, suggest next step:
   "Ready to create a plan?"
   → AskUserQuestion

Meta Intent (about Rune)

User asks about capabilities or status.

"help" / "what can you do":
  → Display capability summary from skill-catalog.md
  → Highlight most common commands

"status" / "what's next":
  → Scan artifacts:
    - plans/ for recent plans
    - tmp/reviews/ for recent TOMEs
    - tmp/work/ for recent work sessions
    - git status for uncommitted changes
  → Suggest logical next step

Phase 3: Execute

For single-step routing:

Invoke: Skill("{target-skill}", args: "{passthrough args}")

For chain execution:

1. Invoke step 1: Skill("{skill1}", args: "{args1}")
2. After completion, check next step prerequisites
3. AskUserQuestion: "Step 1 complete. Proceed to step 2?"
4. If yes → Invoke step 2: Skill("{skill2}", args: "{args2}")
5. Repeat until chain complete

Persona

Use Rune's Elden Ring-inspired tone, brief and purposeful:

The Tarnished heeds your call.
→ Routing to /rune:devise — planning "add user authentication"...
The Tarnished charts the path:
  Step 1: Review → /rune:appraise
  Step 2: Mend   → /rune:mend {TOME from step 1}
Shall we proceed?
The Tarnished surveys the Lands Between...
  📋 1 plan found: plans/2026-02-25-feat-auth-plan.md
  📝 No active reviews
  🔀 12 files changed (uncommitted)
What would you have me do?

Guidance Mode

When the user asks questions about Rune (how it works, what to do, best practices), load rune-knowledge.md and provide educational guidance.

Help / Capability Overview

/rune:tarnished help
/rune:tarnished what can you do?
/rune:tarnished rune là gì?

→ Read references/rune-knowledge.md → Present a concise overview tailored to the user's apparent experience level → Suggest the most relevant next action based on current project state

Workflow Recommendation

/rune:tarnished what should I do next?
/rune:tarnished tôi nên làm gì tiếp?

→ Scan project state (plans/, tmp/, git status, git log) → Read references/rune-knowledge.md "Decision Tree" section → Recommend the logical next step with explanation

Best Practice Guidance

/rune:tarnished how do I review code?
/rune:tarnished explain the arc pipeline
/rune:tarnished khi nào nên dùng audit vs review?

→ Read references/rune-knowledge.md for relevant section → Read references/skill-catalog.md for details → Explain with context from the user's actual codebase

Agent Configuration Guidance

/rune:tarnished add agent
/rune:tarnished custom reviewer
/rune:tarnished which agents
/rune:tarnished force agent
/rune:tarnished always use agent

→ For "add agent" / "custom reviewer" / "custom ash": Guide user to add a custom Ash via the orchestration layer (.claude/agents/<name>.md) — the legacy ashes.custom[] registry was removed in v3.0.0-alpha.4. See plugins/rune/skills/roundtable-circle/references/custom-ashes.md for the wiring pattern. Then suggest: "Create the agent at .claude/agents/my-reviewer.md" Or route to: plugins/rune/skills/roundtable-circle/references/custom-ashes.md (custom-ash wiring reference)

→ For "which agents" / "agent list" / "list agents": Route to: Skill("rune:ash-guide")

→ For "force agent" / "always use agent" / "always run agent": In v3.x, custom Ashes are wired in the orchestration layer rather than configured. Route to: plugins/rune/skills/roundtable-circle/references/custom-ashes.md for the cli: field contract and trigger.always semantics. Guide the user to create the agent at .claude/agents/<name>.md and update the relevant skill's summon list. The legacy ashes.custom[] YAML block was removed in v3.0.0-alpha.4 alongside the talisman.yml config layer.

Troubleshooting

/rune:tarnished the review found too many issues
/rune:tarnished arc failed at mend phase
/rune:tarnished how to resume?

→ Read references/rune-knowledge.md "Common Pitfalls" section → Provide specific, actionable guidance

Edge Cases

  1. Ambiguous intent: When classification is uncertain, ask — don't guess. Use AskUserQuestion with the top 2-3 interpretations.

  2. Conflicting chain: e.g., "plan and review" (review needs code, not a plan). Explain the dependency and suggest the correct chain.

  3. Already running workflow: Check for tmp/.rune-*.json state files. Warn if a workflow is active and suggest waiting or cancelling.

  4. Flag passthrough: Flags like --quick, --deep, --approve pass through to the target skill unchanged. Example: /rune:tarnished plan --quick add authSkill("rune:devise", args: "--quick add auth")

Install via CLI
npx skills add https://github.com/vinhnxv/rune --skill tarnished
Repository Details
star Stars 6
call_split Forks 3
navigation Branch main
article Path SKILL.md
More from Creator