agentgui 1.0.995 → 1.0.997

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 (3) hide show
  1. package/AGENTS.md +3 -10
  2. package/README.md +7 -9
  3. package/package.json +2 -7
package/AGENTS.md CHANGED
@@ -116,8 +116,7 @@ When `PASSWORD` env var is set, every HTTP route is gated by `lib/http-handler.j
116
116
  - `site/app/js/app.js` — webjsx view + state; renders the `AgentChat` kit (from `anentrypoint-design`) for the chat surface and wires agentgui's WS/ccsniff state as kit callbacks; history/settings remain agentgui-local. Exposes `window.__agentgui`
117
117
 
118
118
  The chat GUI lives in the design kit, not in agentgui. The reusable multi-agent chat surface is the `AgentChat` component in `anentrypoint-design` (`src/components/agent-chat.js`); agentgui keeps only the transport glue (WS `backend.js`, ccsniff history wiring, agent orchestration) and passes state + callbacks into the kit. To change chat UI, edit the kit and push it (CI publishes to npm -> unpkg `@latest`), not agentgui.
119
- - `server.js` — boots ACP/agents/websocket plugins, mounts `createHistoryRouter()` from `ccsniff` at `/`, serves `site/app/` as static root
120
- - Plugins kept (lib/plugins/): acp, agents, database, files, stream, websocket, workflow
119
+ - `server.js` — initializes the ACP-SDK manager + agent registry, registers WS handlers (`ws-handlers-util.js`), mounts `createHistoryRouter()` from `ccsniff` at `/`, serves `site/app/` as static root. The `lib/plugins/` system was removed (2026-06-20, 20th run) — it was dead scaffolding (routes 404, wsHandlers never wired, api unconsumed); all server logic lives directly in `server.js` + `lib/ws-handlers-util.js` + `lib/http-handler.js` + `lib/routes-upload.js` + `database.js`.
121
120
 
122
121
  Dependencies:
123
122
  - `ccsniff` (>=1.1.0) — exports `createHistoryRouter({projectsDir})` mountable on Express; serves `/v1/history/{sessions,sessions/:sid/events,search,snapshot,reindex,stream}`. Reads `~/.claude/projects` (override via `CLAUDE_PROJECTS_DIR`).
@@ -157,15 +156,9 @@ Why it works: `process.execPath` becomes bun, so the spawned child server also r
157
156
 
158
157
  Rule: any CI step that spawns the agentgui server (directly or via a script that inherits `process.execPath`) must invoke it with `bun`.
159
158
 
160
- ## Plugin Dependencies
159
+ ## Plugin system removed (2026-06-20 — 20th run)
161
160
 
162
- **`lib/plugins/stream-plugin.js` must not import packages missing from package.json.**
163
-
164
- The plugin loader runs at startup and logs failures silently if a plugin import fails. If stream plugin fails to load due to missing dependency (e.g., `uuid`), the error cascades: `agents` and `websocket` plugins both declare `stream` as a dependency and fail with "Plugin stream not found in registry", cascading to boot failure.
165
-
166
- Fix for uuid: replaced `import { v4 as uuidv4 } from 'uuid'` with `import { randomUUID as uuidv4 } from 'crypto'` (Node.js built-in, zero deps).
167
-
168
- Pattern: all imports in lib/plugins/* must be either built-in (crypto, fs, path, etc.) or already in package.json. No new npm packages should be added to plugins without adding them to dependencies.
161
+ The entire `lib/plugins/` system + `plugin-loader.js` was deleted as dead scaffolding (commits up to e73ed0e): plugin routes were unreachable (http-handler forwarded only a few prefixes -> 404), plugin `wsHandlers` were never wired (the real WS handlers come from `registerWsHandlers` in `ws-handlers-util.js`), plugin `api` objects were never consumed, and the inits were no-ops or managed local Maps nobody read. Removed across 7 commits (acp, files, agents, then database/stream/workflow/websocket + loader). The general lesson survives: any import under `lib/` must be a built-in (crypto, fs, path) or already in package.json — a missing dep crashes boot.
169
162
 
170
163
  ## Plugin Tool Provisioning on Windows
171
164
 
package/README.md CHANGED
@@ -133,14 +133,12 @@ lib/ws-optimizer.js Per-client priority queue for WS event batching
133
133
  lib/ws-handlers-*.js WebSocket RPC handlers (conv, msg, queue, session, run, util, oauth, scripts)
134
134
  lib/speech.js Speech-to-text and text-to-speech via @huggingface/transformers
135
135
  lib/tool-manager.js Tool detection, install, update facade
136
- lib/plugins/ Server plugins (acp, agents, auth, database, files, git, speech, stream, tools, websocket, workflow)
137
- static/index.html Main HTML shell
138
- static/app.js App initialization
139
- static/js/client.js Main client logic
140
- static/js/conversations.js Conversation management
141
- static/js/streaming-renderer.js Renders agent streaming events as HTML
142
- static/js/websocket-manager.js WebSocket connection handling
143
- static/js/*.machine.js XState v5 state machines (ws, conv, tool-install, voice, conv-list, prompt)
136
+ lib/ws-handlers-util.js WS RPC handler registration (agents.list, chat.sendMessage, ...)
137
+ lib/http-handler.js Static serving + /api/* routes + auth gate + path confinement
138
+ lib/routes-upload.js Express app for multipart upload + fsbrowse file serving
139
+ site/app/index.html SPA shell; imports the anentrypoint-design kit
140
+ site/app/js/app.js webjsx view + state; renders the AgentChat kit, wires WS callbacks
141
+ site/app/js/backend.js Same-origin WS/HTTP client (transport glue)
144
142
  ```
