@rosthq/cli 0.6.4 → 0.6.6
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,EA2L3D,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -37433,6 +37433,13 @@ var AGENT_HOW_TO_PROMPT_CONTRACTS = {
|
|
|
37433
37433
|
name: "human-confirmations",
|
|
37434
37434
|
version: "1.0.0",
|
|
37435
37435
|
filename: "how-tos/human-confirmations.md"
|
|
37436
|
+
},
|
|
37437
|
+
// DER-1045: how an occupant agent collects its seat's agent-sourced measurables
|
|
37438
|
+
// as draft readings via signal.report (a human confirms via signal.confirm_reading).
|
|
37439
|
+
collectSeatSignals: {
|
|
37440
|
+
name: "collect-seat-signals",
|
|
37441
|
+
version: "1.0.0",
|
|
37442
|
+
filename: "how-tos/collect-seat-signals.md"
|
|
37436
37443
|
}
|
|
37437
37444
|
};
|
|
37438
37445
|
function loadAgentHowToPrompt(contract) {
|
|
@@ -42403,7 +42410,7 @@ External connectors are being rolled out provider by provider, conservatively (r
|
|
|
42403
42410
|
order: 48,
|
|
42404
42411
|
title: "CLI and MCP installation guide",
|
|
42405
42412
|
summary: "Install the public CLI, register remote token-backed MCP clients, and find the full command and tool catalog.",
|
|
42406
|
-
version: "2026-07-01.
|
|
42413
|
+
version: "2026-07-01.5",
|
|
42407
42414
|
public: true,
|
|
42408
42415
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
42409
42416
|
stages: ["company_setup", "staffing"],
|
|
@@ -43054,6 +43061,7 @@ Several rows here are seat-operating commands (\`task.create\`, the \`signal.*\`
|
|
|
43054
43061
|
| \`rost_get_signal\` | \`signal.get\` | Read a measurable with its full reading history. | Seat or tenant-admin | Call with \`{"measurable_id":"<id>"}\`. |
|
|
43055
43062
|
| \`rost_confirm_signal_reading\` | \`signal.confirm_reading\` | Confirm an unconfirmed reading as human-verified. | Seat or tenant-admin | Humans confirm; call with \`{"reading_id":"<id>"}\`. |
|
|
43056
43063
|
| \`rost_correct_signal_reading\` | \`signal.correct_reading\` | Overwrite a reading with a human-confirmed value. | Seat or tenant-admin | Manual correction; expect confirmation. |
|
|
43064
|
+
| \`rost_report_a_signal_reading\` | \`signal.report\` | A per-seat Signal agent proposes one draft reading for its own seat's agent-sourced measurable (a judgment/transform pull). The reading lands unconfirmed; a human confirms it with signal.confirm_reading. Refuses non-agent-sourced or other-seat measurables and cannot overwrite a human-confirmed reading. | Seat | Call with \`{"measurable_id":"<id>","value":42,"note":"read off the source","confidence":"high"}\`. |
|
|
43057
43065
|
| \`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
43066
|
| \`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
43067
|
| \`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"}\`. |
|
|
@@ -43066,6 +43074,7 @@ Several rows here are seat-operating commands (\`task.create\`, the \`signal.*\`
|
|
|
43066
43074
|
| \`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. |
|
|
43067
43075
|
| \`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. |
|
|
43068
43076
|
| \`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. |
|
|
43077
|
+
| \`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\`). |
|
|
43069
43078
|
| \`rost_list_cascade_goals\` | \`goal.list\` | List Cascade goals, optionally by cycle or seat. | Seat or tenant-admin | Call with \`{}\` or \`{"cycle_id":"<id>"}\`. |
|
|
43070
43079
|
| \`rost_create_cascade_goal\` | \`goal.create\` | Create a cycle goal under an objective. | Tenant | Call with cycle, seat, parent, title, definition of done. |
|
|
43071
43080
|
| \`rost_update_cascade_goal\` | \`goal.update\` | Update a goal's title or definition of done. | Tenant | Call with \`goal_id\` and the changed fields. |
|
|
@@ -43686,7 +43695,7 @@ Agents can suggest commitments and report progress. They should not create a new
|
|
|
43686
43695
|
order: 61,
|
|
43687
43696
|
title: "Signal guide",
|
|
43688
43697
|
summary: "How to define and read measurables so the company runs on evidence instead of status theater.",
|
|
43689
|
-
version: "2026-07-01.
|
|
43698
|
+
version: "2026-07-01.3",
|
|
43690
43699
|
public: true,
|
|
43691
43700
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43692
43701
|
stages: ["operating_rhythm"],
|
|
@@ -43698,6 +43707,7 @@ Agents can suggest commitments and report progress. They should not create a new
|
|
|
43698
43707
|
"signal.get",
|
|
43699
43708
|
"signal.confirm_reading",
|
|
43700
43709
|
"signal.correct_reading",
|
|
43710
|
+
"signal.report",
|
|
43701
43711
|
"measurable.create",
|
|
43702
43712
|
"signal.import",
|
|
43703
43713
|
"measurable_template.list",
|
|
@@ -43771,6 +43781,10 @@ Once a measurable's number lives in a connected system, you can teach {{brand}}
|
|
|
43771
43781
|
|
|
43772
43782
|
Recipes are validated data, never code: a read-only GET, a closed set of non-secret headers, and a restricted scalar path to the value. Every fetch passes one SSRF guard (HTTPS only, a steward-confirmed host allowlist set at bind, and a runtime check that the host does not resolve to a private address). Deterministic pulls write \`integration\`-sourced readings on the measurable's cadence.
|
|
43773
43783
|
|
|
43784
|
+
## Collect a Signal by judgment (the Signal agent)
|
|
43785
|
+
|
|
43786
|
+
Some measurables cannot be a deterministic pull \u2014 the number lives in a PDF, in messy records that need reconciling, or is a judgment estimate of progress. For those, mark the measurable \`agent\`-sourced and let a per-seat Signal agent read it. The agent proposes each reading with \`signal.report\` (scope: seat): one draft reading for one of its OWN seat's agent-sourced measurables, with a \`value\` and a short \`note\` citing the source. The reading lands unconfirmed, exactly like a deterministic draft \u2014 a human clears it with \`signal.confirm_reading\`. \`signal.report\` refuses any measurable not owned by the acting seat and any measurable whose source is not \`agent\`, and it never confirms its own reading. Deliver it as the \`stock/signal-collector\` template (a read-only agent whose only durable grant is \`signal.report\`) or run the \`collect-seat-signals\` how-to from an occupant agent. When the agent cannot read a number confidently \u2014 ambiguous or conflicting sources \u2014 it escalates instead of guessing.
|
|
43787
|
+
|
|
43774
43788
|
## When to stop for confirmation
|
|
43775
43789
|
|
|
43776
43790
|
\`signal.correct_reading\` is \`human_required\`; overwriting a recorded measurable is a human judgment. \`signal.confirm_reading\` is \`none\`, so a seat can confirm its own readings directly. \`measurable.create\` is \`none\` \u2014 defining a measurable is not gated. An agent records readings with evidence; a human corrects when a value is wrong.
|
|
@@ -43784,7 +43798,7 @@ Agents may record readings when the Charter allows it. Agent-reported readings s
|
|
|
43784
43798
|
order: 62,
|
|
43785
43799
|
title: "Friction guide",
|
|
43786
43800
|
summary: "How to capture issues with evidence, rank them, and resolve them without losing ownership.",
|
|
43787
|
-
version: "2026-
|
|
43801
|
+
version: "2026-07-01.1",
|
|
43788
43802
|
public: true,
|
|
43789
43803
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43790
43804
|
stages: ["operating_rhythm"],
|
|
@@ -43844,6 +43858,10 @@ Friction, tasks, and escalations are the issue-to-action loop. A seat files, a t
|
|
|
43844
43858
|
- 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\`.
|
|
43845
43859
|
- 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.
|
|
43846
43860
|
|
|
43861
|
+
## Friction assist
|
|
43862
|
+
|
|
43863
|
+
\`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.
|
|
43864
|
+
|
|
43847
43865
|
## When to stop for confirmation
|
|
43848
43866
|
|
|
43849
43867
|
\`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.
|
|
@@ -43986,7 +44004,7 @@ Stop before: approving a Charter, signing a manifest, connecting a tool or crede
|
|
|
43986
44004
|
order: 72,
|
|
43987
44005
|
title: "Settings guide",
|
|
43988
44006
|
summary: "How to use Settings as the control plane for company access, channels, providers, tokens, and operating defaults.",
|
|
43989
|
-
version: "2026-
|
|
44007
|
+
version: "2026-07-01.1",
|
|
43990
44008
|
public: true,
|
|
43991
44009
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
43992
44010
|
stages: ["company_setup", "staffing"],
|
|
@@ -44007,6 +44025,10 @@ Settings is the company control plane. Use it to manage members, invites, provid
|
|
|
44007
44025
|
|
|
44008
44026
|
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.
|
|
44009
44027
|
|
|
44028
|
+
## Direct links
|
|
44029
|
+
|
|
44030
|
+
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.
|
|
44031
|
+
|
|
44010
44032
|
## What belongs in Settings
|
|
44011
44033
|
|
|
44012
44034
|
- 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.
|
|
@@ -44212,7 +44234,7 @@ The runner should not store raw credentials in local notes, prompts, or logs. It
|
|
|
44212
44234
|
order: 76,
|
|
44213
44235
|
title: "Stock agents guide",
|
|
44214
44236
|
summary: "How to use stock agent templates as starting points while preserving seat-specific Charters and human approval.",
|
|
44215
|
-
version: "2026-
|
|
44237
|
+
version: "2026-07-01.1",
|
|
44216
44238
|
public: true,
|
|
44217
44239
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
44218
44240
|
stages: ["staffing"],
|
|
@@ -44239,7 +44261,7 @@ Before dry run, review the template's responsibilities, tool assumptions, escala
|
|
|
44239
44261
|
|
|
44240
44262
|
## Template catalog
|
|
44241
44263
|
|
|
44242
|
-
|
|
44264
|
+
Eight stock templates ship today. Every one is draft-first, escalates the actions in its safety boundaries, and keeps spend, external sends, and credential scope human-owned until a Steward sets a threshold. Read the live list with \`agent_template.list\` / \`rost_list_agent_templates\` or the \`rost://agents/templates\` resource.
|
|
44243
44265
|
|
|
44244
44266
|
### AP Clerk \u2014 \`stock/ap-clerk\`
|
|
44245
44267
|
|
|
@@ -44290,6 +44312,13 @@ Seven stock templates ship today. Every one is draft-first, escalates the action
|
|
|
44290
44312
|
- Default tools: Release artifacts read; Issue tracker draft.
|
|
44291
44313
|
- Safety boundary: release approval, production changes, customer-impacting risk, security/privacy, and conflicting evidence escalate.
|
|
44292
44314
|
|
|
44315
|
+
### Signal collector \u2014 \`stock/signal-collector\`
|
|
44316
|
+
|
|
44317
|
+
- Function: Ops/Finance. Tier: \`2 \xB7 Fast-follow\`.
|
|
44318
|
+
- Responsibilities: Read this seat's agent-sourced measurables; Propose draft readings with cited sources; Escalate any number it cannot read confidently.
|
|
44319
|
+
- Default tools: Signal draft readings.
|
|
44320
|
+
- Safety boundary: reads only this seat's agent-sourced measurables and proposes each as a draft a human confirms; ambiguous or conflicting numbers escalate rather than guess, and it never confirms its own readings.
|
|
44321
|
+
|
|
44293
44322
|
## Create from a template (CLI or MCP)
|
|
44294
44323
|
|
|
44295
44324
|
1. List templates: \`agent_template.list\` / \`rost_list_agent_templates\` with \`{}\` (scope: tenant).
|
|
@@ -44395,7 +44424,7 @@ Name the failing surface, collect evidence, recommend the smallest correction, a
|
|
|
44395
44424
|
order: 78,
|
|
44396
44425
|
title: "AI model data handling guide",
|
|
44397
44426
|
summary: "How {{brand}} cloud agents, local MCP sessions, runners, BYOK, and connected tools handle model-bound data.",
|
|
44398
|
-
version: "2026-
|
|
44427
|
+
version: "2026-07-01.2",
|
|
44399
44428
|
public: true,
|
|
44400
44429
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
44401
44430
|
stages: ["company_setup", "staffing", "operating_rhythm"],
|
|
@@ -44482,7 +44511,9 @@ Cloud prompts should not include raw credentials, long exports, unrelated custom
|
|
|
44482
44511
|
|
|
44483
44512
|
## BYOK Anthropic
|
|
44484
44513
|
|
|
44485
|
-
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.
|
|
44514
|
+
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. The same tenant-key resolution also covers the read-only advisory analyzers (friction assist, compass-alignment drift, and the coach draft-guide): when a tenant has saved its own Anthropic key those advisory calls use it and are metered on that key, otherwise they fall back to the platform key, and when neither is available they degrade to their deterministic summary rather than failing.
|
|
44515
|
+
|
|
44516
|
+
{{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.
|
|
44486
44517
|
|
|
44487
44518
|
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.
|
|
44488
44519
|
|
|
@@ -44805,7 +44836,7 @@ Agents should not teach EOS as EOS. They should use {{brand}}'s method. When a u
|
|
|
44805
44836
|
order: 11,
|
|
44806
44837
|
title: "Compass authoring guide",
|
|
44807
44838
|
summary: "Field-by-field guidance for authoring a strong Compass document directly, with the full JSON contract and worked examples.",
|
|
44808
|
-
version: "2026-
|
|
44839
|
+
version: "2026-07-01.1",
|
|
44809
44840
|
public: true,
|
|
44810
44841
|
audiences: ["cli", "mcp", "in_app_agent"],
|
|
44811
44842
|
stages: ["company_setup"],
|
|
@@ -44841,7 +44872,7 @@ The Compass is the company's stated direction: its purpose, principles, and the
|
|
|
44841
44872
|
|
|
44842
44873
|
## How to derive a Compass from company context
|
|
44843
44874
|
|
|
44844
|
-
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.
|
|
44875
|
+
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\`).
|
|
44845
44876
|
|
|
44846
44877
|
## Every Compass field is a "field" object
|
|
44847
44878
|
|
|
@@ -45972,6 +46003,7 @@ var COMMAND_MANIFEST = [
|
|
|
45972
46003
|
{ "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." },
|
|
45973
46004
|
{ "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": [] } } },
|
|
45974
46005
|
{ "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." },
|
|
46006
|
+
{ "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." },
|
|
45975
46007
|
{ "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." },
|
|
45976
46008
|
{ "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." },
|
|
45977
46009
|
{ "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." },
|
|
@@ -46067,6 +46099,7 @@ var COMMAND_MANIFEST = [
|
|
|
46067
46099
|
{ "id": "signal.import", "namespace": "signal", "action": "import", "title": "Import Signals from CSV", "description": "Bulk-import measurable definitions and their historical readings from a parsed scorecard export (e.g. a ninety CSV). Owners are seat names resolved to seats; readings are human-confirmed. Idempotent \u2014 re-import upserts by (measurable, period, cadence). Re-importing a measurable at a different cadence is rejected, not overwritten.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "dry_run", "flag": "dry-run", "type": "boolean", "required": false }], "hasComplexInput": true, "help": "Bulk-import measurables + historical readings from a parsed scorecard export (owners resolve to seats); idempotent, human-confirmed, re-import upserts by period." },
|
|
46068
46100
|
{ "id": "signal.list", "namespace": "signal", "action": "list", "title": "List Signals", "description": "List measurable definitions with their latest reading and on/off-track state. Seat-scoped callers see only their own seat.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }], "hasComplexInput": false, "help": "List Signals to find measurable ids and current on/off-track state before recording or correcting readings." },
|
|
46069
46101
|
{ "id": "signal.preview", "namespace": "signal", "action": "preview", "title": "Preview a signal source", "description": "Execute a candidate rest-for-signals recipe LIVE and read-only against an allowlisted HTTPS source, returning the extracted scalar and a short-lived preview_token required by signal.bind. Guarded (SSRF + restricted JSONPath); writes a signal_pull_log row. Never mutates.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "measurable_id", "flag": "measurable-id", "type": "string", "required": true }, { "name": "integration_id", "flag": "integration-id", "type": "string", "required": true }, { "name": "cadence", "flag": "cadence", "type": "enum", "required": true, "enumValues": ["daily", "weekly", "monthly", "quarterly", "annual"] }, { "name": "host_allowlist", "flag": "host-allowlist", "type": "array", "required": true, "itemType": "string" }], "hasComplexInput": true, "help": "Run a candidate recipe live but read-only against an allowlisted HTTPS source; returns the extracted value + a short-lived preview_token. Never mutates; the credential is resolved from the connection at execution." },
|
|
46102
|
+
{ "id": "signal.report", "namespace": "signal", "action": "report", "title": "Report a Signal reading", "description": "A per-seat Signal agent proposes one draft reading for one of its OWN seat's agent-sourced measurables (a judgment/transform pull \u2014 reading a number off a document, reconciling messy data, estimating progress). The reading lands unconfirmed; a human confirms it with signal.confirm_reading. Refuses any measurable not owned by the acting seat or whose source is not 'agent'.", "requiredScope": "seat", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "measurable_id", "flag": "measurable-id", "type": "string", "required": true }, { "name": "value", "flag": "value", "type": "number", "required": true }, { "name": "period_start", "flag": "period-start", "type": "string", "required": false }, { "name": "note", "flag": "note", "type": "string", "required": false }, { "name": "confidence", "flag": "confidence", "type": "enum", "required": false, "enumValues": ["low", "medium", "high"] }], "hasComplexInput": false, "help": "A per-seat Signal agent proposes one draft reading for its own seat's agent-sourced measurable (a judgment/transform pull). The reading lands unconfirmed; a human confirms it with signal.confirm_reading. Refuses non-agent-sourced or other-seat measurables.", "example": { "measurable_id": "01900001-0001-7001-8001-000000000001", "value": 42, "note": "Read off the Q3 close PDF, page 2 \u2014 42 reconciled invoices this week.", "confidence": "high" } },
|
|
46070
46103
|
{ "id": "signup.provision_tenant", "namespace": "signup", "action": "provision_tenant", "title": "Create company", "description": "Provision a new company (tenant) for the authenticated CLI user with no web step.", "requiredScope": "user", "confirmation": "none", "exposeOverMcp": false, "fields": [{ "name": "company_name", "flag": "company-name", "type": "string", "required": true }], "hasComplexInput": false, "help": "Create the company headlessly when the CLI session has no tenant yet; it becomes the user's active tenant so the rest of setup runs with no web step." },
|
|
46071
46104
|
{ "id": "skill.assign_to_seat", "namespace": "skill", "action": "assign_to_seat", "title": "Assign skill to seat", "description": "Propose or human-approve a published immutable skill version for a Seat after checking required and optional tool dependencies.", "requiredScope": "seat", "confirmation": "human_required", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": true }, { "name": "slug", "flag": "slug", "type": "string", "required": false }, { "name": "skill_version_id", "flag": "skill-version-id", "type": "string", "required": false }, { "name": "status", "flag": "status", "type": "enum", "required": false, "enumValues": ["proposed", "approved"] }, { "name": "rationale", "flag": "rationale", "type": "string", "required": true }, { "name": "allow_blocked_proposal", "flag": "allow-blocked-proposal", "type": "boolean", "required": false }], "hasComplexInput": false, "help": "Propose or human-approve a published Skill for a Seat after dependency checks. Missing required tools block approval; optional tools are warnings only." },
|
|
46072
46105
|
{ "id": "skill.assigned.list", "namespace": "skill", "action": "assigned.list", "title": "List assigned skills", "description": "List approved skill assignments for a Seat, including immutable version, dependency status, rationale, and approval time. Seat-scoped callers can only read their own assignments.", "requiredScope": "tenant", "confirmation": "none", "exposeOverMcp": true, "fields": [{ "name": "seat_id", "flag": "seat-id", "type": "string", "required": false }], "hasComplexInput": false, "help": "List approved Skills assigned to a Seat before loading instructions into a run. A seat-scoped token can only read its own assigned Skills." },
|