agent_deply/pam_deploy_graph/config_writer.py
dark 4250a7b221 LLM action 结果分析不再传 state_summary
调整了 agent.py 和 LLM client 协议/实现。
现在只传当前 action 的结构化结果和必要诊断日志,避免历史运行态影响判断。
提示词和文档也已同步说明。

verify-ip 增加健康检查重试
默认 VERIFY_INTERVAL_SEC=10、VERIFY_MAX_ATTEMPTS=12,约 2 分钟。
verify-ip 未通过但未达到最大次数时,会播报进度、保存 checkpoint,并继续从当前 verify-ip 重试,不会进入 download-log。
参数已加入 config.txt.example、脚本配置读取、README、打包 README、Skill 文档和流程图。
2026-06-04 16:57:16 +08:00

35 lines
934 B
Python

"""为 PAM_HOME 脚本 action 写入 config.txt 风格配置文件。"""
from __future__ import annotations
from pathlib import Path
from typing import Any
CONFIG_KEYS = (
"HOME_BASE_URL",
"CLIENT_ID",
"CLIENT_SECRET",
"AIRPORT_CODE",
"APP_NAME",
"MODULE_NAME",
"VERSION_NUMBER",
"ZIP_FILE_PATH",
"ACTION_TYPE",
"TIMEOUT",
"LOG_NAME",
"POLL_INTERVAL_SEC",
"DOWNLOAD_POLL_MAX_ATTEMPTS",
"UPGRADE_POLL_MAX_ATTEMPTS",
"VERIFY_INTERVAL_SEC",
"VERIFY_MAX_ATTEMPTS",
)
def write_config(params: dict[str, Any], path: str | Path) -> Path:
"""按脚本约定的字段顺序生成配置文件,并返回最终路径。"""
config_path = Path(path)
config_path.parent.mkdir(parents=True, exist_ok=True)
lines = [f"{key}={params.get(key, '')}" for key in CONFIG_KEYS]
config_path.write_text("\n".join(lines) + "\n", encoding="utf-8")
return config_path