145
143
 
146
144
  ### Key Details
@@ -148,7 +146,7 @@ static/js/*.machine.js XState v5 state machines (ws, conv, tool-instal
148
146
  - Agent discovery scans PATH for known CLI binaries at startup
149
147
  - Database lives at `~/.gmgui/data.db` (WAL mode for concurrent access)
150
148
  - WebSocket endpoint at `/gm/sync` for real-time updates
151
- - ACP tools (OpenCode, Kilo) auto-launch as HTTP servers on startup with health checks
149
+ - ACP tools (OpenCode, Kilo, Codex) start on demand as HTTP servers with health checks + restart backoff
152
150
 
153
151
  ## Use Cases
154
152
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentgui",
3
- "version": "1.0.995",
3
+ "version": "1.0.997",
4
4
  "description": "Multi-agent ACP client with real-time communication",
5
5
  "type": "module",
6
6
  "main": "electron/main.js",
@@ -24,7 +24,6 @@
24
24
  "electron:dev": "PORT=3000 electron electron/main.js"
25
25
  },
26
26
  "dependencies": {
27
- "@agentclientprotocol/sdk": "^0.4.1",
28
27
  "@anthropic-ai/claude-code": "^2.1.37",
29
28
  "@google/gemini-cli": "latest",
30
29
  "@kilocode/cli": "latest",
@@ -33,19 +32,15 @@
33
32
  "busboy": "^1.6.0",
34
33
  "ccfollow": "^1.0.7",
35
34
  "ccsniff": "github:AnEntrypoint/ccsniff#main",
36
- "execa": "^9.6.1",
37
35
  "express": "^5.2.1",
38
- "form-data": "^4.0.5",
39
36
  "fsbrowse": "latest",
40
37
  "lru-cache": "^11.2.7",
41
38
  "opencode-ai": "^1.2.15",
42
- "p-retry": "^7.1.1",
43
39
  "puppeteer-core": "^24.37.5",
44
40
  "webjsx": "^0.0.73",
45
41
  "webtalk": "^1.0.31",
46
42
  "ws": "^8.14.2",
47
- "xstate": "^5.32.0",
48
- "zod": "^4.3.6"
43
+ "xstate": "^5.32.0"
49
44
  },
50
45
  "devDependencies": {
51
46
  "electron": "^35.0.0",