AgentX
目录 · 外部智能体与自动化

命令行与自动化

外部智能体与自动化

ATH 自己不写设备说明、也不写判定规则,它提供规范、项目事实、校验、写入与验证入口;生成与修订交给外部智能体或脚本。

为什么这样分工

  • 内容由模型生成,边界由软件守:任何写入都要先通过结构与语义校验,失败就完全不落盘。
  • 软件不做判断之外的猜测:格式无效、引用损坏、设备不匹配都会给出可处理的中文诊断。
  • 同一套入口既能被人用,也能被脚本用:文本给人看,JSON 给程序读。

两条命令线的共同契约

机制解决什么
--request-id(UUID 幂等键)网络结果不明时,用同一个键和相同内容重试,不会写两次。
--expected-sha乐观锁:提交时带上读取时的摘要,别人先改过就拒绝,避免互相覆盖。
--non-interactive不等待任何交互输入,缺参数直接失败 —— 脚本不会卡在提示上。
分级退出码用 2/4/5/6 区分校验错误、未定、模型不可用与设备不可用。
诊断信封每条错误都带位置、说明与建议,见 命令行参考。

生成设备说明

  1. 01读规范ath dd help 给出完整的生成规则、命令流程、验证边界与示例;ath dd schema 给出候选文件的 JSON Schema。两者都不需要打开项目。
  2. 02读事实ath dd info 看当前项目与摘要,ath dd sources 读项目资料,ath dd devices 与 ath dd inspect-device 只读枚举真实接口与描述符。
  3. 03校验候选ath dd validate <文件> 检查格式、语义与参考向量,不访问设备。
  4. 04提交ath dd submit <文件> 通过后保存并登记,声明的功能立即可用; 修订已有说明时加 --replace 与 --expected-sha。
  5. 05需要时做真机诊断ath dd verify 由智能体主导真机验证(建计划、启动、轮询、转发用户观察、停止),ath dd verify-programmatic 做程序化观察。两者都不改变说明内容与可用范围。

生成判定规则

  1. 01读规范与上下文ath dr help 给出规则语法与诊断对照;ath dr context 给出项目句柄、 判定图摘要与最近一次修订;ath dr features 列出可被规则引用的输入。
  2. 02写候选并校验ath dr schema 给出候选的 JSON Schema;ath dr validate 做解析、语法、 编译、输入引用与自带用例的校验,不写项目。
  3. 03提交ath dr submit 把候选并入判定图,按规则 id 覆盖同一条规则,其余不受影响; 离线写入要带上 ath dr context 给出的 --expected-sha, 不一致会返回 dr_revision_conflict,此时重读再提交。
  4. 04复核与回滚ath dr explain 用中文说明一条规则在判什么;ath dr history 与 ath dr diff 看修订;ath dr revert 回滚成一条新修订。

一个最小循环

sha=$(ath dr context --json | jq -r .data.graph_sha256)
ath dr validate ./rules.json
ath dr submit ./rules.json --expected-sha "$sha" --request-id "$(uuidgen)"

放进 CI

同一条命令既可以本地跑,也可以放进流水线;下面这条链是有意义的顺序:

ath self-test --json            # 先确认软件自身可用
ath validate --json             # 项目合法性与规范化 IR
ath run ./ci/scenario.yaml      # 用固定场景跑一遍判定
ath simulate replay ./ci/capture.jsonl
ath package build --output ./dist/station
ath package verify ./dist/station --json

全部只读或只写产物,不会打开窗口、不会访问真机。判定未结束时退出码是 4, 因此「未定」不会被误当成成功。需要设备时用退出码 6 区分「设备不可用」与真正的失败。