@synap-core/cli 1.10.0 → 1.12.2
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/README.md +23 -198
- package/dist/build-info.json +6 -0
- package/dist/commands/agent-run.js +3 -2
- package/dist/commands/agent-run.js.map +1 -1
- package/dist/commands/agents.d.ts +33 -17
- package/dist/commands/agents.js +203 -237
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/app.d.ts +143 -0
- package/dist/commands/app.js +523 -0
- package/dist/commands/app.js.map +1 -0
- package/dist/commands/automate.d.ts +21 -0
- package/dist/commands/automate.js +42 -0
- package/dist/commands/automate.js.map +1 -0
- package/dist/commands/automation-schema.test.d.ts +16 -0
- package/dist/commands/automation-schema.test.js +77 -0
- package/dist/commands/automation-schema.test.js.map +1 -0
- package/dist/commands/automation.d.ts +12 -0
- package/dist/commands/automation.js +80 -35
- package/dist/commands/automation.js.map +1 -1
- package/dist/commands/bridge-setup.d.ts +14 -1
- package/dist/commands/bridge-setup.js +392 -128
- package/dist/commands/bridge-setup.js.map +1 -1
- package/dist/commands/cap-connections.d.ts +4 -4
- package/dist/commands/cap-connections.js +14 -14
- package/dist/commands/cap-connections.js.map +1 -1
- package/dist/commands/capability.d.ts +2 -0
- package/dist/commands/capability.js +297 -176
- package/dist/commands/capability.js.map +1 -1
- package/dist/commands/catalog.d.ts +275 -0
- package/dist/commands/catalog.js +481 -0
- package/dist/commands/catalog.js.map +1 -0
- package/dist/commands/cell.d.ts +155 -8
- package/dist/commands/cell.js +416 -40
- package/dist/commands/cell.js.map +1 -1
- package/dist/commands/centrality.js +3 -14
- package/dist/commands/centrality.js.map +1 -1
- package/dist/commands/connect.d.ts +38 -13
- package/dist/commands/connect.js +68 -167
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/connections.d.ts +3 -2
- package/dist/commands/connections.js +95 -25
- package/dist/commands/connections.js.map +1 -1
- package/dist/commands/context.js +9 -2
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.d.ts +34 -0
- package/dist/commands/data-extra.js +198 -25
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/data.d.ts +120 -2
- package/dist/commands/data.js +307 -24
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/diagnose.d.ts +66 -4
- package/dist/commands/diagnose.js +329 -29
- package/dist/commands/diagnose.js.map +1 -1
- package/dist/commands/digest.js +2 -1
- package/dist/commands/digest.js.map +1 -1
- package/dist/commands/doc.d.ts +25 -4
- package/dist/commands/doc.js +100 -18
- package/dist/commands/doc.js.map +1 -1
- package/dist/commands/doctor.d.ts +130 -0
- package/dist/commands/doctor.js +814 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/events.js +3 -1
- package/dist/commands/events.js.map +1 -1
- package/dist/commands/explain.js +5 -5
- package/dist/commands/explain.js.map +1 -1
- package/dist/commands/graph.js +5 -3
- package/dist/commands/graph.js.map +1 -1
- package/dist/commands/import.d.ts +368 -13
- package/dist/commands/import.js +1096 -55
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts +20 -9
- package/dist/commands/init.js +433 -973
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/keys.d.ts +1 -0
- package/dist/commands/keys.js +15 -2
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/knowledge.d.ts +28 -6
- package/dist/commands/knowledge.js +358 -73
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/launch.js +2 -2
- package/dist/commands/launch.js.map +1 -1
- package/dist/commands/lens.d.ts +37 -1
- package/dist/commands/lens.js +193 -72
- package/dist/commands/lens.js.map +1 -1
- package/dist/commands/market-authoring.d.ts +72 -0
- package/dist/commands/market-authoring.js +566 -0
- package/dist/commands/market-authoring.js.map +1 -0
- package/dist/commands/market-official.d.ts +58 -0
- package/dist/commands/market-official.js +84 -0
- package/dist/commands/market-official.js.map +1 -0
- package/dist/commands/market.d.ts +419 -20
- package/dist/commands/market.js +2124 -193
- package/dist/commands/market.js.map +1 -1
- package/dist/commands/mcp.d.ts +70 -13
- package/dist/commands/mcp.js +308 -40
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/open.d.ts +39 -9
- package/dist/commands/open.js +80 -25
- package/dist/commands/open.js.map +1 -1
- package/dist/commands/playbook.d.ts +42 -0
- package/dist/commands/playbook.js +162 -0
- package/dist/commands/playbook.js.map +1 -0
- package/dist/commands/pod.js +1 -1
- package/dist/commands/pod.js.map +1 -1
- package/dist/commands/pods.d.ts +19 -0
- package/dist/commands/pods.js +220 -85
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proposals-actions.d.ts +62 -0
- package/dist/commands/proposals-actions.js +146 -8
- package/dist/commands/proposals-actions.js.map +1 -1
- package/dist/commands/proposals-await.d.ts +68 -0
- package/dist/commands/proposals-await.js +248 -0
- package/dist/commands/proposals-await.js.map +1 -0
- package/dist/commands/proton-setup.d.ts +73 -0
- package/dist/commands/proton-setup.js +577 -0
- package/dist/commands/proton-setup.js.map +1 -0
- package/dist/commands/providers.d.ts +23 -0
- package/dist/commands/providers.js +126 -1
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/raycast.js +6 -2
- package/dist/commands/raycast.js.map +1 -1
- package/dist/commands/rule.d.ts +150 -0
- package/dist/commands/rule.js +447 -0
- package/dist/commands/rule.js.map +1 -0
- package/dist/commands/session-wait.d.ts +111 -0
- package/dist/commands/session-wait.js +209 -0
- package/dist/commands/session-wait.js.map +1 -0
- package/dist/commands/sessions.d.ts +52 -0
- package/dist/commands/sessions.js +479 -58
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/skill-manage.d.ts +21 -0
- package/dist/commands/skill-manage.js +136 -19
- package/dist/commands/skill-manage.js.map +1 -1
- package/dist/commands/skills.js +19 -1
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/status.d.ts +1 -4
- package/dist/commands/status.js +5 -34
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/statusline.backoff.test.d.ts +13 -0
- package/dist/commands/statusline.backoff.test.js +100 -0
- package/dist/commands/statusline.backoff.test.js.map +1 -0
- package/dist/commands/statusline.js +16 -9
- package/dist/commands/statusline.js.map +1 -1
- package/dist/commands/sync-status.d.ts +12 -0
- package/dist/commands/sync-status.js +125 -0
- package/dist/commands/sync-status.js.map +1 -0
- package/dist/commands/templates-retire.d.ts +34 -0
- package/dist/commands/templates-retire.js +192 -0
- package/dist/commands/templates-retire.js.map +1 -0
- package/dist/commands/tools.js +6 -21
- package/dist/commands/tools.js.map +1 -1
- package/dist/commands/tracks.d.ts +51 -0
- package/dist/commands/tracks.js +291 -0
- package/dist/commands/tracks.js.map +1 -0
- package/dist/commands/update.d.ts +3 -11
- package/dist/commands/update.js +5 -134
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/upload.d.ts +68 -0
- package/dist/commands/upload.js +257 -0
- package/dist/commands/upload.js.map +1 -0
- package/dist/commands/vendor.d.ts +28 -0
- package/dist/commands/vendor.js +110 -0
- package/dist/commands/vendor.js.map +1 -0
- package/dist/commands/versions.js +6 -0
- package/dist/commands/versions.js.map +1 -1
- package/dist/commands/view.js +10 -5
- package/dist/commands/view.js.map +1 -1
- package/dist/commands/whoami.d.ts +23 -3
- package/dist/commands/whoami.js +169 -23
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/worker.d.ts +122 -0
- package/dist/commands/worker.js +435 -0
- package/dist/commands/worker.js.map +1 -0
- package/dist/commands/worker.test.d.ts +1 -0
- package/dist/commands/worker.test.js +116 -0
- package/dist/commands/worker.test.js.map +1 -0
- package/dist/commands/workspace-ops.d.ts +35 -0
- package/dist/commands/workspace-ops.js +153 -0
- package/dist/commands/workspace-ops.js.map +1 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.js +1009 -171
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-connections.d.ts +31 -0
- package/dist/lib/agent-connections.js +33 -0
- package/dist/lib/agent-connections.js.map +1 -0
- package/dist/lib/agent-detect.d.ts +27 -0
- package/dist/lib/agent-detect.js +71 -0
- package/dist/lib/agent-detect.js.map +1 -0
- package/dist/lib/agent-door.d.ts +138 -0
- package/dist/lib/agent-door.js +426 -0
- package/dist/lib/agent-door.js.map +1 -0
- package/dist/lib/agents-config.d.ts +2 -0
- package/dist/lib/agents-config.js +4 -9
- package/dist/lib/agents-config.js.map +1 -1
- package/dist/lib/approval-poll.d.ts +31 -2
- package/dist/lib/approval-poll.js +20 -7
- package/dist/lib/approval-poll.js.map +1 -1
- package/dist/lib/atomic-file.d.ts +48 -0
- package/dist/lib/atomic-file.js +129 -0
- package/dist/lib/atomic-file.js.map +1 -0
- package/dist/lib/auth.d.ts +14 -9
- package/dist/lib/auth.js +44 -61
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/batch-approval.d.ts +85 -0
- package/dist/lib/batch-approval.js +170 -0
- package/dist/lib/batch-approval.js.map +1 -0
- package/dist/lib/capture-lane.d.ts +6 -5
- package/dist/lib/capture-lane.js +11 -8
- package/dist/lib/capture-lane.js.map +1 -1
- package/dist/lib/capture-structure.d.ts +342 -0
- package/dist/lib/capture-structure.js +295 -0
- package/dist/lib/capture-structure.js.map +1 -0
- package/dist/lib/catalog-templates.d.ts +59 -0
- package/dist/lib/catalog-templates.js +126 -0
- package/dist/lib/catalog-templates.js.map +1 -0
- package/dist/lib/cli-build.d.ts +19 -0
- package/dist/lib/cli-build.js +37 -0
- package/dist/lib/cli-build.js.map +1 -0
- package/dist/lib/conversation-headers.d.ts +18 -0
- package/dist/lib/conversation-headers.js +32 -0
- package/dist/lib/conversation-headers.js.map +1 -0
- package/dist/lib/cp-packages.d.ts +216 -4
- package/dist/lib/cp-packages.js +414 -11
- package/dist/lib/cp-packages.js.map +1 -1
- package/dist/lib/credential-class.d.ts +117 -0
- package/dist/lib/credential-class.js +116 -0
- package/dist/lib/credential-class.js.map +1 -0
- package/dist/lib/describe-lens.d.ts +35 -0
- package/dist/lib/describe-lens.js +40 -0
- package/dist/lib/describe-lens.js.map +1 -1
- package/dist/lib/device-connect.d.ts +125 -0
- package/dist/lib/device-connect.js +256 -0
- package/dist/lib/device-connect.js.map +1 -0
- package/dist/lib/directory-lens.d.ts +99 -0
- package/dist/lib/directory-lens.js +187 -0
- package/dist/lib/directory-lens.js.map +1 -0
- package/dist/lib/exporter-coverage.d.ts +71 -0
- package/dist/lib/exporter-coverage.js +97 -0
- package/dist/lib/exporter-coverage.js.map +1 -0
- package/dist/lib/hub-client.d.ts +43 -9
- package/dist/lib/hub-client.js +429 -65
- package/dist/lib/hub-client.js.map +1 -1
- package/dist/lib/id.d.ts +23 -0
- package/dist/lib/id.js +35 -0
- package/dist/lib/id.js.map +1 -0
- package/dist/lib/init-connect.d.ts +41 -0
- package/dist/lib/init-connect.js +75 -0
- package/dist/lib/init-connect.js.map +1 -0
- package/dist/lib/init-exit.d.ts +24 -0
- package/dist/lib/init-exit.js +41 -0
- package/dist/lib/init-exit.js.map +1 -0
- package/dist/lib/init-flow.d.ts +25 -0
- package/dist/lib/init-flow.js +40 -0
- package/dist/lib/init-flow.js.map +1 -0
- package/dist/lib/init-handoff.d.ts +16 -0
- package/dist/lib/init-handoff.js +19 -0
- package/dist/lib/init-handoff.js.map +1 -0
- package/dist/lib/init-output.d.ts +18 -0
- package/dist/lib/init-output.js +43 -0
- package/dist/lib/init-output.js.map +1 -0
- package/dist/lib/init-pod.d.ts +45 -0
- package/dist/lib/init-pod.js +36 -0
- package/dist/lib/init-pod.js.map +1 -0
- package/dist/lib/installed.d.ts +210 -11
- package/dist/lib/installed.js +234 -36
- package/dist/lib/installed.js.map +1 -1
- package/dist/lib/key-approval.d.ts +57 -0
- package/dist/lib/key-approval.js +117 -0
- package/dist/lib/key-approval.js.map +1 -0
- package/dist/lib/key-diagnosis.d.ts +56 -0
- package/dist/lib/key-diagnosis.js +227 -0
- package/dist/lib/key-diagnosis.js.map +1 -0
- package/dist/lib/key-doctor.d.ts +136 -0
- package/dist/lib/key-doctor.js +286 -0
- package/dist/lib/key-doctor.js.map +1 -0
- package/dist/lib/key-locations.d.ts +120 -0
- package/dist/lib/key-locations.js +326 -0
- package/dist/lib/key-locations.js.map +1 -0
- package/dist/lib/key-source.d.ts +66 -0
- package/dist/lib/key-source.js +106 -0
- package/dist/lib/key-source.js.map +1 -0
- package/dist/lib/key-state.d.ts +70 -0
- package/dist/lib/key-state.js +115 -0
- package/dist/lib/key-state.js.map +1 -0
- package/dist/lib/kind-package.d.ts +181 -0
- package/dist/lib/kind-package.js +679 -0
- package/dist/lib/kind-package.js.map +1 -0
- package/dist/lib/knowledge-title.d.ts +24 -0
- package/dist/lib/knowledge-title.js +46 -0
- package/dist/lib/knowledge-title.js.map +1 -0
- package/dist/lib/knowledge-title.test.d.ts +1 -0
- package/dist/lib/knowledge-title.test.js +34 -0
- package/dist/lib/knowledge-title.test.js.map +1 -0
- package/dist/lib/machine-instance.d.ts +64 -0
- package/dist/lib/machine-instance.js +142 -0
- package/dist/lib/machine-instance.js.map +1 -0
- package/dist/lib/mcp-bridge.d.ts +42 -0
- package/dist/lib/mcp-bridge.js +147 -0
- package/dist/lib/mcp-bridge.js.map +1 -0
- package/dist/lib/mcp-bridge.test.d.ts +1 -0
- package/dist/lib/mcp-bridge.test.js +90 -0
- package/dist/lib/mcp-bridge.test.js.map +1 -0
- package/dist/lib/mcp-call.d.ts +30 -0
- package/dist/lib/mcp-call.js +107 -0
- package/dist/lib/mcp-call.js.map +1 -0
- package/dist/lib/mcp-snippets.d.ts +53 -0
- package/dist/lib/mcp-snippets.js +82 -0
- package/dist/lib/mcp-snippets.js.map +1 -0
- package/dist/lib/next-steps.d.ts +8 -0
- package/dist/lib/next-steps.js +31 -1
- package/dist/lib/next-steps.js.map +1 -1
- package/dist/lib/package-wire.d.ts +179 -0
- package/dist/lib/package-wire.js +68 -0
- package/dist/lib/package-wire.js.map +1 -0
- package/dist/lib/pair-link.d.ts +38 -0
- package/dist/lib/pair-link.js +68 -0
- package/dist/lib/pair-link.js.map +1 -0
- package/dist/lib/pod-wide.d.ts +40 -0
- package/dist/lib/pod-wide.js +46 -0
- package/dist/lib/pod-wide.js.map +1 -0
- package/dist/lib/pod.d.ts +119 -115
- package/dist/lib/pod.js +206 -412
- package/dist/lib/pod.js.map +1 -1
- package/dist/lib/project-ref.d.ts +9 -3
- package/dist/lib/project-ref.js +10 -4
- package/dist/lib/project-ref.js.map +1 -1
- package/dist/lib/review-credential.d.ts +119 -0
- package/dist/lib/review-credential.js +147 -0
- package/dist/lib/review-credential.js.map +1 -0
- package/dist/lib/safe-open.d.ts +49 -0
- package/dist/lib/safe-open.js +119 -0
- package/dist/lib/safe-open.js.map +1 -0
- package/dist/lib/session-lens.d.ts +40 -1
- package/dist/lib/session-lens.js +54 -4
- package/dist/lib/session-lens.js.map +1 -1
- package/dist/lib/superwhisper-import.d.ts +8 -0
- package/dist/lib/superwhisper-import.js +14 -7
- package/dist/lib/superwhisper-import.js.map +1 -1
- package/dist/lib/superwhisper-title.test.d.ts +1 -0
- package/dist/lib/superwhisper-title.test.js +18 -0
- package/dist/lib/superwhisper-title.test.js.map +1 -0
- package/dist/lib/targets.d.ts +134 -10
- package/dist/lib/targets.js +962 -258
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/template-file.d.ts +78 -0
- package/dist/lib/template-file.js +140 -0
- package/dist/lib/template-file.js.map +1 -0
- package/dist/lib/template-lifecycle.d.ts +217 -0
- package/dist/lib/template-lifecycle.js +433 -0
- package/dist/lib/template-lifecycle.js.map +1 -0
- package/dist/lib/template-steps.d.ts +88 -0
- package/dist/lib/template-steps.js +118 -0
- package/dist/lib/template-steps.js.map +1 -0
- package/dist/lib/time-ago.d.ts +2 -0
- package/dist/lib/time-ago.js +15 -0
- package/dist/lib/time-ago.js.map +1 -0
- package/dist/utils/logger.js +5 -2
- package/dist/utils/logger.js.map +1 -1
- package/package.json +25 -18
- package/skills/README.md +12 -10
- package/skills/agent-os/SKILL.md +220 -99
- package/skills/manifest.json +2 -2
- package/skills/onboard/SKILL.md +61 -25
- package/skills/synap/README.md +5 -8
- package/skills/synap/SKILL.md +1185 -301
- package/skills/synap/_order.txt +7 -0
- package/skills/synap/_skill.yaml +1 -1
- package/skills/synap/automations.md +15 -0
- package/skills/synap/capture.md +54 -151
- package/skills/synap/cli-operations.md +24 -18
- package/skills/synap/common-mistakes.md +1 -0
- package/skills/synap/concepts.md +28 -0
- package/skills/synap/content-os.md +92 -0
- package/skills/synap/creative-loop.md +15 -10
- package/skills/synap/crm.md +21 -52
- package/skills/synap/digesting-a-channel.md +25 -0
- package/skills/synap/document-embeds.md +141 -47
- package/skills/synap/escalation-ladder.md +20 -10
- package/skills/synap/focus-sessions.md +47 -21
- package/skills/synap/from-intent.md +142 -0
- package/skills/synap/governance-rules.md +4 -4
- package/skills/synap/governance.md +10 -7
- package/skills/synap/hand-off.md +33 -0
- package/skills/synap/inline-patterns.md +15 -7
- package/skills/synap/lenses.md +33 -15
- package/skills/synap/linking.md +41 -40
- package/skills/synap/mcp-remote-servers.md +64 -0
- package/skills/synap/mental-model.md +24 -22
- package/skills/synap/multi-entity-capture.md +6 -4
- package/skills/synap/operating-mode-rules.md +1 -1
- package/skills/synap/processes.md +118 -0
- package/skills/synap/quick-reference.md +5 -1
- package/skills/synap/reading.md +3 -1
- package/skills/synap/reflexes.md +12 -42
- package/skills/synap/viewframe-cells.md +38 -5
- package/skills/synap/work-flow.md +1 -1
- package/skills/synap/work-model.md +96 -0
- package/skills/synap/worked-examples.md +21 -1
- package/skills/synap/workspace-design.md +14 -10
- package/skills/synap/writes.md +165 -35
- package/skills/synap/writing-titles.md +63 -0
- package/skills/synap-app/SKILL.md +319 -0
- package/skills/synap-app/_order.txt +5 -0
- package/skills/synap-app/_skill.yaml +20 -0
- package/skills/synap-app/creating-the-base-app.md +64 -0
- package/skills/synap-app/governance.md +42 -0
- package/skills/synap-app/install-commands.md +55 -0
- package/skills/synap-app/overview.md +50 -0
- package/skills/synap-app/using-the-sdk.md +73 -0
- package/skills/synap-design/SKILL.md +474 -0
- package/skills/synap-design/_order.txt +4 -0
- package/skills/synap-design/_skill.yaml +21 -0
- package/skills/synap-design/loop.md +134 -0
- package/skills/synap-design/overview.md +44 -0
- package/skills/synap-design/principles.md +130 -0
- package/skills/synap-design/system.md +133 -0
- package/skills/synap-market/SKILL.md +625 -0
- package/skills/synap-market/_order.txt +5 -0
- package/skills/synap-market/_skill.yaml +24 -0
- package/skills/synap-market/author-and-publish.md +212 -0
- package/skills/synap-market/discover-and-fetch.md +59 -0
- package/skills/synap-market/governance-and-catalog.md +63 -0
- package/skills/synap-market/install.md +133 -0
- package/skills/synap-market/overview.md +119 -0
- package/skills/synap-schema/SKILL.md +172 -10
- package/skills/synap-schema/_order.txt +2 -0
- package/skills/synap-schema/_skill.yaml +4 -2
- package/skills/synap-schema/common-mistakes.md +4 -2
- package/skills/synap-schema/discover-profiles.md +1 -1
- package/skills/synap-schema/entity-scope.md +15 -3
- package/skills/synap-schema/extend-first.md +29 -0
- package/skills/synap-schema/extend-vs-create.md +1 -1
- package/skills/synap-schema/intent-vocabulary-ssot.md +111 -0
- package/skills/synap-schema/property-types.md +1 -1
- package/skills/synap-schema/relations.md +1 -1
- package/skills/synap-ui/SKILL.md +19 -12
- package/skills/synap-ui/_skill.yaml +1 -1
- package/skills/synap-ui/ai-companion.md +1 -1
- package/skills/synap-ui/arranging-bento.md +2 -0
- package/skills/synap-ui/bento-layouts.md +10 -10
- package/skills/synap-ui/bento-recipes.md +313 -543
- package/skills/synap-ui/four-builds.md +5 -0
- package/skills/synap-ui/view-types.md +2 -2
- package/skills/synap-ui/widget-catalog.md +22 -278
- package/templates/automations/bookmark-enrichment.automation.json +290 -13
- package/templates/automations/url-bookmark-capture.automation.json +73 -11
- package/templates/skills/authoring-playbooks/SKILL.md +6 -3
- package/templates/skills/authoring-playbooks/reference/stages-contract.md +15 -0
- package/templates/skills/authoring-playbooks/reference/worked-example.md +3 -0
- package/dist/commands/infra.d.ts +0 -21
- package/dist/commands/infra.js +0 -262
- package/dist/commands/infra.js.map +0 -1
- package/dist/lib/browser-auth.d.ts +0 -35
- package/dist/lib/browser-auth.js +0 -170
- package/dist/lib/browser-auth.js.map +0 -1
- package/dist/lib/openclaw.d.ts +0 -32
- package/dist/lib/openclaw.js +0 -164
- package/dist/lib/openclaw.js.map +0 -1
- package/dist/lib/seed.d.ts +0 -13
- package/dist/lib/seed.js +0 -135
- package/dist/lib/seed.js.map +0 -1
|
@@ -5,11 +5,72 @@
|
|
|
5
5
|
* feed: GET /runs?flowType=&flowId=&limit=
|
|
6
6
|
* detail: GET /runs/:id?flowType=
|
|
7
7
|
*
|
|
8
|
-
* No args → the recent run feed across
|
|
9
|
-
* With a run id → that run's
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* No args → the recent run feed across every ledger.
|
|
9
|
+
* With a run id OR a flow name → that run's per-NODE story: each node's status,
|
|
10
|
+
* timing, error, resolved inputs and output (an automation run), or the capture
|
|
11
|
+
* decision + trace events with their actionable fixHint. The flowType the detail
|
|
12
|
+
* door needs is READ off the feed, never guessed. `--json` prints the raw payload.
|
|
12
13
|
*/
|
|
14
|
+
/**
|
|
15
|
+
* The ledgers `GET /runs` merges. MUST stay in sync with the pod's
|
|
16
|
+
* `FlowTypeSchema` (synap-backend `routers/hub-protocol/rest/runs.ts`) — this
|
|
17
|
+
* list was missing `capability` and `chat`, so the feed listed ids the detail
|
|
18
|
+
* door was never asked about.
|
|
19
|
+
*/
|
|
20
|
+
type FlowType = "automation" | "playbook" | "capture" | "capability" | "session" | "chat";
|
|
21
|
+
interface UnifiedRun {
|
|
22
|
+
id: string;
|
|
23
|
+
flowType: FlowType;
|
|
24
|
+
flowName: string;
|
|
25
|
+
status: string;
|
|
26
|
+
startedAt: string;
|
|
27
|
+
completedAt: string | null;
|
|
28
|
+
summary: string | null;
|
|
29
|
+
error: string | null;
|
|
30
|
+
channelId: string | null;
|
|
31
|
+
}
|
|
32
|
+
interface RunActivityItem {
|
|
33
|
+
id: string;
|
|
34
|
+
at: string | null;
|
|
35
|
+
kind: string;
|
|
36
|
+
status: string | null;
|
|
37
|
+
label: string;
|
|
38
|
+
hint: string | null;
|
|
39
|
+
/**
|
|
40
|
+
* Per-node execution payload. For an automation step the pod sends
|
|
41
|
+
* `{ nodeId, nodeLabel, nodeType, commandId, errorMessage, startedAt,
|
|
42
|
+
* completedAt, resolvedInputs, output }` — the actual "what happened in this
|
|
43
|
+
* node" the whole command exists for. Other ledgers send their own shape or
|
|
44
|
+
* nothing, so it is read defensively.
|
|
45
|
+
*/
|
|
46
|
+
detail?: Record<string, unknown> | null;
|
|
47
|
+
}
|
|
48
|
+
export type RunLookup = {
|
|
49
|
+
kind: "match";
|
|
50
|
+
run: UnifiedRun;
|
|
51
|
+
} | {
|
|
52
|
+
kind: "ambiguous";
|
|
53
|
+
candidates: UnifiedRun[];
|
|
54
|
+
} | {
|
|
55
|
+
kind: "none";
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Resolve a user-typed argument against the run feed.
|
|
59
|
+
*
|
|
60
|
+
* The feed is the ONE listing door and it already carries each run's `flowType`,
|
|
61
|
+
* so the id space a run belongs to is READ, never guessed. `arg` may be a run id
|
|
62
|
+
* or a flow name — exact name, then unambiguous prefix, then substring. Several
|
|
63
|
+
* runs of the SAME flow collapse to the newest (the feed is newest-first); several
|
|
64
|
+
* DISTINCT flows stay ambiguous so the caller can list them instead of guessing.
|
|
65
|
+
*/
|
|
66
|
+
export declare function resolveRunTarget(runs: UnifiedRun[], arg: string): RunLookup;
|
|
67
|
+
/**
|
|
68
|
+
* One node of the run. This is where failures actually live — a failed step, an
|
|
69
|
+
* empty `ai.generate` return, an unresolved template reference — so the node's
|
|
70
|
+
* status, timing, error, resolved inputs and output all print here rather than
|
|
71
|
+
* only in `--json`.
|
|
72
|
+
*/
|
|
73
|
+
export declare function renderNode(a: RunActivityItem): void;
|
|
13
74
|
export declare function diagnose(runId: string | undefined, opts: {
|
|
14
75
|
flow?: string;
|
|
15
76
|
flowId?: string;
|
|
@@ -18,3 +79,4 @@ export declare function diagnose(runId: string | undefined, opts: {
|
|
|
18
79
|
podUrl?: string;
|
|
19
80
|
apiKey?: string;
|
|
20
81
|
}): Promise<void>;
|
|
82
|
+
export {};
|
|
@@ -5,15 +5,23 @@
|
|
|
5
5
|
* feed: GET /runs?flowType=&flowId=&limit=
|
|
6
6
|
* detail: GET /runs/:id?flowType=
|
|
7
7
|
*
|
|
8
|
-
* No args → the recent run feed across
|
|
9
|
-
* With a run id → that run's
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* No args → the recent run feed across every ledger.
|
|
9
|
+
* With a run id OR a flow name → that run's per-NODE story: each node's status,
|
|
10
|
+
* timing, error, resolved inputs and output (an automation run), or the capture
|
|
11
|
+
* decision + trace events with their actionable fixHint. The flowType the detail
|
|
12
|
+
* door needs is READ off the feed, never guessed. `--json` prints the raw payload.
|
|
12
13
|
*/
|
|
13
14
|
import chalk from "chalk";
|
|
14
15
|
import { log } from "../utils/logger.js";
|
|
15
|
-
import { resolveHubConfig, hubGet, renderHubError } from "../lib/hub-client.js";
|
|
16
|
-
const FLOW_TYPES = [
|
|
16
|
+
import { resolveHubConfig, hubGet, renderHubError, HubError, } from "../lib/hub-client.js";
|
|
17
|
+
const FLOW_TYPES = [
|
|
18
|
+
"automation",
|
|
19
|
+
"playbook",
|
|
20
|
+
"capture",
|
|
21
|
+
"capability",
|
|
22
|
+
"session",
|
|
23
|
+
"chat",
|
|
24
|
+
];
|
|
17
25
|
/** Colour a status token by lifecycle. */
|
|
18
26
|
function statusColor(status) {
|
|
19
27
|
switch (status) {
|
|
@@ -40,32 +48,248 @@ function renderFeed(runs) {
|
|
|
40
48
|
if (r.summary)
|
|
41
49
|
console.log(` ${chalk.dim(r.summary)}`);
|
|
42
50
|
}
|
|
43
|
-
log.dim(`\nDiagnose one: synap diagnose <id
|
|
51
|
+
log.dim(`\nDiagnose one: synap diagnose <id|name>`);
|
|
44
52
|
}
|
|
45
|
-
|
|
53
|
+
// ── Run lookup: id OR name (no flowType guessing) ────────────────────────────
|
|
54
|
+
const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
55
|
+
function looksLikeId(arg) {
|
|
56
|
+
return UUID_RE.test(arg.trim());
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Resolve a user-typed argument against the run feed.
|
|
60
|
+
*
|
|
61
|
+
* The feed is the ONE listing door and it already carries each run's `flowType`,
|
|
62
|
+
* so the id space a run belongs to is READ, never guessed. `arg` may be a run id
|
|
63
|
+
* or a flow name — exact name, then unambiguous prefix, then substring. Several
|
|
64
|
+
* runs of the SAME flow collapse to the newest (the feed is newest-first); several
|
|
65
|
+
* DISTINCT flows stay ambiguous so the caller can list them instead of guessing.
|
|
66
|
+
*/
|
|
67
|
+
export function resolveRunTarget(runs, arg) {
|
|
68
|
+
const raw = arg.trim();
|
|
69
|
+
const byId = runs.find((r) => r.id === raw);
|
|
70
|
+
if (byId)
|
|
71
|
+
return { kind: "match", run: byId };
|
|
72
|
+
const q = raw.toLowerCase();
|
|
73
|
+
if (!q)
|
|
74
|
+
return { kind: "none" };
|
|
75
|
+
const name = (r) => (r.flowName ?? "").toLowerCase();
|
|
76
|
+
const exact = runs.filter((r) => name(r) === q);
|
|
77
|
+
const prefix = runs.filter((r) => name(r).startsWith(q));
|
|
78
|
+
const substr = runs.filter((r) => name(r).includes(q));
|
|
79
|
+
const pool = exact.length ? exact : prefix.length ? prefix : substr;
|
|
80
|
+
if (pool.length === 0)
|
|
81
|
+
return { kind: "none" };
|
|
82
|
+
// Group by the FLOW (type + name) — many runs of one automation is not
|
|
83
|
+
// ambiguity, two different automations is.
|
|
84
|
+
const groups = new Map();
|
|
85
|
+
for (const r of pool) {
|
|
86
|
+
const key = `${r.flowType}:${name(r)}`;
|
|
87
|
+
const g = groups.get(key);
|
|
88
|
+
if (g)
|
|
89
|
+
g.push(r);
|
|
90
|
+
else
|
|
91
|
+
groups.set(key, [r]);
|
|
92
|
+
}
|
|
93
|
+
if (groups.size === 1)
|
|
94
|
+
return { kind: "match", run: pool[0] };
|
|
95
|
+
return {
|
|
96
|
+
kind: "ambiguous",
|
|
97
|
+
candidates: [...groups.values()].map((g) => g[0]),
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Last-resort id lookup when the run is older than the feed window (or lives in
|
|
102
|
+
* a ledger the merged feed omits — a completed `chat` turn). Walks the SAME
|
|
103
|
+
* detail door once per flow type; a 404 just means "not this id space".
|
|
104
|
+
*/
|
|
105
|
+
async function probeFlowTypes(id, cfg, hint) {
|
|
106
|
+
const order = hint
|
|
107
|
+
? [hint, ...FLOW_TYPES.filter((f) => f !== hint)]
|
|
108
|
+
: FLOW_TYPES;
|
|
109
|
+
for (const flowType of order) {
|
|
110
|
+
try {
|
|
111
|
+
const detail = (await hubGet(`/runs/${id}`, { flowType }, cfg));
|
|
112
|
+
if (detail?.run)
|
|
113
|
+
return { detail, flowType };
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
if (err instanceof HubError && err.status === 404)
|
|
117
|
+
continue;
|
|
118
|
+
throw err;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
// ── Detail rendering ─────────────────────────────────────────────────────────
|
|
124
|
+
/** A JSON value, one line, capped so a large payload never floods the terminal. */
|
|
125
|
+
function preview(value, cap = 400) {
|
|
126
|
+
if (value === null || value === undefined)
|
|
127
|
+
return null;
|
|
128
|
+
if (typeof value === "object" && Object.keys(value).length === 0)
|
|
129
|
+
return null;
|
|
130
|
+
let json;
|
|
131
|
+
try {
|
|
132
|
+
json = JSON.stringify(value);
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
if (!json || json === "{}" || json === "[]")
|
|
138
|
+
return null;
|
|
139
|
+
return json.length > cap ? `${json.slice(0, cap)}… (--json for all)` : json;
|
|
140
|
+
}
|
|
141
|
+
function str(o, k) {
|
|
142
|
+
const v = o[k];
|
|
143
|
+
return typeof v === "string" && v ? v : null;
|
|
144
|
+
}
|
|
145
|
+
/** Human duration from a step's own start/end stamps. */
|
|
146
|
+
function duration(o) {
|
|
147
|
+
const a = str(o, "startedAt");
|
|
148
|
+
const b = str(o, "completedAt");
|
|
149
|
+
if (!a || !b)
|
|
150
|
+
return null;
|
|
151
|
+
const ms = Date.parse(b) - Date.parse(a);
|
|
152
|
+
if (!Number.isFinite(ms) || ms < 0)
|
|
153
|
+
return null;
|
|
154
|
+
return ms >= 1000 ? `${(ms / 1000).toFixed(1)}s` : `${ms}ms`;
|
|
155
|
+
}
|
|
156
|
+
function num(o, k) {
|
|
157
|
+
const v = o[k];
|
|
158
|
+
return typeof v === "number" && Number.isFinite(v) ? v : null;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* The AI telemetry suffix for a node line — the whole reason this command
|
|
162
|
+
* exists in its current form.
|
|
163
|
+
*
|
|
164
|
+
* On 2026-08-03 an `ai.generate` step ran 24.5s, returned `""`, and reported
|
|
165
|
+
* `completed`. `diagnose` printed `out (empty)` and could say nothing more, so
|
|
166
|
+
* finding out WHY meant SSH-ing to the IS container and grepping unstructured
|
|
167
|
+
* logs by wall-clock timestamp. `finishReason` is the field that answers it, and
|
|
168
|
+
* the token pair says whether the prompt was even read.
|
|
169
|
+
*
|
|
170
|
+
* Renders as: `finish=length · tokens 4210→0`. Emits nothing when the step made
|
|
171
|
+
* no IS generation, when the run predates migration 0224, or against an IS build
|
|
172
|
+
* that predates the seam telemetry change — never a fabricated 0.
|
|
173
|
+
*
|
|
174
|
+
* Any finish reason other than `stop` is the FINDING, so it prints yellow.
|
|
175
|
+
*/
|
|
176
|
+
function aiTelemetry(d) {
|
|
177
|
+
const finish = str(d, "finishReason");
|
|
178
|
+
const tin = num(d, "tokensIn");
|
|
179
|
+
const tout = num(d, "tokensOut");
|
|
180
|
+
const bits = [];
|
|
181
|
+
if (finish)
|
|
182
|
+
bits.push(finish === "stop"
|
|
183
|
+
? chalk.dim(`finish=${finish}`)
|
|
184
|
+
: chalk.yellow(`finish=${finish}`));
|
|
185
|
+
if (tin !== null || tout !== null)
|
|
186
|
+
bits.push(chalk.dim(`tokens ${tin ?? "?"}→${tout ?? "?"}`));
|
|
187
|
+
return bits.length > 0 ? bits.join(chalk.dim(" · ")) : null;
|
|
188
|
+
}
|
|
189
|
+
function stepStatus(status) {
|
|
190
|
+
switch (status) {
|
|
191
|
+
case "completed":
|
|
192
|
+
return chalk.green("✓ completed");
|
|
193
|
+
case "failed":
|
|
194
|
+
return chalk.red("✗ failed");
|
|
195
|
+
case "running":
|
|
196
|
+
return chalk.yellow("· running");
|
|
197
|
+
case "skipped":
|
|
198
|
+
return chalk.dim("– skipped");
|
|
199
|
+
default:
|
|
200
|
+
return chalk.dim(status ?? "?");
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* One node of the run. This is where failures actually live — a failed step, an
|
|
205
|
+
* empty `ai.generate` return, an unresolved template reference — so the node's
|
|
206
|
+
* status, timing, error, resolved inputs and output all print here rather than
|
|
207
|
+
* only in `--json`.
|
|
208
|
+
*/
|
|
209
|
+
export function renderNode(a) {
|
|
210
|
+
const when = a.at ? chalk.dim(a.at.slice(11, 19)) : chalk.dim("··:··:··");
|
|
211
|
+
const d = (a.detail ?? {});
|
|
212
|
+
const isStep = a.kind === "step";
|
|
213
|
+
// AI decision/trace rows carry the WHY — highlight them (emerald = AI accent).
|
|
214
|
+
const kindTag = a.kind === "capture_trace" || a.kind === "ai_decision"
|
|
215
|
+
? chalk.green(a.kind)
|
|
216
|
+
: chalk.dim(a.kind);
|
|
217
|
+
const head = isStep ? stepStatus(a.status) : kindTag;
|
|
218
|
+
const dur = duration(d);
|
|
219
|
+
console.log(` ${when} ${head} ${chalk.bold(a.label)}${dur ? chalk.dim(` ${dur}`) : ""}`);
|
|
220
|
+
const nodeId = str(d, "nodeId");
|
|
221
|
+
const nodeType = str(d, "nodeType");
|
|
222
|
+
const commandId = str(d, "commandId");
|
|
223
|
+
if (nodeId || nodeType || commandId) {
|
|
224
|
+
const bits = [
|
|
225
|
+
nodeId ? `node ${nodeId}` : null,
|
|
226
|
+
nodeType,
|
|
227
|
+
commandId ? `command ${commandId}` : null,
|
|
228
|
+
].filter(Boolean);
|
|
229
|
+
console.log(` ${chalk.dim(bits.join(" · "))}`);
|
|
230
|
+
}
|
|
231
|
+
const err = str(d, "errorMessage");
|
|
232
|
+
if (err)
|
|
233
|
+
console.log(` ${chalk.red("error")} ${err}`);
|
|
234
|
+
// `hint` duplicates errorMessage for automation steps — don't print it twice.
|
|
235
|
+
if (a.hint && a.hint !== err)
|
|
236
|
+
console.log(` ${chalk.green("→ " + a.hint)}`);
|
|
237
|
+
const inputs = preview(d.resolvedInputs);
|
|
238
|
+
if (inputs)
|
|
239
|
+
console.log(` ${chalk.dim("in ")} ${inputs}`);
|
|
240
|
+
// AI telemetry rides the SAME line as the output, so an empty generation reads
|
|
241
|
+
// as one sentence: `out (empty) · finish=length · tokens 4210→0`.
|
|
242
|
+
const ai = aiTelemetry(d);
|
|
243
|
+
const aiSuffix = ai ? `${chalk.dim(" · ")}${ai}` : "";
|
|
244
|
+
// An `ai.generate` that produced nothing returns the EMPTY STRING, which
|
|
245
|
+
// `preview` faithfully renders as the two characters `""` — technically
|
|
246
|
+
// honest, but it read as a value rather than as the finding it is. Route it
|
|
247
|
+
// to the `(empty)` branch alongside `{}`/`[]`/null. Deliberately checked HERE
|
|
248
|
+
// and not inside `preview`, which also renders the `in` line where a literal
|
|
249
|
+
// `""` input is a legitimate value worth showing.
|
|
250
|
+
const rawOut = d.output;
|
|
251
|
+
const outputIsEmpty = rawOut === null ||
|
|
252
|
+
rawOut === undefined ||
|
|
253
|
+
(typeof rawOut === "string" && rawOut.trim() === "");
|
|
254
|
+
const output = outputIsEmpty ? null : preview(rawOut);
|
|
255
|
+
if (output)
|
|
256
|
+
console.log(` ${chalk.dim("out")} ${output}${aiSuffix}`);
|
|
257
|
+
else if (isStep && "output" in d)
|
|
258
|
+
// An empty return is a real finding, not a blank line. Shown on a FAILED
|
|
259
|
+
// step too — an empty generation now fails the step (see generateViaIS), and
|
|
260
|
+
// that is exactly the row an operator is reading.
|
|
261
|
+
console.log(` ${chalk.dim("out")} ${chalk.yellow("(empty)")}${aiSuffix}`);
|
|
262
|
+
else if (ai)
|
|
263
|
+
// A FAILED AI step has no output at all — but its finish reason is exactly
|
|
264
|
+
// what the operator came for, so it still prints.
|
|
265
|
+
console.log(` ${chalk.dim("ai ")} ${ai}`);
|
|
266
|
+
}
|
|
267
|
+
function renderDetail(detail) {
|
|
268
|
+
const { run, activity } = detail;
|
|
46
269
|
log.heading(`${run.flowType} run — ${run.flowName}`);
|
|
47
270
|
console.log(` status ${statusColor(run.status)}`);
|
|
271
|
+
console.log(` id ${chalk.dim(run.id)}`);
|
|
48
272
|
if (run.summary)
|
|
49
273
|
log.info(run.summary);
|
|
50
274
|
if (run.error)
|
|
51
275
|
console.log(` ${chalk.red("error")} ${run.error}`);
|
|
52
276
|
if (run.channelId)
|
|
53
277
|
log.dim(` channel ${run.channelId} (open it for the full message story)`);
|
|
54
|
-
|
|
278
|
+
const trigger = preview(detail.trigger?.payload, 200);
|
|
279
|
+
if (trigger)
|
|
280
|
+
console.log(` trigger ${chalk.dim(trigger)}`);
|
|
281
|
+
log.heading("Nodes");
|
|
55
282
|
if (activity.length === 0) {
|
|
56
283
|
log.dim("(no recorded activity — the story may live in the run's channel)");
|
|
57
|
-
return;
|
|
58
284
|
}
|
|
59
|
-
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
console.log(` ${
|
|
67
|
-
if (a.hint)
|
|
68
|
-
console.log(` ${chalk.green("→ " + a.hint)}`);
|
|
285
|
+
else {
|
|
286
|
+
for (const a of activity)
|
|
287
|
+
renderNode(a);
|
|
288
|
+
}
|
|
289
|
+
const out = preview(detail.outputSummary, 600);
|
|
290
|
+
if (out) {
|
|
291
|
+
log.heading("Output");
|
|
292
|
+
console.log(` ${chalk.dim(out)}`);
|
|
69
293
|
}
|
|
70
294
|
}
|
|
71
295
|
/**
|
|
@@ -97,6 +321,47 @@ async function renderConnectors(cfg) {
|
|
|
97
321
|
const connected = providers.filter((p) => p.connected).length;
|
|
98
322
|
console.log(` ${chalk.green("ok")} ${providers.length} provider${providers.length === 1 ? "" : "s"} declared ${chalk.dim(`${connected} connected`)}`);
|
|
99
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* Template behaviour-drift: an installed workspace whose stamped
|
|
326
|
+
* `settings.packageVersion` no longer matches the version its template resolves
|
|
327
|
+
* to today is running STALE behaviour (old views/automations/capabilities). This
|
|
328
|
+
* is the exact "why did the AI behave differently" question `diagnose` exists
|
|
329
|
+
* for, and it produces no run event. REUSES `market`'s ONE drift comparator
|
|
330
|
+
* (`computeUpdates` over `buildMarketCatalog` + `fetchInstalledTemplates`) — no
|
|
331
|
+
* second comparator. Non-fatal: a pod that can't be reached simply omits it.
|
|
332
|
+
*/
|
|
333
|
+
async function renderDrift() {
|
|
334
|
+
const { buildMarketCatalog, computeUpdates } = await import("./market.js");
|
|
335
|
+
const { fetchInstalledTemplates } = await import("../lib/installed.js");
|
|
336
|
+
log.heading("Template drift");
|
|
337
|
+
let checks;
|
|
338
|
+
try {
|
|
339
|
+
const [cat, installed] = await Promise.all([
|
|
340
|
+
buildMarketCatalog(),
|
|
341
|
+
fetchInstalledTemplates(),
|
|
342
|
+
]);
|
|
343
|
+
checks = computeUpdates(installed, cat);
|
|
344
|
+
}
|
|
345
|
+
catch {
|
|
346
|
+
log.dim("(couldn't read installed templates — skipped)");
|
|
347
|
+
return;
|
|
348
|
+
}
|
|
349
|
+
const drifted = checks.filter((c) => c.updateAvailable);
|
|
350
|
+
const unknown = checks.filter((c) => c.noVersionInfo);
|
|
351
|
+
if (drifted.length === 0) {
|
|
352
|
+
console.log(` ${chalk.green("ok")} no behaviour-drift across ${checks.length} installed template${checks.length === 1 ? "" : "s"}`);
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
console.log(` ${chalk.yellow("drift")} ${drifted.length} workspace${drifted.length === 1 ? "" : "s"} on a stale template version`);
|
|
356
|
+
for (const c of drifted) {
|
|
357
|
+
console.log(` ${chalk.bold(c.slug)} ${chalk.dim(c.installedVersion || "?")} → ${chalk.dim(c.latestVersion || "?")}`);
|
|
358
|
+
}
|
|
359
|
+
log.dim("Re-apply the current behaviour: synap market update");
|
|
360
|
+
}
|
|
361
|
+
if (unknown.length > 0) {
|
|
362
|
+
log.dim(`${unknown.length} installed template${unknown.length === 1 ? "" : "s"} carry no version stamp — drift can't be checked.`);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
100
365
|
export async function diagnose(runId, opts) {
|
|
101
366
|
const cfg = await resolveHubConfig(opts);
|
|
102
367
|
const flow = opts.flow;
|
|
@@ -104,21 +369,54 @@ export async function diagnose(runId, opts) {
|
|
|
104
369
|
log.error(`--flow must be one of: ${FLOW_TYPES.join(", ")}`);
|
|
105
370
|
process.exit(1);
|
|
106
371
|
}
|
|
107
|
-
// ── Detail: a specific run's
|
|
372
|
+
// ── Detail: a specific run's nodes ─────────────────────────────────────────
|
|
373
|
+
// The id space differs per ledger, so the detail door needs a flowType. It is
|
|
374
|
+
// READ off the feed (the one listing door, which already carries it) or probed
|
|
375
|
+
// — NEVER defaulted, which is what made every non-capture id 404.
|
|
108
376
|
if (runId) {
|
|
109
|
-
|
|
110
|
-
//
|
|
111
|
-
|
|
112
|
-
const
|
|
377
|
+
let detail = null;
|
|
378
|
+
// Resolve id-or-name against the feed first: one call, and it is also what
|
|
379
|
+
// makes `synap diagnose "Generate report"` work.
|
|
380
|
+
const feedQuery = { limit: "100" };
|
|
381
|
+
if (flow)
|
|
382
|
+
feedQuery.flowType = flow;
|
|
383
|
+
let lookup = { kind: "none" };
|
|
384
|
+
try {
|
|
385
|
+
const feed = (await hubGet("/runs", feedQuery, cfg));
|
|
386
|
+
lookup = resolveRunTarget(feed.runs ?? [], runId);
|
|
387
|
+
}
|
|
388
|
+
catch (err) {
|
|
389
|
+
// A feed failure must not hide a perfectly good id — fall through to probe.
|
|
390
|
+
if (!looksLikeId(runId))
|
|
391
|
+
throw err;
|
|
392
|
+
}
|
|
393
|
+
if (lookup.kind === "ambiguous") {
|
|
394
|
+
log.error(`'${runId}' matches several flows — pick one:`);
|
|
395
|
+
for (const c of lookup.candidates) {
|
|
396
|
+
console.log(` ${chalk.cyan(c.flowType)} ${chalk.bold(c.flowName)} ${chalk.dim(c.id)}`);
|
|
397
|
+
}
|
|
398
|
+
process.exit(1);
|
|
399
|
+
}
|
|
400
|
+
if (lookup.kind === "match") {
|
|
401
|
+
const run = lookup.run;
|
|
402
|
+
detail = (await hubGet(`/runs/${run.id}`, { flowType: run.flowType }, cfg));
|
|
403
|
+
}
|
|
404
|
+
else if (looksLikeId(runId)) {
|
|
405
|
+
// Older than the feed window, or a ledger the merged feed omits.
|
|
406
|
+
const probed = await probeFlowTypes(runId, cfg, flow);
|
|
407
|
+
detail = probed?.detail ?? null;
|
|
408
|
+
}
|
|
113
409
|
if (opts.json) {
|
|
114
410
|
console.log(JSON.stringify(detail, null, 2));
|
|
115
411
|
return;
|
|
116
412
|
}
|
|
117
|
-
if (!detail) {
|
|
118
|
-
log.error(
|
|
413
|
+
if (!detail?.run) {
|
|
414
|
+
log.error(looksLikeId(runId)
|
|
415
|
+
? `No run with id '${runId}' in any flow (${FLOW_TYPES.join(", ")}).`
|
|
416
|
+
: `No run matching '${runId}'. Run \`synap diagnose\` to see the feed.`);
|
|
119
417
|
process.exit(1);
|
|
120
418
|
}
|
|
121
|
-
renderDetail(detail
|
|
419
|
+
renderDetail(detail);
|
|
122
420
|
return;
|
|
123
421
|
}
|
|
124
422
|
// ── Feed: recent runs across flows ─────────────────────────────────────────
|
|
@@ -137,7 +435,9 @@ export async function diagnose(runId, opts) {
|
|
|
137
435
|
log.heading(flow ? `${flow} runs` : "Recent runs");
|
|
138
436
|
renderFeed(res.runs ?? []);
|
|
139
437
|
// Only on the unfiltered feed: a `--flow`-scoped view asked for that flow.
|
|
140
|
-
if (!flow)
|
|
438
|
+
if (!flow) {
|
|
141
439
|
await renderConnectors(cfg);
|
|
440
|
+
await renderDrift();
|
|
441
|
+
}
|
|
142
442
|
}
|
|
143
443
|
//# sourceMappingURL=diagnose.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.js","sourceRoot":"","sources":["../../src/commands/diagnose.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diagnose.js","sourceRoot":"","sources":["../../src/commands/diagnose.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/digest.js
CHANGED
|
@@ -59,7 +59,8 @@ function renderKeyEntities(entities) {
|
|
|
59
59
|
}
|
|
60
60
|
for (const e of entities) {
|
|
61
61
|
const when = e.updatedAt ? chalk.dim(` ${e.updatedAt.slice(0, 10)}`) : "";
|
|
62
|
-
|
|
62
|
+
// Full id — feeds straight into `synap get entity <id>`.
|
|
63
|
+
console.log(` ${chalk.bold(e.title || "(untitled)")} ${chalk.dim(`[${e.profileSlug}]`)} ${chalk.dim(e.id)}${when}`);
|
|
63
64
|
}
|
|
64
65
|
}
|
|
65
66
|
export async function digest(opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/commands/digest.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/commands/digest.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/doc.d.ts
CHANGED
|
@@ -8,13 +8,15 @@
|
|
|
8
8
|
* synap doc create --title "My Doc" --file ./notes.md [--open]
|
|
9
9
|
* echo "# Hello" | synap doc create --title "My Doc"
|
|
10
10
|
*
|
|
11
|
-
* synap doc update <id> --content "new body"
|
|
11
|
+
* synap doc update <id> --content "new body"
|
|
12
12
|
* synap doc update <id> --file ./notes.md
|
|
13
13
|
* echo "updated" | synap doc update <id>
|
|
14
|
+
* synap doc update <id> --section risks --section-title "Risks" --file ./risks.md
|
|
14
15
|
*
|
|
15
16
|
* API:
|
|
16
|
-
* POST /api/hub/documents
|
|
17
|
-
* PATCH /api/hub/documents/:id
|
|
17
|
+
* POST /api/hub/documents — { userId, workspaceId?, title, content?, type? }
|
|
18
|
+
* PATCH /api/hub/documents/:id — { userId, content, baseRevision? } (full replace)
|
|
19
|
+
* POST /api/hub/documents/:id/patch — { userId, ops, baseRevision? } (--section: one upsert_section op)
|
|
18
20
|
*/
|
|
19
21
|
export interface DocCreateOpts {
|
|
20
22
|
title: string;
|
|
@@ -29,11 +31,30 @@ export interface DocCreateOpts {
|
|
|
29
31
|
export interface DocUpdateOpts {
|
|
30
32
|
content?: string;
|
|
31
33
|
file?: string;
|
|
32
|
-
|
|
34
|
+
/** Write ONE section (by id) instead of replacing the whole body. */
|
|
35
|
+
section?: string;
|
|
36
|
+
/** The section's heading (required with --section). */
|
|
37
|
+
sectionTitle?: string;
|
|
38
|
+
/** The revision you read; the edit is refused if the document moved. */
|
|
39
|
+
baseRevision?: string;
|
|
40
|
+
open?: boolean;
|
|
41
|
+
json?: boolean;
|
|
42
|
+
podUrl?: string;
|
|
43
|
+
apiKey?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface DocReferenceOpts {
|
|
46
|
+
title: string;
|
|
47
|
+
workspace?: string;
|
|
33
48
|
open?: boolean;
|
|
34
49
|
json?: boolean;
|
|
35
50
|
podUrl?: string;
|
|
36
51
|
apiKey?: string;
|
|
37
52
|
}
|
|
38
53
|
export declare function docCreate(opts: DocCreateOpts): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* synap doc reference <url> — create an external reference document (no bytes).
|
|
56
|
+
* Reuses the same POST /api/hub/documents door as `doc create`, sending a `url`
|
|
57
|
+
* field instead of `content`.
|
|
58
|
+
*/
|
|
59
|
+
export declare function docReference(url: string, opts: DocReferenceOpts): Promise<void>;
|
|
39
60
|
export declare function docUpdate(documentId: string, opts: DocUpdateOpts): Promise<void>;
|