Files
pikasTech-unidesk/.agents/skills/unidesk-code-queue/SKILL.md
T
Codex c7663f8df7
Pipelines as Code CI / hwlab-web-probe-sentinel-nc01- Success
Pipelines as Code CI / platform-infra-gitea-nc01- Success
Pipelines as Code CI / unidesk-host- Success
docs: 记录 Artificer 可靠性任务
2026-07-12 08:21:38 +02:00

4.6 KiB
Raw Blame History

name, description
name description
unidesk-code-queue UniDesk AgentRun-backed Code Queue CLI — Skill(cli-spec)。legacy `codex` 子命令只保留历史只读和残留停止;新任务提交、Aipod/Artificer 派单、session follow-up、events/logs/result、attempts/retry、ack/cancel、dispatch、run/command/runner 状态 drill-down 和 HWLAB Code Agent/CaseRun follow-up 必须使用 `agentrun get|describe|events|logs|result|retry|ack|cancel|dispatch|create|apply|send` 资源原语。用户提到 codex、Code Queue、submit、send、resume、retry、tasks、unread、code-queue、aipod、Artificer、HWLAB Code Agent 时使用。

UniDesk Code Queue / AgentRun CLI

新任务、Aipod/Artificer 派单、session follow-up、events/logs/result、attempts/retry、ack/cancel、dispatch 和 run/command/runner drill-down 走 AgentRun 资源原语。legacy codex 只保留历史只读、未读积压和残留任务停止。

高频入口

bun scripts/cli.ts agentrun get tasks --limit 20
bun scripts/cli.ts agentrun describe task/<taskId>
bun scripts/cli.ts agentrun describe task/<taskId> --input -o json
bun scripts/cli.ts agentrun describe aipodspec/<name>
bun scripts/cli.ts agentrun events run/<runId> --limit 20
bun scripts/cli.ts agentrun events run/<runId> --detail-seq <seq> -o json
bun scripts/cli.ts agentrun logs session/<sessionId> --tail 120
bun scripts/cli.ts agentrun result run/<runId> --command <commandId>
bun scripts/cli.ts agentrun get attempts --task <taskId>
bun scripts/cli.ts agentrun retry task/<taskId> --idempotency-key <key> --reason <text> --dry-run
bun scripts/cli.ts agentrun send <session> --prompt-stdin

资源命令未传 --node/--lane 时固定使用 config/agentrun.yaml#controlPlane.default,当前为 NC01/nc01-v02;只有查询非默认 lane 时才显式传目标参数。主机 direct HTTP auth 只保留独立诊断,固定 Secret 文件路径为 /root/.unidesk/.env/agentrun.env,不得回退到 worktree 或旧 /root/.config/hwlab-* 路径。

AipodSpec/Artificer、task manifest 和 queue 渐进披露见 references/resources.mdsession 控制、HWLAB Code Agent 整合、trace/output 分页、judge、中断/取消见 references/sessions.md;旧队列归档见 references/legacy.md

P0 边界

  • 新写入口不要用 codex submit/steer/resume;这些 legacy mutation 已冻结。
  • Artificer task prompt 只引用 task 自身的 primary workspace
    • 默认写当前工作区 .,需要子目录时写相对路径;
    • 禁止写入宿主 /root/unidesk、主代理 worktree 或其他 task 外部绝对路径;
    • 路径不可见时先用 agentrun events run/<runId> --detail-seq <seq> 核对 durable workspace 物化事实,不让 Artificer 搜索或切换到旁路仓库。
  • 默认输出保持低噪声表格/摘要;机器消费显式 -o json|yaml--raw
  • 读取 task 的可重建输入:
    • 使用 agentrun describe task/<taskId> --input -o json
    • 该入口只投影 task create 字段、AipodSpec identity、资源引用和脱敏 provenance
    • 不打印 Secret value
    • --input--full--raw 互斥,非法组合必须在请求服务端前返回 validation-failed
  • 读取 AipodSpec
    • 默认 describe aipodspec/<name> 的 human、JSON 和 YAML 使用同一有界摘要;
    • 摘要至少包含:
      • identity/hash 与 runtime
      • workspace 与主 resource bundle source identity
      • 引用计数和脱敏 provenance
    • credential 只显示 SecretRef 并固定 valuesPrinted=false
    • 完整服务端对象只通过显式 --full -o json--raw 下钻。
  • Session follow-up 使用 agentrun send,由服务端决定内部 steer vs turn。
  • 终态失败重试只使用 agentrun retry task/<taskId>:保持同一 task,新增不可变 attempt;先用 --dry-run 完成服务端全校验,再以同一幂等键执行真实重试。
  • retry 只接受 Queue 已处于 failedblockedcompletedcancelled 和其他状态必须 fail closed。不得复制 task、重置 task、引入本地 scheduler/backoff/judge 或直接创建 runner Job 来模拟重试。
  • HWLAB Code Agent/CaseRun follow-up 也优先落到 AgentRun resource primitive,不绕过队列状态。

何时读取 reference