@rosthq/cli 0.7.0 → 0.7.1
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 +18 -8
- package/dist/index.js.map +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -41877,7 +41877,7 @@ The Compass is drafted, then activated by a human through supersession.
|
|
|
41877
41877
|
order: 15,
|
|
41878
41878
|
title: "AICOS chat guide",
|
|
41879
41879
|
summary: "How the AI Chief of Staff chat works in the authenticated app shell and what it can safely do today.",
|
|
41880
|
-
version: "2026-07-02.
|
|
41880
|
+
version: "2026-07-02.5",
|
|
41881
41881
|
public: true,
|
|
41882
41882
|
audiences: ["human", "in_app_agent"],
|
|
41883
41883
|
stages: ["company_setup", "operating_rhythm"],
|
|
@@ -41925,6 +41925,10 @@ The current chat harness shows the effective lane and model. The initial lane is
|
|
|
41925
41925
|
|
|
41926
41926
|
Model behavior is now explicit in the AICOS session contract. A thread can run in **Auto** or use a pinned compatible model from the guided catalog. Auto chooses a fast tier for short low-risk turns, the balanced default for normal operating help, and a higher-reasoning tier for onboarding synthesis or large context. The panel shows the effective model, disables lower-context choices once the active thread outgrows them, and tells the user to start a new session for those models. Session context is estimated and compacted into a durable summary when it crosses the configured threshold; raw messages remain in history, but future model calls can use the summary rather than resending the whole thread. Platform allowance and BYOK state are checked before routing; an exhausted included allowance keeps AICOS in guided mode and points the user toward BYOK/manual continuation. Because the DER-1068 implementation still uses the deterministic harness, it does not create fake llm_calls rows or settle fake allowance usage; reservation/settlement belongs to the real provider call path.
|
|
41927
41927
|
|
|
41928
|
+
During onboarding, the deterministic harness may execute only explicit low-risk draft actions. In the Responsibility Graph step, a user with setup/action authority can ask AICOS to create one named draft seat per turn; the seat stays vacant, is traceable to the AICOS message through artifact sources, and still needs human review before staffing, Charters, manifests, or go-live. Compass and Charter help remains draft guidance and clarifying questions until the live drafting planner lands. AICOS never silently finishes onboarding, approves Compass or Charter content, signs manifests, goes live, stores credentials, changes autonomy policy, or invites external people; those actions remain human-confirmed.
|
|
41929
|
+
|
|
41930
|
+
AICOS posture is resolved on the server from the current user's AICOS access scope plus the tenant's Company guardrails. **Report-only** can read, explain, and draft guidance, but it cannot mutate setup or operating state. **Balanced** can perform narrow low-risk internal draft/setup actions and stops at human gates. **High autonomy** can perform allowed internal low-risk actions without changing the hard prohibitions: AICOS still cannot approve its own Charter or manifest, handle credentials, send externally, spend money, perform destructive/admin changes, go live, expand policy/access, or receive hidden sensitive data.
|
|
41931
|
+
|
|
41928
41932
|
AICOS grounds answers from two source classes before producing user-visible setup or operating guidance:
|
|
41929
41933
|
|
|
41930
41934
|
- **Reference documents** \u2014 public {{brand}} guides such as this chat guide, onboarding guidance, the Responsibility Graph playbook, tool-access guidance, and confirmation guidance. AICOS retrieves the narrowest relevant guide before setup, Charter, Signal, Friction, Cascade, Sync, tool-access, or onboarding advice.
|
|
@@ -44600,7 +44604,7 @@ Every notification should include the seat, cause, evidence, and requested decis
|
|
|
44600
44604
|
order: 75,
|
|
44601
44605
|
title: "Local runner guide",
|
|
44602
44606
|
summary: "How local agent sessions and runner surfaces should operate through {{brand}} without bypassing Charters or audit.",
|
|
44603
|
-
version: "2026-07-02.
|
|
44607
|
+
version: "2026-07-02.2",
|
|
44604
44608
|
public: true,
|
|
44605
44609
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
44606
44610
|
stages: ["staffing", "operating_rhythm"],
|
|
@@ -44632,7 +44636,7 @@ Use Local Runner when a Seat should run on a machine you control. Install it fro
|
|
|
44632
44636
|
|
|
44633
44637
|
Recommended paths:
|
|
44634
44638
|
|
|
44635
|
-
- **Always-on host:** \`{{cli}} runner install-service --name <runner-name> --execute\` installs a background service (macOS launchd user agent) that keeps the runner online
|
|
44639
|
+
- **Always-on host:** \`{{cli}} runner install-service --name <runner-name> --execute\` installs a background service (macOS launchd user agent, \`user/<uid>\` domain) that keeps the runner online. Manage it with \`{{cli}} runner start|stop|restart|status|logs|uninstall --name <runner-name>\`. On macOS this loads reliably when the runner user is logged in at the console; on a purely headless SSH box where that user is not at the console, run \`{{cli}} runner serve\` under a process supervisor instead.
|
|
44636
44640
|
- **Manual smoke:** \`{{cli}} runner serve --once\` heartbeats once and exits; \`{{cli}} runner serve --execute\` claims and executes runner work orders while it runs.
|
|
44637
44641
|
|
|
44638
44642
|
Two ways to authenticate and pair \u2014 both first-class, an agent can drive either entirely from the terminal:
|
|
@@ -49122,10 +49126,16 @@ async function pairIfNeeded(client, fetchImpl, appUrl2, config2, io) {
|
|
|
49122
49126
|
`);
|
|
49123
49127
|
return existing;
|
|
49124
49128
|
}
|
|
49125
|
-
|
|
49126
|
-
|
|
49129
|
+
let userCode;
|
|
49130
|
+
if (config2.userCode !== void 0) {
|
|
49131
|
+
userCode = config2.userCode;
|
|
49132
|
+
} else if (client) {
|
|
49133
|
+
userCode = await startPairing(client, config2);
|
|
49134
|
+
} else {
|
|
49135
|
+
throw new Error(
|
|
49136
|
+
`No paired runner state at ${config2.stateFile}. Provide --user-code <code> from Settings > Runners (Add a runner), or run \`${cliBrand.binName} login --device\` once to pair this runner.`
|
|
49137
|
+
);
|
|
49127
49138
|
}
|
|
49128
|
-
const userCode = config2.userCode ?? await startPairing(client, config2);
|
|
49129
49139
|
const claim = await post2(fetchImpl, appUrl2, "/api/runner/pairing/claim", { user_code: userCode });
|
|
49130
49140
|
const runnerSecret = claim.json.runner_secret;
|
|
49131
49141
|
const runnerId = claim.json.runner_id;
|
|
@@ -49679,10 +49689,10 @@ function serviceLabel(safeName) {
|
|
|
49679
49689
|
return `com.${cliBrand.binName}.runner.${safeName}`;
|
|
49680
49690
|
}
|
|
49681
49691
|
function domainTarget(uid) {
|
|
49682
|
-
return `
|
|
49692
|
+
return `user/${uid}`;
|
|
49683
49693
|
}
|
|
49684
49694
|
function serviceTarget(uid, label) {
|
|
49685
|
-
return `
|
|
49695
|
+
return `user/${uid}/${label}`;
|
|
49686
49696
|
}
|
|
49687
49697
|
async function bootoutQuietly(exec, uid, plistPath) {
|
|
49688
49698
|
try {
|