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 +77 -51
- package/dist/index.js +4013 -742
- package/package.json +5 -7
- package/src/version.json +1 -1
package/README.md
CHANGED
|
@@ -90,9 +90,11 @@ Full-screen terminal interface with real-time streaming responses.
|
|
|
90
90
|

|
|
91
91
|
|
|
92
92
|
**Key bindings:**
|
|
93
|
+
|
|
93
94
|
- `Enter` - Send message
|
|
94
95
|
- `Shift+Enter` - New line
|
|
95
|
-
-
|
|
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
|
|
132
|
-
|
|
133
|
-
| General
|
|
134
|
-
| General
|
|
135
|
-
| General
|
|
136
|
-
| Session
|
|
137
|
-
| Session
|
|
138
|
-
| Session
|
|
139
|
-
| Session
|
|
140
|
-
| Session
|
|
141
|
-
| Settings | `/model`
|
|
142
|
-
| Settings | `/agent`
|
|
143
|
-
| Settings | `/mode`
|
|
144
|
-
| Settings | `/provider`
|
|
145
|
-
| Settings | `/status`
|
|
146
|
-
| Settings | `/theme`
|
|
147
|
-
| Settings | `/mcp`
|
|
148
|
-
| Account
|
|
149
|
-
| Account
|
|
150
|
-
| Account
|
|
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
|

|
|
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
|

|
|
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
|

|
|
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
|
-
|
|
197
|
+
15+ built-in themes to customize your experience.
|
|
191
198
|
|
|
192
199
|

|
|
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
|
|
200
|
-
|
|
201
|
-
| **GitHub Copilot** | GPT-5, Claude, Gemini
|
|
202
|
-
| **Ollama**
|
|
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
|
|
278
|
-
|
|
279
|
-
| `bash`
|
|
280
|
-
| `read`
|
|
281
|
-
| `write`
|
|
282
|
-
| `edit`
|
|
283
|
-
| `glob`
|
|
284
|
-
| `grep`
|
|
285
|
-
| `lsp`
|
|
286
|
-
| `web_search` | Search the web
|
|
287
|
-
| `todo-read`
|
|
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
|
-
{
|
|
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) => ({
|
|
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
|
|
408
|
-
|
|
409
|
-
| Plan Approval Gate
|
|
410
|
-
| Diff Preview Before Write
|
|
411
|
-
| Execution Control (Pause/Resume/Abort)
|
|
412
|
-
| Consistent Model Behavior
|
|
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.
|
|
465
|
+
## Recent Changes (v0.4.2)
|
|
443
466
|
|
|
444
|
-
- **
|
|
445
|
-
- **
|
|
446
|
-
-
|
|
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
|
|