Merge pull request #223 from Kilo-Org/catrielmuller/regenerate-sdk

Regenerate sdk / Format prettier
This commit is contained in:
Catriel Müller
2026-02-10 20:28:51 -03:00
committed by GitHub
16 changed files with 1702 additions and 1409 deletions
+1 -2
View File
@@ -137,8 +137,7 @@ export const dict = {
"provider.connect.oauth.code.invalid": "رمز التفويض غير صالح",
"provider.connect.oauth.auto.visit.prefix": "قم بزيارة ",
"provider.connect.oauth.auto.visit.link": "هذا الرابط",
"provider.connect.oauth.auto.visit.suffix":
" وأدخل الرمز أدناه لتوصيل حسابك واستخدام نماذج {{provider}} في Kilo.",
"provider.connect.oauth.auto.visit.suffix": " وأدخل الرمز أدناه لتوصيل حسابك واستخدام نماذج {{provider}} في Kilo.",
"provider.connect.oauth.auto.confirmationCode": "رمز التأكيد",
"provider.connect.toast.connected.title": "تم توصيل {{provider}}",
"provider.connect.toast.connected.description": "نماذج {{provider}} متاحة الآن للاستخدام.",
+2 -4
View File
@@ -363,8 +363,7 @@ export const dict = {
"toast.session.listFailed.title": "Échec du chargement des sessions pour {{project}}",
"toast.update.title": "Mise à jour disponible",
"toast.update.description":
"Une nouvelle version d'Kilo ({{version}}) est maintenant disponible pour installation.",
"toast.update.description": "Une nouvelle version d'Kilo ({{version}}) est maintenant disponible pour installation.",
"toast.update.action.installRestart": "Installer et redémarrer",
"toast.update.action.notYet": "Pas encore",
@@ -506,8 +505,7 @@ export const dict = {
"sidebar.workspaces.enable": "Activer les espaces de travail",
"sidebar.workspaces.disable": "Désactiver les espaces de travail",
"sidebar.gettingStarted.title": "Commencer",
"sidebar.gettingStarted.line1":
"Kilo inclut des modèles gratuits pour que vous puissiez commencer immédiatement.",
"sidebar.gettingStarted.line1": "Kilo inclut des modèles gratuits pour que vous puissiez commencer immédiatement.",
"sidebar.gettingStarted.line2":
"Connectez n'importe quel fournisseur pour utiliser des modèles, y compris Claude, GPT, Gemini etc.",
"sidebar.project.recentSessions": "Sessions récentes",
+1 -2
View File
@@ -141,8 +141,7 @@ export const dict = {
"provider.connect.oauth.code.invalid": "รหัสการอนุญาตไม่ถูกต้อง",
"provider.connect.oauth.auto.visit.prefix": "เยี่ยมชม ",
"provider.connect.oauth.auto.visit.link": "ลิงก์นี้",
"provider.connect.oauth.auto.visit.suffix":
" และป้อนรหัสด้านล่างเพื่อเชื่อมต่อบัญชีและใช้โมเดล {{provider}} ใน Kilo",
"provider.connect.oauth.auto.visit.suffix": " และป้อนรหัสด้านล่างเพื่อเชื่อมต่อบัญชีและใช้โมเดล {{provider}} ใน Kilo",
"provider.connect.oauth.auto.confirmationCode": "รหัสยืนยัน",
"provider.connect.toast.connected.title": "{{provider}} ที่เชื่อมต่อแล้ว",
"provider.connect.toast.connected.description": "โมเดล {{provider}} พร้อมใช้งานแล้ว",
+1 -2
View File
@@ -138,8 +138,7 @@ export const dict = {
"provider.connect.oauth.code.invalid": "授權碼無效",
"provider.connect.oauth.auto.visit.prefix": "造訪 ",
"provider.connect.oauth.auto.visit.link": "此連結",
"provider.connect.oauth.auto.visit.suffix":
" 並輸入以下程式碼,以連線你的帳戶並在 Kilo 中使用 {{provider}} 模型。",
"provider.connect.oauth.auto.visit.suffix": " 並輸入以下程式碼,以連線你的帳戶並在 Kilo 中使用 {{provider}} 模型。",
"provider.connect.oauth.auto.confirmationCode": "確認碼",
"provider.connect.toast.connected.title": "{{provider}} 已連線",
"provider.connect.toast.connected.description": "現在可以使用 {{provider}} 模型了。",
@@ -46,6 +46,7 @@ The chat view renders regardless of connection state. When the extension is conn
```
Files to change:
- [`webview-ui/src/App.tsx`](../../webview-ui/src/App.tsx) or [`webview-ui/src/components/chat/ChatView.tsx`](../../webview-ui/src/components/chat/ChatView.tsx) — add connection state gating
- New file `webview-ui/src/components/LoadingPanel.tsx` — loading spinner component
- New file `webview-ui/src/components/ErrorPanel.tsx` — error display with retry
@@ -42,7 +42,7 @@ No markdown library is imported. No syntax highlighting exists.
The JetBrains plugin optimizes streaming by tracking code block count:
```typescript
````typescript
const newCodeBlockCount = (newText.match(/```/g) || []).length
if (newCodeBlockCount !== lastCodeBlockCount) {
// Structure changed — full re-parse
@@ -51,15 +51,17 @@ if (newCodeBlockCount !== lastCodeBlockCount) {
// Append to last text node (fast path)
appendToLastTextNode(delta)
}
```
````
For the initial implementation, a simpler approach works:
1. Use `marked` or `markdown-it` for parsing
2. Use `highlight.js` for syntax highlighting
3. Debounce re-render during streaming (e.g., 50ms)
4. Use `innerHTML` with CSP nonce for rendered HTML
Files to change:
- [`webview-ui/src/components/chat/Message.tsx`](../../webview-ui/src/components/chat/Message.tsx) — replace `TextPartView` with markdown renderer
- New file `webview-ui/src/components/chat/MarkdownRenderer.tsx` — markdown rendering component
- [`webview-ui/src/styles/chat.css`](../../webview-ui/src/styles/chat.css) — markdown and syntax highlighting styles
@@ -44,6 +44,7 @@ function log(level: string, message: string): void {
```
Files to change:
- [`src/extension.ts`](../../src/extension.ts) — create output channel
- New file `src/utils/logger.ts` — centralized logging utility
- All files currently using `console.log("[Kilo New] ...")` — optionally migrate
@@ -42,4 +42,5 @@ try {
```
Files to change:
- [`src/services/cli-backend/http-client.ts`](../../src/services/cli-backend/http-client.ts) — add `AbortController` with timeout to `request()`
@@ -54,6 +54,7 @@ this.reconnectDelay = 2000
```
Files to change:
- [`src/services/cli-backend/sse-client.ts`](../../src/services/cli-backend/sse-client.ts) — add reconnect logic
- [`src/services/cli-backend/connection-service.ts`](../../src/services/cli-backend/connection-service.ts) — add `"reconnecting"` to `ConnectionState`
- [`webview-ui/src/types/messages.ts`](../../webview-ui/src/types/messages.ts) — add `"reconnecting"` to webview `ConnectionState`
@@ -32,14 +32,12 @@ The CLI binary check at [`ServerManager.startServer()`](../../src/services/cli-b
```typescript
// In initializeConnection() catch block:
vscode.window.showErrorMessage(
`Kilo Code: Failed to start CLI server — ${error.message}`,
"Retry"
).then(action => {
vscode.window.showErrorMessage(`Kilo Code: Failed to start CLI server — ${error.message}`, "Retry").then((action) => {
if (action === "Retry") this.initializeConnection()
})
```
Files to change:
- [`src/KiloProvider.ts`](../../src/KiloProvider.ts) — add `vscode.window.showErrorMessage()` calls in error paths
- [`src/services/cli-backend/connection-service.ts`](../../src/services/cli-backend/connection-service.ts) — optionally surface critical errors to callers
@@ -29,28 +29,28 @@ The rebuild has a working foundation:
## Chat UI Feature Parity
| Feature | Status | Details | Backend | Priority |
| -------------------------------------------------------------------------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | -------- |
| [Auto-Approval Controls](chat-ui-features/auto-approval-controls.md) | ❌ Not started | No auto-approval toggle, scope selectors, or timeout config. Permission dialog exists but only supports per-request decisions. [#171](https://github.com/Kilo-Org/kilo/issues/171) | CLI owns permissions; webview needs config UI | P1 |
| [Browser Session Controls](chat-ui-features/browser-session-controls.md) | ❌ Not started | No browser automation UI, action replay, or screenshot viewing in chat. | CLI-side (if browser tool exists) + webview | P3 |
| [Checkpoint & Task Management](chat-ui-features/checkpoint-task-management.md) | ❌ Not started | No checkpoint restore, navigation, or "See New Changes" diff buttons. | CLI session undo/redo/fork + extension git integration | P1 |
| [Code Block Interactions](chat-ui-features/code-block-interactions.md) | ❌ Not started | No markdown rendering, syntax highlighting, copy button, expand/collapse, or sticky buttons on code blocks. Messages render as plain text. | Webview-only | P0 |
| [Command Execution](chat-ui-features/command-execution.md) | 🔨 Partial | Tool messages render but lack expandable terminal output, abort-by-PID, exit status indicators, command pattern selectors, and syntax highlighting. | CLI executes commands; webview renders output | P0 |
| [Connection State UI](chat-ui-features/connection-state-ui.md) | ❌ Not started | No loading/connecting spinner, error panel with retry, or reconnecting indicator. Chat renders even when disconnected. | Webview-only (consumes connection state) | P0 |
| [Context Menus & Tooltips](chat-ui-features/context-menus-tooltips.md) | ❌ Not started | No right-click context menus or hover tooltips on interactive elements. | Webview-only | P2 |
| [Diff Viewing & File Operations](chat-ui-features/diff-viewing-file-operations.md) | ❌ Not started | No diff rendering, file change stats, jump-to-file, syntax-highlighted diffs, or batch approval UI. | CLI provides diff data; webview renders | P0 |
| [File Permission Dialogs](chat-ui-features/file-permission-dialogs.md) | 🔨 Partial | Basic permission dialog exists (reject/once/always). Missing batch file read approval and per-file granularity. [#171](https://github.com/Kilo-Org/kilo/issues/171) | CLI permission model; webview UI | P1 |
| [Follow-Up Questions](chat-ui-features/follow-up-questions.md) | ❌ Not started | No suggested reply chips, click-to-submit, auto-approval countdown, or mode indicators. | Likely extension-side generation | P2 |
| [Image Handling](chat-ui-features/image-handling.md) | ❌ Not started | No image viewer, zoom/pan modal, thumbnails, file attachment support in prompt input, or image paste support. | CLI provides image data; webview renders + VS Code integration | P1 |
| [Inline Actions on Tool Messages](chat-ui-features/inline-actions-on-tool-messages.md) | 🔨 Partial | Tool parts render with status icons (⏳⚙️✓✕), expandable sections with input/output, and status-based CSS classes. Missing: jump-to-file links and inline action buttons. | CLI provides tool metadata; webview renders | P1 |
| [Kilo Themed Chat Session](chat-ui-features/kilo-themed-chat-session.md) | 🔨 Partial | Basic chat exists but lacks Kilo theming, markdown rendering, and visual polish. [#161](https://github.com/Kilo-Org/kilo/issues/161) | Webview-only (styling/theming) | P0 |
| Feature | Status | Details | Backend | Priority |
| -------------------------------------------------------------------------------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | -------- |
| [Auto-Approval Controls](chat-ui-features/auto-approval-controls.md) | ❌ Not started | No auto-approval toggle, scope selectors, or timeout config. Permission dialog exists but only supports per-request decisions. [#171](https://github.com/Kilo-Org/kilo/issues/171) | CLI owns permissions; webview needs config UI | P1 |
| [Browser Session Controls](chat-ui-features/browser-session-controls.md) | ❌ Not started | No browser automation UI, action replay, or screenshot viewing in chat. | CLI-side (if browser tool exists) + webview | P3 |
| [Checkpoint & Task Management](chat-ui-features/checkpoint-task-management.md) | ❌ Not started | No checkpoint restore, navigation, or "See New Changes" diff buttons. | CLI session undo/redo/fork + extension git integration | P1 |
| [Code Block Interactions](chat-ui-features/code-block-interactions.md) | ❌ Not started | No markdown rendering, syntax highlighting, copy button, expand/collapse, or sticky buttons on code blocks. Messages render as plain text. | Webview-only | P0 |
| [Command Execution](chat-ui-features/command-execution.md) | 🔨 Partial | Tool messages render but lack expandable terminal output, abort-by-PID, exit status indicators, command pattern selectors, and syntax highlighting. | CLI executes commands; webview renders output | P0 |
| [Connection State UI](chat-ui-features/connection-state-ui.md) | ❌ Not started | No loading/connecting spinner, error panel with retry, or reconnecting indicator. Chat renders even when disconnected. | Webview-only (consumes connection state) | P0 |
| [Context Menus & Tooltips](chat-ui-features/context-menus-tooltips.md) | ❌ Not started | No right-click context menus or hover tooltips on interactive elements. | Webview-only | P2 |
| [Diff Viewing & File Operations](chat-ui-features/diff-viewing-file-operations.md) | ❌ Not started | No diff rendering, file change stats, jump-to-file, syntax-highlighted diffs, or batch approval UI. | CLI provides diff data; webview renders | P0 |
| [File Permission Dialogs](chat-ui-features/file-permission-dialogs.md) | 🔨 Partial | Basic permission dialog exists (reject/once/always). Missing batch file read approval and per-file granularity. [#171](https://github.com/Kilo-Org/kilo/issues/171) | CLI permission model; webview UI | P1 |
| [Follow-Up Questions](chat-ui-features/follow-up-questions.md) | ❌ Not started | No suggested reply chips, click-to-submit, auto-approval countdown, or mode indicators. | Likely extension-side generation | P2 |
| [Image Handling](chat-ui-features/image-handling.md) | ❌ Not started | No image viewer, zoom/pan modal, thumbnails, file attachment support in prompt input, or image paste support. | CLI provides image data; webview renders + VS Code integration | P1 |
| [Inline Actions on Tool Messages](chat-ui-features/inline-actions-on-tool-messages.md) | 🔨 Partial | Tool parts render with status icons (⏳⚙️✓✕), expandable sections with input/output, and status-based CSS classes. Missing: jump-to-file links and inline action buttons. | CLI provides tool metadata; webview renders | P1 |
| [Kilo Themed Chat Session](chat-ui-features/kilo-themed-chat-session.md) | 🔨 Partial | Basic chat exists but lacks Kilo theming, markdown rendering, and visual polish. [#161](https://github.com/Kilo-Org/kilo/issues/161) | Webview-only (styling/theming) | P0 |
| [Markdown Rendering](chat-ui-features/markdown-rendering.md) | ❌ Not started | Assistant messages render as plain text. No markdown parsing, code syntax highlighting, or clickable links. Blocks Code Block Interactions and Mermaid features. [#161](https://github.com/Kilo-Org/kilo/issues/161) | Webview-only | P0 |
| [Mermaid Diagram Features](chat-ui-features/mermaid-diagram-features.md) | ❌ Not started | No mermaid rendering, "Fix with AI" button, copy, or open-as-PNG. Requires markdown rendering first. | Webview-only (rendering); CLI for "Fix with AI" | P2 |
| [Message Editing & Management](chat-ui-features/message-editing-management.md) | ❌ Not started | No inline editing, deletion, timestamp display, or redo-previous-message (up-arrow). [#177](https://github.com/Kilo-Org/kilo/issues/177) | CLI session fork/undo for edit semantics | P1 |
| [Special Content Types](chat-ui-features/special-content-types.md) | 🔨 Partial | Reasoning blocks render (collapsible). Missing: open-markdown-preview button, MCP tool/resource rows, expandable error rows with copy. | Mixed: CLI for MCP data; webview for rendering | P1 |
| [Task Header](chat-ui-features/task-header.md) | ❌ Not started | No task header with initial prompt, cost, context size, or compaction button. [#166](https://github.com/Kilo-Org/kilo/issues/166) | CLI provides cost/context data; webview renders | P0 |
| [Todo List Management](chat-ui-features/todo-list-management.md) | 🔨 Partial | `todo.updated` SSE event is handled through the full pipeline: KiloProvider → webview message → session store with `todos()` accessor. Missing: UI component to render, display, or interact with todo items. | CLI tool or extension-side feature | P2 |
| [Toggle Thinking](chat-ui-features/toggle-thinking.md) | 🔨 Partial | Reasoning blocks render but no toggle to enable/disable thinking. Linked [PR #127](https://github.com/Kilo-Org/kilo/pull/127). [#172](https://github.com/Kilo-Org/kilo/issues/172) | CLI controls thinking; webview provides toggle UI | P2 |
| [Mermaid Diagram Features](chat-ui-features/mermaid-diagram-features.md) | ❌ Not started | No mermaid rendering, "Fix with AI" button, copy, or open-as-PNG. Requires markdown rendering first. | Webview-only (rendering); CLI for "Fix with AI" | P2 |
| [Message Editing & Management](chat-ui-features/message-editing-management.md) | ❌ Not started | No inline editing, deletion, timestamp display, or redo-previous-message (up-arrow). [#177](https://github.com/Kilo-Org/kilo/issues/177) | CLI session fork/undo for edit semantics | P1 |
| [Special Content Types](chat-ui-features/special-content-types.md) | 🔨 Partial | Reasoning blocks render (collapsible). Missing: open-markdown-preview button, MCP tool/resource rows, expandable error rows with copy. | Mixed: CLI for MCP data; webview for rendering | P1 |
| [Task Header](chat-ui-features/task-header.md) | ❌ Not started | No task header with initial prompt, cost, context size, or compaction button. [#166](https://github.com/Kilo-Org/kilo/issues/166) | CLI provides cost/context data; webview renders | P0 |
| [Todo List Management](chat-ui-features/todo-list-management.md) | 🔨 Partial | `todo.updated` SSE event is handled through the full pipeline: KiloProvider → webview message → session store with `todos()` accessor. Missing: UI component to render, display, or interact with todo items. | CLI tool or extension-side feature | P2 |
| [Toggle Thinking](chat-ui-features/toggle-thinking.md) | 🔨 Partial | Reasoning blocks render but no toggle to enable/disable thinking. Linked [PR #127](https://github.com/Kilo-Org/kilo/pull/127). [#172](https://github.com/Kilo-Org/kilo/issues/172) | CLI controls thinking; webview provides toggle UI | P2 |
---
@@ -98,12 +98,12 @@ The rebuild has a working foundation:
These items were identified from the [JetBrains plugin analysis](../LESSONS_LEARNED_JETBRAINS.md) — patterns the JetBrains plugin implements that are missing in the VSCode extension. They primarily affect reliability and developer experience rather than feature parity.
| Feature | Status | Details | Scope | Priority |
| -------------------------------------------------------------------------------------- | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | -------- |
| [SSE Auto-Reconnect](infrastructure/sse-auto-reconnect.md) | ❌ Not started | SSE connection has no reconnect logic. Network hiccups, laptop sleep, or server restart kill the extension with no recovery. | Extension (SSEClient + ConnectionService) | P0 |
| [HTTP Request Timeouts](infrastructure/http-request-timeouts.md) | ❌ Not started | HTTP client uses bare `fetch()` with no timeouts. Hung requests block indefinitely. | Extension (HttpClient) | P1 |
| [VSCode Error Notifications](infrastructure/vscode-error-notifications.md) | ❌ Not started | Critical errors (CLI missing, server crash) are only shown in the webview. No `vscode.window.showErrorMessage()` notifications. | Extension (KiloProvider) | P1 |
| [Dedicated Output Channel](infrastructure/dedicated-output-channel.md) | ❌ Not started | All logging goes to console.log mixed with other extensions. No dedicated "Kilo Code" output channel. | Extension (new logger utility) | P2 |
| Feature | Status | Details | Scope | Priority |
| -------------------------------------------------------------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- | -------- |
| [SSE Auto-Reconnect](infrastructure/sse-auto-reconnect.md) | ❌ Not started | SSE connection has no reconnect logic. Network hiccups, laptop sleep, or server restart kill the extension with no recovery. | Extension (SSEClient + ConnectionService) | P0 |
| [HTTP Request Timeouts](infrastructure/http-request-timeouts.md) | ❌ Not started | HTTP client uses bare `fetch()` with no timeouts. Hung requests block indefinitely. | Extension (HttpClient) | P1 |
| [VSCode Error Notifications](infrastructure/vscode-error-notifications.md) | ❌ Not started | Critical errors (CLI missing, server crash) are only shown in the webview. No `vscode.window.showErrorMessage()` notifications. | Extension (KiloProvider) | P1 |
| [Dedicated Output Channel](infrastructure/dedicated-output-channel.md) | ❌ Not started | All logging goes to console.log mixed with other extensions. No dedicated "Kilo Code" output channel. | Extension (new logger utility) | P2 |
---
@@ -777,7 +777,7 @@ Each phase has specific acceptance criteria (listed above). The general verifica
| Session history | List renders, selection works, navigation back to chat |
| Login flow | Device auth card renders, QR code displays, success/error states |
| Theme switching | Change VS Code theme → webview updates automatically |
| Sidebar ↔ tab | Both webview hosts render identically |
| Sidebar ↔ tab | Both webview hosts render identically |
| Markdown content | Headers, lists, code blocks, links render correctly |
| Long conversations | Auto-scroll works, performance is acceptable |
+1651 -1198
View File
File diff suppressed because it is too large Load Diff
@@ -117,9 +117,6 @@ function formatFileList(files: DiffFile[]): string {
function buildToolsSection(scope: "uncommitted" | "branch", baseBranch?: string, currentBranch?: string): string {
if (scope === "uncommitted") {
return `Use these git commands to explore the changes:
- View all changes: \`git diff && git diff --cached\`
- View specific file change: \`git diff -- <file> && git diff --cached -- <file>\`
+2
View File
@@ -1722,6 +1722,8 @@ export type Config = {
agent?: {
plan?: AgentConfig
build?: AgentConfig
debug?: AgentConfig
orchestrator?: AgentConfig
general?: AgentConfig
explore?: AgentConfig
title?: AgentConfig
+6 -164
View File
@@ -133,73 +133,6 @@
]
}
},
"/global/config": {
"get": {
"operationId": "global.config.get",
"summary": "Get global configuration",
"description": "Retrieve the current global OpenCode configuration settings and preferences.",
"responses": {
"200": {
"description": "Get global config info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Config"
}
}
}
}
},
"x-codeSamples": [
{
"lang": "js",
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.global.config.get({\n ...\n})"
}
]
},
"patch": {
"operationId": "global.config.update",
"summary": "Update global configuration",
"description": "Update global OpenCode configuration settings and preferences.",
"responses": {
"200": {
"description": "Successfully updated global config",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Config"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestError"
}
}
}
}
},
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Config"
}
}
}
},
"x-codeSamples": [
{
"lang": "js",
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.global.config.update({\n ...\n})"
}
]
}
},
"/global/dispose": {
"post": {
"operationId": "global.dispose",
@@ -322,103 +255,6 @@
]
}
},
"/auth/{providerID}": {
"put": {
"operationId": "auth.set",
"summary": "Set auth credentials",
"description": "Set authentication credentials",
"responses": {
"200": {
"description": "Successfully set authentication credentials",
"content": {
"application/json": {
"schema": {
"type": "boolean"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestError"
}
}
}
}
},
"parameters": [
{
"in": "path",
"name": "providerID",
"schema": {
"type": "string"
},
"required": true
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Auth"
}
}
}
},
"x-codeSamples": [
{
"lang": "js",
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.auth.set({\n ...\n})"
}
]
},
"delete": {
"operationId": "auth.remove",
"summary": "Remove auth credentials",
"description": "Remove authentication credentials",
"responses": {
"200": {
"description": "Successfully removed authentication credentials",
"content": {
"application/json": {
"schema": {
"type": "boolean"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestError"
}
}
}
}
},
"parameters": [
{
"in": "path",
"name": "providerID",
"schema": {
"type": "string"
},
"required": true
}
],
"x-codeSamples": [
{
"lang": "js",
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.auth.remove({\n ...\n})"
}
]
}
},
"/project": {
"get": {
"operationId": "project.list",
@@ -10061,6 +9897,12 @@
"build": {
"$ref": "#/components/schemas/AgentConfig"
},
"debug": {
"$ref": "#/components/schemas/AgentConfig"
},
"orchestrator": {
"$ref": "#/components/schemas/AgentConfig"
},
"general": {
"$ref": "#/components/schemas/AgentConfig"
},