@neocode-ai/web 1.1.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.
Files changed (86) hide show
  1. package/README.md +54 -0
  2. package/astro.config.mjs +145 -0
  3. package/config.mjs +14 -0
  4. package/package.json +41 -0
  5. package/public/robots.txt +6 -0
  6. package/public/theme.json +183 -0
  7. package/src/assets/lander/check.svg +2 -0
  8. package/src/assets/lander/copy.svg +2 -0
  9. package/src/assets/lander/screenshot-github.png +0 -0
  10. package/src/assets/lander/screenshot-splash.png +0 -0
  11. package/src/assets/lander/screenshot-vscode.png +0 -0
  12. package/src/assets/lander/screenshot.png +0 -0
  13. package/src/assets/logo-dark.svg +20 -0
  14. package/src/assets/logo-light.svg +20 -0
  15. package/src/assets/logo-ornate-dark.svg +18 -0
  16. package/src/assets/logo-ornate-light.svg +18 -0
  17. package/src/assets/web/web-homepage-active-session.png +0 -0
  18. package/src/assets/web/web-homepage-new-session.png +0 -0
  19. package/src/assets/web/web-homepage-see-servers.png +0 -0
  20. package/src/components/Head.astro +50 -0
  21. package/src/components/Header.astro +128 -0
  22. package/src/components/Hero.astro +11 -0
  23. package/src/components/Lander.astro +713 -0
  24. package/src/components/Share.tsx +634 -0
  25. package/src/components/SiteTitle.astro +59 -0
  26. package/src/components/icons/custom.tsx +87 -0
  27. package/src/components/icons/index.tsx +4454 -0
  28. package/src/components/share/common.tsx +77 -0
  29. package/src/components/share/content-bash.module.css +85 -0
  30. package/src/components/share/content-bash.tsx +67 -0
  31. package/src/components/share/content-code.module.css +26 -0
  32. package/src/components/share/content-code.tsx +32 -0
  33. package/src/components/share/content-diff.module.css +153 -0
  34. package/src/components/share/content-diff.tsx +231 -0
  35. package/src/components/share/content-error.module.css +64 -0
  36. package/src/components/share/content-error.tsx +24 -0
  37. package/src/components/share/content-markdown.module.css +154 -0
  38. package/src/components/share/content-markdown.tsx +75 -0
  39. package/src/components/share/content-text.module.css +63 -0
  40. package/src/components/share/content-text.tsx +37 -0
  41. package/src/components/share/copy-button.module.css +30 -0
  42. package/src/components/share/copy-button.tsx +28 -0
  43. package/src/components/share/part.module.css +428 -0
  44. package/src/components/share/part.tsx +780 -0
  45. package/src/components/share.module.css +832 -0
  46. package/src/content/docs/1-0.mdx +67 -0
  47. package/src/content/docs/acp.mdx +156 -0
  48. package/src/content/docs/agents.mdx +720 -0
  49. package/src/content/docs/cli.mdx +597 -0
  50. package/src/content/docs/commands.mdx +323 -0
  51. package/src/content/docs/config.mdx +683 -0
  52. package/src/content/docs/custom-tools.mdx +170 -0
  53. package/src/content/docs/ecosystem.mdx +76 -0
  54. package/src/content/docs/enterprise.mdx +170 -0
  55. package/src/content/docs/formatters.mdx +130 -0
  56. package/src/content/docs/github.mdx +321 -0
  57. package/src/content/docs/gitlab.mdx +195 -0
  58. package/src/content/docs/ide.mdx +48 -0
  59. package/src/content/docs/index.mdx +359 -0
  60. package/src/content/docs/keybinds.mdx +191 -0
  61. package/src/content/docs/lsp.mdx +188 -0
  62. package/src/content/docs/mcp-servers.mdx +511 -0
  63. package/src/content/docs/models.mdx +223 -0
  64. package/src/content/docs/modes.mdx +331 -0
  65. package/src/content/docs/network.mdx +57 -0
  66. package/src/content/docs/permissions.mdx +237 -0
  67. package/src/content/docs/plugins.mdx +362 -0
  68. package/src/content/docs/providers.mdx +1889 -0
  69. package/src/content/docs/rules.mdx +180 -0
  70. package/src/content/docs/sdk.mdx +391 -0
  71. package/src/content/docs/server.mdx +286 -0
  72. package/src/content/docs/share.mdx +128 -0
  73. package/src/content/docs/skills.mdx +220 -0
  74. package/src/content/docs/themes.mdx +369 -0
  75. package/src/content/docs/tools.mdx +345 -0
  76. package/src/content/docs/troubleshooting.mdx +300 -0
  77. package/src/content/docs/tui.mdx +390 -0
  78. package/src/content/docs/web.mdx +136 -0
  79. package/src/content/docs/windows-wsl.mdx +113 -0
  80. package/src/content/docs/zen.mdx +251 -0
  81. package/src/content.config.ts +7 -0
  82. package/src/pages/[...slug].md.ts +18 -0
  83. package/src/pages/s/[id].astro +113 -0
  84. package/src/styles/custom.css +405 -0
  85. package/src/types/lang-map.d.ts +27 -0
  86. package/tsconfig.json +9 -0
