codetyper-cli 0.4.2 → 0.4.4

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
@@ -90,9 +90,11 @@ Full-screen terminal interface with real-time streaming responses.
90
90
  ![CodeTyper Status View](assets/CodetyperView.png)
91
91
 
92
92
  **Key bindings:**
93
+
93
94
  - `Enter` - Send message
94
95
  - `Shift+Enter` - New line
95
- - `/` - Open command menu
96
+ - `@` - Open file picker (works anywhere in input)
97
+ - `/` - Open command menu (works anywhere in input)
96
98
  - `Ctrl+M` - Toggle interaction mode
97
99
  - `Ctrl+T` - Toggle todo panel
98
100
  - `Shift+Up/Down` - Scroll log panel
@@ -103,6 +105,7 @@ Full-screen terminal interface with real-time streaming responses.
103
105
  Optional vim-style keyboard navigation for power users. Enable in settings.
104
106
 
105
107
  **Normal Mode:**
108
+
106
109
  - `j/k` - Scroll down/up
107
110
  - `gg/G` - Jump to top/bottom
108
111
  - `Ctrl+d/u` - Half page scroll
@@ -111,6 +114,7 @@ Optional vim-style keyboard navigation for power users. Enable in settings.
111
114
  - `:` - Command mode (`:q` quit, `:w` save)
112
115
 
113
116
  **Configuration:**
