fix(hermes): ANTHROPIC_API_KEY 注入 + solver 信心度修法 A + 12-Agent 治理文件
Some checks failed
CD Pipeline / build-and-deploy (push) Has been cancelled
Some checks failed
CD Pipeline / build-and-deploy (push) Has been cancelled
- nl_gateway.py: ClaudeAgentOptions 透過 env= 注入 ANTHROPIC_API_KEY(CLAUDE_API_KEY alias), 修復 SDK 找不到 API key 的問題(SDK 讀 ANTHROPIC_API_KEY,K8s secret 名稱是 CLAUDE_API_KEY) - solver_agent.py: 修法 A — kubectl_command 欄位優先路徑,OpenClaw Nemo 回傳完整指令時 不再被語意合成壓縮 confidence(0.9 → min(0.5) 的 bug),9 tests pass - AGENTS.md: Codex CLI 對應版 CLAUDE.md(Codex Session 啟動用) - docs/12-agent-game-rules.md: 12-Agent 任務判型 + 主責/協作派工 + 9 skills 對照(v1.0) - .agents/skills/06-awoooi-monorepo-master.md: v1.6,新增 12-agent 協作治理章節 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -317,6 +317,26 @@ def _extract_candidates(parsed: dict[str, Any]) -> list[CandidateAction]:
|
||||
risk_to_blast = {"critical": 60, "high": 40, "medium": 25, "low": 10}
|
||||
blast = risk_to_blast.get(risk_level.lower(), 30)
|
||||
|
||||
# 2026-04-24 ogt + Claude Sonnet 4.6: 修復信心度被語意合成硬壓問題
|
||||
# 根因:OpenClaw NIM 回傳 action_title(自然語言)+ kubectl_command(完整指令)
|
||||
# 舊邏輯:action_title 無 kubectl → 語意合成 → min(confidence, 0.5) 壓到 0.5
|
||||
# 修法 A:優先採用 kubectl_command 欄位,保留原始 confidence(如 0.9)
|
||||
kubectl_cmd = str(parsed.get("kubectl_command", "")).strip()
|
||||
if kubectl_cmd and kubectl_cmd.startswith("kubectl"):
|
||||
logger.debug(
|
||||
"solver_nemo_kubectl_command_used",
|
||||
action_title=action_title[:80],
|
||||
kubectl_command=kubectl_cmd[:80],
|
||||
confidence=confidence,
|
||||
)
|
||||
return [CandidateAction(
|
||||
action=kubectl_cmd[:200],
|
||||
blast_radius=blast,
|
||||
rollback_cost=20,
|
||||
confidence=confidence,
|
||||
rationale=f"OpenClaw Nemo: {action_title[:80]}",
|
||||
)]
|
||||
|
||||
if "kubectl" in action_title.lower():
|
||||
if action_title and confidence > 0:
|
||||
return [CandidateAction(
|
||||
|
||||
Reference in New Issue
Block a user