AB doc-and-modernize
Two related workflows for a locally-cloned codebase, in one skill. Documentation mode produces a single, comprehensive, verifiable architecture document primarily by reading files on disk (local-first) — use it whenever the user wants to understand, map, document, research, or onboard onto a codebase ("research this repo", "write up the architecture", "do an architecture deep dive", "document how this codebase works", "map the system design", "create an onboarding doc"). Modernization mode generates a phased plan to modernize, migrate, upgrade, or rewrite a legacy system ("modernize this", "plan the migration", "how would we rewrite this", "how do we get off this legacy stack"); if no architecture document exists yet it first runs Documentation mode, then continues straight through to the plan. It assumes the legacy stack may be dead, runs a time-boxed feasibility spike, and picks the highest achievable rung on a safety ladder instead of demanding a fully-green legacy CI gate up front.
Two related workflows for a locally-cloned codebase, in one skill.
As a process B 76/100 · Nearly there — weak spots: execution cost
How to improve
- The SKILL.md body is over 5,000 tokens: move reference detail into references/ and load it when needed.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 0
✓ No critical or high findings
Files scanned: 3. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- warning
body-longSKILL.md body ≈ 12118 tokens (recommended < 5000); move details to references/ - note
edit-residuethe text marks something as outdated (lines 11, 189, 197, 201, 247, 292): check that old rules are not kept next to new ones — the full check reads the text for contradictions
Process rating: all ten parameters 76/100
- 40Execution cost. Instruction body is 12118 tokens: crowds the task out of the window
- 60Tools and files. Uses tools (bash, web, python, node) that frontmatter does not declare
- 60Steps. 142 steps, 8 vague phrases
- 70When it triggers. States when to use, but not when not to
- 70Inputs and preconditions. Inputs and preconditions are listed
- 100Result and completion. Output format and completion criterion are stated
- 100Failures and branches. 5 branches, has a failure section
- 100Consistency. Name and required fields are in place
- 100Running it twice. Mutating operations check current state
- 100Progress reporting. Reports progress
- medium Safety rules and hard prohibitions inside a skill: they belong in the system prompt, here they protect nothing
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +4Description does not say when NOT to use the skill (false activations)
- +3Description length 1000: 120–800 characters recommended
- +1No license
- +2Single-language instructions
- +5Description quotes 10 example trigger phrases
- +4Structure: 27 headings
- +3Step-by-step instructions: 142 items
- +3Output format is stated explicitly
- +4Has examples (2 code blocks)
- +4Reference files are cited in the instructions (2 of 2)
Quality base 70; lint remarks subtract, signals add up to 100. Result: 83.