117
+
114
118
  ```json
115
119
  {
116
120
  "vim": {
@@ -128,26 +132,26 @@ Press `/` to access all commands organized by category.
128
132
 
129
133
  **Available Commands:**
130
134
 
131
- | Category | Command | Description |
132
- |----------|---------|-------------|
133
- | General | `/help` | Show available commands |
134
- | General | `/clear` | Clear conversation history |
135
- | General | `/exit` | Exit the chat |
136
- | Session | `/save` | Save current session |
137
- | Session | `/context` | Show context information |
138
- | Session | `/usage` | Show token usage statistics |
139
- | Session | `/remember` | Save a learning about the project |
140
- | Session | `/learnings` | Show saved learnings |
141
- | Settings | `/model` | Select AI model |
142
- | Settings | `/agent` | Select agent |
143
- | Settings | `/mode` | Switch interaction mode |
144
- | Settings | `/provider` | Switch LLM provider |
145
- | Settings | `/status` | Show provider status |
146
- | Settings | `/theme` | Change color theme |
147
- | Settings | `/mcp` | Manage MCP servers |
148
- | Account | `/whoami` | Show logged in account |
149
- | Account | `/login` | Authenticate with provider |
150
- | Account | `/logout` | Sign out from provider |
135
+ | Category | Command | Description |
136
+ | -------- | ------------ | --------------------------------- |
137
+ | General | `/help` | Show available commands |
138
+ | General | `/clear` | Clear conversation history |
139
+ | General | `/exit` | Exit the chat |
140
+ | Session | `/save` | Save current session |
141
+ | Session | `/context` | Show context information |
142
+ | Session | `/usage` | Show token usage statistics |
143
+ | Session | `/remember` | Save a learning about the project |
144
+ | Session | `/learnings` | Show saved learnings |
145
+ | Settings | `/model` | Select AI model |
146
+ | Settings | `/agent` | Select agent |
147
+ | Settings | `/mode` | Switch interaction mode |
148
+ | Settings | `/provider` | Switch LLM provider |
149
+ | Settings | `/status` | Show provider status |
150
+ | Settings | `/theme` | Change color theme |
151
+ | Settings | `/mcp` | Manage MCP servers |
152
+ | Account | `/whoami` | Show logged in account |
153
+ | Account | `/login` | Authenticate with provider |
154
+ | Account | `/logout` | Sign out from provider |
151
155
 
152
156
  ### Agent Mode with Diff View
153
157
 
@@ -156,6 +160,7 @@ When CodeTyper modifies files, you see a clear diff view of changes.
156
160
  ![Agent Mode with Diffs](assets/CodetyperAgentMode.png)
157
161
 
158
162
  **Interaction Modes:**
163
+
159
164
  - **Agent** - Full access, can modify files
160
165
  - **Ask** - Read-only, answers questions
161
166
  - **Code Review** - Review PRs and diffs
@@ -167,6 +172,7 @@ Granular control over what CodeTyper can do. Every file operation requires appro
167
172
  ![Permission Modal](assets/CodetyperPermissionView.png)
168
173
 
169
174
  **Permission Scopes:**
175
+
170
176
  - `[y]` Yes, this once
171
177
  - `[s]` Yes, for this session
172
178
  - `[a]` Always allow for this project
@@ -180,6 +186,7 @@ Access to multiple AI models through GitHub Copilot.
180
186
  ![Model Selection](assets/CodetyperCopilotModels.png)
181
187
 
182
188
  **Available Models:**
189
+
183
190
  - GPT-5, GPT-5-mini (Unlimited)
184
191
  - GPT-5.2-codex, GPT-5.1-codex
185
192
  - Grok-code-fast-1
@@ -187,19 +194,19 @@ Access to multiple AI models through GitHub Copilot.
187
194
 
188
195
  ### Theme System
189
196
 
190
- 14+ built-in themes to customize your experience.
197
+ 15+ built-in themes to customize your experience.
191
198
 
192
199
  ![Theme Selection](assets/CodetyperThemes.png)
193
200
 
194
201
  **Available Themes:**
195
- default, dracula, nord, tokyo-night, gruvbox, monokai, catppuccin, one-dark, solarized-dark, github-dark, rose-pine, kanagawa, ayu-dark, cargdev-cyberpunk
202
+ default, dracula, nord, tokyo-night, gruvbox, monokai, catppuccin, one-dark, solarized-dark, github-dark, rose-pine, kanagawa, ayu-dark, cargdev-cyberpunk, pink-purple
196
203
 
197
204
  ## Providers
198
205
 
199
- | Provider | Models | Auth Method | Use Case |
200
- |----------|--------|-------------|----------|
201
- | **GitHub Copilot** | GPT-5, Claude, Gemini | OAuth (device flow) | Cloud-based, high quality |
202
- | **Ollama** | Llama, DeepSeek, Qwen, etc. | Local server | Private, offline, zero-cost |
206
+ | Provider | Models | Auth Method | Use Case |
207
+ | ------------------ | --------------------------- | ------------------- | --------------------------- |
208
+ | **GitHub Copilot** | GPT-5, Claude, Gemini | OAuth (device flow) | Cloud-based, high quality |
209
+ | **Ollama** | Llama, DeepSeek, Qwen, etc. | Local server | Private, offline, zero-cost |
203
210
 
204
211
  ### Cascade Mode
205
212
 
@@ -244,6 +251,7 @@ Settings are stored in `~/.config/codetyper/config.json`:
244
251
  ### Project Context
245
252
 
246
253
  CodeTyper reads project-specific context from:
254
+
247
255
  - `.github/` - GitHub workflows and templates
248
256
  - `.codetyper/` - Project-specific rules and learnings
249
257
  - `rules.md` - Custom instructions for the AI
@@ -274,18 +282,18 @@ codetyper --print "Explain this codebase"
274
282
 
275
283
  CodeTyper has access to these built-in tools:
276
284
 
277
- | Tool | Description |
278
- |------|-------------|
279
- | `bash` | Execute shell commands |
280
- | `read` | Read file contents |
281
- | `write` | Create or overwrite files |
282
- | `edit` | Find and replace in files |
283
- | `glob` | Find files by pattern |
284
- | `grep` | Search file contents |
285
- | `lsp` | Language Server Protocol operations |
286
- | `web_search` | Search the web |
287
- | `todo-read` | Read current todo list |
288
- | `todo-write` | Update todo list |
285
+ | Tool | Description |
286
+ | ------------ | ----------------------------------- |
287
+ | `bash` | Execute shell commands |
288
+ | `read` | Read file contents |
289
+ | `write` | Create or overwrite files |
290
+ | `edit` | Find and replace in files |
291
+ | `glob` | Find files by pattern |
292
+ | `grep` | Search file contents |
293
+ | `lsp` | Language Server Protocol operations |
294
+ | `web_search` | Search the web |
295
+ | `todo-read` | Read current todo list |
296
+ | `todo-write` | Update todo list |
289
297
 
290
298
  ### MCP Integration
291
299
 
@@ -311,6 +319,7 @@ Connect external MCP (Model Context Protocol) servers for extended capabilities:
311
319
  ```
312
320
 
313
321
  **MCP Browser Features:**
322
+
314
323
  - Search by name, description, or tags
315
324
  - Filter by category (database, web, AI, etc.)
316
325
  - View server details and required environment variables
@@ -324,6 +333,7 @@ Connect external MCP (Model Context Protocol) servers for extended capabilities:
324
333
  Lifecycle hooks for intercepting tool execution and session events.
325
334
 
326
335
  **Hook Events:**
336
+
327
337
  - `PreToolUse` - Validate/modify before tool execution
328
338
  - `PostToolUse` - Side effects after tool execution
329
339
  - `SessionStart` - At session initialization
@@ -332,16 +342,22 @@ Lifecycle hooks for intercepting tool execution and session events.
332
342
  - `Stop` - When execution stops
333
343
 
334
344
  **Configuration** (`.codetyper/hooks.json`):
