@calliopelabs/cli 0.6.11 → 0.7.1

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
@@ -18,6 +18,10 @@ Multi-model AI agent CLI with autonomous loops, project memory, and advanced too
18
18
  ## Installation
19
19
 
20
20
  ```bash
21
+ # Quick install
22
+ curl -fsSL https://calliope.ai/install.sh | bash
23
+
24
+ # Or via npm
21
25
  npm install -g @calliopelabs/cli
22
26
  ```
23
27
 
@@ -49,24 +53,174 @@ Switch between 12+ providers on the fly:
49
53
  /provider mistral # Use Mistral
50
54
  /provider ollama # Use local models
51
55
  /provider openrouter # Use any model via OpenRouter
52
- /provider litellm # Use LiteLLM proxy
53
56
  ```
54
57
 
55
- ### Auto Model Routing
58
+ **Supported Providers:**
59
+ - Anthropic (Claude): Sonnet 4, Opus 4, Haiku
60
+ - OpenAI: GPT-4o, o1, o3-mini
61
+ - Google: Gemini 2.0 Flash, 1.5 Pro
62
+ - Mistral: Large, Small
63
+ - Groq: Llama 3.3, Mixtral
64
+ - Cerebras: Llama 3.3
65
+ - Fireworks: Llama models
66
+ - xAI: Grok
67
+ - Ollama: Local models
68
+ - OpenRouter: 100+ models
69
+ - GitHub Models: Via Azure
70
+ - DeepSeek: R1, V3
71
+
72
+ ### 🔒 Scope Management
73
+
74
+ Control which directories your AI can access for enhanced security:
75
+
76
+ ```bash
77
+ /scope add ./src # Grant access to src directory
78
+ /scope add ./tests # Add tests directory
79
+ /scope list # View current scope
80
+ /scope remove ./src # Revoke access
81
+ /scope reset # Clear all scope restrictions
82
+ ```
83
+
84
+ **Benefits:**
85
+ - 🔒 **Security** - Prevent accidental modifications outside project areas
86
+ - đŸŽ¯ **Focus** - Keep AI operations within relevant directories
87
+ - ⚡ **Performance** - Reduce unnecessary file scanning
88
+ - 📋 **Audit trail** - Track which directories are in scope
89
+
90
+ ### 🔁 Session Management & Continuity
91
+
92
+ Seamless continuity between sessions:
93
+
94
+ ```bash
95
+ # On startup, Calliope detects previous sessions:
96
+ ╭─ 🎭 Calliope v0.6.11
97
+ │ Found previous session (2 hours ago)
98
+ │ â€ĸ 12 messages, 2 TODOs pending
99
+ ╰─ [R]esume [N]ew session
100
+
101
+ # Commands
102
+ /session list # List all sessions
103
+ /session info # Current session details
104
+ /history # View conversation history
105
+ /export [file.md] # Export conversation to markdown
106
+ ```
107
+
108
+ ### 🔖 Bookmarks & Navigation
109
+
110
+ Mark and return to important moments in your conversation:
111
+
112
+ ```bash
113
+ /bookmark "Got auth working" # Create a bookmark
114
+ /bookmarks # List all bookmarks
115
+ /goto bookmark-1 # Jump to that point in history
116
+ /bookmark delete 1 # Remove a bookmark
117
+ ```
118
+
119
+ **Use cases:**
120
+ - Mark successful implementations
121
+ - Save decision points
122
+ - Quick navigation in long conversations
123
+
124
+ ### 📋 Templates
125
+
126
+ Save and reuse common prompts and workflows:
127
+
128
+ ```bash
129
+ /template save code-review "Review this code for bugs, performance, and best practices"
130
+ /template list # View all templates
131
+ /template use code-review # Use a saved template
132
+ /template delete code-review # Remove a template
133
+ ```
134
+
135
+ **Built-in templates include:**
136
+ - Code review
137
+ - Bug investigation
138
+ - Refactoring plans
139
+ - Testing strategies
140
+
141
+ ### â†Šī¸ Undo/Redo
142
+
143
+ Navigate conversation history with full state management:
144
+
145
+ ```bash
146
+ /undo # Undo last exchange (message + all responses)
147
+ /redo # Redo previously undone exchange
148
+ /history # View full conversation timeline
149
+ ```
150
+
151
+ **Features:**
152
+ - Preserves entire conversation state
153
+ - Works across tool executions
154
+ - Unlimited undo/redo stack
155
+ - Shows available undo/redo count
156
+
157
+ ### 💰 Cost Tracking
158
+
159
+ Monitor API usage and costs across sessions:
160
+
161
+ ```bash
162
+ # Automatic tracking in status bar:
163
+ # anthropic:claude-sonnet-4 │ 5.2K/200K │ 12.5K used │ $0.45
164
+
165
+ /cost # Detailed cost breakdown
166
+ ```
167
+
168
+ **Tracks:**
169
+ - Current session cost
170
+ - Total cost across all sessions
171
+ - Cost per provider
172
+ - Token usage (input/output)
173
+ - Persists across sessions
174
+
175
+ ### âŒ¨ī¸ Advanced Input Experience
176
+
177
+ Enhanced input with modern conveniences:
178
+
179
+ - **Tab completion** - Slash commands and file paths autocomplete
180
+ - **History navigation** - Up/down arrows to browse previous inputs
181
+ - **Multi-line editing** - Shift+Enter for new lines (if supported)
182
+ - **Path suggestions** - Real-time file path completion
183
+ - **Command hints** - Footer shows available options
184
+
185
+ **Example:**
186
+ ```
187
+ > /boo[TAB] → /bookmark
188
+ > /scope add ./[TAB] → ./src/ ./tests/ ./docs/
189
+ > [Up Arrow] → Previous command
190
+ ```
191
+
192
+ ### 🚀 Parallel Tool Execution
56
193
 
57
- Automatically select the best model based on task complexity:
194
+ Automatically executes independent tool calls in parallel for 2-5x speedup:
58
195
 
59
196
  ```