@@ -0,0 +1,597 @@
1
+ ---
2
+ title: CLI
3
+ description: NeoCode CLI options and commands.
4
+ ---
5
+
6
+ import { Tabs, TabItem } from "@astrojs/starlight/components"
7
+
8
+ The NeoCode CLI by default starts the [TUI](/docs/tui) when run without any arguments.
9
+
10
+ ```bash
11
+ neocode
12
+ ```
13
+
14
+ But it also accepts commands as documented on this page. This allows you to interact with NeoCode programmatically.
15
+
16
+ ```bash
17
+ neocode run "Explain how closures work in JavaScript"
18
+ ```
19
+
20
+ ---
21
+
22
+ ### tui
23
+
24
+ Start the NeoCode terminal user interface.
25
+
26
+ ```bash
27
+ neocode [project]
28
+ ```
29
+
30
+ #### Flags
31
+
32
+ | Flag | Short | Description |
33
+ | ------------ | ----- | ------------------------------------------ |
34
+ | `--continue` | `-c` | Continue the last session |
35
+ | `--session` | `-s` | Session ID to continue |
36
+ | `--prompt` | | Prompt to use |
37
+ | `--model` | `-m` | Model to use in the form of provider/model |
38
+ | `--agent` | | Agent to use |
39
+ | `--port` | | Port to listen on |
40
+ | `--hostname` | | Hostname to listen on |
41
+
42
+ ---
43
+
44
+ ## Commands
45
+
46
+ The NeoCode CLI also has the following commands.
47
+
48
+ ---
49
+
50
+ ### agent
51
+
52
+ Manage agents for NeoCode.
53
+
54
+ ```bash
55
+ neocode agent [command]
56
+ ```
57
+
58
+ ---
59
+
60
+ ### attach
61
+
62
+ Attach a terminal to an already running NeoCode backend server started via `serve` or `web` commands.
63
+
64
+ ```bash
65
+ neocode attach [url]
66
+ ```
67
+
68
+ This allows using the TUI with a remote NeoCode backend. For example:
69
+
70
+ ```bash
71
+ # Start the backend server for web/mobile access
72
+ neocode web --port 4096 --hostname 0.0.0.0
73
+
74
+ # In another terminal, attach the TUI to the running backend
75
+ neocode attach http://10.20.30.40:4096
76
+ ```
77
+
78
+ #### Flags
79
+
80
+ | Flag | Short | Description |
81
+ | ----------- | ----- | --------------------------------- |
82
+ | `--dir` | | Working directory to start TUI in |
83
+ | `--session` | `-s` | Session ID to continue |
84
+
85
+ ---
86
+
87
+ #### create
88
+
89
+ Create a new agent with custom configuration.
90
+
91
+ ```bash
92
+ neocode agent create
93
+ ```
94
+
95
+ This command will guide you through creating a new agent with a custom system prompt and tool configuration.
96
+
97
+ ---
98
+
99
+ #### list
100
+
101
+ List all available agents.
102
+
103
+ ```bash
104
+ neocode agent list
105
+ ```
106
+
107
+ ---
108
+
109
+ ### auth
110
+
111
+ Command to manage credentials and login for providers.
112
+
113
+ ```bash
114
+ neocode auth [command]
115
+ ```
116
+
117
+ ---
118
+
119
+ #### login
120
+
121
+ NeoCode is powered by the provider list at [Models.dev](https://models.dev), so you can use `neocode auth login` to configure API keys for any provider you'd like to use. This is stored in `~/.local/share/neocode/auth.json`.
122
+
123
+ ```bash
124
+ neocode auth login
125
+ ```
126
+
127
+ When NeoCode starts up it loads the providers from the credentials file. And if there are any keys defined in your environments or a `.env` file in your project.
128
+
129
+ ---
130
+
131
+ #### list
132
+
133
+ Lists all the authenticated providers as stored in the credentials file.
134
+
135
+ ```bash
136
+ neocode auth list
137
+ ```
138
+
139
+ Or the short version.
140
+
141
+ ```bash
142
+ neocode auth ls
143
+ ```
144
+
145
+ ---
146
+
147
+ #### logout
148
+
149
+ Logs you out of a provider by clearing it from the credentials file.
150
+
151
+ ```bash
152
+ neocode auth logout
153
+ ```
154
+
155
+ ---
156
+
157
+ ### github
158
+
159
+ Manage the GitHub agent for repository automation.
160
+
161
+ ```bash
162
+ neocode github [command]
163
+ ```
164
+
165
+ ---
166
+
167
+ #### install
168
+
169
+ Install the GitHub agent in your repository.
170
+
171
+ ```bash
172
+ neocode github install
173
+ ```
174
+
175
+ This sets up the necessary GitHub Actions workflow and guides you through the configuration process. [Learn more](/docs/github).
176
+
177
+ ---
178
+
179
+ #### run
180
+
181
+ Run the GitHub agent. This is typically used in GitHub Actions.
182
+
183
+ ```bash
184
+ neocode github run
185
+ ```
186
+
187
+ ##### Flags
188
+
189
+ | Flag | Description |
190
+ | --------- | -------------------------------------- |
191
+ | `--event` | GitHub mock event to run the agent for |
192
+ | `--token` | GitHub personal access token |
193
+
194
+ ---
195
+
196
+ ### mcp
197
+
198
+ Manage Model Context Protocol servers.
199
+
200
+ ```bash
201
+ neocode mcp [command]
202
+ ```
203
+
204
+ ---
205
+
206
+ #### add
207
+
208
+ Add an MCP server to your configuration.
209
+
210
+ ```bash
211
+ neocode mcp add
212
+ ```
213
+
214
+ This command will guide you through adding either a local or remote MCP server.
215
+
216
+ ---
217
+
218
+ #### list
219
+
220
+ List all configured MCP servers and their connection status.
221
+
222
+ ```bash
223
+ neocode mcp list
224
+ ```
225
+
226
+ Or use the short version.
227
+
228
+ ```bash
229
+ neocode mcp ls
230
+ ```
231
+
232
+ ---
233
+
234
+ #### auth
235
+
236
+ Authenticate with an OAuth-enabled MCP server.
237
+
238
+ ```bash
239
+ neocode mcp auth [name]
240
+ ```
241
+
242
+ If you don't provide a server name, you'll be prompted to select from available OAuth-capable servers.
243
+
244
+ You can also list OAuth-capable servers and their authentication status.
245
+
246
+ ```bash
247
+ neocode mcp auth list
248
+ ```
249
+
250
+ Or use the short version.
251
+
252
+ ```bash
253
+ neocode mcp auth ls
254
+ ```
255
+
256
+ ---
257
+
258
+ #### logout
259
+
260
+ Remove OAuth credentials for an MCP server.
261
+
262
+ ```bash
263
+ neocode mcp logout [name]
264
+ ```
265
+
266
+ ---
267
+
268
+ #### debug
269
+
270
+ Debug OAuth connection issues for an MCP server.
271
+
272
+ ```bash
273
+ neocode mcp debug <name>
274
+ ```
275
+
276
+ ---
277
+
278
+ ### models
279
+
280
+ List all available models from configured providers.
281
+
282
+ ```bash
283
+ neocode models [provider]
284
+ ```
285
+
286
+ This command displays all models available across your configured providers in the format `provider/model`.
287
+
288
+ This is useful for figuring out the exact model name to use in [your config](/docs/config/).
289
+
290
+ You can optionally pass a provider ID to filter models by that provider.
291
+
292
+ ```bash
293
+ neocode models anthropic
294
+ ```
295
+
296
+ #### Flags
297
+
298
+ | Flag | Description |
299
+ | ----------- | ------------------------------------------------------------ |
300
+ | `--refresh` | Refresh the models cache from models.dev |
301
+ | `--verbose` | Use more verbose model output (includes metadata like costs) |
302
+
303
+ Use the `--refresh` flag to update the cached model list. This is useful when new models have been added to a provider and you want to see them in NeoCode.
304
+
305
+ ```bash
306
+ neocode models --refresh
307
+ ```
308
+
309
+ ---
310
+
311
+ ### run
312
+
313
+ Run neocode in non-interactive mode by passing a prompt directly.
314
+
315
+ ```bash
316
+ neocode run [message..]
317
+ ```
318
+
319
+ This is useful for scripting, automation, or when you want a quick answer without launching the full TUI. For example.
320
+
321
+ ```bash "neocode run"
322
+ neocode run Explain the use of context in Go
323
+ ```
324
+
325
+ You can also attach to a running `neocode serve` instance to avoid MCP server cold boot times on every run:
326
+
327
+ ```bash
328
+ # Start a headless server in one terminal
329
+ neocode serve
330
+
331
+ # In another terminal, run commands that attach to it
332
+ neocode run --attach http://localhost:4096 "Explain async/await in JavaScript"
333
+ ```
334
+
335
+ #### Flags
336
+
337
+ | Flag | Short | Description |
338
+ | ------------ | ----- | ------------------------------------------------------------------ |
339
+ | `--command` | | The command to run, use message for args |
340
+ | `--continue` | `-c` | Continue the last session |
341
+ | `--session` | `-s` | Session ID to continue |
342
+ | `--share` | | Share the session |
343
+ | `--model` | `-m` | Model to use in the form of provider/model |
344
+ | `--agent` | | Agent to use |
345
+ | `--file` | `-f` | File(s) to attach to message |
346
+ | `--format` | | Format: default (formatted) or json (raw JSON events) |
347
+ | `--title` | | Title for the session (uses truncated prompt if no value provided) |
348
+ | `--attach` | | Attach to a running neocode server (e.g., http://localhost:4096) |
349
+ | `--port` | | Port for the local server (defaults to random port) |
350
+
351
+ ---
352
+
353
+ ### serve
354
+
355
+ Start a headless NeoCode server for API access. Check out the [server docs](/docs/server) for the full HTTP interface.
356
+
357
+ ```bash
358
+ neocode serve
359
+ ```
360
+
361
+ This starts an HTTP server that provides API access to neocode functionality without the TUI interface. Set `NEOCODE_SERVER_PASSWORD` to enable HTTP basic auth (username defaults to `neocode`).
362
+
363
+ #### Flags
364
+
365
+ | Flag | Description |
366
+ | ------------ | ------------------------------------------ |
367
+ | `--port` | Port to listen on |
368
+ | `--hostname` | Hostname to listen on |
369
+ | `--mdns` | Enable mDNS discovery |
370
+ | `--cors` | Additional browser origin(s) to allow CORS |
371
+
372
+ ---
373
+
374
+ ### session
375
+
376
+ Manage NeoCode sessions.
377
+
378
+ ```bash
379
+ neocode session [command]
380
+ ```
381
+
382
+ ---
383
+
384
+ #### list
385
+
386
+ List all NeoCode sessions.
387
+
388
+ ```bash
389
+ neocode session list
390
+ ```
391
+
392
+ ##### Flags
393
+
394
+ | Flag | Short | Description |
395
+ | ------------- | ----- | ------------------------------------ |
396
+ | `--max-count` | `-n` | Limit to N most recent sessions |
397
+ | `--format` | | Output format: table or json (table) |
398
+
399
+ ---
400
+
401
+ ### stats
402
+
403
+ Show token usage and cost statistics for your NeoCode sessions.
404
+
405
+ ```bash
406
+ neocode stats
407
+ ```
408
+
409
+ #### Flags
410
+
411
+ | Flag | Description |
412
+ | ----------- | --------------------------------------------------------------------------- |
413
+ | `--days` | Show stats for the last N days (all time) |
414
+ | `--tools` | Number of tools to show (all) |
415
+ | `--models` | Show model usage breakdown (hidden by default). Pass a number to show top N |
416
+ | `--project` | Filter by project (all projects, empty string: current project) |
417
+
418
+ ---
419
+
420
+ ### export
421
+
422
+ Export session data as JSON.
423
+
424
+ ```bash
425
+ neocode export [sessionID]
426
+ ```
427
+
428
+ If you don't provide a session ID, you'll be prompted to select from available sessions.
429
+
430
+ ---
431
+
432
+ ### import
433
+
434
+ Import session data from a JSON file or NeoCode share URL.
435
+
436
+ ```bash
437
+ neocode import <file>
438
+ ```
439
+
440
+ You can import from a local file or an NeoCode share URL.
441
+
442
+ ```bash
443
+ neocode import session.json
444
+ neocode import https://opncd.ai/s/abc123
445
+ ```
446
+
447
+ ---
448
+
449
+ ### web
450
+
451
+ Start a headless NeoCode server with a web interface.
452
+
453
+ ```bash
454
+ neocode web
455
+ ```
456
+
457
+ This starts an HTTP server and opens a web browser to access NeoCode through a web interface. Set `NEOCODE_SERVER_PASSWORD` to enable HTTP basic auth (username defaults to `neocode`).
458
+
459
+ #### Flags
460
+
461
+ | Flag | Description |
462
+ | ------------ | ------------------------------------------ |
463
+ | `--port` | Port to listen on |
464
+ | `--hostname` | Hostname to listen on |
465
+ | `--mdns` | Enable mDNS discovery |
466
+ | `--cors` | Additional browser origin(s) to allow CORS |
467
+
468
+ ---
469
+
470
+ ### acp
471
+
472
+ Start an ACP (Agent Client Protocol) server.
473
+
474
+ ```bash
475
+ neocode acp
476
+ ```
477
+
478
+ This command starts an ACP server that communicates via stdin/stdout using nd-JSON.
479
+
480
+ #### Flags
481
+
482
+ | Flag | Description |
483
+ | ------------ | --------------------- |
484
+ | `--cwd` | Working directory |
485
+ | `--port` | Port to listen on |
486
+ | `--hostname` | Hostname to listen on |
487
+
488
+ ---
489
+
490
+ ### uninstall
491
+
492
+ Uninstall NeoCode and remove all related files.
493
+
494
+ ```bash
495
+ neocode uninstall
496
+ ```
497
+
498
+ #### Flags
499
+
500
+ | Flag | Short | Description |
501
+ | --------------- | ----- | ------------------------------------------- |
502
+ | `--keep-config` | `-c` | Keep configuration files |
503
+ | `--keep-data` | `-d` | Keep session data and snapshots |
504
+ | `--dry-run` | | Show what would be removed without removing |
505
+ | `--force` | `-f` | Skip confirmation prompts |
506
+
507
+ ---
508
+
509
+ ### upgrade
510
+
511
+ Updates neocode to the latest version or a specific version.
512
+
513
+ ```bash
514
+ neocode upgrade [target]
515
+ ```
516
+
517
+ To upgrade to the latest version.
518
+
519
+ ```bash
520
+ neocode upgrade
521
+ ```
522
+
523
+ To upgrade to a specific version.
524
+
525
+ ```bash
526
+ neocode upgrade v0.1.48
527
+ ```
528
+
529
+ #### Flags
530
+
531
+ | Flag | Short | Description |
532
+ | ---------- | ----- | ----------------------------------------------------------------- |
533
+ | `--method` | `-m` | The installation method that was used; curl, npm, pnpm, bun, brew |
534
+
535
+ ---
536
+
537
+ ## Global Flags
538
+
539
+ The neocode CLI takes the following global flags.
540
+
541
+ | Flag | Short | Description |
542
+ | -------------- | ----- | ------------------------------------ |
543
+ | `--help` | `-h` | Display help |
544
+ | `--version` | `-v` | Print version number |
545
+ | `--print-logs` | | Print logs to stderr |
546
+ | `--log-level` | | Log level (DEBUG, INFO, WARN, ERROR) |
547
+
548
+ ---
549
+
550
+ ## Environment variables
551
+
552
+ NeoCode can be configured using environment variables.
553
+
554
+ | Variable | Type | Description |
555
+ | ------------------------------------ | ------- | ------------------------------------------------ |
556
+ | `NEOCODE_AUTO_SHARE` | boolean | Automatically share sessions |
557
+ | `NEOCODE_GIT_BASH_PATH` | string | Path to Git Bash executable on Windows |
558
+ | `NEOCODE_CONFIG` | string | Path to config file |
559
+ | `NEOCODE_CONFIG_DIR` | string | Path to config directory |
560
+ | `NEOCODE_CONFIG_CONTENT` | string | Inline json config content |
561
+ | `NEOCODE_DISABLE_AUTOUPDATE` | boolean | Disable automatic update checks |
562
+ | `NEOCODE_DISABLE_PRUNE` | boolean | Disable pruning of old data |
563
+ | `NEOCODE_DISABLE_TERMINAL_TITLE` | boolean | Disable automatic terminal title updates |
564
+ | `NEOCODE_PERMISSION` | string | Inlined json permissions config |
565
+ | `NEOCODE_DISABLE_DEFAULT_PLUGINS` | boolean | Disable default plugins |
566
+ | `NEOCODE_DISABLE_LSP_DOWNLOAD` | boolean | Disable automatic LSP server downloads |
567
+ | `NEOCODE_ENABLE_EXPERIMENTAL_MODELS` | boolean | Enable experimental models |
568
+ | `NEOCODE_DISABLE_AUTOCOMPACT` | boolean | Disable automatic context compaction |
569
+ | `NEOCODE_DISABLE_CLAUDE_CODE` | boolean | Disable reading from `.claude` (prompt + skills) |
570
+ | `NEOCODE_DISABLE_CLAUDE_CODE_PROMPT` | boolean | Disable reading `~/.claude/CLAUDE.md` |
571
+ | `NEOCODE_DISABLE_CLAUDE_CODE_SKILLS` | boolean | Disable loading `.claude/skills` |
572
+ | `NEOCODE_CLIENT` | string | Client identifier (defaults to `cli`) |
573
+ | `NEOCODE_ENABLE_EXA` | boolean | Enable Exa web search tools |
574
+ | `NEOCODE_SERVER_PASSWORD` | string | Enable basic auth for `serve`/`web` |
575
+ | `NEOCODE_SERVER_USERNAME` | string | Override basic auth username (default `neocode`) |
576
+
577
+ ---
578
+
579
+ ### Experimental
580
+
581
+ These environment variables enable experimental features that may change or be removed.
582
+
583
+ | Variable | Type | Description |
584
+ | ---------------------------------------------- | ------- | --------------------------------------- |
585
+ | `NEOCODE_EXPERIMENTAL` | boolean | Enable all experimental features |
586
+ | `NEOCODE_EXPERIMENTAL_ICON_DISCOVERY` | boolean | Enable icon discovery |
587
+ | `NEOCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | boolean | Disable copy on select in TUI |
588
+ | `NEOCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | number | Default timeout for bash commands in ms |
589
+ | `NEOCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | number | Max output tokens for LLM responses |
590
+ | `NEOCODE_EXPERIMENTAL_FILEWATCHER` | boolean | Enable file watcher for entire dir |
591
+ | `NEOCODE_EXPERIMENTAL_OXFMT` | boolean | Enable oxfmt formatter |
592
+ | `NEOCODE_EXPERIMENTAL_LSP_TOOL` | boolean | Enable experimental LSP tool |
593
+ | `NEOCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | boolean | Disable file watcher |
594
+ | `NEOCODE_EXPERIMENTAL_EXA` | boolean | Enable experimental Exa features |
595
+ | `NEOCODE_EXPERIMENTAL_LSP_TY` | boolean | Enable experimental LSP type checking |
596
+ | `NEOCODE_EXPERIMENTAL_MARKDOWN` | boolean | Enable experimental markdown features |
597
+ | `NEOCODE_EXPERIMENTAL_PLAN_MODE` | boolean | Enable plan mode |