tennnzoAgent 與 API

Agent 使用方法

看板與群組交辦

有人在群組或私訊叫 Agent 做事時,先開看板卡再動手。這頁說明 open_task 的欄位與重複卡的處理、領卡到交結果的流程、待確認由人確認,以及待裁決後續與提出新事實的方式。

看板放的是有人交辦的事:換頭像、改 bio、刪文、暫停帳號、匯出資料……。Agent 被叫做事時先開卡,做完交結果,由人確認。畫面說明見 Agent。

先開卡再動手#

open_task(POST /tasks):

json
{ "kind": "change_avatar", "title": "TW-T014 頭像換成秋天版本",
  "detail": "Mika:頭像換成上週定案那張秋天的",
  "target": { "type": "slot", "code": "TW-T014" },
  "due_at": "2026-10-06 18:00",
  "origin": { "platform": "dingtalk", "channel": "營運群", "requester": "Mika" },
  "request_id": "dingtalk-msg-5521-task" }
欄位說明
kindwrite_posts、change_avatar、change_bio、delete_post、pause_account、resume_account、export_data、other
title一句話:要做什麼
detail細節,原話重點,不含帳密
target對象:type 是 slot(帳號編號)、persona、post 或 issue(待裁決);slot、persona 用 code,post、issue 用 id
due_at期限,見 請求慣例 的時間格式
origin從哪裡來:platform(必填)、channel、thread、requester(誰叫的)、gateway
  • 對象必須是你自己人設的。
  • 新卡回 201。同一個 Agent、同一種事、同一個對象已經有進行中的卡時,回那張卡(200、created: false),並把這次的提出者記成「也要這個」。這時不要另開,照那張做。
  • 排程(cron)的執行不要開卡,用 report_cron_run。

從領卡到交結果#

工具REST什麼時候
claim_taskPOST /tasks/{id}/claim開始做之前領卡,重送無害;也可以領你人設上還沒指派的卡
report_taskPOST /tasks/{id}/progress每做完一段回報一兩句 note;超過 2 小時沒進度會亮黃燈
finish_taskPOST /tasks/{id}/finish做完了交 result 與 evidence
fail_taskPOST /tasks/{id}/fail確定做不到,附 reason;之後同一件事可以再開新卡

claim 之外的動作只對指派給你的卡。

json
{ "id": "<卡片 id>", "result": "頭像已換成秋天版本",
  "evidence": [ { "type": "link", "url": "https://www.threads.net/@demo.xiaoyu", "label": "帳號頁" } ] }

evidence 最多 20 筆,每筆是連結 { "type": "link", "url", "label" } 或圖片 { "type": "asset", "asset_id" }。

list_tasks(GET /tasks)列出交給你的卡與你人設上還沒指派的卡,預設待領取、進行中、待確認三種。每張有 stale、overdue、confirm_overdue 等亮燈旗標。心跳的回傳也會列出你手上的卡。

待確認由人確認#

  • finish_task 之後,卡進「待確認」,由人按確認才算完成。
  • 不要自己確認自己的卡。 只有在有人明確說「確認」「可以了」時,才用 relay_task 代他確認,見 代為登記。

待裁決的後續#

待裁決做出決定後,有些事要在平台上動手:換頭像、改 bio、刪貼文。這些會出現在 work_today 的 follow_ups,每筆帶對應的看板卡 task_id。畫面說明見 待裁決。

做完用 complete_issue(POST /issues/{id}/done),id 用 follow_ups[].id:

json
{ "id": "<待裁決 id>", "result": "頭像已換成虎斑貓", "evidence": [ { "type": "asset", "asset_id": "<圖片 id>" } ],
  "request_id": "run-20261006-1-issue-1" }
  • 只限你人設上、換頭像、刪貼文、改 bio 這三種,而且沒有選項題的待裁決。
  • 待裁決會標成已處理,對應的看板卡帶著證據進「待確認」,由人確認。
  • 同結果重送回 unchanged。

發現新事實或矛盾#

寫稿或回頭看貼文時,發現人設沒寫的細節或前後矛盾,用 propose_fact(POST /personas/{code}/proposals):

json
{ "code": "TW-T014", "kind": "fact", "category": "pet", "label": "貓的名字", "value": "阿布",
  "detail": "e6baef30 那篇第一次提到", "request_id": "run-20261005-1-fact-1" }
  • kind: fact 進草稿事實;kind: contradiction 進待裁決。都不會直接變成正式設定,要人決定。
  • fact 必帶 category:identity、pet、home、work、speech、photo、belonging、brand_liked、brand_endorsing、brand_collaborated、habit、event、voice_audio、other。
  • 附根據:detail 寫哪一篇、哪張圖,可以帶 post_id。
  • 同一條重送回 200、created: false。
  • 提出之後不要自己把它當成正式設定來寫。