vulyk: Command for Claude Code

.claude/commands/vulyk-plan.md

vulyk-plan is a command for Claude Code from Black-coffe/vulyk. It costs 17 tokens per session (1,154 once invoked), scanned A, original, MIT.

A planning command that turns a request into a brief, project research, and small implementation stories. It classifies the work by tier and asks for approval when the process requires it.

In plain words
What is it for?
Use it to plan repository changes, especially work that needs several stories. It is for recording the request, checking existing project knowledge, asking necessary questions, and preparing approved work items.
Why use it?
It gives larger changes a written source of requirements and a traceable plan before implementation begins. This helps prevent stories from drifting away from the original request.

Command for Claude Code

Written for Claude Code: argument-hint in frontmatter. Also seen: mentions CLAUDE.md.

This is Black-coffe/vulyk's own configuration. It tells Claude Code how to work on vulyk itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything vulyk configures →

Reuse

Borrowing it

Nothing to install: this file belongs to Black-coffe/vulyk. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/Black-coffe/vulyk/main/.claude/commands/vulyk-plan.md
Clone the repo
git clone --depth 1 https://github.com/Black-coffe/vulyk

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for vulyk-plan

README.md
[![agentmods](https://agentmods.dev/badge/commands/black-coffe/vulyk/vulyk-plan.svg)](https://agentmods.dev/commands/black-coffe/vulyk/vulyk-plan)
Your own site
<a href="https://agentmods.dev/commands/black-coffe/vulyk/vulyk-plan"><img src="https://agentmods.dev/badge/commands/black-coffe/vulyk/vulyk-plan.svg" alt="Measured on agentmods" height="20"></a>
Per session 17 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,154 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00017 $0.01154
Opus 5 $0.00009 $0.00577
Sonnet 5 $0.00003 $0.00231
Haiku 4.5 $0.00002 $0.00115

Measured today against content hash 47fca013c74b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

vulyk-plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/commands/vulyk-plan.md · 17 lines

How it starts

The opening of the file, as written. The whole thing — 17 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Enter Queen mode for: "$ARGUMENTS"

  1. Classify the tier per the routing matrix in CLAUDE.md. Announce it. Tier 0-1: skip ceremony - say so and either do it (Tier 0) or write a single story and stop for approval (Tier 1). The ceremony floor: brief.md and ## Requirements quotes exist at Tier 2+; trace-check runs whenever stories exist; Tier 0-1 gets none of it.
  2. Brief. Write docs/specs/<slug>/brief.md: the request VERBATIM as a > blockquote - the user's words, not your restatement - piped through bash scripts/redact.sh (briefs are committed; secrets are not), with the date. Everything downstream traces back to this file; a paraphrase here poisons every gate built on it. A bug report is a spec too: the error text, the stack trace and the reproduction go in verbatim, and the ask is the observable that must hold afterwards.
  3. Briefing questions. Before asking the human anything, look it up - the repo, memory/, the brief itself answer most questions. Ask only what is irreversible, costly, a vendor choice, or a business rule no code can reveal. One question at a time, each with a recommended default so silence has a safe meaning. Append answers to brief.md under ## Answers (also verbatim). Then confirm the spec (stage 01). Show the brief back - the quote and the answers, nothing else - and at Tier 3-4 stop for one word before spending recon: every gate downstream answers to this text, and a wrong word here is built correctly by everything below it. At Tier 2 show it and continue unless corrected; silence means the text stands.
  4. Recon, not reading. Check memory/memory.md and relevant memory/map/ slices first. Dispatch drone-scout (parallel, up to 4) only for territory the map does not cover or marks stale. You do not open source files yourself.
  5. Plan. For Tier 2: draft the plan inline. For Tier 3-4: delegate synthesis to queen-planner with the brief, scout reports and map pointers attached; for Tier 4 also request a lead-architect consult on the central design fork before stories are finalized. Both dispatches carry model: <TOP_MODEL> - the alias the session brief announced (fable where the plan carries Fable 5.1, opus otherwise; bash scripts/top-model.sh if the brief scrolled away). The agent files say opus as the floor; the per-invocation parameter is where the plan-aware upgrade happens, and forgetting it plans on the floor. Plan file follows templates/plan.md - contracts between concurrent stories are decided here, in the one context that has seen the whole plan.
  6. Stories. Ensure docs/specs/<slug>/ contains plan.md plus one story file per unit of work (template: templates/story.md). Each story: verbatim ## Requirements quotes from brief.md, files to touch, acceptance criteria, verification command, map slice pointer, model tier of its worker, and its wave:/blocked_by: lines. Wave rule: stories in one wave run concurrently, so their ## Files must be disjoint - when two stories need the same file, either merge them, move the shared file into its own earlier story, or push one to a later wave via blocked_by.
  7. Check the stories, deterministically. Run bash scripts/wave-check.sh docs/specs/<slug> and bash scripts/trace-check.sh docs/specs/<slug> - both deterministic, both free. Wave-check catches the collision that would silently eat a worker's diff mid-build, the declared path that does not exist in the tree, and the story whose verification command cannot turn red for its own files; trace-check catches the story nobody asked for and the requirement no story carries. Fix findings in the story files now; a plan approved with either defect ships it.
  8. Coverage, from outside the plan. Dispatch drone-coverage with exactly two paths: the brief and plan.md. It never sees the story files - that is the whole mechanism, because a check that reads the planner's own output cannot be independent of it. Its report is evidence, not authority: an absent or partial ask is either a story you owe or a line the human will call context. Do not resolve that yourself.
  9. Stop for approval. Present: tier, story list with one-line summaries grouped by wave, open assumptions (Law 1), estimated token posture (how many worker dispatches, where top-model tokens will be spent), and all three verdicts - wave-check, trace-check and coverage - including which brief lines no story covers, because deciding "that line is context, not a requirement" belongs to the human, not the planner. Do NOT proceed to implementation - that is /vulyk-build, run after human approval. When it comes, replace the **Approved:** placeholder in plan.md with the owner and the date - that line is stage 02's confirmation, and it is the one /vulyk-build reads.

Read the full file on GitHub · 17 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. today Changed 47fca013c74b
  2. yesterday Changed 03329351a390
  3. 6d ago First seen · 17 lines · 17 tokens per session scan A ad61343be9cd

Subscribe to this mod's changes

vulyk-plan is a command published in the GitHub repository Black-coffe/vulyk (2 stars, last pushed yesterday), licensed MIT. It adds 17 tokens to every session and 1,154 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.