orbitchat 2.14.1 → 3.1.0
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 +60 -90
- package/bin/orbitchat.js +408 -429
- package/dist/assets/ChartRenderer-BEwTOgnq.js +80 -0
- package/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/dist/assets/MermaidRenderer-Cwj5RQ3g.js +260 -0
- package/dist/assets/MusicRenderer-jiCOczly.js +18 -0
- package/dist/assets/SVGRenderer-B7MdKpL3.js +6 -0
- package/dist/assets/_basePickBy-CYc6FJVo.js +1 -0
- package/dist/assets/_baseUniq-Db9U29CG.js +1 -0
- package/dist/assets/arc-BSnyvXPh.js +1 -0
- package/dist/assets/architectureDiagram-VXUJARFQ-ByDEpAtB.js +36 -0
- package/dist/assets/band-CquvqAHh.js +1 -0
- package/dist/assets/blockDiagram-VD42YOAC-DeU2cMg9.js +122 -0
- package/dist/assets/c4Diagram-YG6GDRKO-C9ykT6JL.js +10 -0
- package/dist/assets/channel-C4M311uf.js +1 -0
- package/dist/assets/chunk-4BX2VUAB-DSGrQP0T.js +1 -0
- package/dist/assets/chunk-55IACEB6-BqJf9Ja5.js +1 -0
- package/dist/assets/chunk-B4BG7PRW-CjLmShZ1.js +165 -0
- package/dist/assets/chunk-DI55MBZ5-DpYiJhBX.js +220 -0
- package/dist/assets/{chunk-FMBD7UC4-dPK7Boav-tO950uDG.js → chunk-FMBD7UC4-B_-ci5rY.js} +2 -2
- package/dist/assets/chunk-QN33PNHL-PupYKHzM.js +1 -0
- package/dist/assets/chunk-QZHKN3VN-Ddt7KdjH.js +1 -0
- package/dist/assets/chunk-TZMSLE5B-DFxHvBUh.js +1 -0
- package/dist/assets/classDiagram-2ON5EDUG-Brx1b2Nn.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-Brx1b2Nn.js +1 -0
- package/dist/assets/clone-C6___fhg.js +1 -0
- package/dist/assets/cose-bilkent-S5V4N54A-CoAwh2dl.js +1 -0
- package/dist/assets/cytoscape.esm-CyJtwmzi.js +331 -0
- package/dist/assets/dagre-6UL2VRFP-wqnQLI1r.js +4 -0
- package/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/dist/assets/diagram-PSM6KHXK-BThDYp3k.js +24 -0
- package/dist/assets/diagram-QEK2KX5R-QO0jbKYo.js +43 -0
- package/dist/assets/diagram-S2PKOQOG-DqXZQ_2w.js +24 -0
- package/dist/assets/erDiagram-Q2GNP2WA-BbHMUMHv.js +60 -0
- package/dist/assets/flowDiagram-NV44I4VS-BcZTJeWn.js +162 -0
- package/dist/assets/ganttDiagram-JELNMOA3-n27iVieA.js +267 -0
- package/dist/assets/gitGraphDiagram-V2S2FVAM-DaO03D0c.js +65 -0
- package/dist/assets/graph-CqgsEnyP.js +1 -0
- package/dist/assets/index-BLVU3y3C.js +624 -0
- package/dist/assets/index-DEMLXEhu.css +1 -0
- package/dist/assets/index-pVqH5W3l.js +134 -0
- package/dist/assets/infoDiagram-HS3SLOUP-DA9UPsCv.js +2 -0
- package/dist/assets/init-Dmth1JHB.js +1 -0
- package/dist/assets/journeyDiagram-XKPGCS4Q-DOnOrs8o.js +139 -0
- package/dist/assets/kanban-definition-3W4ZIXB7-CeCakzDJ.js +89 -0
- package/dist/assets/layout-D9Y_lOuO.js +1 -0
- package/dist/assets/linear-CKzVTQ0r.js +1 -0
- package/dist/assets/mindmap-definition-VGOIOE7T-DBP7KZgR.js +68 -0
- package/dist/assets/ordinal-DILIJJjt.js +1 -0
- package/dist/assets/pieDiagram-ADFJNKIX-DSpFXjVs.js +30 -0
- package/dist/assets/purify.es-A66Cw1IH.js +2 -0
- package/dist/assets/quadrantDiagram-AYHSOK5B-1w3noe3A.js +7 -0
- package/dist/assets/requirementDiagram-UZGBJVZJ-B9YzwP8J.js +64 -0
- package/dist/assets/sankeyDiagram-TZEHDZUN-FLiuEFVI.js +10 -0
- package/dist/assets/sequenceDiagram-WL72ISMW-BSJt3OHN.js +145 -0
- package/dist/assets/stateDiagram-FKZM4ZOC-Ch3MODOU.js +1 -0
- package/dist/assets/stateDiagram-v2-4FDKWEC3-CT2uJHYZ.js +1 -0
- package/dist/assets/step-EjIQ8UIn.js +1 -0
- package/dist/assets/time-h5EapSZu.js +1 -0
- package/dist/assets/timeline-definition-IT6M3QCI-C_qTQlCc.js +61 -0
- package/dist/assets/treemap-GDKQZRPO-yzuGqs4o.js +160 -0
- package/dist/assets/xychartDiagram-PRI3JC2R-G6i_3Vla.js +7 -0
- package/dist/favicon.svg +3 -1
- package/dist/index.html +2 -2
- package/dist/logo.png +0 -0
- package/markdown-renderer/LICENSE +201 -0
- package/markdown-renderer/src/CodeBlock.tsx +332 -0
- package/markdown-renderer/src/MarkdownComponents.tsx +233 -0
- package/markdown-renderer/src/MarkdownStyles.css +668 -0
- package/markdown-renderer/src/css.d.ts +4 -0
- package/markdown-renderer/src/index.ts +32 -0
- package/markdown-renderer/src/preprocessing.ts +519 -0
- package/markdown-renderer/src/renderers/ChartRenderer.tsx +1434 -0
- package/markdown-renderer/src/renderers/MermaidRenderer.tsx +474 -0
- package/markdown-renderer/src/renderers/MusicRenderer.tsx +394 -0
- package/markdown-renderer/src/renderers/SVGRenderer.tsx +307 -0
- package/markdown-renderer/src/types.ts +174 -0
- package/orbitchat.sh +282 -0
- package/package.json +30 -4
- package/dist/assets/_baseUniq-BRKsqoH--CzpIYnbF.js +0 -1
- package/dist/assets/arc-pab_su9s-DhurQhL4.js +0 -1
- package/dist/assets/architectureDiagram-VXUJARFQ-DqQ8r_6g-eqA8fOch.js +0 -36
- package/dist/assets/blockDiagram-VD42YOAC-B-dKfcH3-DT3R176S.js +0 -122
- package/dist/assets/c4Diagram-YG6GDRKO-DMUPaBEl-q6bAZUce.js +0 -10
- package/dist/assets/channel-HKsfPa5q-DshlUHWu.js +0 -1
- package/dist/assets/chunk-4BX2VUAB-CX67kh_B-gkWPpLiy.js +0 -1
- package/dist/assets/chunk-55IACEB6-BocSyyvr-9ksZ29Ab.js +0 -1
- package/dist/assets/chunk-B4BG7PRW-CO8QAyfE-CNBeArXO.js +0 -165
- package/dist/assets/chunk-DI55MBZ5-Dw1L6Eos-BVbGVMNG.js +0 -220
- package/dist/assets/chunk-QN33PNHL-vP2PqfVG-Y3PYDsm9.js +0 -1
- package/dist/assets/chunk-QZHKN3VN-Bcidzu63-BAQ3PYro.js +0 -1
- package/dist/assets/chunk-TZMSLE5B-BtljMjlg-CwIvybWR.js +0 -1
- package/dist/assets/classDiagram-2ON5EDUG-C7cYN9hv-CGN1Rq_o.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-C7cYN9hv-CGN1Rq_o.js +0 -1
- package/dist/assets/clone-DoPb9X13-C3rfr14F.js +0 -1
- package/dist/assets/cose-bilkent-S5V4N54A-BGzO4EsH-DtYXpCOp.js +0 -1
- package/dist/assets/cytoscape.esm-CjI2IsL8-Da6dFVsf.js +0 -331
- package/dist/assets/dagre-6UL2VRFP-TzNvXCds-xMthYtzg.js +0 -4
- package/dist/assets/diagram-PSM6KHXK-BqY4RpUg-CtQy_-7V.js +0 -24
- package/dist/assets/diagram-QEK2KX5R-CTjgBsne-DROkeGJL.js +0 -43
- package/dist/assets/diagram-S2PKOQOG-BqrhTIpA-Bv0e-7TM.js +0 -24
- package/dist/assets/erDiagram-Q2GNP2WA-B2hsi_Tl-BbvH-Jb1.js +0 -60
- package/dist/assets/flowDiagram-NV44I4VS-C03vtt_F-DT9Y-btb.js +0 -162
- package/dist/assets/ganttDiagram-JELNMOA3-B3hAg964-CnqUJtIB.js +0 -267
- package/dist/assets/gitGraphDiagram-NY62KEGX-ByhMH0yZ-CdQlDU7A.js +0 -65
- package/dist/assets/graph-BmNkcFEM-mCcAnvHY.js +0 -1
- package/dist/assets/index-BXexqYFc-D_cjFmh8.js +0 -134
- package/dist/assets/index-DBOy9259.css +0 -1
- package/dist/assets/index-zlswAhjt.js +0 -1010
- package/dist/assets/infoDiagram-WHAUD3N6-is6Ho4-T-BHS1wv7y.js +0 -2
- package/dist/assets/journeyDiagram-XKPGCS4Q-CRTOL26C-DkQ68DJ6.js +0 -139
- package/dist/assets/kanban-definition-3W4ZIXB7-CNnO_t6O-DWZm5JX4.js +0 -89
- package/dist/assets/layout-C0kZPebx-CygTh9Uo.js +0 -1
- package/dist/assets/min-7Gb0pNxh-BfuBtSqq.js +0 -1
- package/dist/assets/mindmap-definition-VGOIOE7T-CJZ2wTTa-B7rvUdG3.js +0 -68
- package/dist/assets/pieDiagram-ADFJNKIX-C9OSknjr-eiZAefZN.js +0 -30
- package/dist/assets/quadrantDiagram-AYHSOK5B-CW8yuAqv-DzBEpWQk.js +0 -7
- package/dist/assets/requirementDiagram-UZGBJVZJ-nGPhruO1-z5Z4Fwg9.js +0 -64
- package/dist/assets/sankeyDiagram-TZEHDZUN-CmL90u-m-Dk028WXo.js +0 -10
- package/dist/assets/sequenceDiagram-WL72ISMW-B02VRcnM-Cz8sPx_Q.js +0 -145
- package/dist/assets/stateDiagram-FKZM4ZOC-DjoyLUdz-BxsZBi1n.js +0 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-Bq76BTB7-BTybFIdr.js +0 -1
- package/dist/assets/timeline-definition-IT6M3QCI-CTn0Gm3T-CI07_-Ei.js +0 -61
- package/dist/assets/treemap-KMMF4GRG-BjgLKKyi-Dg9N7uMT.js +0 -128
- package/dist/assets/xychartDiagram-PRI3JC2R-Cgg6Uija-BDR2Lfu_.js +0 -7
package/README.md
CHANGED
|
@@ -16,6 +16,10 @@ Or install locally:
|
|
|
16
16
|
npm install orbitchat
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
Installed CLI commands:
|
|
20
|
+
- `orbitchat` — starts the ORBIT Chat server directly
|
|
21
|
+
- `orbitchat-daemon` — shell wrapper with `--start/--stop/--restart/--force-restart/--status`
|
|
22
|
+
|
|
19
23
|
## Quick Start
|
|
20
24
|
|
|
21
25
|
1. Define your adapters (agents) via the `ORBIT_ADAPTERS` or `VITE_ADAPTERS` environment variable:
|
|
@@ -27,7 +31,7 @@ npm install orbitchat
|
|
|
27
31
|
|
|
28
32
|
2. Run the CLI:
|
|
29
33
|
```bash
|
|
30
|
-
orbitchat --
|
|
34
|
+
orbitchat --config ./orbitchat.yaml --port 5173
|
|
31
35
|
```
|
|
32
36
|
|
|
33
37
|
3. Open `http://localhost:5173` — select an agent and start chatting.
|
|
@@ -50,49 +54,21 @@ The frontend never handles API keys. Instead:
|
|
|
50
54
|
orbitchat [options]
|
|
51
55
|
|
|
52
56
|
Options:
|
|
53
|
-
--
|
|
54
|
-
--
|
|
55
|
-
--
|
|
56
|
-
--
|
|
57
|
-
--
|
|
58
|
-
--
|
|
59
|
-
--
|
|
60
|
-
--
|
|
61
|
-
--enable-audio-input Enable microphone input button (default: false)
|
|
62
|
-
--enable-feedback Enable feedback buttons (default: false)
|
|
63
|
-
--enable-autocomplete Enable autocomplete suggestions (default: false)
|
|
64
|
-
--voice-silence-timeout-ms N Auto-stop voice capture after N ms of silence (default: 4000)
|
|
65
|
-
--voice-recognition-lang LANG Speech recognition language code (default: browser locale)
|
|
66
|
-
--out-of-service-message TEXT Show maintenance screen blocking access
|
|
67
|
-
--max-files-per-conversation N Max files per conversation (default: 5)
|
|
68
|
-
--max-file-size-mb N Max file size in MB (default: 50)
|
|
69
|
-
--max-total-files N Max total files (default: 100, 0 = unlimited)
|
|
70
|
-
--max-conversations N Max conversations (default: 10, 0 = unlimited)
|
|
71
|
-
--max-messages-per-conversation N Max messages per conversation (default: 1000, 0 = unlimited)
|
|
72
|
-
--max-messages-per-thread N Max messages per thread (default: 1000, 0 = unlimited)
|
|
73
|
-
--max-total-messages N Max total messages (default: 10000, 0 = unlimited)
|
|
74
|
-
--max-message-length N Max message length (default: 1000)
|
|
75
|
-
--port PORT Server port (default: 5173)
|
|
76
|
-
--host HOST Server host (default: localhost)
|
|
77
|
-
--open Open browser automatically
|
|
78
|
-
--api-only Run API proxy only (no UI serving, no build required)
|
|
79
|
-
--cors-origin ORIGIN Allowed CORS origin in api-only mode (default: *)
|
|
80
|
-
--config PATH Path to config file (default: ~/.orbit-chat-app/config.json)
|
|
81
|
-
--help, -h Show help message
|
|
82
|
-
--version, -v Show version number
|
|
57
|
+
--port PORT Server port (default: 5173)
|
|
58
|
+
--host HOST Server host (default: localhost)
|
|
59
|
+
--open Open browser automatically
|
|
60
|
+
--config PATH Path to orbitchat.yaml (default: ./orbitchat.yaml)
|
|
61
|
+
--api-only Run API proxy only (no UI serving)
|
|
62
|
+
--cors-origin URL Allowed CORS origin in api-only mode (default: *)
|
|
63
|
+
--help, -h Show help message
|
|
64
|
+
--version, -v Show version number
|
|
83
65
|
```
|
|
84
66
|
|
|
85
67
|
### Examples
|
|
86
68
|
|
|
87
69
|
```bash
|
|
88
|
-
# Start with custom API URL and port
|
|
89
|
-
orbitchat --api-url http://localhost:3000 --port 8080
|
|
90
|
-
|
|
91
|
-
# Start with upload, audio output, mic input, and autocomplete enabled
|
|
92
|
-
orbitchat --enable-upload --enable-audio --enable-audio-input --enable-autocomplete --open
|
|
93
|
-
|
|
94
70
|
# Start with a custom config file
|
|
95
|
-
orbitchat --config /path/to/
|
|
71
|
+
orbitchat --config /path/to/orbitchat.yaml
|
|
96
72
|
|
|
97
73
|
# Start with adapters defined inline
|
|
98
74
|
ORBIT_ADAPTERS='[{"name":"Chat","apiKey":"mykey","apiUrl":"https://api.example.com"}]' orbitchat
|
|
@@ -204,11 +180,11 @@ Each adapter object supports:
|
|
|
204
180
|
|-------|----------|-------------|
|
|
205
181
|
| `name` | Yes | Display name shown in the agent selector |
|
|
206
182
|
| `apiKey` | Yes | Backend API key (never exposed to the browser) |
|
|
207
|
-
| `apiUrl` | No | Backend URL (defaults to
|
|
183
|
+
| `apiUrl` | No | Backend URL (defaults to `api.url` in `orbitchat.yaml`, then `http://localhost:3000`) |
|
|
208
184
|
| `description` | No | Short summary shown in dropdowns |
|
|
209
185
|
| `notes` | No | Markdown content shown in the chat empty state |
|
|
210
186
|
|
|
211
|
-
If
|
|
187
|
+
If `api.defaultAdapter` is not set (or left as `default-key`), the first adapter in the list is used.
|
|
212
188
|
|
|
213
189
|
### Agent Selector UX
|
|
214
190
|
|
|
@@ -219,56 +195,32 @@ If `--default-adapter` is not specified, the first adapter in the list is presel
|
|
|
219
195
|
|
|
220
196
|
## Configuration
|
|
221
197
|
|
|
222
|
-
###
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
1. CLI arguments (highest priority)
|
|
226
|
-
2. Config file (`~/.orbit-chat-app/config.json`)
|
|
227
|
-
3. Environment variables (`VITE_*`)
|
|
228
|
-
4. Default values (lowest priority)
|
|
229
|
-
|
|
230
|
-
### Configuration File
|
|
231
|
-
|
|
232
|
-
Create a config file at `~/.orbit-chat-app/config.json`:
|
|
233
|
-
|
|
234
|
-
```json
|
|
235
|
-
{
|
|
236
|
-
"apiUrl": "http://localhost:3000",
|
|
237
|
-
"defaultKey": "Simple Chat",
|
|
238
|
-
"port": 5173,
|
|
239
|
-
"host": "localhost",
|
|
240
|
-
"enableUploadButton": false,
|
|
241
|
-
"enableFeedbackButtons": false,
|
|
242
|
-
"maxFilesPerConversation": 5,
|
|
243
|
-
"maxFileSizeMB": 50,
|
|
244
|
-
"maxTotalFiles": 100,
|
|
245
|
-
"maxConversations": 10,
|
|
246
|
-
"maxMessagesPerConversation": 1000,
|
|
247
|
-
"maxTotalMessages": 10000,
|
|
248
|
-
"maxMessageLength": 1000
|
|
249
|
-
}
|
|
250
|
-
```
|
|
198
|
+
### Runtime Config File
|
|
199
|
+
|
|
200
|
+
Runtime settings are loaded from `orbitchat.yaml` (see `orbitchat.yaml.example`).
|
|
251
201
|
|
|
252
|
-
|
|
202
|
+
Config lookup:
|
|
203
|
+
1. `--config /path/to/orbitchat.yaml` if provided
|
|
204
|
+
2. `./orbitchat.yaml` (current working directory)
|
|
253
205
|
|
|
254
206
|
### Environment Variables
|
|
255
207
|
|
|
256
|
-
|
|
208
|
+
Adapter secrets are provided via environment variables:
|
|
257
209
|
|
|
258
210
|
```bash
|
|
259
|
-
|
|
260
|
-
VITE_DEFAULT_KEY=Simple Chat # Adapter name to preselect
|
|
261
|
-
VITE_ENABLE_UPLOAD=false
|
|
262
|
-
VITE_ENABLE_AUDIO_OUTPUT=false
|
|
263
|
-
VITE_ENABLE_AUDIO_INPUT=false
|
|
264
|
-
VITE_VOICE_SILENCE_TIMEOUT_MS=4000
|
|
265
|
-
VITE_VOICE_RECOGNITION_LANG=
|
|
266
|
-
VITE_ENABLE_FEEDBACK=false
|
|
267
|
-
VITE_ENABLE_AUTOCOMPLETE=false
|
|
268
|
-
VITE_CONSOLE_DEBUG=false
|
|
211
|
+
ORBIT_ADAPTERS='[{"name":"Simple Chat","apiKey":"default-key","apiUrl":"http://localhost:3000"}]'
|
|
269
212
|
```
|
|
270
213
|
|
|
271
|
-
|
|
214
|
+
- `ORBIT_ADAPTERS` is preferred.
|
|
215
|
+
- `VITE_ADAPTERS` is also supported for compatibility.
|
|
216
|
+
- If both are set, `ORBIT_ADAPTERS` takes precedence.
|
|
217
|
+
|
|
218
|
+
Auth secrets are read from:
|
|
219
|
+
- `VITE_AUTH_DOMAIN`
|
|
220
|
+
- `VITE_AUTH_CLIENT_ID`
|
|
221
|
+
- `VITE_AUTH_AUDIENCE`
|
|
222
|
+
|
|
223
|
+
The CLI also loads `.env` and `.env.local` from the current working directory on startup.
|
|
272
224
|
|
|
273
225
|
## Development
|
|
274
226
|
|
|
@@ -307,13 +259,19 @@ orbitchat --port 8080
|
|
|
307
259
|
|
|
308
260
|
### Running as a Daemon
|
|
309
261
|
|
|
310
|
-
|
|
262
|
+
For npm package installs, use:
|
|
263
|
+
|
|
264
|
+
```bash
|
|
265
|
+
orbitchat-daemon --start # Start in background
|
|
266
|
+
orbitchat-daemon --start 8080 # Start on custom port
|
|
267
|
+
orbitchat-daemon --stop # Stop
|
|
268
|
+
orbitchat-daemon --status # Check status
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
From a source checkout, you can also run:
|
|
311
272
|
|
|
312
273
|
```bash
|
|
313
|
-
./
|
|
314
|
-
./run-chat-app.sh --start 8080 # Start on custom port
|
|
315
|
-
./run-chat-app.sh --stop # Stop
|
|
316
|
-
./run-chat-app.sh --status # Check status
|
|
274
|
+
./orbitchat.sh --start
|
|
317
275
|
```
|
|
318
276
|
|
|
319
277
|
## Available Scripts
|
|
@@ -394,6 +352,16 @@ If the agent selector shows no adapters:
|
|
|
394
352
|
2. Check the CLI startup logs for "Available Adapters: ..."
|
|
395
353
|
3. Verify each adapter has a `name` and `apiKey` field
|
|
396
354
|
|
|
355
|
+
If adapters load but descriptions/notes are missing in packaged installs (`npm pack` + install), while `npm run dev` works:
|
|
356
|
+
1. Prefer `ORBIT_ADAPTERS` (it takes precedence over `VITE_ADAPTERS` when both are set)
|
|
357
|
+
2. Ensure `orbitchat.yaml` contains adapter metadata and adapter `name` values exactly match `ORBIT_ADAPTERS`
|
|
358
|
+
3. Rebuild and repack from the updated source: `npm run build && npm pack`
|
|
359
|
+
4. Reinstall the newly generated tarball
|
|
360
|
+
5. Restart with a clean process/port: `orbitchat-daemon --force-restart` (or `./orbitchat.sh --force-restart` in source checkout)
|
|
361
|
+
6. Verify runtime output:
|
|
362
|
+
- Startup log shows `Available Adapters: ...`
|
|
363
|
+
- `GET /api/adapters` returns `description`/`notes` for each adapter
|
|
364
|
+
|
|
397
365
|
### File Upload Issues
|
|
398
366
|
|
|
399
367
|
- **File size exceeded** — Check file size against the configured limit
|
|
@@ -405,9 +373,11 @@ If the agent selector shows no adapters:
|
|
|
405
373
|
|
|
406
374
|
Enable debug logging:
|
|
407
375
|
```bash
|
|
408
|
-
orbitchat
|
|
376
|
+
# in orbitchat.yaml
|
|
377
|
+
debug:
|
|
378
|
+
consoleDebug: true
|
|
409
379
|
```
|
|
410
|
-
|
|
380
|
+
This enables detailed runtime logging from the CLI server.
|
|
411
381
|
|
|
412
382
|
## Deployment Checklist
|
|
413
383
|
|
|
@@ -416,4 +386,4 @@ Or set `VITE_CONSOLE_DEBUG=true` during development. This shows detailed API and
|
|
|
416
386
|
3. **Run behind HTTPS** — use a reverse proxy like nginx or Caddy in front of `orbitchat`
|
|
417
387
|
4. **Bind to the right interface**: use `--host 0.0.0.0` to allow external access, or keep the default `localhost` for local-only
|
|
418
388
|
5. **Tune limits** — set `--max-conversations`, `--max-message-length`, etc. appropriate for your deployment
|
|
419
|
-
6. **Monitor logs** — use `
|
|
389
|
+
6. **Monitor logs** — use `orbitchat-daemon --start` for daemon mode with log file, or run directly and pipe to your log aggregator
|