4f45d368ad9d5a233b55308df6daa759b878b3d9
Before the launch call the planned run (run id, terminal, handle, bookkeeping) is saved as a launching marker. If the launch call fails or agentd dies before recording the run, the next tick probes the run directory (exit.txt / launch.pid / pid.txt): evidence -> adopt the run; nothing -> relaunch with the same run id in <run_id>-r2 (-r3 ...); probe unreachable -> keep the marker, which holds the terminal slot. Transports refuse to clean a run directory holding a pid file. A terminal whose relay fails is skipped for the rest of the tick (heartbeat.down) while other terminals carry on.
plane-agentd
Plane 看板驱动的通用 agent 调度服务:在 Plane 建工作项并指派给某个终端,agentd 在该终端起对应的 CLI agent(Codex / Claude Code / 脚本)执行,把结果贴回工作项并流转状态。调度是确定性代码;模型只出现在执行器和总指挥里。
- 设计:
docs/design.md(架构、契约、失败策略、配置、阶段) - 首个租户:GWENT 项目(看板 https://plane.kappiee.com/kappiee/projects/79cb5a60-aa4f-4138-9864-1dd70426e665/issues/ )
- 凭据全部经 Agent Vault 注入内存,仓库和配置里只有键名。
使用
- 契约与扩展:
docs/executor-contract.md;安装、cron、日志、故障:docs/runbook.md;迁到无 agent CLI 的 LXC:docs/deploy-lxc.md - 入口:
cli/agentd tick|new|show|comment|state|assign|smoke|check-config(在agent-access.py exec --secret-env …下运行) - 测试:
python3 -m unittest(离线,不访问 Plane/win10)
Description
Languages
Python
98%
Shell
2%