60
- /route on # Enable auto-routing
61
- /route test "explain quantum computing" # Test routing decision
197
+ # When AI needs to read 3 files:
198
+ Sequential: Read file1 → wait → Read file2 → wait → Read file3
199
+ Parallel: Read file1, file2, file3 → all at once!
200
+
201
+ # Dependency-aware:
202
+ - Detects when tools depend on each other
203
+ - Executes in optimal order
204
+ - Shows parallel execution progress
62
205
  ```
63
206
 
64
- Model tiers:
65
- - **Fast**: Haiku/GPT-4o Mini/Flash - quick, simple tasks
66
- - **Balanced**: Sonnet/GPT-4o/Pro - moderate complexity
67
- - **Smart**: Opus/o1/Pro - complex reasoning tasks
207
+ ### ⚡ Autonomous Loops
208
+
209
+ Enable continuous execution for complex multi-step tasks:
210
+
211
+ ```bash
212
+ /loop on # Enable autonomous loops
213
+ /loop off # Disable
214
+ /loop 10 # Set max iterations
215
+
216
+ # The AI will:
217
+ # 1. Plan the approach
218
+ # 2. Execute tools
219
+ # 3. Evaluate results
220
+ # 4. Continue until goal achieved or max iterations
221
+ ```
68
222
 
69
- ### Project Memory (CALLIOPE.md)
223
+ ### 🧠 Project Memory (CALLIOPE.md)
70
224
 
71
225
  Persistent memory across sessions using markdown files:
72
226
 
@@ -85,221 +239,281 @@ Calliope automatically loads context from standard files:
85
239
  - `ARCHITECTURE.md`, `DESIGN.md`, `NOTES.md`
86
240
  - `.cursorrules`, `.github/copilot-instructions.md`
87
241
 
88
- ### Tools
242
+ ### đŸ› ī¸ Tools
89
243
 
90
244
  Built-in tools for autonomous operation:
91
245
 
92
246
  | Tool | Description |
93
247
  |------|-------------|
94
- | `shell` | Execute shell commands |
248
+ | `shell` | Execute shell commands with safety checks |
95
249
  | `read_file` | Read file contents |
96
250
  | `write_file` | Write files with diff preview |
97
251
  | `list_files` | Directory listing |
98
- | `think` | Structured reasoning |
252
+ | `think` | Structured reasoning (visible in output) |
99
253
  | `execute_code` | Run Python/Node/Bash in sandbox |
100
- | `web_search` | Search the web |
101
- | `git` | Git operations |
254
+ | `web_search` | Search the web for information |
255
+ | `git` | Git operations (status, diff, log, etc.) |
102
256
  | `mermaid` | Generate diagrams |
103
257
 
104
- ### Sandboxed Code Execution
258
+ ### đŸŗ Sandboxed Code Execution
105
259
 
106
260
  Execute code safely in Docker containers:
107
261
 
108
262
  ```
