Content
73%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-structured, highly actionable instruction skill: clear sequenced workflow with explicit checkpoints and failure fallbacks, a fixed output template, and well-signaled one-level-deep references. The main issues are a dangling reference to a missing `test-prompts.json` and noticeable restatement of the same rules across the Checkpoints, Do Not, Scoring Rules, and Failure Modes sections.
Suggestions
Add the missing `test-prompts.json` to the skill directory (the body's Test Prompts section and `scripts/validate_skill_contract.py` both require it), or remove the Test Prompts section if validation prompts are not being shipped.
Deduplicate repeated rules: state the unreadable-folder rule once (e.g., in Checkpoints) and the platform-base-weights rule once (e.g., in Scoring Rules), then cut the verbatim repeats from the Do Not section and the Failure Modes table.
Trim the Trigger section's overlap with the frontmatter description — the body restates the same trigger phrases the description already carries, so a one-line pointer would suffice.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is dense operational rule-making with no padding that teaches concepts Claude already knows, but the same rules are restated across sections: the unreadable-folder rule appears in Required Inputs ("stop and ask the user... Do not score from vague memory"), the Failure Modes table, Checkpoints ("🛑 STOP if the current post folder cannot be read"), and Do Not ("Do not score purely from the title if the post folder is unreadable"), and "Do not change platform base weights for different goals" appears verbatim in both Scoring Rules and Do Not. This fits the mostly-efficient-but-could-be-tightened anchor; it is not 4 because the duplication goes beyond minor instances, and not 2 because every section still carries operational weight rather than explanation. | 3 / 5 |
Actionability | The guidance is largely executable: exact files to inspect ("Inspect `post.json` first", "cards/*.html"), a fixed copy-paste output template, numeric scoring thresholds ("Do not give a score above 85 if the core creative artifact is incomplete"), and a runnable command ("Run `python3 scripts/validate_skill_contract.py`"). It is not 5 because the Test Prompts section directs to `test-prompts.json`, which does not exist in the skill directory, so that instruction cannot be executed as written; it is not 3 because the core diagnosis workflow is fully specified with concrete commands, paths, and thresholds. | 4 / 5 |
Workflow Clarity | An 8-step numbered workflow (read folder → identify platform → load rubric → web search → compare → evidence ledger → score → report) is paired with explicit checkpoints ("🔴 CHECKPOINT before scoring", "🛑 STOP if the current post folder cannot be read") and a 7-row Failure Modes and Fallbacks table that provides error-recovery loops (e.g., web search fails → "Continue with file-only diagnosis", "Mark `同类内容对比` as limited"). This matches the anchor with explicit validation steps, feedback loops, and checklists; it is not 4 because checkpoints and fallback paths are explicit rather than implicit. The skill is read-only diagnosis, so the destructive-operation cap does not apply. | 5 / 5 |
Progressive Disclosure | The three reference files (`references/rednote-rubrics.md`, `references/wechat-official-rubrics.md`, `references/comparison-protocol.md`) all exist, are one level deep, are listed with one-line descriptions in a Reference Files section, and are conditionally loaded per platform in the workflow — bulk scoring detail is correctly split out of SKILL.md. It is not 5 because `test-prompts.json` is referenced in the body but absent from the bundle (the validator script requires it), leaving a dangling reference; it is not 3 because the split itself is well organized and references are clearly signaled. | 4 / 5 |
Total | 16 / 20 Passed |