# 使用 dvina 指令

> 了解 Dvina 為你執行程式碼時如何使用 dvina 指令、有哪些指令，以及哪些指令需要你的批准。

Dvina 為你執行程式碼或指令時，會使用自己的指令：`dvina`。透過這個指令，指令碼或一連串步驟就能以你的身分搜尋你的 Dvina、讀取及新增文件、記憶和任務，以及查看誰有權存取某個項目。

你不需要安裝任何軟件或登入。Dvina 會在處理你的要求時按需要使用這個指令，你也可以直接要求它使用，例如：「使用 dvina 列出我的任務，並將摘要寫成筆記。」

## 運作方式

- `dvina` 會以你的身分操作你自己的 Dvina，遵循你角色的權限及平常的使用限制。
- 存取權只在 Dvina 處理你的要求期間有效。回覆結束後，指令便無法再存取你的 Dvina。
- 只有當指令指明某個檔案或資料夾時，例如要上載的檔案，它才會讀取該檔案或資料夾。

## 指令

指令按群組分類：`dvina <group> <command>`，後面接上該指令的引數和旗標。

| 群組      | 指令                                                                                                                 |
| ---------- | ------------------------------------------------------------------------------------------------------------------------ |
| `search`   | `dvina search <query>`：一次搜尋你的聊天、文件、記憶和世界。                                          |
| `memory`   | `ls`, `show`, `add`, `edit`：列出、讀取、新增或修改你的記憶檔案。                                                |
| `world`    | `topics`, `topic`, `recall`, `feed`：你的主題、Dvina 對某件事的了解，以及你的 Feed。                       |
| `docs`     | `ls`, `show`, `read`, `search`, `create`, `upload`, `update`, `mv`, `mkdir`, `rm`：你的 Library 中的文件和資料夾。 |
| `canvas`   | `ls`, `show`, `create`, `write-page`：列出、讀取、建立或重寫畫布頁面。                                        |
| `tasks`    | `ls`, `show`, `start`, `continue`, `stop`：你的背景任務。                                                        |
| `goals`    | `show`, `start`：為達成目標而執行的任務。                                                                          |
| `schedule` | `ls`, `add`, `cancel`：排程訊息和提醒，可設定為一次或重複執行。                                              |
| `agents`   | `ls`, `show`, `create`, `update`：你的代理。                                                                           |
| `skills`   | `ls`, `show`, `add`, `edit`：你的技能。                                                                                |
| `projects` | `ls`, `show`：你的專案。                                                                                             |
| `settings` | `get`, `set`：你的偏好設定，例如開啟或關閉記憶。                                                           |
| `share`    | `state`, `with-me`, `add`, `rm`：查看誰有權存取某個項目、其他人與你共享的內容，以及授予或移除存取權。  |

`dvina` 無法永久刪除任何內容、開啟公開連結、連接或中斷連接應用程式，也無法更改管理或帳單設定。

### 說明及輸出

- `dvina --help` 會列出群組，`dvina <group> --help` 會列出某個群組的指令，`dvina <group> <command> --help` 則會列出某個指令的引數和旗標。
- 輸出是簡短文字。加入 `--json` 可輸出 JSON；如只想保留部分欄位，可加入 `--fields` 並附上以逗號分隔的清單，例如 `--fields id,title`。
- 較長的清單會以 `next: --cursor <c>` 結尾。使用該 `--cursor` 再次執行指令，即可取得下一頁。
- 如要從檔案讀取值，請在相應的旗標後加上 `-file`，例如 `--content-file notes.md`。`dvina docs upload <file>` 會上載檔案，而 `dvina skills add <folder>` 會新增技能資料夾及其中的 SKILL.md。

### 結束代碼

| 代碼 | 意義                                                                       |
| ---- | ----------------------------------------------------------------------------- |
| `0`  | 已完成。                                                                         |
| `1`  | 發生其他錯誤。                                                    |
| `2`  | 指令有誤。請查看其 `--help`。                                     |
| `3`  | 找不到。                                                                    |
| `4`  | 已拒絕：你的存取權、公司規則或資料保護規則不允許此操作。 |
| `5`  | 需要你的批准。                                                       |
| `6`  | 你已達到使用上限。                                              |

## 批准更改

- 讀取內容的指令會直接執行，不會先詢問你。
- 新增內容的指令，例如 `docs create`、`memory add` 或 `tasks start`，會直接執行，不會先詢問你。這些指令絕不會更改現有內容。
- 更改或移除內容的指令會先詢問你，包括移動、重新命名、移至垃圾桶、取代筆記或記憶檔案、重寫畫布頁面、更改代理或技能、停止任務、取消排程訊息，以及共享。Dvina 每次都會在聊天中顯示批准卡，附上它撰寫的更改摘要，並徵求你的批准。如果你拒絕，就不會有任何更改。

`dvina` 新增或更改的內容會遵循你公司的資料保護規則，並記錄在你的[稽核記錄](/docs/teams/audit-log)中，與 Dvina 的其他操作一樣。

## 相關內容

- [透過 MCP 在其他應用程式使用 Dvina](/docs/dvina-mcp/overview)
- [任務](/docs/use-dvina/features/tasks)
- [連接器概覽](/docs/connectors/overview)
