grok-cli-to-openai-compatible 1.6.1 → 1.7.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/.env.example +2 -1
- package/README-ZH.md +37 -17
- package/README.md +28 -14
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +12 -0
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/lib/db-keys.d.ts.map +1 -1
- package/dist/cli/lib/db-keys.js +8 -0
- package/dist/cli/lib/db-keys.js.map +1 -1
- package/dist/cli/lib/env-file.js +2 -2
- package/dist/cli/lib/env-file.js.map +1 -1
- package/dist/config/cors.d.ts.map +1 -1
- package/dist/config/cors.js +9 -1
- package/dist/config/cors.js.map +1 -1
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +8 -4
- package/dist/config/env.js.map +1 -1
- package/dist/controllers/admin/auth.handlers.d.ts.map +1 -1
- package/dist/controllers/admin/auth.handlers.js +20 -12
- package/dist/controllers/admin/auth.handlers.js.map +1 -1
- package/dist/interfaces/api-features.type.d.ts.map +1 -1
- package/dist/interfaces/api-features.type.js +6 -3
- package/dist/interfaces/api-features.type.js.map +1 -1
- package/dist/middlewares/rate-limit.middleware.d.ts +1 -0
- package/dist/middlewares/rate-limit.middleware.d.ts.map +1 -1
- package/dist/middlewares/rate-limit.middleware.js +19 -0
- package/dist/middlewares/rate-limit.middleware.js.map +1 -1
- package/dist/routes/admin.routes.d.ts.map +1 -1
- package/dist/routes/admin.routes.js +1 -0
- package/dist/routes/admin.routes.js.map +1 -1
- package/dist/services/admin-auth.service.d.ts.map +1 -1
- package/dist/services/admin-auth.service.js +7 -3
- package/dist/services/admin-auth.service.js.map +1 -1
- package/dist/services/api-key.service.d.ts.map +1 -1
- package/dist/services/api-key.service.js +22 -0
- package/dist/services/api-key.service.js.map +1 -1
- package/dist/services/chat.service.d.ts.map +1 -1
- package/dist/services/chat.service.js +16 -10
- package/dist/services/chat.service.js.map +1 -1
- package/dist/services/grok-cli.service.d.ts +2 -1
- package/dist/services/grok-cli.service.d.ts.map +1 -1
- package/dist/services/grok-cli.service.js +39 -2
- package/dist/services/grok-cli.service.js.map +1 -1
- package/dist/services/grok-request-builder.service.d.ts.map +1 -1
- package/dist/services/grok-request-builder.service.js +15 -12
- package/dist/services/grok-request-builder.service.js.map +1 -1
- package/dist/services/grok-sessions.service.d.ts.map +1 -1
- package/dist/services/grok-sessions.service.js +2 -1
- package/dist/services/grok-sessions.service.js.map +1 -1
- package/dist/services/media/media-jobs.service.d.ts.map +1 -1
- package/dist/services/media/media-jobs.service.js +5 -22
- package/dist/services/media/media-jobs.service.js.map +1 -1
- package/dist/services/update.service.d.ts.map +1 -1
- package/dist/services/update.service.js +24 -14
- package/dist/services/update.service.js.map +1 -1
- package/dist/utils/api-key-id.d.ts.map +1 -1
- package/dist/utils/api-key-id.js +1 -8
- package/dist/utils/api-key-id.js.map +1 -1
- package/dist/utils/client-ip.d.ts.map +1 -1
- package/dist/utils/client-ip.js +5 -2
- package/dist/utils/client-ip.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +4 -0
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/path-safe.d.ts.map +1 -1
- package/dist/utils/path-safe.js +14 -2
- package/dist/utils/path-safe.js.map +1 -1
- package/dist/utils/ssrf.d.ts +11 -0
- package/dist/utils/ssrf.d.ts.map +1 -0
- package/dist/utils/ssrf.js +114 -0
- package/dist/utils/ssrf.js.map +1 -0
- package/dist/utils/vision-remote.d.ts +3 -0
- package/dist/utils/vision-remote.d.ts.map +1 -1
- package/dist/utils/vision-remote.js +81 -5
- package/dist/utils/vision-remote.js.map +1 -1
- package/package.json +1 -1
- package/prisma/seed.ts +6 -14
- package/public/admin/boot.js +386 -318
- package/public/admin/boot.js.map +1 -1
- package/public/admin/i18n.js +8 -8
- package/public/admin/styles.css +73 -0
package/.env.example
CHANGED
|
@@ -18,7 +18,8 @@ ENCRYPTION_KEY=
|
|
|
18
18
|
|
|
19
19
|
GROK_BIN=grok
|
|
20
20
|
GROK_DEFAULT_MODEL=grok-4.6
|
|
21
|
-
|
|
21
|
+
# Empty = <STORAGE_DIR>/workspaces/default (never the gateway repo / .env dir)
|
|
22
|
+
GROK_DEFAULT_CWD=
|
|
22
23
|
# Comma-separated absolute paths allowed for --cwd (empty = only GROK_DEFAULT_CWD)
|
|
23
24
|
GROK_CWD_ALLOWLIST=
|
|
24
25
|
GROK_TIMEOUT_MS=600000
|
package/README-ZH.md
CHANGED
|
@@ -24,10 +24,10 @@
|
|
|
24
24
|
- 每把 key 的 **safe** / **agent** 政策 + 全域安全覆寫
|
|
25
25
|
- AES-256-GCM 加密 + 完整 chat 稽核
|
|
26
26
|
- **Admin Panel** — OTP 登入(`gctoac admin otp`)、儀表板、對話、金鑰、文件、稽核、用量、**媒體庫**、**對話佇列**、**DDoS 中心**、安全設定、**API 能力**、PM2、系統更新;各頁統一 **KPI + 分 tab** 版面
|
|
27
|
-
- **媒體庫** —
|
|
27
|
+
- **媒體庫** — 工作室(生成/編輯/**圖生影片 1–15 秒**/**reference-to-video + 預設配音**)、資產與工作列表、瀏覽器預覽 lightbox(圖/片/聲/PDF/文字)
|
|
28
28
|
- **持久化對話佇列** — 每個對話先入隊(租約認領)再由進程內 worker 消費;Admin 可暫停/排空/取消/死信;可選 `Idempotency-Key`;無 live Response 時離線收集串流結果
|
|
29
29
|
- **DDoS/防濫用** — 可配置限流、多規則自動封鎖、反向代理真實客戶端 IP(nginx / Cloudflare)
|
|
30
|
-
- 控制 CLI:生命週期 + **settings / api features / queue / ddos / keys / docs / chats / stats / models / admin sessions**(與 Admin 對齊,見下方 CLI 表)
|
|
30
|
+
- 控制 CLI:生命週期 + **settings / api features / queue / ddos / keys / docs / chats / stats / models / admin sessions / grok inspect / grok sessions**(與 Admin 對齊,見下方 CLI 表)
|
|
31
31
|
- **API features**(Admin 分 tab + `gctoac api features`):協議與 Grok 能力閘(tools / vision / schema / effort…)
|
|
32
32
|
|
|
33
33
|
### Grok CLI 能力對齊(產品「100%」定義)
|
|
@@ -38,12 +38,13 @@
|
|
|
38
38
|
| Vision / 圖片 | ✅ | ✅ | ✅ | `vision` |
|
|
39
39
|
| Images `/v1/images/generations` + `/edits` | ✅ | — | — | `imagesApi` + agent key |
|
|
40
40
|
| Files `/v1/files` | ✅ | — | — | `filesOpenAiAlias` |
|
|
41
|
-
| Videos `/v1/videos
|
|
41
|
+
| Videos `/v1/videos` | ✅ Grok `image_to_video`(1–15 秒)/`reference_to_video` + voices | — | — | `videoApi` |
|
|
42
42
|
| Audio speech / transcriptions | ✅ mock 或 503 | — | — | `audioApi` + provider env |
|
|
43
43
|
| Tools | ✅ | ✅ | ✅(含 `tool_use`/`tool_result`) | `tools` |
|
|
44
44
|
| 回應 tool_calls | ✅* | 文字 | ✅ `tool_use` | `tools` |
|
|
45
45
|
| JSON schema | ✅ | ✅ | 可透傳 | `structuredOutput` |
|
|
46
46
|
| Reasoning effort | ✅ | ✅ | thinking→effort | `reasoningEffort` |
|
|
47
|
+
| Session resume / fork | ✅ | — | — | `sessionResume` |
|
|
47
48
|
| Assistants-lite | — | — | — | `assistantsEmulation` |
|
|
48
49
|
| temperature 等採樣 | 接受† | 接受† | 接受† | `strictSampling` |
|
|
49
50
|
|
|
@@ -76,7 +77,7 @@ Client (OpenAI SDK / curl / Open WebUI)
|
|
|
76
77
|
### 1. 前置要求
|
|
77
78
|
|
|
78
79
|
- **Node.js** ≥ 20
|
|
79
|
-
-
|
|
80
|
+
- **Grok CLI**(Grok Build **1.0+**)已安裝並登入:
|
|
80
81
|
|
|
81
82
|
```bash
|
|
82
83
|
curl -fsSL https://x.ai/cli/install.sh | bash
|
|
@@ -179,6 +180,8 @@ gctoac update --check # 只檢查
|
|
|
179
180
|
gctoac update --no-restart
|
|
180
181
|
```
|
|
181
182
|
|
|
183
|
+
Git 工作目錄:update 會跑 `npm install --include=dev` 再 `npm run build`(避免 `.env` 的 `NODE_ENV=production` 令 tsc 缺 `@types`)。compile 失敗仍會執行 `gctoac migrate`。
|
|
184
|
+
|
|
182
185
|
亦可在 Admin → **系統狀態** → 一鍵更新。
|
|
183
186
|
|
|
184
187
|
---
|
|
@@ -276,6 +279,9 @@ PORT=4000
|
|
|
276
279
|
| 指令 | 說明 |
|
|
277
280
|
|------|------|
|
|
278
281
|
| `gctoac stats` | 儀表板式摘要 |
|
|
282
|
+
| `gctoac grok inspect` | 本機 Grok Build 快照(version、models、skills、MCP) |
|
|
283
|
+
| `gctoac grok sessions` | 列出本機 Grok CLI sessions |
|
|
284
|
+
| `gctoac grok sessions delete <id> --yes` | 永久刪除一個 Grok session |
|
|
279
285
|
| `gctoac models [--refresh]` | 本機 Grok 模型列表 |
|
|
280
286
|
| `gctoac docs list\|show\|delete` | 文件(delete 需 `--yes`) |
|
|
281
287
|
| `gctoac chats list\|show` | API 對話請求(meta) |
|
|
@@ -308,12 +314,12 @@ gctoac logs clear
|
|
|
308
314
|
| 加密 | AES-256-GCM 加密 prompt、response、檔案 |
|
|
309
315
|
| 對話歷史 | 多輪對話、上下文模式(full / summary / recent) |
|
|
310
316
|
| Admin Panel | OTP session 登入;**分 tab** 頁面(佇列/媒體/系統/PM2/DDoS/API 能力);精簡 EN/繁中文案 |
|
|
311
|
-
| 媒體庫 |
|
|
317
|
+
| 媒體庫 | 工作室(生成/編輯/**1–15 秒影片**/配音)、資產與工作、多格式預覽 lightbox(`blob:` CSP 安全) |
|
|
312
318
|
| 對話佇列 | 持久化 SQLite 工作、公平輪詢、暫停/排空、死信、Idempotency-Key、`QUEUE_BACKEND`、離線串流 fallback |
|
|
313
319
|
| DDoS 中心 | 即時連線、黑名單、自動封鎖、可配置策略與預設檔(分 tab) |
|
|
314
320
|
| 反向代理 | 信任層數 + CF / nginx / X-Forwarded-For 真實 IP |
|
|
315
321
|
| 認證 | API key:**scrypt** hash(舊 SHA-256 登入時自動升級);Admin SPA:OTP → session |
|
|
316
|
-
| CLI | 生命週期、preferred runner、日誌、自我更新、`admin otp` |
|
|
322
|
+
| CLI | 生命週期、preferred runner、日誌、自我更新、`admin otp`、`grok inspect`、`grok sessions` |
|
|
317
323
|
| 運維 | SQLite、PM2、日誌自動裁剪(>5 MB)、GitHub Actions CI |
|
|
318
324
|
|
|
319
325
|
---
|
|
@@ -381,7 +387,14 @@ console.log(res.choices[0].message.content);
|
|
|
381
387
|
| `include_reasoning` | 預設 `true`;Grok `thought` → `reasoning_content` |
|
|
382
388
|
| `cwd` | 僅 **agent**(allowlist 內);**safe** 強制 sandbox |
|
|
383
389
|
| `session_id` | 按 API key 映射成 Grok UUID:第一次 `-s`,之後 `--resume`(Grok 1.0+) |
|
|
390
|
+
| `resume` | Grok session UUID(`--resume`)。Admin playground Resume 欄。 |
|
|
391
|
+
| `fork_session` | 由該 session 分支出去。 |
|
|
392
|
+
| `reasoning_effort` / `effort` | Grok `--reasoning-effort`(`none`…`max`)。閘:`reasoningEffort`。 |
|
|
393
|
+
| `experimental_memory` / `no_memory` | Grok memory。閘:`memory`。 |
|
|
394
|
+
| `no_plan` | 關閉 plan mode。閘:`planMode`。 |
|
|
395
|
+
| `permission_mode` | `default` / `acceptEdits` / `auto` / `dontAsk` / `bypassPermissions` / `plan`。閘:`permissionMode`。 |
|
|
384
396
|
| `document_ids` | 注入已解密文件內容 |
|
|
397
|
+
| `tools` / `functions` | **`tools`** 開啟時映射到 Grok(否則 400) |
|
|
385
398
|
|
|
386
399
|
### Thinking 對應
|
|
387
400
|
|
|
@@ -389,6 +402,8 @@ console.log(res.choices[0].message.content);
|
|
|
389
402
|
|-----------|------------------------|------|
|
|
390
403
|
| `thought` | `reasoning_content` / `delta.reasoning_content` | `thought` 別名 |
|
|
391
404
|
| `text` | `content` / `delta.content` | — |
|
|
405
|
+
| `tool_call` / `tool_call_update` / `plan` | chunk 上的 `grok_event` | OpenAI SDK 會忽略未知欄位 |
|
|
406
|
+
| `usage` / `cost` | `usage`(Grok 有回 cache/cost 就帶上) | — |
|
|
392
407
|
| `end` | `finish_reason` | `grok.sessionId`、`grok.stopReason` |
|
|
393
408
|
|
|
394
409
|
### 持久化對話佇列
|
|
@@ -411,7 +426,7 @@ Stream 預覽:
|
|
|
411
426
|
```text
|
|
412
427
|
data: {"object":"gog.queue","status":"queued","job_id":"…","position":2}
|
|
413
428
|
data: {"object":"gog.queue","status":"queued","job_id":"…","position":1}
|
|
414
|
-
data: {"id":"chatcmpl-…","object":"chat.completion.chunk",…}
|
|
429
|
+
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","grok_event":{"type":"tool_call",…},…}
|
|
415
430
|
```
|
|
416
431
|
|
|
417
432
|
Admin 操作(OTP **session** token 或 admin API key):
|
|
@@ -437,6 +452,10 @@ POST /admin/api/queue/purge-dead
|
|
|
437
452
|
| POST | `/v1/chat/completions` | OpenAI Chat(佇列;可選 `Idempotency-Key`) |
|
|
438
453
|
| POST | `/v1/responses` | OpenAI Responses 文字子集 |
|
|
439
454
|
| POST | `/v1/messages` | Anthropic Messages(Bearer 或 `x-api-key`) |
|
|
455
|
+
| POST | `/v1/videos` | Grok 影片 job(`seconds` 1–15;`voices[]` → `reference_to_video`) |
|
|
456
|
+
| GET | `/v1/videos/:id` | 查影片 job |
|
|
457
|
+
| GET | `/admin/api/grok/inspect` | 本機 `grok inspect --json` 快照 |
|
|
458
|
+
| GET/DELETE | `/admin/api/grok/sessions`… | 列出/刪除 `~/.grok/sessions` |
|
|
440
459
|
| POST | `/v1/documents` | 上傳(欄位 `file`) |
|
|
441
460
|
| GET/DELETE | `/v1/documents`… | 列表 / 軟刪除 |
|
|
442
461
|
| POST/GET/DELETE | `/v1/api-keys`… | Admin 管理 key |
|
|
@@ -485,19 +504,20 @@ Admin **JSON API**(`/admin/api/*`)可用:
|
|
|
485
504
|
| 頁面 | 功能 |
|
|
486
505
|
|------|------|
|
|
487
506
|
| **儀表板** | 24h KPI、成功率、**佇列深度**、防護摘要、模型用量、運行狀態(port/加密) |
|
|
488
|
-
| **對話** | 多輪 playground、歷史、上下文模式、附件(佇列啟用時同樣先入隊) |
|
|
507
|
+
| **對話** | 多輪 playground:effort、resume/fork UUID、memory/no-plan/permission、tool chip + cost、歷史、上下文模式、附件(佇列啟用時同樣先入隊) |
|
|
489
508
|
| **對話記錄** | 搜尋/篩選/分頁;**完整解密** prompt/reasoning/response |
|
|
490
509
|
| **API 金鑰** | 建立/編輯 mode/role/限流/IP 白名單;撤銷 |
|
|
491
510
|
| **文件** | 搜尋/篩選/分頁;預覽、下載、刪除;DB 與檔案系統儲存 |
|
|
492
511
|
| **稽核日誌** | 搜尋/篩選/分頁;可讀動作標籤 |
|
|
493
512
|
| **用量與防護** | 24h 統計、按模型/按金鑰分 tab、限流摘要 |
|
|
494
|
-
| **媒體庫** | **分 tab:** 工作室 · 資產 · 工作。KPI
|
|
513
|
+
| **媒體庫** | **分 tab:** 工作室 · 資產 · 工作。KPI 條。工作室:生成/編輯/**圖生影片(1–15 秒)**/**配音**(`ara` `eve` `leo` `rex` `sal` `mio` → `reference_to_video`)。素材庫選取 + 拖放。預覽 lightbox |
|
|
495
514
|
| **佇列** | **分 tab:** 總覽 · 工作列表 · 政策。KPI 條(自動 soft-refresh)。暫停/排空、死信篩選、取消/重新入隊/優先級/清理、併發與公平預設 |
|
|
496
515
|
| **DDoS 中心** | **分 tab:** 政策 · 流量 · 黑名單 · 事件。KPI 條。即時連線、最近請求、自動封鎖事件、熱門 IP、**運行時防護策略**(寬鬆/均衡/嚴格/自訂)、反向代理 IP |
|
|
497
516
|
| **安全設定** | 全域 safe、工具/turns/timeout、預設模型、精簡預設方案、關閉 Admin 面板(只能用 CLI 重開) |
|
|
498
517
|
| **API 能力** | **分 tab:** 協議 · 媒體 · 能力 · 模擬。KPI 啟用計數。預設:開放/鎖定/開發 |
|
|
499
518
|
| **PM2** | **分 tab:** 運行方式 · 連接埠 · 設定 · 日誌。KPI 進程條。Runner 切換(gctoac ↔ PM2)、監聽 port(預設 3847)、設定、清除日誌 + 自動裁剪 |
|
|
500
|
-
| **系統狀態** | **分 tab:** 軟件 · 套件 ·
|
|
519
|
+
| **系統狀態** | **分 tab:** 軟件 · 套件 · 環境 · **Grok sessions**。Software tab 有 **Grok inspect** 卡(version/channel/models/skills/MCP)。Sessions tab 列出 `~/.grok/sessions`(搜尋 + 刪除)。一鍵更新並重啟 |
|
|
520
|
+
| **支持** | 捐助/GitHub Sponsors/Linktree/加密地址、YSK Limited 服務、**email@ysk.hk** |
|
|
501
521
|
|
|
502
522
|
Admin 共用 UX:分段 tab + 頂部 KPI 卡片、精簡正式 EN/繁中文案、table 操作按鈕置中;僅需運維刷新的頁面保留右上角 **重新整理**(儀表板/用量/DDoS/PM2)。
|
|
503
523
|
|
|
@@ -553,8 +573,8 @@ proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
553
573
|
| `ENCRYPTION_KEY` | 32-byte key:`openssl rand -base64 32` |
|
|
554
574
|
| `ADMIN_BOOTSTRAP_KEY` | 可選;首次 setup 用此字串作 admin key |
|
|
555
575
|
| `GROK_BIN` | 預設 `grok` |
|
|
556
|
-
| `GROK_DEFAULT_MODEL` |
|
|
557
|
-
| `GROK_DEFAULT_CWD` / `GROK_CWD_ALLOWLIST` | Agent
|
|
576
|
+
| `GROK_DEFAULT_MODEL` | 預設模型(`grok-4.6`) |
|
|
577
|
+
| `GROK_DEFAULT_CWD` / `GROK_CWD_ALLOWLIST` | Agent 工作目錄(空白預設為 `<STORAGE_DIR>/workspaces/default`,不會使用 gateway 原始碼目錄) |
|
|
558
578
|
| `GROK_TIMEOUT_MS` | Agent 預設 timeout(ms) |
|
|
559
579
|
| `GROK_ALWAYS_APPROVE` | 只對 agent;safe 一律關閉 |
|
|
560
580
|
| `GROK_SAFE_MODE` | 強制全部 key 用 safe |
|
|
@@ -661,8 +681,8 @@ npm publish --access public --otp=<2FA六位碼>
|
|
|
661
681
|
- Chat prompt/response、文件與 **佇列 job payload** 以 **AES-256-GCM** 靜態加密
|
|
662
682
|
- 對外 client 請用 **`safe`** mode
|
|
663
683
|
- **Admin SPA:** 只用 OTP(`gctoac admin otp`)→ 短時 session 存 `sessionStorage`(XSS = 在 session 有效期內完全接管)
|
|
664
|
-
- **客戶端 IP:** 只有 **可信代理列表** 內的 TCP peer(預設 `127.0.0.1
|
|
665
|
-
- Admin
|
|
684
|
+
- **客戶端 IP:** 只有 **可信代理列表** 內的 TCP peer(預設 `127.0.0.1`)才會採信 `CF-Connecting-IP`/`X-Real-IP`/`XFF`。直連客戶**無法偽造 header** 繞過限流或封鎖他人。遠端 nginx 請把其 IP 加入 Admin → DDoS → 可信代理。
|
|
685
|
+
- Admin 只應在本機/VPN 開啟
|
|
666
686
|
- 不要 commit `.env`,不要外洩 admin key/OTP
|
|
667
687
|
- 可完全關閉 Admin:`gctoac admin off`(只能用 `gctoac admin on` 重開)
|
|
668
688
|
- 一鍵更新/PM2/改 port 需 admin(視 admin key/OTP session 為 root)
|
|
@@ -677,9 +697,9 @@ npm publish --access public --otp=<2FA六位碼>
|
|
|
677
697
|
|
|
678
698
|
### ☕ 支持 / 打賞
|
|
679
699
|
|
|
680
|
-
|
|
700
|
+
若本 Grok → OpenAI Gateway 對你有幫助,歡迎請我喝杯咖啡!
|
|
681
701
|
|
|
682
|
-
|
|
|
702
|
+
| 網絡 | 地址 |
|
|
683
703
|
| --- | --- |
|
|
684
704
|
| **EVM** (ETH/BSC/AVAX) | `yanshekki.eth` |
|
|
685
705
|
| **NEAR** | `yanshekki.near` |
|
|
@@ -693,4 +713,4 @@ MIT — 見 [LICENSE](./LICENSE)。
|
|
|
693
713
|
|
|
694
714
|
## 免責聲明
|
|
695
715
|
|
|
696
|
-
本 gateway
|
|
716
|
+
本 gateway 會啟動 **Grok CLI**,視政策可能使用檔案系統、shell、網絡等工具。認證、暴露範圍、key 模式由你負責。作者不對濫用或資料損失負責。
|
package/README.md
CHANGED
|
@@ -24,10 +24,10 @@ Production OpenAI-compatible HTTP gateway for local **[Grok CLI](https://x.ai)**
|
|
|
24
24
|
- Per-key **safe** / **agent** policy + global safety overrides
|
|
25
25
|
- AES-256-GCM encryption + full chat audit
|
|
26
26
|
- **Admin Panel** — OTP login (`gctoac admin otp`), dashboard, chats, keys, documents, audit, usage, **media library**, **chat queue**, **DDoS center**, Safety settings, **API features**, PM2, system update — pages use a consistent **KPI + segmented tabs** layout
|
|
27
|
-
- **Media library** — studio (generate / edit / image-to-video), assets & jobs tabs, browser preview lightbox (image / video / audio / PDF / text)
|
|
27
|
+
- **Media library** — studio (generate / edit / **image-to-video 1–15s** / **reference-to-video + preset voices**), assets & jobs tabs, browser preview lightbox (image / video / audio / PDF / text)
|
|
28
28
|
- **Durable chat queue** — every conversation is enqueued with leases, then consumed by an in-process worker; Admin pause / drain / cancel / DLQ; optional `Idempotency-Key`; offline stream collect when no live Response
|
|
29
29
|
- **DDoS / abuse protection** — configurable rate limits, multi-rule auto-ban, reverse-proxy client IP (nginx / Cloudflare)
|
|
30
|
-
- Control CLI: lifecycle + **settings / api features / queue / ddos / keys / docs / chats / stats / models / admin sessions**
|
|
30
|
+
- Control CLI: lifecycle + **settings / api features / queue / ddos / keys / docs / chats / stats / models / admin sessions / grok inspect / grok sessions**
|
|
31
31
|
- **API features** (Admin tabs + `gctoac api features`): protocol + Grok CLI capability gates (tools, vision, json-schema, effort, …)
|
|
32
32
|
|
|
33
33
|
### Capability parity (Grok CLI–backed “100%”)
|
|
@@ -38,7 +38,7 @@ Production OpenAI-compatible HTTP gateway for local **[Grok CLI](https://x.ai)**
|
|
|
38
38
|
| Vision / image parts | ✅ | ✅ | ✅ | `vision` |
|
|
39
39
|
| **Images** `/v1/images/generations` + `/edits` | ✅ OpenAI-shaped | — | — | `imagesApi` + agent key |
|
|
40
40
|
| **Files** `/v1/files` (docs alias) | ✅ | — | — | `filesOpenAiAlias` |
|
|
41
|
-
| **Videos** `/v1/videos`
|
|
41
|
+
| **Videos** `/v1/videos` | ✅ Grok `image_to_video` (1–15s) / `reference_to_video` + voices | — | — | `videoApi` |
|
|
42
42
|
| **Audio** `/v1/audio/speech` + `/transcriptions` | ✅ mock or 503 | — | — | `audioApi` + provider env |
|
|
43
43
|
| Tools (allowlist → Grok) | ✅ | ✅ | ✅ (incl. `tool_use`/`tool_result`) | `tools` |
|
|
44
44
|
| tool_calls in response | ✅* | text+meta | ✅ `tool_use` blocks | `tools` |
|
|
@@ -182,6 +182,8 @@ gctoac update --check # check only
|
|
|
182
182
|
gctoac update --no-restart
|
|
183
183
|
```
|
|
184
184
|
|
|
185
|
+
Git checkouts: update runs `npm install --include=dev` then `npm run build` (so `NODE_ENV=production` in `.env` does not strip TypeScript types). Always runs `gctoac migrate`, including if compile fails.
|
|
186
|
+
|
|
185
187
|
Or Admin → **System** → one-click update.
|
|
186
188
|
|
|
187
189
|
---
|
|
@@ -314,12 +316,12 @@ gctoac logs clear
|
|
|
314
316
|
| Encryption | AES-256-GCM for prompts, responses, files |
|
|
315
317
|
| Chat history | Multi-turn conversations, context modes (full / summary / recent) |
|
|
316
318
|
| Admin Panel | OTP session login; **tabbed** pages (queue / media / system / PM2 / DDoS / API features); compact EN/ZH copy |
|
|
317
|
-
| Media library | Studio (gen/edit
|
|
319
|
+
| Media library | Studio (gen/edit/**1–15s video**/voices), assets & jobs, multi-format preview lightbox (`blob:` CSP-safe) |
|
|
318
320
|
| Chat queue | Durable SQLite jobs, fair RR, pause/drain, DLQ, Idempotency-Key, `QUEUE_BACKEND`, offline stream fallback |
|
|
319
321
|
| DDoS center | Live connections, blacklist, auto-ban rules, presets, runtime policy (tabbed) |
|
|
320
322
|
| Reverse proxy | Trust hops + CF / nginx / X-Forwarded-For client IP |
|
|
321
323
|
| Auth | API keys: **scrypt** hashes (legacy SHA-256 auto-migrates); Admin SPA: OTP → session token |
|
|
322
|
-
| CLI | Full control plane: lifecycle, settings, queue, DDoS, keys, docs, chats, stats, `admin otp` |
|
|
324
|
+
| CLI | Full control plane: lifecycle, settings, queue, DDoS, keys, docs, chats, stats, `admin otp`, `grok inspect`, `grok sessions` |
|
|
323
325
|
| Ops | SQLite, PM2, log auto-trim (>5 MB), GitHub Actions CI |
|
|
324
326
|
|
|
325
327
|
---
|
|
@@ -407,8 +409,7 @@ curl -s http://127.0.0.1:3847/v1/messages \
|
|
|
407
409
|
```
|
|
408
410
|
|
|
409
411
|
Also accepts `Authorization: Bearer $API_KEY`.
|
|
410
|
-
Supported: text `system` + user/assistant messages, stream SSE (`message_start` … `message_stop`).
|
|
411
|
-
Not supported: image blocks, `tool_use` / `tool_result`.
|
|
412
|
+
Supported: text `system` + user/assistant messages, **image blocks** (ACP `--prompt-json`), `tool_use` / `tool_result`, stream SSE (`message_start` … `message_stop`).
|
|
412
413
|
|
|
413
414
|
### API compatibility matrix
|
|
414
415
|
|
|
@@ -444,9 +445,15 @@ Not supported: image blocks, `tool_use` / `tool_result`.
|
|
|
444
445
|
| `include_reasoning` | Default `true`. Maps Grok `thought` → `reasoning_content` |
|
|
445
446
|
| `cwd` | **agent** only (allowlist); **safe** forces sandbox |
|
|
446
447
|
| `session_id` | Mapped to a per-key Grok UUID: first call uses `-s`, later calls `--resume` (Grok 1.0+). |
|
|
448
|
+
| `resume` | Grok session UUID (`--resume`). Admin playground Resume field. |
|
|
449
|
+
| `fork_session` | Fork that session instead of continuing it. |
|
|
450
|
+
| `reasoning_effort` / `effort` | Grok `--reasoning-effort` (`none`…`max`). Gate: `reasoningEffort`. |
|
|
451
|
+
| `experimental_memory` / `no_memory` | Grok memory flags. Gate: `memory`. |
|
|
452
|
+
| `no_plan` | Disable plan mode. Gate: `planMode`. |
|
|
453
|
+
| `permission_mode` | `default` / `acceptEdits` / `auto` / `dontAsk` / `bypassPermissions` / `plan`. Gate: `permissionMode`. |
|
|
447
454
|
| `document_ids` | Inject decrypted documents as context |
|
|
448
455
|
| `temperature`, `top_p`, `stop`, `user` | Accepted for SDK compatibility; **not applied** by Grok CLI |
|
|
449
|
-
| `tools` / `functions` |
|
|
456
|
+
| `tools` / `functions` | Mapped to Grok when **`tools`** is enabled (otherwise 400) |
|
|
450
457
|
| `response_format: json_object` | Best-effort system hint only |
|
|
451
458
|
|
|
452
459
|
### Thinking mapping
|
|
@@ -455,6 +462,8 @@ Not supported: image blocks, `tool_use` / `tool_result`.
|
|
|
455
462
|
|------------|-------------------------|--------|
|
|
456
463
|
| `thought` | `reasoning_content` / `delta.reasoning_content` | `thought` alias |
|
|
457
464
|
| `text` | `content` / `delta.content` | — |
|
|
465
|
+
| `tool_call` / `tool_call_update` / `plan` | extra `grok_event` on the chunk | OpenAI SDK ignores unknown fields |
|
|
466
|
+
| `usage` / `cost` | `usage` (+ cache / cost when Grok sends them) | — |
|
|
458
467
|
| `end` | `finish_reason` | `grok.sessionId`, `grok.stopReason` |
|
|
459
468
|
|
|
460
469
|
### Durable chat queue
|
|
@@ -477,7 +486,7 @@ Stream preview:
|
|
|
477
486
|
```text
|
|
478
487
|
data: {"object":"gog.queue","status":"queued","job_id":"…","position":2}
|
|
479
488
|
data: {"object":"gog.queue","status":"queued","job_id":"…","position":1}
|
|
480
|
-
data: {"id":"chatcmpl-…","object":"chat.completion.chunk",…}
|
|
489
|
+
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","grok_event":{"type":"tool_call",…},…}
|
|
481
490
|
```
|
|
482
491
|
|
|
483
492
|
Admin ops (OTP **session** token or admin API key):
|
|
@@ -504,6 +513,10 @@ POST /admin/api/queue/purge-dead
|
|
|
504
513
|
| POST | `/v1/responses` | OpenAI Responses (text + store) |
|
|
505
514
|
| GET/DELETE | `/v1/responses/:id` | Retrieve / soft-delete stored response |
|
|
506
515
|
| POST | `/v1/messages` | Anthropic Messages (Bearer or `x-api-key`) |
|
|
516
|
+
| POST | `/v1/videos` | Grok video job (`seconds` 1–15; `voices[]` → `reference_to_video`) |
|
|
517
|
+
| GET | `/v1/videos/:id` | Poll video job |
|
|
518
|
+
| GET | `/admin/api/grok/inspect` | Local `grok inspect --json` snapshot |
|
|
519
|
+
| GET/DELETE | `/admin/api/grok/sessions`… | List / delete `~/.grok/sessions` |
|
|
507
520
|
| POST/GET/DELETE | `/v1/assistants`… | Assistants-lite (feature `assistantsEmulation`) |
|
|
508
521
|
| POST/GET | `/v1/threads`… | Threads + messages + runs (Assistants-lite) |
|
|
509
522
|
| POST | `/v1/documents` | Upload (`file` field) |
|
|
@@ -554,19 +567,20 @@ Admin **JSON API** (`/admin/api/*`) accepts either:
|
|
|
554
567
|
| Page | Features |
|
|
555
568
|
|------|----------|
|
|
556
569
|
| **Dashboard** | 24h KPIs, success rate, **queue depth**, protection snapshot, models, runtime (port / encryption) |
|
|
557
|
-
| **Chat** | Multi-turn playground, history, context modes, attachments (
|
|
570
|
+
| **Chat** | Multi-turn playground: effort, resume/fork UUID, memory / no-plan / permission, tool chips + cost, history, context modes, attachments (queued when enabled) |
|
|
558
571
|
| **Chat logs** | Search / filter / pager; full **decrypted** prompt / reasoning / response |
|
|
559
572
|
| **API Keys** | Create / edit mode / role / rate limit / IP whitelist; revoke |
|
|
560
573
|
| **Documents** | Search / filter / pager; preview, download, delete; storage DB vs filesystem |
|
|
561
574
|
| **Audit Logs** | Search / filter / pager; human-readable actions |
|
|
562
575
|
| **Usage & limits** | 24h stats, by-model / by-key tabs, gateway limit summary |
|
|
563
|
-
| **Media** | **Tabs:** Studio · Assets · Jobs. KPI strip. Studio
|
|
576
|
+
| **Media** | **Tabs:** Studio · Assets · Jobs. KPI strip. Studio: generate / edit / **image-to-video (1–15s)** / **voice** (`ara` `eve` `leo` `rex` `sal` `mio` → `reference_to_video`). Library picker + drag-drop. Preview lightbox |
|
|
564
577
|
| **Queue** | **Tabs:** Overview · Jobs · Policy. KPI strip (auto soft-refresh). Pause/drain, DLQ filter, cancel/requeue/priority/purge, concurrency & fairness presets |
|
|
565
578
|
| **DDoS center** | **Tabs:** Policy · Traffic · Blacklist · Events. KPI strip. Live connections, recent requests, auto-ban events, top IPs, **runtime protection policy** (relaxed / balanced / strict / custom), reverse-proxy IP |
|
|
566
579
|
| **Safety settings** | Global safe mode, tools / turns / timeout, default model, concise presets, disable Admin panel (re-enable only via CLI) |
|
|
567
580
|
| **API features** | **Tabs:** Protocols · Media · Capabilities · Emulation. KPI enabled counts. Presets: open / locked / dev |
|
|
568
581
|
| **PM2** | **Tabs:** Runner · Port · Config · Logs. KPI process strip. Runner switch (gctoac ↔ PM2), listen port (default 3847), config, clear logs + auto-trim |
|
|
569
|
-
| **System** | **Tabs:** Software · Package · Environment
|
|
582
|
+
| **System** | **Tabs:** Software · Package · Environment · **Grok sessions**. Software tab has a **Grok inspect** card (version / channel / models / skills / MCP). Sessions tab lists `~/.grok/sessions` (search + delete). One-click update & restart |
|
|
583
|
+
| **Support** | Donate / GitHub Sponsors / Linktree / crypto addresses, YSK Limited services, **email@ysk.hk** |
|
|
570
584
|
|
|
571
585
|
Shared Admin UX: segmented tabs + top KPI cards, compact formal EN/ZH strings, table action buttons centered; only operational pages keep a top-right **Refresh** (dashboard / usage / DDoS / PM2).
|
|
572
586
|
|
|
@@ -622,8 +636,8 @@ See [`.env.example`](./.env.example). Fresh `gctoac setup` writes **`NODE_ENV=pr
|
|
|
622
636
|
| `ENCRYPTION_KEY` | 32-byte key: `openssl rand -base64 32` |
|
|
623
637
|
| `ADMIN_BOOTSTRAP_KEY` | Optional seed admin key on first setup |
|
|
624
638
|
| `GROK_BIN` | Default `grok` |
|
|
625
|
-
| `GROK_DEFAULT_MODEL` | Default model id |
|
|
626
|
-
| `GROK_DEFAULT_CWD` / `GROK_CWD_ALLOWLIST` | Agent cwd
|
|
639
|
+
| `GROK_DEFAULT_MODEL` | Default model id (`grok-4.6`) |
|
|
640
|
+
| `GROK_DEFAULT_CWD` / `GROK_CWD_ALLOWLIST` | Agent cwd (empty default = `<STORAGE_DIR>/workspaces/default`, not the gateway repo) |
|
|
627
641
|
| `GROK_TIMEOUT_MS` | Default agent timeout (ms) |
|
|
628
642
|
| `GROK_ALWAYS_APPROVE` | Agent only; off in safe mode |
|
|
629
643
|
| `GROK_SAFE_MODE` | Force all keys to safe |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAYA,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAYA,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAyKhB"}
|
|
@@ -71,6 +71,18 @@ async function cmdDoctor(opts) {
|
|
|
71
71
|
else {
|
|
72
72
|
(0, print_1.ok)('NODE_ENV=production (or production default)');
|
|
73
73
|
}
|
|
74
|
+
const cwd = env.GROK_DEFAULT_CWD || '(storage/workspaces/default)';
|
|
75
|
+
const allow = env.GROK_CWD_ALLOWLIST || cwd;
|
|
76
|
+
(0, print_1.info)(`GROK_DEFAULT_CWD: ${cwd}`);
|
|
77
|
+
const envDir = node_path_1.default.dirname(paths.envFile);
|
|
78
|
+
const roots = String(allow)
|
|
79
|
+
.split(',')
|
|
80
|
+
.map((s) => s.trim())
|
|
81
|
+
.filter(Boolean);
|
|
82
|
+
const dangerous = [paths.packageRoot, envDir];
|
|
83
|
+
if (roots.some((r) => dangerous.some((d) => r === d || r.startsWith(`${d}${node_path_1.default.sep}`) || d.startsWith(`${r}${node_path_1.default.sep}`)))) {
|
|
84
|
+
(0, print_1.warn)('GROK_CWD_ALLOWLIST / GROK_DEFAULT_CWD includes the gateway root or .env directory — agent keys can read ENCRYPTION_KEY');
|
|
85
|
+
}
|
|
74
86
|
// Proxy / reverse proxy
|
|
75
87
|
const trust = env.TRUST_PROXY ?? '1';
|
|
76
88
|
const src = env.PROXY_IP_SOURCE || 'auto';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":";;;;;AAYA,
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-keys.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/db-keys.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM/D,OAAO,EAEL,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,oEAAoE;AACpE,eAAO,MAAM,gBAAgB,4BAAsB,CAAC;AAEpD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAEvC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB;AAQD,wBAAsB,SAAS,CAAC,OAAO,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,UAAU,CAAC,CAkDtB;AAED,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAoBxE;AAED,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"db-keys.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/db-keys.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM/D,OAAO,EAEL,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,oEAAoE;AACpE,eAAO,MAAM,gBAAgB,4BAAsB,CAAC;AAEpD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAEvC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB;AAQD,wBAAsB,SAAS,CAAC,OAAO,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,UAAU,CAAC,CAkDtB;AAED,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAoBxE;AAED,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,OAAO,CAAC,CAqBlB;AAED,wBAAsB,MAAM,CAC1B,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAoB3B;AAED,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE;IACL,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GACA,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAuD3B;AAED,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,OAAO,CAAC,CAalB"}
|
package/dist/cli/lib/db-keys.js
CHANGED
|
@@ -93,6 +93,14 @@ async function revokeKey(databaseUrl, id) {
|
|
|
93
93
|
const row = await prisma.apiKey.findUnique({ where: { id } });
|
|
94
94
|
if (!row)
|
|
95
95
|
return false;
|
|
96
|
+
if (row.isActive && row.role === 'admin') {
|
|
97
|
+
const others = await prisma.apiKey.count({
|
|
98
|
+
where: { isActive: true, role: 'admin', id: { not: id } },
|
|
99
|
+
});
|
|
100
|
+
if (others === 0) {
|
|
101
|
+
throw new Error('Cannot revoke the last active admin API key');
|
|
102
|
+
}
|
|
103
|
+
}
|
|
96
104
|
await prisma.apiKey.update({
|
|
97
105
|
where: { id },
|
|
98
106
|
data: { isActive: false },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-keys.js","sourceRoot":"","sources":["../../../src/cli/lib/db-keys.ts"],"names":[],"mappings":";;;AA8CA,8BAyDC;AAED,4BAoBC;AAED,
|
|
1
|
+
{"version":3,"file":"db-keys.js","sourceRoot":"","sources":["../../../src/cli/lib/db-keys.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/lib/env-file.js
CHANGED
|
@@ -106,8 +106,8 @@ function ensureEnvFile(paths, port = paths_1.DEFAULT_PORT) {
|
|
|
106
106
|
ENCRYPTION_KEY: encryptionKey,
|
|
107
107
|
GROK_BIN: 'grok',
|
|
108
108
|
GROK_DEFAULT_MODEL: 'grok-4.6',
|
|
109
|
-
GROK_DEFAULT_CWD: paths.home,
|
|
110
|
-
GROK_CWD_ALLOWLIST: paths.home,
|
|
109
|
+
GROK_DEFAULT_CWD: `${paths.home.replace(/\\/g, '/')}/workspaces/default`,
|
|
110
|
+
GROK_CWD_ALLOWLIST: `${paths.home.replace(/\\/g, '/')}/workspaces`,
|
|
111
111
|
GROK_TIMEOUT_MS: '600000',
|
|
112
112
|
GROK_MAX_CONCURRENT: '4',
|
|
113
113
|
GROK_ALWAYS_APPROVE: 'true',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-file.js","sourceRoot":"","sources":["../../../src/cli/lib/env-file.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"env-file.js","sourceRoot":"","sources":["../../../src/cli/lib/env-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../../src/config/cors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAGxC,eAAO,MAAM,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../../src/config/cors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAGxC,eAAO,MAAM,WAAW,EAAE,WAwBzB,CAAC"}
|
package/dist/config/cors.js
CHANGED
|
@@ -8,7 +8,15 @@ exports.corsOptions = {
|
|
|
8
8
|
callback(null, true);
|
|
9
9
|
return;
|
|
10
10
|
}
|
|
11
|
-
if (env_1.env.corsOrigins.includes('*')
|
|
11
|
+
if (env_1.env.corsOrigins.includes('*')) {
|
|
12
|
+
if (env_1.env.isProd) {
|
|
13
|
+
callback(new Error('CORS origin * is not allowed in production'));
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
callback(null, true);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
if (env_1.env.corsOrigins.includes(origin)) {
|
|
12
20
|
callback(null, true);
|
|
13
21
|
return;
|
|
14
22
|
}
|
package/dist/config/cors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cors.js","sourceRoot":"","sources":["../../src/config/cors.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAEf,QAAA,WAAW,GAAgB;IACtC,MAAM,CAAC,MAAM,EAAE,QAAQ;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"cors.js","sourceRoot":"","sources":["../../src/config/cors.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAEf,QAAA,WAAW,GAAgB;IACtC,MAAM,CAAC,MAAM,EAAE,QAAQ;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,SAAG,CAAC,MAAM,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,QAAQ,CAAC,IAAI,KAAK,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;IAC7D,cAAc,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,cAAc,CAAC;IACjE,cAAc,EAAE,CAAC,cAAc,CAAC;IAChC,MAAM,EAAE,GAAG;CACZ,CAAC"}
|
package/dist/config/env.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/config/env.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/config/env.ts"],"names":[],"mappings":"AAoIA,eAAO,MAAM,GAAG;;;;;;;;IAWd,sDAAsD;;IAEtD,2EAA2E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAE5E,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC"}
|
package/dist/config/env.js
CHANGED
|
@@ -19,7 +19,7 @@ const envSchema = zod_1.z.object({
|
|
|
19
19
|
GCTOAC_HOME: zod_1.z.string().optional(),
|
|
20
20
|
GROK_BIN: zod_1.z.string().default('grok'),
|
|
21
21
|
GROK_DEFAULT_MODEL: zod_1.z.string().default('grok-4.6'),
|
|
22
|
-
GROK_DEFAULT_CWD: zod_1.z.string().default('
|
|
22
|
+
GROK_DEFAULT_CWD: zod_1.z.string().default(''),
|
|
23
23
|
GROK_CWD_ALLOWLIST: zod_1.z.string().default(''),
|
|
24
24
|
GROK_TIMEOUT_MS: zod_1.z.coerce.number().int().positive().default(600_000),
|
|
25
25
|
GROK_MAX_CONCURRENT: zod_1.z.coerce.number().int().positive().default(4),
|
|
@@ -118,12 +118,16 @@ if (!parsed.success) {
|
|
|
118
118
|
}
|
|
119
119
|
const data = parsed.data;
|
|
120
120
|
const encryptionKey = parseEncryptionKey(data.ENCRYPTION_KEY);
|
|
121
|
+
const storageDir = node_path_1.default.resolve(data.STORAGE_DIR);
|
|
122
|
+
const defaultCwd = data.GROK_DEFAULT_CWD.trim()
|
|
123
|
+
? node_path_1.default.resolve(data.GROK_DEFAULT_CWD)
|
|
124
|
+
: node_path_1.default.join(storageDir, 'workspaces', 'default');
|
|
121
125
|
const cwdAllowlist = data.GROK_CWD_ALLOWLIST
|
|
122
126
|
? data.GROK_CWD_ALLOWLIST.split(',')
|
|
123
127
|
.map((s) => s.trim())
|
|
124
128
|
.filter(Boolean)
|
|
125
129
|
.map((p) => node_path_1.default.resolve(p))
|
|
126
|
-
: [
|
|
130
|
+
: [defaultCwd];
|
|
127
131
|
exports.env = {
|
|
128
132
|
...data,
|
|
129
133
|
encryptionKey,
|
|
@@ -131,8 +135,8 @@ exports.env = {
|
|
|
131
135
|
.map((s) => s.trim())
|
|
132
136
|
.filter(Boolean),
|
|
133
137
|
cwdAllowlist,
|
|
134
|
-
storageDir
|
|
135
|
-
defaultCwd
|
|
138
|
+
storageDir,
|
|
139
|
+
defaultCwd,
|
|
136
140
|
isProd: data.NODE_ENV === 'production',
|
|
137
141
|
isDev: data.NODE_ENV === 'development',
|
|
138
142
|
/** Number of trusted reverse-proxy hops (0 = off). */
|
package/dist/config/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/config/env.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8C;AAC9C,6BAAwB;AACxB,0DAA6B;AAE7B,IAAA,eAAU,GAAE,CAAC;AAEb,MAAM,SAAS,GAAG,OAAC,CAAC,MAAM,CAAC;IACzB,oFAAoF;IACpF,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7E,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACtD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IACnC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IACpC,kBAAkB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IAClD,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/config/env.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.handlers.d.ts","sourceRoot":"","sources":["../../../src/controllers/admin/auth.handlers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.handlers.d.ts","sourceRoot":"","sources":["../../../src/controllers/admin/auth.handlers.ts"],"names":[],"mappings":"AAmBA,kDAAkD;AAClD,eAAO,MAAM,iBAAiB;IAC5B,wDAAwD;;IA0BxD,iDAAiD;;CAQlD,CAAC"}
|