345
+
335
346
  ```json
336
347
  {
337
348
  "hooks": [
338
- { "event": "PreToolUse", "script": ".codetyper/hooks/validate.sh", "timeout": 5000 },
349
+ {
350
+ "event": "PreToolUse",
351
+ "script": ".codetyper/hooks/validate.sh",
352
+ "timeout": 5000
353
+ },
339
354
  { "event": "PostToolUse", "script": ".codetyper/hooks/notify.sh" }
340
355
  ]
341
356
  }
342
357
  ```
343
358
 
344
359
  **Exit Codes:**
360
+
345
361
  - `0` - Allow (optionally output `{"updatedInput": {...}}` to modify args)
346
362
  - `1` - Warn but continue
347
363
  - `2` - Block execution
@@ -351,6 +367,7 @@ Lifecycle hooks for intercepting tool execution and session events.
351
367
  Extend CodeTyper with custom tools, commands, and hooks.
352
368
 
353
369
  **Plugin Structure:**
370
+
354
371
  ```
355
372
  .codetyper/plugins/{name}/
356
373
  ├── plugin.json # Manifest
@@ -363,6 +380,7 @@ Extend CodeTyper with custom tools, commands, and hooks.
363
380
  ```
364
381
 
365
382
  **Manifest** (`plugin.json`):
383
+
366
384
  ```json
367
385
  {
368
386
  "name": "my-plugin",
@@ -373,13 +391,18 @@ Extend CodeTyper with custom tools, commands, and hooks.
373
391
  ```
374
392
 
375
393
  **Custom Tool Definition:**
394
+
376
395
  ```typescript
377
396
  import { z } from "zod";
378
397
  export default {
379
398
  name: "custom_tool",
380
399
  description: "Does something",
381
400
  parameters: z.object({ input: z.string() }),
382
- execute: async (args, ctx) => ({ success: true, title: "Done", output: "..." }),
401
+ execute: async (args, ctx) => ({
402
+ success: true,
403
+ title: "Done",
404
+ output: "...",
405
+ }),
383
406
  };
384
407
  ```
385
408
 
@@ -404,12 +427,12 @@ Sessions are stored in `.codetyper/sessions/` with automatic commit message sugg
404
427
 
405
428
  The next major release focuses on production-ready autonomous agent execution:
406
429
 
407
- | Feature | Issue | Status |
408
- |---------|-------|--------|
409
- | Plan Approval Gate | [#111](https://github.com/CarGDev/codetyper.cli/issues/111) | Planned |
410
- | Diff Preview Before Write | [#112](https://github.com/CarGDev/codetyper.cli/issues/112) | Planned |
411
- | Execution Control (Pause/Resume/Abort) | [#113](https://github.com/CarGDev/codetyper.cli/issues/113) | Planned |
412
- | Consistent Model Behavior | [#114](https://github.com/CarGDev/codetyper.cli/issues/114) | Planned |
430
+ | Feature | Issue | Status |
431
+ | --------------------------------------- | ----------------------------------------------------------- | ------- |
432
+ | Plan Approval Gate | [#111](https://github.com/CarGDev/codetyper.cli/issues/111) | Planned |
433
+ | Diff Preview Before Write | [#112](https://github.com/CarGDev/codetyper.cli/issues/112) | Planned |
434
+ | Execution Control (Pause/Resume/Abort) | [#113](https://github.com/CarGDev/codetyper.cli/issues/113) | Planned |
435
+ | Consistent Model Behavior | [#114](https://github.com/CarGDev/codetyper.cli/issues/114) | Planned |
413
436
  | Quality Gates (TypeScript, Lint, Tests) | [#115](https://github.com/CarGDev/codetyper.cli/issues/115) | Planned |
414
437
 
415
438
  ### Known Issues
@@ -439,11 +462,14 @@ bun test
439
462
  bun run lint
440
463
  ```
441
464
 
442
- ## Recent Changes (v0.3.0)
465
+ ## Recent Changes (v0.4.2)
443
466
 
444
- - **System Prompt Builder**: New modular prompt system with modes, tiers, and providers
445
- - **Module Restructure**: Consistent internal organization with improved imports
446
- - **Solid.js TUI**: Fully migrated to Solid.js + OpenTUI (removed legacy React/Ink)
467
+ - **Pink Purple Theme**: New built-in color theme
468
+ - **Image Paste Fix**: Fixed race condition where pasted images were silently dropped
469
+ - **@ and / Anywhere**: File picker and command menu now work at any cursor position
470
+ - **Plan Approval Gate**: User confirmation before agent executes plans
471
+ - **Execution Control**: Pause, resume, and abort agent execution
472
+ - **Text Clipboard Copy/Read**: Cross-platform clipboard operations with mouse selection
447
473
 
448
474
  See [CHANGELOG](docs/CHANGELOG.md) for complete version history.
449
475