- Create agent-evolution/ directory with standalone dashboard - Add interactive HTML dashboard with agent/model matrix - Add heatmap view for agent-model compatibility scores - Add recommendations tab with optimization suggestions - Add Gitea integration preparation (history timeline) - Add Docker configuration for deployment - Add build scripts for standalone HTML generation - Add sync scripts for agent data synchronization - Add milestone and issues documentation - Add skills and rules for evolution sync - Update AGENTS.md with dashboard documentation - Update package.json with evolution scripts Features: - 28 agents with model assignments and fit scores - 8 models with benchmarks (SWE-bench, RULER, Terminal) - 11 recommendations for model optimization - History timeline with agent changes - Interactive modal windows for model details - Filter and search functionality - Russian language interface - Works offline (file://) with embedded data Docker: - Dockerfile for standalone deployment - docker-compose.evolution.yml - docker-run.sh/docker-run.bat scripts NPM scripts: - sync:evolution - sync and build dashboard - evolution:open - open in browser - evolution:dashboard - start dev server Status: PAUSED - foundation complete, Gitea integration pending
183 lines
6.4 KiB
JSON
183 lines
6.4 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "Agent Versions Schema",
|
|
"description": "Schema for tracking agent evolution in APAW",
|
|
"type": "object",
|
|
"required": ["version", "lastUpdated", "agents", "providers", "evolution_metrics"],
|
|
"properties": {
|
|
"$schema": {
|
|
"type": "string",
|
|
"description": "Reference to this schema"
|
|
},
|
|
"version": {
|
|
"type": "string",
|
|
"pattern": "^\\d+\\.\\d+\\.\\d+$",
|
|
"description": "Schema version (semver)"
|
|
},
|
|
"lastUpdated": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "ISO 8601 timestamp of last update"
|
|
},
|
|
"agents": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"required": ["current", "history", "performance_log"],
|
|
"properties": {
|
|
"current": {
|
|
"type": "object",
|
|
"required": ["model", "provider", "category", "mode", "description"],
|
|
"properties": {
|
|
"model": {
|
|
"type": "string",
|
|
"description": "Current model ID (e.g., ollama-cloud/qwen3-coder:480b)"
|
|
},
|
|
"provider": {
|
|
"type": "string",
|
|
"enum": ["Ollama", "OpenRouter", "Groq", "Unknown"],
|
|
"description": "Model provider"
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"description": "Agent category (Core Dev, QA, Security, etc.)"
|
|
},
|
|
"mode": {
|
|
"type": "string",
|
|
"enum": ["primary", "subagent", "all"],
|
|
"description": "Agent invocation mode"
|
|
},
|
|
"color": {
|
|
"type": "string",
|
|
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
"description": "UI color in hex format"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Agent purpose description"
|
|
},
|
|
"benchmark": {
|
|
"type": "object",
|
|
"properties": {
|
|
"swe_bench": { "type": "number", "minimum": 0, "maximum": 100 },
|
|
"ruler_1m": { "type": "number", "minimum": 0, "maximum": 100 },
|
|
"terminal_bench": { "type": "number", "minimum": 0, "maximum": 100 },
|
|
"pinch_bench": { "type": "number", "minimum": 0, "maximum": 100 },
|
|
"fit_score": { "type": "number", "minimum": 0, "maximum": 100 }
|
|
}
|
|
},
|
|
"capabilities": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"description": "List of agent capabilities"
|
|
},
|
|
"recommendations": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["target", "reason", "priority"],
|
|
"properties": {
|
|
"target": { "type": "string" },
|
|
"reason": { "type": "string" },
|
|
"priority": {
|
|
"type": "string",
|
|
"enum": ["critical", "high", "medium", "low"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": ["active", "new", "deprecated", "testing"]
|
|
}
|
|
}
|
|
},
|
|
"history": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["date", "commit", "type", "to", "reason", "source"],
|
|
"properties": {
|
|
"date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"commit": { "type": "string" },
|
|
"type": {
|
|
"type": "string",
|
|
"enum": ["model_change", "prompt_change", "agent_created", "agent_removed", "capability_change"]
|
|
},
|
|
"from": { "type": ["string", "null"] },
|
|
"to": { "type": "string" },
|
|
"reason": { "type": "string" },
|
|
"source": {
|
|
"type": "string",
|
|
"enum": ["git", "gitea", "manual"]
|
|
},
|
|
"issue_number": { "type": "integer" }
|
|
}
|
|
}
|
|
},
|
|
"performance_log": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["date", "issue", "score", "success"],
|
|
"properties": {
|
|
"date": { "type": "string", "format": "date-time" },
|
|
"issue": { "type": "integer" },
|
|
"score": { "type": "number", "minimum": 0, "maximum": 10 },
|
|
"duration_ms": { "type": "integer" },
|
|
"success": { "type": "boolean" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"providers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"required": ["models"],
|
|
"properties": {
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"swe_bench": { "type": "number" },
|
|
"terminal_bench": { "type": "number" },
|
|
"ruler_1m": { "type": "number" },
|
|
"pinch_bench": { "type": "number" },
|
|
"context": { "type": "string" },
|
|
"active_params": { "type": "string" },
|
|
"speed_tps": { "type": "number" },
|
|
"rpm": { "type": "number" },
|
|
"rpd": { "type": "number" },
|
|
"tpm": { "type": "string" },
|
|
"tpd": { "type": "string" },
|
|
"free": { "type": "boolean" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"evolution_metrics": {
|
|
"type": "object",
|
|
"required": ["total_agents", "agents_with_history", "pending_recommendations", "last_sync", "sync_sources"],
|
|
"properties": {
|
|
"total_agents": { "type": "integer", "minimum": 0 },
|
|
"agents_with_history": { "type": "integer", "minimum": 0 },
|
|
"pending_recommendations": { "type": "integer", "minimum": 0 },
|
|
"last_sync": { "type": "string", "format": "date-time" },
|
|
"sync_sources": {
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |