@skrr-ai/cli 0.1.92 → 0.1.94
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/base-command.d.ts +44 -0
- package/dist/base-command.js +96 -0
- package/dist/commands/agents/badge.d.ts +41 -0
- package/dist/commands/agents/badge.js +158 -0
- package/dist/commands/agents/create.d.ts +24 -0
- package/dist/commands/agents/create.js +212 -0
- package/dist/commands/agents/embed.d.ts +20 -0
- package/dist/commands/agents/embed.js +61 -0
- package/dist/commands/agents/operating-plan.d.ts +11 -0
- package/dist/commands/agents/operating-plan.js +54 -0
- package/dist/commands/agents/roles/example.d.ts +11 -0
- package/dist/commands/agents/roles/example.js +30 -0
- package/dist/commands/{commitments/mode.d.ts → agents/roles/export.d.ts} +5 -5
- package/dist/commands/agents/roles/export.js +81 -0
- package/dist/commands/agents/roles/install.d.ts +12 -0
- package/dist/commands/agents/roles/install.js +48 -0
- package/dist/commands/agents/roles/list.d.ts +11 -0
- package/dist/commands/agents/roles/list.js +36 -0
- package/dist/commands/agents/roles/preview.d.ts +14 -0
- package/dist/commands/agents/roles/preview.js +49 -0
- package/dist/commands/agents/roles/withdraw.d.ts +13 -0
- package/dist/commands/agents/roles/withdraw.js +43 -0
- package/dist/commands/agents/share.d.ts +27 -0
- package/dist/commands/agents/share.js +100 -0
- package/dist/commands/agents/vanity.d.ts +21 -0
- package/dist/commands/agents/vanity.js +77 -0
- package/dist/commands/agents/visibility.d.ts +21 -1
- package/dist/commands/agents/visibility.js +112 -0
- package/dist/commands/commands.d.ts +1 -0
- package/dist/commands/commands.js +22 -9
- package/dist/commands/commitments/{autonomy-requests → cadence-requests}/decide.d.ts +5 -7
- package/dist/commands/commitments/{autonomy-requests → cadence-requests}/decide.js +13 -15
- package/dist/commands/commitments/cost.d.ts +1 -1
- package/dist/commands/commitments/cost.js +1 -1
- package/dist/commands/commitments/create.d.ts +0 -7
- package/dist/commands/commitments/create.js +9 -98
- package/dist/commands/commitments/delivery.js +3 -21
- package/dist/commands/commitments/doctor.js +28 -27
- package/dist/commands/commitments/effective-policy.js +5 -36
- package/dist/commands/commitments/evaluations.d.ts +15 -0
- package/dist/commands/commitments/evaluations.js +54 -0
- package/dist/commands/commitments/pack/activate.d.ts +11 -0
- package/dist/commands/commitments/pack/activate.js +22 -0
- package/dist/commands/commitments/pack/bind.js +1 -1
- package/dist/commands/commitments/remediate.js +2 -5
- package/dist/commands/commitments/show.js +1 -1
- package/dist/commands/commitments/update.js +9 -9
- package/dist/commands/commitments/wake-capabilities.d.ts +1 -3
- package/dist/commands/commitments/wake-capabilities.js +5 -21
- package/dist/commands/earnings/attributions.d.ts +17 -0
- package/dist/commands/earnings/attributions.js +82 -0
- package/dist/commands/earnings/index.js +2 -1
- package/dist/commands/generate-recovery-code.js +4 -3
- package/dist/commands/github/allow-tools.d.ts +1 -0
- package/dist/commands/github/app/install.d.ts +1 -0
- package/dist/commands/github/app/status.d.ts +1 -0
- package/dist/commands/github/connect.d.ts +1 -0
- package/dist/commands/github/connections.d.ts +1 -0
- package/dist/commands/github/disconnect.d.ts +1 -0
- package/dist/commands/github/finalize.d.ts +1 -0
- package/dist/commands/github/reconnect.d.ts +1 -0
- package/dist/commands/github/run.d.ts +1 -0
- package/dist/commands/github/tools.d.ts +1 -0
- package/dist/commands/integrations/connections/connect.d.ts +1 -0
- package/dist/commands/integrations/connections/disconnect.d.ts +1 -0
- package/dist/commands/integrations/connections/finalize.d.ts +1 -0
- package/dist/commands/integrations/connections/list.d.ts +1 -0
- package/dist/commands/integrations/connections/reconnect.d.ts +1 -0
- package/dist/commands/integrations/execute.d.ts +1 -0
- package/dist/commands/integrations/search.d.ts +1 -0
- package/dist/commands/integrations/toolkits.d.ts +1 -0
- package/dist/commands/integrations/tools/allow.d.ts +1 -0
- package/dist/commands/integrations/tools/list.d.ts +1 -0
- package/dist/commands/login.js +12 -0
- package/dist/commands/machines/dedicated/logs.d.ts +19 -0
- package/dist/commands/machines/dedicated/logs.js +103 -0
- package/dist/commands/machines/dedicated/power/set.js +1 -1
- package/dist/commands/open.d.ts +24 -0
- package/dist/commands/open.js +74 -0
- package/dist/commands/projects/archive.d.ts +1 -0
- package/dist/commands/projects/archive.js +23 -0
- package/dist/commands/projects/delete.d.ts +1 -0
- package/dist/commands/projects/delete.js +23 -0
- package/dist/commands/projects/list.d.ts +3 -0
- package/dist/commands/projects/list.js +12 -2
- package/dist/commands/spaces/actions/add.js +4 -3
- package/dist/commands/spaces/actions/available.js +3 -2
- package/dist/commands/spaces/actions/list.js +5 -4
- package/dist/commands/spaces/actions/replace.js +6 -5
- package/dist/commands/spaces/archive.js +3 -2
- package/dist/commands/spaces/auto-executor/preview.js +4 -3
- package/dist/commands/spaces/auto-executor/run.js +4 -3
- package/dist/commands/spaces/auto-executor/runs.js +3 -2
- package/dist/commands/spaces/auto-executor/update.js +4 -3
- package/dist/commands/spaces/bootstrap.js +3 -2
- package/dist/commands/spaces/briefs/delete.js +3 -2
- package/dist/commands/spaces/briefs/get.js +3 -2
- package/dist/commands/spaces/briefs/list.js +3 -2
- package/dist/commands/spaces/briefs/set.js +5 -4
- package/dist/commands/spaces/capacity.js +5 -4
- package/dist/commands/spaces/conversations.js +3 -2
- package/dist/commands/spaces/cycles/create.js +3 -2
- package/dist/commands/spaces/cycles/graph.js +2 -1
- package/dist/commands/spaces/cycles/list.js +3 -2
- package/dist/commands/spaces/cycles/settings.js +4 -3
- package/dist/commands/spaces/cycles/show.js +3 -2
- package/dist/commands/spaces/cycles/update.js +3 -2
- package/dist/commands/spaces/delete.js +4 -3
- package/dist/commands/spaces/expertise-suggestions.js +4 -3
- package/dist/commands/spaces/files/delete.js +3 -2
- package/dist/commands/spaces/files/folders/create.js +3 -2
- package/dist/commands/spaces/files/folders/delete.js +3 -2
- package/dist/commands/spaces/files/folders/list.js +3 -2
- package/dist/commands/spaces/files/folders/update.js +3 -2
- package/dist/commands/spaces/files/list.js +3 -2
- package/dist/commands/spaces/files/move.js +3 -2
- package/dist/commands/spaces/files/rename.js +3 -2
- package/dist/commands/spaces/files/upload.js +6 -5
- package/dist/commands/spaces/github-automations/set.js +3 -2
- package/dist/commands/spaces/github-automations/show.js +3 -2
- package/dist/commands/spaces/goals.js +2 -1
- package/dist/commands/spaces/heartbeats/create.js +4 -3
- package/dist/commands/spaces/heartbeats/delete.js +4 -3
- package/dist/commands/spaces/heartbeats/list.js +4 -3
- package/dist/commands/spaces/heartbeats/status.js +3 -2
- package/dist/commands/spaces/heartbeats/update.js +4 -3
- package/dist/commands/spaces/insights.js +5 -4
- package/dist/commands/spaces/labels/add.js +4 -3
- package/dist/commands/spaces/labels/list.js +2 -1
- package/dist/commands/spaces/labels/remove.js +4 -3
- package/dist/commands/spaces/list.d.ts +3 -0
- package/dist/commands/spaces/list.js +11 -2
- package/dist/commands/spaces/live/cards/create.js +3 -2
- package/dist/commands/spaces/live/cards/list.js +3 -2
- package/dist/commands/spaces/live/cards/reorder.js +7 -2
- package/dist/commands/spaces/live/scene.js +4 -3
- package/dist/commands/spaces/members/add.js +7 -6
- package/dist/commands/spaces/members/list.js +4 -3
- package/dist/commands/spaces/members/remove.js +7 -6
- package/dist/commands/spaces/move.js +3 -2
- package/dist/commands/spaces/pin.js +5 -4
- package/dist/commands/spaces/preferences/show.js +4 -3
- package/dist/commands/spaces/preferences/tabs.js +4 -3
- package/dist/commands/spaces/revisions.js +3 -2
- package/dist/commands/spaces/room/ensure.js +5 -4
- package/dist/commands/spaces/room/messages.js +3 -2
- package/dist/commands/spaces/room/show.js +5 -4
- package/dist/commands/spaces/skills/add.js +4 -3
- package/dist/commands/spaces/skills/list.js +3 -2
- package/dist/commands/spaces/skills/pin.js +4 -3
- package/dist/commands/spaces/skills/remove.js +4 -3
- package/dist/commands/spaces/snapshot.js +3 -2
- package/dist/commands/spaces/states/archive.js +3 -2
- package/dist/commands/spaces/states/create.js +3 -2
- package/dist/commands/spaces/states/list.js +3 -2
- package/dist/commands/spaces/states/reorder.js +2 -1
- package/dist/commands/spaces/states/update.js +3 -2
- package/dist/commands/spaces/summary.js +4 -3
- package/dist/commands/spaces/tasks.d.ts +3 -0
- package/dist/commands/spaces/tasks.js +14 -3
- package/dist/commands/spaces/triggers/delete.js +5 -4
- package/dist/commands/spaces/triggers/set.js +4 -3
- package/dist/commands/spaces/triggers/show.js +4 -3
- package/dist/commands/spaces/unarchive.js +3 -2
- package/dist/commands/spaces/update.js +5 -4
- package/dist/commands/spaces/views/create.js +3 -2
- package/dist/commands/spaces/views/list.js +3 -2
- package/dist/commands/spaces/views/reorder.js +6 -3
- package/dist/commands/spaces/views/subscribe.js +2 -1
- package/dist/commands/spaces/views/subscriptions.js +1 -0
- package/dist/commands/spaces/views/unsubscribe.js +2 -1
- package/dist/commands/spaces/widgets/add.js +4 -3
- package/dist/commands/spaces/widgets/list.js +3 -2
- package/dist/commands/spaces/widgets/remove.js +5 -4
- package/dist/commands/spaces/work-graph.js +2 -1
- package/dist/commands/store/install.d.ts +1 -1
- package/dist/commands/store/install.js +24 -8
- package/dist/commands/store/show.d.ts +25 -0
- package/dist/commands/store/show.js +203 -0
- package/dist/commands/store/stats.d.ts +33 -0
- package/dist/commands/store/stats.js +258 -0
- package/dist/commands/tasks/actions/attach.js +1 -1
- package/dist/commands/tasks/actions/detach.js +4 -3
- package/dist/commands/tasks/activity.js +3 -2
- package/dist/commands/tasks/ancestors.js +2 -1
- package/dist/commands/tasks/approvals/create.js +2 -1
- package/dist/commands/tasks/approvals/delete.js +3 -2
- package/dist/commands/tasks/approvals/list.js +5 -4
- package/dist/commands/tasks/approvals/resolve.js +2 -1
- package/dist/commands/tasks/archive.js +3 -2
- package/dist/commands/tasks/assign.js +4 -3
- package/dist/commands/tasks/attachments/delete.js +3 -2
- package/dist/commands/tasks/attachments/download.d.ts +1 -0
- package/dist/commands/tasks/attachments/download.js +20 -1
- package/dist/commands/tasks/attachments/list.js +2 -1
- package/dist/commands/tasks/attachments/set-role.js +2 -1
- package/dist/commands/tasks/attachments/upload.js +2 -1
- package/dist/commands/tasks/bulk-update.d.ts +1 -0
- package/dist/commands/tasks/bulk-update.js +106 -15
- package/dist/commands/tasks/cancel-cascade.d.ts +1 -0
- package/dist/commands/tasks/cancel-cascade.js +13 -3
- package/dist/commands/tasks/cascade-status.js +2 -1
- package/dist/commands/tasks/checkout.js +3 -2
- package/dist/commands/tasks/children.js +2 -1
- package/dist/commands/tasks/comments/add.js +7 -6
- package/dist/commands/tasks/comments/anchor.js +8 -7
- package/dist/commands/tasks/comments/delete.js +3 -2
- package/dist/commands/tasks/comments/list.js +2 -1
- package/dist/commands/tasks/comments/reopen.js +3 -2
- package/dist/commands/tasks/comments/resolve.js +3 -2
- package/dist/commands/tasks/create-tree.d.ts +63 -0
- package/dist/commands/tasks/create-tree.js +197 -4
- package/dist/commands/tasks/delete.js +5 -4
- package/dist/commands/tasks/descendants.js +2 -1
- package/dist/commands/tasks/dri-plan.js +3 -2
- package/dist/commands/tasks/dri-run.js +3 -2
- package/dist/commands/tasks/dri-status.js +2 -1
- package/dist/commands/tasks/duplicate-pipeline.js +2 -1
- package/dist/commands/tasks/execution-summary.js +2 -1
- package/dist/commands/tasks/execution-timeline.js +2 -1
- package/dist/commands/tasks/fork.js +1 -0
- package/dist/commands/tasks/forward.js +4 -3
- package/dist/commands/tasks/handover.js +1 -0
- package/dist/commands/tasks/interrupt.js +3 -2
- package/dist/commands/tasks/labels/attach.js +4 -3
- package/dist/commands/tasks/labels/detach.js +4 -3
- package/dist/commands/tasks/labels/suggest.js +5 -4
- package/dist/commands/tasks/list.d.ts +27 -1
- package/dist/commands/tasks/list.js +101 -3
- package/dist/commands/tasks/move.js +4 -3
- package/dist/commands/tasks/output.js +6 -5
- package/dist/commands/tasks/pause-schedule.js +3 -2
- package/dist/commands/tasks/promote.js +1 -0
- package/dist/commands/tasks/prompt-log.js +2 -1
- package/dist/commands/tasks/release.js +5 -4
- package/dist/commands/tasks/remind.js +2 -1
- package/dist/commands/tasks/replay.js +3 -2
- package/dist/commands/tasks/report.js +1 -0
- package/dist/commands/tasks/resume-schedule.js +3 -2
- package/dist/commands/tasks/retry-schedule.js +3 -2
- package/dist/commands/tasks/retry.js +10 -9
- package/dist/commands/tasks/revisions.js +2 -1
- package/dist/commands/tasks/runs.js +6 -5
- package/dist/commands/tasks/schedule.js +3 -2
- package/dist/commands/tasks/self-schedule.js +6 -5
- package/dist/commands/tasks/skills/pin.js +3 -2
- package/dist/commands/tasks/skills/unpin.js +3 -2
- package/dist/commands/tasks/snooze.js +6 -5
- package/dist/commands/tasks/start-all.js +5 -4
- package/dist/commands/tasks/subscribe.js +1 -0
- package/dist/commands/tasks/tags/add.js +4 -3
- package/dist/commands/tasks/tags/remove.js +4 -3
- package/dist/commands/tasks/timeline.js +3 -2
- package/dist/commands/tasks/today.d.ts +4 -1
- package/dist/commands/tasks/today.js +12 -2
- package/dist/commands/tasks/transcript.js +6 -5
- package/dist/commands/tasks/unschedule.js +3 -2
- package/dist/commands/tasks/unsnooze.js +3 -2
- package/dist/commands/tasks/unsubscribe.js +2 -1
- package/dist/commands/tasks/update.js +5 -4
- package/dist/commands/tasks/wait.js +5 -4
- package/dist/lib/agent-distribution.d.ts +37 -0
- package/dist/lib/agent-distribution.js +63 -0
- package/dist/lib/agent-ref.d.ts +69 -0
- package/dist/lib/agent-ref.js +168 -0
- package/dist/lib/api-fetch.d.ts +2 -0
- package/dist/lib/api-fetch.js +14 -3
- package/dist/lib/command-hygiene.d.ts +13 -0
- package/dist/lib/command-hygiene.js +62 -2
- package/dist/lib/commitment-product.d.ts +0 -6
- package/dist/lib/commitment-product.js +1 -30
- package/dist/lib/commitments.d.ts +9 -45
- package/dist/lib/commitments.js +24 -95
- package/dist/lib/dedicated-power.d.ts +5 -0
- package/dist/lib/dedicated-power.js +30 -2
- package/dist/lib/dry-run-plans.d.ts +50 -0
- package/dist/lib/dry-run-plans.js +85 -0
- package/dist/lib/json-output.d.ts +31 -0
- package/dist/lib/json-output.js +78 -0
- package/dist/lib/list-output.d.ts +75 -0
- package/dist/lib/list-output.js +266 -0
- package/dist/lib/machine-daemon-log.d.ts +36 -0
- package/dist/lib/machine-daemon-log.js +78 -0
- package/dist/lib/node-adapter.js +10 -1
- package/dist/lib/northstars.js +1 -1
- package/dist/lib/open-target.d.ts +12 -0
- package/dist/lib/open-target.js +108 -0
- package/dist/lib/rate-limit-retry.d.ts +45 -0
- package/dist/lib/rate-limit-retry.js +88 -0
- package/dist/lib/roles.d.ts +98 -0
- package/dist/lib/roles.js +45 -0
- package/dist/lib/store-listing.d.ts +45 -0
- package/dist/lib/store-listing.js +186 -0
- package/dist/lib/task-batch.d.ts +67 -0
- package/dist/lib/task-batch.js +227 -0
- package/dist/lib/terminal-qr.d.ts +55 -0
- package/dist/lib/terminal-qr.js +119 -0
- package/dist/lib/web-url.d.ts +11 -0
- package/dist/lib/web-url.js +24 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/commitmentExecutionContract.d.ts +45 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/commitmentExecutionContract.js +550 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.d.ts +68 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.js +47 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionPermissionAuthority.d.ts +7 -44
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionPermissionAuthority.js +8 -47
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/commitmentExecutionContract.d.ts +45 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/commitmentExecutionContract.js +545 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.d.ts +68 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.js +46 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionPermissionAuthority.d.ts +7 -44
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionPermissionAuthority.js +8 -47
- package/dist/node_modules/@skrr-ai/auth-core/package.json +11 -1
- package/dist/node_modules/@skrr-ai/data-provider/index.js +7285 -6673
- package/dist/node_modules/@skrr-ai/data-provider/package.json +2 -2
- package/oclif.manifest.json +35937 -26820
- package/package.json +6 -2
- package/dist/commands/commitments/autonomy.d.ts +0 -30
- package/dist/commands/commitments/autonomy.js +0 -67
- package/dist/commands/commitments/mode.js +0 -58
- package/dist/commands/commitments/pack/promote.d.ts +0 -19
- package/dist/commands/commitments/pack/promote.js +0 -46
- package/dist/commands/commitments/pack/shadow.d.ts +0 -20
- package/dist/commands/commitments/pack/shadow.js +0 -42
|
@@ -155,6 +155,14 @@ export const DAEMON_COMPUTER_EVENTS = {
|
|
|
155
155
|
* `computer_declared_services_v1`.
|
|
156
156
|
*/
|
|
157
157
|
services: 'daemon:computer:services',
|
|
158
|
+
/**
|
|
159
|
+
* Read the tail of the daemon's OWN process log (a bounded, redacted copy of
|
|
160
|
+
* what its logger wrote since it started), for the owner who asks why their
|
|
161
|
+
* machine reconnected. Carries a `requestId` and the principal the API
|
|
162
|
+
* authorized (`observe`); the daemon checks the principal against the grant
|
|
163
|
+
* set it holds. Needs `computer_daemon_log_v1`.
|
|
164
|
+
*/
|
|
165
|
+
daemonLog: 'daemon:computer:log',
|
|
158
166
|
// daemon → API
|
|
159
167
|
/** The answer to any request that carried a `requestId`. */
|
|
160
168
|
ack: 'daemon:computer:ack',
|
|
@@ -315,6 +323,15 @@ export const COMPUTER_CAPABILITIES = {
|
|
|
315
323
|
* browser; nothing is proxied to it. Announced by the relay that serves it.
|
|
316
324
|
*/
|
|
317
325
|
declaredServices: 'computer_declared_services_v1',
|
|
326
|
+
/**
|
|
327
|
+
* The daemon serves the tail of its own process log
|
|
328
|
+
* (`daemon:computer:log`): an in-memory ring of lines its logger
|
|
329
|
+
* wrote, redacted before they enter the ring, read at the `watch` tier. It
|
|
330
|
+
* is NOT syslog or the journal and never reads either. Announced by the relay
|
|
331
|
+
* that serves it; a personal machine's daemon announces it too and refuses
|
|
332
|
+
* the read `consent_missing` until `skrr computer allow`.
|
|
333
|
+
*/
|
|
334
|
+
daemonLog: 'computer_daemon_log_v1',
|
|
318
335
|
/**
|
|
319
336
|
* The page follows the controlling window (§6.2 "a stable viewport", §7.1,
|
|
320
337
|
* OSK-13808): a browser `viewport` input, sent only by the attachment that
|
|
@@ -1197,3 +1214,32 @@ export function computerShowsDesktop(phase) {
|
|
|
1197
1214
|
export function computerOffersPowerActions(machineKind) {
|
|
1198
1215
|
return machineKind === 'dedicated';
|
|
1199
1216
|
}
|
|
1217
|
+
// ---------------------------------------------------------------------------
|
|
1218
|
+
// The daemon's own log (`computer_daemon_log_v1`)
|
|
1219
|
+
// ---------------------------------------------------------------------------
|
|
1220
|
+
/**
|
|
1221
|
+
* Why the daemon's log is a wire feature at all: the tenant uid on a Dedicated
|
|
1222
|
+
* Runtime guest cannot read syslog or the journal, so an owner could not see
|
|
1223
|
+
* why their machine's daemon reconnected or failed. The daemon keeps the last
|
|
1224
|
+
* lines its OWN logger wrote in memory and serves them; it opens no file and no
|
|
1225
|
+
* system log for this.
|
|
1226
|
+
*/
|
|
1227
|
+
export const COMPUTER_DAEMON_LOG_LEVELS = ['trace', 'debug', 'info', 'warn', 'error'];
|
|
1228
|
+
/** Every bound is the daemon's to enforce and the API's to validate against. */
|
|
1229
|
+
export const COMPUTER_DAEMON_LOG_LIMITS = {
|
|
1230
|
+
/** Lines the daemon keeps in memory; older ones fall off the front. */
|
|
1231
|
+
ringLines: 2000,
|
|
1232
|
+
/** A line longer than this is cut and marked, never kept whole. */
|
|
1233
|
+
lineChars: 1000,
|
|
1234
|
+
/** Lines returned when the caller names none. */
|
|
1235
|
+
defaultLines: 100,
|
|
1236
|
+
/** The most lines one answer carries. */
|
|
1237
|
+
maxLines: 500,
|
|
1238
|
+
/** The most bytes (UTF-8) one answer's text carries; far under the 1 MiB SSE frame. */
|
|
1239
|
+
maxBytes: 192 * 1024,
|
|
1240
|
+
/** The longest look-back a `sinceMs` may ask for (24 h; the ring is shorter anyway). */
|
|
1241
|
+
maxSinceMs: 24 * 60 * 60 * 1000,
|
|
1242
|
+
/** Requests the daemon answers per `rateWindowMs`; one more is `rate_limited`. */
|
|
1243
|
+
rateMax: 30,
|
|
1244
|
+
rateWindowMs: 60 * 1000,
|
|
1245
|
+
};
|
|
@@ -1,33 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
* execution contract governs the run's permissions, shared by the server and
|
|
4
|
-
* the daemon (OSK-11975 introduced it; it was implemented twice — the server
|
|
5
|
-
* read `kind !== 'commitment'`, the daemon read the `permissionSource` marker —
|
|
6
|
-
* which is exactly how a new contract kind or a new source value would drift
|
|
7
|
-
* them apart).
|
|
8
|
-
*
|
|
9
|
-
* The wire model:
|
|
10
|
-
*
|
|
11
|
-
* - The contract is closed (`hasOnlyKeys` on the daemon), so "whose
|
|
12
|
-
* permissions govern" can never ride INSIDE it. It is a top-level session
|
|
13
|
-
* field: `permissionSource`.
|
|
14
|
-
* - `'agent'` means the Agent's own configured permission mode, tool policy,
|
|
15
|
-
* Grants, session env, MCP servers and machine consent govern the run,
|
|
16
|
-
* exactly as for an unattended Task of the same Agent. Today only a
|
|
17
|
-
* `commitment` contract may carry it.
|
|
18
|
-
* - A `commitment` contract WITHOUT the marker (an older server mid-deploy)
|
|
19
|
-
* still governs permissions — the marker is the version signal, so its
|
|
20
|
-
* absence must keep the legacy fence, not silently lift it.
|
|
21
|
-
* - `task_delivery` contracts always govern, marker or not.
|
|
22
|
-
*
|
|
23
|
-
* Server vs daemon asymmetry, on purpose: the server STAMPS the marker
|
|
24
|
-
* (`permissionSourceForContract`), so on its own side the predicate reduces to
|
|
25
|
-
* "a commitment never governs" — `contractGovernsPermissions(c,
|
|
26
|
-
* permissionSourceForContract(c))` is exactly `kind !== 'commitment'`. The
|
|
27
|
-
* daemon reads the marker it received, because it cannot distinguish "new
|
|
28
|
-
* server, agent permissions" from "old server, contract fence" any other way.
|
|
29
|
-
* Both call the same function; only the input differs.
|
|
30
|
-
*/
|
|
1
|
+
/** Commitment context never overrides Agent permissions. Version 3 admission
|
|
2
|
+
* rejects old contracts; typed Task delivery is a separate frozen operation. */
|
|
31
3
|
/** The wire vocabulary for `permissionSource`. Top-level session field. */
|
|
32
4
|
export declare const SESSION_PERMISSION_SOURCES: readonly ["agent"];
|
|
33
5
|
export type SessionPermissionSource = (typeof SESSION_PERMISSION_SOURCES)[number];
|
|
@@ -37,7 +9,7 @@ export type SessionPermissionSource = (typeof SESSION_PERMISSION_SOURCES)[number
|
|
|
37
9
|
* a daemon without it (`COMMITMENT_AGENT_PERMISSIONS_RUNTIME_UNSUPPORTED`), so
|
|
38
10
|
* the marker never reaches a daemon that would ignore it.
|
|
39
11
|
*/
|
|
40
|
-
export declare const COMMITMENT_AGENT_PERMISSIONS_CAPABILITY = "
|
|
12
|
+
export declare const COMMITMENT_AGENT_PERMISSIONS_CAPABILITY = "commitment_execution_contract_v3";
|
|
41
13
|
/**
|
|
42
14
|
* The minimal contract shape this rule reads. The predicate only ever needs
|
|
43
15
|
* `kind` — keeping the input structural means this module never imports the
|
|
@@ -50,8 +22,7 @@ export type PermissionContractKind = {
|
|
|
50
22
|
} | null | undefined;
|
|
51
23
|
/**
|
|
52
24
|
* Untrusted wire input: anything but an exact vocabulary literal reads as
|
|
53
|
-
* absent.
|
|
54
|
-
* to "contract governs", the conservative answer.
|
|
25
|
+
* absent. An unknown marker carries no authority. Contract admission is validated separately.
|
|
55
26
|
*/
|
|
56
27
|
export declare function normalizeSessionPermissionSource(value: unknown): SessionPermissionSource | undefined;
|
|
57
28
|
/**
|
|
@@ -60,18 +31,10 @@ export declare function normalizeSessionPermissionSource(value: unknown): Sessio
|
|
|
60
31
|
* kind keeps its own authority and stamps nothing.
|
|
61
32
|
*/
|
|
62
33
|
export declare function permissionSourceForContract(contract: PermissionContractKind): SessionPermissionSource | undefined;
|
|
63
|
-
/**
|
|
64
|
-
*
|
|
65
|
-
* this rule lives.
|
|
66
|
-
*
|
|
67
|
-
* True for a non-commitment contract regardless of marker, and for a
|
|
68
|
-
* commitment whose server did not declare agent permissions. False for no
|
|
69
|
-
* contract at all, and for a commitment carrying `permissionSource: 'agent'`,
|
|
70
|
-
* which then follows the Agent's own permissions exactly as a Task does while
|
|
71
|
-
* the contract keeps its non-permission roles (normalized shape, ephemeral
|
|
72
|
-
* worktree, result validation, `GIT_OPTIONAL_LOCKS`, provider restriction).
|
|
34
|
+
/** Only typed Task delivery owns an effect-specific permission boundary.
|
|
35
|
+
* A Commitment is context for the Agent and cannot grant or restrict tools.
|
|
73
36
|
*/
|
|
74
|
-
export declare function contractGovernsPermissions(contract: PermissionContractKind,
|
|
37
|
+
export declare function contractGovernsPermissions(contract: PermissionContractKind, _permissionSource?: unknown): boolean;
|
|
75
38
|
/**
|
|
76
39
|
* The contract when it governs permissions, else `undefined` — for the sites
|
|
77
40
|
* that used `executionContract` as "is this run permission-fenced".
|
|
@@ -1,33 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
* execution contract governs the run's permissions, shared by the server and
|
|
4
|
-
* the daemon (OSK-11975 introduced it; it was implemented twice — the server
|
|
5
|
-
* read `kind !== 'commitment'`, the daemon read the `permissionSource` marker —
|
|
6
|
-
* which is exactly how a new contract kind or a new source value would drift
|
|
7
|
-
* them apart).
|
|
8
|
-
*
|
|
9
|
-
* The wire model:
|
|
10
|
-
*
|
|
11
|
-
* - The contract is closed (`hasOnlyKeys` on the daemon), so "whose
|
|
12
|
-
* permissions govern" can never ride INSIDE it. It is a top-level session
|
|
13
|
-
* field: `permissionSource`.
|
|
14
|
-
* - `'agent'` means the Agent's own configured permission mode, tool policy,
|
|
15
|
-
* Grants, session env, MCP servers and machine consent govern the run,
|
|
16
|
-
* exactly as for an unattended Task of the same Agent. Today only a
|
|
17
|
-
* `commitment` contract may carry it.
|
|
18
|
-
* - A `commitment` contract WITHOUT the marker (an older server mid-deploy)
|
|
19
|
-
* still governs permissions — the marker is the version signal, so its
|
|
20
|
-
* absence must keep the legacy fence, not silently lift it.
|
|
21
|
-
* - `task_delivery` contracts always govern, marker or not.
|
|
22
|
-
*
|
|
23
|
-
* Server vs daemon asymmetry, on purpose: the server STAMPS the marker
|
|
24
|
-
* (`permissionSourceForContract`), so on its own side the predicate reduces to
|
|
25
|
-
* "a commitment never governs" — `contractGovernsPermissions(c,
|
|
26
|
-
* permissionSourceForContract(c))` is exactly `kind !== 'commitment'`. The
|
|
27
|
-
* daemon reads the marker it received, because it cannot distinguish "new
|
|
28
|
-
* server, agent permissions" from "old server, contract fence" any other way.
|
|
29
|
-
* Both call the same function; only the input differs.
|
|
30
|
-
*/
|
|
1
|
+
/** Commitment context never overrides Agent permissions. Version 3 admission
|
|
2
|
+
* rejects old contracts; typed Task delivery is a separate frozen operation. */
|
|
31
3
|
/** The wire vocabulary for `permissionSource`. Top-level session field. */
|
|
32
4
|
export const SESSION_PERMISSION_SOURCES = ['agent'];
|
|
33
5
|
/**
|
|
@@ -36,11 +8,10 @@ export const SESSION_PERMISSION_SOURCES = ['agent'];
|
|
|
36
8
|
* a daemon without it (`COMMITMENT_AGENT_PERMISSIONS_RUNTIME_UNSUPPORTED`), so
|
|
37
9
|
* the marker never reaches a daemon that would ignore it.
|
|
38
10
|
*/
|
|
39
|
-
export const COMMITMENT_AGENT_PERMISSIONS_CAPABILITY = '
|
|
11
|
+
export const COMMITMENT_AGENT_PERMISSIONS_CAPABILITY = 'commitment_execution_contract_v3';
|
|
40
12
|
/**
|
|
41
13
|
* Untrusted wire input: anything but an exact vocabulary literal reads as
|
|
42
|
-
* absent.
|
|
43
|
-
* to "contract governs", the conservative answer.
|
|
14
|
+
* absent. An unknown marker carries no authority. Contract admission is validated separately.
|
|
44
15
|
*/
|
|
45
16
|
export function normalizeSessionPermissionSource(value) {
|
|
46
17
|
return SESSION_PERMISSION_SOURCES.includes(value)
|
|
@@ -55,21 +26,11 @@ export function normalizeSessionPermissionSource(value) {
|
|
|
55
26
|
export function permissionSourceForContract(contract) {
|
|
56
27
|
return contract?.kind === 'commitment' ? 'agent' : undefined;
|
|
57
28
|
}
|
|
58
|
-
/**
|
|
59
|
-
*
|
|
60
|
-
* this rule lives.
|
|
61
|
-
*
|
|
62
|
-
* True for a non-commitment contract regardless of marker, and for a
|
|
63
|
-
* commitment whose server did not declare agent permissions. False for no
|
|
64
|
-
* contract at all, and for a commitment carrying `permissionSource: 'agent'`,
|
|
65
|
-
* which then follows the Agent's own permissions exactly as a Task does while
|
|
66
|
-
* the contract keeps its non-permission roles (normalized shape, ephemeral
|
|
67
|
-
* worktree, result validation, `GIT_OPTIONAL_LOCKS`, provider restriction).
|
|
29
|
+
/** Only typed Task delivery owns an effect-specific permission boundary.
|
|
30
|
+
* A Commitment is context for the Agent and cannot grant or restrict tools.
|
|
68
31
|
*/
|
|
69
|
-
export function contractGovernsPermissions(contract,
|
|
70
|
-
|
|
71
|
-
return false;
|
|
72
|
-
return !(contract.kind === 'commitment' && normalizeSessionPermissionSource(permissionSource) === 'agent');
|
|
32
|
+
export function contractGovernsPermissions(contract, _permissionSource) {
|
|
33
|
+
return Boolean(contract && contract.kind !== 'commitment');
|
|
73
34
|
}
|
|
74
35
|
/**
|
|
75
36
|
* The contract when it governs permissions, else `undefined` — for the sites
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skrr-ai/auth-core",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.18",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"types": "dist/esm/index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -133,6 +133,16 @@
|
|
|
133
133
|
"types": "./dist/cjs/dedicatedRuntimeWakeWire.d.ts",
|
|
134
134
|
"default": "./dist/cjs/dedicatedRuntimeWakeWire.js"
|
|
135
135
|
}
|
|
136
|
+
},
|
|
137
|
+
"./commitment-execution-contract": {
|
|
138
|
+
"import": {
|
|
139
|
+
"types": "./dist/esm/commitmentExecutionContract.d.ts",
|
|
140
|
+
"default": "./dist/esm/commitmentExecutionContract.js"
|
|
141
|
+
},
|
|
142
|
+
"require": {
|
|
143
|
+
"types": "./dist/cjs/commitmentExecutionContract.d.ts",
|
|
144
|
+
"default": "./dist/cjs/commitmentExecutionContract.js"
|
|
145
|
+
}
|
|
136
146
|
}
|
|
137
147
|
},
|
|
138
148
|
"dependencies": {
|