@rosthq/cli 0.6.3 → 0.6.5
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-manifest.d.ts","sourceRoot":"","sources":["../../src/generated/command-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,eAAO,MAAM,gBAAgB,EAAE,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"command-manifest.d.ts","sourceRoot":"","sources":["../../src/generated/command-manifest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,eAAO,MAAM,gBAAgB,EAAE,SAAS,oBAAoB,EA0L3D,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -42403,7 +42403,7 @@ External connectors are being rolled out provider by provider, conservatively (r
|
|
|
42403
42403
|
order: 48,
|
|
42404
42404
|
title: "CLI and MCP installation guide",
|
|
42405
42405
|
summary: "Install the public CLI, register remote token-backed MCP clients, and find the full command and tool catalog.",
|
|
42406
|
-
version: "2026-07-01.
|
|
42406
|
+
version: "2026-07-01.4",
|
|
42407
42407
|
public: true,
|
|
42408
42408
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
42409
42409
|
stages: ["company_setup", "staffing"],
|
|
@@ -43056,6 +43056,9 @@ Several rows here are seat-operating commands (\`task.create\`, the \`signal.*\`
|
|
|
43056
43056
|
| \`rost_correct_signal_reading\` | \`signal.correct_reading\` | Overwrite a reading with a human-confirmed value. | Seat or tenant-admin | Manual correction; expect confirmation. |
|
|
43057
43057
|
| \`rost_add_a_measurable\` | \`measurable.create\` | Add a measurable a seat owns (name, unit, direction, target, cadence). | Seat or tenant-admin | Call with \`{"seat_id":"<id>","name":"...","unit":"...","direction":"up_good","target":0,"cadence":"weekly"}\`. |
|
|
43058
43058
|
| \`rost_import_signals_from_csv\` | \`signal.import\` | Bulk-import measurable definitions + trailing historical readings from a parsed scorecard export (e.g. a ninety CSV). Owners resolve to seats; readings are human-confirmed; re-import upserts by (measurable, period, cadence); a cross-cadence row is reported and skipped, not overwritten. | Tenant | Call with the parsed \`measurables\` array. |
|
|
43059
|
+
| \`rost_list_measurable_templates\` | \`measurable_template.list\` | List the measurable template catalog (Sales/Finance/Ops/Marketing/HR) with unit, direction, cadence, and a suggested target. | Seat or tenant-admin | Call with \`{}\` or \`{"function":"sales"}\`. |
|
|
43060
|
+
| \`rost_adopt_a_measurable_template\` | \`measurable_template.adopt\` | Create a seat measurable from a catalog template (unit/direction/cadence from the template; target optionally overridden). Adoption is a human act \u2014 source is human. | Seat or tenant-admin | Call with \`{"template_id":"sales.new_qualified_leads","seat_id":"<id>"}\`. |
|
|
43061
|
+
| \`rost_read_the_scorecard_grid\` | \`scorecard.grid\` | Read the leadership scorecard trailing grid (rows = measurables of a cadence, columns = trailing periods, colour-coded cells) plus the computed Org-Checkup system-health measurables. | Seat or tenant-admin | Call with \`{}\` or \`{"cadence":"monthly","trailing":6}\`. |
|
|
43059
43062
|
| \`rost_discover_a_connection_for_signals\` | \`integration.discover\` | Read-only introspection of a connected source: returns non-secret metadata and a recipe skeleton to author a signal pull against. | Tenant | No network; call with \`{"integration_id":"<id>"}\`. |
|
|
43060
43063
|
| \`rost_preview_a_signal_source\` | \`signal.preview\` | Run a candidate recipe live but read-only against an allowlisted HTTPS source; returns the extracted value and a short-lived \`preview_token\`. Never mutates; the credential is resolved from the connection at execution and never stored in the recipe. | Tenant | Call with \`{"measurable_id":"<id>","integration_id":"<id>","recipe":{...}}\`. |
|
|
43061
43064
|
| \`rost_bind_a_signal_source_draft\` | \`signal.bind\` | Persist the validated recipe as an inert \`draft\` binding; requires the \`preview_token\` from a preview of the same recipe, so nothing is bound that was not first seen working. | Tenant | Call with \`{"measurable_id":"<id>","integration_id":"<id>","recipe":{...},"cadence":"weekly","preview_token":"<token>"}\`. |
|
|
@@ -43063,6 +43066,7 @@ Several rows here are seat-operating commands (\`task.create\`, the \`signal.*\`
|
|
|
43063
43066
|
| \`rost_import_friction_issues_from_a_ninety_issues_list\` | \`friction.import\` | Bulk-import issues as Friction items for the named owner seat (from a ninety Issues List export). Owners resolve to seats; idempotent re-import skips an open issue already imported for the same seat + summary; whole-file re-import is skipped by content hash. | Tenant | Call with the parsed \`issues\` array. |
|
|
43064
43067
|
| \`rost_import_tasks_from_a_ninety_to_dos_export\` | \`task.import\` | Bulk-import To-Dos as tasks the named owner seat owns (from a ninety To-Dos export), provenance origin_kind:manual. Owners resolve to seats; idempotent re-import skips a non-terminal task already imported for the same seat + title. | Tenant | Call with the parsed \`todos\` array. |
|
|
43065
43068
|
| \`rost_import_rocks_from_a_ninety_rocks_export\` | \`cascade.import\` | Bulk-import Rocks as Cascade cycle goals under a company objective in the active cycle (from a ninety Rocks export). Owners resolve to seats; idempotent re-import skips a cycle goal already imported for the same objective + seat + title. | Tenant | Call with the parsed \`rocks\` array. |
|
|
43069
|
+
| \`rost_import_a_ninety_v_to_into_a_compass_draft\` | \`compass.import\` | AI-draft a Compass from a ninety V/TO (Core Values \u2192 principles, 10/3/1-Year \u2192 horizon goals, Rocks \u2192 cycle objectives), landed as a draft a human confirms by supersession \u2014 never an accepted Compass. Idempotent by document content (a re-upload of the same V/TO short-circuits without re-drafting). | Tenant | Call with the extracted V/TO \`text\` (and optional \`source_name\`). |
|
|
43066
43070
|
| \`rost_list_cascade_goals\` | \`goal.list\` | List Cascade goals, optionally by cycle or seat. | Seat or tenant-admin | Call with \`{}\` or \`{"cycle_id":"<id>"}\`. |
|
|
43067
43071
|
| \`rost_create_cascade_goal\` | \`goal.create\` | Create a cycle goal under an objective. | Tenant | Call with cycle, seat, parent, title, definition of done. |
|
|
43068
43072
|
| \`rost_update_cascade_goal\` | \`goal.update\` | Update a goal's title or definition of done. | Tenant | Call with \`goal_id\` and the changed fields. |
|
|
@@ -43683,7 +43687,7 @@ Agents can suggest commitments and report progress. They should not create a new
|
|
|
43683
43687
|
order: 61,
|
|
43684
43688
|
title: "Signal guide",
|
|
43685
43689
|
summary: "How to define and read measurables so the company runs on evidence instead of status theater.",
|
|
43686
|
-
version: "2026-07-01.
|
|
43690
|
+
version: "2026-07-01.2",
|
|
43687
43691
|
public: true,
|
|
43688
43692
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43689
43693
|
stages: ["operating_rhythm"],
|
|
@@ -43697,6 +43701,9 @@ Agents can suggest commitments and report progress. They should not create a new
|
|
|
43697
43701
|
"signal.correct_reading",
|
|
43698
43702
|
"measurable.create",
|
|
43699
43703
|
"signal.import",
|
|
43704
|
+
"measurable_template.list",
|
|
43705
|
+
"measurable_template.adopt",
|
|
43706
|
+
"scorecard.grid",
|
|
43700
43707
|
"integration.discover",
|
|
43701
43708
|
"signal.preview",
|
|
43702
43709
|
"signal.bind",
|
|
@@ -43746,6 +43753,14 @@ A human can run the whole loop from the Signal page. Each measurable has a "Log
|
|
|
43746
43753
|
|
|
43747
43754
|
To move off a spreadsheet or another operating tool, upload a scorecard export from the Signal page "Import from CSV" panel (the \`signal.import\` command, also available on CLI/MCP). Each row becomes a measurable owned by the seat whose name matches the row's owner, with its target, unit, direction, cadence, and trailing readings. Import is idempotent \u2014 re-importing upserts by period \u2014 and a row whose cadence conflicts with an existing measurable is reported and skipped, not overwritten.
|
|
43748
43755
|
|
|
43756
|
+
## Adopt a measurable template
|
|
43757
|
+
|
|
43758
|
+
Not sure which measurables to track? \`measurable_template.list\` returns a starter catalog grouped by function (Sales, Finance, Operations, Marketing, HR), each with a unit, direction, cadence, and suggested target. \`measurable_template.adopt\` instantiates one against a seat \u2014 the same write path as \`measurable.create\`, so the created measurable is a plain human-owned Signal you log against afterward. Adoption is a human act; the suggested target is just a starting point you can override.
|
|
43759
|
+
|
|
43760
|
+
## The leadership scorecard grid
|
|
43761
|
+
|
|
43762
|
+
The default \`/signal\` view is exception-first \u2014 it surfaces what is off track, at risk, or pending, so the team never stares at a wall of green. For a leadership review or the familiar weekly scorecard grid, toggle the trailing-grid view (\`scorecard.grid\`): rows are the measurables for a cadence (the classic 13-week weekly view, plus monthly, quarterly, and annual), columns are the trailing periods, and each cell is colour-coded against its target and direction. An empty period reads "no data", never a fabricated zero. The grid also surfaces the Org-Checkup measurables \u2014 charter coverage, measurable freshness, aging open issues, and peak steward load \u2014 computed on read from the operating data, so the scorecard is never empty even before a single reading is logged.
|
|
43763
|
+
|
|
43749
43764
|
## Auto-fill Signal from a connected source
|
|
43750
43765
|
|
|
43751
43766
|
Once a measurable's number lives in a connected system, you can teach {{brand}} the exact deterministic pull once and let it keep the measurable current. The flow is \`discover -> preview -> bind -> bind_confirm\`:
|
|
@@ -43770,7 +43785,7 @@ Agents may record readings when the Charter allows it. Agent-reported readings s
|
|
|
43770
43785
|
order: 62,
|
|
43771
43786
|
title: "Friction guide",
|
|
43772
43787
|
summary: "How to capture issues with evidence, rank them, and resolve them without losing ownership.",
|
|
43773
|
-
version: "2026-
|
|
43788
|
+
version: "2026-07-01.1",
|
|
43774
43789
|
public: true,
|
|
43775
43790
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43776
43791
|
stages: ["operating_rhythm"],
|
|
@@ -43830,6 +43845,10 @@ Friction, tasks, and escalations are the issue-to-action loop. A seat files, a t
|
|
|
43830
43845
|
- Carry the work as a task: \`task.create\` / \`rost_create_task\` (a commitment between seats). \`task.create\` is \`none\` (no confirmation gate), so an agent can file one directly; an agent's task lands as a **draft** proposal (\`origin: agent_proposal\`) for a human to review and hand off \u2014 not a live offer in the owning seat's accept/decline queue. A seat runs its queue with \`{{cli}} task list|accept|decline|complete\` (\`task.list\`, \`task.accept\`, \`task.decline\`, \`task.complete\`). Link a task to an issue with \`friction.link_task\` / \`rost_link_task_to_friction_issue\`.
|
|
43831
43846
|
- Route a decision: \`escalation.raise\` (seat) / \`rost_escalate\` sends approval-scope or must-escalate work to the Steward queue. Reads are \`escalation.list\` / \`escalation.get\`. See the steward queue guide for resolution.
|
|
43832
43847
|
|
|
43848
|
+
## Friction assist
|
|
43849
|
+
|
|
43850
|
+
\`friction.assist\` / \`rost_assist_friction_issue\` is a read-only advisory for an open issue \u2014 call it with the issue id. It returns the most-similar prior resolved issues with their root causes and recorded decisions, a recurring-pattern flag, and recommended options drawn from that history. It never resolves the issue or records a decision \u2014 a human still resolves via \`friction.resolve\`. The similar-issue recall is deterministic; the short narrative is best-effort and degrades to the deterministic summary when the model is slow or unavailable, so the assist stays responsive and never holds up other work.
|
|
43851
|
+
|
|
43833
43852
|
## When to stop for confirmation
|
|
43834
43853
|
|
|
43835
43854
|
\`friction.resolve\` is \`human_required\`; resolving an issue is a human decision. \`friction.link_task\`, \`task.create\`, \`task.accept\`, \`task.decline\`, and \`task.complete\` are \`none\`, so a seat files issues, creates commitments, and runs its own task queue directly. \`friction.update_status\`, \`escalation.raise\`, \`friction.file_issue\`, and \`friction.list\` are also not gated. An agent files Friction, proposes the task, and escalates; a human resolves.
|
|
@@ -43972,7 +43991,7 @@ Stop before: approving a Charter, signing a manifest, connecting a tool or crede
|
|
|
43972
43991
|
order: 72,
|
|
43973
43992
|
title: "Settings guide",
|
|
43974
43993
|
summary: "How to use Settings as the control plane for company access, channels, providers, tokens, and operating defaults.",
|
|
43975
|
-
version: "2026-
|
|
43994
|
+
version: "2026-07-01.1",
|
|
43976
43995
|
public: true,
|
|
43977
43996
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43978
43997
|
stages: ["company_setup", "staffing"],
|
|
@@ -43993,6 +44012,10 @@ Settings is the company control plane. Use it to manage members, invites, provid
|
|
|
43993
44012
|
|
|
43994
44013
|
Start with members and invites, then provider and channel connections, then MCP or CLI access. Do not connect tools for an agent seat until the Charter and Steward are clear.
|
|
43995
44014
|
|
|
44015
|
+
## Direct links
|
|
44016
|
+
|
|
44017
|
+
Settings is one page with anchored sections, not separate sub-pages. Documented shortcut links resolve to the right section instead of a dead end: \`/settings/integrations\` and \`/readiness\` open the Integrations section (connector readiness lives inside it, not on a standalone page), and \`/settings/policy\` opens the Product learning section.
|
|
44018
|
+
|
|
43996
44019
|
## What belongs in Settings
|
|
43997
44020
|
|
|
43998
44021
|
- Company profile and workspace defaults. Rename the company from Settings or with \`tenant.rename\` (CLI: \`{{cli}} settings rename --company "<name>"\`); the command is owner-only, human-gated, and records a rename event with old and new names.
|
|
@@ -44381,7 +44404,7 @@ Name the failing surface, collect evidence, recommend the smallest correction, a
|
|
|
44381
44404
|
order: 78,
|
|
44382
44405
|
title: "AI model data handling guide",
|
|
44383
44406
|
summary: "How {{brand}} cloud agents, local MCP sessions, runners, BYOK, and connected tools handle model-bound data.",
|
|
44384
|
-
version: "2026-
|
|
44407
|
+
version: "2026-07-01.1",
|
|
44385
44408
|
public: true,
|
|
44386
44409
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
44387
44410
|
stages: ["company_setup", "staffing", "operating_rhythm"],
|
|
@@ -44470,6 +44493,8 @@ Cloud prompts should not include raw credentials, long exports, unrelated custom
|
|
|
44470
44493
|
|
|
44471
44494
|
Tenant BYOK changes which provider account is used for eligible \`cloud\` model calls. It does not loosen tool permissions, human gates, tenant isolation, or audit requirements.
|
|
44472
44495
|
|
|
44496
|
+
{{brand}} also includes a capped, app-provided Claude allowance for agent-assisted setup so a new company can complete onboarding before saving its own key. That allowance is shown in the onboarding provider card and in Settings as an approximate number of included setup tokens \u2014 never a dollar amount \u2014 and is enforced server-side on every platform-key call: an agent turn or an org-intake step reserves the allowance before the provider request and settles actual usage after. When the included tokens are used, agent-assisted steps stop before calling the provider and prompt you to add your own Anthropic API key, while non-AI setup steps stay available. Saving a tenant Anthropic key (BYOK) switches those calls to your provider account and does not draw down the included allowance.
|
|
44497
|
+
|
|
44473
44498
|
Store a tenant Anthropic key only through \`tenant.anthropic_key.save\` / \`rost_save_tenant_anthropic_key\` or the generic credential ingress path. The key is handled as a vault-backed credential: {{brand}} stores a vault reference and safe metadata, not the raw key in prompts, config, logs, or command output. A human approves the credential flow.
|
|
44474
44499
|
|
|
44475
44500
|
After BYOK is saved, provider-side retention, training, regional, HIPAA, or zero-data-retention posture depends on that Anthropic organization, workspace, model, feature, and contract. Do not tell a customer "BYOK means zero retention" or "BYOK means no training" unless their provider arrangement actually says that.
|
|
@@ -44791,7 +44816,7 @@ Agents should not teach EOS as EOS. They should use {{brand}}'s method. When a u
|
|
|
44791
44816
|
order: 11,
|
|
44792
44817
|
title: "Compass authoring guide",
|
|
44793
44818
|
summary: "Field-by-field guidance for authoring a strong Compass document directly, with the full JSON contract and worked examples.",
|
|
44794
|
-
version: "2026-
|
|
44819
|
+
version: "2026-07-01.1",
|
|
44795
44820
|
public: true,
|
|
44796
44821
|
audiences: ["cli", "mcp", "in_app_agent"],
|
|
44797
44822
|
stages: ["company_setup"],
|
|
@@ -44827,7 +44852,7 @@ The Compass is the company's stated direction: its purpose, principles, and the
|
|
|
44827
44852
|
|
|
44828
44853
|
## How to derive a Compass from company context
|
|
44829
44854
|
|
|
44830
|
-
Attach the company's real documents as references first (\`onboarding.attach_reference\`): read each meaningful doc \u2014 strategy notes, planning decks, founder transcripts, metrics \u2014 convert it to markdown, and attach it with a \`title\`, \`kind\`, and \`source\`. Then author the Compass from what those documents actually say, citing them through \`source_ids\`. Do not invent direction the company has not expressed; where the company has not decided something, record a gap instead of guessing.
|
|
44855
|
+
Attach the company's real documents as references first (\`onboarding.attach_reference\`): read each meaningful doc \u2014 strategy notes, planning decks, founder transcripts, metrics \u2014 convert it to markdown, and attach it with a \`title\`, \`kind\`, and \`source\`. Then author the Compass from what those documents actually say, citing them through \`source_ids\`. Do not invent direction the company has not expressed; where the company has not decided something, record a gap instead of guessing. In the web app these attached documents appear in the Compass **Context sources** panel (\`/compass#context-sources\`, also reachable via \`/compass/context-sources\`).
|
|
44831
44856
|
|
|
44832
44857
|
## Every Compass field is a "field" object
|
|
44833
44858
|
|
|
@@ -45958,6 +45983,7 @@ var COMMAND_MANIFEST = [
|
|
|
45958
45983
|
{ "id": "compass.approve_version", "namespace": "compass", "action": "approve_version", "title": "Approve Compass version", "description": "Activate a Compass version by supersession.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "draft_id", "flag": "draft-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Compass approval is a human decision and should anchor later Cascade commitments." },
|
|
45959
45984
|
{ "id": "compass.draft", "namespace": "compass", "action": "draft", "title": "Draft Compass", "description": "Create a Compass draft version.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [], "hasComplexInput": true, "help": "Submit a full Compass document; read the Compass authoring guide for the field-by-field contract and worked examples before drafting. Drafting is safe for an agent; approving a version is a human act.", "example": { "doc": { "schema_version": 1, "purpose": { "value": "Help small manufacturers ship quality products on time.", "citations": [], "confidence": 0.9, "placeholder": false }, "principles": [{ "value": "Bias to action; decide with the information we have.", "citations": [], "confidence": 0.9, "placeholder": false }, { "value": "Customers feel the quality of every order.", "citations": [], "confidence": 0.9, "placeholder": false }], "horizon_goals": { "three_year": { "title": { "value": "Reach $10M ARR with a 25-person team", "citations": [], "confidence": 0.9, "placeholder": false }, "definition_of_done": { "value": "ARR is at or above $10M and team headcount is 25 with no key-role gaps.", "citations": [], "confidence": 0.9, "placeholder": false }, "horizon": "three_year" }, "one_year": { "title": { "value": "Hit $3M ARR and 99% on-time delivery", "citations": [], "confidence": 0.9, "placeholder": false }, "definition_of_done": { "value": "Trailing-12-month ARR \u2265 $3M and on-time delivery rate \u2265 99% for two consecutive quarters.", "citations": [], "confidence": 0.9, "placeholder": false }, "horizon": "one_year" } }, "cycle_objectives": [{ "title": { "value": "Cut order-to-ship cycle time by 20%", "citations": [], "confidence": 0.9, "placeholder": false }, "definition_of_done": { "value": "Median order-to-ship time is 20% lower than the prior cycle baseline.", "citations": [], "confidence": 0.9, "placeholder": false }, "horizon": "cycle" }], "gaps": [], "follow_up_tasks": [], "source_ids": [] } } },
|
|
45960
45985
|
{ "id": "compass.get_current", "namespace": "compass", "action": "get_current", "title": "Get current Compass", "description": "Return the active and draft Compass versions plus the source documents that informed them.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [], "hasComplexInput": false, "help": "Read the active and draft Compass before drafting goals or recommending direction changes." },
|
|
45986
|
+
{ "id": "compass.import", "namespace": "compass", "action": "import", "title": "Import a ninety V/TO into a Compass draft", "description": "AI-draft a Compass from a ninety V/TO (values -> principles, 10/3/1-year -> horizons, Rocks -> cycle objectives). Produces a DRAFT a human confirms by supersession; never writes an accepted Compass.", "requiredScope": "tenant_admin", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "dry_run", "flag": "dry-run", "type": "boolean", "required": false }, { "name": "source_name", "flag": "source-name", "type": "string", "required": false }, { "name": "text", "flag": "text", "type": "string", "required": true }], "hasComplexInput": false, "help": "AI-draft a Compass from a ninety V/TO (values -> principles, 10/3/1-year -> horizons, Rocks -> cycle objectives). Lands a draft a human confirms; idempotent by document content." },
|
|
45961
45987
|
{ "id": "compass.list_gaps", "namespace": "compass", "action": "list_gaps", "title": "List Compass gaps", "description": "Return unanswered and answered Compass context gaps for the latest draft or active version.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [], "hasComplexInput": false, "help": "List unanswered Compass gaps so a human can answer them before direction anchors graph or Cascade work." },
|
|
45962
45988
|
{ "id": "compass.reject_draft", "namespace": "compass", "action": "reject_draft", "title": "Reject Compass draft", "description": "Reject and remove a draft Compass version.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "draft_id", "flag": "draft-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Reject Compass drafts when the direction, language, or company intent is not ready to anchor implementation." },
|
|
45963
45989
|
{ "id": "compass.set", "namespace": "compass", "action": "set", "title": "Set Compass", "description": "Compatibility command for the DER-626 MCP Compass tool.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "draft_id", "flag": "draft-id", "type": "string", "required": false }, { "name": "approve", "flag": "approve", "type": "boolean", "required": false }], "hasComplexInput": true, "help": "Set Compass drafts in the product's own vocabulary and approve only with explicit human confirmation." },
|
|
@@ -46006,6 +46032,8 @@ var COMMAND_MANIFEST = [
|
|
|
46006
46032
|
{ "id": "mcp_token.create", "namespace": "mcp_token", "action": "create", "title": "Create MCP token", "description": "Mint a tenant-admin or seat-scoped MCP token.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "scope", "flag": "scope", "type": "enum", "required": true, "enumValues": ["tenant_admin", "seat"] }, { "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }, { "name": "expires_at", "flag": "expires-at", "type": "string", "required": false }, { "name": "expires_in_days", "flag": "expires-in-days", "type": "integer", "required": false }], "hasComplexInput": false, "help": "Create MCP tokens with the narrowest scope needed, and tell agents where to retrieve reference docs." },
|
|
46007
46033
|
{ "id": "mcp_token.list", "namespace": "mcp_token", "action": "list", "title": "List MCP tokens", "description": "List MCP token metadata (id, scope, seat, created/last-used/revoked). Never returns token material.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "include_revoked", "flag": "include-revoked", "type": "boolean", "required": false }, { "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }], "hasComplexInput": false, "help": "List MCP token metadata (never token material) to audit which seats hold active sessions." },
|
|
46008
46034
|
{ "id": "mcp_token.revoke", "namespace": "mcp_token", "action": "revoke", "title": "Revoke MCP token", "description": "Revoke an MCP token immediately.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "token_id", "flag": "token-id", "type": "string", "required": true }, { "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }], "hasComplexInput": false, "help": "Revoke MCP access when a local session ends or seat authority changes." },
|
|
46035
|
+
{ "id": "measurable_template.adopt", "namespace": "measurable_template", "action": "adopt", "title": "Adopt a measurable template", "description": "Create a seat measurable from a catalog template (unit/direction/cadence from the template; target optionally overridden). The seat owns it; readings attach afterward.", "requiredScope": "seat", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "template_id", "flag": "template-id", "type": "string", "required": true }, { "name": "seat_id", "flag": "seat-id", "type": "string", "required": true }, { "name": "target", "flag": "target", "type": "number", "required": false }], "hasComplexInput": false, "help": "Create a seat measurable from a catalog template (unit/direction/cadence from the template; target optionally overridden). Adoption is a human act \u2014 source is human." },
|
|
46036
|
+
{ "id": "measurable_template.list", "namespace": "measurable_template", "action": "list", "title": "List measurable templates", "description": "List the measurable template catalog (Sales/Finance/Ops/Marketing/HR) with unit, direction, cadence, and a suggested target. Adopt one with measurable_template.adopt.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "function", "flag": "function", "type": "enum", "required": false, "enumValues": ["sales", "finance", "operations", "marketing", "hr"] }], "hasComplexInput": false, "help": "List the measurable template catalog by function (Sales/Finance/Ops/Marketing/HR); adopt one with measurable_template.adopt to create a seat measurable." },
|
|
46009
46037
|
{ "id": "measurable.create", "namespace": "measurable", "action": "create", "title": "Add a measurable", "description": "Create a measurable (a Signal a seat owns) with its target, unit, direction, and cadence. The seat owns it; readings attach to the measurable. Source is 'human' \u2014 a human-defined measurable a human logs.", "requiredScope": "seat", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": true }, { "name": "name", "flag": "name", "type": "string", "required": true }, { "name": "unit", "flag": "unit", "type": "string", "required": true }, { "name": "direction", "flag": "direction", "type": "enum", "required": true, "enumValues": ["up_good", "down_good"] }, { "name": "target", "flag": "target", "type": "number", "required": true }, { "name": "cadence", "flag": "cadence", "type": "enum", "required": true, "enumValues": ["daily", "weekly", "monthly", "quarterly", "annual"] }], "hasComplexInput": false, "help": "Add a measurable a seat owns (name, unit, direction, target, cadence) before recording readings against it." },
|
|
46010
46038
|
{ "id": "member.invite", "namespace": "member", "action": "invite", "title": "Invite member", "description": "Create a pending tenant invite for a human teammate. The acceptance link is delivered out of band, not in the command result.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "email", "flag": "email", "type": "string", "required": true }, { "name": "role", "flag": "role", "type": "enum", "required": true, "enumValues": ["owner", "steward", "member"] }, { "name": "byo_key", "flag": "byo-key", "type": "boolean", "required": false }], "hasComplexInput": false, "help": "Invite humans to the company by seat-aware role; the invite token is never returned over CLI or MCP." },
|
|
46011
46039
|
{ "id": "member.remove", "namespace": "member", "action": "remove", "title": "Remove member", "description": "Remove a tenant member. Blocked when it would orphan an agent steward chain.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "member_id", "flag": "member-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Remove a member; the no-orphan-agent guard blocks removing the only steward in an agent chain." },
|
|
@@ -46027,6 +46055,7 @@ var COMMAND_MANIFEST = [
|
|
|
46027
46055
|
{ "id": "runner.repair", "namespace": "runner", "action": "repair", "title": "Runner repair guidance", "description": "Returns actionable repair steps for a runner: restart, re-pair, revoke stale, or install missing CLI runtime. No secrets exposed.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "runner_id", "flag": "runner-id", "type": "string", "required": true }, { "name": "issue", "flag": "issue", "type": "enum", "required": false, "enumValues": ["restart", "re_pair", "revoke_stale", "missing_cli_runtime"] }], "hasComplexInput": false, "help": "Get focused repair steps for a runner: restart, re-pair, revoke a stale runner, or install missing CLI runtime." },
|
|
46028
46056
|
{ "id": "runner.revoke", "namespace": "runner", "action": "revoke", "title": "Revoke runner", "description": "Revoke a runner so it can no longer authenticate or claim work.", "requiredScope": "tenant", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "runner_id", "flag": "runner-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Revoke a runner when a machine should no longer authenticate or claim work; this is a human-gated action." },
|
|
46029
46057
|
{ "id": "runner.status", "namespace": "runner", "action": "status", "title": "Runner status", "description": "Read a single runner's capability and online/offline/revoked state.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "runner_id", "flag": "runner-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Check a runner's capability and heartbeat state when diagnosing offline work." },
|
|
46058
|
+
{ "id": "scorecard.grid", "namespace": "scorecard", "action": "grid", "title": "Read the scorecard grid", "description": "Return the leadership scorecard trailing grid: rows are measurables of a cadence (default weekly), columns are the trailing N periods with a colour-coded cell per period, plus the computed Org-Checkup system-health measurables. Seat-scoped callers see only their own seat.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "cadence", "flag": "cadence", "type": "enum", "required": false, "enumValues": ["daily", "weekly", "monthly", "quarterly", "annual"] }, { "name": "trailing", "flag": "trailing", "type": "integer", "required": false }, { "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }, { "name": "as_of", "flag": "as-of", "type": "string", "required": false }], "hasComplexInput": false, "help": "Read the leadership scorecard trailing grid (rows = measurables of a cadence, columns = trailing periods, colour-coded cells) plus the computed Org-Checkup system-health measurables. Keep exception-first as the default view." },
|
|
46030
46059
|
{ "id": "seat.create", "namespace": "seat", "action": "create", "title": "Create seat", "description": "Create a Responsibility Graph seat.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "name", "flag": "name", "type": "string", "required": true }, { "name": "parent_seat_id", "flag": "parent-seat-id", "type": "string", "required": false }, { "name": "seat_type", "flag": "seat-type", "type": "enum", "required": false, "enumValues": ["human", "agent", "hybrid"] }], "hasComplexInput": false, "help": "Create seats from functions before assigning people or agents." },
|
|
46031
46060
|
{ "id": "seat.decommission", "namespace": "seat", "action": "decommission", "title": "Decommission seat", "description": "Retire a seat: end occupancies, archive the active charter, revoke seat tokens/credentials, cancel schedules, and emit a tombstone event. Blocks if it would leave another live agent without a human steward chain.", "requiredScope": "seat", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Retiring a seat ends occupancies, archives the active Charter, revokes seat tokens and credentials, and emits a tombstone event. No-orphan guarded. To retire only the agent and keep the seat, use agent.decommission." },
|
|
46032
46061
|
{ "id": "seat.decommission_preview", "namespace": "seat", "action": "decommission_preview", "title": "Preview seat decommission", "description": "Show exactly what retiring a seat would end, revoke, archive, or expire without mutating state. The no-orphan steward guard is still checked when the real decommission executes.", "requiredScope": "seat", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": true }], "hasComplexInput": false, "help": "Preview the occupancies, agents, Charter versions, tokens, credentials, work orders, and schedules that seat.decommission would affect without mutating state." },
|