109
263
  The execute_code tool automatically:
110
264
  - Uses Docker when available (recommended)
111
- - Falls back to local execution
265
+ - Falls back to local execution if needed
112
266
  - Shows [sandboxed] or [unsandboxed] status
113
267
  - Enforces resource limits and timeouts
114
268
  ```
115
269
 
116
- ### MCP Server Support
270
+ ### 🌐 MCP Server Support
117
271
 
118
272
  Connect external tools via Model Context Protocol:
119
273
 
120
- ```
274
+ ```bash
121
275
  /mcp add https://mcp-server.example.com
122
276
  /mcp list # Show connected servers
123
- /mcp tools # List available tools
277
+ /mcp tools # List available tools from all servers
124
278
  /mcp refresh # Reconnect all servers
125
279
  ```
126
280
 
127
- ### Agent Skills (AgentSkills.io)
281
+ ### đŸ“Ļ Agent Skills (AgentSkills.io)
128
282
 
129
- Install reusable skills from the registry:
283
+ Install reusable skills from the community registry:
130
284
 
131
- ```
285
+ ```bash
132
286
  /skills add git-workflow
133
287
  /skills add code-review
134
- /skills list
135
- /skills info <name>
288
+ /skills list # Show installed skills
289
+ /skills info <name> # Skill details
136
290
  ```
137
291
 
138
- ### Conversation Branching
292
+ ### 🌲 Conversation Branching
139
293
 
140
294
  Fork conversations to explore different approaches:
141
295
 
142
- ```
296
+ ```bash
143
297
  /branch new experiment "Try approach B"
144
- /branch list
298
+ /branch list # Show all branches
145
299
  /branch switch experiment
146
300
  /branch delete experiment
147
301
  ```
148
302
 
149
- ### Themes
303
+ ### 🎨 Themes & Personas
150
304
 
151
- Customize the color scheme:
305
+ Customize the visual style and AI personality:
152
306
 
153
- ```
307
+ ```bash
308
+ # Themes
154
309
  /theme list # Show available themes
155
310
  /theme monokai # Set theme
311
+ /theme # Cycle through themes
312
+
313
+ # Personas
314
+ /persona professional # Professional, concise responses
315
+ /persona minimal # Minimal output, just essentials
316
+ /persona calliope # Poetic, elegant responses (default)
156
317
  ```
157
318
 
158
- Available themes: `default`, `light`, `monokai`, `nord`, `minimal`
319
+ **Available themes:** `default`, `light`, `monokai`, `nord`, `minimal`
159
320
 
160
- ### Hooks System
321
+ ### đŸĒ Hooks System
161
322
 
162
323
  Run custom scripts before/after tool execution:
163
324
 
164
- ```
325
+ ```bash
165
326
  /hooks init # Initialize default hooks
166
327
  /hooks list # Show configured hooks
167
328
  /hooks add pre-shell "echo Running: $CALLIOPE_COMMAND"
168
329
  ```
169
330
 
170
- Hook events: `pre-tool`, `post-tool`, `pre-shell`, `post-shell`, `pre-write`, `post-write`, `session-start`, `session-end`
331
+ **Hook events:** `pre-tool`, `post-tool`, `pre-shell`, `post-shell`, `pre-write`, `post-write`, `session-start`, `session-end`
171
332
 
172
- ### Context Summarization
333
+ ### 📊 Context Management & Warnings
173
334
 
174
- Manage long conversations:
335
+ Smart context tracking with proactive warnings:
336
+
337
+ ```
338
+ âš ī¸ Context at 85% capacity (170K/200K tokens)
339
+ Consider: /summarize compact | /clear | shorter messages
175
340
 
341
+ 🚨 Context at 95% capacity! (190K/200K tokens)
342
+ Action required: /summarize compact | /clear
176
343
  ```
344
+
345
+ **Commands:**
346
+ ```bash
177
347
  /summarize context # View conversation summary
178
348
  /summarize compact # Compress context to fit limits
349
+ /clear # Clear conversation
179
350
  ```
