@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
|
@@ -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");
|
|
@@ -92,12 +93,12 @@ class ConvosList extends base_command_1.BaseCommand {
|
|
|
92
93
|
// OSK-1675 — normalize to the { object, data, next_cursor, has_more } envelope
|
|
93
94
|
// used by sibling list commands (e.g. `tasks list`) so scripts can share parsing.
|
|
94
95
|
if (flags.json) {
|
|
95
|
-
this.
|
|
96
|
+
this.printJsonResult((0, list_output_1.listResult)({
|
|
96
97
|
object: 'list',
|
|
97
98
|
data: items,
|
|
98
99
|
next_cursor: nextCursor ?? null,
|
|
99
100
|
has_more: Boolean(nextCursor),
|
|
100
|
-
}
|
|
101
|
+
}));
|
|
101
102
|
return;
|
|
102
103
|
}
|
|
103
104
|
if (items.length === 0) {
|
|
@@ -5,6 +5,9 @@ const exec_runtime_binary_1 = require("../../lib/exec-runtime-binary");
|
|
|
5
5
|
const daemon_binding_1 = require("../../lib/daemon-binding");
|
|
6
6
|
const daemon_installer_1 = require("../../lib/daemon-installer");
|
|
7
7
|
const daemon_setup_1 = require("../../lib/daemon-setup");
|
|
8
|
+
const daemonHandoff_1 = require("../../lib/daemonHandoff");
|
|
9
|
+
const daemon_machine_identity_copy_1 = require("../../lib/daemon-machine-identity-copy");
|
|
10
|
+
const live_runtime_binary_1 = require("../../lib/live-runtime-binary");
|
|
8
11
|
/**
|
|
9
12
|
* `skrr daemon install` — install the local runtime's OS service.
|
|
10
13
|
*
|
|
@@ -83,7 +86,20 @@ class DaemonInstall extends core_1.Command {
|
|
|
83
86
|
// moment the binding is chosen, and leaving it to a separate command
|
|
84
87
|
// is how a CLI and its daemon end up on different deployments
|
|
85
88
|
// (OSK-279) without anyone doing anything wrong.
|
|
86
|
-
const
|
|
89
|
+
const installArgs = (0, daemon_binding_1.bindToCliSession)(argv);
|
|
90
|
+
// A service installed from a daemon that predates per-profile machine
|
|
91
|
+
// identities runs that daemon for good, and registers the profile on the
|
|
92
|
+
// default profile's machine row (OSK-S-440). Ask the binary about to run.
|
|
93
|
+
// `--help` and `--json` are not installs.
|
|
94
|
+
if (!installArgs.some((arg) => ['--help', '-h'].includes(arg))) {
|
|
95
|
+
const skew = await (0, daemonHandoff_1.checkLocalDaemonMachineIdentity)((0, live_runtime_binary_1.profileFromArgs)(installArgs));
|
|
96
|
+
if (skew) {
|
|
97
|
+
for (const line of (0, daemon_machine_identity_copy_1.describeDaemonMachineIdentitySkew)(skew))
|
|
98
|
+
this.logToStderr(line);
|
|
99
|
+
this.exit(78);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const code = await (0, exec_runtime_binary_1.execRuntimeBinary)(['install', ...installArgs]);
|
|
87
103
|
if (code === 0 &&
|
|
88
104
|
!argv.some((arg) => ['--json', '--help', '-h'].includes(arg))) {
|
|
89
105
|
this.log('Coding-agent instructions: sign in with `skrr login`, or review installation choices with `skrr instructions setup`.');
|
|
@@ -4,6 +4,8 @@ const core_1 = require("@oclif/core");
|
|
|
4
4
|
const daemon_binding_1 = require("../../lib/daemon-binding");
|
|
5
5
|
const exec_runtime_binary_1 = require("../../lib/exec-runtime-binary");
|
|
6
6
|
const live_runtime_binary_1 = require("../../lib/live-runtime-binary");
|
|
7
|
+
const daemonHandoff_1 = require("../../lib/daemonHandoff");
|
|
8
|
+
const daemon_machine_identity_copy_1 = require("../../lib/daemon-machine-identity-copy");
|
|
7
9
|
/**
|
|
8
10
|
* `skrr daemon login` — authenticate the local runtime.
|
|
9
11
|
*
|
|
@@ -53,6 +55,18 @@ class DaemonLogin extends core_1.Command {
|
|
|
53
55
|
if (decision?.kind === 'forward-live') {
|
|
54
56
|
this.warn(`Signing in with the live daemon binary ${decision.binary}.`);
|
|
55
57
|
}
|
|
58
|
+
// The binary about to sign this profile in must register it under the
|
|
59
|
+
// machine identity the profile has (OSK-S-440): a daemon that predates
|
|
60
|
+
// per-profile identities would bind this login to the default profile's
|
|
61
|
+
// machine row. `--help` is not a login.
|
|
62
|
+
if (!boundArgv.some((arg) => ['--help', '-h'].includes(arg))) {
|
|
63
|
+
const skew = await (0, daemonHandoff_1.checkLocalDaemonMachineIdentity)((0, live_runtime_binary_1.profileFromArgs)(boundArgv), decision?.binary ?? pathBinary);
|
|
64
|
+
if (skew) {
|
|
65
|
+
for (const line of (0, daemon_machine_identity_copy_1.describeDaemonMachineIdentitySkew)(skew))
|
|
66
|
+
this.logToStderr(line);
|
|
67
|
+
this.exit(78);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
56
70
|
// `--cwd` is deliberately NOT defaulted here. `skrrd login` resolves it
|
|
57
71
|
// from the installed service definition, which is the only authoritative
|
|
58
72
|
// answer; guessing it from the CLI's cwd is exactly the mistake that made
|
package/dist/commands/dm/list.js
CHANGED
|
@@ -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");
|
|
@@ -21,7 +22,7 @@ class DmList extends base_command_1.BaseCommand {
|
|
|
21
22
|
this.handleApiError(err);
|
|
22
23
|
}
|
|
23
24
|
if (flags.json) {
|
|
24
|
-
this.
|
|
25
|
+
this.printJsonResult((0, list_output_1.listResult)(chats));
|
|
25
26
|
return;
|
|
26
27
|
}
|
|
27
28
|
if (!Array.isArray(chats) || chats.length === 0) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseCommand } from '../../base-command';
|
|
2
|
+
export default class DmWork extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static args: {
|
|
5
|
+
agent: import("@oclif/core/lib/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static flags: {
|
|
8
|
+
limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
cursor: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
task: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
commands: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
pending: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
13
|
+
'source-message': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
+
command: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
15
|
+
capabilities: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
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 base_command_1 = require("../../base-command");
|
|
6
|
+
const agent_resolver_1 = require("../../lib/agent-resolver");
|
|
7
|
+
class DmWork extends base_command_1.BaseCommand {
|
|
8
|
+
static description = 'List the authorized Tasks managed in an agent’s main chat';
|
|
9
|
+
static args = { agent: core_1.Args.string({ required: false, ignoreStdin: true, description: 'Agent ID; uses authenticated runtime context when omitted' }) };
|
|
10
|
+
static flags = {
|
|
11
|
+
limit: core_1.Flags.integer({ min: 1, max: 100, default: 20 }),
|
|
12
|
+
cursor: core_1.Flags.string({ description: 'Opaque nextCursor from the previous page' }),
|
|
13
|
+
task: core_1.Flags.string({ description: 'Read one exact managed Task link, including Tasks beyond the first page' }),
|
|
14
|
+
commands: core_1.Flags.boolean({ description: 'List durable launch command receipts' }),
|
|
15
|
+
pending: core_1.Flags.boolean({ description: 'With --commands, include only commands still preparing or awaiting effects' }),
|
|
16
|
+
'source-message': core_1.Flags.string({ description: 'With --commands, filter by one source message within this main chat' }),
|
|
17
|
+
command: core_1.Flags.string({ description: 'Read one exact launch command receipt' }),
|
|
18
|
+
capabilities: core_1.Flags.boolean({ description: 'Read managed-work protocol and rollout capabilities' }),
|
|
19
|
+
json: core_1.Flags.boolean({ description: 'Output JSON (including pagination)' }),
|
|
20
|
+
};
|
|
21
|
+
async run() {
|
|
22
|
+
this.requireAuth();
|
|
23
|
+
const { args, flags } = await this.parse(DmWork);
|
|
24
|
+
try {
|
|
25
|
+
const { id } = await (0, agent_resolver_1.resolveAgentIdentity)(args.agent);
|
|
26
|
+
if ([Boolean(flags.task), Boolean(flags.commands), Boolean(flags.command), Boolean(flags.capabilities)].filter(Boolean).length > 1) {
|
|
27
|
+
this.error('Use only one of --task, --commands, --command or --capabilities.', { exit: 2 });
|
|
28
|
+
}
|
|
29
|
+
if (flags.capabilities)
|
|
30
|
+
return this.printJsonResult(await data_provider_1.dataService.getAgentChatWorkCapabilities(id));
|
|
31
|
+
if (flags.task)
|
|
32
|
+
return this.printJsonResult(await data_provider_1.dataService.getAgentChatWorkTask(id, flags.task));
|
|
33
|
+
if (flags.command)
|
|
34
|
+
return this.printJsonResult(await data_provider_1.dataService.getAgentChatWorkCommand(id, flags.command));
|
|
35
|
+
if ((flags.pending || flags['source-message']) && !flags.commands)
|
|
36
|
+
this.error('--pending and --source-message require --commands.', { exit: 2 });
|
|
37
|
+
if (flags.commands)
|
|
38
|
+
return this.printJsonResult(await data_provider_1.dataService.listAgentChatWorkCommands(id, {
|
|
39
|
+
limit: flags.limit, cursor: flags.cursor, pendingOnly: flags.pending,
|
|
40
|
+
sourceMessageId: flags['source-message'],
|
|
41
|
+
}));
|
|
42
|
+
const page = await data_provider_1.dataService.listAgentChatWorkTasks(id, { limit: flags.limit, cursor: flags.cursor });
|
|
43
|
+
if (flags.json)
|
|
44
|
+
return this.printJsonResult(page);
|
|
45
|
+
for (const task of page.items)
|
|
46
|
+
this.log(`${task.taskId} ${task.title ?? ''}`.trimEnd());
|
|
47
|
+
this.log(`${page.items.length} shown; ${page.total} authorized Task(s)${page.hasMore ? `; next cursor ${page.nextCursor}` : ''}.`);
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
this.handleApiError(error);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.default = DmWork;
|
|
@@ -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 api_fetch_1 = require("../../lib/api-fetch");
|
|
@@ -50,7 +51,7 @@ class FeedsList extends base_command_1.BaseCommand {
|
|
|
50
51
|
this.handleApiError(err);
|
|
51
52
|
}
|
|
52
53
|
if (flags.json) {
|
|
53
|
-
this.
|
|
54
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'items'));
|
|
54
55
|
return;
|
|
55
56
|
}
|
|
56
57
|
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 base_command_1 = require("../../base-command");
|
|
5
6
|
const followups_1 = require("../../lib/followups");
|
|
@@ -72,7 +73,7 @@ class FollowupsList extends base_command_1.BaseCommand {
|
|
|
72
73
|
return;
|
|
73
74
|
}
|
|
74
75
|
if (flags.json) {
|
|
75
|
-
this.
|
|
76
|
+
this.printJsonResult((0, list_output_1.listResult)(response, 'followups'));
|
|
76
77
|
return;
|
|
77
78
|
}
|
|
78
79
|
const rows = response.followups ?? [];
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansCancel extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static args: {
|
|
5
|
+
id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static flags: {
|
|
8
|
+
revision: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
reason: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
};
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const base_command_1 = require("../../../base-command");
|
|
5
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
6
|
+
class LookbackPlansCancel extends base_command_1.BaseCommand {
|
|
7
|
+
static description = 'Cancel the remaining lookbacks of a plan';
|
|
8
|
+
static args = { id: lookbackPlans_1.lookbackPlanIdArg };
|
|
9
|
+
static flags = {
|
|
10
|
+
revision: core_1.Flags.integer({ description: 'Expected current revision; stale edits are refused', min: 1 }),
|
|
11
|
+
reason: core_1.Flags.string({ description: 'Why the remaining lookbacks are no longer needed' }),
|
|
12
|
+
json: core_1.Flags.boolean({ description: 'Output as JSON' }),
|
|
13
|
+
};
|
|
14
|
+
async run() {
|
|
15
|
+
this.requireAuth();
|
|
16
|
+
const { args, flags } = await this.parse(LookbackPlansCancel);
|
|
17
|
+
try {
|
|
18
|
+
const result = await lookbackPlans_1.lookbackPlansApi.cancel(args.id, { expectedRevision: flags.revision, reason: flags.reason });
|
|
19
|
+
this.log(flags.json ? JSON.stringify(result, null, 2) : `Lookback plan ${result.plan.id}: ${result.plan.state} (r${result.plan.revision}).`);
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
this.handleApiError(err);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.default = LookbackPlansCancel;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansCreate extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
'from-json': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
|
+
agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const base_command_1 = require("../../../base-command");
|
|
5
|
+
const prompt_1 = require("../../../lib/prompt");
|
|
6
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
7
|
+
class LookbackPlansCreate extends base_command_1.BaseCommand {
|
|
8
|
+
static description = 'Schedule a bounded plan of 1–10 lookbacks, each free to stay silent';
|
|
9
|
+
static examples = ['<%= config.bin %> followups plans create --from-json plan.json --agent agent_1 --json'];
|
|
10
|
+
static flags = {
|
|
11
|
+
'from-json': core_1.Flags.string({ description: 'Plan or create envelope JSON file; - reads stdin', required: true }),
|
|
12
|
+
agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent or input agentId)' }),
|
|
13
|
+
json: core_1.Flags.boolean({ description: 'Output as JSON' }),
|
|
14
|
+
};
|
|
15
|
+
async run() {
|
|
16
|
+
this.requireAuth();
|
|
17
|
+
const { flags } = await this.parse(LookbackPlansCreate);
|
|
18
|
+
let body;
|
|
19
|
+
try {
|
|
20
|
+
body = (0, lookbackPlans_1.lookbackCreateBody)(await (0, prompt_1.readJsonBody)(flags['from-json']), flags.agent);
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'LOOKBACK_INVALID_FIELD', exit: 2, retryable: false });
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
const result = await lookbackPlans_1.lookbackPlansApi.create(body);
|
|
28
|
+
this.log(flags.json ? JSON.stringify(result, null, 2) : (0, lookbackPlans_1.lookbackArmingLine)(result));
|
|
29
|
+
}
|
|
30
|
+
catch (err) {
|
|
31
|
+
this.handleApiError(err);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.default = LookbackPlansCreate;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansList extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static flags: {
|
|
5
|
+
agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
6
|
+
'all-agents': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
state: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
limit: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
cursor: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
};
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
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 base_command_1 = require("../../../base-command");
|
|
6
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
7
|
+
const followups_1 = require("../../../lib/followups");
|
|
8
|
+
const list_output_1 = require("../../../lib/list-output");
|
|
9
|
+
class LookbackPlansList extends base_command_1.BaseCommand {
|
|
10
|
+
static description = 'List lookback plans, active first, with bounded history pagination';
|
|
11
|
+
static flags = {
|
|
12
|
+
agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent)', exclusive: ['all-agents'] }),
|
|
13
|
+
'all-agents': core_1.Flags.boolean({ description: 'List all agents owned by you', exclusive: ['agent'] }),
|
|
14
|
+
state: core_1.Flags.string({ description: 'Filter plan state', options: [...data_provider_1.LOOKBACK_PLAN_STATES] }),
|
|
15
|
+
limit: core_1.Flags.integer({ description: 'Maximum plans (1..100)', min: 1, max: 100 }),
|
|
16
|
+
cursor: core_1.Flags.string({ description: 'Opaque nextCursor from a previous page; keep the same scope and filters' }),
|
|
17
|
+
json: core_1.Flags.boolean({ description: 'Output as JSON' }),
|
|
18
|
+
};
|
|
19
|
+
async run() {
|
|
20
|
+
this.requireAuth();
|
|
21
|
+
const { flags } = await this.parse(LookbackPlansList);
|
|
22
|
+
let agentId;
|
|
23
|
+
try {
|
|
24
|
+
agentId = flags['all-agents'] ? undefined : (0, followups_1.resolveFollowUpAgent)(flags.agent).id;
|
|
25
|
+
}
|
|
26
|
+
catch (err) {
|
|
27
|
+
this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'AGENT_CONTEXT_AMBIGUOUS', exit: 2, retryable: false });
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
const result = await lookbackPlans_1.lookbackPlansApi.list({ agentId, state: flags.state, limit: flags.limit, cursor: flags.cursor });
|
|
32
|
+
if (flags.json) {
|
|
33
|
+
this.printJsonResult((0, list_output_1.listResult)(result, 'plans'));
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (!result.plans.length) {
|
|
37
|
+
this.log('No lookback plans.');
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
for (const plan of result.plans)
|
|
41
|
+
this.log((0, lookbackPlans_1.lookbackPlanSummary)(plan));
|
|
42
|
+
if (result.hasMore)
|
|
43
|
+
this.log(`More plans: repeat this command with --cursor ${result.nextCursor}`);
|
|
44
|
+
}
|
|
45
|
+
catch (err) {
|
|
46
|
+
this.handleApiError(err);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.default = LookbackPlansList;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansObservability extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static flags: {
|
|
5
|
+
agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
6
|
+
'all-agents': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
limit: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const base_command_1 = require("../../../base-command");
|
|
5
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
6
|
+
const followups_1 = require("../../../lib/followups");
|
|
7
|
+
class LookbackPlansObservability extends base_command_1.BaseCommand {
|
|
8
|
+
static description = 'Inspect bounded lookback scheduling health and evaluation outcomes';
|
|
9
|
+
static flags = {
|
|
10
|
+
agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent)', exclusive: ['all-agents'] }),
|
|
11
|
+
'all-agents': core_1.Flags.boolean({ description: 'Inspect all owned agents', exclusive: ['agent'] }),
|
|
12
|
+
limit: core_1.Flags.integer({ description: 'Maximum sampled plans (1..100)', min: 1, max: 100 }),
|
|
13
|
+
json: core_1.Flags.boolean({ description: 'Output as JSON' }),
|
|
14
|
+
};
|
|
15
|
+
async run() {
|
|
16
|
+
this.requireAuth();
|
|
17
|
+
const { flags } = await this.parse(LookbackPlansObservability);
|
|
18
|
+
let agentId;
|
|
19
|
+
try {
|
|
20
|
+
agentId = flags['all-agents'] ? undefined : (0, followups_1.resolveFollowUpAgent)(flags.agent).id;
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'AGENT_CONTEXT_AMBIGUOUS', exit: 2, retryable: false });
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
const result = await lookbackPlans_1.lookbackPlansApi.observability({ agentId, limit: flags.limit });
|
|
28
|
+
if (flags.json) {
|
|
29
|
+
this.log(JSON.stringify(result, null, 2));
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
this.log(`${result.sample.plans} plans sampled${result.sample.truncated ? ' (more exist)' : ''}.`);
|
|
33
|
+
for (const group of result.groups) {
|
|
34
|
+
this.log(`${group.agentId}: ${group.evaluations.used}/${group.evaluations.ceiling} evaluations used`);
|
|
35
|
+
for (const [name, count] of Object.entries(group.health)) {
|
|
36
|
+
if (count > 0)
|
|
37
|
+
this.log(` ${name}: ${count}`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
this.handleApiError(err);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.default = LookbackPlansObservability;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansRevise extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static args: {
|
|
5
|
+
id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static flags: {
|
|
8
|
+
revision: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
'from-json': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
};
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const base_command_1 = require("../../../base-command");
|
|
5
|
+
const prompt_1 = require("../../../lib/prompt");
|
|
6
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
7
|
+
class LookbackPlansRevise extends base_command_1.BaseCommand {
|
|
8
|
+
static description = 'Revise pending lookbacks using the original source and step IDs';
|
|
9
|
+
static args = { id: lookbackPlans_1.lookbackPlanIdArg };
|
|
10
|
+
static flags = {
|
|
11
|
+
revision: core_1.Flags.integer({ description: 'Expected current revision; stale edits are refused', min: 1, required: true }),
|
|
12
|
+
'from-json': core_1.Flags.string({ description: 'Full PlanInput JSON file; - reads stdin', required: true }),
|
|
13
|
+
json: core_1.Flags.boolean({ description: 'Output as JSON' }),
|
|
14
|
+
};
|
|
15
|
+
async run() {
|
|
16
|
+
this.requireAuth();
|
|
17
|
+
const { args, flags } = await this.parse(LookbackPlansRevise);
|
|
18
|
+
let plan;
|
|
19
|
+
try {
|
|
20
|
+
plan = (0, lookbackPlans_1.lookbackInput)(await (0, prompt_1.readJsonBody)(flags['from-json']), true);
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'LOOKBACK_INVALID_FIELD', exit: 2, retryable: false });
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
const result = await lookbackPlans_1.lookbackPlansApi.revise(args.id, { expectedRevision: flags.revision, plan });
|
|
28
|
+
this.log(flags.json ? JSON.stringify(result, null, 2) : (0, lookbackPlans_1.lookbackArmingLine)(result));
|
|
29
|
+
}
|
|
30
|
+
catch (err) {
|
|
31
|
+
this.handleApiError(err);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.default = LookbackPlansRevise;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCommand } from '../../../base-command';
|
|
2
|
+
export default class LookbackPlansShow extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static args: {
|
|
5
|
+
id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static flags: {
|
|
8
|
+
json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@oclif/core");
|
|
4
|
+
const base_command_1 = require("../../../base-command");
|
|
5
|
+
const lookbackPlans_1 = require("../../../lib/lookbackPlans");
|
|
6
|
+
class LookbackPlansShow extends base_command_1.BaseCommand {
|
|
7
|
+
static description = 'Show a lookback plan, step outcomes and its current revision';
|
|
8
|
+
static args = { id: lookbackPlans_1.lookbackPlanIdArg };
|
|
9
|
+
static flags = { json: core_1.Flags.boolean({ description: 'Output as JSON' }) };
|
|
10
|
+
async run() {
|
|
11
|
+
this.requireAuth();
|
|
12
|
+
const { args, flags } = await this.parse(LookbackPlansShow);
|
|
13
|
+
try {
|
|
14
|
+
const result = await lookbackPlans_1.lookbackPlansApi.show(args.id);
|
|
15
|
+
if (flags.json) {
|
|
16
|
+
this.log(JSON.stringify(result, null, 2));
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
this.log((0, lookbackPlans_1.lookbackPlanSummary)(result.plan));
|
|
20
|
+
this.log(`Objective: ${result.plan.objective}\nStop when: ${result.plan.stopCondition}`);
|
|
21
|
+
for (const step of result.plan.steps) {
|
|
22
|
+
this.log(` ${step.id} [${step.state}${step.outcome ? `/${step.outcome}` : ''}] ${step.runAt} ${step.label || step.instruction}`);
|
|
23
|
+
if (step.summary)
|
|
24
|
+
this.log(` ${step.summary}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
this.handleApiError(err);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.default = LookbackPlansShow;
|
|
@@ -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");
|
|
@@ -36,7 +37,7 @@ class GoalsKeyResultsList 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
|
const items = response?.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 data_provider_1 = require("@skrr-ai/data-provider");
|
|
5
6
|
const base_command_1 = require("../../../base-command");
|
|
@@ -29,7 +30,7 @@ class GoalsLabelsList extends base_command_1.BaseCommand {
|
|
|
29
30
|
const labelIds = goal.labelIds ?? [];
|
|
30
31
|
if (labelIds.length === 0) {
|
|
31
32
|
if (flags.json) {
|
|
32
|
-
this.
|
|
33
|
+
this.printJsonResult((0, list_output_1.listResult)({ data: [] }));
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
35
36
|
this.log('No labels on this goal.');
|
|
@@ -47,7 +48,7 @@ class GoalsLabelsList extends base_command_1.BaseCommand {
|
|
|
47
48
|
}
|
|
48
49
|
}));
|
|
49
50
|
if (flags.json) {
|
|
50
|
-
this.
|
|
51
|
+
this.printJsonResult((0, list_output_1.listResult)({ data: hydrated }));
|
|
51
52
|
return;
|
|
52
53
|
}
|
|
53
54
|
const rows = hydrated.map((l) => {
|
|
@@ -1,11 +1,12 @@
|
|
|
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");
|
|
6
7
|
const web_url_1 = require("../../lib/web-url");
|
|
7
8
|
const format_1 = require("../../lib/format");
|
|
8
|
-
const
|
|
9
|
+
const list_output_2 = require("../../lib/list-output");
|
|
9
10
|
class GoalsList extends base_command_1.BaseCommand {
|
|
10
11
|
static description = 'List goals';
|
|
11
12
|
static examples = [
|
|
@@ -77,7 +78,7 @@ class GoalsList extends base_command_1.BaseCommand {
|
|
|
77
78
|
// a script reads `.data` here exactly as it does for tasks and projects. The
|
|
78
79
|
// space-scoped endpoint is not paginated and answers a bare `{data}`; filling
|
|
79
80
|
// the missing fields is additive, so nothing that read `.data` changes.
|
|
80
|
-
this.
|
|
81
|
+
this.printJsonResult((0, list_output_1.listResult)((0, web_url_1.withDataUrls)(this.cliConfig.baseURL, (0, list_output_2.toListEnvelope)(response) ?? response, web_url_1.goalUrlFrom)));
|
|
81
82
|
return;
|
|
82
83
|
}
|
|
83
84
|
// Both listGoals and listSpaceGoals return { data: Goal[] }. The general
|
|
@@ -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 grants_1 = require("../../lib/grants");
|
|
@@ -32,7 +33,7 @@ class GrantsList extends base_command_1.BaseCommand {
|
|
|
32
33
|
provider: flags.provider,
|
|
33
34
|
}));
|
|
34
35
|
if (flags.json) {
|
|
35
|
-
this.
|
|
36
|
+
this.printJsonResult((0, list_output_1.listResult)(response.grants));
|
|
36
37
|
return;
|
|
37
38
|
}
|
|
38
39
|
(0, grants_1.renderGrantList)(response.grants, (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 format_1 = require("../../../lib/format");
|
|
@@ -33,7 +34,7 @@ class HarnessesGrantsList extends base_command_1.BaseCommand {
|
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
35
36
|
if (flags.json) {
|
|
36
|
-
this.
|
|
37
|
+
this.printJsonResult((0, list_output_1.listResult)(grants));
|
|
37
38
|
return;
|
|
38
39
|
}
|
|
39
40
|
if (grants.length === 0) {
|