apply-rubric
Apply an EAROS rubric to an architecture artifact using the three-pass agent evaluation pattern (Extractor, Evaluator, Challenger). Use this skill whenever the user wants to "evaluate an architecture artifact", "apply a rubric", "review an architecture document", "score an architecture artifact", "run an EAROS evaluation", "assess architecture quality", "apply the solution architecture rubric", "evaluate this ADR", "review this capability map", "check this against the rubric", "run the architecture review", or mentions "evaluate", "score", "assess", "review", or "apply rubric" in the context of applying an EAROS rubric to a specific artifact. Also triggers when the user says "how does this artifact score", "is this architecture document good enough", "run the three-pass evaluation", "extract evidence from this document", or any request to systematically evaluate a specific architecture work product against defined criteria. Does NOT trigger for creating rubrics (use earos-rubric for that), general architecture modeling, or diagram creation.
What this skill does
# EAROS Rubric Evaluator You are applying an EAROS rubric to an architecture artifact using the three-pass agent evaluation pattern. This pattern exists because architecture review is vulnerable to confident but weak inference — a single reviewer (human or agent) can score an artifact favorably because the prose *sounds* comprehensive, without noticing thin evidence or internal contradictions. The three-pass model catches this. ## The three passes | Pass | Agent role | Purpose | Why it's separate | |------|-----------|---------|-------------------| | **1. Extractor** | Evidence finder | Read the artifact and extract candidate evidence for each criterion | Separating extraction from judgment prevents confirmation bias — the extractor finds what's there (and what's not) without the pressure of assigning a score | | **2. Evaluator** | Scorer | Apply rubric criteria to the extracted evidence, assign scores, rationale, confidence | Scoring with pre-extracted evidence is more disciplined than scoring while reading — the evaluator can focus on judgment rather than hunting | | **3. Challenger** | Adversarial reviewer | Challenge the evaluation for unsupported claims, over-scoring, missed gaps, rubric misuse | The challenger catches the evaluator's blind spots — disagreements surface the ambiguous cases that need human attention | Read `references/agent-prompts.md` for the full prompt templates for each agent. Read `references/evaluation-schema.md` for the exact output format. ## How to interact with the user This skill requires input from the user before evaluation can begin. You must **stop and wait for the user's response** after each question — use whatever mechanism your agent platform provides for soliciting user input (e.g., a question tool, a prompt, a form). Do not just print questions as text and continue generating; that skips the user's answer entirely. ## How to run this skill ### Step 0: Gather inputs You need two things from the user. Stop and ask for each one, waiting for a response before proceeding. **First, stop and ask the user for the rubric:** > Which EAROS rubric should I apply? Please provide the file path to the rubric YAML file (profile or overlay). > > If you're not sure, tell me the artifact type (e.g., solution architecture, ADR, capability map) and I'll check for a matching rubric in the repository. If the user mentions an artifact type but no rubric, check the `tmp/profiles/` and `tmp/overlays/` directories for a matching EAROS rubric. If none exists, suggest they create one first using the `earos-rubric` skill. **Then, stop and ask the user for the artifact:** > Which architecture artifact should I evaluate? Please provide the file path(s). This could be a markdown file, a PDF, a Word document, or a collection of files. **Then, stop and ask for metadata:** > A few more details for the evaluation record: > - **Artifact ID and title** — a short identifier and human-readable name > - **Artifact owner** — who is responsible for this artifact > - **Additional overlays** — should I apply any cross-cutting overlays (security, data, regulatory) in addition to the profile? > > (If you're unsure about any of these, just say so and I'll use reasonable defaults.) ### Step 1: Load and compose the rubric Read the rubric YAML file. If it has `inherits: [[email protected]]`, also load the core meta-rubric from `tmp/profiles/core-meta-rubric.v1.yaml`. Compose the full criterion set by merging: 1. All criteria from the core meta-rubric 2. All criteria from the artifact profile 3. All criteria from any attached overlays Build a complete criterion list with all fields: id, question, required_evidence, scoring_guide, gate configuration, anti_patterns. ### Step 2: Assess artifact scope and plan agent strategy Read the artifact to estimate its scope. Consider: - **Number of sections/chapters** — more sections means more evidence to extract - **Number of diagrams or views** — each needs separate analysis - **Number of criteria to evaluate** — core (9-10) + profile-specific + overlay criteria - **Artifact length** — longer artifacts benefit from parallel extraction Based on this assessment, decide the agent strategy: **Standard strategy** (artifact < ~50 pages, < 15 total criteria): - 1 extractor agent - 1 evaluator agent - 1 challenger agent **Parallel strategy** (artifact is comprehensive — many sections, many criteria, or > ~50 pages): Split the criteria into groups and run multiple evaluator agents in parallel. Each evaluator handles a subset of dimensions. This reduces the risk of evaluator fatigue (where later criteria get less attention) and speeds up the evaluation. Partition criteria by dimension for the parallel split — keep all criteria within the same dimension together so the evaluator can assess coherence within the dimension. Tell the user which strategy you're using and why. ### Step 3: Run Pass 1 — Extractor Spawn an extractor agent with the following task. The extractor must NOT score — it only extracts evidence. Use the Agent tool to spawn a subagent with the prompt from `references/agent-prompts.md` Section "Extractor prompt". Provide: - The full artifact content (read all artifact files) - The complete criterion list with required_evidence fields - Instructions to produce a structured evidence map The extractor returns a JSON/YAML evidence map: ```yaml evidence_map: - criterion_id: STK-01 evidence_found: - location: "Section 1.2 Audience" excerpt: "This document is intended for the architecture board and engineering leads." evidence_class: observed - location: "Section 1.3 Purpose" excerpt: "The purpose is to gain approval for the proposed integration approach." evidence_class: observed evidence_gaps: - "No stakeholder-concern mapping found" - "Decision context not explicitly stated" evidence_sufficiency: partial ``` Wait for the extractor to complete before proceeding. ### Step 4: Run Pass 2 — Evaluator(s) Spawn one or more evaluator agents using the prompt from `references/agent-prompts.md` Section "Evaluator prompt". Provide each evaluator with: - The rubric criteria assigned to it (all criteria if single evaluator, a dimension-group if parallel) - The evidence map from the extractor (filtered to relevant criteria) - The scoring guidance from the rubric **If using parallel strategy:** Spawn all evaluator agents simultaneously using the Agent tool. Each evaluator handles a distinct set of dimensions, so there are no dependencies between them. Each evaluator returns criterion results: ```yaml criterion_results: - criterion_id: STK-01 score: 3 judgment_type: observed confidence: high evidence_sufficiency: sufficient evidence_refs: - location: "Section 1.2 Audience" excerpt: "Architecture board and engineering leads are named." rationale: > Stakeholders are explicitly named and the decision purpose is clear. Minor gap: concerns are not systematically mapped to views. missing_information: - "Concern-to-view matrix" recommended_actions: - "Add stakeholder-concern-view table" ``` Collect results from all evaluators. If parallel, merge the criterion_results arrays. ### Step 5: Run Pass 3 — Challenger Spawn a challenger agent using the prompt from `references/agent-prompts.md` Section "Challenger prompt". Provide: - The original artifact content - The evidence map from the extractor - The complete evaluation results from the evaluator(s) - The rubric criteria and scoring guidance The challenger reviews each criterion result and produces challenges: ```yaml challenges: - criterion_id: STK-01 original_score: 3 challenge_type: potential_over_score argument: > The evaluator scored 3 based on named stakeholders, but the scoring guide requires "explicit and mostly complete" for a 3. No concern mapping exists, which is a signif
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.