180
351
 
181
- ### Project Configuration (.calliope)
352
+ ### 🔍 Smart Search
182
353
 
183
- Human-readable project config:
354
+ Find anything in your conversation or project:
184
355
 
185
- ```
186
- /project init # Create .calliope file
187
- /project show # View config
188
- /project run build # Run defined command
356
+ ```bash
357
+ /search error handling # Fuzzy search through history
358
+ /find auth # Find files in project
189
359
  ```
190
360
 
191
- Format:
361
+ ### âš™ī¸ Modes
362
+
363
+ Three distinct operating modes for different workflows:
364
+
365
+ ```bash
366
+ /mode plan # Analyze and plan, don't execute
367
+ /mode hybrid # Plan then execute (default)
368
+ /mode work # Execute directly without planning
192
369
  ```
193
- project: My Project
194
- provider: anthropic
195
- model: claude-sonnet-4-20250514
196
370
 
197
- [tech]
198
- typescript
199
- react
200
- postgres
371
+ | Mode | Icon | Behavior | Use Case |
372
+ |------|------|----------|----------|
373
+ | **Plan** | 📋 | Chat only, no execution | Design discussions, exploration |
374
+ | **Hybrid** | 🔄 | Smart planning before complex ops | Default for most users |
375
+ | **Work** | 🔧 | Direct execution | Experienced users, simple tasks |
201
376
 
202
- [conventions]
203
- Use functional components
204
- Prefer async/await
377
+ ### đŸ›Ąī¸ Risk Assessment & Safety
205
378
 
206
- [commands]
207
- build: npm run build
208
- test: npm test
209
- ```
379
+ Built-in safety for potentially dangerous operations:
380
+
381
+ - Automatic risk classification (low/medium/high/critical)
382
+ - Permission prompts for risky operations
383
+ - God mode (`-g`) to bypass prompts for trusted tasks
384
+ - Detailed explanations of risks
385
+ - Scope restrictions for file access
386
+
387
+ ### 🚄 Streaming & Real-time Feedback
388
+
389
+ Live response rendering for immediate feedback:
390
+
391
+ - Token-by-token streaming for text responses
392
+ - Live tool execution status with progress indicators
393
+ - Visual diffs for file changes
394
+ - Parallel tool execution visualization
395
+ - Thinking process display
210
396
 
211
397
  ## Commands Reference
212
398
 
213
- ### Core
214
- | Command | Description |
215
- |---------|-------------|
216
- | `/help` | Show all commands |
217
- | `/exit` | Exit Calliope |
218
- | `/clear` | Clear conversation |
219
- | `/status` | Show current status |
220
- | `/config` | Show configuration |
399
+ ### Core Commands
400
+ ```bash
401
+ /help, /h # Show all commands
402
+ /exit, /quit, /q # Exit Calliope
403
+ /clear, /c # Clear conversation
404
+ /status, /s # Show current status
405
+ /config # Show configuration
406
+ /debug [on|off] # Toggle debug mode
407
+ ```
221
408
 
222
409
  ### Model & Provider
223
- | Command | Description |
224
- |---------|-------------|
225
- | `/provider [name]` | Switch AI provider |
226
- | `/model [name]` | Set model (interactive if no name) |
227
- | `/models` | Browse available models |
228
- | `/route [on\|off\|test]` | Auto model routing |
229
- | `/persona [name]` | Switch persona |
230
-
231
- ### Modes
232
- | Command | Description |
233
- |---------|-------------|
234
- | `/mode [plan\|hybrid\|work]` | Switch operating mode |
235
- | `/confirm [on\|off]` | Toggle risky op confirmation |
236
-
237
- Modes:
238
- - **Plan**: Analyze and plan, don't execute
239
- - **Hybrid**: Plan then execute (default)
240
- - **Work**: Execute without planning
410
+ ```bash
411
+ /provider, /p [name] # Switch AI provider
412
+ /model, /m [name] # Set model (interactive if no name)
413
+ /models # Browse available models
414
+ /persona [name] # Switch persona (calliope/professional/minimal)
415
+ ```
416
+
417
+ ### Modes & Settings
418
+ ```bash
419
+ /mode [plan|hybrid|work] # Switch operating mode
420
+ /loop [on|off|N] # Toggle/configure autonomous mode
421
+ /confirm [on|off] # Toggle risky operation confirmation
422
+ /theme [name] # Switch theme
423
+ ```
424
+
425
+ ### Scope Management
426
+ ```bash
427
+ /scope add <path> # Add directory to scope
428
+ /scope remove <path> # Remove directory from scope
429
+ /scope list # Show current scope
430
+ /scope reset # Clear all scope restrictions
431
+ ```
241
432
 
