跳至主要內容

指南

Agent 執行環境

沙箱、工具與檔案的輸入與交付。

沙箱

  • 每個會話有自己的 Linux 沙箱和 /workspace 工作盤,會話之間看不到彼此的檔案。沙箱在 Agent 第一次執行命令或讀寫檔案時才建立;訊息帶了附件時,本輪開始就建立;只聊天、不調用工具的輪次不會建立沙箱。
  • /workspace 在同一會話的各輪之間保留。 Agent 寫入的檔案、用 pip install 安裝的包,下一輪仍然可用。
  • 沙箱空閒一段時間(預設約 20 分鐘)後會被回收,下一輪自動重建。重建後 /workspace 的內容仍在,但系統級安裝的軟件、/tmp 和環境變數會重置。
  • 會話 30 天沒有活動後,它的 /workspace 會被清除;會話本身和事件歷史不受影響。
  • 沙箱預裝了常用的數據分析與文檔處理工具,包括 Python(pandas、numpy、matplotlib 等)、Node.js、LibreOffice、pandoc、LaTeX、ffmpeg 和中英文 OCR,具體以平台的沙箱映像為準。

工具

Agent 根據任務自行決定調用哪些工具。調用記錄以 agent.tool_use / agent.tool_result 事件返回,name 為下表中的工具名:

name作用
bash在沙箱中執行命令,例如執行腳本、安裝依賴
read_file讀取檔案
write_file寫入檔案
edit_file修改檔案中的指定內容
glob按模式尋找檔案
grep在檔案中搜尋文字
todo_writeAgent 記錄和更新自己的任務清單
deliver_file把沙箱中的檔案交付給你,見檔案的輸入與交付
use_skill載入一個技能的說明,按它完成任務,見技能(本輪有可用技能時提供)
mcp__<name>__<工具名>你的 MCP 伺服器提供的工具,見 MCP 伺服器
read_image查看圖片(視平台配置提供)
web_search聯網搜尋(視平台配置提供)
web_fetch讀取網頁全文(視平台配置提供)

工具集可能隨平台升級而擴充,請不要假定 name 只會是上表中的值。

檔案的輸入與交付

交給 Agent: 先上載檔案,再在發送訊息時把檔案 ID 放進 files。本輪開始前,平台把這些檔案放到沙箱的 /workspace/inputs/{filename},並告訴 Agent 它們的位置;同名檔案依次命名為 name (2).ext、name (3).ext。檔案放入失敗時,本輪以 turn.failed(internal_error)結束。

從 Agent 拿回: Agent 用 deliver_file 工具交付沙箱中的檔案。對應的 agent.tool_result 在 files 中列出交付的檔案,用 id 下載即可,也可以按會話列出:GET /v1/files?session_id=…。

  • 單個檔案最大 100 MiB,每輪最多交付 10 次。
  • Agent 只交付它認為是結果的檔案,中間檔案留在 /workspace 中。需要某個檔案時,在訊息裡直接要求,例如「把結果保存成 summary.csv 交付給我」。
  • 檔案儲存失敗時,該檔案不會出現在 files 中;一個都沒有交付成功時,agent.tool_result 的 is_error 為 true。
# 上載,附在訊息裡,等本輪結束後列出 Agent 交付的檔案,再下載
FILE=$(curl -s "$AXON_API/files" -H "Authorization: Bearer $AXON_KEY" -F "file=@sales.csv" | jq -r .id)
curl -s "$AXON_API/sessions/$SESSION/messages" \
  -H "Authorization: Bearer $AXON_KEY" -H "Content-Type: application/json" \
  -d "{\"content\": \"統計各地區銷售額,結果保存成 summary.csv 交付給我\", \"files\": [\"$FILE\"]}"
# …… 訂閱事件串流,直到收到終止事件 ……
OUT=$(curl -s "$AXON_API/files?session_id=$SESSION" -H "Authorization: Bearer $AXON_KEY" | jq -r '.items[0].id')
curl -sL "$AXON_API/files/$OUT/content" -H "Authorization: Bearer $AXON_KEY" -o summary.csv

檔案會一直保存,直到你刪除它;刪除會話不會刪除其中交付的檔案。

暫不支援

  • 修改已建立會話的模型、指令或 MCP 伺服器。