원클릭으로
speckit-agent-assign-validate
Validate that all agent assignments are correct and agents exist
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Validate that all agent assignments are correct and agents exist
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Think before building. Use when the user asks to reason about, analyze, evaluate, compare options, make an architecture decision, choose between approaches, think through a problem, or assess trade-offs. Also use when the user asks 'why did we...', 'should we...', 'what are our options', 'is this the right approach', or wants to frame/reframe a problem.
Archive a feature specification into main project memory after merge, resolving gaps and conflicts
Generate spec-kit configuration tailored to the existing codebase
Incrementally adopt SDD for existing features with reverse-engineered specs
Auto-discover project structure, tech stack, frameworks, and architecture patterns
Verify bootstrap output matches actual project structure and conventions
| name | speckit-agent-assign-validate |
| description | Validate that all agent assignments are correct and agents exist |
| compatibility | Requires spec-kit project structure with .specify/ directory |
| metadata | {"author":"github-spec-kit","source":"agent-assign:commands/validate.md"} |
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Check for extension hooks (before validation):
.specify/extensions.yml exists in the project root.hooks.before_implement keyenabled is explicitly false. Treat hooks without an enabled field as enabled by default.condition expressions:
condition field, or it is null/empty, treat the hook as executablecondition, skip the hook and leave condition evaluation to the HookExecutor implementationoptional flag:
optional: true):
## Extension Hooks
**Optional Pre-Hook**: {extension}
Command: `/{command}`
Description: {description}
Prompt: {prompt}
To execute: `/{command}`
optional: false):
## Extension Hooks
**Automatic Pre-Hook**: {extension}
Executing: `/{command}`
EXECUTE_COMMAND: {command}
Wait for the result of the hook command before proceeding to the Outline.
.specify/extensions.yml does not exist, skip silentlyVerify that agent assignments in agent-assignments.yml are complete, consistent, and reference agents that actually exist. This command is READ-ONLY — it does not modify any files. If issues are found, it suggests remediation actions.
Setup: Run .specify/scripts/bash/check-prerequisites.sh --json --require-tasks from repo root and parse FEATURE_DIR and AVAILABLE_DOCS list. All paths must be absolute. For single quotes in args like "I'm Groot", use escape syntax: e.g 'I'''m Groot' (or double-quote if possible: "I'm Groot").
Check Assignment File Exists: Verify agent-assignments.yml exists in FEATURE_DIR.
/speckit.agent-assign.assign first to generate agent assignments."Load Inputs: Read the following files from FEATURE_DIR:
agent-assignments.yml — the agent assignment mappingtasks.md — the task list to validate againstagent-assignments.yml to extract the agents_scanned list and assignments mappingtasks.md to extract all task IDsRescan Agent Definitions: Discover currently available agent definition files following the same hierarchy as the assign command:
Scanning priority order (highest to lowest):
.claude/agents/*.md in the repository root~/.claude/agents/*.md in the user's home directoryFor each agent file:
Build a Current Agent Registry for comparison against agents_scanned in the assignment file.
Run Validation Checks: Perform the following checks and record results:
Check 1 — Coverage: Every task ID in tasks.md has a corresponding entry in assignments.
OK (has assignment) or UNASSIGNED (missing from assignments)Check 2 — Agent Existence: Every agent name referenced in assignments (except default) exists in the current agent registry.
OK (agent exists) or MISSING (agent file not found)Check 3 — Agent Conflicts: No agent name appears at multiple hierarchy levels with different definitions.
OK (no conflicts) or CONFLICT (same name, different levels — list which levels)Check 4 — Agent Drift: Compare agents_scanned from the assignment file against the current agent registry.
Check 5 — Frontmatter Validity: Each agent file referenced in assignments has valid YAML frontmatter with at minimum a description field.
OK (valid) or INVALID (missing or malformed frontmatter)Generate Validation Report: Output a structured report:
## Agent Assignment Validation Report
**Feature**: <feature-name>
**Assignment file**: <path to agent-assignments.yml>
**Validation time**: <timestamp>
### Summary
| Metric | Value |
|----------------------|-------|
| Total tasks | 15 |
| Assigned tasks | 15 |
| Unassigned tasks | 0 |
| Valid agents | 12 |
| Missing agents | 0 |
| Conflicts | 0 |
| Agent drift detected | No |
### Overall Status: ✓ PASS / ✗ FAIL
### Task Assignment Details
| Task ID | Assigned Agent | Status |
|---------|-----------------|------------|
| T001 | default | ✓ OK |
| T002 | backend-dev | ✓ OK |
| T003 | unknown-agent | ✗ MISSING |
| T004 | frontend-dev | ✓ OK |
### Issues Found (if any)
1. **MISSING**: Task T003 assigned to agent `unknown-agent` which does not exist at any hierarchy level
2. **UNASSIGNED**: Task T010 has no entry in agent-assignments.yml
3. **CONFLICT**: Agent `helper` found at both project and user level with different descriptions
4. **DRIFT**: Agent `api-dev` was available during assignment but has since been removed
### Recommended Actions
- Run `/speckit.agent-assign.assign` to reassign tasks with missing or conflicting agents
- Or manually edit `agent-assignments.yml` to fix specific entries
Final Verdict:
/speckit.agent-assign.executeIf PASS, suggest proceeding with /speckit.agent-assign.execute.
If FAIL, suggest running /speckit.agent-assign.assign to fix issues.
Note: This command is strictly read-only. It does not modify agent-assignments.yml, tasks.md, or any agent files.