242
433
  ### Session & History
243
- | Command | Description |
244
- |---------|-------------|
245
- | `/session [list\|info]` | Session management |
246
- | `/history [search]` | Chat history |
247
- | `/context [load\|summary]` | Context management |
248
- | `/summarize [context\|compact]` | Summarize conversation |
249
-
250
- ### Memory & Config
251
- | Command | Description |
252
- |---------|-------------|
253
- | `/memory [init\|add\|show\|global]` | Project memory |
254
- | `/project [init\|show\|run]` | Project config |
255
- | `/profile [name\|save\|del]` | Switch/save profiles |
256
-
257
- ### Search & Navigation
258
- | Command | Description |
259
- |---------|-------------|
260
- | `/find <pattern>` | Fuzzy file search |
261
- | `/search <query>` | Search conversation |
262
- | `/branch [new\|switch\|list]` | Conversation branches |
434
+ ```bash
435
+ /session list # List all sessions
436
+ /session info # Current session details
437
+ /history [search] # View/search conversation history
438
+ /bookmark [name] # Create bookmark
439
+ /bookmarks # List bookmarks
440
+ /goto <id> # Jump to bookmark
441
+ /undo # Undo last exchange
442
+ /redo # Redo exchange
443
+ ```
444
+
445
+ ### Templates & Memory
446
+ ```bash
447
+ /template save <name> <prompt> # Save template
448
+ /template list # View all templates
449
+ /template use <name> # Use template
450
+ /template delete <name> # Remove template
451
+
452
+ /memory init # Initialize project memory
453
+ /memory add <text> # Add to memory
454
+ /memory show # View project memory
455
+ /memory global # View global memory
456
+ ```
457
+
458
+ ### Context & Search
459
+ ```bash
460
+ /summarize [context|compact] # Summarize/compress conversation
461
+ /search <query> # Search conversation history
462
+ /find <pattern> # Fuzzy file search in project
463
+ /branch [new|switch|list] # Conversation branches
464
+ ```
263
465
 
264
466
  ### Tools & Extensions
265
- | Command | Description |
266
- |---------|-------------|
267
- | `/mcp [list\|add\|remove\|tools]` | MCP servers |
268
- | `/skills [list\|add\|remove\|info]` | Agent skills |
269
- | `/hooks [list\|add\|init]` | Pre/post tool hooks |
467
+ ```bash
468
+ /mcp [list|add|remove|tools] # MCP server management
469
+ /skills [list|add|remove|info] # Agent skills
470
+ /hooks [list|add|init] # Pre/post tool hooks
471
+ ```
270
472
 
271
473
  ### Tasks & Planning
272
- | Command | Description |
273
- |---------|-------------|
274
- | `/todo [add\|done\|list]` | Manage TODOs |
275
- | `/plans [list\|view]` | View plan history |
276
-
277
- ### Interface
278
- | Command | Description |
279
- |---------|-------------|
280
- | `/theme [name\|list]` | Color themes |
281
- | `/copy` | Copy last response |
282
- | `/export [file.md]` | Export conversation |
283
- | `/edit` | Edit last message |
284
- | `/undo` | Remove last exchange |
285
- | `/upgrade` | Check for updates |
474
+ ```bash
475
+ /todo [add|done|work|clear|list] # Manage TODOs
476
+ /plans [list|view|rerun] # View and rerun plans
477
+ ```
478
+
479
+ ### Utility
480
+ ```bash
481
+ /cost # Show cost breakdown
482
+ /copy # Copy last response
483
+ /export [file.md] # Export conversation to file
484
+ /upgrade # Check for updates
485
+ /set <key> <value> # Set runtime config (e.g., maxIterations)
486
+ /context # Show loaded project context
487
+ ```
286
488
 
287
489
  ## Environment Variables
288
490
 
