@kernelonpanic/kitcode 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -88,7 +88,7 @@ http://localhost:11434/v1
88
88
  | `kitcode -r <id>` | Resume a session by id. |
89
89
  | `kitcode --cwd <path>` | Use another working directory. |
90
90
  | `kitcode --model <provider/model>` | Start with a selected model. |
91
- | `kitcode --mode <normal|accept|plan>` | Select the initial agent mode. |
91
+ | `kitcode --mode <normal\|accept\|plan>` | Select the initial agent mode. |
92
92
  | `kitcode sessions` | List saved sessions. |
93
93
  | `kitcode ask "question"` | Run one request without the TUI. |
94
94
  | `kitcode add <url>` | Add a provider; the key is entered in a hidden prompt. |
@@ -105,21 +105,22 @@ Press `/` to open the command list.
105
105
 
106
106
  | Command | Purpose |
107
107
  | --- | --- |
108
- | `/model` | Select a model. |
108
+ | `/model [model]` | Select a model; a full or unambiguous partial id skips the list. |
109
109
  | `/provider` | Switch providers. |
110
110
  | `/login` · `/logout [provider]` | Add a provider or choose exactly which provider to remove. |
111
111
  | `/key [provider]` | Change API key for a provider. |
112
112
  | `/refresh [provider]` | Reload a provider's model list, bypassing the 24h cache. |
113
- | `/effort [auto|low|medium|high|xhigh|max]` · `/thinking` | Select reasoning effort and configure reasoning output. |
113
+ | `/effort [auto\|low\|medium\|high\|xhigh\|max]` · `/thinking` | Select reasoning effort and configure reasoning output. |
114
+ | `/bell [on\|off]` | Toggle the beep when a long answer finishes or a permission prompt appears. |
114
115
  | `/context [tokens]` | Show or set the model context window used by the meter and automatic compaction. |
115
116
  | `/memory show` · `/memory set <text>` · `/memory clear` | View, replace, or clear this project's persistent notes. |
116
117
  | `/resume` · `/clear` | Resume a session or start a new one. |
117
118
  | `/sessions` | Search sessions, then resume, rename, delete, or export one. |
118
119
  | `/sessions list` | List all saved sessions. |
119
- | `/sessions rename <id> <title>` | Give a saved session a title. |
120
+ | `/sessions rename [id] <title>` | Give a saved session a title. |
120
121
  | `/sessions delete <id>` | Delete a saved session. |
121
122
  | `/sessions delete all` | Delete every saved chat after two separate confirmations. |
122
- | `/sessions export <id> [path]` | Export a session to a private Markdown file (default: `.kitcode-exports/`). |
123
+ | `/sessions export [id] [path]` | Export a session to a private Markdown file (default: `.kitcode-exports/`). |
123
124
  | `/attach <path>` · `/attach clipboard` · `/attach clear` | Manage attachments for the next message; type `@` in the prompt to find and attach a workspace file. |
124
125
  | `/compact` | Replace older conversation context with a concise model-generated summary. |
125
126
  | `/update` | Check npm for a newer KitCode version. |
@@ -127,16 +128,18 @@ Press `/` to open the command list.
127
128
  | `/undo` | Undo built-in file edits from the latest message. |
128
129
  | `/usage` | Show tokens, requests, cost, balance/key limits, and response rate-limit headers when available. |
129
130
  | `/checker` | Check the local setup and provider model listing without sending a paid chat request. |
130
- | `/prompt` | Insert a saved prompt. |
131
- | `/prompt save <name>` | Save the latest message as a prompt. |
132
- | `/prompt delete <name>` | Delete a saved prompt. |
131
+ | `/prompt [name]` | Insert a saved prompt. |
132
+ | `/prompt save [name]` | Save the latest message as a prompt, or pick a recent one and name it. Asks before replacing. |
133
+ | `/prompt delete [name]` | Delete a saved prompt. |
133
134
  | `/skills` | Show discovered skills. |
134
- | `/mcp add <name> <https://url>` | Add and connect a remote MCP server. |
135
- | `/mcp add <name> -- <command> [args]` | Add and connect a local MCP server. |
135
+ | `/skills install <source>` | Install a skill from a GitHub URL, an npm package, or a local folder. |
136
+ | `/skills remove [name]` | Remove an installed global skill. |
137
+ | `/mcp add <name> [-H "Name: value"] <https://url>` | Add and connect a remote MCP server. |
138
+ | `/mcp add <name> [-e KEY=value] -- <command> [args]` | Add and connect a local MCP server. |
136
139
  | `/mcp list` | Show configured MCP servers and connection status. |
137
140
  | `/mcp enable <name>` · `/mcp disable <name>` | Connect or disconnect an MCP server without removing it. |
