opencode-cursor-agent/docs/cursor-cli-format.md

48 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Cursor CLI stream-json 格式
## 實際輸出格式(已確認)
NDJSON每行一個 JSON
### 1. System Init
```json
{"type":"system","subtype":"init","apiKeySource":"login","cwd":"/path","session_id":"uuid","model":"Auto","permissionMode":"default"}
```
### 2. User Message
```json
{"type":"user","message":{"role":"user","content":[{"type":"text","text":"prompt text"}]},"session_id":"uuid"}
```
### 3. Assistant Message可能多次出現
```json
{"type":"assistant","message":{"role":"assistant","content":[{"type":"text","text":"response text"}]},"session_id":"uuid","timestamp_ms":1776157308323}
```
### 4. Result最後一行
```json
{"type":"result","subtype":"success","duration_ms":10208,"duration_api_ms":10208,"is_error":false,"result":"OK","session_id":"uuid","request_id":"uuid","usage":{"inputTokens":0,"outputTokens":122,"cacheReadTokens":5120,"cacheWriteTokens":14063}}
```
## 轉換規則
| Cursor type | 行為 |
|-------------|------|
| system | 忽略(初始化訊息)|
| user | 忽略echo 回用戶訊息)|
| assistant | 提取 message.content[].text → OpenAI delta.content |
| result (success) | 提取 usage → OpenAI usage發送 finish_reason:"stop" |
| result (error) | 發送錯誤 chunk |
## CLI 參數
```bash
agent -p "prompt" \
--output-format stream-json \
--stream-partial-output \
--trust \
--model "model-name"
```
注意:需要 `--trust` 才能在非互動模式執行。