vulyk: Command for Claude Code

.claude/commands/vulyk-review.md

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

A merge-review command that looks for reasons a code change should not be merged. It checks whether the changes match the files and stories they were meant to affect, then runs separate review and acceptance checks.

In plain words
What is it for?
Use it as a final check on current changes or a branch before merging. It is for comparing the real diff with the planned work and checking both implementation quality and acceptance.
Why use it?
It helps catch bugs, out-of-scope edits, and changes that do not meet the planned requirements before merging. It also gives the reviewer the project notes needed to judge the change.

Command for Claude Code

Written for Claude Code: argument-hint in frontmatter. Also seen: names the AskUserQuestion tool.

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-review.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-review

README.md
[![agentmods](https://agentmods.dev/badge/commands/black-coffe/vulyk/vulyk-review/github.svg)](https://agentmods.dev/commands/black-coffe/vulyk/vulyk-review)
Your own site
<a href="https://agentmods.dev/commands/black-coffe/vulyk/vulyk-review"><img src="https://agentmods.dev/badge/commands/black-coffe/vulyk/vulyk-review/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for vulyk-review

Your own site · 80×15
<a href="https://agentmods.dev/commands/black-coffe/vulyk/vulyk-review"><img src="https://agentmods.dev/badge/commands/black-coffe/vulyk/vulyk-review.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 23 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,141 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.00023 $0.01141
Opus 5.5 $0.00009 $0.00456
Sonnet 5.5 $0.00005 $0.00228
Haiku 4.5 $0.00002 $0.00114

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

Security

Grade A, and why

vulyk-review 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-review.md · 52 lines

What it actually says

Run one council round on: "$ARGUMENTS" (default: the spec whose **Branch:** matches the current branch). Every call below that runs advance carries timeout: 600000.

  1. Claim and advance. stamp="$(openssl rand -hex 8 2>/dev/null || bash scripts/py.sh -c 'import secrets; print(secrets.token_hex(8))')", then bash scripts/cycle.sh advance docs/specs/<slug> --stamp $stamp --claim. ok:false with held by: another driver holds the spec; print its error and stop. Otherwise act on next:
    • dispatch:<seats>: go to step 2.
    • green: the newest round is green and current. If the owner still wants a round, run bash scripts/cycle.sh open-round docs/specs/<slug> --commit --stamp $stamp (the tier's ceiling still counts it; exit 6 means it is reached), then advance --stamp $stamp again.
    • build:<W>: stories are open, or the last round was RED and advance has cut the repair story. Release and point at /vulyk-build.
    • escalated, paused, shipped, briefed, or any ok:false: release and report it as /vulyk-build's Terminal section does.
  2. Dispatch exactly the seats next names, in one message, as /vulyk-build describes: each writes to .vulyk/reports/<slug>/round-<round>/<seat>.attempt-<k>.md with k from status.seat_attempt; blind seats get slug, round, court and the report path only, never round_dir; lead-review gets the spec, branch, head, report path, and from round 2 since and the previous round's directory, at Tier 1-3 with model: <r> from r="$(bash scripts/model-profile.sh --role review)" only when the profile is not sonnet-builds (else no model parameter), and two reviewers (review-top, review-second) at Tier 4. Blind seats get model: <s> from s="$(bash scripts/model-profile.sh --role seat)" only when the profile (bash scripts/model-profile.sh) is not sonnet-builds. A seat whose dispatch returns the Fable-limit refusal (an error carrying You've reached your Fable limit / model_requires_usage_credits, or a text that starts with Agent terminated early due to an API error and carries reached your Fable limit; a report quoting it is a report) and was not already on opus is redispatched once with the same prompt and agent type and model: opus; then, <from> the model it was passed ("" when none): bash scripts/journal.sh docs/specs/<slug> 04-council "fallback: <agent> round-<round>/<seat> <from> -> opus (Fable limit; ADR-015 exception)" "ingest", bash scripts/telemetry.sh record fable_limit_fallback 1 0 --spec <slug> --ref <slug>:round-<round>/<seat>:<agent> --model fable --agent <agent>, and one sentence to the owner, in the owner's language. A refusal on the redispatch is the existing path: the seat stays absent. No other error is retried this way.
  3. Record and judge: bash scripts/cycle.sh advance docs/specs/<slug> --stamp $stamp --ingest. A seat still listed in next was rejected: re-dispatch it once with its rejected error appended, then --ingest again.
  4. Release, whatever happened: bash scripts/cycle.sh release docs/specs/<slug> $stamp. Print the newest **Council:** line of plan.md and act on next:
    • green: ask the owner once with AskUserQuestion, in the owner's language: «: council GREEN, round . Выпускаем?», yes first and recommended. Yes: run vulyk-ship with the Skill tool (args <slug>). No, or no AskUserQuestion (claude -p): recommend /vulyk-ship in one line.
    • build:<W>: the round was RED and the repair story is written; it is built through /vulyk-build, never by hand in this command.
    • escalated: print ## Needs a human from plan.md verbatim. The owner chooses: human-check.sh ACCEPTED, cycle.sh reopen "<decision>", or leaving the spec open.

The council's verdict is what this command produces; there is no stop for the owner inside it.

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 81aa2c90e495
  2. 2d ago Changed · +9 lines 84d211747aea
  3. 10d ago Changed · +3 lines 5ad367d0816b
  4. 1mo ago Changed · +2 lines 819427b90d91
  5. 1mo ago Changed · -55 lines · +5 tokens per session 5240370da8d0
  6. 1mo ago Changed · +1 lines 650e4a2687ac
  7. 1mo ago Changed · +75 lines · +4 tokens per session 6d57626a4148
  8. 1mo ago Changed cab23cee260a
  9. 1mo ago Changed 5b87394d2c63
  10. 2mo ago First seen · 17 lines · 14 tokens per session scan A 3393df9115d3

Subscribe to this mod's changes

vulyk-review is a command published in the GitHub repository Black-coffe/vulyk (2 stars, last pushed today), licensed MIT. It adds 23 tokens to every session and 1,141 once invoked, about $0.0001 per session on Opus 5.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.