role.json 1.25 KB
{
  "role_id": "validator",
  "description": "graphlemon Validator: independently verifies a task, PASS/FAIL/INCONCLUSIVE, read-only on source.",
  "migrated_from_profile": "qa",
  "identity": {
    "soul_md_path": "agents/validator/SOUL.md",
    "agents_md_path": "agents/validator/AGENTS.md"
  },
  "context": {
    "memory": "project"
  },
  "model": "claude-sonnet-5",
  "skills": [
    "qa-task-validation",
    "unattended-agent-operations",
    "design-dynamic-work-graph",
    "unknown-scope-defect-sweep",
    "skill-defect-remediation"
  ],
  "applications": {
    "mcp_servers": []
  },
  "workflows": {
    "dynamic_planning": "generic"
  },
  "permissions": {
    "tools": ["Read", "Bash", "Grep", "Glob"],
    "disallowed_tools": ["Edit", "Write"],
    "notes": [
      {
        "constraint": "不提交、推送、reset、清理或覆盖用户工作树",
        "enforced": "prose_only",
        "detail": "scoped Bash(...) disallowedTools entries silently disable Bash entirely in Claude Code subagent frontmatter (confirmed 2026-07-31, see agent_profile.py's prior FRONTMATTER comment) -- this constraint relies on AGENTS.md prose, not a tool-level block."
      }
    ]
  },
  "acceptance_criteria": {
    "ref": "docs/sdd/06-验收与测试锚点.md"
  }
}