Files
awoooi/docs/evaluations/ai_agent_deployment_layout_2026-06-11.json
Your Name e427af3cb2
All checks were successful
CD Pipeline / tests (push) Successful in 1m24s
Code Review / ai-code-review (push) Successful in 15s
CD Pipeline / build-and-deploy (push) Successful in 6m5s
CD Pipeline / post-deploy-checks (push) Successful in 1m37s
feat(governance): 接入三 Agent 佈建布局
2026-06-11 11:27:50 +08:00

977 lines
47 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"schema_version": "ai_agent_deployment_layout_v1",
"generated_at": "2026-06-11T18:20:00+08:00",
"program_status": {
"overall_completion_percent": 45,
"current_priority": "P1",
"current_task_id": "P1-402",
"next_task_id": "P1-403",
"read_only_mode": true,
"deployment_authority": "layout_only_no_runtime_deploy"
},
"agent_contracts": [
{
"agent_id": "openclaw",
"display_name": "OpenClaw",
"primary_specialty": "生產仲裁、風險判斷、HITL 關卡與執行前後驗證",
"deployment_lane": "production_decision_core",
"allowed_autonomy": [
"只讀診斷",
"風險分級",
"批准包審查",
"Telegram action-required 分流",
"批准後的 dry-run / 執行仲裁"
],
"must_delegate_to": [
"Hermes 負責治理、文件、降噪與盤點彙整",
"NemoTron 負責離線模型能力比較與 replay 評分"
],
"blocked_actions": [
"未批准的生產寫入",
"未批准的 destructive operation",
"未批准的 provider route 切換",
"未批准的 Telegram 直接發送",
"未通過 replacement gate 前降級或取代自身生產角色"
],
"learning_scope": [
"incident lifecycle",
"approval outcome",
"post-execution verification",
"playbook trust score",
"alert grouping quality"
]
},
{
"agent_id": "hermes",
"display_name": "Hermes",
"primary_specialty": "治理、知識管理、文件、套件/供應鏈、降噪與跨專案盤點",
"deployment_lane": "governance_knowledge_and_reporting",
"allowed_autonomy": [
"只讀盤點",
"Runbook / KM 草稿",
"市場與依賴漂移摘要",
"告警降噪提案",
"批准包起草"
],
"must_delegate_to": [
"OpenClaw 仲裁任何生產、Telegram、host mutation 或 rollback",
"NemoTron 評估模型/工具能力與 replay 結果"
],
"blocked_actions": [
"直接改生產環境",
"直接發送 Telegram 通知",
"直接修改 Secret",
"自行升級套件或 SDK",
"自行切換 AI provider"
],
"learning_scope": [
"runbook freshness",
"docs drift",
"dependency drift",
"service health evidence gap",
"operator review feedback"
]
},
{
"agent_id": "nemotron",
"display_name": "NemoTron / Nemotron",
"primary_specialty": "離線專家評估、模型工具能力比較、NIM/NVIDIA replay 與長任務 Agent 能力驗證",
"deployment_lane": "offline_evaluator_and_specialist_candidate",
"allowed_autonomy": [
"sanitized request pack 分析",
"5-record smoke 評分",
"50-record replay 結果比較",
"工具呼叫輸出合約檢查",
"候選模型能力矩陣更新"
],
"must_delegate_to": [
"OpenClaw 仲裁生產風險與是否可進 shadow/canary",
"Hermes 彙整市場來源、文件與 operator 報告"
],
"blocked_actions": [
"直接讀取 production secret",
"未批准的 paid API / NIM 呼叫",
"未批准的 SDK 安裝",
"未通過 smoke gate 前進 full replay",
"自行進 shadow/canary 或生產路由"
],
"learning_scope": [
"smoke gate failures",
"output contract completeness",
"latency budget",
"tool calling reliability",
"OpenClaw same-run baseline delta"
]
}
],
"domains": [
{
"domain_id": "hosts",
"display_name": "主機",
"description": "110 / 111 / 112 / 120 / 121 / 188 的只讀監控、診斷、備份與批准後修復佈局。"
},
{
"domain_id": "packages",
"display_name": "套件與建置",
"description": "Python、pnpm/npm、Docker base image、CVE、license、digest 與 drift。"
},
{
"domain_id": "tools",
"display_name": "工具",
"description": "Gitea、Harbor、Prometheus、Alertmanager、SigNoz、Sentry、Open-WebUI、Telegram、Ansible。"
},
{
"domain_id": "services",
"display_name": "服務",
"description": "API、Web、AwoooP、IwoooS、PostgreSQL、Redis、K8s workload 與內部控制面。"
},
{
"domain_id": "projects",
"display_name": "專案",
"description": "AWOOOI 及已納入治理視野的外部/相鄰專案。"
},
{
"domain_id": "websites",
"display_name": "網站前後台",
"description": "公開站、治理後台、告警後台、AwoooP 後台、IwoooS 後台。"
},
{
"domain_id": "learning",
"display_name": "學習與協作",
"description": "AgentSession、KM、Playbook trust、market watch、replay harness。"
}
],
"deployment_targets": [
{
"target_id": "host_110",
"domain_id": "hosts",
"display_name": "110 DevOps / Gitea runner / monitoring host",
"target_type": "host",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["host health diagnosis", "runner health review", "backup freshness review", "approval package"],
"telegram_policy": "action_required",
"learning_inputs": ["Gitea workflow result", "runner evidence", "backup status", "Alertmanager route"],
"communication_channels": ["AwoooP approval", "Telegram failure/action-required", "Prometheus metrics"],
"approval_gate": "host mutation requires human approval",
"evidence_refs": ["infra/ansible/inventory/hosts.yml", "docs/evaluations/gitea_workflow_runner_health_2026-06-05.json"],
"next_action": "把 runner / backup / monitoring 狀態納入 Agent 協作節點,但只允許準備修復提案。"
},
{
"target_id": "host_188",
"domain_id": "hosts",
"display_name": "188 AI / Web / PostgreSQL / Redis / SigNoz host",
"target_type": "host",
"primary_agent": "openclaw",
"supporting_agents": ["hermes", "nemotron"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["AI provider health review", "database/cache health review", "observability review", "NemoTron candidate evidence"],
"telegram_policy": "action_required",
"learning_inputs": ["AI route matrix", "DB backup status", "SigNoz/ClickHouse evidence", "NemoTron smoke result"],
"communication_channels": ["AwoooP approval", "Telegram failure/action-required", "Prometheus metrics"],
"approval_gate": "host mutation, service restart, provider route change require explicit approval",
"evidence_refs": ["infra/ansible/inventory/hosts.yml", "docs/evaluations/ai_provider_route_matrix_2026-06-05.json"],
"next_action": " OpenClaw Hermes NemoTron host-188 "
},
{
"target_id": "host_111",
"domain_id": "hosts",
"display_name": "111 Ollama fallback host",
"target_type": "host",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["fallback health observation", "route readiness review"],
"telegram_policy": "failure_only",
"learning_inputs": ["Ollama health", "provider failover evidence"],
"communication_channels": ["Prometheus metrics", "Telegram failure-only"],
"approval_gate": "SSH / service operation requires approval",
"evidence_refs": ["infra/ansible/inventory/hosts.yml", "docs/runbooks/RUNBOOK-OLLAMA-FAILOVER.md"],
"next_action": " fallback provider"
},
{
"target_id": "host_120",
"domain_id": "hosts",
"display_name": "120 K3s master / blocked recovery host",
"target_type": "host",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "blocked_by_gate",
"automation_level": "blocked",
"capabilities": ["blocked-state tracking", "recovery checklist", "backup config capture blocker"],
"telegram_policy": "action_required",
"learning_inputs": ["cold-start scorecard", "backup config capture", "host reachability"],
"communication_channels": ["Telegram action-required", "LOGBOOK", "cold-start runbook"],
"approval_gate": "console/SSH recovery evidence required before any automation",
"evidence_refs": ["docs/runbooks/BACKUP-STATUS.md", "docs/runbooks/FULL-STACK-COLD-START-SOP.md"],
"next_action": " blocked console / SSH "
},
{
"target_id": "host_121",
"domain_id": "hosts",
"display_name": "121 K3s peer host",
"target_type": "host",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["K3s readiness observation", "failover context", "backup/cold-start evidence"],
"telegram_policy": "failure_only",
"learning_inputs": ["K3s node readiness", "host connectivity", "cold-start scorecard"],
"communication_channels": ["Prometheus metrics", "Telegram failure-only"],
"approval_gate": "K3s mutation requires maintenance window approval",
"evidence_refs": ["infra/ansible/inventory/hosts.yml", "docs/runbooks/K3S-OPTIMIZATION-RUNBOOK.md"],
"next_action": " 121 K3s readiness "
},
{
"target_id": "host_112",
"domain_id": "hosts",
"display_name": "112 Kali / security evidence host",
"target_type": "host",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["security evidence catalog", "owner response package", "read-only posture projection"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["IwoooS posture projection", "owner response evidence"],
"communication_channels": ["IwoooS read-only handoff", "operator review"],
"approval_gate": "active scan / host update / credentialed scan require independent approval",
"evidence_refs": ["docs/security/iwooos-posture-projection.snapshot.json", "infra/ansible/inventory/hosts.yml"],
"next_action": " active scan"
},
{
"target_id": "pkg_python_api",
"domain_id": "packages",
"display_name": "API Python dependencies",
"target_type": "package_set",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["dependency inventory", "CVE/license drift review", "upgrade approval package"],
"telegram_policy": "daily_summary_only",
"learning_inputs": ["package inventory", "CVE policy", "dependency drift plan"],
"communication_channels": ["governance UI", "daily summary only"],
"approval_gate": "dependency upgrade requires approval package",
"evidence_refs": ["docs/evaluations/package_supply_chain_inventory_2026-06-04.json"],
"next_action": "Hermes OpenClaw "
},
{
"target_id": "pkg_web_pnpm",
"domain_id": "packages",
"display_name": "Web pnpm/npm dependencies",
"target_type": "package_set",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["package inventory", "lockfile drift review", "upgrade proposal"],
"telegram_policy": "daily_summary_only",
"learning_inputs": ["javascript package inventory", "dependency drift plan"],
"communication_channels": ["governance UI", "daily summary only"],
"approval_gate": "package upgrade / install requires approval",
"evidence_refs": ["docs/evaluations/javascript_package_inventory_2026-06-04.json"],
"next_action": " npm/pnpm install"
},
{
"target_id": "docker_build_surface",
"domain_id": "packages",
"display_name": "Docker base image and build surface",
"target_type": "container_image",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["digest drift review", "base image risk review", "build-surface proposal"],
"telegram_policy": "action_required",
"learning_inputs": ["docker build surface inventory", "CVE policy"],
"communication_channels": ["governance UI", "Telegram action-required for critical drift"],
"approval_gate": "image digest/base image change requires review and deploy gate",
"evidence_refs": ["docs/evaluations/docker_build_surface_inventory_2026-06-04.json"],
"next_action": " critical image drift OpenClaw Hermes "
},
{
"target_id": "gitea_actions",
"domain_id": "tools",
"display_name": "Gitea Actions and host runner",
"target_type": "workflow_tool",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["workflow health matrix", "runner attestation", "notification hygiene"],
"telegram_policy": "action_required",
"learning_inputs": ["workflow results", "runner evidence", "CI failure classes"],
"communication_channels": ["Gitea Actions summary", "Telegram actionable/failure only"],
"approval_gate": "workflow modification requires review",
"evidence_refs": ["docs/evaluations/gitea_workflow_runner_health_2026-06-05.json", ".gitea/workflows/"],
"next_action": "Hermes runner / workflow gapsOpenClaw workflow "
},
{
"target_id": "harbor_registry",
"domain_id": "tools",
"display_name": "Harbor registry",
"target_type": "registry",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["backup freshness", "image inventory", "registry health summary"],
"telegram_policy": "failure_only",
"learning_inputs": ["backup target inventory", "registry backup evidence"],
"communication_channels": ["backup policy", "Telegram failure-only"],
"approval_gate": "registry cleanup / retention change requires approval",
"evidence_refs": ["scripts/backup/backup-harbor.sh", "docs/evaluations/backup_dr_target_inventory_2026-06-04.json"],
"next_action": " backup / freshness image"
},
{
"target_id": "prometheus_alertmanager",
"domain_id": "tools",
"display_name": "Prometheus / Alertmanager",
"target_type": "observability",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["alert contract review", "noise reduction proposal", "E2E chain evidence"],
"telegram_policy": "action_required",
"learning_inputs": ["alert rules", "alert chain metrics", "notification outcome"],
"communication_channels": ["Alertmanager webhook", "Telegram action-required"],
"approval_gate": "alert rule deploy / silence requires approval",
"evidence_refs": ["docs/evaluations/observability_contract_matrix_2026-06-05.json", "docs/adr/ADR-035-telegram-alert-chain-enforcement.md"],
"next_action": " deploy-alerts gate"
},
{
"target_id": "signoz_clickhouse",
"domain_id": "tools",
"display_name": "SigNoz / ClickHouse",
"target_type": "observability",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["trace evidence", "log evidence", "storage health review"],
"telegram_policy": "action_required",
"learning_inputs": ["SigNoz alert", "ClickHouse health", "trace/log evidence"],
"communication_channels": ["governance UI", "Telegram action-required"],
"approval_gate": "query-heavy or retention change requires approval",
"evidence_refs": ["docs/evaluations/observability_contract_matrix_2026-06-05.json", "ops/signoz"],
"next_action": "Hermes OpenClaw storage / retention "
},
{
"target_id": "sentry",
"domain_id": "tools",
"display_name": "Sentry",
"target_type": "observability",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["issue summary", "frontend/backend error drift", "release evidence"],
"telegram_policy": "action_required",
"learning_inputs": ["Sentry issue class", "release marker", "frontend/backend route"],
"communication_channels": ["governance UI", "Telegram action-required"],
"approval_gate": "Sentry DSN / project setting change requires approval",
"evidence_refs": ["apps/web/src/instrumentation.ts", "scripts/backup/backup-sentry.sh"],
"next_action": " secret/ Sentry "
},
{
"target_id": "open_webui",
"domain_id": "tools",
"display_name": "Open-WebUI / AI workspace",
"target_type": "ai_tool",
"primary_agent": "nemotron",
"supporting_agents": ["hermes", "openclaw"],
"deployment_state": "candidate_only",
"automation_level": "observe_only",
"capabilities": ["model evaluation evidence", "AI artifact inventory", "offline specialist review"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["AI artifact backup", "model evaluation", "operator review"],
"communication_channels": ["offline report", "governance UI"],
"approval_gate": "external model call / NIM route requires cost and data-boundary approval",
"evidence_refs": ["scripts/backup/backup-open-webui.sh", "docs/evaluations/agent_nemotron_contract_tuned_smoke_matrix_2026-06-02.json"],
"next_action": "NemoTron production route"
},
{
"target_id": "telegram_gateway",
"domain_id": "tools",
"display_name": "Telegram Gateway / Bot alert chain",
"target_type": "notification_gateway",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "hitl_execute_after_approval",
"capabilities": ["failure-only routing", "approval card", "dedup", "E2E validation"],
"telegram_policy": "approval_required",
"learning_inputs": ["notification outcome", "dedup result", "operator button action"],
"communication_channels": ["Telegram Bot", "AwoooP approval", "alert operation log"],
"approval_gate": "direct send / bot token change / chat target change requires approval and E2E smoke",
"evidence_refs": ["apps/api/src/services/telegram_gateway.py", "docs/adr/ADR-035-telegram-alert-chain-enforcement.md"],
"next_action": " Agent Gateway Agent token "
},
{
"target_id": "ansible_control",
"domain_id": "tools",
"display_name": "Ansible host control plane",
"target_type": "host_iac",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "read_only_layout",
"automation_level": "hitl_execute_after_approval",
"capabilities": ["check-mode proposal", "host-state drift", "rollback plan"],
"telegram_policy": "approval_required",
"learning_inputs": ["Ansible check-mode", "host textfile exporter", "operator approval outcome"],
"communication_channels": ["AwoooP approval", "Telegram approval-required"],
"approval_gate": "any ansible apply requires independent human approval",
"evidence_refs": ["docs/runbooks/ANSIBLE-OPERATING-MODEL.md", "infra/ansible/inventory/hosts.yml"],
"next_action": " check-mode apply "
},
{
"target_id": "awoooi_api",
"domain_id": "services",
"display_name": "AWOOOI API backend",
"target_type": "api",
"primary_agent": "openclaw",
"supporting_agents": ["hermes", "nemotron"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["incident decision", "MCP context", "agent API snapshots", "post-execution verification"],
"telegram_policy": "failure_only",
"learning_inputs": ["incident", "timeline event", "approval record", "agent snapshot"],
"communication_channels": ["API", "Redis stream", "Telegram failure-only"],
"approval_gate": "runtime deploy / DB migration / provider route change requires CD gate",
"evidence_refs": ["apps/api/src/api/v1/agents.py", "docs/evaluations/runtime_surface_inventory_2026-06-05.json"],
"next_action": " API"
},
{
"target_id": "awoooi_web",
"domain_id": "services",
"display_name": "AWOOOI public web frontend",
"target_type": "web",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["frontend evidence display", "i18n review", "route health summary"],
"telegram_policy": "failure_only",
"learning_inputs": ["browser smoke", "Sentry issue", "i18n validation"],
"communication_channels": ["governance UI", "Sentry", "Telegram failure-only"],
"approval_gate": "frontend deploy requires CD validation and production smoke",
"evidence_refs": ["apps/web/src/app/[locale]/governance/page.tsx", "docs/evaluations/runtime_surface_inventory_2026-06-05.json"],
"next_action": "Hermes UI/OpenClaw "
},
{
"target_id": "governance_backoffice",
"domain_id": "services",
"display_name": "Governance backoffice",
"target_type": "backoffice",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["automation inventory", "agent market", "service health", "deployment layout display"],
"telegram_policy": "action_required",
"learning_inputs": ["snapshot freshness", "operator review", "blocked gate count"],
"communication_channels": ["governance UI", "AwoooP work item"],
"approval_gate": "UI display is not runtime authorization",
"evidence_refs": ["apps/web/src/app/[locale]/governance/tabs/automation-inventory-tab.tsx"],
"next_action": " layout API UI"
},
{
"target_id": "awooop_control_plane",
"domain_id": "services",
"display_name": "AwoooP control plane",
"target_type": "control_plane",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "hitl_execute_after_approval",
"capabilities": ["work item", "approval", "truth chain", "run state"],
"telegram_policy": "approval_required",
"learning_inputs": ["approval decision", "run state", "operator timeline"],
"communication_channels": ["AwoooP approvals", "Telegram approval card"],
"approval_gate": "AwoooP work item is not security or production approval by itself",
"evidence_refs": ["apps/web/src/app/[locale]/awooop/page.tsx", "docs/awooop/MASTER-WORKPLAN.md"],
"next_action": "OpenClaw AwoooP / Agent "
},
{
"target_id": "iwooos_security_surface",
"domain_id": "services",
"display_name": "IwoooS security surface",
"target_type": "security_surface",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["read-only evidence", "owner response packet", "security posture"],
"telegram_policy": "action_required",
"learning_inputs": ["owner response gate", "redacted evidence refs", "scope handoff"],
"communication_channels": ["IwoooS page", "operator review", "Telegram action-required only"],
"approval_gate": "active runtime / scan / host update remains false until independent approval",
"evidence_refs": ["apps/web/src/app/[locale]/iwooos/page.tsx", "docs/security/iwooos-posture-projection.snapshot.json"],
"next_action": "Hermes OpenClaw active runtime gate"
},
{
"target_id": "postgresql_primary",
"domain_id": "services",
"display_name": "PostgreSQL primary data layer",
"target_type": "database",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["connection health", "backup freshness", "migration risk", "slow query evidence"],
"telegram_policy": "failure_only",
"learning_inputs": ["DB alert", "backup status", "migration outcome"],
"communication_channels": ["Prometheus", "backup status", "Telegram failure-only"],
"approval_gate": "migration / restore / schema change requires approval and backup evidence",
"evidence_refs": ["apps/api/migrations/", "docs/evaluations/backup_dr_readiness_matrix_2026-06-04.json"],
"next_action": "OpenClaw DB Hermes migration "
},
{
"target_id": "redis_cache",
"domain_id": "services",
"display_name": "Redis / Stream / cache layer",
"target_type": "cache",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["stream backlog review", "cache health", "agent bus readiness"],
"telegram_policy": "failure_only",
"learning_inputs": ["Redis alert", "agent stream backlog", "approval outcome"],
"communication_channels": ["Prometheus", "Agent stream", "Telegram failure-only"],
"approval_gate": "flush / restart / data mutation requires approval",
"evidence_refs": ["docs/evaluations/service_health_gap_matrix_2026-06-05.json", "docs/adr/ADR-082-multi-agent-collaboration.md"],
"next_action": " Redis stream Agent "
},
{
"target_id": "k8s_workloads",
"domain_id": "services",
"display_name": "K8s workloads / manifests",
"target_type": "k8s",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "dry_run_only",
"capabilities": ["manifest mapping", "rollout evidence", "drift interpretation", "dry-run proposal"],
"telegram_policy": "action_required",
"learning_inputs": ["runtime surface inventory", "drift report", "post-execution verifier"],
"communication_channels": ["AwoooP approval", "Telegram action-required", "Prometheus"],
"approval_gate": "kubectl apply / rollout / scale / delete requires approval",
"evidence_refs": ["k8s/awoooi-prod/", "docs/evaluations/runtime_surface_inventory_2026-06-05.json"],
"next_action": "OpenClaw Hermes manifest runbook"
},
{
"target_id": "project_awoooi",
"domain_id": "projects",
"display_name": "AWOOOI core project",
"target_type": "project",
"primary_agent": "openclaw",
"supporting_agents": ["hermes", "nemotron"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["incident governance", "agent market governance", "runtime truth", "deployment evidence"],
"telegram_policy": "action_required",
"learning_inputs": ["LOGBOOK", "HARD_RULES", "market watch", "runtime smoke"],
"communication_channels": ["Gitea", "AwoooP", "Telegram", "governance UI"],
"approval_gate": "production deploy and provider changes require existing CD/HITL gates",
"evidence_refs": ["docs/HARD_RULES.md", "docs/LOGBOOK.md"],
"next_action": " Agent AWOOOI "
},
{
"target_id": "project_awooop",
"domain_id": "projects",
"display_name": "AwoooP operations project surface",
"target_type": "project",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "hitl_execute_after_approval",
"capabilities": ["work item", "approval queue", "run monitor", "contract governance"],
"telegram_policy": "approval_required",
"learning_inputs": ["work item status", "approval outcome", "truth chain"],
"communication_channels": ["AwoooP UI", "Telegram approval card"],
"approval_gate": "AwoooP approval is necessary but not sufficient for security or host mutation",
"evidence_refs": ["docs/awooop/MASTER-WORKPLAN.md", "apps/web/src/app/[locale]/awooop/"],
"next_action": " Agent AwoooP work item templates"
},
{
"target_id": "project_iwooos",
"domain_id": "projects",
"display_name": "IwoooS security governance",
"target_type": "project",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["scope handoff", "owner response gate", "redacted evidence"],
"telegram_policy": "action_required",
"learning_inputs": ["IwoooS posture projection", "owner response state"],
"communication_channels": ["IwoooS UI", "operator review"],
"approval_gate": "UI-visible state must not be treated as runtime authorization",
"evidence_refs": ["docs/security/iwooos-posture-projection.snapshot.json"],
"next_action": "Hermes OpenClaw runtime gate "
},
{
"target_id": "project_vibework",
"domain_id": "projects",
"display_name": "VibeWork adjacent product",
"target_type": "adjacent_project",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["boundary inventory", "release evidence summary", "alert routing expectation"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["cross-project handoff", "runtime evidence if explicitly supplied"],
"communication_channels": ["operator report only"],
"approval_gate": "separate repo/runtime approval required",
"evidence_refs": ["docs/security/vibework-iwooos-onboarding-handoff.snapshot.json"],
"next_action": " repo "
},
{
"target_id": "project_stockplatform",
"domain_id": "projects",
"display_name": "StockPlatform adjacent product",
"target_type": "adjacent_project",
"primary_agent": "hermes",
"supporting_agents": ["nemotron", "openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["AI research governance", "dry-run review", "human-review boundary"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["research governance note", "operator-approved evidence"],
"communication_channels": ["operator report only"],
"approval_gate": "separate project approval required before any runtime work",
"evidence_refs": ["docs/ai/AI_AGENT_AUTOMATION_WORKLIST_2026-06-04.md"],
"next_action": "NemoTron "
},
{
"target_id": "project_tsenyang",
"domain_id": "projects",
"display_name": "TSENYANG website adjacent project",
"target_type": "adjacent_project",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["SEO/launch evidence summary", "analytics boundary review"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["operator-approved launch evidence"],
"communication_channels": ["operator report only"],
"approval_gate": "separate repo/runtime approval required",
"evidence_refs": ["docs/security/iwooos-posture-projection.snapshot.json"],
"next_action": ""
},
{
"target_id": "project_bitan",
"domain_id": "projects",
"display_name": "Bitan Pharmacy adjacent project",
"target_type": "adjacent_project",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["production recovery evidence summary", "AI ops loop review"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["operator-approved recovery evidence"],
"communication_channels": ["operator report only"],
"approval_gate": "separate repo/runtime approval required",
"evidence_refs": ["docs/security/iwooos-posture-projection.snapshot.json"],
"next_action": ""
},
{
"target_id": "project_agent_bounty",
"domain_id": "projects",
"display_name": "agent-bounty-protocol onboarding surface",
"target_type": "adjacent_project",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "read_only_layout",
"automation_level": "observe_only",
"capabilities": ["read-only security onboarding", "owner gate", "external agent boundary"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["agent bounty onboarding handoff", "owner response status"],
"communication_channels": ["IwoooS read-only handoff", "operator report"],
"approval_gate": "no runtime, repo, scan, cron, payout or contract action without explicit approval",
"evidence_refs": ["docs/security/agent-bounty-iwooos-onboarding-handoff.snapshot.json"],
"next_action": " IwoooS agent-bounty runtime"
},
{
"target_id": "public_frontend",
"domain_id": "websites",
"display_name": "Public frontend routes",
"target_type": "website_frontend",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["browser smoke evidence", "i18n coverage", "route health"],
"telegram_policy": "failure_only",
"learning_inputs": ["browser smoke", "Sentry error", "route uptime"],
"communication_channels": ["Sentry", "Prometheus", "Telegram failure-only"],
"approval_gate": "frontend deploy requires build/typecheck/browser smoke",
"evidence_refs": ["apps/web/src/app/[locale]/page.tsx"],
"next_action": "Hermes /OpenClaw "
},
{
"target_id": "governance_ui",
"domain_id": "websites",
"display_name": "Governance UI backoffice",
"target_type": "website_backoffice",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["agent market display", "automation inventory display", "deployment layout display"],
"telegram_policy": "action_required",
"learning_inputs": ["operator review", "snapshot freshness", "blocked gate count"],
"communication_channels": ["governance UI", "AwoooP work item"],
"approval_gate": "UI display does not authorize runtime action",
"evidence_refs": ["apps/web/src/app/[locale]/governance/page.tsx"],
"next_action": " layout UI "
},
{
"target_id": "alerts_backoffice",
"domain_id": "websites",
"display_name": "Alerts and operation-log backoffice",
"target_type": "website_backoffice",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "prepare_only",
"capabilities": ["incident triage", "alert operation log", "operator action request"],
"telegram_policy": "action_required",
"learning_inputs": ["alert operation log", "incident timeline", "notification outcome"],
"communication_channels": ["alert-operation-logs UI", "Telegram action-required"],
"approval_gate": "alert action execution requires approval",
"evidence_refs": ["apps/web/src/app/[locale]/alerts/page.tsx", "apps/web/src/app/[locale]/alert-operation-logs/page.tsx"],
"next_action": "OpenClaw action proposalHermes "
},
{
"target_id": "awooop_admin",
"domain_id": "websites",
"display_name": "AwoooP admin routes",
"target_type": "website_backoffice",
"primary_agent": "openclaw",
"supporting_agents": ["hermes"],
"deployment_state": "active_governed",
"automation_level": "hitl_execute_after_approval",
"capabilities": ["approval queue", "runs", "contracts", "tenants"],
"telegram_policy": "approval_required",
"learning_inputs": ["approval decision", "run evidence", "contract state"],
"communication_channels": ["AwoooP UI", "Telegram approval card"],
"approval_gate": "AwoooP UI action requires separate policy and human approval",
"evidence_refs": ["apps/web/src/app/[locale]/awooop/"],
"next_action": " Agent AwoooP work item Agent "
},
{
"target_id": "iwooos_admin",
"domain_id": "websites",
"display_name": "IwoooS read-only security routes",
"target_type": "website_backoffice",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["security mirror", "scope card", "owner response gate"],
"telegram_policy": "action_required",
"learning_inputs": ["owner response", "security posture", "redacted refs"],
"communication_channels": ["IwoooS UI", "operator review"],
"approval_gate": "IwoooS visibility is not active runtime authorization",
"evidence_refs": ["apps/web/src/app/[locale]/iwooos/page.tsx"],
"next_action": ""
},
{
"target_id": "agent_session_bus",
"domain_id": "learning",
"display_name": "AgentSession / Redis Streams collaboration bus",
"target_type": "learning_bus",
"primary_agent": "openclaw",
"supporting_agents": ["hermes", "nemotron"],
"deployment_state": "planned",
"automation_level": "observe_only",
"capabilities": ["agent handoff", "turn audit", "replayable collaboration"],
"telegram_policy": "no_direct_notify",
"learning_inputs": ["agent session turn", "critic challenge", "coordinator decision"],
"communication_channels": ["Redis stream", "agent_sessions audit"],
"approval_gate": "new runtime worker or schema migration requires approval",
"evidence_refs": ["docs/adr/ADR-082-multi-agent-collaboration.md"],
"next_action": " layout migration / worker"
},
{
"target_id": "km_playbook_learning",
"domain_id": "learning",
"display_name": "KM / Playbook trust learning loop",
"target_type": "learning_loop",
"primary_agent": "hermes",
"supporting_agents": ["openclaw"],
"deployment_state": "planned",
"automation_level": "observe_only",
"capabilities": ["runbook freshness", "playbook trust evidence", "negative reinforcement"],
"telegram_policy": "daily_summary_only",
"learning_inputs": ["execution result", "post verification", "operator review"],
"communication_channels": ["KM", "LOGBOOK", "daily summary only"],
"approval_gate": "playbook promotion requires review",
"evidence_refs": ["docs/superpowers/specs/2026-04-15-MASTER-ai-autonomous-flywheel-v2.md"],
"next_action": "Hermes OpenClaw approved playbook"
},
{
"target_id": "nemotron_replay_pipeline",
"domain_id": "learning",
"display_name": "NemoTron smoke / replay pipeline",
"target_type": "model_replay",
"primary_agent": "nemotron",
"supporting_agents": ["openclaw", "hermes"],
"deployment_state": "blocked_by_gate",
"automation_level": "blocked",
"capabilities": ["5-record smoke", "output contract review", "latency budget", "same-run baseline delta"],
"telegram_policy": "approval_required",
"learning_inputs": ["smoke gate", "external runner report", "OpenClaw baseline"],
"communication_channels": ["offline report", "operator review", "Telegram approval-required after gate"],
"approval_gate": "refresh source evidence, cost/data approval, then 5-record smoke only",
"evidence_refs": ["docs/evaluations/agent_nemotron_contract_tuned_smoke_matrix_2026-06-02.json", "docs/runbooks/OPENCLAW-REPLACEMENT-EVALUATION.md"],
"next_action": " Nemotron 3 Ultra source evidence 5-record smoke"
},
{
"target_id": "agent_market_watch",
"domain_id": "learning",
"display_name": "AI Agent market watch",
"target_type": "market_watch",
"primary_agent": "hermes",
"supporting_agents": ["openclaw", "nemotron"],
"deployment_state": "active_governed",
"automation_level": "observe_only",
"capabilities": ["primary-source scan", "integration review", "discovery intake", "candidate scoring"],
"telegram_policy": "action_required",
"learning_inputs": ["official docs", "release metadata", "scorecard", "operator review"],
"communication_channels": ["Gitea Actions", "governance UI", "Telegram actionable only"],
"approval_gate": "market watch cannot approve SDK/API/replay/shadow/canary/production",
"evidence_refs": [".gitea/workflows/agent-market-watch.yaml", "docs/evaluations/agent_market_governance_snapshot_2026-06-04.json"],
"next_action": " Nemotron 3 Ultra source refresh scorecard review"
}
],
"collaboration_contract": {
"message_bus": " Redis Streams / AgentSession / timeline event worker",
"audit_trail": " Agent committed snapshot",
"handoff_rules": [
"OpenClaw HITL Telegram action-required",
"Hermes ",
"NemoTron sanitized replay score",
" Agent OpenClaw ",
" Agent / Hermes ",
" NemoTron replay harness "
],
"frontend_redaction": {
"operator_conversation_display_allowed": false,
"agent_private_reasoning_display_allowed": false,
"display_policy": " Agent "
}
},
"learning_contract": {
"event_sources": [
"incident timeline",
"approval outcome",
"alert operation log",
"service health snapshot",
"backup / DR evidence",
"dependency drift snapshot",
"agent market watch",
"NemoTron smoke / replay result"
],
"feedback_loops": [
"// Playbook trust",
"Critic / Reviewer AgentSession",
"Telegram operator review notification outcome",
"Market watch source delta scorecard / replay gate",
"NemoTron replay prompt / contract "
],
"growth_metrics": [
"playbook trust_score ",
"general fallback alert ratio",
"agent handoff completion rate",
"notification failure rate",
"smoke gate pass rate",
"operator-approved proposal precision"
],
"retention_policy": " redacted evidence refshashSecrettoken"
},
"telegram_contract": {
"primary_gateway": "apps/api/src/services/telegram_gateway.py",
"bot_roles": [
"OpenClaw BotHITL action-required",
"Hermes Bot lane Gateway",
"NemoTron lane smoke/replay gate operator review "
],
"notification_classes": [
"critical failure: immediate",
"operator action required: immediate",
"approval required: approval card",
"success / healthy: suppressed or daily summary",
"watch-only no-op: quiet"
],
"redaction_policy": " Telegram Secrettokencookieprivate key payload Agent evidence ref",
"e2e_validation": "沿 ADR-035 Secret K8s Secret E2E "
},
"rollups": {
"total_targets": 42,
"by_domain": {
"hosts": 6,
"packages": 3,
"tools": 8,
"services": 8,
"projects": 8,
"websites": 5,
"learning": 4
},
"by_primary_agent": {
"openclaw": 17,
"hermes": 23,
"nemotron": 2
},
"by_deployment_state": {
"active_governed": 28,
"read_only_layout": 9,
"blocked_by_gate": 2,
"planned": 2,
"candidate_only": 1
},
"by_telegram_policy": {
"failure_only": 8,
"action_required": 17,
"approval_required": 6,
"daily_summary_only": 3,
"no_direct_notify": 8
},
"blocked_target_ids": [
"host_120",
"nemotron_replay_pipeline"
],
"approval_required_target_ids": [
"host_120",
"telegram_gateway",
"ansible_control",
"awooop_control_plane",
"project_awooop",
"awooop_admin",
"nemotron_replay_pipeline"
]
},
"approval_boundaries": {
"sdk_installation_allowed": false,
"paid_api_call_allowed": false,
"shadow_or_canary_allowed": false,
"production_routing_allowed": false,
"destructive_operation_allowed": false,
"secret_plaintext_allowed": false,
"autonomous_host_mutation_allowed": false,
"telegram_direct_send_allowed": false
}
}