@synap-core/cli 1.11.0 → 1.13.0
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/LICENSE +21 -0
- package/README.md +40 -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 +32 -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 +524 -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 +116 -66
- package/dist/commands/automation.js.map +1 -1
- package/dist/commands/box.d.ts +42 -0
- package/dist/commands/box.js +89 -0
- package/dist/commands/box.js.map +1 -0
- package/dist/commands/bridge-setup.d.ts +14 -1
- package/dist/commands/bridge-setup.js +395 -129
- 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 +3 -1
- package/dist/commands/capability.js +249 -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 +1 -13
- package/dist/commands/centrality.js.map +1 -1
- package/dist/commands/close-questions.d.ts +27 -0
- package/dist/commands/close-questions.js +49 -0
- package/dist/commands/close-questions.js.map +1 -0
- package/dist/commands/close-questions.test.d.ts +1 -0
- package/dist/commands/close-questions.test.js +52 -0
- package/dist/commands/close-questions.test.js.map +1 -0
- package/dist/commands/connect.d.ts +36 -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 +79 -44
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.d.ts +34 -0
- package/dist/commands/data-extra.js +203 -25
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/data.d.ts +120 -2
- package/dist/commands/data.js +295 -21
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/diagnose.d.ts +66 -4
- package/dist/commands/diagnose.js +285 -28
- package/dist/commands/diagnose.js.map +1 -1
- package/dist/commands/doc.d.ts +11 -4
- package/dist/commands/doc.js +39 -14
- package/dist/commands/doc.js.map +1 -1
- package/dist/commands/doctor.d.ts +133 -3
- package/dist/commands/doctor.js +761 -41
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/explain.js +5 -5
- package/dist/commands/explain.js.map +1 -1
- package/dist/commands/hooks.d.ts +19 -0
- package/dist/commands/hooks.js +70 -0
- package/dist/commands/hooks.js.map +1 -0
- package/dist/commands/import.d.ts +393 -13
- package/dist/commands/import.js +1150 -54
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts +34 -9
- package/dist/commands/init.js +481 -981
- 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 +22 -6
- package/dist/commands/knowledge.js +121 -57
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/lens.d.ts +37 -1
- package/dist/commands/lens.js +194 -72
- package/dist/commands/lens.js.map +1 -1
- package/dist/commands/market-authoring.d.ts +29 -2
- package/dist/commands/market-authoring.js +348 -7
- package/dist/commands/market-authoring.js.map +1 -1
- 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 +400 -16
- package/dist/commands/market.js +1802 -146
- package/dist/commands/market.js.map +1 -1
- package/dist/commands/mcp.d.ts +60 -25
- package/dist/commands/mcp.js +251 -64
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/observe.category.test.d.ts +1 -0
- package/dist/commands/observe.category.test.js +59 -0
- package/dist/commands/observe.category.test.js.map +1 -0
- package/dist/commands/observe.d.ts +3 -0
- package/dist/commands/observe.js +7 -5
- package/dist/commands/observe.js.map +1 -1
- package/dist/commands/observe.title.test.d.ts +1 -0
- package/dist/commands/observe.title.test.js +37 -0
- package/dist/commands/observe.title.test.js.map +1 -0
- 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 +171 -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 +11 -1
- package/dist/commands/pods.js +129 -131
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proposals-actions.d.ts +62 -0
- package/dist/commands/proposals-actions.js +143 -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 +579 -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-feed-wait.d.ts +48 -0
- package/dist/commands/session-feed-wait.js +261 -0
- package/dist/commands/session-feed-wait.js.map +1 -0
- package/dist/commands/session-post.d.ts +40 -0
- package/dist/commands/session-post.js +96 -0
- package/dist/commands/session-post.js.map +1 -0
- package/dist/commands/session-wait.d.ts +116 -0
- package/dist/commands/session-wait.js +224 -0
- package/dist/commands/session-wait.js.map +1 -0
- package/dist/commands/sessions.d.ts +54 -0
- package/dist/commands/sessions.js +501 -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-commands.d.ts +2 -0
- package/dist/commands/skills-commands.js +9 -1
- package/dist/commands/skills-commands.js.map +1 -1
- package/dist/commands/skills-commands.test.d.ts +1 -0
- package/dist/commands/skills-commands.test.js +57 -0
- package/dist/commands/skills-commands.test.js.map +1 -0
- package/dist/commands/skills.js +16 -0
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/status.d.ts +1 -4
- package/dist/commands/status.js +6 -35
- 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 +112 -0
- package/dist/commands/tracks.js +543 -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 +41 -3
- package/dist/commands/upload.js +120 -18
- package/dist/commands/upload.js.map +1 -1
- 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 +30 -3
- package/dist/commands/whoami.js +186 -23
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/worker-accounts.d.ts +149 -0
- package/dist/commands/worker-accounts.js +339 -0
- package/dist/commands/worker-accounts.js.map +1 -0
- package/dist/commands/worker-accounts.test.d.ts +1 -0
- package/dist/commands/worker-accounts.test.js +224 -0
- package/dist/commands/worker-accounts.test.js.map +1 -0
- package/dist/commands/worker.d.ts +331 -0
- package/dist/commands/worker.js +1067 -0
- package/dist/commands/worker.js.map +1 -0
- package/dist/commands/worker.test.d.ts +1 -0
- package/dist/commands/worker.test.js +427 -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 +1043 -186
- 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 +136 -0
- package/dist/lib/agent-door.js +429 -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 +17 -11
- package/dist/lib/auth.js +47 -64
- 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/box/egress.d.ts +82 -0
- package/dist/lib/box/egress.js +264 -0
- package/dist/lib/box/egress.js.map +1 -0
- package/dist/lib/box/evidence.d.ts +86 -0
- package/dist/lib/box/evidence.js +121 -0
- package/dist/lib/box/evidence.js.map +1 -0
- package/dist/lib/box/job-server.d.ts +72 -0
- package/dist/lib/box/job-server.js +246 -0
- package/dist/lib/box/job-server.js.map +1 -0
- package/dist/lib/box/provisioner.d.ts +83 -0
- package/dist/lib/box/provisioner.js +312 -0
- package/dist/lib/box/provisioner.js.map +1 -0
- package/dist/lib/box/proxmox.d.ts +112 -0
- package/dist/lib/box/proxmox.js +211 -0
- package/dist/lib/box/proxmox.js.map +1 -0
- package/dist/lib/box/wire.d.ts +98 -0
- package/dist/lib/box/wire.js +70 -0
- package/dist/lib/box/wire.js.map +1 -0
- package/dist/lib/capture-lane.d.ts +6 -5
- package/dist/lib/capture-lane.js +6 -5
- package/dist/lib/capture-lane.js.map +1 -1
- package/dist/lib/capture-structure.d.ts +230 -11
- package/dist/lib/capture-structure.js +251 -13
- package/dist/lib/capture-structure.js.map +1 -1
- 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/client-header.test.d.ts +1 -0
- package/dist/lib/client-header.test.js +85 -0
- package/dist/lib/client-header.test.js.map +1 -0
- package/dist/lib/conversation-headers.d.ts +33 -0
- package/dist/lib/conversation-headers.js +69 -0
- package/dist/lib/conversation-headers.js.map +1 -0
- package/dist/lib/cp-packages.d.ts +167 -11
- package/dist/lib/cp-packages.js +253 -21
- package/dist/lib/cp-packages.js.map +1 -1
- package/dist/lib/credential-class.d.ts +144 -0
- package/dist/lib/credential-class.js +138 -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/goal-words.d.ts +38 -0
- package/dist/lib/goal-words.js +112 -0
- package/dist/lib/goal-words.js.map +1 -0
- package/dist/lib/hub-client.d.ts +57 -15
- package/dist/lib/hub-client.js +396 -82
- package/dist/lib/hub-client.js.map +1 -1
- 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 +24 -0
- package/dist/lib/init-handoff.js +26 -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 +68 -0
- package/dist/lib/key-source.js +109 -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 +25 -0
- package/dist/lib/knowledge-title.js +47 -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 +49 -0
- package/dist/lib/mcp-bridge.js +180 -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 +118 -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/openclaw.js +3 -2
- package/dist/lib/openclaw.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-moved.d.ts +70 -0
- package/dist/lib/pod-moved.js +146 -0
- package/dist/lib/pod-moved.js.map +1 -0
- package/dist/lib/pod-reach.d.ts +39 -0
- package/dist/lib/pod-reach.js +117 -0
- package/dist/lib/pod-reach.js.map +1 -0
- package/dist/lib/pod-reach.test.d.ts +1 -0
- package/dist/lib/pod-reach.test.js +67 -0
- package/dist/lib/pod-reach.test.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 +74 -112
- package/dist/lib/pod.js +146 -415
- 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/register-claude-code-mcp.test.d.ts +1 -0
- package/dist/lib/register-claude-code-mcp.test.js +78 -0
- package/dist/lib/register-claude-code-mcp.test.js.map +1 -0
- package/dist/lib/review-credential.d.ts +119 -0
- package/dist/lib/review-credential.js +149 -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-feed.d.ts +185 -0
- package/dist/lib/session-feed.js +257 -0
- package/dist/lib/session-feed.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 +152 -10
- package/dist/lib/targets.js +974 -325
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/template-file.d.ts +4 -0
- package/dist/lib/template-file.js.map +1 -1
- 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/lib/wake-hook-settings.d.ts +57 -0
- package/dist/lib/wake-hook-settings.js +153 -0
- package/dist/lib/wake-hook-settings.js.map +1 -0
- package/dist/lib/wake-state.d.ts +65 -0
- package/dist/lib/wake-state.js +122 -0
- package/dist/lib/wake-state.js.map +1 -0
- package/dist/utils/logger.js +5 -2
- package/dist/utils/logger.js.map +1 -1
- package/package.json +26 -17
- package/skills/README.md +13 -11
- package/skills/agent-os/SKILL.md +214 -99
- package/skills/manifest.json +1 -1
- package/skills/onboard/SKILL.md +55 -26
- package/skills/synap/README.md +5 -8
- package/skills/synap/SKILL.md +1149 -289
- 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 +5 -0
- package/skills/synap/cli-operations.md +24 -18
- package/skills/synap/code-skills.md +70 -0
- package/skills/synap/concepts.md +36 -0
- package/skills/synap/content-os.md +10 -1
- package/skills/synap/creative-loop.md +15 -10
- package/skills/synap/crm.md +21 -52
- package/skills/synap/document-embeds.md +143 -47
- package/skills/synap/escalation-ladder.md +20 -10
- package/skills/synap/focus-sessions.md +56 -21
- package/skills/synap/from-intent.md +158 -0
- package/skills/synap/governance-rules.md +5 -5
- 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 +34 -16
- package/skills/synap/linking.md +42 -41
- package/skills/synap/mcp-remote-servers.md +64 -0
- package/skills/synap/mental-model.md +17 -15
- package/skills/synap/operating-mode-rules.md +2 -2
- package/skills/synap/processes.md +118 -0
- package/skills/synap/quick-reference.md +7 -2
- 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 +110 -0
- package/skills/synap/worked-examples.md +4 -5
- package/skills/synap/workspace-design.md +15 -11
- package/skills/synap/writes.md +105 -25
- package/skills/synap/writing-titles.md +63 -0
- package/skills/synap-app/SKILL.md +149 -67
- package/skills/synap-app/_skill.yaml +1 -1
- package/skills/synap-app/creating-the-base-app.md +12 -7
- package/skills/synap-app/governance.md +27 -16
- package/skills/synap-app/install-commands.md +18 -9
- package/skills/synap-app/overview.md +16 -9
- package/skills/synap-app/using-the-sdk.md +75 -25
- 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 +306 -16
- package/skills/synap-market/_skill.yaml +1 -1
- package/skills/synap-market/author-and-publish.md +145 -8
- package/skills/synap-market/governance-and-catalog.md +7 -0
- package/skills/synap-market/install.md +79 -1
- package/skills/synap-market/overview.md +74 -6
- 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/box/runner.py +206 -0
- 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/node_modules/@synap/hub-rest-client/dist/index.cjs +0 -1261
- package/node_modules/@synap/hub-rest-client/dist/index.d.cts +0 -1647
- package/node_modules/@synap/hub-rest-client/dist/index.d.ts +0 -1647
- package/node_modules/@synap/hub-rest-client/dist/index.js +0 -1231
- package/node_modules/@synap/hub-rest-client/package.json +0 -45
- package/node_modules/@synap/hub-rest-client/src/client.ts +0 -1631
- package/node_modules/@synap/hub-rest-client/src/errors.ts +0 -30
- package/node_modules/@synap/hub-rest-client/src/index.ts +0 -153
- package/node_modules/@synap/hub-rest-client/src/setup.ts +0 -133
- package/node_modules/@synap/hub-rest-client/src/types.ts +0 -1299
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* synap connections
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* and which
|
|
4
|
+
* Everything plugged into your pods, in two sections:
|
|
5
|
+
* Agents — which pod each agent client points at, and which profile it matches.
|
|
6
|
+
* Tools — which services (Gmail, GitHub, …) the active pod has connected.
|
|
6
7
|
*
|
|
7
8
|
* synap connections
|
|
8
9
|
*/
|
|
@@ -13,6 +14,7 @@ import os from "node:os";
|
|
|
13
14
|
import { log } from "../utils/logger.js";
|
|
14
15
|
import { listPodProfiles } from "../lib/pod.js";
|
|
15
16
|
import { TARGETS } from "../lib/targets.js";
|
|
17
|
+
import { hubGet, resolveHubConfig } from "../lib/hub-client.js";
|
|
16
18
|
export async function connections() {
|
|
17
19
|
const profiles = listPodProfiles();
|
|
18
20
|
// URL → profile name lookup (normalise trailing slash)
|
|
@@ -25,37 +27,71 @@ export async function connections() {
|
|
|
25
27
|
detectClaudeDesktop(urlToProfile),
|
|
26
28
|
detectCursor(urlToProfile),
|
|
27
29
|
detectRaycast(urlToProfile),
|
|
30
|
+
detectGrok(urlToProfile),
|
|
28
31
|
];
|
|
29
32
|
const configured = surfaces.filter((s) => s.configured);
|
|
30
33
|
const unconfigured = surfaces.filter((s) => !s.configured);
|
|
31
|
-
log.heading("
|
|
32
|
-
if (configured.length === 0
|
|
33
|
-
log.dim("No
|
|
34
|
-
log.blank();
|
|
35
|
-
log.info("Connect a surface: synap connect");
|
|
36
|
-
return;
|
|
34
|
+
log.heading("Agents");
|
|
35
|
+
if (configured.length === 0) {
|
|
36
|
+
log.dim(" No agent connected yet.");
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
38
|
+
else {
|
|
39
|
+
// Widths for alignment
|
|
40
|
+
const labelW = Math.max(...surfaces.map((s) => s.label.length)) + 2;
|
|
41
|
+
const profileW = Math.max(10, ...configured.map((s) => (s.profile ?? "(unknown)").length)) + 2;
|
|
42
|
+
for (const s of configured) {
|
|
43
|
+
const icon = s.profile ? chalk.green("●") : chalk.yellow("●");
|
|
44
|
+
const label = s.label.padEnd(labelW);
|
|
45
|
+
const profileStr = s.profile
|
|
46
|
+
? chalk.bold(s.profile.padEnd(profileW))
|
|
47
|
+
: chalk.yellow("(unknown pod)".padEnd(profileW));
|
|
48
|
+
const url = chalk.dim(s.podUrl ?? "");
|
|
49
|
+
console.log(` ${icon} ${label} ${profileStr} ${url}`);
|
|
50
|
+
}
|
|
51
|
+
for (const s of unconfigured) {
|
|
52
|
+
console.log(` ${chalk.dim("○")} ${chalk.dim(s.label.padEnd(labelW))} ${chalk.dim("not configured")}`);
|
|
53
|
+
}
|
|
52
54
|
}
|
|
55
|
+
if (profiles.length > 0)
|
|
56
|
+
await printTools();
|
|
53
57
|
log.blank();
|
|
54
58
|
if (profiles.length > 1) {
|
|
55
|
-
log.dim("synap pods use <name> — switch ALL
|
|
59
|
+
log.dim("synap pods use <name> — switch ALL agents to a pod");
|
|
60
|
+
}
|
|
61
|
+
log.dim("synap connect — connect an agent or a tool");
|
|
62
|
+
log.dim("synap agents list — every agent on the pod, not only this machine's");
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* The active pod's connected services. A failed read says so — it must never
|
|
66
|
+
* render as "none connected".
|
|
67
|
+
*/
|
|
68
|
+
async function printTools() {
|
|
69
|
+
log.heading("Tools & accounts");
|
|
70
|
+
let res;
|
|
71
|
+
try {
|
|
72
|
+
const cfg = await resolveHubConfig();
|
|
73
|
+
res = (await hubGet("/connectors/providers", {}, cfg));
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
log.warn(` Couldn't check tools: ${err instanceof Error ? err.message : String(err)}`);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (res.nangoStatus === "error") {
|
|
80
|
+
log.warn(` Couldn't check tools (${res.nangoError?.reason ?? "unknown"}) — state unknown.`);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const providers = res.providers ?? [];
|
|
84
|
+
const connected = providers.filter((p) => p.connected);
|
|
85
|
+
if (connected.length === 0) {
|
|
86
|
+
log.dim(" None connected yet.");
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
for (const p of connected)
|
|
90
|
+
console.log(` ${chalk.green("●")} ${p.displayName ?? p.provider}`);
|
|
56
91
|
}
|
|
57
|
-
|
|
58
|
-
|
|
92
|
+
const available = providers.length - connected.length;
|
|
93
|
+
if (available > 0)
|
|
94
|
+
log.dim(` ${available} more available — synap connect --tool`);
|
|
59
95
|
}
|
|
60
96
|
// ─── Surface detectors ────────────────────────────────────────────────────────
|
|
61
97
|
function detectClaudeCode(urlToProfile) {
|
|
@@ -117,6 +153,40 @@ function detectCursor(urlToProfile) {
|
|
|
117
153
|
return { label: "Cursor", configured: false, configPath };
|
|
118
154
|
}
|
|
119
155
|
}
|
|
156
|
+
/** Detect Grok Build MCP: any [mcp_servers.synap*] with a /mcp URL in ~/.grok/config.toml */
|
|
157
|
+
function detectGrok(urlToProfile) {
|
|
158
|
+
const configPath = path.join(os.homedir(), ".grok", "config.toml");
|
|
159
|
+
try {
|
|
160
|
+
if (!fs.existsSync(configPath)) {
|
|
161
|
+
return { label: "Grok", configured: false, configPath };
|
|
162
|
+
}
|
|
163
|
+
const text = fs.readFileSync(configPath, "utf-8");
|
|
164
|
+
// Match [mcp_servers.synap...] blocks and their url =
|
|
165
|
+
const blockRe = /\[mcp_servers\.(synap[^\]]*)\][\s\S]*?url\s*=\s*"([^"]+)"/g;
|
|
166
|
+
let match;
|
|
167
|
+
const urls = [];
|
|
168
|
+
while ((match = blockRe.exec(text)) !== null) {
|
|
169
|
+
urls.push(match[2].replace(/\/mcp\/?$/, ""));
|
|
170
|
+
}
|
|
171
|
+
if (urls.length === 0) {
|
|
172
|
+
return { label: "Grok", configured: false, configPath };
|
|
173
|
+
}
|
|
174
|
+
// Prefer first; multi-pod shows primary + count in label
|
|
175
|
+
const podUrl = urls[0];
|
|
176
|
+
const profile = urlToProfile[podUrl.replace(/\/$/, "")];
|
|
177
|
+
const label = urls.length > 1 ? `Grok (${urls.length} pods)` : "Grok";
|
|
178
|
+
return {
|
|
179
|
+
label,
|
|
180
|
+
configured: true,
|
|
181
|
+
podUrl,
|
|
182
|
+
profile,
|
|
183
|
+
configPath,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
return { label: "Grok", configured: false, configPath };
|
|
188
|
+
}
|
|
189
|
+
}
|
|
120
190
|
// Raycast reads ~/.synap/config.json directly. It can have a per-surface pod
|
|
121
191
|
// override (surfaces.raycast); falls back to activePod if not set.
|
|
122
192
|
function detectRaycast(urlToProfile) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../../src/commands/connections.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../../src/commands/connections.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/context.js
CHANGED
|
@@ -16,40 +16,34 @@ import { log } from "../utils/logger.js";
|
|
|
16
16
|
import { resolveHubConfig, hubGet } from "../lib/hub-client.js";
|
|
17
17
|
import { unwrapList } from "../lib/unwrapList.js";
|
|
18
18
|
import { getAgentWorkspaceRouting } from "../lib/pod.js";
|
|
19
|
-
|
|
19
|
+
import { sessionKindLabel, resolveSessionTitle } from "./sessions.js";
|
|
20
|
+
async function settle(read) {
|
|
20
21
|
try {
|
|
21
|
-
|
|
22
|
-
params.workspaceId = workspaceId;
|
|
23
|
-
const res = await hubGet("/entities", params, cfg);
|
|
24
|
-
return unwrapList(res, ["entities", "items"]);
|
|
22
|
+
return { items: await read };
|
|
25
23
|
}
|
|
26
|
-
catch {
|
|
27
|
-
return
|
|
24
|
+
catch (e) {
|
|
25
|
+
return { error: e instanceof Error ? e.message : String(e) };
|
|
28
26
|
}
|
|
29
27
|
}
|
|
28
|
+
async function fetchEntities(cfg, params, workspaceId) {
|
|
29
|
+
if (workspaceId)
|
|
30
|
+
params.workspaceId = workspaceId;
|
|
31
|
+
const res = await hubGet("/entities", params, cfg);
|
|
32
|
+
return unwrapList(res, ["entities", "items"]);
|
|
33
|
+
}
|
|
30
34
|
async function fetchProposals(cfg, workspaceId, limit) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
return unwrapList(res, ["proposals", "items"]);
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
return [];
|
|
40
|
-
}
|
|
35
|
+
const params = { status: "pending", limit };
|
|
36
|
+
if (workspaceId)
|
|
37
|
+
params.workspaceId = workspaceId;
|
|
38
|
+
const res = await hubGet("/proposals", params, cfg);
|
|
39
|
+
return unwrapList(res, ["proposals", "items"]);
|
|
41
40
|
}
|
|
42
41
|
async function fetchSessions(cfg, workspaceId, limit) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
return unwrapList(res, ["sessions", "items"]);
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
return [];
|
|
52
|
-
}
|
|
42
|
+
const params = { status: "active", limit };
|
|
43
|
+
if (workspaceId)
|
|
44
|
+
params.workspaceId = workspaceId;
|
|
45
|
+
const res = await hubGet("/focus-sessions", params, cfg);
|
|
46
|
+
return unwrapList(res, ["sessions", "items"]);
|
|
53
47
|
}
|
|
54
48
|
export async function contextSummary(opts) {
|
|
55
49
|
try {
|
|
@@ -60,12 +54,22 @@ export async function contextSummary(opts) {
|
|
|
60
54
|
const workspaceId = opts.workspace ??
|
|
61
55
|
routing?.memoryWorkspaceId ??
|
|
62
56
|
cfg.workspaceId;
|
|
63
|
-
const [
|
|
64
|
-
fetchEntities(cfg, { profileSlug: "knowledge", limit }, workspaceId),
|
|
65
|
-
fetchProposals(cfg, workspaceId, limit),
|
|
66
|
-
fetchEntities(cfg, { profileSlug: "task", limit, status: "todo" }, workspaceId),
|
|
67
|
-
fetchSessions(cfg, workspaceId, limit),
|
|
57
|
+
const [knowledgeRead, proposalsRead, tasksRead, sessionsRead] = await Promise.all([
|
|
58
|
+
settle(fetchEntities(cfg, { profileSlug: "knowledge", limit }, workspaceId)),
|
|
59
|
+
settle(fetchProposals(cfg, workspaceId, limit)),
|
|
60
|
+
settle(fetchEntities(cfg, { profileSlug: "task", limit, status: "todo" }, workspaceId)),
|
|
61
|
+
settle(fetchSessions(cfg, workspaceId, limit)),
|
|
68
62
|
]);
|
|
63
|
+
const reads = [knowledgeRead, proposalsRead, tasksRead, sessionsRead];
|
|
64
|
+
// Nothing could be read at all: that is a failed command, not an empty pod.
|
|
65
|
+
if (reads.every((r) => "error" in r)) {
|
|
66
|
+
throw new Error(`could not read the pod — ${reads[0].error}`);
|
|
67
|
+
}
|
|
68
|
+
const itemsOf = (r) => ("items" in r ? r.items : []);
|
|
69
|
+
const rawKnowledge = itemsOf(knowledgeRead);
|
|
70
|
+
const proposals = itemsOf(proposalsRead);
|
|
71
|
+
const tasks = itemsOf(tasksRead);
|
|
72
|
+
const sessions = itemsOf(sessionsRead);
|
|
69
73
|
// Filter knowledge by repo tag if requested
|
|
70
74
|
const knowledge = opts.repo
|
|
71
75
|
? rawKnowledge.filter((item) => {
|
|
@@ -79,16 +83,29 @@ export async function contextSummary(opts) {
|
|
|
79
83
|
})
|
|
80
84
|
: rawKnowledge;
|
|
81
85
|
if (opts.json) {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
console.log(
|
|
86
|
+
// A failed section carries `error` and NO `items` — a reader can never
|
|
87
|
+
// mistake it for an empty one.
|
|
88
|
+
const line = (section, read, items) => JSON.stringify("error" in read ? { section, error: read.error } : { section, items });
|
|
89
|
+
console.log(line("knowledge", knowledgeRead, knowledge));
|
|
90
|
+
console.log(line("proposals", proposalsRead, proposals));
|
|
91
|
+
console.log(line("tasks", tasksRead, tasks));
|
|
92
|
+
console.log(line("sessions", sessionsRead, sessions));
|
|
86
93
|
return;
|
|
87
94
|
}
|
|
95
|
+
/** The failed-read line, printed where "(none)" would have lied. */
|
|
96
|
+
const unreadable = (read) => {
|
|
97
|
+
if (!("error" in read))
|
|
98
|
+
return false;
|
|
99
|
+
console.log(chalk.yellow(` (could not read: ${read.error})`));
|
|
100
|
+
return true;
|
|
101
|
+
};
|
|
88
102
|
// ── Markdown output ────────────────────────────────────────────────────
|
|
89
103
|
// Knowledge
|
|
90
104
|
console.log(chalk.bold("\n## Engineering Knowledge"));
|
|
91
|
-
if (
|
|
105
|
+
if (unreadable(knowledgeRead)) {
|
|
106
|
+
// said above
|
|
107
|
+
}
|
|
108
|
+
else if (knowledge.length === 0) {
|
|
92
109
|
console.log(chalk.dim(" (none)"));
|
|
93
110
|
}
|
|
94
111
|
else {
|
|
@@ -103,8 +120,13 @@ export async function contextSummary(opts) {
|
|
|
103
120
|
}
|
|
104
121
|
}
|
|
105
122
|
// Proposals
|
|
106
|
-
console.log(chalk.bold(
|
|
107
|
-
|
|
123
|
+
console.log(chalk.bold("error" in proposalsRead
|
|
124
|
+
? "\n## Open Proposals (unknown)"
|
|
125
|
+
: `\n## Open Proposals (${proposals.length} pending)`));
|
|
126
|
+
if (unreadable(proposalsRead)) {
|
|
127
|
+
// said above
|
|
128
|
+
}
|
|
129
|
+
else if (proposals.length === 0) {
|
|
108
130
|
console.log(chalk.dim(" (none)"));
|
|
109
131
|
}
|
|
110
132
|
else {
|
|
@@ -116,8 +138,11 @@ export async function contextSummary(opts) {
|
|
|
116
138
|
}
|
|
117
139
|
}
|
|
118
140
|
// Tasks
|
|
119
|
-
console.log(chalk.bold(`\n## Active Tasks (${tasks.length})`));
|
|
120
|
-
if (
|
|
141
|
+
console.log(chalk.bold("error" in tasksRead ? "\n## Active Tasks (unknown)" : `\n## Active Tasks (${tasks.length})`));
|
|
142
|
+
if (unreadable(tasksRead)) {
|
|
143
|
+
// said above
|
|
144
|
+
}
|
|
145
|
+
else if (tasks.length === 0) {
|
|
121
146
|
console.log(chalk.dim(" (none)"));
|
|
122
147
|
}
|
|
123
148
|
else {
|
|
@@ -128,16 +153,26 @@ export async function contextSummary(opts) {
|
|
|
128
153
|
}
|
|
129
154
|
}
|
|
130
155
|
// Focus sessions
|
|
131
|
-
console.log(chalk.bold(
|
|
132
|
-
|
|
156
|
+
console.log(chalk.bold("error" in sessionsRead
|
|
157
|
+
? "\n## Active Focus Sessions (unknown)"
|
|
158
|
+
: `\n## Active Focus Sessions (${sessions.length})`));
|
|
159
|
+
if (unreadable(sessionsRead)) {
|
|
160
|
+
// said above
|
|
161
|
+
}
|
|
162
|
+
else if (sessions.length === 0) {
|
|
133
163
|
console.log(chalk.dim(" (none)"));
|
|
134
164
|
}
|
|
135
165
|
else {
|
|
136
166
|
for (const s of sessions) {
|
|
137
167
|
const progress = typeof s.progress === "number" ? ` ${chalk.dim(`[${s.progress}%]`)}` : "";
|
|
168
|
+
// `kind` is projected on every row by the Hub REST list door — before
|
|
169
|
+
// this, a run or receipt printed here indistinguishable from a
|
|
170
|
+
// person's own work (same audit finding as `synap session list`).
|
|
171
|
+
const kindLabel = typeof s.kind === "string" ? sessionKindLabel(s.kind) : null;
|
|
172
|
+
const kindCol = kindLabel ? ` ${chalk.dim(`[${kindLabel}]`)}` : "";
|
|
138
173
|
// Full id — feeds straight into `synap session update/attach <id>`.
|
|
139
174
|
const id = String(s.id ?? "");
|
|
140
|
-
console.log(`- ${chalk.cyan(id)}${progress} ${
|
|
175
|
+
console.log(`- ${chalk.cyan(id)}${kindCol}${progress} ${resolveSessionTitle(s)}`);
|
|
141
176
|
}
|
|
142
177
|
}
|
|
143
178
|
console.log("");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAkB,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,43 @@ import { type BaseOpts } from "./data.js";
|
|
|
2
2
|
export declare function showEntity(id: string, opts: BaseOpts & {
|
|
3
3
|
workspace?: string;
|
|
4
4
|
}): Promise<void>;
|
|
5
|
+
/**
|
|
6
|
+
* The `--status` vocabulary, mirroring the pod's `PROPOSAL_STATUS_FILTERS`
|
|
7
|
+
* SSOT (`hub-protocol/proposals.ts`) rather than a hand-picked subset — a
|
|
8
|
+
* client narrower than the door it calls is how "the CLI can't show X" bugs
|
|
9
|
+
* get born. `pending` stays the default so the bare command is unchanged.
|
|
10
|
+
*
|
|
11
|
+
* DEPLOY DEPENDENCY: the pod at the time of writing accepts only
|
|
12
|
+
* `pending|approved|rejected|all`; `auto_approved` (and the three terminal
|
|
13
|
+
* states below it) reach the wire correctly but need the widened hub route
|
|
14
|
+
* deployed before they return rows. Passing an unsupported value fails at the
|
|
15
|
+
* pod with its own error — the CLI does not pretend to know which pod version
|
|
16
|
+
* it is talking to.
|
|
17
|
+
*/
|
|
18
|
+
export declare const PROPOSAL_STATUS_FILTERS: readonly ["pending", "approved", "auto_approved", "rejected", "reverted", "approval_failed", "withdrawn", "expired", "all"];
|
|
19
|
+
export type ProposalStatusFilter = (typeof PROPOSAL_STATUS_FILTERS)[number];
|
|
20
|
+
/** The default — the actionable queue, and the only status the command sent before `--status` existed. */
|
|
21
|
+
export declare const DEFAULT_PROPOSAL_STATUS: ProposalStatusFilter;
|
|
22
|
+
/**
|
|
23
|
+
* Validate a user-supplied `--status`. Returns the filter, or `null` for an
|
|
24
|
+
* unrecognised value so the caller can name the accepted set instead of
|
|
25
|
+
* forwarding garbage and rendering the pod's 400 as if it were a server fault.
|
|
26
|
+
*/
|
|
27
|
+
export declare function parseProposalStatus(value: string | undefined): ProposalStatusFilter | null;
|
|
28
|
+
/**
|
|
29
|
+
* Is this listing the ACTIONABLE queue, or a record of decisions already made?
|
|
30
|
+
* `pending` rows await review; every other filter returns rows whose outcome is
|
|
31
|
+
* already fixed, so offering "approve / reject" against them is the surface
|
|
32
|
+
* asserting a verb that would do nothing.
|
|
33
|
+
*/
|
|
34
|
+
export declare function isActionableStatus(status: ProposalStatusFilter): boolean;
|
|
35
|
+
/** Heading noun for a listing — "3 pending proposals" vs "3 auto-approved proposals". */
|
|
36
|
+
export declare function proposalStatusLabel(status: ProposalStatusFilter): string;
|
|
5
37
|
export declare function listProposals(opts: BaseOpts & {
|
|
6
38
|
workspace?: string;
|
|
7
39
|
limit?: string;
|
|
40
|
+
session?: string;
|
|
41
|
+
status?: string;
|
|
8
42
|
}): Promise<void>;
|
|
9
43
|
export declare function browseEntities(opts: BaseOpts & {
|
|
10
44
|
workspace?: string;
|