289
- | Variable | Description |
290
- |----------|-------------|
291
- | `ANTHROPIC_API_KEY` | Anthropic Claude API key |
292
- | `GOOGLE_API_KEY` | Google Gemini API key |
293
- | `OPENAI_API_KEY` | OpenAI API key |
294
- | `OPENROUTER_API_KEY` | OpenRouter API key |
295
- | `TOGETHER_API_KEY` | Together AI API key |
296
- | `GROQ_API_KEY` | Groq API key |
297
- | `MISTRAL_API_KEY` | Mistral AI API key |
298
- | `AI21_API_KEY` | AI21 Labs API key |
299
- | `HUGGINGFACE_API_KEY` | HuggingFace API key |
300
- | `OLLAMA_BASE_URL` | Ollama server URL (default: localhost:11434) |
301
- | `LITELLM_BASE_URL` | LiteLLM proxy URL (default: localhost:4000) |
302
- | `LITELLM_API_KEY` | LiteLLM API key (if required) |
491
+ ```bash
492
+ # API Keys
493
+ ANTHROPIC_API_KEY=sk-ant-...
494
+ OPENAI_API_KEY=sk-...
495
+ GOOGLE_API_KEY=...
496
+ MISTRAL_API_KEY=...
497
+ GROQ_API_KEY=...
498
+ XAI_API_KEY=...
499
+ CEREBRAS_API_KEY=...
500
+ FIREWORKS_API_KEY=...
501
+ DEEPSEEK_API_KEY=...
502
+ OPENROUTER_API_KEY=...
503
+
504
+ # Configuration
505
+ CALLIOPE_PROVIDER=anthropic
506
+ CALLIOPE_MODEL=claude-sonnet-4-20250514
507
+ CALLIOPE_GOD_MODE=false
508
+ CALLIOPE_DEBUG=false
509
+
510
+ # Ollama
511
+ OLLAMA_BASE_URL=http://localhost:11434
512
+
513
+ # LiteLLM
514
+ LITELLM_BASE_URL=http://localhost:4000
515
+ LITELLM_API_KEY=...
516
+ ```
303
517
 
304
518
  ## Configuration
305
519
 
@@ -316,29 +530,47 @@ calliope --reset
316
530
  calliope --setup
317
531
  ```
318
532
 
533
+ ### Sample config.json
534
+ ```json
535
+ {
536
+ "provider": "anthropic",
537
+ "model": "claude-sonnet-4-20250514",
538
+ "apiKeys": {
539
+ "anthropic": "sk-ant-...",
540
+ "openai": "sk-...",
541
+ "google": "..."
542
+ },
543
+ "theme": "default",
544
+ "persona": "calliope",
545
+ "godMode": false,
546
+ "maxIterations": 25,
547
+ "scope": ["./src", "./tests"]
548
+ }
549
+ ```
550
+
319
551
  ### Profiles
320
552
 
321
553
  Save and switch between configurations:
322
554
 
323
- ```
324
- /profile save work # Save current settings
325
- /profile work # Load profile
555
+ ```bash
556
+ /profile save work # Save current settings as "work"
557
+ /profile work # Load "work" profile
326
558
  /profile delete work # Delete profile
327
559
  /profile list # Show all profiles
328
560
  ```
329
561
 
330
- Built-in profiles: `fast`, `smart`, `cheap`, `local`
562
+ **Built-in profiles:** `fast`, `smart`, `cheap`, `local`
331
563
 
332
564
  ## Keyboard Shortcuts
333
565
 
334
566
  | Key | Action |
335
567
  |-----|--------|
336
- | `ESC` | Exit |
337
- | `Shift+Tab` | Cycle modes |
338
- | `Ctrl+C` | Cancel operation |
568
+ | `ESC` | Exit Calliope |
569
+ | `Ctrl+C` | Cancel current operation |
339
570
  | `Ctrl+L` | Clear screen |
340
- | `Up/Down` | Navigate history |
341
- | `Tab` | Tab completion |
571
+ | `Up/Down` | Navigate input history |
572
+ | `Tab` | Autocomplete commands/paths |
573
+ | `Shift+Enter` | Multi-line input (where supported) |
342
574
 
343
575
  ## File References
344
576
 
@@ -350,43 +582,110 @@ Reference files directly in your messages:
350
582
  /absolute/path/file # Absolute path
