adfcd2e602
- box passkey [show|fetch] (+ muse passkey): documents VM-only passkey (/srv/box/passkey.txt, fallback /etc/netvm/passkey.txt on 34.139.37.135), probes VM over SSH with graceful fallback; --json supported. No secrets on bl. - approvals: request_key_approval / check_node_key_request; KEY_APPROVAL status surfaced in `box approvals check`; allow/deny resolve + audit to box-ctl.jsonl; never auto-approved. New `box approvals request-key <node> --reason`. - box lookup (summary|fleet|threads|unread|approvals|key|docs) and docs-lookup engine with lookup_internal/ database (docs_internal symlink). - muse-tmux: non-TTY attach falls back to scrollback capture; prune NameError fix. - box/muse passthrough for tmux/muse/docs; thread list/view alias + prefix resolve. - Docs: AGENTS.md, AGENT-TOOLING.md, BOX-WEB-SURFACE-GUIDE.md, README. - Tests: key-approval + passkey tests; sync stale sidechat UUIDs and manifest name. - .gitignore runtime trackers (subagent-sessions, conversation-nudge-tracker).
4.0 KiB
4.0 KiB
Assistive Surfaces Reference — box.muse-dev.online
Box is the main surface. All operator work goes through Box (
box.muse-dev.online). The web UI,boxCLI, and agents share the same API endpoints. No UI-only powers.
This guide provides autonomous agents and operators with detailed maps of the visual DOM, interactive controls, API backends, and assistive interaction recipes for box.muse-dev.online.
1. Global Layout & Authentication
- Production URL:
https://box.muse-dev.online/ - Google Cloud VM:
34.139.37.135 - Authoritative Compute Host:
bl(100.123.153.75) - Operator PIN:
3128(establishesops_sessioncookie viaPOST /api/ops/login) - Agent Authentication: Header
Authorization: Bearer <operator-token>or SSH-keygen signature.
Layout Wireframe
+----------------------------------------------------------------------------------+
| [BOX] Fleet Console box.muse-dev.online ● [pulse] [</> API] [◐ theme] |
+----------------------------------------------------------------------------------+
| [Fleet Pulse] [DMs & Work Orders (N)] [Timers & Jobs] [Loop & Strategy (N)]|
+----------------------------------------------------------------------------------+
| |
| <Active Pane Content: Cards / Tables / Modals / Curldrawer> |
| |
+----------------------------------------------------------------------------------+
2. Views & Navigation Map
2.1 Fleet Pulse (#tab-dashboard)
- Tab Button:
.tab-btn[data-tab="dashboard"] - Key Selectors:
#fleet-grid: Grid container for node cards..node-card: Card representing an agent (muse,pip,646,opm)..node-badge: Status badge (UP,WARN,DOWN).#fleet-pulse: Global heartbeat animation.
- REST API:
GET /api/box/fleet- Returns array of
{ node, netns, peer_ip, cdp_port, proc_alive, title, latency_ms }.
2.2 DMs & Work Orders (#tab-dms)
- Tab Button:
.tab-btn[data-tab="dms"] - Key Selectors:
#dms-table: Log stream table.#dms-tbody: Dynamic row container.#filter-search: Search text filter input..filter-agent-chip: Filter by agent (all,super,muse,pip,646,opm)..filter-kind-chip: Filter by message kind (all,workorder,ack,chat).
- REST API:
GET /api/box/dm/log?limit=50POST /api/box/dm/send
2.3 Timers & Scheduled Jobs (#tab-jobs)
- Tab Button:
.tab-btn[data-tab="jobs"] - Key Selectors:
#jobs-table: Systemd user timer table..btn-trigger: Direct hot-trigger button (▶ Run)..badge-active: Active/inactive state indicator.
- REST API:
GET /api/box/timersPOST /api/box/jobs/{name}/trigger(Returns202 Acceptedimmediately).
2.4 Loop & Strategy Matrix (#tab-loops)
- Tab Button:
.tab-btn[data-tab="loops"] - Key Selectors:
#loop-health-badge: Real-time health verdict (e.g.HEALTHY (89%)).#loops-grid: Cards for active open loops and deadlines.#strat-table: Table of strategy escalation rules.#vars-table: Interactive table of runtime variables with inline edit buttons.
- REST API:
GET /api/box/loop/healthGET /api/box/loop/statusGET /api/box/loop/varsPOST /api/box/loop/vars
3. Assistive Interaction Recipes
Recipe A: Querying Fleet Health via CLI
# High level overview
box fleet
# Directly query docs database for surface selectors
box docs surfaces dashboard
Recipe B: Hot-Triggering a Job via API
# Asynchronously trigger job
curl -sk -X POST https://box.muse-dev.online/api/box/jobs/box-http-health/trigger
Recipe C: Resolving a Blocked Modal Dialog
# Check if any agent is held on an approval dialog
box approvals check
# Inspect dialog details
box approvals inspect pip
# Approve request
box approvals allow pip