138
141
  | `/mcp delete <name>` | Disconnect and remove an MCP server. |
139
- | `/theme` · `/lang` | Change the accent or interface language. |
142
+ | `/theme [color]` · `/lang [en\|ru]` | Change the accent or interface language. |
140
143
  | `/config` | Show the active config. |
141
144
  | `/bypass` | Toggle approval-free operation. |
142
145
  | `/help` · `/exit` | Show help or quit. |
@@ -152,8 +155,8 @@ Press `/` to open the command list.
152
155
  | `Ctrl+V` / `Cmd+V` | Attach an image from the system clipboard; `/attach clipboard` is the explicit fallback. |
153
156
  | `Esc` | Cancel the current request or close an overlay. |
154
157
 
155
- Messages entered while the agent is running are queued and processed in order. Status and settings
156
- commands — `/help`, `/usage`, `/context`, `/model`, `/effort`, `/thinking`, `/budget`, `/theme`,
158
+ Messages entered while the agent is running are queued and processed in order; they are listed above the input, and ↑/↓ on an empty input pick one to edit. Status and settings
159
+ commands — `/help`, `/usage`, `/context`, `/model`, `/effort`, `/thinking`, `/bell`, `/budget`, `/theme`,
157
160
  `/lang`, `/subagents`, `/config`, `/checker`, `/exit` — run immediately instead. Commands that
158
161
  change the running turn or the session (`/clear`, `/compact`, `/resume`, `/undo`, `/login`,
159
162
  `/provider`, `/logout`, `/key`, `/refresh`, `/mcp`, `/sessions`) wait for the turn to finish.
@@ -305,16 +308,19 @@ immediately without a restart:
305
308
 
306
309
  ```text
307
310
  /mcp add docs https://mcp.example.com/mcp
308
- /mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem .
311
+ /mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem "C:\My Projects"
312
+ /mcp add github -e GITHUB_TOKEN=${env:GITHUB_TOKEN} -- npx -y @modelcontextprotocol/server-github
313
+ /mcp add search -H "Authorization: Bearer ${env:SEARCH_TOKEN}" https://mcp.example.com/mcp
309
314
  /mcp list
310
315
  /mcp disable filesystem
311
316
  /mcp enable filesystem
312
317
  /mcp delete filesystem
313
318
  ```
314
319
 
315
- The server is saved to the active config. Use `${env:NAME}` references in a manually configured
316
- `env` or `headers` object when a server needs a secret; this keeps the secret itself out of the
317
- config file:
320
+ Quotes keep spaces in paths and values. `-e` sets environment variables for a local server and
321
+ `-H` sets headers for a remote one; both go before the URL or command. The server is saved to the
322
+ active config. Use `${env:NAME}` references for secrets, on the command line or in the config,
323
+ so the secret itself never lands in the config file:
318
324
 
319
325
  ```json
320
326
  {
@@ -331,12 +337,29 @@ config file:
331
337
  }
332
338
  ```
333
339
 
334
- A skill is a directory containing a `SKILL.md` file. Global skills live in
335
- `~/.kitcode/skills`; project skills live in `./.kitcode/skills`.
340
+ A skill is a directory containing a `SKILL.md` file, plus any scripts or reference files it uses.
341
+ Global skills live in `~/.kitcode/skills`; project skills live in `./.kitcode/skills`. Install one
342
+ without leaving the TUI:
336
343
 
337
- Attachments support PNG, JPEG, GIF, and WebP images up to 10 MB, plus UTF-8 text files up to
338
- 256 KB. Pasting or dragging a standalone existing path queues it automatically and displays a
339
- chip below the prompt. File contents are sent only when the attachment is submitted with a message.
344
+ ```text
345
+ /skills install https://github.com/anthropics/skills/tree/main/skills/pdf
346
+ /skills install @scope/some-skill
347
+ /skills install ./my-skill
348
+ /skills remove pdf
349
+ ```
350
+
351
+ The whole skill folder is copied (symlinks are skipped). A link to a repository with several skills
352
+ lists them so you can pick one by its path.
353
+
354
+ Attachments support PNG, JPEG, GIF, and WebP images up to 10 MB, plus UTF-8 (or UTF-16) text
355
+ files up to 256 KB. Pasting or dragging a standalone existing path queues it automatically and
356
+ displays a chip below the prompt. File contents are sent only when the attachment is submitted with
357
+ a message. Large or very tall images are scaled down to fit the API limits.
358
+
359
+ Writing `@path/to/file` in a message sends that workspace file along with it. Mentions never reach
360
+ outside the workspace and never pick up credentials (`.env`, keys, `~/.ssh`): attach those
361
+ explicitly with `/attach` if you really mean to. If the model refuses an image (for example, it has
362
+ no vision), the image is removed from the conversation so the next message still goes through.
340
363
 
