@rosthq/cli 0.5.14 → 0.5.15
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/dist/index.js +44 -10
- package/dist/index.js.map +2 -2
- package/dist/operations.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -41752,7 +41752,7 @@ When operating through CLI or MCP, create fewer seats first and ask for confirma
|
|
|
41752
41752
|
order: 30,
|
|
41753
41753
|
title: "Charter design playbook",
|
|
41754
41754
|
summary: "How to draft strong Charters that work for human, agent, and hybrid seats.",
|
|
41755
|
-
version: "2026-06-
|
|
41755
|
+
version: "2026-06-20.1",
|
|
41756
41756
|
public: true,
|
|
41757
41757
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
41758
41758
|
stages: ["charter_design", "staffing"],
|
|
@@ -41809,6 +41809,8 @@ List and read first, then draft, then leave activation to a human.
|
|
|
41809
41809
|
- Draft one: \`{{cli}} command charter.draft --json '{"seat_id":"<seat-id>"}'\` (scope: seat or tenant-admin); draft every eligible seat with \`charter.draft_all\` / \`rost_draft_all_charters\`. Draft commands are not gated \u2014 they produce a draft \`charter_version_id\`. \`charter.draft_all\` only drafts **active** seats and returns the real result: \`{ drafted, skipped, draft_ids, skipped_seats: [{ seat_id, reason }] }\` where \`reason\` is \`seat_not_active\` (the seat is still draft/vacant \u2014 confirm it first) or \`charter_exists\` (it already has a draft/active Charter). Read \`skipped_seats\` to see why a freshly-built graph drafted fewer Charters than it has seats.
|
|
41810
41810
|
- Edit a draft: \`charter.update_draft\` / \`rost_update_charter_draft\` with the \`charter_version_id\` and the new \`doc\`.
|
|
41811
41811
|
|
|
41812
|
+
In the app, \`/charters\` is both a drafting queue and a governance library. It shows active Charters, draft amendments, seats missing Charters, unsigned manifests, and steward-review gaps. Opening a live Charter is a review mode: read the active version, inspect its governance state, and open an amendment draft when the job needs to change. Active Charter content is never silently edited in place.
|
|
41813
|
+
|
|
41812
41814
|
## When to stop for confirmation
|
|
41813
41815
|
|
|
41814
41816
|
\`charter.approve\`, \`charter.skip\`, \`charter.apply_seat_type_recommendation\`, and \`charter.sign_manifest\` are \`human_required\`. Over MCP \`rost_approve_charter\` returns a pending confirmation, not an activation. Approving a Charter, signing a permission manifest, or expanding authority is a human act recorded against \`decided_by\`. An agent prepares the draft and surfaces the approve link; it does not approve. See the confirmations guide.
|
|
@@ -42121,7 +42123,7 @@ Decisions should be recorded as human decisions. Handoffs should attach to seats
|
|
|
42121
42123
|
order: 45,
|
|
42122
42124
|
title: "How agents work",
|
|
42123
42125
|
summary: "How {{brand}} agents operate inside seats, use Charters, report work, and escalate beyond authority.",
|
|
42124
|
-
version: "2026-06-20.
|
|
42126
|
+
version: "2026-06-20.3",
|
|
42125
42127
|
public: true,
|
|
42126
42128
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
42127
42129
|
stages: ["staffing", "operating_rhythm"],
|
|
@@ -42130,6 +42132,7 @@ Decisions should be recorded as human decisions. Handoffs should attach to seats
|
|
|
42130
42132
|
"agent.go_live",
|
|
42131
42133
|
"agent.status",
|
|
42132
42134
|
"agent.list_fleet",
|
|
42135
|
+
"agent.fleet_digest",
|
|
42133
42136
|
"agent_setup.get",
|
|
42134
42137
|
"agent_setup.update",
|
|
42135
42138
|
"agent.decommission",
|
|
@@ -42204,13 +42207,17 @@ The model is only ever offered the tools the seat's manifest grants \u2014 a den
|
|
|
42204
42207
|
3. The action runs bound to the seat's vaulted credential. The secret stays inside the call and never reaches the result, the audit row, the logs, or the model.
|
|
42205
42208
|
4. Every call \u2014 allowed, denied, escalated, or invalid \u2014 writes a tool-call audit row you can review.
|
|
42206
42209
|
|
|
42210
|
+
When operational evidence appears in the app, it is formatted for review instead of shown as primary raw JSON. Tool arguments, escalation evidence, status evidence, Sync inputs, and task context are summarized as labeled fields; secret-looking values stay redacted. Raw identifiers remain available only as supporting detail when they help an operator trace the record.
|
|
42211
|
+
|
|
42207
42212
|
Provider requests carry only the model payload the runtime needs; run attribution, tenant attribution, usage, and cost are recorded in {{brand}} audit tables after the call, not sent as custom provider metadata.
|
|
42208
42213
|
|
|
42209
42214
|
Before an agent goes live, the sandbox dry run rehearses this against fake data and returns a per-tool preview: for each tool the agent would touch, whether it would run it, would be blocked, or would escalate \u2014 no external side effect. Review that preview before you approve go-live.
|
|
42210
42215
|
|
|
42211
42216
|
## What humans should review
|
|
42212
42217
|
|
|
42213
|
-
|
|
42218
|
+
The Agents page shows fleet health first: live state, recent runs, failed runs, open held actions, last activity, cost, and the next operator action. A seat's Trust Card drills into the same facts: run history, one-run detail, tool-call outcomes, product-visible errors, transcript references, and held confirmations or escalations. Open confirmations stay visible until they are decided or expire, even when they are older than the default activity window. Approving or rejecting a held confirmation from the seat page is scoped to that seat; rejection can include a short reason.
|
|
42219
|
+
|
|
42220
|
+
Review the first dry runs, fleet overview, tool-call audit rows, escalations, and Signal impact. The fleet view at \`/agents\` shows every staffed agent seat at a glance; the agent-native equivalents are \`{{cli}} command agent.list_fleet --json '{}'\` / \`rost_list_agent_fleet\` for the compact overview, and \`{{cli}} agent fleet-digest --json\` / \`agent.fleet_digest\` / \`rost_get_dogfood_fleet_health_digest\` for the daily dogfood evidence bundle. The digest returns live/idle state, 24h/7d turns, 7d/30d spend, recent failed runs, unresolved product errors, failed notifications, and a next action per seat. Fleet real-turn counts use the same seat-run association as \`agent.list_runs\`, filtered to real runs. Scheduled agents are checked in rounded five-minute buckets, so a minute-level cron inside the bucket queues one work order for that bucket rather than one order per minute. Sandbox dry runs do not count as real turns. If the agent is repeatedly blocked, revise the Charter or split the seat. If the agent is taking too much judgment, narrow its autonomous scope.`
|
|
42214
42221
|
},
|
|
42215
42222
|
{
|
|
42216
42223
|
slug: "tool-access-and-vault",
|
|
@@ -42300,7 +42307,7 @@ There is exactly one way to give a connected tool its credential, and it is the
|
|
|
42300
42307
|
order: 47,
|
|
42301
42308
|
title: "Available tools guide",
|
|
42302
42309
|
summary: "How to think about tool categories available to seats and what each category should be used for.",
|
|
42303
|
-
version: "2026-06-20.
|
|
42310
|
+
version: "2026-06-20.3",
|
|
42304
42311
|
public: true,
|
|
42305
42312
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
42306
42313
|
stages: ["staffing"],
|
|
@@ -42349,7 +42356,7 @@ External connectors are being rolled out provider by provider, conservatively (r
|
|
|
42349
42356
|
order: 48,
|
|
42350
42357
|
title: "CLI and MCP installation guide",
|
|
42351
42358
|
summary: "Install the public CLI, register remote token-backed MCP clients, and find the full command and tool catalog.",
|
|
42352
|
-
version: "2026-06-20.
|
|
42359
|
+
version: "2026-06-20.8",
|
|
42353
42360
|
public: true,
|
|
42354
42361
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
42355
42362
|
stages: ["company_setup", "staffing"],
|
|
@@ -42385,6 +42392,7 @@ External connectors are being rolled out provider by provider, conservatively (r
|
|
|
42385
42392
|
"agent.go_live",
|
|
42386
42393
|
"agent.status",
|
|
42387
42394
|
"agent.list_fleet",
|
|
42395
|
+
"agent.fleet_digest",
|
|
42388
42396
|
"agent.get_run",
|
|
42389
42397
|
"agent.list_runs",
|
|
42390
42398
|
"agent.list_tool_calls"
|
|
@@ -42764,7 +42772,7 @@ These ergonomic wrappers (including the \`{{cli}} agent\` group) require **{{cli
|
|
|
42764
42772
|
| \`{{cli}} integration list|status|test\` | \`integration.list\`, \`integration.status\`, \`integration.test\` | List connector metadata, read one connector's health, and run the provider-specific connection test without exposing credentials. | Tenant | \`{{cli}} integration test --provider google --json\` |
|
|
42765
42773
|
| \`{{cli}} settings get|update\` | \`settings.get\`, \`settings.update\` | Read tenant settings; update budget caps. | Tenant | \`{{cli}} settings get --json\` |
|
|
42766
42774
|
| \`{{cli}} member invite|update|remove\` | \`member.invite\`, \`member.update\`, \`member.remove\` | Manage tenant members. | Tenant | \`{{cli}} member invite --email ops@example.com --role member\` |
|
|
42767
|
-
| \`{{cli}} agent templates|create|setup|tools|dry-run|go-live|status|run-now|get-run|show\` | \`agent_template.list\`, \`agent.create_from_template\`, \`agent.create_custom\`, \`agent_setup.get\`, \`agent_setup.update\`, \`agent.configure_tools\`, \`agent.run_dry_run\`, \`agent.go_live\`, \`agent.status\`, \`agent.run_now\`, \`agent.get_run\`, \`agent.show_markdown\` | Run the full agent setup and operation flow: list templates, create a draft from a template or guided custom answers (with \`--model\` and \`--effort\`), read or answer setup state, connect or decline tools, dry-run, go live, run on demand, read one run's transcript/error diagnostics, and show a markdown readout. Create and go-live stop at human gates; the dry-run is ungated by human approval but requires a signed manifest first. | Tenant and seat | \`{{cli}} agent
|
|
42775
|
+
| \`{{cli}} agent templates|create|setup|tools|dry-run|go-live|status|run-now|fleet-digest|get-run|show\` | \`agent_template.list\`, \`agent.create_from_template\`, \`agent.create_custom\`, \`agent_setup.get\`, \`agent_setup.update\`, \`agent.configure_tools\`, \`agent.run_dry_run\`, \`agent.go_live\`, \`agent.status\`, \`agent.run_now\`, \`agent.fleet_digest\`, \`agent.get_run\`, \`agent.show_markdown\` | Run the full agent setup and operation flow: list templates, create a draft from a template or guided custom answers (with \`--model\` and \`--effort\`), read or answer setup state, connect or decline tools, dry-run, go live, run on demand, capture the fleet-health digest, read one run's transcript/error diagnostics, and show a markdown readout. Create and go-live stop at human gates; the dry-run is ungated by human approval but requires a signed manifest first. | Tenant and seat | \`{{cli}} agent fleet-digest --json\` |
|
|
42768
42776
|
| \`{{cli}} tools list\` | \`tool.catalog\` | List the discoverable tool catalog the builder reads (id, scope tiers, credential requirement, access policy, and execution-boundary guidance). | Tenant | \`{{cli}} tools list --json\` |
|
|
42769
42777
|
| \`{{cli}} model list\` | \`model.catalog\` | List guided model tiers with recommendations, token prices, cost bands, best-fit work, and model ids for \`--model\`. | Tenant | \`{{cli}} model list --json\` |
|
|
42770
42778
|
| \`{{cli}} compass show\` | \`compass.show_markdown\` | Render the current Compass as a clean markdown card for review. | Tenant | \`{{cli}} compass show --markdown\` |
|
|
@@ -42864,6 +42872,7 @@ Several rows here are seat-operating commands (\`task.create\`, the \`signal.*\`
|
|
|
42864
42872
|
| \`rost_list_compass_gaps\` | \`compass.list_gaps\` | List unanswered and answered Compass context gaps. | Tenant | Call with \`{}\` before answering gaps. |
|
|
42865
42873
|
| \`rost_get_agent_status\` | \`agent.status\` | Read agent lane, live state, steward chain, dry-run result, Runner availability. | Seat or tenant-admin | Call with \`{"seat_id":"<seat-id>"}\`. |
|
|
42866
42874
|
| \`rost_list_agent_fleet\` | \`agent.list_fleet\` | Read every staffed agent seat at once: lane, live state, last real turn, 24h/7d real turns, measurable status, escalations, and 7-day spend. | Tenant | Call with \`{}\`; counts use the same seat-run association as \`agent.list_runs\`, with sandbox dry runs excluded from real turns. |
|
|
42875
|
+
| \`rost_get_dogfood_fleet_health_digest\` | \`agent.fleet_digest\` | Capture the daily dogfood fleet-health digest: live/idle state, 24h/7d turns, spend, recent failed runs, unresolved errors, failed notifications, and next actions. | Tenant | Call with \`{}\`; optional \`window_hours\` bounds recent failed-run evidence, while \`error_limit\` caps linked evidence per seat. |
|
|
42867
42876
|
| \`rost_run_agent_now\` | \`agent.run_now\` | Queue an immediate run for a live staffed agent without changing its saved schedule; cloud lane dispatches to the executor and runner lane queues for the paired runner. | Tenant | Call with \`{"seat_id":"<seat-id>"}\`. |
|
|
42868
42877
|
| \`rost_list_agent_runs\` | \`agent.list_runs\` | Read a seat's agent run history (status, lane, model, cost, per-run tool-call and guard-held counts) plus the seat's run/tool-call rollup including held-action count. | Seat or tenant-admin | Call with \`{"seat_id":"<seat-id>"}\`; pass \`limit\` for a deeper window. |
|
|
42869
42878
|
| \`rost_get_agent_run_diagnostics\` | \`agent.get_run\` | Read one run's diagnostic record: transcript reference, token/cost usage, outcome, and linked product-visible run errors. | Seat or tenant-admin | Call with \`{"seat_id":"<seat-id>","run_id":"<run-id>"}\`. |
|
|
@@ -43426,7 +43435,7 @@ Stop before: approving a Charter, signing a manifest, connecting a tool or crede
|
|
|
43426
43435
|
order: 72,
|
|
43427
43436
|
title: "Settings guide",
|
|
43428
43437
|
summary: "How to use Settings as the control plane for company access, channels, providers, tokens, and operating defaults.",
|
|
43429
|
-
version: "2026-06-20.
|
|
43438
|
+
version: "2026-06-20.5",
|
|
43430
43439
|
public: true,
|
|
43431
43440
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43432
43441
|
stages: ["company_setup", "staffing"],
|
|
@@ -43458,9 +43467,15 @@ Start with members and invites, then provider and channel connections, then MCP
|
|
|
43458
43467
|
- Stored credentials (vault references only) and tool access approvals.
|
|
43459
43468
|
- Operating defaults, including Sync Brief scope.
|
|
43460
43469
|
|
|
43470
|
+
Settings lifecycle timestamps are display metadata for tokens, connected machines, integrations, and stored credentials. They may be emitted by the database as either timestamp values or strings, but Settings renders them as safe labels rather than treating timestamp formatting failures as page-level failures.
|
|
43471
|
+
|
|
43472
|
+
When a settings source is temporarily unavailable, the app keeps the route open and marks affected sections as unavailable instead of showing raw errors or stale-looking editable values. Budget and Sync Brief controls stay read-only until their server-backed data can be loaded.
|
|
43473
|
+
|
|
43461
43474
|
## Integration health
|
|
43462
43475
|
|
|
43463
|
-
\`integration.list\` lists connector metadata for CLI and MCP operators, \`integration.status\` reads one provider or integration id, and \`integration.test\` runs the installed provider-specific health check. These commands return account labels, scopes, capabilities, timestamps, and health only; they never return vault references, access tokens, refresh tokens, or raw provider responses. Google's test refreshes the vaulted OAuth credential and reads the Gmail profile as the minimal live check.
|
|
43476
|
+
\`integration.list\` lists connector metadata for CLI and MCP operators, \`integration.status\` reads one provider or integration id, and \`integration.test\` runs the installed provider-specific health check. These commands return account labels, scopes, capabilities, timestamps, and health only; they never return vault references, access tokens, refresh tokens, or raw provider responses. Google's test refreshes the vaulted OAuth credential and reads the Gmail profile as the minimal live check. Settings exposes the same Google test as an owner/operator button beside Connect/Reconnect, shows the last tested time, and turns failures into reconnect-oriented remediation copy rather than raw provider errors.
|
|
43477
|
+
|
|
43478
|
+
Reconnects keep historical rows for audit, but provider status in Settings, CLI, and MCP prefers the current connected row first, then the latest error or disconnected row.
|
|
43464
43479
|
|
|
43465
43480
|
## Sync Brief scope
|
|
43466
43481
|
|
|
@@ -45962,6 +45977,24 @@ ${field(record2, "summary")}`;
|
|
|
45962
45977
|
return `queued ${field(workOrder, "lane")} work order ${field(workOrder, "id")} for agent ${field(workOrder, "agent_id")} (${field(workOrder, "status")})`;
|
|
45963
45978
|
});
|
|
45964
45979
|
},
|
|
45980
|
+
"fleet-digest": (ctx, rest) => {
|
|
45981
|
+
const parsed = parseFlags(rest);
|
|
45982
|
+
const body = withOptional({}, {
|
|
45983
|
+
window_hours: optionalNumber(parsed, "window-hours"),
|
|
45984
|
+
error_limit: optionalNumber(parsed, "error-limit")
|
|
45985
|
+
});
|
|
45986
|
+
return execute(ctx, parsed, "agent.fleet_digest", body, (output) => {
|
|
45987
|
+
const record2 = asRecord(output);
|
|
45988
|
+
const summary = asRecord(record2.summary);
|
|
45989
|
+
const agents = asArray(record2.agents);
|
|
45990
|
+
const header = `fleet ${field(summary, "fleet_count")} seats live=${field(summary, "live_count")} idle=${field(summary, "idle_count")} turns24h=${field(summary, "turns_24h")} failed24h=${field(summary, "failed_runs_24h")} spend7d=$${field(summary, "spend_7d_usd")}`;
|
|
45991
|
+
const lines = agents.map((agent) => {
|
|
45992
|
+
const r = asRecord(agent);
|
|
45993
|
+
return `${field(r, "seat_name")} ${field(r, "health_status")} live=${field(r, "live")} turns24h=${field(r, "turns_24h")} failed=${field(r, "failed_runs_24h")} next=${field(r, "suggested_next_action")}`;
|
|
45994
|
+
});
|
|
45995
|
+
return [header, ...lines].join("\n");
|
|
45996
|
+
});
|
|
45997
|
+
},
|
|
45965
45998
|
"get-run": (ctx, rest) => {
|
|
45966
45999
|
const parsed = parseFlags(rest);
|
|
45967
46000
|
const body = {
|
|
@@ -46003,7 +46036,7 @@ function agentConfigureTools(ctx, rest, decision) {
|
|
|
46003
46036
|
});
|
|
46004
46037
|
}
|
|
46005
46038
|
function agentUsage(bin) {
|
|
46006
|
-
return `Usage: ${bin} agent templates|create|setup|tools|dry-run|go-live|status|run-now|get-run|show [--json]
|
|
46039
|
+
return `Usage: ${bin} agent templates|create|setup|tools|dry-run|go-live|status|run-now|fleet-digest|get-run|show [--json]
|
|
46007
46040
|
${bin} agent templates
|
|
46008
46041
|
${bin} agent create --seat-id <id> --template <slug> [--expected-version <v>]
|
|
46009
46042
|
${bin} agent create --seat-id <id> --custom [--steward-seat-id <id>] [--lane cloud|mcp_session|runner] [--model triage|balanced|complex|hardest|<id>] [--effort low|medium|high|xhigh|max] [--owns <text>] [--success <text>] [--never-alone <text>]
|
|
@@ -46014,6 +46047,7 @@ function agentUsage(bin) {
|
|
|
46014
46047
|
${bin} agent go-live --seat-id <id> --charter-version-id <id>
|
|
46015
46048
|
${bin} agent status --seat-id <id>
|
|
46016
46049
|
${bin} agent run-now --seat-id <id> [--task-id <id>]
|
|
46050
|
+
${bin} agent fleet-digest [--window-hours <n>] [--error-limit <n>]
|
|
46017
46051
|
${bin} agent get-run --seat-id <id> --run-id <id>
|
|
46018
46052
|
${bin} agent show --seat-id <id> [--markdown]`;
|
|
46019
46053
|
}
|
|
@@ -46200,7 +46234,7 @@ function operationUsageLines(bin) {
|
|
|
46200
46234
|
`${bin} notification settings|test|errors`,
|
|
46201
46235
|
`${bin} settings get|update`,
|
|
46202
46236
|
`${bin} member invite|update|remove`,
|
|
46203
|
-
`${bin} agent templates|create|setup|tools|dry-run|go-live|status|run-now|get-run|show`,
|
|
46237
|
+
`${bin} agent templates|create|setup|tools|dry-run|go-live|status|run-now|fleet-digest|get-run|show`,
|
|
46204
46238
|
`${bin} tools list`,
|
|
46205
46239
|
`${bin} model list`,
|
|
46206
46240
|
`${bin} compass show`,
|