@skrr-ai/cli 0.1.109 → 0.1.111
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/bin/run.js +15 -1
- package/dist/base-command.d.ts +44 -1
- package/dist/base-command.js +194 -33
- package/dist/commands/actions/list.js +2 -1
- package/dist/commands/agenda/trigger/create.js +1 -1
- package/dist/commands/agenda/trigger/list.js +2 -1
- package/dist/commands/agent-groups/list.js +2 -1
- package/dist/commands/agents/actions/list.js +2 -1
- package/dist/commands/agents/always-on/status.js +5 -0
- package/dist/commands/agents/chat.js +4 -1
- package/dist/commands/agents/duplicate.js +4 -0
- package/dist/commands/agents/eval/list.js +2 -1
- package/dist/commands/agents/files/list.js +2 -1
- package/dist/commands/agents/folders/list.js +2 -1
- package/dist/commands/agents/goals/list.js +2 -1
- package/dist/commands/agents/intuitions/list.js +8 -5
- package/dist/commands/agents/list.d.ts +12 -0
- package/dist/commands/agents/list.js +45 -8
- package/dist/commands/agents/releases/known-issues/list.js +2 -1
- package/dist/commands/agents/releases/list.js +5 -1
- package/dist/commands/agents/releases/trusted-publishers/list.js +2 -1
- package/dist/commands/agents/roles/list.js +2 -1
- package/dist/commands/agents/skills/list.js +2 -1
- package/dist/commands/agents/todos/list.js +2 -1
- package/dist/commands/agents/triggers/create.js +1 -1
- package/dist/commands/agents/triggers/list.js +2 -1
- package/dist/commands/agents/triggers/update.js +1 -1
- package/dist/commands/agents/update.d.ts +11 -0
- package/dist/commands/agents/update.js +58 -2
- package/dist/commands/api-keys/list.js +2 -1
- package/dist/commands/apps/channel.d.ts +20 -0
- package/dist/commands/apps/channel.js +64 -0
- package/dist/commands/apps/check-draft.d.ts +12 -0
- package/dist/commands/apps/check-draft.js +41 -0
- package/dist/commands/apps/check.d.ts +42 -0
- package/dist/commands/apps/check.js +91 -0
- package/dist/commands/apps/create.d.ts +15 -0
- package/dist/commands/apps/create.js +59 -0
- package/dist/commands/apps/data/put.d.ts +18 -0
- package/dist/commands/apps/data/put.js +72 -0
- package/dist/commands/apps/data/query.d.ts +20 -0
- package/dist/commands/apps/data/query.js +88 -0
- package/dist/commands/apps/disclosure.d.ts +16 -0
- package/dist/commands/apps/disclosure.js +71 -0
- package/dist/commands/apps/file/cat.d.ts +15 -0
- package/dist/commands/apps/file/cat.js +50 -0
- package/dist/commands/apps/file/ls.d.ts +13 -0
- package/dist/commands/apps/file/ls.js +47 -0
- package/dist/commands/apps/file/mv.d.ts +15 -0
- package/dist/commands/apps/file/mv.js +49 -0
- package/dist/commands/apps/file/rm.d.ts +15 -0
- package/dist/commands/apps/file/rm.js +53 -0
- package/dist/commands/apps/file/write.d.ts +17 -0
- package/dist/commands/apps/file/write.js +81 -0
- package/dist/commands/apps/install.d.ts +19 -0
- package/dist/commands/apps/install.js +136 -0
- package/dist/commands/apps/installations/list.d.ts +11 -0
- package/dist/commands/apps/installations/list.js +49 -0
- package/dist/commands/apps/installations/show.d.ts +12 -0
- package/dist/commands/apps/installations/show.js +61 -0
- package/dist/commands/apps/layout/set.d.ts +11 -0
- package/dist/commands/apps/layout/set.js +125 -0
- package/dist/commands/apps/layout/show.d.ts +9 -0
- package/dist/commands/apps/layout/show.js +33 -0
- package/dist/commands/apps/list.d.ts +10 -0
- package/dist/commands/apps/list.js +45 -0
- package/dist/commands/apps/logs.d.ts +13 -0
- package/dist/commands/apps/logs.js +55 -0
- package/dist/commands/apps/preview.d.ts +12 -0
- package/dist/commands/apps/preview.js +39 -0
- package/dist/commands/apps/publish/propose.d.ts +14 -0
- package/dist/commands/apps/publish/propose.js +45 -0
- package/dist/commands/apps/pull.d.ts +14 -0
- package/dist/commands/apps/pull.js +56 -0
- package/dist/commands/apps/push.d.ts +15 -0
- package/dist/commands/apps/push.js +75 -0
- package/dist/commands/apps/reconsent.d.ts +13 -0
- package/dist/commands/apps/reconsent.js +67 -0
- package/dist/commands/apps/report.d.ts +20 -0
- package/dist/commands/apps/report.js +63 -0
- package/dist/commands/apps/resume.d.ts +12 -0
- package/dist/commands/apps/resume.js +36 -0
- package/dist/commands/apps/settings/set.d.ts +13 -0
- package/dist/commands/apps/settings/set.js +54 -0
- package/dist/commands/apps/settings/show.d.ts +11 -0
- package/dist/commands/apps/settings/show.js +31 -0
- package/dist/commands/apps/show.d.ts +12 -0
- package/dist/commands/apps/show.js +49 -0
- package/dist/commands/apps/suspend.d.ts +12 -0
- package/dist/commands/apps/suspend.js +35 -0
- package/dist/commands/apps/uninstall.d.ts +13 -0
- package/dist/commands/apps/uninstall.js +43 -0
- package/dist/commands/apps/upgrade.d.ts +14 -0
- package/dist/commands/apps/upgrade.js +49 -0
- package/dist/commands/apps/version/create.d.ts +14 -0
- package/dist/commands/apps/version/create.js +53 -0
- package/dist/commands/apps/version/show.d.ts +12 -0
- package/dist/commands/apps/version/show.js +39 -0
- package/dist/commands/apps/versions.d.ts +12 -0
- package/dist/commands/apps/versions.js +40 -0
- package/dist/commands/apps/webhooks/list.d.ts +12 -0
- package/dist/commands/apps/webhooks/list.js +47 -0
- package/dist/commands/characters/list.js +2 -1
- package/dist/commands/chats/files/list.js +2 -1
- package/dist/commands/chats/folders/list.js +2 -1
- package/dist/commands/chats/list.js +2 -1
- package/dist/commands/chats/spaces/list.js +2 -1
- package/dist/commands/chats/widgets/list.js +2 -1
- package/dist/commands/code/jobs/list.js +4 -1
- package/dist/commands/commerce/incidents/list.js +2 -1
- package/dist/commands/commitments/accounting.js +3 -0
- package/dist/commands/commitments/action-proposals.d.ts +8 -0
- package/dist/commands/commitments/action-proposals.js +17 -2
- package/dist/commands/commitments/cost.d.ts +11 -0
- package/dist/commands/commitments/cost.js +25 -0
- package/dist/commands/commitments/create.js +6 -1
- package/dist/commands/commitments/endpoints/list.js +2 -1
- package/dist/commands/commitments/links/list.js +2 -1
- package/dist/commands/commitments/list.js +2 -1
- package/dist/commands/commitments/liveness.d.ts +30 -0
- package/dist/commands/commitments/liveness.js +22 -5
- package/dist/commands/commitments/pack/list.js +2 -1
- package/dist/commands/commitments/preflight.js +6 -2
- package/dist/commands/commitments/update.js +10 -1
- package/dist/commands/compass/list.js +2 -1
- package/dist/commands/context.js +7 -1
- package/dist/commands/convos/list.js +3 -2
- package/dist/commands/daemon/install.js +17 -1
- package/dist/commands/daemon/login.js +14 -0
- package/dist/commands/dm/list.js +2 -1
- package/dist/commands/dm/work.d.ts +19 -0
- package/dist/commands/dm/work.js +54 -0
- package/dist/commands/feeds/list.js +2 -1
- package/dist/commands/followups/list.js +2 -1
- package/dist/commands/followups/plans/cancel.d.ts +13 -0
- package/dist/commands/followups/plans/cancel.js +26 -0
- package/dist/commands/followups/plans/create.d.ts +11 -0
- package/dist/commands/followups/plans/create.js +35 -0
- package/dist/commands/followups/plans/list.d.ts +13 -0
- package/dist/commands/followups/plans/list.js +50 -0
- package/dist/commands/followups/plans/observability.d.ts +11 -0
- package/dist/commands/followups/plans/observability.js +46 -0
- package/dist/commands/followups/plans/revise.d.ts +13 -0
- package/dist/commands/followups/plans/revise.js +35 -0
- package/dist/commands/followups/plans/show.d.ts +11 -0
- package/dist/commands/followups/plans/show.js +32 -0
- package/dist/commands/goals/key-results/list.js +2 -1
- package/dist/commands/goals/labels/list.js +3 -2
- package/dist/commands/goals/list.js +3 -2
- package/dist/commands/grants/list.js +2 -1
- package/dist/commands/harnesses/grants/list.js +2 -1
- package/dist/commands/harnesses/leases/list.js +2 -1
- package/dist/commands/harnesses/list.js +10 -1
- package/dist/commands/harnesses/prune.d.ts +26 -0
- package/dist/commands/harnesses/prune.js +172 -0
- package/dist/commands/ingress/list.js +2 -1
- package/dist/commands/initiatives/list.js +2 -1
- package/dist/commands/instruction-blocks/list.js +2 -1
- package/dist/commands/instructions/list.js +2 -1
- package/dist/commands/integrations/connections/list.js +2 -1
- package/dist/commands/integrations/tools/list.js +2 -1
- package/dist/commands/labels/list.js +3 -2
- package/dist/commands/learning/adapters.d.ts +16 -0
- package/dist/commands/learning/adapters.js +44 -0
- package/dist/commands/login.js +11 -0
- package/dist/commands/machines/dedicated/list.js +2 -1
- package/dist/commands/machines/hosted/list.js +2 -1
- package/dist/commands/machines/list.js +2 -1
- package/dist/commands/machines/show.js +5 -2
- package/dist/commands/measures/list.js +2 -1
- package/dist/commands/memory/list.js +2 -1
- package/dist/commands/memory/proposals/list.js +2 -1
- package/dist/commands/memory/stores/list.js +2 -1
- package/dist/commands/memory/topics/list.js +2 -1
- package/dist/commands/memory/versions/list.js +2 -1
- package/dist/commands/messages/list.js +2 -1
- package/dist/commands/northstars/intents/list.js +2 -1
- package/dist/commands/northstars/list.js +2 -1
- package/dist/commands/northstars/recommendations/list.js +2 -1
- package/dist/commands/outbox/list.js +2 -1
- package/dist/commands/profiles/list.js +2 -1
- package/dist/commands/projects/docs/list.js +8 -1
- package/dist/commands/projects/updates/list.js +2 -1
- package/dist/commands/proposals/list.js +2 -1
- package/dist/commands/requests/comments/list.js +2 -1
- package/dist/commands/requests/list.js +2 -1
- package/dist/commands/shares/list.js +2 -1
- package/dist/commands/shortcuts/list.js +2 -1
- package/dist/commands/signals/monitors/list.js +2 -1
- package/dist/commands/signals/schemas/list.js +2 -1
- package/dist/commands/signals/sources/list.js +2 -1
- package/dist/commands/space-directory-views/list.js +2 -1
- package/dist/commands/spaces/actions/list.js +4 -3
- package/dist/commands/spaces/briefs/list.js +2 -1
- package/dist/commands/spaces/cycles/list.js +2 -1
- package/dist/commands/spaces/files/folders/list.js +2 -1
- package/dist/commands/spaces/files/list.js +3 -2
- package/dist/commands/spaces/heartbeats/list.js +3 -2
- package/dist/commands/spaces/labels/list.js +3 -2
- package/dist/commands/spaces/list.d.ts +3 -18
- package/dist/commands/spaces/list.js +28 -35
- package/dist/commands/spaces/live/cards/list.js +2 -1
- package/dist/commands/spaces/members/list.d.ts +1 -0
- package/dist/commands/spaces/members/list.js +4 -1
- package/dist/commands/spaces/show.js +2 -2
- package/dist/commands/spaces/skills/list.js +6 -2
- package/dist/commands/spaces/states/list.js +2 -1
- package/dist/commands/spaces/views/list.js +2 -1
- package/dist/commands/spaces/widgets/list.js +3 -2
- package/dist/commands/spaces/workflow-templates/list.js +2 -1
- package/dist/commands/spaces/workflows/fixtures/list.js +2 -1
- package/dist/commands/spaces/workflows/list.js +3 -2
- package/dist/commands/spaces/workflows/proposals/list.js +2 -1
- package/dist/commands/spaces/workflows/start.js +3 -1
- package/dist/commands/spaces/workflows/triggers/list.js +2 -1
- package/dist/commands/spaces/workflows/validate.js +12 -2
- package/dist/commands/store/acquisitions/list.js +2 -1
- package/dist/commands/store/admissions/list.js +17 -1
- package/dist/commands/store/advisories/list.js +2 -1
- package/dist/commands/store/follows/list.js +2 -1
- package/dist/commands/store/publishers/domains/list.js +2 -1
- package/dist/commands/store/reports/list.js +2 -1
- package/dist/commands/subscriptions/list.js +2 -1
- package/dist/commands/tasks/actionability.js +7 -30
- package/dist/commands/tasks/activity.js +14 -8
- package/dist/commands/tasks/approvals/list.js +2 -1
- package/dist/commands/tasks/assign.d.ts +1 -0
- package/dist/commands/tasks/assign.js +43 -7
- package/dist/commands/tasks/attachments/list.js +2 -1
- package/dist/commands/tasks/chat/send.js +34 -0
- package/dist/commands/tasks/comments/add.js +6 -1
- package/dist/commands/tasks/comments/list.js +2 -1
- package/dist/commands/tasks/complete.js +26 -2
- package/dist/commands/tasks/continue.d.ts +18 -0
- package/dist/commands/tasks/continue.js +54 -0
- package/dist/commands/tasks/create-tree.d.ts +5 -0
- package/dist/commands/tasks/create-tree.js +399 -219
- package/dist/commands/tasks/create.d.ts +1 -0
- package/dist/commands/tasks/create.js +63 -11
- package/dist/commands/tasks/deliverable/add.js +10 -3
- package/dist/commands/tasks/deliverable/list.js +2 -1
- package/dist/commands/tasks/events/list.js +2 -1
- package/dist/commands/tasks/execution-state.d.ts +12 -0
- package/dist/commands/tasks/execution-state.js +28 -0
- package/dist/commands/tasks/expectations/assess.js +40 -5
- package/dist/commands/tasks/guide.d.ts +10 -0
- package/dist/commands/tasks/guide.js +20 -0
- package/dist/commands/tasks/labels/list.js +2 -1
- package/dist/commands/tasks/list.d.ts +19 -0
- package/dist/commands/tasks/list.js +103 -6
- package/dist/commands/tasks/move.js +10 -2
- package/dist/commands/tasks/preflight.d.ts +14 -0
- package/dist/commands/tasks/preflight.js +77 -0
- package/dist/commands/tasks/rearm-recurrence.js +22 -3
- package/dist/commands/tasks/resource/list.js +2 -1
- package/dist/commands/tasks/result/submit.js +10 -1
- package/dist/commands/tasks/review.js +6 -1
- package/dist/commands/tasks/revisions.d.ts +2 -0
- package/dist/commands/tasks/revisions.js +8 -1
- package/dist/commands/tasks/show.d.ts +8 -0
- package/dist/commands/tasks/show.js +81 -43
- package/dist/commands/tasks/start.d.ts +1 -0
- package/dist/commands/tasks/start.js +35 -0
- package/dist/commands/tasks/templates/list.js +2 -1
- package/dist/commands/tasks/timeline.d.ts +5 -0
- package/dist/commands/tasks/timeline.js +9 -1
- package/dist/commands/tasks/unschedule.js +5 -1
- package/dist/commands/tasks/update.d.ts +1 -0
- package/dist/commands/tasks/update.js +36 -3
- package/dist/commands/tasks/updates/add.js +6 -1
- package/dist/commands/tasks/updates/list.js +2 -1
- package/dist/commands/tasks/upsert.d.ts +1 -0
- package/dist/commands/tasks/upsert.js +8 -1
- package/dist/commands/token/list.js +2 -1
- package/dist/commands/tokens/list.js +2 -1
- package/dist/commands/tones/list.js +4 -2
- package/dist/commands/triggers/audit.js +12 -3
- package/dist/commands/triggers/create.js +1 -1
- package/dist/commands/triggers/fire-detail.d.ts +7 -0
- package/dist/commands/triggers/fire-detail.js +30 -12
- package/dist/commands/triggers/fire.js +13 -3
- package/dist/commands/triggers/list.js +2 -1
- package/dist/commands/triggers/parse-intent.js +1 -1
- package/dist/commands/triggers/update.js +1 -1
- package/dist/commands/views/list.js +2 -1
- package/dist/commands/webhooks/list.js +2 -1
- package/dist/commands/whoami.js +1 -1
- package/dist/commands/widgets/list.js +2 -1
- package/dist/commands/widgets/save-as-app.d.ts +13 -0
- package/dist/commands/widgets/save-as-app.js +65 -0
- package/dist/commands/work-views/list.js +2 -1
- package/dist/commands/worklog/list.js +2 -1
- package/dist/commands/workspaces/grants.js +1 -4
- package/dist/commands/workspaces/list.js +3 -2
- package/dist/commands/workspaces/members.d.ts +1 -0
- package/dist/commands/workspaces/members.js +10 -7
- package/dist/generated/managed-instruction-guides.json +2 -2
- package/dist/help.js +7 -0
- package/dist/lib/agent-proactive-baseline.d.ts +9 -0
- package/dist/lib/agent-proactive-baseline.js +44 -0
- package/dist/lib/agentic-stream.d.ts +4 -1
- package/dist/lib/agentic-stream.js +29 -4
- package/dist/lib/appData.d.ts +75 -0
- package/dist/lib/appData.js +274 -0
- package/dist/lib/appInstallations.d.ts +117 -0
- package/dist/lib/appInstallations.js +960 -0
- package/dist/lib/appSettings.d.ts +3 -0
- package/dist/lib/appSettings.js +71 -0
- package/dist/lib/appWebhooks.d.ts +7 -0
- package/dist/lib/appWebhooks.js +59 -0
- package/dist/lib/apps-command.d.ts +44 -0
- package/dist/lib/apps-command.js +164 -0
- package/dist/lib/apps.d.ts +45 -0
- package/dist/lib/apps.js +148 -0
- package/dist/lib/appsCheck.d.ts +12 -0
- package/dist/lib/appsCheck.js +173 -0
- package/dist/lib/appsFs.d.ts +58 -0
- package/dist/lib/appsFs.js +384 -0
- package/dist/lib/auth-failure.d.ts +20 -0
- package/dist/lib/auth-failure.js +40 -3
- package/dist/lib/cli-installers.d.ts +9 -2
- package/dist/lib/command-miss.js +107 -0
- package/dist/lib/commitment-loop-status.js +25 -3
- package/dist/lib/commitment-product.js +5 -2
- package/dist/lib/commitments.d.ts +45 -3
- package/dist/lib/commitments.js +139 -41
- package/dist/lib/compasses.d.ts +4 -0
- package/dist/lib/compasses.js +11 -0
- package/dist/lib/daemon-machine-identity-copy.d.ts +14 -0
- package/dist/lib/daemon-machine-identity-copy.js +27 -0
- package/dist/lib/daemon-machine-identity.d.ts +27 -0
- package/dist/lib/daemon-machine-identity.js +61 -0
- package/dist/lib/daemon-setup.js +7 -7
- package/dist/lib/daemonHandoff.d.ts +19 -1
- package/dist/lib/daemonHandoff.js +62 -2
- package/dist/lib/dedicated-ssh.d.ts +2 -0
- package/dist/lib/dedicated-ssh.js +98 -28
- package/dist/lib/harnesses.d.ts +71 -0
- package/dist/lib/harnesses.js +70 -0
- package/dist/lib/json-output.d.ts +33 -0
- package/dist/lib/json-output.js +37 -0
- package/dist/lib/list-output.d.ts +9 -4
- package/dist/lib/list-output.js +38 -9
- package/dist/lib/lookbackPlans.d.ts +13 -0
- package/dist/lib/lookbackPlans.js +68 -0
- package/dist/lib/machines.d.ts +27 -6
- package/dist/lib/machines.js +25 -14
- package/dist/lib/member-output.d.ts +20 -0
- package/dist/lib/member-output.js +57 -0
- package/dist/lib/preflight-copy.d.ts +7 -0
- package/dist/lib/preflight-copy.js +31 -0
- package/dist/lib/profile-machine-identity-guard.js +11 -1
- package/dist/lib/roles.d.ts +2 -2
- package/dist/lib/task-admission.d.ts +9 -0
- package/dist/lib/task-admission.js +35 -0
- package/dist/lib/task-batch.d.ts +4 -0
- package/dist/lib/task-batch.js +2 -0
- package/dist/lib/task-economics.d.ts +10 -0
- package/dist/lib/task-economics.js +24 -2
- package/dist/lib/task-operations.d.ts +25 -0
- package/dist/lib/task-operations.js +123 -0
- package/dist/lib/task-preflight.d.ts +35 -0
- package/dist/lib/task-preflight.js +121 -0
- package/dist/lib/task-resource-references.d.ts +23 -0
- package/dist/lib/task-resource-references.js +119 -0
- package/dist/lib/task-spec-verification.d.ts +42 -0
- package/dist/lib/task-spec-verification.js +101 -0
- package/dist/lib/task-work.d.ts +11 -0
- package/dist/lib/task-work.js +41 -0
- package/dist/lib/task-write-attribution.d.ts +26 -0
- package/dist/lib/task-write-attribution.js +47 -0
- package/dist/lib/tasks.d.ts +13 -0
- package/dist/lib/tasks.js +61 -8
- package/dist/lib/triggers.d.ts +18 -0
- package/dist/lib/triggers.js +97 -5
- package/dist/lib/usage-discovery.d.ts +4 -0
- package/dist/lib/usage-discovery.js +14 -4
- package/dist/lib/widgetApps.d.ts +10 -0
- package/dist/lib/widgetApps.js +47 -0
- package/dist/lib/widgetStaticScan.js +25 -1
- package/dist/lib/workflow-run-view.d.ts +4 -0
- package/dist/lib/workflow-run-view.js +5 -0
- package/dist/lib/workspaces.d.ts +33 -9
- package/dist/lib/workspaces.js +19 -3
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.d.ts +14 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.js +47 -2
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonToolApproval.d.ts +49 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonToolApproval.js +26 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonWire.d.ts +118 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonWire.js +614 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.d.ts +1 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.js +5 -3
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/machineUuid.d.ts +60 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/machineUuid.js +130 -6
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.d.ts +2 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.js +15 -2
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refreshClassification.d.ts +5 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refreshClassification.js +3 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionRevocation.d.ts +177 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionRevocation.js +484 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/telemetryRedaction.d.ts +11 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/telemetryRedaction.js +46 -7
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/toolApprovalSignature.d.ts +232 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/toolApprovalSignature.js +372 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/types.d.ts +17 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/types.js +12 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.d.ts +14 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.js +45 -2
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonToolApproval.d.ts +49 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonToolApproval.js +24 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonWire.d.ts +118 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonWire.js +608 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.d.ts +1 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.js +1 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/machineUuid.d.ts +60 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/machineUuid.js +128 -6
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.d.ts +2 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.js +15 -2
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refreshClassification.d.ts +5 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refreshClassification.js +3 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionRevocation.d.ts +177 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionRevocation.js +472 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/telemetryRedaction.d.ts +11 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/telemetryRedaction.js +44 -6
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/toolApprovalSignature.d.ts +232 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/toolApprovalSignature.js +360 -0
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/types.d.ts +17 -1
- package/dist/node_modules/@skrr-ai/auth-core/dist/esm/types.js +12 -1
- package/dist/node_modules/@skrr-ai/auth-core/package.json +31 -1
- package/dist/node_modules/@skrr-ai/data-provider/index.js +25255 -18711
- package/docs/v1/operations.md +52 -0
- package/docs/v1/space-search.md +19 -0
- package/oclif.manifest.json +4843 -513
- package/package.json +32 -2
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
|
+
const apps_command_1 = require("../../lib/apps-command");
|
|
6
|
+
class AppsVersions extends apps_command_1.AppsCommand {
|
|
7
|
+
static description = 'List the versions of an app, newest first.';
|
|
8
|
+
static examples = ['<%= config.bin %> apps versions habit-tracker'];
|
|
9
|
+
static args = {
|
|
10
|
+
app: core_1.Args.string({
|
|
11
|
+
description: 'The app id (app_...) or its slug',
|
|
12
|
+
required: true,
|
|
13
|
+
ignoreStdin: true,
|
|
14
|
+
}),
|
|
15
|
+
};
|
|
16
|
+
static flags = {
|
|
17
|
+
json: core_1.Flags.boolean({ description: 'Output { versions } as JSON' }),
|
|
18
|
+
};
|
|
19
|
+
async run() {
|
|
20
|
+
this.requireAuth();
|
|
21
|
+
const { args, flags } = await this.parse(AppsVersions);
|
|
22
|
+
const appId = await this.appId(args.app);
|
|
23
|
+
try {
|
|
24
|
+
const result = await data_provider_1.dataService.listAppVersions({ appId });
|
|
25
|
+
if (flags.json) {
|
|
26
|
+
this.printJsonResult(result);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (result.versions.length === 0)
|
|
30
|
+
this.log('No versions yet. Cut one with `apps version create`.');
|
|
31
|
+
for (const version of result.versions) {
|
|
32
|
+
this.log(`v${version.version} ${version.id} ${version.bundleHash.slice(0, 12)} ${version.distribution.visibility}/${version.distribution.status} ${version.createdAt}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
this.failApps(error);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.default = AppsVersions;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AppsCommand } from '../../../lib/apps-command';
|
|
2
|
+
export default class AppsWebhooksList extends AppsCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
installation: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
static flags: {
|
|
9
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
};
|
|
11
|
+
run(): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
|
+
const apps_command_1 = require("../../../lib/apps-command");
|
|
6
|
+
const appWebhooks_1 = require("../../../lib/appWebhooks");
|
|
7
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
8
|
+
class AppsWebhooksList extends apps_command_1.AppsCommand {
|
|
9
|
+
static description = 'List the inbound webhooks of one installation: each hook the running version declares, the collection its events land in, and whether an endpoint exists, its state and when it changed. Never a token or a signing secret: those are shown once, by the person who makes them on the web screen.';
|
|
10
|
+
static examples = [
|
|
11
|
+
'<%= config.bin %> apps webhooks list appi_abc',
|
|
12
|
+
'<%= config.bin %> apps webhooks list appi_abc --json',
|
|
13
|
+
];
|
|
14
|
+
static args = {
|
|
15
|
+
installation: core_1.Args.string({
|
|
16
|
+
description: 'The installation id (appi_...)',
|
|
17
|
+
required: true,
|
|
18
|
+
ignoreStdin: true,
|
|
19
|
+
}),
|
|
20
|
+
};
|
|
21
|
+
static flags = {
|
|
22
|
+
json: core_1.Flags.boolean({ description: 'Output { webhooks: [...] } as JSON' }),
|
|
23
|
+
};
|
|
24
|
+
async run() {
|
|
25
|
+
this.requireAuth();
|
|
26
|
+
const { args, flags } = await this.parse(AppsWebhooksList);
|
|
27
|
+
try {
|
|
28
|
+
const raw = await data_provider_1.dataService.listAppInstallationWebhooks(args.installation);
|
|
29
|
+
if (flags.json) {
|
|
30
|
+
this.printJsonResult((0, list_output_1.listResult)(raw, 'webhooks'));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const list = (0, appWebhooks_1.readWebhookList)(raw);
|
|
34
|
+
if (!list) {
|
|
35
|
+
this.log('This list is not in a form this version of the CLI understands, so it cannot say which webhooks exist. Update the CLI (`skrr update`) and try again.');
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
for (const line of (0, appWebhooks_1.formatWebhookList)(list)) {
|
|
39
|
+
this.log(line);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
this.failInstallation(error);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.default = AppsWebhooksList;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../base-command");
|
|
5
6
|
const format_1 = require("../../lib/format");
|
|
@@ -28,7 +29,7 @@ class CharactersList extends base_command_1.BaseCommand {
|
|
|
28
29
|
this.handleApiError(err);
|
|
29
30
|
}
|
|
30
31
|
if (flags.json) {
|
|
31
|
-
this.
|
|
32
|
+
this.printJsonResult((0, list_output_1.listResult)(flags.details ? { characters } : (0, characters_1.curateCharacterList)(characters), 'characters'));
|
|
32
33
|
return;
|
|
33
34
|
}
|
|
34
35
|
if (!characters || characters.length === 0) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -25,7 +26,7 @@ class ChatsFilesList extends base_command_1.BaseCommand {
|
|
|
25
26
|
this.handleApiError(err);
|
|
26
27
|
}
|
|
27
28
|
if (flags.json) {
|
|
28
|
-
this.
|
|
29
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'files'));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
const r = response;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -25,7 +26,7 @@ class ChatsFoldersList extends base_command_1.BaseCommand {
|
|
|
25
26
|
this.handleApiError(err);
|
|
26
27
|
}
|
|
27
28
|
if (flags.json) {
|
|
28
|
-
this.
|
|
29
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'folders'));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
const r = response;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.toChatListRow = toChatListRow;
|
|
4
|
+
const list_output_1 = require("../../lib/list-output");
|
|
4
5
|
const core_1 = require("@oclif/core");
|
|
5
6
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
6
7
|
const base_command_1 = require("../../base-command");
|
|
@@ -73,7 +74,7 @@ class ChatsList extends base_command_1.BaseCommand {
|
|
|
73
74
|
return true;
|
|
74
75
|
});
|
|
75
76
|
if (flags.json) {
|
|
76
|
-
this.
|
|
77
|
+
this.printJsonResult((0, list_output_1.listResult)({ ...r, groupChats: items }, 'groupChats'));
|
|
77
78
|
return;
|
|
78
79
|
}
|
|
79
80
|
if (items.length === 0) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -25,7 +26,7 @@ class ChatsSpacesList extends base_command_1.BaseCommand {
|
|
|
25
26
|
this.handleApiError(err);
|
|
26
27
|
}
|
|
27
28
|
if (flags.json) {
|
|
28
|
-
this.
|
|
29
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'spaces'));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
const r = response;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -25,7 +26,7 @@ class ChatsWidgetsList extends base_command_1.BaseCommand {
|
|
|
25
26
|
this.handleApiError(err);
|
|
26
27
|
}
|
|
27
28
|
if (flags.json) {
|
|
28
|
-
this.
|
|
29
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'widgets'));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
const r = response;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -41,11 +42,13 @@ class CodeJobsList extends base_command_1.BaseCommand {
|
|
|
41
42
|
this.requireAuth();
|
|
42
43
|
const { flags } = await this.parse(CodeJobsList);
|
|
43
44
|
let tasks = [];
|
|
45
|
+
let response;
|
|
44
46
|
try {
|
|
45
47
|
const res = await data_provider_1.dataService.listCloudCodingTasks({
|
|
46
48
|
...(flags.status ? { status: flags.status } : {}),
|
|
47
49
|
...(flags.limit ? { limit: flags.limit } : {}),
|
|
48
50
|
});
|
|
51
|
+
response = res;
|
|
49
52
|
tasks = res?.data ?? [];
|
|
50
53
|
}
|
|
51
54
|
catch (err) {
|
|
@@ -55,7 +58,7 @@ class CodeJobsList extends base_command_1.BaseCommand {
|
|
|
55
58
|
tasks = tasks.filter((t) => !TERMINAL.has(String(t.status)));
|
|
56
59
|
}
|
|
57
60
|
if (flags.json) {
|
|
58
|
-
this.
|
|
61
|
+
this.printJsonResult((0, list_output_1.listResult)({ ...response, data: tasks }));
|
|
59
62
|
return;
|
|
60
63
|
}
|
|
61
64
|
if (tasks.length === 0) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../../base-command");
|
|
5
6
|
const commerce_1 = require("../../../lib/commerce");
|
|
@@ -43,7 +44,7 @@ class CommerceIncidentsList extends base_command_1.BaseCommand {
|
|
|
43
44
|
this.handleApiError(error);
|
|
44
45
|
return;
|
|
45
46
|
}
|
|
46
|
-
this.
|
|
47
|
+
this.printJsonResult((0, list_output_1.listResult)(result, 'incidents'));
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
exports.default = CommerceIncidentsList;
|
|
@@ -105,6 +105,9 @@ function formatAccountingReadout(readout) {
|
|
|
105
105
|
const noSpendNote = (0, cost_1.noSpendInferenceNote)(Number(readout.costNoSpendRunCount || 0), Number(readout.costNoSpendInferredRunCount || 0));
|
|
106
106
|
if (noSpendNote)
|
|
107
107
|
lines.push(noSpendNote);
|
|
108
|
+
const olderNote = (0, cost_1.olderProjectionNote)(readout.costProjection);
|
|
109
|
+
if (olderNote)
|
|
110
|
+
lines.push(olderNote);
|
|
108
111
|
const multiplier = readout.recommendedAttemptMultiplier;
|
|
109
112
|
lines.push('');
|
|
110
113
|
lines.push(`Attempt multiplier: ${multiplier == null ? 'not derivable yet' : multiplier}` +
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import { BaseCommand } from '../../base-command';
|
|
2
|
+
/**
|
|
3
|
+
* An approved bundle waiting out the owner's quiet hours reads as held, with
|
|
4
|
+
* the instant it sends, never as a bare `approved` that looks stuck.
|
|
5
|
+
*/
|
|
6
|
+
export declare function proposalStatusLabel(proposal: {
|
|
7
|
+
status?: string;
|
|
8
|
+
executionReceipt?: Record<string, unknown>;
|
|
9
|
+
}): string;
|
|
2
10
|
export default class CommitmentsActionProposals extends BaseCommand {
|
|
3
11
|
static description: string;
|
|
4
12
|
static args: {
|
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.proposalStatusLabel = proposalStatusLabel;
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
5
|
+
const data_provider_1 = require("@skrr-ai/data-provider");
|
|
4
6
|
const base_command_1 = require("../../base-command");
|
|
5
7
|
const commitments_1 = require("../../lib/commitments");
|
|
6
8
|
const format_1 = require("../../lib/format");
|
|
9
|
+
/**
|
|
10
|
+
* An approved bundle waiting out the owner's quiet hours reads as held, with
|
|
11
|
+
* the instant it sends, never as a bare `approved` that looks stuck.
|
|
12
|
+
*/
|
|
13
|
+
function proposalStatusLabel(proposal) {
|
|
14
|
+
const hold = proposal.executionReceipt?.hold;
|
|
15
|
+
if (proposal.status === 'approved' && hold?.until) {
|
|
16
|
+
return `held until ${hold.untilLabel || hold.until}`;
|
|
17
|
+
}
|
|
18
|
+
return String(proposal.status || '—');
|
|
19
|
+
}
|
|
7
20
|
class CommitmentsActionProposals extends base_command_1.BaseCommand {
|
|
8
21
|
static description = 'List frozen Action Bundles and their recovery state';
|
|
9
22
|
static args = {
|
|
@@ -49,16 +62,18 @@ class CommitmentsActionProposals extends base_command_1.BaseCommand {
|
|
|
49
62
|
id: proposal.id,
|
|
50
63
|
actions: String(proposal.actionSnapshots?.length || 1),
|
|
51
64
|
digest: proposal.snapshotDigest || 'legacy',
|
|
52
|
-
status: proposal
|
|
65
|
+
status: proposalStatusLabel(proposal),
|
|
53
66
|
attempt: `${proposal.attempt || 0}/${proposal.maxAttempts || 3}`,
|
|
54
67
|
expires: proposal.expiresAt || '—',
|
|
68
|
+
notices: (0, data_provider_1.describeProposalNotices)(proposal.notices),
|
|
55
69
|
})), [
|
|
56
70
|
{ key: 'id', header: 'PROPOSAL', verbatim: true },
|
|
57
71
|
{ key: 'actions', header: 'ACTIONS' },
|
|
58
72
|
{ key: 'digest', header: 'DIGEST', maxWidth: 64, verbatim: true },
|
|
59
|
-
{ key: 'status', header: 'STATUS' },
|
|
73
|
+
{ key: 'status', header: 'STATUS', maxWidth: 40 },
|
|
60
74
|
{ key: 'attempt', header: 'ATTEMPT' },
|
|
61
75
|
{ key: 'expires', header: 'EXPIRES', maxWidth: 28 },
|
|
76
|
+
{ key: 'notices', header: 'APPROVERS TOLD', maxWidth: 60 },
|
|
62
77
|
], (line) => this.log(line));
|
|
63
78
|
}
|
|
64
79
|
}
|
|
@@ -60,6 +60,17 @@ export default class CommitmentsCost extends BaseCommand {
|
|
|
60
60
|
* formed a belief by the time they reach the caveat.
|
|
61
61
|
*/
|
|
62
62
|
export declare function formatCostWindow(data: CommitmentCostWindow): string[];
|
|
63
|
+
/**
|
|
64
|
+
* The line that says when closed days were derived under an older spend rule
|
|
65
|
+
* (OSK-15500). Such a day keeps the census of the rule that closed it until the
|
|
66
|
+
* correction sweep re-closes it, which happens only while the day is inside the
|
|
67
|
+
* correction window. Without this line, an old day's "without cost" count reads
|
|
68
|
+
* exactly like a current one.
|
|
69
|
+
*/
|
|
70
|
+
export declare function olderProjectionNote(projection: {
|
|
71
|
+
currentVersion?: number;
|
|
72
|
+
olderDayCount?: number;
|
|
73
|
+
} | undefined): string | null;
|
|
63
74
|
/**
|
|
64
75
|
* The line that says when "cost nothing" rests on inference (OSK-15500).
|
|
65
76
|
*
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.resolveCostWindow = resolveCostWindow;
|
|
4
4
|
exports.formatCostWindow = formatCostWindow;
|
|
5
|
+
exports.olderProjectionNote = olderProjectionNote;
|
|
5
6
|
exports.noSpendInferenceNote = noSpendInferenceNote;
|
|
6
7
|
const core_1 = require("@oclif/core");
|
|
7
8
|
const base_command_1 = require("../../base-command");
|
|
@@ -133,8 +134,32 @@ function formatCostWindow(data) {
|
|
|
133
134
|
const note = noSpendInferenceNote(noSpend, Number(data.noSpendInferredRunCount || 0));
|
|
134
135
|
if (note)
|
|
135
136
|
lines.push(note);
|
|
137
|
+
const older = olderProjectionNote(data.projection);
|
|
138
|
+
if (older) {
|
|
139
|
+
lines.push(older);
|
|
140
|
+
const days = (data.projection?.olderDays ?? [])
|
|
141
|
+
.map((day) => `${day.date ?? '-'} (rule ${Number(day.version || 1)})`)
|
|
142
|
+
.join(', ');
|
|
143
|
+
if (days)
|
|
144
|
+
lines.push(` ${days}`);
|
|
145
|
+
}
|
|
136
146
|
return lines;
|
|
137
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* The line that says when closed days were derived under an older spend rule
|
|
150
|
+
* (OSK-15500). Such a day keeps the census of the rule that closed it until the
|
|
151
|
+
* correction sweep re-closes it, which happens only while the day is inside the
|
|
152
|
+
* correction window. Without this line, an old day's "without cost" count reads
|
|
153
|
+
* exactly like a current one.
|
|
154
|
+
*/
|
|
155
|
+
function olderProjectionNote(projection) {
|
|
156
|
+
const older = Number(projection?.olderDayCount || 0);
|
|
157
|
+
if (!(older > 0))
|
|
158
|
+
return null;
|
|
159
|
+
return (`Note: ${older} closed day(s) were derived under an older cost rule than the ` +
|
|
160
|
+
`current one (rule ${Number(projection?.currentVersion || 0)}); their counts may differ ` +
|
|
161
|
+
'until they are re-closed');
|
|
162
|
+
}
|
|
138
163
|
/**
|
|
139
164
|
* The line that says when "cost nothing" rests on inference (OSK-15500).
|
|
140
165
|
*
|
|
@@ -457,12 +457,17 @@ JSON
|
|
|
457
457
|
catch (err) {
|
|
458
458
|
this.handleApiError(err);
|
|
459
459
|
}
|
|
460
|
+
const warnings = (0, commitments_1.commitmentWriteWarnings)(commitment, { payload });
|
|
460
461
|
if (flags.json) {
|
|
461
|
-
this.log(JSON.stringify((0, web_url_1.withCommitmentUrl)(this.cliConfig.baseURL,
|
|
462
|
+
this.log(JSON.stringify((0, web_url_1.withCommitmentUrl)(this.cliConfig.baseURL, {
|
|
463
|
+
...commitment,
|
|
464
|
+
...(warnings.length ? { warnings } : {}),
|
|
465
|
+
}), null, 2));
|
|
462
466
|
return;
|
|
463
467
|
}
|
|
464
468
|
this.log('Created commitment:');
|
|
465
469
|
(0, commitments_1.renderCommitmentSummary)(commitment, (line) => this.log(line));
|
|
470
|
+
(0, commitments_1.renderCommitmentWriteWarnings)(warnings, (line) => this.warn(line));
|
|
466
471
|
}
|
|
467
472
|
}
|
|
468
473
|
exports.default = CommitmentsCreate;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../../base-command");
|
|
5
6
|
const commitment_endpoints_1 = require("../../../lib/commitment-endpoints");
|
|
@@ -32,7 +33,7 @@ class CommitmentsEndpointsList extends base_command_1.BaseCommand {
|
|
|
32
33
|
this.handleApiError(err);
|
|
33
34
|
}
|
|
34
35
|
if (flags.json) {
|
|
35
|
-
this.
|
|
36
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'endpoints'));
|
|
36
37
|
return;
|
|
37
38
|
}
|
|
38
39
|
(0, commitment_endpoints_1.renderEndpointList)(response.endpoints ?? [], (line) => this.log(line));
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../../base-command");
|
|
5
6
|
const commitments_1 = require("../../../lib/commitments");
|
|
@@ -25,7 +26,7 @@ class CommitmentsLinksList extends base_command_1.BaseCommand {
|
|
|
25
26
|
this.handleApiError(error);
|
|
26
27
|
}
|
|
27
28
|
if (flags.json) {
|
|
28
|
-
this.
|
|
29
|
+
this.printJsonResult((0, list_output_1.listResult)(result));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
const links = result.data || [];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../base-command");
|
|
5
6
|
const web_url_1 = require("../../lib/web-url");
|
|
@@ -45,7 +46,7 @@ class CommitmentsList extends base_command_1.BaseCommand {
|
|
|
45
46
|
this.handleApiError(err);
|
|
46
47
|
}
|
|
47
48
|
if (flags.json) {
|
|
48
|
-
this.
|
|
49
|
+
this.printJsonResult((0, list_output_1.listResult)((0, web_url_1.withDataUrls)(this.cliConfig.baseURL, response, web_url_1.commitmentUrlFrom)));
|
|
49
50
|
return;
|
|
50
51
|
}
|
|
51
52
|
const rows = response.data ?? [];
|
|
@@ -1,4 +1,32 @@
|
|
|
1
1
|
import { BaseCommand } from '../../base-command';
|
|
2
|
+
type SweepTally = {
|
|
3
|
+
at?: string;
|
|
4
|
+
scanned?: number;
|
|
5
|
+
selected?: number;
|
|
6
|
+
selectedLimit?: number;
|
|
7
|
+
timeboxed?: boolean;
|
|
8
|
+
stalenessSeconds?: number | null;
|
|
9
|
+
sloSeconds?: number | null;
|
|
10
|
+
ready?: number;
|
|
11
|
+
working?: number;
|
|
12
|
+
waiting?: number;
|
|
13
|
+
blocked?: number;
|
|
14
|
+
failed?: number;
|
|
15
|
+
alerted?: number;
|
|
16
|
+
errors?: number;
|
|
17
|
+
};
|
|
18
|
+
export type SweepHealth = {
|
|
19
|
+
lastSweepAt?: string | null;
|
|
20
|
+
sweepAgeSeconds?: number | null;
|
|
21
|
+
cursor?: {
|
|
22
|
+
id?: string;
|
|
23
|
+
at?: string | null;
|
|
24
|
+
} | null;
|
|
25
|
+
lastTick?: SweepTally | null;
|
|
26
|
+
stalenessSeconds?: number | null;
|
|
27
|
+
sloSeconds?: number | null;
|
|
28
|
+
healthy?: boolean;
|
|
29
|
+
};
|
|
2
30
|
/**
|
|
3
31
|
* `skrr commitments liveness` — is the liveness witness itself alive?
|
|
4
32
|
*
|
|
@@ -16,3 +44,5 @@ export default class CommitmentsLiveness extends BaseCommand {
|
|
|
16
44
|
};
|
|
17
45
|
run(): Promise<void>;
|
|
18
46
|
}
|
|
47
|
+
export declare function formatSweepHealth(health: SweepHealth): string[];
|
|
48
|
+
export {};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatSweepHealth = formatSweepHealth;
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../base-command");
|
|
5
6
|
const commitments_1 = require("../../lib/commitments");
|
|
@@ -52,13 +53,29 @@ function formatSweepHealth(health) {
|
|
|
52
53
|
const status = health.healthy ? 'healthy' : 'STALE';
|
|
53
54
|
lines.push(`Liveness sweep: ${status} (${formatAge(age)} old)`);
|
|
54
55
|
lines.push(` last sweep: ${health.lastSweepAt}`);
|
|
56
|
+
const staleness = health.stalenessSeconds ?? health.lastTick?.stalenessSeconds;
|
|
57
|
+
const slo = health.sloSeconds ?? health.lastTick?.sloSeconds;
|
|
58
|
+
if (typeof staleness === 'number') {
|
|
59
|
+
const over = typeof slo === 'number' && staleness > slo;
|
|
60
|
+
lines.push(` stalest: ${formatAge(staleness)} unobserved at last tick` +
|
|
61
|
+
(typeof slo === 'number' ? ` (target ${formatAge(slo)}${over ? ', OVER' : ''})` : ''));
|
|
62
|
+
}
|
|
63
|
+
else if (health.lastTick) {
|
|
64
|
+
// An older leader recorded no age, or the head row's age could not be read.
|
|
65
|
+
lines.push(' stalest: unknown');
|
|
66
|
+
}
|
|
55
67
|
const tick = health.lastTick;
|
|
56
68
|
if (tick) {
|
|
57
|
-
|
|
58
|
-
`
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
69
|
+
const batch = typeof tick.selected === 'number'
|
|
70
|
+
? ` of ${tick.selected}${typeof tick.selectedLimit === 'number' ? ` (batch ${tick.selectedLimit})` : ''}`
|
|
71
|
+
: '';
|
|
72
|
+
lines.push(` last tick: scanned ${tick.scanned ?? 0}${batch}` +
|
|
73
|
+
(tick.timeboxed ? ' | CUT SHORT by the lease budget' : ''));
|
|
74
|
+
lines.push(` ready ${tick.ready ?? 0}` +
|
|
75
|
+
` | working ${tick.working ?? 0}` +
|
|
76
|
+
` | waiting ${tick.waiting ?? 0}` +
|
|
77
|
+
` | blocked ${tick.blocked ?? 0}` +
|
|
78
|
+
` | failed ${tick.failed ?? 0}` +
|
|
62
79
|
` | alerted ${tick.alerted ?? 0}` +
|
|
63
80
|
` | errors ${tick.errors ?? 0}`);
|
|
64
81
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../../base-command");
|
|
5
6
|
const commitments_1 = require("../../../lib/commitments");
|
|
@@ -29,7 +30,7 @@ class CommitmentsPackList extends base_command_1.BaseCommand {
|
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
if (flags.json) {
|
|
32
|
-
this.
|
|
33
|
+
this.printJsonResult((0, list_output_1.listResult)(result));
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
35
36
|
const rows = result.data || [];
|
|
@@ -92,8 +92,10 @@ function preflightGateLines(gate, verbose = false) {
|
|
|
92
92
|
else if (status === 'invalid') {
|
|
93
93
|
lines.push(' Active owner rules: unknown (stored rules invalid).');
|
|
94
94
|
}
|
|
95
|
-
else if (status === 'available' &&
|
|
96
|
-
|
|
95
|
+
else if (status === 'available' &&
|
|
96
|
+
typeof count === 'number' &&
|
|
97
|
+
Number.isSafeInteger(count) &&
|
|
98
|
+
count >= 0) {
|
|
97
99
|
lines.push(` Active owner rules: ${count}${count === 0 ? ' (no active rules configured)' : ''}.`);
|
|
98
100
|
}
|
|
99
101
|
else {
|
|
@@ -110,6 +112,8 @@ function preflightGateLines(gate, verbose = false) {
|
|
|
110
112
|
}
|
|
111
113
|
for (const sentence of (0, preflight_copy_1.gateExplanationLines)(gate))
|
|
112
114
|
lines.push(` ${sentence}`);
|
|
115
|
+
for (const sentence of (0, preflight_copy_1.placementTargetLines)(gate))
|
|
116
|
+
lines.push(` ${sentence}`);
|
|
113
117
|
return lines;
|
|
114
118
|
}
|
|
115
119
|
class CommitmentsPreflight extends base_command_1.BaseCommand {
|
|
@@ -406,12 +406,21 @@ JSON
|
|
|
406
406
|
catch (err) {
|
|
407
407
|
this.handleApiError(err);
|
|
408
408
|
}
|
|
409
|
+
// A replacement edit is accepted as written; these say what it removed.
|
|
410
|
+
const warnings = (0, commitments_1.commitmentWriteWarnings)(commitment, {
|
|
411
|
+
before: current,
|
|
412
|
+
payload,
|
|
413
|
+
});
|
|
409
414
|
if (flags.json) {
|
|
410
|
-
this.log(JSON.stringify((0, web_url_1.withCommitmentUrl)(this.cliConfig.baseURL,
|
|
415
|
+
this.log(JSON.stringify((0, web_url_1.withCommitmentUrl)(this.cliConfig.baseURL, {
|
|
416
|
+
...commitment,
|
|
417
|
+
...(warnings.length ? { warnings } : {}),
|
|
418
|
+
}), null, 2));
|
|
411
419
|
return;
|
|
412
420
|
}
|
|
413
421
|
this.log((0, commitments_1.describeCommitmentRevision)(commitment?.revision));
|
|
414
422
|
(0, commitments_1.renderCommitmentSummary)(commitment, (line) => this.log(line));
|
|
423
|
+
(0, commitments_1.renderCommitmentWriteWarnings)(warnings, (line) => this.warn(line));
|
|
415
424
|
}
|
|
416
425
|
}
|
|
417
426
|
exports.default = CommitmentsUpdate;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const list_output_1 = require("../../lib/list-output");
|
|
3
4
|
const core_1 = require("@oclif/core");
|
|
4
5
|
const base_command_1 = require("../../base-command");
|
|
5
6
|
const compasses_1 = require("../../lib/compasses");
|
|
@@ -36,7 +37,7 @@ class CompassList extends base_command_1.BaseCommand {
|
|
|
36
37
|
this.handleApiError(err);
|
|
37
38
|
}
|
|
38
39
|
if (flags.json) {
|
|
39
|
-
this.
|
|
40
|
+
this.printJsonResult((0, list_output_1.listResult)(response));
|
|
40
41
|
return;
|
|
41
42
|
}
|
|
42
43
|
(0, compasses_1.renderCompassList)(response.data ?? [], (line) => this.log(line));
|
package/dist/commands/context.js
CHANGED
|
@@ -8,6 +8,7 @@ const cli_id_1 = require("../lib/cli-id");
|
|
|
8
8
|
const keychain_1 = require("../lib/keychain");
|
|
9
9
|
const cli_runtime_1 = require("../lib/cli-runtime");
|
|
10
10
|
const runtime_context_1 = require("../lib/runtime-context");
|
|
11
|
+
const task_write_attribution_1 = require("../lib/task-write-attribution");
|
|
11
12
|
class Context extends base_command_1.BaseCommand {
|
|
12
13
|
static description = 'Print the current skrr CLI runtime context for agent automation';
|
|
13
14
|
static examples = [
|
|
@@ -82,6 +83,8 @@ class Context extends base_command_1.BaseCommand {
|
|
|
82
83
|
return { id, source: id === selected ? 'selection' : 'env' };
|
|
83
84
|
})(),
|
|
84
85
|
runtime,
|
|
86
|
+
writeAttribution: (0, task_write_attribution_1.runtimeWriteAttribution)(runtime),
|
|
87
|
+
warnings: [...runtime.warnings, ...(!runtime.agent?.boundToSession ? [(0, task_write_attribution_1.runtimeWriteAttribution)(runtime).notice] : [])],
|
|
85
88
|
agent: runtime.agent,
|
|
86
89
|
task: runtime.task,
|
|
87
90
|
conversation: runtime.conversation,
|
|
@@ -108,6 +111,9 @@ class Context extends base_command_1.BaseCommand {
|
|
|
108
111
|
if (runtime.task.id || runtime.task.identifier) {
|
|
109
112
|
this.log(`Task: ${runtime.task.identifier ?? runtime.task.id}`);
|
|
110
113
|
}
|
|
114
|
+
this.log(`Task writes: ${payload.writeAttribution.notice}`);
|
|
115
|
+
if (!runtime.agent?.boundToSession)
|
|
116
|
+
this.log(task_write_attribution_1.AGENT_BINDING_GUIDANCE);
|
|
111
117
|
if (runtime.warnings.length > 0) {
|
|
112
118
|
this.log('Warnings:');
|
|
113
119
|
for (const warning of runtime.warnings)
|
|
@@ -119,7 +125,7 @@ exports.default = Context;
|
|
|
119
125
|
function recommendationsFor(runtime) {
|
|
120
126
|
const recommendations = [];
|
|
121
127
|
if (!runtime.agent) {
|
|
122
|
-
recommendations.push(
|
|
128
|
+
recommendations.push(task_write_attribution_1.AGENT_BINDING_GUIDANCE);
|
|
123
129
|
}
|
|
124
130
|
else if (!runtime.agent.canonical) {
|
|
125
131
|
recommendations.push('Prefer OVERSKY_SESSION_AGENT_ID over legacy OVERSKY_AGENT_ID in daemon runtimes.');
|