351
583
  ```
352
584
 
353
- Images are automatically detected and sent for vision models.
585
+ Images are automatically detected and sent for vision-capable models.
354
586
 
355
- ## Security
587
+ ## Security & Best Practices
356
588
 
357
589
  ### API Key Storage
358
590
  - Keys stored in `~/.config/calliope/config.json`
359
591
  - Prefer environment variables for better security
360
592
  - Never commit config to version control
361
593
 
362
- ### Tool Execution
594
+ ### Tool Execution Safety
363
595
  - Path traversal protection
364
596
  - Sandboxed code execution via Docker
365
597
  - Timeout limits on all commands
598
+ - Risk assessment for dangerous operations
599
+ - Scope restrictions for file access
366
600
  - Hook system for custom validation
367
601
 
368
602
  ### Best Practices
369
- 1. Review tool calls before execution
370
- 2. Use god mode (`-g`) only for trusted tasks
371
- 3. Set iteration limits on loops
603
+ 1. Use `/scope` to limit directory access
604
+ 2. Review tool calls before execution (unless in god mode)
605
+ 3. Set iteration limits on autonomous loops
372
606
  4. Work from project directories, not system directories
607
+ 5. Regular `/summarize` to manage context
608
+ 6. Use bookmarks for important moments
609
+
610
+ ## Development
611
+
612
+ ```bash
613
+ # Clone and setup
614
+ git clone https://github.com/calliopeai/calliope-cli.git
615
+ cd calliope-cli
616
+ npm install
617
+
618
+ # Build
619
+ npm run build
620
+
621
+ # Run locally
622
+ node dist/bin.js
623
+
624
+ # Run tests
625
+ npm test
626
+
627
+ # Watch mode for development
628
+ npm run dev
629
+ ```
630
+
631
+ ## Architecture
632
+
633
+ - **TypeScript** - Full type safety throughout
634
+ - **Ink (React)** - Declarative CLI rendering
635
+ - **Vitest** - Fast unit testing framework
636
+ - **Multi-provider** - Unified interface for 12+ LLM providers
637
+ - **Modular design** - Clean separation of concerns
638
+ - **Parallel execution** - Dependency-aware tool execution
639
+ - **Error boundaries** - Graceful crash recovery
373
640
 
374
641
  ## Troubleshooting
375
642
 
376
643
  **"No API keys configured"**
377
- - Run `calliope --setup` or set environment variable
644
+ - Run `calliope --setup` to configure keys
645
+ - Or set environment variables (see above)
378
646
 
379
647
  **"Empty response from API"**
380
- - Check API key validity and credits
648
+ - Check API key validity
649
+ - Verify account credits/quota
381
650
  - Try a different provider
382
651
 
652
+ **Context limit warnings**
653
+ - Use `/summarize compact` to compress
654
+ - Or `/clear` to start fresh
655
+ - Consider shorter messages
656
+
383
657
  **"Access denied" for file operations**
384
658
  - Operations restricted to cwd and home directory
659
+ - Check `/scope list` for current restrictions
660
+ - Use `/scope add <path>` to grant access
385
661
 
386
662
  **Docker not available for sandbox**
387
663
  - Install Docker for safer code execution
388
- - Without Docker, code runs locally (unsandboxed)
664
+ - Without Docker, code runs locally (less safe)
665
+
666
+ ## Contributing
667
+
668
+ We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
389
669
 
390
670
  ## License
391
671
 
392
- MIT
672
+ MIT License - see [LICENSE](LICENSE)
673
+
674
+ ## Support
675
+
676
+ - **Issues**: [GitHub Issues](https://github.com/calliopeai/calliope-cli/issues)
677
+ - **Discussions**: [GitHub Discussions](https://github.com/calliopeai/calliope-cli/discussions)
678
+ - **Twitter**: [@calliopelabs](https://twitter.com/calliopelabs)
679
+
680
+ ## Acknowledgments
681
+
682
+ Built with love by the Calliope team. Special thanks to:
683
+ - Anthropic for Claude
684
+ - OpenAI for GPT
685
+ - Google for Gemini
686
+ - The open-source community
687
+ - All contributors and users
688
+
689
+ ---
690
+
691
+ *May your code be elegant, your execution swift, and your automation poetic.* 🎭✨