tabminal 2.0.22 → 3.0.2
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/.dockerignore +1 -0
- package/AGENTS.md +2 -2
- package/package.json +2 -2
- package/ACP_PLANING.md +0 -271
package/.dockerignore
CHANGED
package/AGENTS.md
CHANGED
|
@@ -266,7 +266,7 @@ Relevant code:
|
|
|
266
266
|
|
|
267
267
|
## 4) ACP Status and Remaining Gaps
|
|
268
268
|
|
|
269
|
-
`
|
|
269
|
+
`docs/ACP.md` is partly stale.
|
|
270
270
|
|
|
271
271
|
Implemented from that plan:
|
|
272
272
|
|
|
@@ -290,7 +290,7 @@ Still not clearly done end-to-end:
|
|
|
290
290
|
|
|
291
291
|
Implication:
|
|
292
292
|
|
|
293
|
-
- Do not delete `
|
|
293
|
+
- Do not delete `docs/ACP.md` just because most of the MVP shipped.
|
|
294
294
|
- If it is removed later, first copy the still-open deferred items into a new
|
|
295
295
|
canonical roadmap document.
|
|
296
296
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tabminal",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.0.2",
|
|
4
|
+
"description": "Tab(ter)minal, a Cloud-Native terminal and ACP agent workspace for desktop, tablet, and phone.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"tabminal": "./src/server.mjs"
|
package/ACP_PLANING.md
DELETED
|
@@ -1,271 +0,0 @@
|
|
|
1
|
-
# ACP Planning
|
|
2
|
-
|
|
3
|
-
Last updated: 2026-03-27
|
|
4
|
-
|
|
5
|
-
This file is no longer a pure implementation plan.
|
|
6
|
-
It is now the ACP status ledger for Tabminal:
|
|
7
|
-
|
|
8
|
-
- what shipped
|
|
9
|
-
- what is stable
|
|
10
|
-
- what remains open
|
|
11
|
-
|
|
12
|
-
Use `/Users/leask/Documents/Tabminal/AGENTS.md` as the broader engineering
|
|
13
|
-
handoff document. Use this file as the ACP-specific roadmap/status snapshot.
|
|
14
|
-
|
|
15
|
-
## 1) Goal
|
|
16
|
-
|
|
17
|
-
Integrate ACP-based coding agents into Tabminal without building custom agents
|
|
18
|
-
in-repo. Agents should run on the Tabminal host, be managed by the Tabminal
|
|
19
|
-
backend, and feel native inside the existing workspace/editor UI.
|
|
20
|
-
|
|
21
|
-
## 2) Current Architecture
|
|
22
|
-
|
|
23
|
-
### Backend
|
|
24
|
-
|
|
25
|
-
Implemented:
|
|
26
|
-
|
|
27
|
-
- ACP supervisor in `/Users/leask/Documents/Tabminal/src/acp-manager.mjs`
|
|
28
|
-
- Built-in host-local agent definitions:
|
|
29
|
-
- Gemini CLI
|
|
30
|
-
- Codex CLI
|
|
31
|
-
- Claude Agent
|
|
32
|
-
- GitHub Copilot
|
|
33
|
-
- ACP Test Agent when `TABMINAL_ENABLE_TEST_AGENT=1`
|
|
34
|
-
- Lazy runtime startup
|
|
35
|
-
- Runtime reuse while tabs are active
|
|
36
|
-
- Idle cleanup
|
|
37
|
-
- ACP websocket fan-out to browser clients
|
|
38
|
-
- Session restore for ACP runtimes that support `loadSession`
|
|
39
|
-
- Per-agent saved config/env persistence
|
|
40
|
-
|
|
41
|
-
### Frontend
|
|
42
|
-
|
|
43
|
-
Implemented:
|
|
44
|
-
|
|
45
|
-
- Host-scoped agent dropdown from the sidebar
|
|
46
|
-
- Agent tabs inside the shared workspace tab strip
|
|
47
|
-
- Transcript rendering with message/tool/permission/plan history
|
|
48
|
-
- Composer with send/stop, slash-command suggestions, attachments, and keyboard
|
|
49
|
-
shortcuts
|
|
50
|
-
- Mode/model/thought-level/permission selectors
|
|
51
|
-
- Managed terminal summaries and `Jump in`
|
|
52
|
-
- Usage HUD
|
|
53
|
-
- Plan panel that archives into transcript history once complete
|
|
54
|
-
- Agent-specific workspace restore and focus behavior
|
|
55
|
-
|
|
56
|
-
## 3) Completed Scope
|
|
57
|
-
|
|
58
|
-
The following items are effectively shipped and usable.
|
|
59
|
-
|
|
60
|
-
### 3.1 Core ACP plumbing
|
|
61
|
-
|
|
62
|
-
- ACP dependency integrated
|
|
63
|
-
- Backend ACP supervisor live
|
|
64
|
-
- REST endpoints live:
|
|
65
|
-
- `GET /api/agents`
|
|
66
|
-
- `GET /api/agents/config`
|
|
67
|
-
- `PUT /api/agents/config/:agentId`
|
|
68
|
-
- `DELETE /api/agents/config/:agentId`
|
|
69
|
-
- `POST /api/agents/tabs`
|
|
70
|
-
- `POST /api/agents/tabs/:tabId/prompt`
|
|
71
|
-
- `POST /api/agents/tabs/:tabId/cancel`
|
|
72
|
-
- `POST /api/agents/tabs/:tabId/mode`
|
|
73
|
-
- `POST /api/agents/tabs/:tabId/config`
|
|
74
|
-
- `POST /api/agents/tabs/:tabId/permissions/:permissionId`
|
|
75
|
-
- `DELETE /api/agents/tabs/:tabId`
|
|
76
|
-
- ACP websocket endpoint live
|
|
77
|
-
|
|
78
|
-
### 3.2 Agent tab UX
|
|
79
|
-
|
|
80
|
-
- Agent tabs coexist with file tabs and pinned terminal tabs
|
|
81
|
-
- Duplicate agent tabs auto-number
|
|
82
|
-
- `Enter` sends
|
|
83
|
-
- `Shift+Enter` and `Ctrl+J` insert newline
|
|
84
|
-
- `Esc` stops active runs
|
|
85
|
-
- `Ctrl+Shift+A` opens the agent menu
|
|
86
|
-
- Slash-command menu opens upward as floating overlay
|
|
87
|
-
- Keyboard navigation inside slash-command menu is implemented
|
|
88
|
-
|
|
89
|
-
### 3.3 Transcript and tool rendering
|
|
90
|
-
|
|
91
|
-
- Coalesced assistant message streaming
|
|
92
|
-
- Optimistic user message insertion
|
|
93
|
-
- De-duplication when runtime echoes user chunks
|
|
94
|
-
- Structured tool-call cards
|
|
95
|
-
- Structured permission cards
|
|
96
|
-
- Diff rendering
|
|
97
|
-
- Code/resource rendering
|
|
98
|
-
- Terminal output rendering inside tool cards
|
|
99
|
-
- Path link rendering
|
|
100
|
-
- Running-terminal activity summary
|
|
101
|
-
|
|
102
|
-
### 3.4 Managed terminal flow
|
|
103
|
-
|
|
104
|
-
- ACP tool calls can create managed terminal sessions
|
|
105
|
-
- `Jump in` switches to the real terminal session when still alive
|
|
106
|
-
- Focus-stealing bug after `Jump in` has been fixed
|
|
107
|
-
- Hidden pinned terminals no longer report bogus tiny sizes to the backend
|
|
108
|
-
|
|
109
|
-
### 3.5 Persistence and restore
|
|
110
|
-
|
|
111
|
-
- Agent tab metadata persists on backend
|
|
112
|
-
- Agent config persists on backend
|
|
113
|
-
- Transcript/tool/permission/plan state persists
|
|
114
|
-
- Restore works across backend restart for runtimes that support `loadSession`
|
|
115
|
-
- Restore no longer wrongly penalizes built-in agent availability on startup
|
|
116
|
-
|
|
117
|
-
### 3.6 Usage / status UI
|
|
118
|
-
|
|
119
|
-
- Usage HUD implemented
|
|
120
|
-
- CSS-only expanded HUD layout stabilized
|
|
121
|
-
- Plan panel implemented
|
|
122
|
-
- Completed plan moves into transcript history instead of permanently occupying
|
|
123
|
-
composer-adjacent UI
|
|
124
|
-
- Transcript auto-scroll logic now follows the correct “only pin if already at
|
|
125
|
-
bottom” rule
|
|
126
|
-
|
|
127
|
-
### 3.7 Test tooling
|
|
128
|
-
|
|
129
|
-
- ACP Test Agent supports real slash-command scenarios:
|
|
130
|
-
- `/demo`
|
|
131
|
-
- `/plan`
|
|
132
|
-
- `/diff`
|
|
133
|
-
- `/permission`
|
|
134
|
-
- `/cancel`
|
|
135
|
-
- `/stale`
|
|
136
|
-
- `/order`
|
|
137
|
-
- `/fail`
|
|
138
|
-
- ACP browser smoke covers current UI shape
|
|
139
|
-
- ACP manager tests cover restore, prompt attachments, config, availability, and
|
|
140
|
-
slash commands
|
|
141
|
-
|
|
142
|
-
## 4) Stable Contracts
|
|
143
|
-
|
|
144
|
-
These should now be treated as product contracts, not experiments.
|
|
145
|
-
|
|
146
|
-
- ACP agents are host-scoped.
|
|
147
|
-
- Agent tabs do not require the file tree to be open.
|
|
148
|
-
- Workspace tabs should remain visible if there is any file tab, agent tab, or
|
|
149
|
-
pinned terminal tab.
|
|
150
|
-
- `Jump in` is a management path, not a read-only preview, while the terminal is
|
|
151
|
-
still alive.
|
|
152
|
-
- Internal shell bootstrap commands such as `TABMINAL_SHELL_READY=1` must never
|
|
153
|
-
surface as user notifications.
|
|
154
|
-
- ACP availability should reflect the backend runtime environment, not only the
|
|
155
|
-
developer's interactive shell.
|
|
156
|
-
- On small screens, agent config selectors collapse to icon-only affordances.
|
|
157
|
-
|
|
158
|
-
## 5) Remaining Work
|
|
159
|
-
|
|
160
|
-
This is the actual remaining ACP backlog.
|
|
161
|
-
|
|
162
|
-
### 5.1 Still open
|
|
163
|
-
|
|
164
|
-
#### A) Registry-driven install/setup UX
|
|
165
|
-
|
|
166
|
-
Status: not done
|
|
167
|
-
|
|
168
|
-
Missing:
|
|
169
|
-
|
|
170
|
-
- guided install flow for agents that are unavailable
|
|
171
|
-
- first-class setup UX for installing required CLIs
|
|
172
|
-
- richer host diagnostics for why a definition is unavailable
|
|
173
|
-
|
|
174
|
-
Current state:
|
|
175
|
-
|
|
176
|
-
- availability reasons are shown
|
|
177
|
-
- some config/setup flows exist
|
|
178
|
-
- but this is not yet a complete install-onboarding UX
|
|
179
|
-
|
|
180
|
-
#### B) Explicit TCP ACP runtime support in the UI
|
|
181
|
-
|
|
182
|
-
Status: not done
|
|
183
|
-
|
|
184
|
-
Missing:
|
|
185
|
-
|
|
186
|
-
- user-visible workflow for attaching to TCP ACP servers
|
|
187
|
-
- transport selection UX
|
|
188
|
-
- connection lifecycle UX for non-stdio ACP runtimes
|
|
189
|
-
|
|
190
|
-
Current state:
|
|
191
|
-
|
|
192
|
-
- architecture originally allowed for this direction
|
|
193
|
-
- product currently operates around stdio-launched/local CLI definitions
|
|
194
|
-
|
|
195
|
-
#### C) Dedicated conversation history browser
|
|
196
|
-
|
|
197
|
-
Status: not done
|
|
198
|
-
|
|
199
|
-
Missing:
|
|
200
|
-
|
|
201
|
-
- independent history browser for ACP conversations
|
|
202
|
-
- browsing/searching old conversations outside the current terminal/workspace
|
|
203
|
-
session context
|
|
204
|
-
|
|
205
|
-
Current state:
|
|
206
|
-
|
|
207
|
-
- transcript restores with the tab
|
|
208
|
-
- completed plans archive into the transcript
|
|
209
|
-
- but there is no standalone conversation history surface
|
|
210
|
-
|
|
211
|
-
### 5.2 Nice-to-have follow-up work
|
|
212
|
-
|
|
213
|
-
These are not blockers, but they are logical next ACP improvements.
|
|
214
|
-
|
|
215
|
-
- stronger browser smoke coverage for touch/mobile-only ACP interactions
|
|
216
|
-
- clearer visual distinction between running, attention, and completed agent
|
|
217
|
-
states at scale
|
|
218
|
-
- broader multi-host ACP smoke scenarios
|
|
219
|
-
- richer availability/setup diagnostics in the UI
|
|
220
|
-
|
|
221
|
-
## 6) What Was Originally Deferred But Is Now Done
|
|
222
|
-
|
|
223
|
-
These items were previously listed as deferred and should no longer be treated
|
|
224
|
-
as open backlog:
|
|
225
|
-
|
|
226
|
-
- prompt/file attachments
|
|
227
|
-
- diff rendering in tool outputs
|
|
228
|
-
- code/resource rendering in tool outputs
|
|
229
|
-
- terminal execution transcript UI for ACP tool calls
|
|
230
|
-
|
|
231
|
-
## 7) Test and Verification Status
|
|
232
|
-
|
|
233
|
-
Current ACP verification surface:
|
|
234
|
-
|
|
235
|
-
- `npm run lint`
|
|
236
|
-
- `npm test`
|
|
237
|
-
- `npm run build`
|
|
238
|
-
- browser smoke via
|
|
239
|
-
`/Users/leask/Documents/Tabminal/scripts/acp-browser-smoke.mjs`
|
|
240
|
-
|
|
241
|
-
Recommended ACP manual spot-checks when behavior changes:
|
|
242
|
-
|
|
243
|
-
1. Start with `TABMINAL_ENABLE_TEST_AGENT=1`
|
|
244
|
-
2. Run `/demo`
|
|
245
|
-
3. Verify:
|
|
246
|
-
- agent menu
|
|
247
|
-
- slash-command menu
|
|
248
|
-
- plan panel
|
|
249
|
-
- usage HUD
|
|
250
|
-
- tool call cards
|
|
251
|
-
- managed terminal
|
|
252
|
-
- `Jump in`
|
|
253
|
-
- transcript scroll behavior
|
|
254
|
-
4. Run `/permission`
|
|
255
|
-
5. Run `/cancel`
|
|
256
|
-
6. Reload and verify restore
|
|
257
|
-
|
|
258
|
-
## 8) Recommendation
|
|
259
|
-
|
|
260
|
-
ACP is no longer in “MVP not landed” status.
|
|
261
|
-
It is in “shipped, actively polished, with a short remaining backlog” status.
|
|
262
|
-
|
|
263
|
-
Practical summary:
|
|
264
|
-
|
|
265
|
-
- Core ACP product: done
|
|
266
|
-
- ACP UI polish: largely done
|
|
267
|
-
- ACP infra/test surface: done
|
|
268
|
-
- Remaining strategic work: 3 real items
|
|
269
|
-
|
|
270
|
-
That remaining scope is small enough that this file should stay as a status
|
|
271
|
-
ledger, not a large speculative design doc.
|