341
364
  ## Development
342
365
 
package/README.ru.md CHANGED
@@ -89,7 +89,7 @@ http://localhost:11434/v1
89
89
  | `kitcode -r <id>` | Восстановить сессию по идентификатору. |
90
90
  | `kitcode --cwd <path>` | Использовать другую рабочую директорию. |
91
91
  | `kitcode --model <provider/model>` | Запуститься с выбранной моделью. |
92
- | `kitcode --mode <normal|accept|plan>` | Выбрать начальный режим работы. |
92
+ | `kitcode --mode <normal\|accept\|plan>` | Выбрать начальный режим работы. |
93
93
  | `kitcode sessions` | Показать сохранённые сессии. |
94
94
  | `kitcode ask "вопрос"` | Выполнить один запрос без TUI. |
95
95
  | `kitcode add <url>` | Добавить провайдера; ключ вводится в скрытом поле. |
@@ -106,21 +106,22 @@ http://localhost:11434/v1
106
106
 
107
107
  | Команда | Назначение |
108
108
  | --- | --- |
109
- | `/model` | Выбрать модель. |
109
+ | `/model [модель]` | Выбрать модель; полный или однозначный кусок id — без списка. |
110
110
  | `/provider` | Переключить провайдера. |
111
111
  | `/login` · `/logout [provider]` | Добавить провайдера или выбрать конкретный API для выхода. |
112
112
  | `/key [provider]` | Сменить ключ провайдера. |
113
113
  | `/refresh [provider]` | Перечитать список моделей провайдера в обход суточного кеша. |
114
- | `/effort [auto|low|medium|high|xhigh|max]` · `/thinking` | Выбрать effort и настроить reasoning. |
114
+ | `/effort [auto\|low\|medium\|high\|xhigh\|max]` · `/thinking` | Выбрать effort и настроить reasoning. |
115
+ | `/bell [on\|off]` | Включить/выключить сигнал о готовом долгом ответе и запросе разрешения. |
115
116
  | `/context [tokens\|auto]` | Показать или задать окно контекста модели для индикатора и автосжатия. |
116
117
  | `/memory show` · `/memory set <текст>` · `/memory clear` | Просмотреть, заменить или очистить постоянные заметки проекта. |
117
118
  | `/resume` · `/clear` | Восстановить сессию или начать новую. |
118
119
  | `/sessions` | Найти сессию и открыть, переименовать, удалить или экспортировать её. |
119
120
  | `/sessions list` | Показать все сохранённые сессии. |
120
- | `/sessions rename <id> <название>` | Переименовать сохранённую сессию. |
121
+ | `/sessions rename [id] <название>` | Переименовать сохранённую сессию. |
121
122
  | `/sessions delete <id>` | Удалить сохранённую сессию. |
122
123
  | `/sessions delete all` | Удалить все сохранённые чаты после двух отдельных подтверждений. |
123
- | `/sessions export <id> [путь]` | Экспортировать сессию в приватный Markdown-файл (по умолчанию `.kitcode-exports/`). |
124
+ | `/sessions export [id] [путь]` | Экспортировать сессию в приватный Markdown-файл (по умолчанию `.kitcode-exports/`). |
124
125
  | `/attach <путь>` · `/attach clipboard` · `/attach clear` | Управлять вложениями следующего сообщения; введите `@` в строке ввода для поиска и прикрепления файла проекта. |
125
126
  | `/compact` | Заменить старую часть контекста краткой сводкой модели. |
126
127
  | `/update` | Проверить новую версию KitCode в npm. |
@@ -128,15 +129,16 @@ http://localhost:11434/v1
128
129
  | `/undo` | Откатить встроенные правки файлов из последнего сообщения. |
129
130
  | `/usage` | Показать токены, запросы, стоимость, доступный баланс и rate limits, если API их отдаёт. |
130
131
  | `/checker` | Проверить настройку и список моделей без платного chat-запроса. |
131
- | `/prompt` | Вставить сохранённый промт. |
132
- | `/prompt save <name>` | Сохранить последнее сообщение как промт. |
133
- | `/prompt delete <name>` | Удалить сохранённый промт. |
132
+ | `/prompt [имя]` | Вставить сохранённый промт. |
133
+ | `/prompt save [имя]` | Сохранить последнее сообщение как промт или выбрать одно из недавних и назвать. Спросит перед заменой. |
134
+ | `/prompt delete [имя]` | Удалить сохранённый промт. |
134
135
  | `/skills` · `/mcp list` | Показать skills и состояние MCP. |
