agentleFS
synaptiaisynaptiai/bdsk/skills/evaluate/SKILL.md

evaluate

Skill0 starsChanged 7 months agoMITView on GitHub

Evaluate review gates against the generated diff and create execution_eval YAML artifacts. Closes BDSK lifecycle phase 5 (Evaluation). Satisfies Algorithm E condition 2. Use after implementation, before /accept.

We split this skill into the rules it gives an agent

8 rules. 0 are common, 3 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 23 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Find the execution plan: Read .claude/state/active-executions/*.yaml to find the active execution plan ID.

    line 22
  2. Very specific:

    Warn on blocking failures: If any gate with gate_class: blocking has result fail, warn: "BDSK-GATE-001: Blocking gate <id> failed.

    line 92
  3. Distinctive:

    If no review gates are defined, exit cleanly (not an error)

    line 96
  4. Distinctive:

    Never modify the review gate artifacts — only read them

    line 99
  5. Distinctive:

    Never create waiver artifacts — that is a separate governance action

    line 100
  6. Very specific:

    Trace refs: MUST be {target_id: <id>, edge: <edge>} objects, not bare string IDs.

    line 106
  7. Very specific:

    Approvals: MUST use {authority_role: <role>, approver: <user>, approved_at: <ISO-8601>}.

    line 107
  8. Very specific:

    Do NOT use evaluates for the link to execution_plan or review_gate — use depends_on

    line 114

“Common” is measured: kept by at least 6 in 10 of the 23 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/evaluate

Evaluate review gates and create execution eval artifacts.

Process

  1. Find the execution plan. Read .claude/state/active-executions/*.yaml to find the active execution plan ID. Read the plan from artifacts/execution-plans/.
  2. Collect required gates. Extract spec.required_inputs.review_gates from the plan. If empty, print "No review gates defined. Gate evaluation not required — skipping." and exit.
  3. Read each gate. For each review gate ID, read the artifact to get:
    • metadata.gate_class (blocking, warning, manual-review, escalation)
    • spec.evaluation_method (static_check, human_review, diff_analysis, etc.)
    • spec.pass_condition (what must be true to pass)
  4. Evaluate each gate. Based on evaluation_method:
    • diff_analysis: Check the git diff against the plan's in_scope_paths and out_of_scope_paths
    • static_check: Run available linters/checkers, or analyze code for the pass_condition
    • spec_coverage: Check that all behavior specs have traced implementations
    • human_review: Ask the user via AskUserQuestion to provide their assessment
    • contract_check: Verify contract artifacts have matching implementations
    • other: Ask the user to evaluate manually
  5. Find the diff artifact. Look for a generated_diff artifact in artifacts/diffs/ that traces to the execution plan (check trace.upstream for the plan ID). If none exists (e.g., running /evaluate standalone without /run), use the plan ID as subject_diff and note "No generated_diff artifact found — evaluation based on git diff" in the evidence.
  6. Create execution eval artifacts. For each gate, write:
kind: execution_eval
schema_version: "0.3"
id: EE-<short-slug>-<current ISO-8601 timestamp>
title: "Gate evaluation: <gate title>"
status: completed
owners:
  - <current user>
created_at: <current ISO-8601 timestamp>
updated_at: <current ISO-8601 timestamp>
trace:
  upstream:
    - target_id: <execution_plan_id>
      edge: depends_on
    - target_id: <review_gate_id>
      edge: depends_on
    - target_id: <generated_diff_id>
      edge: evaluates
  downstream: []
approvals: []
metadata:
  eval_type: gate_check
spec:
  subject_diff: <generated_diff_id>
  subject_gate: <review_gate_id>
  result: <pass|warn|fail|escalate>
  findings:
    - <issue description, or empty if pass>
  evidence:
    - <evidence description>
  1. Write to disk. Save each to artifacts/execution-evals/<id>.yaml
  2. Report summary:
Gate Evaluation Summary
=======================
Review gates: N total
  pass: N
  warn: N
  fail: N

Results:
  RG-xxx "Gate title" → PASS
  RG-xxx "Gate title" → FAIL (blocking)
  1. Warn on blocking failures. If any gate with gate_class: blocking has result fail, warn: "BDSK-GATE-001: Blocking gate <id> failed. /accept will compute 'rejected' unless a waiver is approved."

Rules

  • If no review gates are defined, exit cleanly (not an error)
  • For human_review gates, ALWAYS ask the user — never auto-pass
  • For blocking gates that fail, explicitly warn about acceptance impact
  • Never modify the review gate artifacts — only read them
  • Never create waiver artifacts — that is a separate governance action

Schema Compliance

  • spec allows exactly 5 fields: subject_diff, subject_gate (optional), result, findings, evidence. Do NOT add description, gate_title, gate_class, summary, or any extra field. Schema uses additionalProperties: false.
  • metadata allows exactly 1 field: eval_type. No additional metadata fields. Schema uses additionalProperties: false.
  • Trace refs MUST be {target_id: <id>, edge: <edge>} objects, not bare string IDs.
  • Approvals MUST use {authority_role: <role>, approver: <user>, approved_at: <ISO-8601>}. Not {date, decision}.
  • Valid trace edges (10 total): depends_on, derived_from, constrains, implements, proves, evaluates, produced_by, supersedes, escalates_to, waives.
  • Valid authority roles (5 total): product_authority, technical_authority, security_authority, release_authority, qa_authority.

Edge-kind rules for execution_eval

  • Upstream depends_on → execution_plan, review_gate, execution_log
  • Upstream evaluates → generated_diff (ONLY — not execution_plan or review_gate)
  • Do NOT use evaluates for the link to execution_plan or review_gate — use depends_on
    # WRONG:
    upstream:
      - target_id: EP-feature-001
        edge: evaluates
    # RIGHT:
    upstream:
      - target_id: EP-feature-001
        edge: depends_on
      - target_id: GD-feature-001
        edge: evaluates

Download now (ZIP)

  • Other versions23 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 23

    1. Q00/ouroboros★ 6.3ksame name
    2. suboss87/FDEOps★ 940same name
    3. andrew-shwetzer/career-ops-plugin★ 501same name
    4. andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2-★ 500same name
    5. careerhackeralex/visualize★ 219same name
    6. skillberry-ai/cap-evolve★ 67same name
    7. jantichy/claude★ 45same name
    8. junjiezhou1122/ideascientist-claude-code★ 35same name
    9. iamneilroberts/claude-skills★ 26same name
    10. TakaGoto/rag-learning-academy★ 24same name

    13 more not listed

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use apply, outreach and 8 more.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • proficientlyjobsSkill

      apply

      Fill out a job application on Greenhouse, Lever, or Workday

      Also in 5 projects that use this

    • QuixiAISkill

      outreach

      Send messages to people on chat platforms (Discord, Slack, Telegram, Signal) on the user's behalf or your own initiative

      Also in 4 projects that use this

    • n24q02mSkill

      compare

      Structured comparison of 2+ alternatives with consistent criteria and decision matrix

      Also in 3 projects that use this

    • dazuckSkill

      interview

      Interview me about a plan to flesh out requirements before implementation. Asks non-obvious questions one at a time until all ambiguities are resolved.

      Also in 3 projects that use this

    • Google CloudSkill

      triage

      Gather context on a change or bug and plan the implementation.

      Also in 4 projects that use this

    • OpenAISkill

      audit

      Audit or critique a product flow, journey, workflow, funnel, onboarding path, checkout path, settings path, screen, or multi-step product experience by capturing screenshots first, then reporting UX, design, and accessibility findings inline from that evidence. Use Figma only when the user explicitly asks for a board. Use when the user asks to audit, review, critique, inspect, assess, analyze, evaluate, or give feedback on a product experience.

      Also in 3 projects that use this

  • In this repository11 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.