feat: workspace aliases, tab groups of split panes, native path picker (v2.1.0)

- /api/workspaces and `agenthub workspace(s)` / `--workspace` as aliases of
  /api/lanes and `agenthub lanes` / `--lane`; old names print one stderr note.
  REPL `help lanes|workspace|workspaces` resolves through the aliases.
- A workspace holds up to ten sessions (slots 0-9); every console tab is a
  group of 1-4 split panes (PaneGroups, agenthub.workspace.paneLayout);
  parseGroups keeps the stored active tab when an earlier one is dropped.
- Browse button beside path fields: POST /api/lanes/pick-path opens the OS
  picker on the server's desktop — loopback only and no forwarding header
  (EREMOTE), a display failure is ENODIALOG not a Cancel, the dialog is
  killed when the request closes, a folder field falls back to the in-app
  browser on any failure.
- Changes rail counts chip, image viewer (/git/raw), status bar session
  counts and per-day cost (`date=` on /api/pricing/cost).
- /agenthub-open and /agenthub-doctor run from the INSTALLED build
  (supersededBy), doctor offers fixes behind two confirmations; plugin-open
  treats a locked bootstrap as non-fatal.
- New-terminal shell waits for the first attach (issue #55).
- repo-onboarding / debug-live-issue skills removed.
- OpenAPI: pick-path, lane/date on /pricing/cost, tool on /run/history,
  /api/workspaces mount.
This commit is contained in:
2026-10-06 11:31:26 +07:00
parent c067abc68f
commit 6c605849d8
104 changed files with 3478 additions and 1396 deletions
-23
View File
@@ -1,23 +0,0 @@
---
name: debug-live-issue
description: Debug production-like issues in this repository with disciplined evidence gathering. Use when fixing failing workflows, regressions, flaky behavior, or data inconsistencies across hooks, API, DB, websocket, and UI.
---
# Debug Live Issue
Use this workflow for incident-style debugging.
## Steps
- Capture symptom, expected behavior, and reproducible path.
- Isolate subsystem first: hook ingestion, API route, DB state, websocket, or UI rendering.
- Reproduce with minimal surface area.
- Prove root cause before changing code.
- Apply minimal fix and re-verify.
## Evidence standards
- Prefer direct logs, API responses, DB state checks, and deterministic repro steps.
- Avoid speculative fixes without root-cause evidence.
- If not fully reproducible, state uncertainty and strongest hypothesis.
## References
- Investigation template: `references/investigation-template.md`
@@ -1,32 +0,0 @@
# Investigation Template
## Problem statement
- Symptom:
- Expected behavior:
- First observed:
- Scope:
## Reproduction
- Preconditions:
- Exact steps:
- Actual result:
## Evidence
- Logs:
- API responses:
- Database observations:
- Websocket behavior:
- UI behavior:
## Root cause
- Confirmed cause:
- Why it happens:
## Fix
- Change summary:
- Why this fix is minimal and safe:
## Verification
- Commands/tests run:
- Manual verification:
- Residual risk:
-24
View File
@@ -1,24 +0,0 @@
---
name: repo-onboarding
description: Onboard quickly to this repository. Use when asked to understand architecture, locate ownership, choose the right module, or identify the correct commands and verification strategy before coding.
---
# Repo Onboarding
Use this workflow when a task begins with discovery.
## Steps
- Read `README.md` and `ARCHITECTURE.md` for system-level context.
- Identify target layer:
- `server/` for API, hooks, DB, websocket
- `client/` for UI and routing
- Select the smallest set of files required to answer the task.
- Confirm verification commands before implementation.
## Verification defaults
- Backend: `npm run test:server`
- Frontend: `npm run test:client`
## References
- Module map: `references/module-map.md`
- Command map: `references/command-map.md`
@@ -1,13 +0,0 @@
# Command Map
## Root commands
- `npm run setup`
- `npm run dev`
- `npm run build`
- `npm start`
- `npm run test:server`
- `npm run test:client`
- `npm run install-hooks`
- `npm run import-history`
- `npm run clear-data`
@@ -1,15 +0,0 @@
# Module Map
## Backend
- `server/index.js`: app composition, startup behavior, periodic maintenance.
- `server/db.js`: schema and prepared statement ownership.
- `server/routes/*.js`: endpoint contracts by domain.
- `server/websocket.js`: WS lifecycle and broadcast behavior.
## Frontend
- `client/src/pages/`: route-level screens.
- `client/src/components/`: reusable UI building blocks.
- `client/src/lib/api.ts`: client API access patterns.
- `client/src/hooks/useWebSocket.ts`: live update pipeline.
## MCP