mirror of
https://github.com/msitarzewski/agency-agents.git
synced 2026-06-26 19:54:37 +03:00
4d07efdb70
strategy/ holds 16 markdown files and ZERO have agent frontmatter — they're playbooks (playbooks/phase-*.md), runbooks (runbooks/scenario-*.md), and briefs (EXECUTIVE-BRIEF.md, QUICKSTART.md, nexus-strategy.md), not agent definitions. There are 16 real agent divisions, 232 agents; strategy is not one of them. #592 added `strategy` to lint-agents.sh AGENT_DIRS and the lint workflow paths (to match divisions.json), which made CI lint those 16 frontmatter-less docs as agents and fail every one with "missing frontmatter opening ---". So any PR touching strategy/ broke CI. The original lint-agents.sh correctly excluded strategy; #592 misread that deliberate exclusion as drift (same mistake as integrations/ in #593). Fix: remove strategy from convert.sh / lint-agents.sh AGENT_DIRS, the lint workflow, and divisions.json; add it to NON_DIVISION_DIRS in check-divisions.sh. divisions.json is now 16, matching the app's parse_agent count exactly. Also add a content-derived backstop to check-divisions.sh: every division must contain at least one .md with '---' frontmatter, or the build fails. This is what stops a docs/playbook directory from being registered as an empty agent division again — regardless of whether someone remembers the exclude list. check-divisions.sh PASSES at 16; negative-tested that re-adding strategy fails with "division 'strategy' has no agent files". Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
22 lines
2.3 KiB
JSON
22 lines
2.3 KiB
JSON
{
|
|
"_note": "Source of truth for the agent division set. Each division (a top-level agent directory) maps to a display label, a Lucide icon name (PascalCase), and a brand color (hex). Consumed by the Agency Agents app and any other catalog tooling. scripts/check-divisions.sh (CI: check-divisions.yml) fails the build if this list disagrees with the directories on disk, the AGENT_DIRS arrays in scripts/convert.sh and scripts/lint-agents.sh, or the path filters in lint-agents.yml. To add a division: create its directory, add an entry here, then run scripts/check-divisions.sh and update wherever it points. NOT every top-level directory is a division: integrations/ holds per-tool conversion OUTPUTS written by scripts/convert.sh (not source agents); strategy/ holds playbooks and runbooks with no agent frontmatter; both — plus examples/ and scripts/ — are excluded via NON_DIVISION_DIRS in check-divisions.sh. A division must contain at least one frontmatter agent file.",
|
|
"divisions": {
|
|
"academic": { "label": "Academic", "icon": "GraduationCap", "color": "#8B5CF6" },
|
|
"design": { "label": "Design", "icon": "PenTool", "color": "#EC4899" },
|
|
"engineering": { "label": "Engineering", "icon": "Code", "color": "#3B82F6" },
|
|
"finance": { "label": "Finance", "icon": "DollarSign", "color": "#22C55E" },
|
|
"game-development": { "label": "Game Development", "icon": "Gamepad2", "color": "#A855F7" },
|
|
"gis": { "label": "GIS", "icon": "Map", "color": "#14B8A6" },
|
|
"marketing": { "label": "Marketing", "icon": "Megaphone", "color": "#F97316" },
|
|
"paid-media": { "label": "Paid Media", "icon": "Target", "color": "#EAB308" },
|
|
"product": { "label": "Product", "icon": "Box", "color": "#D946EF" },
|
|
"project-management": { "label": "Project Management", "icon": "ClipboardList", "color": "#0EA5E9" },
|
|
"sales": { "label": "Sales", "icon": "TrendingUp", "color": "#10B981" },
|
|
"security": { "label": "Security", "icon": "ShieldCheck", "color": "#EF4444" },
|
|
"spatial-computing": { "label": "Spatial Computing", "icon": "Boxes", "color": "#06B6D4" },
|
|
"specialized": { "label": "Specialized", "icon": "Sparkles", "color": "#6366F1" },
|
|
"support": { "label": "Support", "icon": "LifeBuoy", "color": "#84CC16" },
|
|
"testing": { "label": "Testing", "icon": "FlaskConical", "color": "#F59E0B" }
|
|
}
|
|
}
|