refactor: remove todo tool (#35989)

This commit is contained in:
Aiden Cline 2026-07-09 00:13:48 -05:00 committed by GitHub
commit 7feefb697f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
250 changed files with 237 additions and 4755 deletions

View file

@ -719,88 +719,6 @@
}
}
.todos {
list-style-type: none;
padding: 0;
margin: 0;
width: 100%;
max-width: var(--sm-tool-width);
border: 1px solid var(--sl-color-divider);
border-radius: 0.25rem;
li {
margin: 0;
position: relative;
padding-left: 1.5rem;
font-size: 0.75rem;
padding: 0.375rem 0.625rem 0.375rem 1.75rem;
border-bottom: 1px solid var(--sl-color-divider);
line-height: 1.5;
word-break: break-word;
&:last-child {
border-bottom: none;
}
& > span {
position: absolute;
display: inline-block;
left: 0.5rem;
top: calc(0.5rem + 1px);
width: 0.75rem;
height: 0.75rem;
border: 1px solid var(--sl-color-divider);
border-radius: 0.15rem;
&::before {
}
}
&[data-status="pending"] {
color: var(--sl-color-text);
}
&[data-status="in_progress"] {
color: var(--sl-color-text);
& > span {
border-color: var(--sl-color-orange);
}
& > span::before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: calc(0.75rem - 2px - 4px);
height: calc(0.75rem - 2px - 4px);
box-shadow: inset 1rem 1rem var(--sl-color-orange-low);
}
}
&[data-status="completed"] {
color: var(--sl-color-text-secondary);
& > span {
border-color: var(--sl-color-green-low);
}
& > span::before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: calc(0.75rem - 2px - 4px);
height: calc(0.75rem - 2px - 4px);
box-shadow: inset 1rem 1rem var(--sl-color-green);
transform-origin: bottom left;
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
}
}
}
.scroll-button {
position: fixed;
bottom: 2rem;

View file

@ -317,88 +317,6 @@
gap: 0.5rem;
}
[data-component="todos"] {
list-style-type: none;
padding: 0;
margin: 0;
width: 100%;
max-width: var(--sm-tool-width);
border: 1px solid var(--sl-color-divider);
border-radius: 0.25rem;
[data-slot="item"] {
margin: 0;
position: relative;
padding-left: 1.5rem;
font-size: 0.75rem;
padding: 0.375rem 0.625rem 0.375rem 1.75rem;
border-bottom: 1px solid var(--sl-color-divider);
line-height: 1.5;
word-break: break-word;
&:last-child {
border-bottom: none;
}
& > span {
position: absolute;
display: inline-block;
left: 0.5rem;
top: calc(0.5rem + 1px);
width: 0.75rem;
height: 0.75rem;
border: 1px solid var(--sl-color-divider);
border-radius: 0.15rem;
&::before {
}
}
&[data-status="pending"] {
color: var(--sl-color-text);
}
&[data-status="in_progress"] {
color: var(--sl-color-text);
& > span {
border-color: var(--sl-color-orange);
}
& > span::before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: calc(0.75rem - 2px - 4px);
height: calc(0.75rem - 2px - 4px);
box-shadow: inset 1rem 1rem var(--sl-color-orange-low);
}
}
&[data-status="completed"] {
color: var(--sl-color-text-secondary);
& > span {
border-color: var(--sl-color-green-low);
}
& > span::before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: calc(0.75rem - 2px - 4px);
height: calc(0.75rem - 2px - 4px);
box-shadow: inset 1rem 1rem var(--sl-color-green);
transform-origin: bottom left;
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
}
}
}
[data-component="tool-args"] {
display: inline-grid;
align-items: center;

View file

@ -7,7 +7,6 @@ import {
IconGlobeAlt,
IconDocument,
IconPaperClip,
IconQueueList,
IconUserCircle,
IconCommandLine,
IconCheckCircle,
@ -87,9 +86,6 @@ export function Part(props: PartProps) {
<Match when={props.part.type === "reasoning" && props.message.role === "assistant"}>
<IconBrain width={18} height={18} />
</Match>
<Match when={props.part.type === "tool" && props.part.tool === "todowrite"}>
<IconQueueList width={18} height={18} />
</Match>
<Match when={props.part.type === "tool" && props.part.tool === "bash"}>
<IconCommandLine width={18} height={18} />
</Match>
@ -248,14 +244,6 @@ export function Part(props: PartProps) {
message={props.message}
/>
</Match>
<Match when={props.part.tool === "todowrite"}>
<TodoWriteTool
message={props.message}
id={props.part.id}
tool={props.part.tool}
state={props.part.state}
/>
</Match>
<Match when={props.part.tool === "webfetch"}>
<WebFetchTool
message={props.message}
@ -302,13 +290,6 @@ type ToolProps = {
isLastPart?: boolean
}
interface Todo {
id: string
content: string
status: "pending" | "in_progress" | "completed"
priority: "low" | "medium" | "high"
}
function stripWorkingDirectory(filePath?: string, workingDir?: string) {
if (filePath === undefined || workingDir === undefined) return filePath
@ -386,45 +367,6 @@ function formatErrorString(error: string, label: string): JSX.Element {
)
}
export function TodoWriteTool(props: ToolProps) {
const messages = useShareMessages()
const priority: Record<Todo["status"], number> = {
in_progress: 0,
pending: 1,
completed: 2,
}
const todos = createMemo(() =>
((props.state.input?.todos ?? []) as Todo[]).slice().sort((a, b) => priority[a.status] - priority[b.status]),
)
const starting = () => todos().every((t: Todo) => t.status === "pending")
const finished = () => todos().every((t: Todo) => t.status === "completed")
return (
<>
<div data-component="tool-title">
<span data-slot="name">
<Switch fallback={messages.updating_plan}>
<Match when={starting()}>{messages.creating_plan}</Match>
<Match when={finished()}>{messages.completing_plan}</Match>
</Switch>
</span>
</div>
<Show when={todos().length > 0}>
<ul data-component="todos">
<For each={todos()}>
{(todo) => (
<li data-slot="item" data-status={todo.status}>
<span></span>
{todo.content}
</li>
)}
</For>
</ul>
</Show>
</>
)
}
export function GrepTool(props: ToolProps) {
const messages = useShareMessages()

View file

@ -72,7 +72,7 @@ This agent is useful when you want the LLM to analyze code, suggest changes, or
_Mode_: `subagent`
A general-purpose agent for researching complex questions and executing multi-step tasks. Has full tool access (except todo), so it can make file changes when needed. Use this to run multiple units of work in parallel.
A general-purpose agent for researching complex questions and executing multi-step tasks. Has full tool access, so it can make file changes when needed. Use this to run multiple units of work in parallel.
---
@ -439,7 +439,6 @@ The available permission keys are:
| `bash` | `bash` |
| `task` | `task` |
| `external_directory` | Any tool that reads or writes files outside the project worktree |
| `todowrite` | `todowrite`, `todoread` |
| `webfetch` | `webfetch` |
| `websearch` | `websearch` |
| `lsp` | `lsp` |

View file

@ -71,7 +71,7 @@ _الوضع_: `primary`
_الوضع_: `subagent`
وكيل عام الغرض للبحث في أسئلة معقدة وتنفيذ مهام متعددة الخطوات. لديه وصول كامل للأدوات (باستثناء todo)، لذا يمكنه إجراء تغييرات على الملفات عند الحاجة. استخدمه لتشغيل عدة وحدات عمل بالتوازي.
وكيل عام الغرض للبحث في أسئلة معقدة وتنفيذ مهام متعددة الخطوات. لديه وصول كامل للأدوات، لذا يمكنه إجراء تغييرات على الملفات عند الحاجة. استخدمه لتشغيل عدة وحدات عمل بالتوازي.
---

View file

@ -188,10 +188,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### أحداث Todo
- `todo.updated`
#### أحداث shell
- `shell.env`

View file

@ -145,26 +145,25 @@ http://<hostname>:<port>/doc
### الجلسات
| الطريقة | المسار | الوصف | الملاحظات |
| -------- | ---------------------------------------- | ------------------------------------- | -------------------------------------------------------------------------------- |
| `GET` | `/session` | سرد جميع الجلسات | يعيد <a href={typesUrl}><code>Session[]</code></a> |
| `POST` | `/session` | إنشاء جلسة جديدة | المتن: `{ parentID?, title? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/status` | الحصول على حالة الجلسات جميعها | يعيد `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
| `GET` | `/session/:id` | الحصول على تفاصيل الجلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `DELETE` | `/session/:id` | حذف جلسة وجميع بياناتها | يعيد `boolean` |
| `PATCH` | `/session/:id` | تحديث خصائص الجلسة | المتن: `{ title? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | الحصول على الجلسات الفرعية لجلسة | يعيد <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | الحصول على قائمة المهام (todo) للجلسة | يعيد <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | تحليل التطبيق وإنشاء `AGENTS.md` | المتن: `{ messageID, providerID, modelID }`، يعيد `boolean` |
| `POST` | `/session/:id/fork` | تفريع جلسة موجودة عند رسالة | المتن: `{ messageID? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | إلغاء جلسة قيد التشغيل | يعيد `boolean` |
| `POST` | `/session/:id/share` | مشاركة جلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `DELETE` | `/session/:id/share` | إلغاء مشاركة جلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/diff` | الحصول على diff لهذه الجلسة | الاستعلام: `messageID?`، يعيد <a href={typesUrl}><code>FileDiff[]</code></a> |
| `POST` | `/session/:id/summarize` | تلخيص الجلسة | المتن: `{ providerID, modelID }`، يعيد `boolean` |
| `POST` | `/session/:id/revert` | التراجع عن رسالة | المتن: `{ messageID, partID? }`، يعيد `boolean` |
| `POST` | `/session/:id/unrevert` | استعادة جميع الرسائل المتراجع عنها | يعيد `boolean` |
| `POST` | `/session/:id/permissions/:permissionID` | الرد على طلب إذن | المتن: `{ response, remember? }`، يعيد `boolean` |
| الطريقة | المسار | الوصف | الملاحظات |
| -------- | ---------------------------------------- | ---------------------------------- | -------------------------------------------------------------------------------- |
| `GET` | `/session` | سرد جميع الجلسات | يعيد <a href={typesUrl}><code>Session[]</code></a> |
| `POST` | `/session` | إنشاء جلسة جديدة | المتن: `{ parentID?, title? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/status` | الحصول على حالة الجلسات جميعها | يعيد `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
| `GET` | `/session/:id` | الحصول على تفاصيل الجلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `DELETE` | `/session/:id` | حذف جلسة وجميع بياناتها | يعيد `boolean` |
| `PATCH` | `/session/:id` | تحديث خصائص الجلسة | المتن: `{ title? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | الحصول على الجلسات الفرعية لجلسة | يعيد <a href={typesUrl}><code>Session[]</code></a> |
| `POST` | `/session/:id/init` | تحليل التطبيق وإنشاء `AGENTS.md` | المتن: `{ messageID, providerID, modelID }`، يعيد `boolean` |
| `POST` | `/session/:id/fork` | تفريع جلسة موجودة عند رسالة | المتن: `{ messageID? }`، يعيد <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | إلغاء جلسة قيد التشغيل | يعيد `boolean` |
| `POST` | `/session/:id/share` | مشاركة جلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `DELETE` | `/session/:id/share` | إلغاء مشاركة جلسة | يعيد <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/diff` | الحصول على diff لهذه الجلسة | الاستعلام: `messageID?`، يعيد <a href={typesUrl}><code>FileDiff[]</code></a> |
| `POST` | `/session/:id/summarize` | تلخيص الجلسة | المتن: `{ providerID, modelID }`، يعيد `boolean` |
| `POST` | `/session/:id/revert` | التراجع عن رسالة | المتن: `{ messageID, partID? }`، يعيد `boolean` |
| `POST` | `/session/:id/unrevert` | استعادة جميع الرسائل المتراجع عنها | يعيد `boolean` |
| `POST` | `/session/:id/permissions/:permissionID` | الرد على طلب إذن | المتن: `{ response, remember? }`، يعيد `boolean` |
---

View file

@ -210,27 +210,6 @@ description: إدارة الأدوات التي يمكن لـ LLM استخدام
---
### todowrite
أدِر قوائم المهام أثناء جلسات البرمجة.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
تنشئ هذه الأداة قوائم المهام وتحدّثها لتتبع التقدم أثناء العمليات المعقدة. يستخدمها LLM لتنظيم المهام متعددة الخطوات.
:::note
هذه الأداة معطلة للوكلاء الفرعيين افتراضيا، لكن يمكنك تفعيلها يدويا. [اعرف المزيد](/docs/agents/#permissions)
:::
---
### webfetch
اجلب محتوى الويب.

View file

@ -71,7 +71,7 @@ Ovaj agent je koristan kada želite da LLM analizira kod, predloži promjene ili
_Režim_: `subagent`
Agent opće namjene za istraživanje složenih pitanja i izvršavanje zadataka u više koraka. Ima potpuni pristup alatima (osim todo), tako da može mijenjati fajlove kada je to potrebno. Koristite ovo za paralelno pokretanje više jedinica rada.
Agent opće namjene za istraživanje složenih pitanja i izvršavanje zadataka u više koraka. Ima potpuni pristup alatima, tako da može mijenjati fajlove kada je to potrebno. Koristite ovo za paralelno pokretanje više jedinica rada.
---

View file

@ -181,10 +181,6 @@ Dodaci se mogu pretplatiti na događaje kao što je prikazano ispod u odjeljku P
- `session.status`
- `session.updated`
#### Todo događaji
- `todo.updated`
#### Shell događaji
- `shell.env`

View file

@ -151,7 +151,6 @@ opencode server izlaže sljedece API-je.
| `DELETE` | `/session/:id` | Obriši sesiju i sve njene podatke | Returns `boolean` |
| `PATCH` | `/session/:id` | Ažuriraj svojstva sesije | body: `{ title? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Dohvati pod-sesije sesije | Returns <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Dohvati listu zadataka za sesiju | Returns <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analiziraj aplikaciju i kreiraj `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` |
| `POST` | `/session/:id/fork` | Granaj postojeću sesiju na poruci | body: `{ messageID? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Prekini sesiju u toku | Returns `boolean` |

View file

@ -210,27 +210,6 @@ Ucitajte [skill](/docs/skills) (`SKILL.md` datoteku) i vratite njegov sadrzaj u
---
### todowrite
Upravlja todo listama tokom coding sesija.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Kreira i azurira liste zadataka za pracenje napretka tokom slozenih operacija. LLM ovo koristi za organizaciju zadataka u vise koraka.
:::note
Ovaj alat je po defaultu iskljucen za subagente, ali ga mozete rucno ukljuciti. [Saznajte vise](/docs/agents/#permissions)
:::
---
### webfetch
Preuzima web sadrzaj.

View file

@ -74,13 +74,13 @@ This command will guide you through creating a new agent with a custom system pr
#### Flags
| Flag | Short | Description |
| ------------------------------------------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <nobr><code>{"--path"}</code></nobr> | | Directory to write the agent file to (defaults to global or `.opencode/agent` based on the prompt) |
| <nobr><code>{"--description"}</code></nobr> | | What the agent should do |
| <nobr><code>{"--mode"}</code></nobr> | | Agent mode: `all`, `primary`, or `subagent` |
| <nobr><code>{"--permissions"}</code></nobr> | | Comma-separated list of permissions to allow (default: all). Available: `bash`, `read`, `edit`, `glob`, `grep`, `webfetch`, `task`, `todowrite`, `websearch`, `lsp`, `skill`. Anything omitted is denied. Alias: `--tools` |
| <nobr><code>{"--model"}</code></nobr> | `-m` | Model to use, in `provider/model` format |
| Flag | Short | Description |
| ------------------------------------------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <nobr><code>{"--path"}</code></nobr> | | Directory to write the agent file to (defaults to global or `.opencode/agent` based on the prompt) |
| <nobr><code>{"--description"}</code></nobr> | | What the agent should do |
| <nobr><code>{"--mode"}</code></nobr> | | Agent mode: `all`, `primary`, or `subagent` |
| <nobr><code>{"--permissions"}</code></nobr> | | Comma-separated list of permissions to allow (default: all). Available: `bash`, `read`, `edit`, `glob`, `grep`, `webfetch`, `task`, `websearch`, `lsp`, `skill`. Anything omitted is denied. Alias: `--tools` |
| <nobr><code>{"--model"}</code></nobr> | `-m` | Model to use, in `provider/model` format |
Passing all of `--path`, `--description`, `--mode`, and `--permissions` runs the command non-interactively.

View file

@ -72,7 +72,7 @@ Denne agent er nyttig, når du vil have LLM til at analysere kode, foreslå ænd
_Tilstand_: `subagent`
En agent til generelt formål at undersøge komplekse spørgsmål og udføre opgaver i flere trin. Har fuld værktøjsadgang (undtagen todo), så den kan foretage filændringer, når det er nødvendigt. Brug dette til at køre flere arbejdsenheder parallelt.
En agent til generelt formål at undersøge komplekse spørgsmål og udføre opgaver i flere trin. Har fuld værktøjsadgang, så den kan foretage filændringer, når det er nødvendigt. Brug dette til at køre flere arbejdsenheder parallelt.
---

View file

@ -188,10 +188,6 @@ Plugins kan abonnere på begivenheder som vist nedenfor i afsnittet Eksempler. H
- `session.status`
- `session.updated`
#### Todo-hændelser
- `todo.updated`
#### Shell-hændelser
- `shell.env`

View file

@ -154,7 +154,6 @@ OpenCode-serveren viser følgende API'er.
| `DELETE` | `/session/:id` | Slet en session og alle dens data | Returnerer `boolean` |
| `PATCH` | `/session/:id` | Opdater sessionegenskaber | body: `{ title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Få en sessions undersessioner | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Få to-do-listen for en session | Returnerer <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analyser appen og lav `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returnerer `boolean` |
| `POST` | `/session/:id/fork` | Fork en eksisterende session ved en besked | body: `{ messageID? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Afbryd en kørende session | Returnerer `boolean` |

View file

@ -210,27 +210,6 @@ Last inn en [ferdighet](/docs/skills) (en `SKILL.md` fil) og returner innholdet
---
### todowrite
Administrer to-doslister under kodingssessioner.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Opreter og opdaterer oppgavelister for at spore fremdrift under komplekse operasjoner. LLM bruger dette til at organisere flertrinnsoppgaver.
:::note
Dette verktøyet er deaktivert for subagenter som standard, men du kan aktivere det manuelt. [Finn ut mer](/docs/agents/#permissions)
:::
---
### webfetch
Hent nettinnhold.

View file

@ -58,7 +58,7 @@ Dieser Agent ist nützlich, wenn Sie möchten, dass LLM Code analysiert, Änderu
_Modus_: `subagent`
Ein Allzweckagent zur Recherche komplexerer Fragen und zur Ausführung mehrstufiger Aufgaben. Verfügt über vollständigen Zugriff auf das Tool (außer Todo), sodass bei Bedarf Dateiänderungen vorgenommen werden können. Verwenden Sie Matrizen, um mehrere Arbeitseinheiten parallel auszuführen.
Ein Allzweckagent zur Recherche komplexerer Fragen und zur Ausführung mehrstufiger Aufgaben. Verfügt über vollständigen Zugriff auf das Tool, sodass bei Bedarf Dateiänderungen vorgenommen werden können. Verwenden Sie Matrizen, um mehrere Arbeitseinheiten parallel auszuführen.
---

View file

@ -187,10 +187,6 @@ Plugins können Ereignisse abonnieren, wie unten im Abschnitt „Beispiele“ ge
- `session.status`
- `session.updated`
#### Todo-Ereignisse
- `todo.updated`
#### Shell-Ereignisse
- `shell.env`

View file

@ -158,7 +158,6 @@ Der opencode-Server stellt folgende APIs bereit.
| `DELETE` | `/session/:id` | Loescht eine Sitzung und alle Daten | Gibt `boolean` zurueck |
| `PATCH` | `/session/:id` | Aktualisiert Sitzungseigenschaften | body: `{ title? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Ruft Kind-Sitzungen einer Sitzung ab | Gibt <a href={typesUrl}><code>Session[]</code></a> zurueck |
| `GET` | `/session/:id/todo` | Ruft die Todo-Liste einer Sitzung ab | Gibt <a href={typesUrl}><code>Todo[]</code></a> zurueck |
| `POST` | `/session/:id/init` | Analysiert App und erstellt `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` |
| `POST` | `/session/:id/fork` | Forkt eine bestehende Sitzung an einer Nachricht | body: `{ messageID? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Bricht eine laufende Sitzung ab | Gibt `boolean` zurueck |

View file

@ -217,27 +217,6 @@ Laedt einen [Skill](/docs/skills) (eine `SKILL.md`-Datei) und gibt dessen Inhalt
---
### todowrite
Verwaltet Todo-Listen waehrend Coding-Sessions.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Erstellt und aktualisiert Aufgabenlisten, um den Fortschritt bei komplexen Operationen zu verfolgen. Das LLM nutzt dies, um mehrstufige Aufgaben zu organisieren.
:::note
Dieses Tool ist fuer Sub-Agenten standardmaessig deaktiviert, kann aber manuell aktiviert werden. [Mehr dazu](/docs/agents/#permissions)
:::
---
### webfetch
Ruft Webinhalte ab.

View file

@ -188,10 +188,6 @@ Los complementos pueden suscribirse a eventos como se ve a continuación en la s
- `session.status`
- `session.updated`
#### Eventos de Todo
- `todo.updated`
#### Eventos de Shell
- `shell.env`

View file

@ -154,7 +154,6 @@ El servidor opencode expone las siguientes API.
| `DELETE` | `/session/:id` | Eliminar una sesión y todos sus datos | Devuelve `boolean` |
| `PATCH` | `/session/:id` | Actualizar propiedades de sesión | cuerpo: `{ title? }`, devuelve <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Obtener las sesiones secundarias de una sesión | Devuelve <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Obtener la lista de tareas pendientes para una sesión | Devuelve <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analizar aplicación y crear `AGENTS.md` | cuerpo: `{ messageID, providerID, modelID }`, devuelve `boolean` |
| `POST` | `/session/:id/fork` | Bifurca una sesión existente en un mensaje | cuerpo: `{ messageID? }`, devuelve <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Cancelar una sesión en ejecución | Devuelve `boolean` |

View file

@ -210,27 +210,6 @@ Cargue una [habilidad](/docs/skills) (un archivo `SKILL.md`) y devuelva su conte
---
### todowrite
Administre listas de tareas pendientes durante las sesiones de codificación.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Crea y actualiza listas de tareas para realizar un seguimiento del progreso durante operaciones complejas. El LLM usa esto para organizar tareas de varios pasos.
:::note
Esta herramienta está deshabilitada para los subagentes de forma predeterminada, pero puede habilitarla manualmente. [Más información](/docs/agents/#permissions)
:::
---
### webfetch
Obtener contenido web.

View file

@ -72,7 +72,7 @@ Cet agent est utile lorsque vous souhaitez que le LLM analyse le code, suggère
_Mode_ : `subagent`
Un agent polyvalent pour traiter des questions complexes et exécuter des tâches en plusieurs étapes. Dispose d'un accès complet aux outils (sauf todo), il peut donc apporter des modifications aux fichiers en cas de besoin. Utilisez-le pour exécuter plusieurs unités de travail en parallèle.
Un agent polyvalent pour traiter des questions complexes et exécuter des tâches en plusieurs étapes. Dispose d'un accès complet aux outils, il peut donc apporter des modifications aux fichiers en cas de besoin. Utilisez-le pour exécuter plusieurs unités de travail en parallèle.
---

View file

@ -187,10 +187,6 @@ Les plugins peuvent s'abonner à des événements comme indiqué ci-dessous dans
- `session.status`
- `session.updated`
#### Événements à faire
- `todo.updated`
#### Événements Shell
- `shell.env`

View file

@ -154,7 +154,6 @@ Le serveur opencode expose les API suivantes.
| `DELETE` | `/session/:id` | Supprimer une session et toutes ses données | Renvoie `boolean` |
| `PATCH` | `/session/:id` | Mettre à jour les propriétés de la session | corps : `{ title? }`, renvoie <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Obtenir les sessions enfants d'une session | Renvoie <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Obtenez la liste de tâches pour une session | Renvoie <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analysez l'application et créez `AGENTS.md` | corps : `{ messageID, providerID, modelID }`, renvoie `boolean` |
| `POST` | `/session/:id/fork` | Forkez une session existante à un message | corps : `{ messageID? }`, renvoie <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Abandonner une session en cours | Renvoie `boolean` |

View file

@ -210,27 +210,6 @@ Chargez une [skill](/docs/skills) (un fichier `SKILL.md`) et renvoyez son conten
---
### à écrire
Gérez les listes de tâches pendant les sessions de codage.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Crée et met à jour des listes de tâches pour suivre la progression lors d'opérations complexes. Le LLM l'utilise pour organiser des tâches en plusieurs étapes.
:::note
Cet outil est désactivé par défaut pour les sous-agents, mais vous pouvez l'activer manuellement. [En savoir plus](/docs/agents/#permissions)
:::
---
### récupération sur le Web
Récupérer du contenu Web.

View file

@ -71,7 +71,7 @@ Questo agente è utile quando vuoi che l'LLM analizzi il codice, suggerisca modi
_Mode_: `subagent`
Un agente general-purpose per ricercare domande complesse ed eseguire task multi-step. Ha accesso completo agli strumenti (tranne todo), quindi può modificare file quando serve. Usalo per eseguire più unità di lavoro in parallelo.
Un agente general-purpose per ricercare domande complesse ed eseguire task multi-step. Ha accesso completo agli strumenti, quindi può modificare file quando serve. Usalo per eseguire più unità di lavoro in parallelo.
---

View file

@ -187,10 +187,6 @@ I plugin possono sottoscrivere eventi come mostrato sotto nella sezione Esempi.
- `session.status`
- `session.updated`
#### Eventi della todo
- `todo.updated`
#### Eventi della shell
- `shell.env`

View file

@ -151,7 +151,6 @@ Il server opencode espone le seguenti API.
| `DELETE` | `/session/:id` | Elimina una sessione e i suoi dati | Returns `boolean` |
| `PATCH` | `/session/:id` | Aggiorna proprieta sessione | body: `{ title? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Sessioni figlie | Returns <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Todo list della sessione | Returns <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analizza app e crea `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` |
| `POST` | `/session/:id/fork` | Fork di sessione su un messaggio | body: `{ messageID? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Interrompe una sessione in esecuzione | Returns `boolean` |

View file

@ -210,27 +210,6 @@ Carica una [skill](/docs/skills) (un file `SKILL.md`) e ne restituisce il conten
---
### todowrite
Gestisci todo list durante le sessioni di coding.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Crea e aggiorna liste di task per tracciare i progressi durante operazioni complesse. L'LLM lo usa per organizzare attivita' multi-step.
:::note
Questo strumento e' disabilitato per i subagenti di default, ma puoi abilitarlo manualmente. [Scopri di piu'](/docs/agents/#permissions)
:::
---
### webfetch
Recupera contenuti dal web.

View file

@ -71,7 +71,7 @@ _モード_: `primary`
_モード_: `subagent`
複雑な質問を調査し、複数ステップのタスクを実行するための汎用エージェント。完全なツールアクセス権 (todo を除く) があるため、必要に応じてファイルを変更できます。これを使用して、複数の作業単位を並行して実行します。
複雑な質問を調査し、複数ステップのタスクを実行するための汎用エージェント。完全なツールアクセス権があるため、必要に応じてファイルを変更できます。これを使用して、複数の作業単位を並行して実行します。
---

View file

@ -188,10 +188,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### ToDo イベント
- `todo.updated`
#### シェルイベント
- `shell.env`

View file

@ -149,7 +149,6 @@ OpenCode サーバーは次の API を公開します。
| `DELETE` | `/session/:id` | セッションとそのすべてのデータを削除する | 戻り値 `boolean` |
| `PATCH` | `/session/:id` | セッションのプロパティを更新する | 本文: `{ title? }`、<a href={typesUrl}><code>Session</code></a> を返します。 |
| `GET` | `/session/:id/children` | セッションの子セッションを取得する | 戻り値 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | セッションの ToDo リストを取得する | 戻り値 <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | アプリを分析して `AGENTS.md` を作成する | 本文: `{ messageID, providerID, modelID }`、`boolean` を返します。 |
| `POST` | `/session/:id/fork` | メッセージで既存のセッションをフォークする | 本文: `{ messageID? }`、<a href={typesUrl}><code>Session</code></a> を返します。 |
| `POST` | `/session/:id/abort` | 実行中のセッションを中止する | 戻り値 `boolean` |

View file

@ -210,27 +210,6 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
---
### todowrite
コーディングセッション中に ToDo リストを管理します。
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
タスクリストを作成および更新して、複雑な操作中の進行状況を追跡します。 LLM はこれを使用して、複数ステップのタスクを整理します。
:::note
このツールはデフォルトではサブエージェントに対して無効になっていますが、手動で有効にすることができます。 [詳細はこちら](/docs/agents/#permissions)
:::
---
### webfetch
Web コンテンツを取得します。

View file

@ -71,7 +71,7 @@ Plan은 계획과 분석에 특화된 제한형 agent입니다. 더 높은 제
_Mode_: `subagent`
복잡한 질문을 조사하고 다단계 작업을 수행하기 위한 범용 agent입니다. todo를 제외한 모든 tool 접근이 가능하므로 필요하면 파일 수정도 할 수 있습니다. 여러 작업 단위를 병렬로 처리할 때 사용하세요.
복잡한 질문을 조사하고 다단계 작업을 수행하기 위한 범용 agent입니다. 모든 tool 접근이 가능하므로 필요하면 파일 수정도 할 수 있습니다. 여러 작업 단위를 병렬로 처리할 때 사용하세요.
---

View file

@ -187,10 +187,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### Todo 이벤트
- `todo.updated`
#### 셸 이벤트
- `shell.env`

View file

@ -154,7 +154,6 @@ opencode 서버는 다음과 같은 API를 노출합니다.
| `DELETE` | `/session/:id` | 세션 삭제 및 모든 데이터 | `boolean` |
| `PATCH` | `/session/:id` | 업데이트 세션 속성 | 본체: `{ title? }`, 반환 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | 세션의 하위 세션 | 리턴 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | 세션의 할 일(Todo) 목록 받기 | <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | 앱 초기화 및 `AGENTS.md` 분석 | 몸: `{ messageID, providerID, modelID }`, 반환 `boolean` |
| `POST` | `/session/:id/fork` | 메시지의 기존 세션 | 몸: `{ messageID? }`, 반환 <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | 운영 중인 세션 | 반품 `boolean` |

View file

@ -210,27 +210,6 @@ LSP 서버가 프로젝트에 사용할 수 있는 구성하려면 [LSP Servers]
---
## todowrite
코딩 세션 중에 todo 목록을 관리합니다.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
복잡한 작업 중에 진행 상황을 추적하기 위해 작업 목록을 만들고 업데이트합니다. LLM은 멀티 단계 작업을 구성하기 위해 이것을 사용합니다.
:::note
이 도구는 기본으로 시약을 비활성화하지만 수동으로 활성화 할 수 있습니다. [더 알아보기](/docs/agents/#permissions)
:::
---
#### webfetch
Fetch 웹 콘텐츠.

View file

@ -71,7 +71,7 @@ Denne agenten er nyttig når du vil at LLM skal analysere kode, foreslå endring
_Modus_: `subagent`
En generell agent for å undersøke komplekse spørsmål og utføre flertrinnsoppgaver. Har full verktøytilgang (unntatt todo), slik at den kan gjøre filendringer når det er nødvendig. Bruk denne til å kjøre flere arbeidsenheter parallelt.
En generell agent for å undersøke komplekse spørsmål og utføre flertrinnsoppgaver. Har full verktøytilgang, slik at den kan gjøre filendringer når det er nødvendig. Bruk denne til å kjøre flere arbeidsenheter parallelt.
---

View file

@ -188,10 +188,6 @@ Plugins kan abonnere på hendelser som vist nedenfor i Eksempler-delen. Her er e
- `session.status`
- `session.updated`
#### Todo-hendelser
- `todo.updated`
#### Shell-hendelser
- `shell.env`

View file

@ -154,7 +154,6 @@ opencode-serveren viser følgende APIer.
| `DELETE` | `/session/:id` | Slett en økt og alle dens data | Returnerer `boolean` |
| `PATCH` | `/session/:id` | Oppdater øktegenskaper | body: `{ title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Hent en økts barneøkter | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Hent gjøremålslisten for en økt | Returnerer <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analyser appen og lag `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returnerer `boolean` |
| `POST` | `/session/:id/fork` | Fork en eksisterende økt ved en melding | body: `{ messageID? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Avbryt en kjørende økt | Returnerer `boolean` |

View file

@ -210,27 +210,6 @@ Last inn en [ferdighet](/docs/skills) (en `SKILL.md` fil) og returner innholdet
---
### todowrite
Administrer gjøremålslister under kodingsøkter.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Oppretter og oppdaterer oppgavelister for å spore fremdrift under komplekse operasjoner. LLM bruker dette til å organisere flertrinnsoppgaver.
:::note
Dette verktøyet er deaktivert for subagenter som standard, men du kan aktivere det manuelt. [Finn ut mer](/docs/agents/#permissions)
:::
---
### webfetch
Hent nettinnhold.

View file

@ -188,10 +188,6 @@ Wtyczki mogą subskrybować zdarzenia, jak zastosować poniżej sekcji Przykład
- `session.status`
- `session.updated`
#### Wydarzenia do zrobienia
- `todo.updated`
#### Wydarzenia shell
- `shell.env`

View file

@ -154,7 +154,6 @@ Serwer opencode udostępnia następujące interfejsy API.
| `DELETE` | `/session/:id` | Usuń sesję i wszystkie jej dane | Zwraca `boolean` |
| `PATCH` | `/session/:id` | Aktualizuj właściwości sesji | treść: `{ title? }`, zwraca <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Pobierz sesje podrzędne sesji | Zwraca <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Pobierz listę rzeczy do zrobienia dla sesji | Zwraca <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Przeanalizuj aplikację i utwórz `AGENTS.md` | treść: `{ messageID, providerID, modelID }`, zwraca `boolean` |
| `POST` | `/session/:id/fork` | Rozwiń istniejącą sesję w wiadomości | treść: `{ messageID? }`, zwraca <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Przerwij trwającą sesję | Zwraca `boolean` |

View file

@ -210,27 +210,6 @@ Załaduj [umiejętność](/docs/skills) (plik `SKILL.md`) i zwróć jej treść
---
### todowrite
Zarządzaj listami zadań (todo) podczas sesji kodowania.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Tworzy i aktualizuje listy zadań w celu śledzenia postępu podczas złożonych operacji. LLM wykorzystuje to do organizowania zadań wieloetapowych.
:::note
To narzędzie jest domyślnie wyłączone dla subagentów, ale można je włączyć ręcznie. [Dowiedz się więcej](/docs/agents/#permissions)
:::
---
### webfetch
Pobieraj treści z sieci.

View file

@ -188,10 +188,6 @@ Plugins can subscribe to events as seen below in the Examples section. Here is a
- `session.status`
- `session.updated`
#### Todo Events
- `todo.updated`
#### Shell Events
- `shell.env`

View file

@ -72,7 +72,7 @@ Este agente é útil quando você deseja que o LLM analise código, sugira alter
_Modo_: `subagent`
Um agente de propósito geral para pesquisar questões complexas e executar tarefas em múltiplas etapas. Tem acesso total às ferramentas (exceto todo), portanto, pode fazer alterações em arquivos quando necessário. Use isso para executar várias unidades de trabalho em paralelo.
Um agente de propósito geral para pesquisar questões complexas e executar tarefas em múltiplas etapas. Tem acesso total às ferramentas, portanto, pode fazer alterações em arquivos quando necessário. Use isso para executar várias unidades de trabalho em paralelo.
---

View file

@ -187,10 +187,6 @@ Plugins podem se inscrever em eventos como visto abaixo na seção Exemplos. Aqu
- `session.status`
- `session.updated`
#### Eventos de Todo
- `todo.updated`
#### Eventos de Shell
- `shell.env`

View file

@ -151,7 +151,6 @@ O servidor opencode expõe as seguintes APIs.
| `DELETE` | `/session/:id` | Deletar uma sessão e todos os seus dados | Retorna `boolean` |
| `PATCH` | `/session/:id` | Atualizar propriedades da sessão | corpo: `{ title? }`, retorna <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Obter as sessões filhas de uma sessão | Retorna <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Obter a lista de tarefas para uma sessão | Retorna <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analisar o app e criar `AGENTS.md` | corpo: `{ messageID, providerID, modelID }`, retorna `boolean` |
| `POST` | `/session/:id/fork` | Fazer um fork de uma sessão existente em uma mensagem | corpo: `{ messageID? }`, retorna <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Abortar uma sessão em execução | Retorna `boolean` |

View file

@ -210,27 +210,6 @@ Carregue uma [skill](/docs/skills) (um arquivo `SKILL.md`) e retorne seu conteú
---
### todowrite
Gerencie listas de tarefas durante sessões de codificação.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Cria e atualiza listas de tarefas para acompanhar o progresso durante operações complexas. O LLM usa isso para organizar tarefas de múltiplas etapas.
:::note
Esta ferramenta está desativada para subagentes por padrão, mas você pode ativá-la manualmente. [Saiba mais](/docs/agents/#permissions)
:::
---
### webfetch
Busque conteúdo da web.

View file

@ -188,10 +188,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### События
- `todo.updated`
#### События shell
- `shell.env`

View file

@ -154,7 +154,6 @@ For example, `http://localhost:4096/doc`. Use the spec to generate clients or in
| `DELETE` | `/session/:id` | Удалить сессию и все её данные | Возвращает `boolean` |
| `PATCH` | `/session/:id` | Обновить свойства сессии | body: `{ title? }`, возвращает <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Получить дочерние сессии | Возвращает <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Получить список задач для сессии | Возвращает <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Анализ приложения и создание `AGENTS.md` | body: `{ messageID, providerID, modelID }`, возвращает `boolean` |
| `POST` | `/session/:id/fork` | Ответвление сессии от сообщения | body: `{ messageID? }`, возвращает <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Прервать запущенную сессию | Возвращает `boolean` |

View file

@ -210,27 +210,6 @@ description: Управляйте инструментами, которые м
---
### todowrite
Управляйте списками дел во время сеансов кодирования.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Создает и обновляет списки задач для отслеживания прогресса во время сложных операций. LLM использует это для организации многоэтапных задач.
:::note
По умолчанию этот инструмент отключен для субагентов, но вы можете включить его вручную. [Подробнее](/docs/agents/#permissions)
:::
---
### webfetch
Получить веб-контент.

View file

@ -154,7 +154,6 @@ The opencode server exposes the following APIs.
| `DELETE` | `/session/:id` | Delete a session and all its data | Returns `boolean` |
| `PATCH` | `/session/:id` | Update session properties | body: `{ title? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | Get a session's child sessions | Returns <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | Get the todo list for a session | Returns <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analyze app and create `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` |
| `POST` | `/session/:id/fork` | Fork an existing session at a message | body: `{ messageID? }`, returns <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | Abort a running session | Returns `boolean` |

View file

@ -188,10 +188,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### เหตุการณ์ที่ต้องทำ
- `todo.updated`
#### กิจกรรมของ shell
- `shell.env`

View file

@ -154,7 +154,6 @@ http://<hostname>:<port>/doc
| `DELETE` | `/session/:id` | ลบเซสชันและข้อมูลทั้งหมด | ส่งคืน `boolean` |
| `PATCH` | `/session/:id` | อัปเดตคุณสมบัติเซสชัน | body: `{ title? }` ส่งคืน <a href={typesUrl}><code>เซสชัน</code></a> |
| `GET` | `/session/:id/children` | รับเซสชันย่อยของเซสชัน | ส่งคืน <a href={typesUrl}><code>เซสชัน[]</code></a> |
| `GET` | `/session/:id/todo` | รับรายการสิ่งที่ต้องทำสำหรับเซสชัน | ส่งคืน <a href={typesUrl}><code>สิ่งที่ต้องทำ[]</code></a> |
| `POST` | `/session/:id/init` | วิเคราะห์แอปและสร้าง `AGENTS.md` | เนื้อความ: `{ messageID, providerID, modelID }` ส่งคืน `boolean` |
| `POST` | `/session/:id/fork` | แยกเซสชันที่มีอยู่ไปที่ข้อความ | body: `{ messageID? }` ส่งคืน <a href={typesUrl}><code>เซสชัน</code></a> |
| `POST` | `/session/:id/abort` | ยกเลิกเซสชันที่ทำงานอยู่ | ส่งคืน `boolean` |

View file

@ -210,27 +210,6 @@ description: จัดการเครื่องมือที่ LLM ส
---
### todowrite
จัดการรายการสิ่งที่ต้องทำระหว่างเซสชันการเขียนโค้ด
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
สร้างและอัปเดตรายการงานเพื่อติดตามความคืบหน้าระหว่างการดำเนินการที่ซับซ้อน LLM ใช้สิ่งนี้เพื่อจัดระเบียบงานที่มีหลายขั้นตอน
:::note
เครื่องมือนี้ปิดใช้งานสำหรับตัวแทนย่อยตามค่าเริ่มต้น แต่คุณสามารถเปิดใช้งานได้ด้วยตนเอง [เรียนรู้เพิ่มเติม](/docs/agents/#สิทธิ์)
:::
---
### webfetch
ดึงเนื้อหาเว็บ

View file

@ -214,27 +214,6 @@ Load a [skill](/docs/skills) (a `SKILL.md` file) and return its content in the c
---
### todowrite
Manage todo lists during coding sessions.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Creates and updates task lists to track progress during complex operations. The LLM uses this to organize multi-step tasks.
:::note
This tool is disabled for subagents by default, but you can enable it manually. [Learn more](/docs/agents/#permissions)
:::
---
### webfetch
Fetch web content.

View file

@ -187,10 +187,6 @@ Eklentiler aşağıdaki Örnekler bölümünde görüldüğü gibi etkinliklere
- `session.status`
- `session.updated`
#### Yapılacaklar Olayları
- `todo.updated`
#### Kabuk Olayları
- `shell.env`

View file

@ -152,7 +152,6 @@ opencode sunucusu aşağıdaki API'leri sunar.
| `DELETE` | `/session/:id` | Bir oturumu ve tüm verilerini sil | `boolean` döndürür |
| `PATCH` | `/session/:id` | Oturum özelliklerini güncelle | gövde: `{ title? }`, <a href={typesUrl}><code>Session</code></a> döndürür |
| `GET` | `/session/:id/children` | Bir oturumun alt oturumlarını al | <a href={typesUrl}><code>Session[]</code></a> döndürür |
| `GET` | `/session/:id/todo` | Bir oturum için yapılacaklar listesini al | <a href={typesUrl}><code>Todo[]</code></a> döndürür |
| `POST` | `/session/:id/init` | Uygulamayı analiz et ve `AGENTS.md` oluştur | gövde: `{ messageID, providerID, modelID }`, `boolean` döndürür |
| `POST` | `/session/:id/fork` | Mevcut bir oturumu bir mesajda çatalla | gövde: `{ messageID? }`, <a href={typesUrl}><code>Session</code></a> döndürür |
| `POST` | `/session/:id/abort` | Çalışan bir oturumu iptal et | `boolean` döndürür |

View file

@ -210,27 +210,6 @@ Bir [skill](/docs/skills) (`SKILL.md` dosyası) yükler ve içeriğini konuşmay
---
### todowrite
Kodlama oturumlarında yapılacaklar listesini yönetir.
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
Karmaşık işlemlerde ilerlemeyi takip etmek için görev listeleri oluşturur ve günceller. LLM bunu çok adımlı görevleri düzenlemek için kullanır.
:::note
Bu araç alt agent'lar için varsayılan olarak devre dışıdır, ama manuel etkinleştirebilirsiniz. [Daha fazla bilgi](/docs/agents/#permissions)
:::
---
### webfetch
Web içeriği getirir.

View file

@ -71,7 +71,7 @@ _模式_`primary`
_模式_`subagent`
一个用于研究复杂问题和执行多步骤任务的通用代理。拥有完整的工具访问权限todo 除外),因此可以在需要时修改文件。可用于并行运行多个工作单元。
一个用于研究复杂问题和执行多步骤任务的通用代理。拥有完整的工具访问权限,因此可以在需要时修改文件。可用于并行运行多个工作单元。
---

View file

@ -187,10 +187,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### 待办事项事件
- `todo.updated`
#### Shell 事件
- `shell.env`

View file

@ -151,7 +151,6 @@ opencode 服务器暴露以下 API。
| `DELETE` | `/session/:id` | 删除会话及其所有数据 | 返回 `boolean` |
| `PATCH` | `/session/:id` | 更新会话属性 | 请求体:`{ title? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | 获取会话的子会话 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | 获取会话的待办事项列表 | 返回 <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | 分析应用并创建 `AGENTS.md` | 请求体:`{ messageID, providerID, modelID }`,返回 `boolean` |
| `POST` | `/session/:id/fork` | 在某条消息处分叉现有会话 | 请求体:`{ messageID? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | 中止正在运行的会话 | 返回 `boolean` |

View file

@ -210,27 +210,6 @@ description: 管理 LLM 可以使用的工具。
---
### todowrite
在编码会话中管理待办事项列表。
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
创建和更新任务列表以跟踪复杂操作的进度。LLM 使用此工具来组织多步骤任务。
:::note
该工具默认对子代理禁用,但您可以手动启用。[了解更多](/docs/agents/#permissions)
:::
---
### webfetch
获取网页内容。

View file

@ -71,7 +71,7 @@ _模式_`primary`
_模式_`subagent`
一個用於研究複雜問題和執行多步驟任務的通用代理。擁有完整的工具存取權限todo 除外),因此可以在需要時修改檔案。可用於並行執行多個工作單元。
一個用於研究複雜問題和執行多步驟任務的通用代理。擁有完整的工具存取權限,因此可以在需要時修改檔案。可用於並行執行多個工作單元。
---

View file

@ -187,10 +187,6 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### 待辦事項事件
- `todo.updated`
#### Shell 事件
- `shell.env`

View file

@ -151,7 +151,6 @@ opencode 伺服器暴露以下 API。
| `DELETE` | `/session/:id` | 刪除工作階段及其所有資料 | 回傳 `boolean` |
| `PATCH` | `/session/:id` | 更新工作階段屬性 | 請求主體:`{ title? }`,回傳 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | 取得工作階段的子工作階段 | 回傳 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | 取得工作階段的待辦事項清單 | 回傳 <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | 分析應用程式並建立 `AGENTS.md` | 請求主體:`{ messageID, providerID, modelID }`,回傳 `boolean` |
| `POST` | `/session/:id/fork` | 在某條訊息處分岔現有工作階段 | 請求主體:`{ messageID? }`,回傳 <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | 中止正在執行的工作階段 | 回傳 `boolean` |

View file

@ -210,27 +210,6 @@ description: 管理 LLM 可以使用的工具。
---
### todowrite
在編碼工作階段中管理待辦事項清單。
```json title="opencode.json" {4}
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"todowrite": "allow"
}
}
```
建立和更新任務清單以追蹤複雜操作的進度。LLM 使用此工具來組織多步驟任務。
:::note
該工具預設對子代理停用,但您可以手動啟用。[了解更多](/docs/agents/#permissions)
:::
---
### webfetch
擷取網頁內容。

View file

@ -64,9 +64,6 @@
"share.attachment": "مرفق",
"share.thinking": "تفكير",
"share.thinking_pending": "جارٍ التفكير...",
"share.creating_plan": "جارٍ إنشاء الخطة",
"share.completing_plan": "جارٍ إكمال الخطة",
"share.updating_plan": "جارٍ تحديث الخطة",
"share.match_one": "مطابقة",
"share.match_other": "مطابقات",
"share.result_one": "نتيجة",

View file

@ -64,9 +64,6 @@
"share.attachment": "Prilog",
"share.thinking": "Razmišljanje",
"share.thinking_pending": "razmišlja...",
"share.creating_plan": "Kreiranje plana",
"share.completing_plan": "Završavanje plana",
"share.updating_plan": "Ažuriranje plana",
"share.match_one": "podudaranje",
"share.match_other": "podudaranja",
"share.result_one": "rezultat",

View file

@ -64,9 +64,6 @@
"share.attachment": "Vedhæftet fil",
"share.thinking": "Tænker",
"share.thinking_pending": "Tænker...",
"share.creating_plan": "Oprettelse af plan",
"share.completing_plan": "Færdiggør plan",
"share.updating_plan": "Opdatering af plan",
"share.match_one": "træf",
"share.match_other": "træf",
"share.result_one": "resultat",

View file

@ -64,9 +64,6 @@
"share.attachment": "Anhang",
"share.thinking": "Denken",
"share.thinking_pending": "Denken...",
"share.creating_plan": "Plan wird erstellt",
"share.completing_plan": "Plan wird abgeschlossen",
"share.updating_plan": "Plan wird aktualisiert",
"share.match_one": "Treffer",
"share.match_other": "Treffer",
"share.result_one": "Ergebnis",

View file

@ -64,9 +64,6 @@
"share.attachment": "Attachment",
"share.thinking": "Thinking",
"share.thinking_pending": "Thinking...",
"share.creating_plan": "Creating plan",
"share.completing_plan": "Completing plan",
"share.updating_plan": "Updating plan",
"share.match_one": "match",
"share.match_other": "matches",
"share.result_one": "result",

View file

@ -64,9 +64,6 @@
"share.attachment": "Adjunto",
"share.thinking": "Pensamiento",
"share.thinking_pending": "Pensando...",
"share.creating_plan": "Creando plan",
"share.completing_plan": "Completando el plan",
"share.updating_plan": "Actualizando el plan",
"share.match_one": "coincidencia",
"share.match_other": "coincidencias",
"share.result_one": "resultado",

View file

@ -64,9 +64,6 @@
"share.attachment": "Pièce jointe",
"share.thinking": "Réflexion",
"share.thinking_pending": "Réflexion...",
"share.creating_plan": "Création du plan",
"share.completing_plan": "Finalisation du plan",
"share.updating_plan": "Mise à jour du plan",
"share.match_one": "correspondance",
"share.match_other": "correspondances",
"share.result_one": "résultat",

View file

@ -64,9 +64,6 @@
"share.attachment": "Allegato",
"share.thinking": "Elaborazione",
"share.thinking_pending": "Elaborazione...",
"share.creating_plan": "Creazione piano",
"share.completing_plan": "Completamento piano",
"share.updating_plan": "Aggiornamento piano",
"share.match_one": "corrispondenza",
"share.match_other": "corrispondenze",
"share.result_one": "risultato",

View file

@ -64,9 +64,6 @@
"share.attachment": "添付ファイル",
"share.thinking": "思考",
"share.thinking_pending": "思考中...",
"share.creating_plan": "計画を作成",
"share.completing_plan": "計画を完了",
"share.updating_plan": "計画を更新",
"share.match_one": "一致",
"share.match_other": "一致",
"share.result_one": "結果",

View file

@ -64,9 +64,6 @@
"share.attachment": "첨부 파일",
"share.thinking": "생각 중",
"share.thinking_pending": "생각 중...",
"share.creating_plan": "계획 생성 중",
"share.completing_plan": "계획 완료 중",
"share.updating_plan": "계획 업데이트 중",
"share.match_one": "일치",
"share.match_other": "일치",
"share.result_one": "결과",

View file

@ -64,9 +64,6 @@
"share.attachment": "Vedlegg",
"share.thinking": "Tenker",
"share.thinking_pending": "Tenker...",
"share.creating_plan": "Oppretter plan",
"share.completing_plan": "Fullfører plan",
"share.updating_plan": "Oppdaterer plan",
"share.match_one": "treff",
"share.match_other": "treff",
"share.result_one": "resultat",

View file

@ -64,9 +64,6 @@
"share.attachment": "Załącznik",
"share.thinking": "Myślenie",
"share.thinking_pending": "Myślenie...",
"share.creating_plan": "Tworzenie planu",
"share.completing_plan": "Uzupełnianie planu",
"share.updating_plan": "Aktualizacja planu",
"share.match_one": "dopasowanie",
"share.match_other": "dopasowania",
"share.result_one": "wynik",

View file

@ -64,9 +64,6 @@
"share.attachment": "Anexo",
"share.thinking": "Pensando",
"share.thinking_pending": "Pensando...",
"share.creating_plan": "Criando plano",
"share.completing_plan": "Concluindo plano",
"share.updating_plan": "Atualizando plano",
"share.match_one": "correspondência",
"share.match_other": "correspondências",
"share.result_one": "resultado",

View file

@ -64,9 +64,6 @@
"share.attachment": "Вложение",
"share.thinking": "Размышление",
"share.thinking_pending": "Размышление...",
"share.creating_plan": "Создание плана",
"share.completing_plan": "Завершение плана",
"share.updating_plan": "Обновление плана",
"share.match_one": "совпадение",
"share.match_other": "совпадений",
"share.result_one": "результат",

View file

@ -64,9 +64,6 @@
"share.attachment": "ไฟล์แนบ",
"share.thinking": "กำลังคิด",
"share.thinking_pending": "กำลังคิด...",
"share.creating_plan": "กำลังสร้างแผน",
"share.completing_plan": "กำลังทำแผนให้เสร็จ",
"share.updating_plan": "กำลังอัปเดตแผน",
"share.match_one": "รายการที่ตรงกัน",
"share.match_other": "รายการที่ตรงกัน",
"share.result_one": "ผลลัพธ์",

View file

@ -64,9 +64,6 @@
"share.attachment": "Ek",
"share.thinking": "Düşünüyor",
"share.thinking_pending": "Düşünüyor...",
"share.creating_plan": "Plan oluşturuluyor",
"share.completing_plan": "Plan tamamlanıyor",
"share.updating_plan": "Plan güncelleniyor",
"share.match_one": "eşleşme",
"share.match_other": "eşleşme",
"share.result_one": "sonuç",

View file

@ -64,9 +64,6 @@
"share.attachment": "附件",
"share.thinking": "思考",
"share.thinking_pending": "思考中...",
"share.creating_plan": "正在创建计划",
"share.completing_plan": "正在完成计划",
"share.updating_plan": "正在更新计划",
"share.match_one": "匹配",
"share.match_other": "匹配项",
"share.result_one": "结果",

View file

@ -64,9 +64,6 @@
"share.attachment": "附件",
"share.thinking": "思考中",
"share.thinking_pending": "思考中...",
"share.creating_plan": "建立計畫",
"share.completing_plan": "完成計畫",
"share.updating_plan": "更新計畫",
"share.match_one": "符合項目",
"share.match_other": "符合項目",
"share.result_one": "結果",

View file

@ -59,9 +59,6 @@ const messages = {
attachment: tx("share.attachment"),
thinking: tx("share.thinking"),
thinking_pending: tx("share.thinking_pending"),
creating_plan: tx("share.creating_plan"),
completing_plan: tx("share.completing_plan"),
updating_plan: tx("share.updating_plan"),
match_one: tx("share.match_one"),
match_other: tx("share.match_other"),
result_one: tx("share.result_one"),