nex-code 0.3.5 → 0.3.7

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
@@ -47,6 +47,21 @@ That's it. You'll see the banner, your project context, and the `>` prompt. Star
47
47
 
48
48
  ---
49
49
 
50
+ ## Automatic Updates
51
+
52
+ Nex Code automatically checks for new versions when you start it. If a newer version is available, you'll see a notification with instructions on how to update:
53
+
54
+ ```
55
+ 💡 New version available! Run npm update -g nex-code to upgrade from 0.3.4 to 0.3.5
56
+ ```
57
+
58
+ To update to the latest version:
59
+ ```bash
60
+ npm update -g nex-code
61
+ ```
62
+
63
+ ---
64
+
50
65
  ## Why nex-code?
51
66
 
52
67
  | | nex-code | aider | Cursor |
@@ -85,6 +100,7 @@ npx nex-code
85
100
  git clone https://github.com/hybridpicker/nex-code.git
86
101
  cd nex-code
87
102
  npm install
103
+ npm run build # Build the high-performance bundle
88
104
  cp .env.example .env
89
105
  npm link
90
106
  npm run install-hooks
@@ -196,7 +212,7 @@ Switch providers and models at runtime:
196
212
  | **ollama** | Qwen3 Coder, DeepSeek R1, Devstral, Kimi K2.5, MiniMax M2.5, GLM 4.7, Llama 4 | `OLLAMA_API_KEY` |
197
213
  | **openai** | GPT-4o, GPT-4.1, o1, o3, o4-mini | `OPENAI_API_KEY` |
198
214
  | **anthropic** | Claude Sonnet 4.6, Opus 4.6, Haiku 4.5, Sonnet 4.5, Sonnet 4 | `ANTHROPIC_API_KEY` |
199
- | **gemini** | Gemini 3.1 Pro Preview, 2.5 Pro/Flash/Lite, 2.0 Flash/Lite | `GEMINI_API_KEY` |
215
+ | **gemini** | Gemini 3.1 Pro Preview, 2.5 Pro/Flash, 1.5 Pro/Flash | `GEMINI_API_KEY` |
200
216
  | **local** | Any model on your local Ollama server | (none) |
201
217
 
202
218
  Fallback chains let you auto-switch when a provider fails:
@@ -299,6 +315,11 @@ When the model runs tools but produces no visible text, an automatic nudge force
299
315
  ### Response Quality
300
316
  The system prompt enforces substantive responses: the model always presents findings as formatted text after using tools (users only see 1-line tool summaries). Responses use markdown with headers, bullet lists, and code blocks. The model states its approach before non-trivial tasks and summarizes results after completing work.
301
317
 
318
+ ### Performance
319
+ - **Asynchronous I/O**: The entire CLI is built on non-blocking I/O. File reads, writes, and git operations never block the main thread, keeping the UI responsive even during heavy tasks.
320
+ - **Fast Startup**: Pre-bundled with `esbuild` to minimize module loading overhead, achieving sub-100ms startup times.
321
+ - **In-Memory Indexing**: A background indexing engine (using `ripgrep` or a fast fallback) keeps project file paths in RAM for instant file discovery, path auto-fixing, and glob searches.
322
+
302
323
  ### Streaming Output
303
324
  Tokens appear live as the model generates them. Braille spinner during connection, then real-time line-by-line rendering via `StreamRenderer` with markdown formatting and syntax highlighting (JS, TS, Python, Go, Rust, CSS, HTML, and more).
304
325
 
@@ -635,6 +656,7 @@ cli/
635
656
  ├── tool-validator.js # Tool argument validation + auto-correction
636
657
  ├── tool-tiers.js # Dynamic tool set selection per model + model tier lookup
637
658
  ├── ui.js # ANSI colors, banner + re-exports from format.js/spinner.js
659
+ ├── index-engine.js # In-memory file index (ripgrep/fallback)
638
660
  ├── auto-fix.js # Path resolution, edit matching, bash error hints
639
661
  ├── tool-retry.js # Malformed argument retry with schema hints
640
662
  └── ollama.js # Backward-compatible wrapper