Add code edit block display setting

This commit is contained in:
Thomas Brugman
2026-06-10 16:40:15 +02:00
parent 9ae35e869d
commit e335f97856
29 changed files with 444 additions and 312 deletions
+5
View File
@@ -0,0 +1,5 @@
---
"kilo-code": patch
---
Support opening code edit and diff blocks expanded by default in the VS Code chat.
@@ -348,7 +348,7 @@ function renderable(part: PartType, showReasoningSummaries = true) {
function toolDefaultOpen(tool: string, shell = false, edit = false) {
if (tool === "bash") return shell
if (tool === "edit" || tool === "write") return edit
if (tool === "apply_patch") return false
if (tool === "apply_patch") return edit
}
function partDefaultOpen(part: PartType, shell = false, edit = false) {
@@ -32,6 +32,13 @@ import { SuggestBar } from "./SuggestBar"
// We render these ourselves via ToolRegistry when they complete,
// so the user can see what the AI set up.
export const UPSTREAM_SUPPRESSED_TOOLS = new Set(["todowrite", "todoread"])
const EDIT_TOOLS = new Set(["edit", "write", "apply_patch"])
function editOpen(part: SDKPart, open: boolean) {
if (part.type !== "tool") return undefined
const tool = (part as unknown as ToolPart).tool
return EDIT_TOOLS.has(tool) ? open : undefined
}
/** Extract plan path from a completed plan_exit tool part. */
function planExitInfo(part: SDKPart): { plan: string } | undefined {
@@ -175,6 +182,7 @@ export const AssistantMessage: Component<AssistantMessageProps> = (props) => {
const display = useDisplay()
const { config } = useConfig()
const open = createMemo(() => config().terminal_command_display !== "collapsed")
const edit = createMemo(() => config().code_edit_display === "expanded")
const parts = createMemo(() => {
const stored = data.store.part?.[props.message.id]
@@ -242,6 +250,7 @@ export const AssistantMessage: Component<AssistantMessageProps> = (props) => {
part={part}
message={props.message as SDKMessage}
showAssistantCopyPartID={props.showAssistantCopyPartID}
defaultOpen={editOpen(part, edit())}
reasoningAutoCollapse={display.reasoningAutoCollapse()}
feedback={props.feedback}
animate={
@@ -6,7 +6,7 @@ import { Switch } from "@kilocode/kilo-ui/switch"
import { useConfig } from "../../context/config"
import { useDisplay } from "../../context/display"
import { useLanguage } from "../../context/language"
import type { TerminalCommandDisplay } from "../../types/messages"
import type { CodeEditDisplay, TerminalCommandDisplay } from "../../types/messages"
import SettingsRow from "./SettingsRow"
interface LayoutOption {
@@ -24,6 +24,11 @@ const TERMINAL_OPTIONS: LayoutOption[] = [
{ value: "collapsed", labelKey: "settings.display.terminalCommand.collapsed" },
]
const CODE_EDIT_OPTIONS: LayoutOption[] = [
{ value: "expanded", labelKey: "settings.display.codeEdit.expanded" },
{ value: "collapsed", labelKey: "settings.display.codeEdit.collapsed" },
]
const DisplayTab: Component = () => {
const { config, updateConfig } = useConfig()
const display = useDisplay()
@@ -102,7 +107,6 @@ const DisplayTab: Component = () => {
<SettingsRow
title={language.t("settings.display.terminalCommand.title")}
description={language.t("settings.display.terminalCommand.description")}
last
>
<Select
options={TERMINAL_OPTIONS}
@@ -120,6 +124,28 @@ const DisplayTab: Component = () => {
triggerVariant="settings"
/>
</SettingsRow>
<SettingsRow
title={language.t("settings.display.codeEdit.title")}
description={language.t("settings.display.codeEdit.description")}
last
>
<Select
options={CODE_EDIT_OPTIONS}
current={CODE_EDIT_OPTIONS.find((o) => o.value === (config().code_edit_display ?? "collapsed"))}
value={(o) => o.value}
label={(o) => language.t(o.labelKey)}
onSelect={(o) => {
if (!o) return
const next = o.value as CodeEditDisplay
if (next === (config().code_edit_display ?? "collapsed")) return
updateConfig({ code_edit_display: next })
}}
variant="secondary"
size="small"
triggerVariant="settings"
/>
</SettingsRow>
</Card>
</div>
)
@@ -36,6 +36,7 @@ export const KNOWN_KEYS: ReadonlyArray<string> = [
"layout",
"auto_collapse_reasoning",
"terminal_command_display",
"code_edit_display",
"indexing",
"experimental",
]
+4
View File
@@ -1457,6 +1457,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "النموذج الافتراضي",
"settings.providers.defaultModel.description": "النموذج الأساسي للمحادثات",
"settings.providers.smallModel.title": "نموذج صغير",
+4
View File
@@ -1500,6 +1500,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Modelo padrão",
"settings.providers.defaultModel.description": "Modelo principal para conversas",
"settings.providers.smallModel.title": "Modelo pequeno",
+4
View File
@@ -1496,6 +1496,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Zadani model",
"settings.providers.defaultModel.description": "Primarni model za razgovore",
"settings.providers.smallModel.title": "Mali model",
+4
View File
@@ -1484,6 +1484,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Standardmodel",
"settings.providers.defaultModel.description": "Primær model til samtaler",
"settings.providers.smallModel.title": "Lille model",
+4
View File
@@ -1514,6 +1514,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Standardmodell",
"settings.providers.defaultModel.description": "Primäres Modell für Gespräche",
"settings.providers.smallModel.title": "Kleines Modell",
@@ -1471,6 +1471,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Default Model",
"settings.providers.defaultModel.description": "Primary model for conversations",
+4
View File
@@ -1507,6 +1507,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Modelo predeterminado",
"settings.providers.defaultModel.description": "Modelo principal para conversaciones",
"settings.providers.smallModel.title": "Modelo pequeño",
+4
View File
@@ -1523,6 +1523,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Modèle par défaut",
"settings.providers.defaultModel.description": "Modèle principal pour les conversations",
"settings.providers.smallModel.title": "Petit modèle",
+4
View File
@@ -1318,6 +1318,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Scegli se i blocchi comando terminale iniziano espansi o compressi.",
"settings.display.terminalCommand.expanded": "Espansi",
"settings.display.terminalCommand.collapsed": "Compressi",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Modello predefinito",
"settings.providers.defaultModel.description": "Modello principale per le conversazioni",
"settings.providers.smallModel.title": "Modello leggero",
+4
View File
@@ -1480,6 +1480,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "デフォルトモデル",
"settings.providers.defaultModel.description": "会話のプライマリモデル",
"settings.providers.smallModel.title": "小型モデル",
+4
View File
@@ -1465,6 +1465,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "기본 모델",
"settings.providers.defaultModel.description": "대화의 기본 모델",
"settings.providers.smallModel.title": "소형 모델",
+4
View File
@@ -1461,6 +1461,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Standaard Model",
"settings.providers.defaultModel.description": "Primair model voor gesprekken",
+4
View File
@@ -1483,6 +1483,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Standardmodell",
"settings.providers.defaultModel.description": "Primær modell for samtaler",
"settings.providers.smallModel.title": "Liten modell",
+4
View File
@@ -1491,6 +1491,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Domyślny model",
"settings.providers.defaultModel.description": "Główny model do rozmów",
"settings.providers.smallModel.title": "Mały model",
+4
View File
@@ -1490,6 +1490,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Модель по умолчанию",
"settings.providers.defaultModel.description": "Основная модель для разговоров",
"settings.providers.smallModel.title": "Малая модель",
+4
View File
@@ -1464,6 +1464,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "โมเดลเริ่มต้น",
"settings.providers.defaultModel.description": "โมเดลหลักสำหรับบทสนทนา",
"settings.providers.smallModel.title": "โมเดลขนาดเล็ก",
+4
View File
@@ -1450,6 +1450,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Varsayılan Model",
"settings.providers.defaultModel.description": "Sohbetler için birincil model",
+4
View File
@@ -1450,6 +1450,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "Модель за замовчуванням",
"settings.providers.defaultModel.description": "Основна модель для чатів",
+4
View File
@@ -1429,6 +1429,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "默认模型",
"settings.providers.defaultModel.description": "对话的主要模型",
"settings.providers.smallModel.title": "小模型",
+4
View File
@@ -1399,6 +1399,10 @@ export const dict = {
"settings.display.terminalCommand.description": "Choose whether terminal command blocks start expanded or collapsed.",
"settings.display.terminalCommand.expanded": "Expanded",
"settings.display.terminalCommand.collapsed": "Collapsed",
"settings.display.codeEdit.title": "Code Edit Blocks",
"settings.display.codeEdit.description": "Choose whether code edit and diff blocks start expanded or collapsed.",
"settings.display.codeEdit.expanded": "Expanded",
"settings.display.codeEdit.collapsed": "Collapsed",
"settings.providers.defaultModel.title": "預設模型",
"settings.providers.defaultModel.description": "對話的主要模型",
"settings.providers.smallModel.title": "小模型",
@@ -110,6 +110,7 @@ export interface BrowserSettings {
}
export type TerminalCommandDisplay = "expanded" | "collapsed"
export type CodeEditDisplay = "expanded" | "collapsed"
export interface Config {
permission?: PermissionConfig
@@ -129,6 +130,7 @@ export interface Config {
snapshot?: boolean
remote_control?: boolean
terminal_command_display?: TerminalCommandDisplay
code_edit_display?: CodeEditDisplay
share?: "manual" | "auto" | "disabled"
username?: string
watcher?: WatcherConfig
+4
View File
@@ -223,6 +223,10 @@ export const Info = Schema.Struct({
terminal_command_display: Schema.optional(Schema.Literals(["expanded", "collapsed"])).annotate({
description: "Controls whether terminal command blocks are expanded or collapsed by default in the VS Code chat UI",
}),
code_edit_display: Schema.optional(Schema.Literals(["expanded", "collapsed"])).annotate({
description:
"Controls whether code edit and diff blocks are expanded or collapsed by default in the VS Code chat UI",
}),
model: Schema.optional(Schema.NullOr(ConfigModelID)).annotate({
description: "Model to use in the format of provider/model, eg anthropic/claude-2",
}),
+1
View File
@@ -1370,6 +1370,7 @@ export type Config = {
auto_collapse_reasoning?: boolean
indexing?: IndexingConfig
terminal_command_display?: "expanded" | "collapsed"
code_edit_display?: "expanded" | "collapsed"
model?: string
small_model?: string
subagent_model?: string
+313 -309
View File
@@ -14179,9 +14179,6 @@
"schemas": {
"Event": {
"anyOf": [
{
"$ref": "#/components/schemas/EventServerInstanceDisposed"
},
{
"$ref": "#/components/schemas/EventServerConnected"
},
@@ -14191,6 +14188,27 @@
{
"$ref": "#/components/schemas/EventGlobalConfigUpdated"
},
{
"$ref": "#/components/schemas/Event.tui.prompt.append"
},
{
"$ref": "#/components/schemas/Event.tui.command.execute"
},
{
"$ref": "#/components/schemas/EventTuiToastShow1"
},
{
"$ref": "#/components/schemas/Event.tui.session.select"
},
{
"$ref": "#/components/schemas/EventKilocodeAgent_managerStart"
},
{
"$ref": "#/components/schemas/EventIndexingStatus"
},
{
"$ref": "#/components/schemas/EventServerInstanceDisposed"
},
{
"$ref": "#/components/schemas/EventFileEdited"
},
@@ -14212,18 +14230,6 @@
{
"$ref": "#/components/schemas/EventLspUpdated"
},
{
"$ref": "#/components/schemas/Event.tui.prompt.append"
},
{
"$ref": "#/components/schemas/Event.tui.command.execute"
},
{
"$ref": "#/components/schemas/EventTuiToastShow1"
},
{
"$ref": "#/components/schemas/Event.tui.session.select"
},
{
"$ref": "#/components/schemas/EventMcpToolsChanged"
},
@@ -14302,9 +14308,6 @@
{
"$ref": "#/components/schemas/EventProjectUpdated"
},
{
"$ref": "#/components/schemas/EventKilocodeAgent_managerStart"
},
{
"$ref": "#/components/schemas/EventVcsBranchUpdated"
},
@@ -14436,9 +14439,6 @@
},
{
"$ref": "#/components/schemas/EventSessionNextCompactionEnded"
},
{
"$ref": "#/components/schemas/EventIndexingStatus"
}
]
},
@@ -14519,6 +14519,170 @@
}
]
},
"Event.tui.prompt.append": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.prompt.append"]
},
"properties": {
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": ["text"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.command.execute": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.command.execute"]
},
"properties": {
"type": "object",
"properties": {
"command": {
"anyOf": [
{
"type": "string",
"enum": [
"session.list",
"session.new",
"session.share",
"session.interrupt",
"session.compact",
"session.page.up",
"session.page.down",
"session.line.up",
"session.line.down",
"session.half.page.up",
"session.half.page.down",
"session.first",
"session.last",
"prompt.clear",
"prompt.submit",
"agent.cycle"
]
},
{
"type": "string"
}
]
}
},
"required": ["command"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.toast.show": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.toast.show"]
},
"properties": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"message": {
"type": "string"
},
"variant": {
"type": "string",
"enum": ["info", "success", "warning", "error"]
},
"duration": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"required": ["message", "variant"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.session.select": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.session.select"]
},
"properties": {
"type": "object",
"properties": {
"sessionID": {
"type": "string",
"pattern": "^ses",
"description": "Session ID to navigate to"
}
},
"required": ["sessionID"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"IndexingStatusState": {
"type": "string",
"enum": ["Disabled", "In Progress", "Complete", "Error", "Standby"]
},
"IndexingStatus": {
"type": "object",
"properties": {
"state": {
"$ref": "#/components/schemas/IndexingStatusState"
},
"message": {
"type": "string"
},
"processedFiles": {
"type": "integer",
"minimum": 0
},
"totalFiles": {
"type": "integer",
"minimum": 0
},
"percent": {
"type": "integer",
"minimum": 0,
"maximum": 100
}
},
"required": ["state", "message", "processedFiles", "totalFiles", "percent"],
"additionalProperties": false
},
"QuestionOption": {
"type": "object",
"properties": {
@@ -14661,140 +14825,6 @@
"required": ["sessionID", "requestID"],
"additionalProperties": false
},
"Event.tui.prompt.append": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.prompt.append"]
},
"properties": {
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": ["text"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.command.execute": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.command.execute"]
},
"properties": {
"type": "object",
"properties": {
"command": {
"anyOf": [
{
"type": "string",
"enum": [
"session.list",
"session.new",
"session.share",
"session.interrupt",
"session.compact",
"session.page.up",
"session.page.down",
"session.line.up",
"session.line.down",
"session.half.page.up",
"session.half.page.down",
"session.first",
"session.last",
"prompt.clear",
"prompt.submit",
"agent.cycle"
]
},
{
"type": "string"
}
]
}
},
"required": ["command"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.toast.show": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.toast.show"]
},
"properties": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"message": {
"type": "string"
},
"variant": {
"type": "string",
"enum": ["info", "success", "warning", "error"]
},
"duration": {
"type": "integer",
"exclusiveMinimum": 0
}
},
"required": ["message", "variant"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"Event.tui.session.select": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["tui.session.select"]
},
"properties": {
"type": "object",
"properties": {
"sessionID": {
"type": "string",
"pattern": "^ses",
"description": "Session ID to navigate to"
}
},
"required": ["sessionID"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"SessionNetworkWait": {
"type": "object",
"properties": {
@@ -16723,36 +16753,6 @@
"required": ["text"],
"additionalProperties": false
},
"IndexingStatusState": {
"type": "string",
"enum": ["Disabled", "In Progress", "Complete", "Error", "Standby"]
},
"IndexingStatus": {
"type": "object",
"properties": {
"state": {
"$ref": "#/components/schemas/IndexingStatusState"
},
"message": {
"type": "string"
},
"processedFiles": {
"type": "integer",
"minimum": 0
},
"totalFiles": {
"type": "integer",
"minimum": 0
},
"percent": {
"type": "integer",
"minimum": 0,
"maximum": 100
}
},
"required": ["state", "message", "processedFiles", "totalFiles", "percent"],
"additionalProperties": false
},
"GlobalEvent": {
"type": "object",
"properties": {
@@ -16767,9 +16767,6 @@
},
"payload": {
"anyOf": [
{
"$ref": "#/components/schemas/EventServerInstanceDisposed"
},
{
"$ref": "#/components/schemas/EventServerConnected"
},
@@ -16779,6 +16776,27 @@
{
"$ref": "#/components/schemas/EventGlobalConfigUpdated"
},
{
"$ref": "#/components/schemas/Event.tui.prompt.append"
},
{
"$ref": "#/components/schemas/Event.tui.command.execute"
},
{
"$ref": "#/components/schemas/Event.tui.toast.show"
},
{
"$ref": "#/components/schemas/Event.tui.session.select"
},
{
"$ref": "#/components/schemas/EventKilocodeAgent_managerStart"
},
{
"$ref": "#/components/schemas/EventIndexingStatus"
},
{
"$ref": "#/components/schemas/EventServerInstanceDisposed"
},
{
"$ref": "#/components/schemas/EventFileEdited"
},
@@ -16800,18 +16818,6 @@
{
"$ref": "#/components/schemas/EventLspUpdated"
},
{
"$ref": "#/components/schemas/Event.tui.prompt.append"
},
{
"$ref": "#/components/schemas/Event.tui.command.execute"
},
{
"$ref": "#/components/schemas/Event.tui.toast.show"
},
{
"$ref": "#/components/schemas/Event.tui.session.select"
},
{
"$ref": "#/components/schemas/EventMcpToolsChanged"
},
@@ -16890,9 +16896,6 @@
{
"$ref": "#/components/schemas/EventProjectUpdated"
},
{
"$ref": "#/components/schemas/EventKilocodeAgent_managerStart"
},
{
"$ref": "#/components/schemas/EventVcsBranchUpdated"
},
@@ -17025,9 +17028,6 @@
{
"$ref": "#/components/schemas/EventSessionNextCompactionEnded"
},
{
"$ref": "#/components/schemas/EventIndexingStatus"
},
{
"$ref": "#/components/schemas/SyncEventMessageUpdated"
},
@@ -18085,6 +18085,10 @@
"type": "string",
"enum": ["expanded", "collapsed"]
},
"code_edit_display": {
"type": "string",
"enum": ["expanded", "collapsed"]
},
"model": {
"type": "string"
},
@@ -22446,30 +22450,6 @@
"required": ["type", "name", "id", "seq", "aggregateID", "data"],
"additionalProperties": false
},
"EventServerInstanceDisposed": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["server.instance.disposed"]
},
"properties": {
"type": "object",
"properties": {
"directory": {
"type": "string"
}
},
"required": ["directory"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventServerConnected": {
"type": "object",
"properties": {
@@ -22524,6 +22504,109 @@
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventKilocodeAgent_managerStart": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["kilocode.agent_manager.start"]
},
"properties": {
"type": "object",
"properties": {
"requestID": {
"type": "string"
},
"sessionID": {
"type": "string",
"pattern": "^ses"
},
"mode": {
"type": "string",
"enum": ["worktree", "local"]
},
"versions": {
"type": "boolean"
},
"tasks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"prompt": {
"type": "string"
},
"name": {
"type": "string"
},
"branchName": {
"type": "string"
}
},
"additionalProperties": false
},
"minItems": 1,
"maxItems": 20
}
},
"required": ["requestID", "sessionID", "mode", "tasks"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventIndexingStatus": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["indexing.status"]
},
"properties": {
"type": "object",
"properties": {
"status": {
"$ref": "#/components/schemas/IndexingStatus"
}
},
"required": ["status"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventServerInstanceDisposed": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["server.instance.disposed"]
},
"properties": {
"type": "object",
"properties": {
"directory": {
"type": "string"
}
},
"required": ["directory"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventFileEdited": {
"type": "object",
"properties": {
@@ -23411,61 +23494,6 @@
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventKilocodeAgent_managerStart": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["kilocode.agent_manager.start"]
},
"properties": {
"type": "object",
"properties": {
"requestID": {
"type": "string"
},
"sessionID": {
"type": "string",
"pattern": "^ses"
},
"mode": {
"type": "string",
"enum": ["worktree", "local"]
},
"versions": {
"type": "boolean"
},
"tasks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"prompt": {
"type": "string"
},
"name": {
"type": "string"
},
"branchName": {
"type": "string"
}
},
"additionalProperties": false
},
"minItems": 1,
"maxItems": 20
}
},
"required": ["requestID", "sessionID", "mode", "tasks"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventVcsBranchUpdated": {
"type": "object",
"properties": {
@@ -25060,30 +25088,6 @@
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"EventIndexingStatus": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": ["indexing.status"]
},
"properties": {
"type": "object",
"properties": {
"status": {
"$ref": "#/components/schemas/IndexingStatus"
}
},
"required": ["status"],
"additionalProperties": false
}
},
"required": ["id", "type", "properties"],
"additionalProperties": false
},
"SessionInfo": {
"type": "object",
"properties": {