@a5c-ai/agent-mux-tui 0.4.0 → 0.4.10-staging.7a8768ec
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 +84 -0
- package/dist/app.d.ts +21 -3
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +385 -67
- package/dist/app.js.map +1 -1
- package/dist/bin/amux-tui.d.ts +0 -1
- package/dist/bin/amux-tui.js +68 -5
- package/dist/bin/amux-tui.js.map +1 -1
- package/dist/bin/runtime.d.ts +31 -0
- package/dist/bin/runtime.d.ts.map +1 -0
- package/dist/bin/runtime.js +78 -0
- package/dist/bin/runtime.js.map +1 -0
- package/dist/command-palette.d.ts +3 -2
- package/dist/command-palette.d.ts.map +1 -1
- package/dist/command-palette.js +14 -7
- package/dist/command-palette.js.map +1 -1
- package/dist/event-stream.d.ts +3 -1
- package/dist/event-stream.d.ts.map +1 -1
- package/dist/event-stream.js +18 -0
- package/dist/event-stream.js.map +1 -1
- package/dist/external-plugins.d.ts +0 -1
- package/dist/external-plugins.d.ts.map +1 -1
- package/dist/external-plugins.js +5 -1
- package/dist/external-plugins.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -2
- package/dist/index.js.map +1 -1
- package/dist/kanban-control-plane.d.ts +44 -0
- package/dist/kanban-control-plane.d.ts.map +1 -0
- package/dist/kanban-control-plane.js +30 -0
- package/dist/kanban-control-plane.js.map +1 -0
- package/dist/layout.d.ts +24 -0
- package/dist/layout.d.ts.map +1 -0
- package/dist/layout.js +64 -0
- package/dist/layout.js.map +1 -0
- package/dist/model-picker.d.ts +4 -2
- package/dist/model-picker.d.ts.map +1 -1
- package/dist/model-picker.js +9 -5
- package/dist/model-picker.js.map +1 -1
- package/dist/plugin.d.ts +28 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js.map +1 -1
- package/dist/plugins/adapters-view.d.ts +0 -1
- package/dist/plugins/{runs-view.d.ts → agents-view.d.ts} +0 -1
- package/dist/plugins/agents-view.d.ts.map +1 -0
- package/dist/plugins/agents-view.js +234 -0
- package/dist/plugins/agents-view.js.map +1 -0
- package/dist/plugins/approval.d.ts +0 -1
- package/dist/plugins/auth-view.d.ts +0 -1
- package/dist/plugins/auth-view.js +1 -1
- package/dist/plugins/chat-view.d.ts +0 -1
- package/dist/plugins/chat-view.d.ts.map +1 -1
- package/dist/plugins/chat-view.js +29 -4
- package/dist/plugins/chat-view.js.map +1 -1
- package/dist/plugins/config-view.d.ts +0 -1
- package/dist/plugins/config-view.js +1 -1
- package/dist/plugins/control.d.ts +0 -1
- package/dist/plugins/cost-alerts.d.ts +0 -1
- package/dist/plugins/cost-view.d.ts +0 -1
- package/dist/plugins/cost.d.ts +0 -1
- package/dist/plugins/diff.d.ts +0 -1
- package/dist/plugins/diff.js.map +1 -1
- package/dist/plugins/doctor-view.d.ts +0 -1
- package/dist/plugins/fallback.d.ts +0 -1
- package/dist/plugins/file-ops.d.ts +0 -1
- package/dist/plugins/help-view.d.ts +0 -1
- package/dist/plugins/help-view.d.ts.map +1 -1
- package/dist/plugins/help-view.js +13 -3
- package/dist/plugins/help-view.js.map +1 -1
- package/dist/plugins/hooks-view.d.ts +2 -0
- package/dist/plugins/hooks-view.d.ts.map +1 -0
- package/dist/plugins/hooks-view.js +186 -0
- package/dist/plugins/hooks-view.js.map +1 -0
- package/dist/plugins/image.d.ts +0 -1
- package/dist/plugins/kanban-view.d.ts +4 -0
- package/dist/plugins/kanban-view.d.ts.map +1 -0
- package/dist/plugins/kanban-view.js +480 -0
- package/dist/plugins/kanban-view.js.map +1 -0
- package/dist/plugins/lifecycle.d.ts +0 -1
- package/dist/plugins/mcp-view.d.ts +0 -1
- package/dist/plugins/mcp-view.d.ts.map +1 -1
- package/dist/plugins/mcp-view.js +7 -7
- package/dist/plugins/mcp-view.js.map +1 -1
- package/dist/plugins/mcp.d.ts +0 -1
- package/dist/plugins/models-view.d.ts +0 -1
- package/dist/plugins/models-view.d.ts.map +1 -1
- package/dist/plugins/models-view.js +10 -4
- package/dist/plugins/models-view.js.map +1 -1
- package/dist/plugins/observability-view.d.ts +22 -0
- package/dist/plugins/observability-view.d.ts.map +1 -0
- package/dist/plugins/observability-view.js +103 -0
- package/dist/plugins/observability-view.js.map +1 -0
- package/dist/plugins/plugin-skill.d.ts +0 -1
- package/dist/plugins/plugins-view.d.ts +0 -1
- package/dist/plugins/plugins-view.d.ts.map +1 -1
- package/dist/plugins/plugins-view.js +4 -3
- package/dist/plugins/plugins-view.js.map +1 -1
- package/dist/plugins/profiles-view.d.ts +0 -1
- package/dist/plugins/session-detail-view.d.ts +1 -2
- package/dist/plugins/session-detail-view.d.ts.map +1 -1
- package/dist/plugins/session-detail-view.js +19 -14
- package/dist/plugins/session-detail-view.js.map +1 -1
- package/dist/plugins/session-lifecycle.d.ts +0 -1
- package/dist/plugins/sessions-view.d.ts +0 -1
- package/dist/plugins/sessions-view.d.ts.map +1 -1
- package/dist/plugins/sessions-view.js +47 -21
- package/dist/plugins/sessions-view.js.map +1 -1
- package/dist/plugins/shell.d.ts +0 -1
- package/dist/plugins/skills-view.d.ts +2 -0
- package/dist/plugins/skills-view.d.ts.map +1 -0
- package/dist/plugins/skills-view.js +234 -0
- package/dist/plugins/skills-view.js.map +1 -0
- package/dist/plugins/subagent.d.ts +0 -1
- package/dist/plugins/text-delta.d.ts +0 -1
- package/dist/plugins/tool-call.d.ts +0 -1
- package/dist/plugins/tool-call.d.ts.map +1 -1
- package/dist/plugins/tool-call.js +103 -4
- package/dist/plugins/tool-call.js.map +1 -1
- package/dist/plugins/workspaces-view.d.ts +4 -0
- package/dist/plugins/workspaces-view.d.ts.map +1 -0
- package/dist/plugins/workspaces-view.js +382 -0
- package/dist/plugins/workspaces-view.js.map +1 -0
- package/dist/prompt-history-store.d.ts +0 -1
- package/dist/prompt-input.d.ts +30 -2
- package/dist/prompt-input.d.ts.map +1 -1
- package/dist/prompt-input.js +200 -10
- package/dist/prompt-input.js.map +1 -1
- package/dist/registry.d.ts +2 -2
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +2 -1
- package/dist/registry.js.map +1 -1
- package/dist/session-dispatch.d.ts +35 -0
- package/dist/session-dispatch.d.ts.map +1 -0
- package/dist/session-dispatch.js +129 -0
- package/dist/session-dispatch.js.map +1 -0
- package/package.json +15 -9
- package/specs/kanban-workspaces-spec.md +293 -0
- package/specs/kanban-workspaces-subtasks.md +180 -0
- package/dist/plugins/runs-view.d.ts.map +0 -1
- package/dist/plugins/runs-view.js +0 -75
- package/dist/plugins/runs-view.js.map +0 -1
package/README.md
CHANGED
|
@@ -12,6 +12,38 @@ npm i -g @a5c-ai/agent-mux-tui
|
|
|
12
12
|
amux-tui
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
+
## Development
|
|
16
|
+
|
|
17
|
+
Package-level `build` and `test` scripts are routed through the repo-root
|
|
18
|
+
`scripts/agent-mux-build.cjs` helper so `@a5c-ai/agent-mux-tui` runs with its
|
|
19
|
+
agent-mux prerequisites built in dependency order and its tests executed from
|
|
20
|
+
the repo root. Use `npm run build:local --workspace=@a5c-ai/agent-mux-tui`
|
|
21
|
+
when you only want the package-local TypeScript compile.
|
|
22
|
+
|
|
23
|
+
Run `npm run verify:release --workspace=@a5c-ai/agent-mux-tui` after a build to
|
|
24
|
+
confirm the packed package surface still includes the README-linked kanban/workspaces
|
|
25
|
+
planning artifacts.
|
|
26
|
+
|
|
27
|
+
## Kanban/workspaces surface
|
|
28
|
+
|
|
29
|
+
The package now ships first-phase `kanban` and `workspaces` views backed by the
|
|
30
|
+
shared kanban/workspace control plane.
|
|
31
|
+
|
|
32
|
+
- Runtime today: `kanban` view (list-first issue browsing, issue detail,
|
|
33
|
+
keyboard-driven backlog actions through an injected control plane, and linked
|
|
34
|
+
workspace/session handoff)
|
|
35
|
+
- Runtime today: `workspaces` view (workspace inventory, linked issue/session/run
|
|
36
|
+
context, lifecycle actions routed through the injected control plane, and
|
|
37
|
+
issue/session handoff back into the rest of the TUI)
|
|
38
|
+
|
|
39
|
+
- Spec: [`specs/kanban-workspaces-spec.md`](specs/kanban-workspaces-spec.md)
|
|
40
|
+
- Backlog decomposition: [`specs/kanban-workspaces-subtasks.md`](specs/kanban-workspaces-subtasks.md)
|
|
41
|
+
- Cross-package design note:
|
|
42
|
+
[`../../docs/agent-mux/archive/design/20-tui-kanban-workspaces.md`](../../docs/agent-mux/archive/design/20-tui-kanban-workspaces.md)
|
|
43
|
+
|
|
44
|
+
The planning documents remain useful design references for follow-on expansion
|
|
45
|
+
of both surfaces.
|
|
46
|
+
|
|
15
47
|
## Writing a plugin
|
|
16
48
|
|
|
17
49
|
```ts
|
|
@@ -69,3 +101,55 @@ Events from the resulting `client.run()` are pushed into the shared
|
|
|
69
101
|
The built-in plugins (`text-delta`, `thinking-delta`, `tool-call`,
|
|
70
102
|
`tool-error`, `cost`, `chat-view`, `sessions-view`, `fallback`) are all
|
|
71
103
|
implemented through these same extension points — use them as references.
|
|
104
|
+
|
|
105
|
+
The logs / observability view is part of the supported built-in surface. Press
|
|
106
|
+
`l` to open it. The metrics header aggregates the full buffered `EventStream`,
|
|
107
|
+
the global `/` filter only narrows the visible log rows, and pressing `e`
|
|
108
|
+
exports the full buffered stream to `session-log-<timestamp>.json` in the
|
|
109
|
+
current working directory.
|
|
110
|
+
|
|
111
|
+
## View hotkeys
|
|
112
|
+
|
|
113
|
+
| Key | View | Purpose |
|
|
114
|
+
|-----|------------|-----------------------------------------------|
|
|
115
|
+
| `1` | chat | streaming run output + filter |
|
|
116
|
+
| `2` | sessions | session list (press `d` to inspect + export) |
|
|
117
|
+
| `3` | cost | cost/usage summary |
|
|
118
|
+
| `4` | adapters | discovered adapters |
|
|
119
|
+
| `5` | models | model registry per adapter |
|
|
120
|
+
| `6` | profiles | run-options profiles |
|
|
121
|
+
| `7` | plugins | native plugins per adapter |
|
|
122
|
+
| `8` | kanban | backlog/board browsing + issue actions |
|
|
123
|
+
| `W` | workspaces | workspace lifecycle inventory + actions |
|
|
124
|
+
| `9` | help | keybindings + tips |
|
|
125
|
+
| `0` | mcp | registered MCP servers |
|
|
126
|
+
| `-` | doctor | capability matrix / diagnostics |
|
|
127
|
+
| `l` | logs | observability metrics + filtered log stream |
|
|
128
|
+
| `A` | auth | auth status per adapter |
|
|
129
|
+
| `C` | config | config view |
|
|
130
|
+
| `K` | skills | installed skills (d: delete, r: refresh) |
|
|
131
|
+
| `G` | agents | installed sub-agents (d: delete, r: refresh) |
|
|
132
|
+
| `H` | hooks | registered hooks (d: remove, r: refresh) |
|
|
133
|
+
|
|
134
|
+
Global: chat composer auto-focuses in `chat`; `Esc` temporarily dismisses it;
|
|
135
|
+
`/` filter, `:` / Ctrl-K palette, `m` model picker, `N` agent picker, `P`
|
|
136
|
+
profile picker, `i` interrupt, `y`/`n` approval, `q` quit.
|
|
137
|
+
|
|
138
|
+
Inside `kanban`, press `w` to jump to the linked workspace for the selected
|
|
139
|
+
issue. Inside `workspaces`, press `g` to jump back to the linked issue. If you
|
|
140
|
+
open `session-detail` from either view, `b`/`Esc` returns to the originating
|
|
141
|
+
surface instead of always falling back to `sessions`.
|
|
142
|
+
|
|
143
|
+
## Logs / Observability View
|
|
144
|
+
|
|
145
|
+
The `logs` view is a built-in tab registered as `builtin:observability-view`.
|
|
146
|
+
|
|
147
|
+
- Hotkey: `l`
|
|
148
|
+
- Purpose: show aggregated tokens, cost, latency, error count, and tool-call
|
|
149
|
+
count for the buffered event stream.
|
|
150
|
+
- Filtering: the global `/` filter applies to the log rows in this view,
|
|
151
|
+
including `type:<prefix>` filters. Metrics continue to reflect the full
|
|
152
|
+
buffered stream so you can inspect a subset without losing session totals.
|
|
153
|
+
- Export: press `e` while the view is active to write the full buffered event
|
|
154
|
+
stream as pretty-printed JSON to `session-log-<timestamp>.json` in the
|
|
155
|
+
current working directory.
|
package/dist/app.d.ts
CHANGED
|
@@ -1,9 +1,27 @@
|
|
|
1
|
-
import type { AgentMuxClient } from '@a5c-ai/agent-mux';
|
|
1
|
+
import type { AgentMuxClient, DeferredPromptTarget, RunHandle } from '@a5c-ai/agent-mux';
|
|
2
2
|
import type { TuiPlugin } from './plugin.js';
|
|
3
|
+
import type { KanbanControlPlane } from './kanban-control-plane.js';
|
|
3
4
|
export interface AppProps {
|
|
4
5
|
client: AgentMuxClient;
|
|
5
6
|
plugins: TuiPlugin[];
|
|
7
|
+
kanban?: KanbanControlPlane;
|
|
6
8
|
defaultAgent?: string;
|
|
9
|
+
initialViewId?: string;
|
|
10
|
+
disableChatAutoPrompt?: boolean;
|
|
7
11
|
}
|
|
8
|
-
|
|
9
|
-
|
|
12
|
+
type ActiveRunCommand = {
|
|
13
|
+
kind: 'send';
|
|
14
|
+
prompt: string;
|
|
15
|
+
} | {
|
|
16
|
+
kind: 'queue';
|
|
17
|
+
prompt: string;
|
|
18
|
+
when: DeferredPromptTarget;
|
|
19
|
+
} | {
|
|
20
|
+
kind: 'steer';
|
|
21
|
+
prompt: string;
|
|
22
|
+
when: DeferredPromptTarget;
|
|
23
|
+
};
|
|
24
|
+
export declare function parseActiveRunCommand(prompt: string): ActiveRunCommand | null;
|
|
25
|
+
export declare function dispatchPromptToActiveRun(handle: RunHandle, prompt: string): Promise<string>;
|
|
26
|
+
export declare function App({ client, plugins, kanban, defaultAgent, initialViewId, disableChatAutoPrompt, }: AppProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
export {};
|
package/dist/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAc,oBAAoB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAErG,OAAO,KAAK,EAAE,SAAS,EAA+B,MAAM,aAAa,CAAC;AAa1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,KAAK,gBAAgB,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAA;CAAE,CAAC;AAElE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAc7E;AAeD,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAelG;AA6BD,wBAAgB,GAAG,CAAC,EAClB,MAAM,EACN,OAAO,EACP,MAAM,EACN,YAAuB,EACvB,aAAsB,EACtB,qBAA6B,GAC9B,EAAE,QAAQ,2CA4rBV"}
|