135
- | `/mcp add <имя> <url>` | Добавить и сразу подключить MCP-сервер. |
136
- | `/mcp add <имя> -- <команда> [аргументы]` | Добавить и подключить локальный MCP-сервер. |
136
+ | `/skills install <источник>` · `/skills remove [имя]` | Установить skill (GitHub, npm, локальная папка) или удалить установленный. |
137
+ | `/mcp add <имя> [-H "Имя: значение"] <url>` | Добавить и сразу подключить MCP-сервер. |
138
+ | `/mcp add <имя> [-e КЛЮЧ=значение] -- <команда> [аргументы]` | Добавить и подключить локальный MCP-сервер. |
137
139
  | `/mcp enable <имя>` · `/mcp disable <имя>` | Подключить или отключить MCP без удаления. |
138
140
  | `/mcp delete <имя>` | Отключить и удалить MCP-сервер. |
139
- | `/theme` · `/lang` | Изменить тему или язык. |
141
+ | `/theme [цвет]` · `/lang [en\|ru]` | Изменить тему или язык. |
140
142
  | `/config` | Показать активный конфиг. |
141
143
  | `/bypass` | Переключить работу без запросов подтверждения. |
142
144
  | `/help` · `/exit` | Показать помощь или выйти. |
@@ -152,9 +154,9 @@ http://localhost:11434/v1
152
154
  | `Ctrl+V` / `Cmd+V` | Прикрепить картинку из системного буфера; явный запасной вариант — `/attach clipboard`. |
153
155
  | `Esc` | Остановить текущий запрос или закрыть окно. |
154
156
 
155
- Сообщения можно вводить, пока агент работает: они попадут в очередь и выполнятся по порядку.
157
+ Сообщения можно вводить, пока агент работает: они попадут в очередь и выполнятся по порядку. Очередь видна над полем ввода, а ↑/↓ в пустом поле выбирают сообщение для правки.
156
158
  Статусные команды и настройки — `/help`, `/usage`, `/context`, `/model`, `/effort`, `/thinking`,
157
- `/budget`, `/theme`, `/lang`, `/subagents`, `/config`, `/checker`, `/exit` — выполняются сразу.
159
+ `/bell`, `/budget`, `/theme`, `/lang`, `/subagents`, `/config`, `/checker`, `/exit` — выполняются сразу.
158
160
  Команды, которые меняют текущий ход или сессию (`/clear`, `/compact`, `/resume`, `/undo`, `/login`,
159
161
  `/provider`, `/logout`, `/key`, `/refresh`, `/mcp`, `/sessions`), ждут завершения хода.
160
162
 
@@ -302,7 +304,8 @@ MCP поддерживает локальные `stdio`-серверы и уда
302
304
 
303
305
  ```text
304
306
  /mcp add docs https://mcp.example.com/mcp
305
- /mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem .
307
+ /mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem "C:\Мои проекты"
308
+ /mcp add github -e GITHUB_TOKEN=${env:GITHUB_TOKEN} -- npx -y @modelcontextprotocol/server-github
306
309
  /mcp list
307
310
  /mcp disable filesystem
308
311
  /mcp enable filesystem
@@ -329,9 +332,15 @@ MCP поддерживает локальные `stdio`-серверы и уда
329
332
  Skill — это директория с файлом `SKILL.md`. Глобальные skills находятся в
330
333
  `~/.kitcode/skills`, проектные — в `./.kitcode/skills`.
331
334
 
332
- Во вложениях поддерживаются PNG, JPEG, GIF и WebP до 10 МБ, а также UTF-8 текст до 256 КБ.
333
- Если вставить или перетащить отдельный путь к существующему файлу, он автоматически появится
334
- чипом под полем ввода. Содержимое отправляется провайдеру только вместе со следующим сообщением.
335
+ Во вложениях поддерживаются PNG, JPEG, GIF и WebP до 10 МБ, а также текст в UTF-8 (или UTF-16)
336
+ до 256 КБ. Если вставить или перетащить отдельный путь к существующему файлу, он автоматически
337
+ появится чипом под полем ввода. Содержимое отправляется провайдеру только вместе со следующим
338
+ сообщением. Большие или очень длинные картинки уменьшаются под лимиты API.
339
+
340
+ `@путь/к/файлу` в сообщении отправляет этот файл проекта вместе с ним. Упоминания не выходят за
341
+ пределы проекта и не подхватывают секреты (`.env`, ключи, `~/.ssh`) — такие файлы прикрепляются
342
+ только явно через `/attach`. Если модель не принимает картинку (например, у неё нет зрения),
343
+ картинка убирается из разговора, чтобы следующее сообщение прошло.
335
344
 
336
345
  ## Разработка
337
346