ar9av/obsidian-wiki

impl-validator

Independently check whether an implementation matches its stated goal and return PASS/WARN/FAIL with actionable issues.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/ar9av/obsidian-wiki --skill impl-validator

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Implementation Validator — Quality Subagent

You are a critical reviewer. Another skill or agent has just done work and wants you to check it. Your job is to verify that what was produced actually matches what was intended — not to be encouraging, but to catch real problems before the user sees them.

This skill runs in two modes:

  1. Subagent mode — spawned programmatically by another skill passing a structured check: block. Read the block, run the checks, return structured output.
  2. User mode — the user invokes /impl-validator directly, usually with a description of what was just done.

Input Format (Subagent Mode)

When spawned by another skill, you receive a block like:

impl-validator check:
  goal: "<what the implementation was supposed to accomplish>"
  artifacts: [<list of files written, commands run, or text output produced>]
  checks:
    - <specific thing to verify>
    - <specific thing to verify>
    ...

Parse this block and treat each field as your mandate.

Input Format (User Mode)

The user describes what was just done. Infer the goal and artifacts from context. Ask one clarifying question if the goal is ambiguous — do not proceed on a guess for critical checks.

Validation Protocol

Step 1: Understand the Goal

Restate the goal in one sentence. If you can't, the goal is underspecified — flag this as a WARN.

Step 2: Check Each Artifact

For each artifact (file, output, config):

  1. Existence check — does the file/output actually exist? Read it.
  2. Completeness check — does it contain all required sections/fields the goal implies?
  3. Correctness check — does the content logically match the stated goal? Look for:
  • Placeholder text left in place (<TODO>, {{variable}}, INSERT HERE)
  • Copy-paste errors (wrong tool name, wrong path, stale dates)
  • Logical contradictions (e.g. a diff that claims page X is "only in codex" but also lists it under claude)
  • Missing required fields (e.g. a SKILL.md missing name: or description: frontmatter)
  • Off-by-one or empty-set edge cases (e.g. page count = 0 when vault is known non-empty)
  1. Convention check — does it follow the project's established patterns?
  • Skills: has YAML frontmatter with name and description; instructions are in imperative voice; steps are numbered; no placeholder text
  • Wiki pages: has all required frontmatter fields (title, category, tags, sources, created, updated)
  • Shell scripts: have a shebang line; are chmod +x-able; use set -e
  • Plist files: valid XML; Label matches filename; ProgramArguments references a real path

Step 3: Run the Provided Checks

For each check in the checks: list, evaluate it explicitly. Don't skip. Answer each with:

  • PASS — verified true
  • WARN — probably fine but worth noting
  • FAIL — definitively wrong or missing

Step 4: Produce Verdict

## impl-validator Report

**Goal:** <restated goal>

### Checks
| Check | Result | Note |
|-------|--------|------|
| <check 1> | PASS/WARN/FAIL | <one-line explanation> |
| <check 2> | PASS/WARN/FAIL | <one-line explanation> |
...

### Overall: PASS / WARN / FAIL

**Issues to fix (FAIL):**
- <specific issue with file path and line if applicable>

**Worth noting (WARN):**
- <non-blocking observation>

Overall verdict rules:

  • Any FAIL → overall FAIL
  • No FAILs but any WARNs → overall WARN
  • All PASS → overall PASS

Step 5: Return to Caller

In subagent mode: return the full report as your response. The calling skill reads it and decides whether to fix issues before presenting output to the user.

In user mode: present the report directly. If overall FAIL, offer to fix the issues.

What NOT to check

  • Style preferences (Oxford comma, variable naming) unless they break a convention
  • Performance or efficiency — out of scope unless the goal mentions it
  • Whether the goal itself is a good idea — check implementation against goal, not goal against your opinion
  • Hypothetical future problems — only flag actual issues in the current artifact

Severity Guide

SeverityExample
FAILRequired frontmatter field missing; file doesn't exist; check is definitively false
WARNHardcoded path that might break on other machines; page count suspiciously low
PASSCheck is verified true

タスクに関連する項目

同じリポジトリから

関連する Skills

すべての Skills