ワンクリックで
graph-integrity-validator
Validates the agent graph for orphaned references and broken links. Runs automatically before any swarm execution.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Validates the agent graph for orphaned references and broken links. Runs automatically before any swarm execution.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Specialist agent for managing the AI workforce's own internal health, portability, and continuous learning. Auto-implements lessons into core protocols.
UI/UX design specialist for Astro 6 + Tailwind 4 + DaisyUI 5 stack. Provides design decisions, component layouts, and accessibility guidance.
Autonomous development agent for Astro 6 projects. Handles end-to-end feature implementation with minimal human intervention.
Pragmatic coding standards - concise, direct, no over-engineering, no unnecessary comments
API design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.
Main application building orchestrator. Creates full-stack applications from natural language requests. Determines project type, selects tech stack, coordinates agents.
| name | graph-integrity-validator |
| description | Validates the agent graph for orphaned references and broken links. Runs automatically before any swarm execution. |
| version | 1.0.0 |
Purpose: Automatically detect and prevent broken references in the agent system, ensuring 100% sync with knowledge and abilities.
Every reference in the system MUST have a corresponding source file. This is the "Backlink Rule" – a reference implies an obligation to maintain the target.
Every node in agents.graph.json with a skillPath MUST have:
SKILL.md file inside that directory// Pseudo-code for validation
for (const node of graph.nodes) {
if (node.skillPath && !existsSync(join('.agent', node.skillPath, 'SKILL.md'))) {
throw new GraphIntegrityError(`Orphaned Node: ${node.id} references missing skill at ${node.skillPath}`);
}
}
Every edge in agents.graph.json MUST have:
from node that exists in graph.nodesto node that exists in graph.nodesconst nodeIds = new Set(graph.nodes.map(n => n.id));
for (const edge of graph.edges) {
if (!nodeIds.has(edge.from)) throw new GraphIntegrityError(`Dangling Edge: 'from' node "${edge.from}" does not exist.`);
if (!nodeIds.has(edge.to)) throw new GraphIntegrityError(`Dangling Edge: 'to' node "${edge.to}" does not exist.`);
}
Every TeamNode with memberIds MUST have:
graph.nodesfor (const node of graph.nodes.filter(n => n.type === 'team')) {
for (const memberId of node.memberIds) {
if (!nodeIds.has(memberId)) {
throw new GraphIntegrityError(`Team "${node.id}" has orphaned member: "${memberId}"`);
}
}
}
When a violation is detected, the system should:
.agent/memory/integrity-violations.logTo prevent orphaned references, we implement a Backlink Registry.
agents.graph.json if not present..agent/memory/backlinks.json{
"lint-and-validate": {
"referencedBy": [
".agent/graph/agents.graph.json#edges[382]",
".agent/skills/clean-code/SKILL.md#line:161"
]
}
}
This file is auto-generated by a pre-commit hook or bootstrap script.
The bootstrap.ts script MUST run this validator as its first step.
// In bootstrap.ts
import { validateGraphIntegrity } from './validators/graph-integrity.js';
async function main() {
console.log('🔗 Validating Agent Graph Integrity...');
const violations = await validateGraphIntegrity();
if (violations.length > 0) {
console.error(`❌ ${violations.length} integrity violations found. Aborting.`);
violations.forEach(v => console.error(` - ${v}`));
process.exit(1);
}
console.log('✅ Graph Integrity: OK');
// ... rest of bootstrap
}
When an integrity error is discovered, the system should:
.agent/memory/lessons_learned.jsonorphaned-reference, type-mismatch, missing-import).agent/rules/LEARNED_RULES.md{
"id": "lesson-20260207-001",
"errorType": "orphaned-reference",
"description": "Node 'lint-and-validate' existed in graph but skill directory was deleted.",
"rootCause": "Manual deletion of skill folder without updating graph.json.",
"fix": "Removed orphaned node and edge from agents.graph.json.",
"preventativeRule": "Always use the `delete-skill.ts` script to remove skills. It handles backlink cleanup."
}