This repository has been archived on 2026-09-17. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
nixos-config/agents/catalog.json
pijukka 688f8cd157 agents/tests: repair roles.sh drift and a broken jq check
roles.sh had been red for a while, hiding everything behind whatever
failed first:

- planner.md was bumped to 4.2.0 (board-triggered split mode) without
  updating the test's hardcoded 4.1.0 expectations.
- reviewer.md had drifted two minor versions ahead of its catalog.json
  entry (1.6.0 registered vs. 1.8.0 actual) across two prior commits
  that never touched the catalog; catalog.json now matches.
- researcher.json's generic Bash(*) grant is an intentional, already
  deployed capability (docs/intent/research-pipeline-researcher-shell.md)
  that the blanket "no self-close settings file may hold Bash(*)" loop
  didn't know about; researcher.json is now a documented exception with
  its own check that the required deny-prefix list stays in place.
- fixer.md's Inspector/Fixer split reworded "erfolgreichen Review" to
  "erfolgreichem Review"; the substring assertion didn't follow.
- the operator.json permission check had a jq and/or precedence bug
  (missing parens around length == N clauses) that made it error out
  rather than actually check anything.

agents/tests/roles.sh, agents/tests/fixer-role.sh and
agents/tests/inspector-role.sh all pass end to end now.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T7UVrKsttMP9a6FiGFna9b
2026-09-10 12:00:49 +02:00

209 lines
7.8 KiB
JSON

{
"schema_version": 1,
"profile_policy": {
"sol_high_requires_measured_quality": true,
"defaults_are_configurable": true,
"running_processes_are_unchanged": true
},
"roles": [
{
"id": "dialog-agent",
"version": "1.0.0",
"status": "active",
"definition": "agent.md",
"start": "xmpp-worker",
"sandbox": "read-only",
"profile_id": "orchestrator"
},
{
"id": "builder",
"version": "2.1.0",
"status": "active",
"definition": "builder.md",
"start": "xmpp-worker",
"sandbox": "scoped-write"
},
{
"id": "graphics",
"version": "2.0.0",
"status": "active",
"definition": "graphics.md",
"start": "herdr-visible",
"sandbox": "per-assignment",
"profile_id": "grafiker"
},
{
"id": "administrator",
"version": "3.1.0",
"status": "active",
"definition": "admin.md",
"start": "herdr-visible",
"sandbox": "per-assignment",
"profile_id": "administrator"
},
{
"id": "agent-manager",
"version": "2.3.0",
"status": "active",
"definition": "agent-manager.md",
"start": "herdr-visible",
"sandbox": "per-assignment",
"profile_id": "agent-manager"
},
{
"id": "reviewer",
"version": "1.8.0",
"status": "active",
"definition": "reviewer.md",
"start": "herdr-visible",
"sandbox": "scoped-write",
"profile_id": "reviewer"
},
{
"id": "orga",
"version": "2.1.1",
"status": "active",
"definition": "orga.md",
"start": "herdr-visible",
"sandbox": "helper-only",
"profile_id": "orga"
},
{
"id": "planner",
"version": "4.2.0",
"status": "active",
"definition": "planner.md",
"start": "herdr-visible",
"sandbox": "scoped-write",
"profile_id": "planner"
},
{
"id": "researcher",
"version": "1.0.0",
"status": "active",
"definition": "researcher.md",
"start": "herdr-visible",
"sandbox": "scoped-write",
"profile_id": "researcher"
},
{
"id": "operator",
"version": "1.0.0",
"status": "active",
"definition": "operator.md",
"start": "board-headless",
"sandbox": "read-only",
"profile_id": "operator"
},
{
"id": "inspector",
"version": "1.0.0",
"status": "active",
"definition": "inspector.md",
"start": "board-headless",
"sandbox": "read-only"
},
{
"id": "fixer",
"version": "2.0.0",
"status": "active",
"definition": "fixer.md",
"start": "board-headless",
"sandbox": "isolated-worktree-write"
}
],
"model_profiles": [
{
"id": "orchestrator",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "fallback": null },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "medium", "settings_file": "agents/claude-settings/orchestrator.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
},
"notes": "Konfigurierbarer Startdefault für Dialog-Orchestrierung."
},
{
"id": "administrator",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "high", "fallback": { "model": "gpt-5.6-sol", "reasoning_effort": "high", "condition": "nur bei gemessener Qualitätsnotwendigkeit" } },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "high", "settings_file": "agents/claude-settings/administrator.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
}
},
{
"id": "agent-manager",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-sol", "reasoning_effort": "high", "fallback": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "condition": "Routineaufgabe" } },
"claude": { "model": "claude-opus-4-8", "reasoning_effort": "high", "settings_file": "agents/claude-settings/agent-manager.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
}
},
{
"id": "reviewer",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-sol", "reasoning_effort": "high", "fallback": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "condition": "Routineaufgabe" } },
"claude": { "model": "claude-opus-4-8", "reasoning_effort": "high", "settings_file": "agents/claude-settings/reviewer.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
}
},
{
"id": "planner",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "high", "fallback": null },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "high", "settings_file": "agents/claude-settings/planner.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
}
},
{
"id": "researcher",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "fallback": { "model": "gpt-5.6-luna", "reasoning_effort": "low", "condition": "Routineinventur" } },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "medium", "settings_file": "agents/claude-settings/researcher.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineinventur" } }
}
},
{
"id": "operator",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "high", "fallback": null },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "high", "settings_file": "agents/claude-settings/operator.json", "fallback": null }
},
"notes": "Planungsstarkes Profil für atomare Board-Entscheidungen und Builder-only-Zerlegung."
},
{
"id": "grafiker",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "fallback": { "model": "gpt-5.6-luna", "reasoning_effort": "low", "condition": "reines Resize" } },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "medium", "settings_file": "agents/claude-settings/grafiker.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "reines Resize" } }
}
},
{
"id": "orga",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-terra", "reasoning_effort": "medium", "fallback": null },
"claude": { "model": "claude-sonnet-5", "reasoning_effort": "medium", "settings_file": "agents/claude-settings/orga.json", "fallback": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "low", "condition": "Routineaufgabe" } }
}
},
{
"id": "dispatcher",
"default_runtime": "none",
"runtimes": {
"none": { "model": null, "reasoning_effort": null, "fallback": null }
},
"execution": "no-llm",
"runtime_policy": "no-llm; kein Codex- oder Claude-Prozess"
},
{
"id": "finance",
"default_runtime": "codex",
"runtimes": {
"codex": { "model": "gpt-5.6-luna", "reasoning_effort": "medium", "fallback": null },
"claude": { "model": "claude-haiku-4-5-20251001", "reasoning_effort": "medium", "settings_file": "agents/claude-settings/finance.json", "fallback": null }
},
"legacy_fallbacks": "preserve-existing-historical-fallbacks"
}
]
}