@synap-core/cli 1.8.0 → 1.11.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/dist/commands/agent-chat.d.ts +47 -0
- package/dist/commands/agent-chat.js +250 -0
- package/dist/commands/agent-chat.js.map +1 -0
- package/dist/commands/agent-run.js +3 -4
- package/dist/commands/agent-run.js.map +1 -1
- package/dist/commands/agents.js +85 -46
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/automation.js +2 -1
- package/dist/commands/automation.js.map +1 -1
- package/dist/commands/bridge-setup.d.ts +66 -0
- package/dist/commands/bridge-setup.js +1112 -0
- package/dist/commands/bridge-setup.js.map +1 -0
- package/dist/commands/cap-connections.d.ts +28 -0
- package/dist/commands/cap-connections.js +224 -0
- package/dist/commands/cap-connections.js.map +1 -0
- package/dist/commands/capability.d.ts +89 -0
- package/dist/commands/capability.js +1594 -0
- package/dist/commands/capability.js.map +1 -0
- package/dist/commands/centrality.d.ts +20 -0
- package/dist/commands/centrality.js +95 -0
- package/dist/commands/centrality.js.map +1 -0
- package/dist/commands/connect.d.ts +2 -0
- package/dist/commands/connect.js +16 -35
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/context.js +6 -7
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.d.ts +1 -0
- package/dist/commands/data-extra.js +41 -14
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/data.d.ts +4 -4
- package/dist/commands/data.js +254 -187
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/diagnose.d.ts +20 -0
- package/dist/commands/diagnose.js +186 -0
- package/dist/commands/diagnose.js.map +1 -0
- package/dist/commands/digest.d.ts +17 -0
- package/dist/commands/digest.js +122 -0
- package/dist/commands/digest.js.map +1 -0
- package/dist/commands/discover.d.ts +2 -0
- package/dist/commands/discover.js +25 -8
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/doc.d.ts +14 -0
- package/dist/commands/doc.js +61 -4
- package/dist/commands/doc.js.map +1 -1
- package/dist/commands/doctor.d.ts +21 -0
- package/dist/commands/doctor.js +189 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/events.js +5 -2
- package/dist/commands/events.js.map +1 -1
- package/dist/commands/explain.d.ts +1 -1
- package/dist/commands/explain.js +18 -15
- package/dist/commands/explain.js.map +1 -1
- package/dist/commands/facet.d.ts +29 -0
- package/dist/commands/facet.js +113 -0
- package/dist/commands/facet.js.map +1 -0
- package/dist/commands/graph.js +7 -4
- package/dist/commands/graph.js.map +1 -1
- package/dist/commands/import.d.ts +38 -0
- package/dist/commands/import.js +471 -0
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/init.js +35 -16
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/keys.js +3 -4
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/knowledge.d.ts +8 -0
- package/dist/commands/knowledge.js +308 -33
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/launch.d.ts +50 -0
- package/dist/commands/launch.js +790 -0
- package/dist/commands/launch.js.map +1 -0
- package/dist/commands/lens.d.ts +45 -0
- package/dist/commands/lens.js +386 -0
- package/dist/commands/lens.js.map +1 -0
- package/dist/commands/market-authoring.d.ts +45 -0
- package/dist/commands/market-authoring.js +225 -0
- package/dist/commands/market-authoring.js.map +1 -0
- package/dist/commands/market.d.ts +224 -0
- package/dist/commands/market.js +1643 -0
- package/dist/commands/market.js.map +1 -0
- package/dist/commands/mcp.d.ts +64 -0
- package/dist/commands/mcp.js +265 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/observe.js +14 -11
- package/dist/commands/observe.js.map +1 -1
- package/dist/commands/open.d.ts +21 -4
- package/dist/commands/open.js +45 -4
- package/dist/commands/open.js.map +1 -1
- package/dist/commands/pod.d.ts +100 -0
- package/dist/commands/pod.js +359 -0
- package/dist/commands/pod.js.map +1 -0
- package/dist/commands/pods.d.ts +15 -0
- package/dist/commands/pods.js +233 -17
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proposals-actions.js +43 -3
- package/dist/commands/proposals-actions.js.map +1 -1
- package/dist/commands/purge.d.ts +23 -0
- package/dist/commands/purge.js +148 -0
- package/dist/commands/purge.js.map +1 -0
- package/dist/commands/raycast.d.ts +15 -0
- package/dist/commands/raycast.js +153 -0
- package/dist/commands/raycast.js.map +1 -0
- package/dist/commands/sessions.js +47 -22
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/skill-manage.d.ts +21 -0
- package/dist/commands/skill-manage.js +195 -0
- package/dist/commands/skill-manage.js.map +1 -0
- package/dist/commands/skills-commands.js +2 -1
- package/dist/commands/skills-commands.js.map +1 -1
- package/dist/commands/skills.js +7 -4
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/status.d.ts +3 -1
- package/dist/commands/status.js +166 -14
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/statusline.d.ts +24 -0
- package/dist/commands/statusline.js +450 -0
- package/dist/commands/statusline.js.map +1 -0
- package/dist/commands/subscribe.js +2 -2
- package/dist/commands/subscribe.js.map +1 -1
- package/dist/commands/template.d.ts +42 -0
- package/dist/commands/template.js +191 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/tools.d.ts +30 -0
- package/dist/commands/tools.js +315 -0
- package/dist/commands/tools.js.map +1 -0
- package/dist/commands/upload.d.ts +30 -0
- package/dist/commands/upload.js +155 -0
- package/dist/commands/upload.js.map +1 -0
- package/dist/commands/versions.d.ts +27 -0
- package/dist/commands/versions.js +277 -0
- package/dist/commands/versions.js.map +1 -0
- package/dist/commands/view.js +3 -2
- package/dist/commands/view.js.map +1 -1
- package/dist/commands/whoami.d.ts +21 -0
- package/dist/commands/whoami.js +129 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/index.js +894 -60
- package/dist/index.js.map +1 -1
- package/dist/lib/approval-poll.d.ts +42 -0
- package/dist/lib/approval-poll.js +52 -0
- package/dist/lib/approval-poll.js.map +1 -0
- package/dist/lib/auth.d.ts +29 -6
- package/dist/lib/auth.js +105 -94
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/bundle-version.d.ts +11 -0
- package/dist/lib/bundle-version.js +33 -0
- package/dist/lib/bundle-version.js.map +1 -0
- package/dist/lib/capture-lane.d.ts +30 -12
- package/dist/lib/capture-lane.js +73 -14
- package/dist/lib/capture-lane.js.map +1 -1
- package/dist/lib/capture-structure.d.ts +123 -0
- package/dist/lib/capture-structure.js +57 -0
- package/dist/lib/capture-structure.js.map +1 -0
- package/dist/lib/cp-packages.d.ts +177 -0
- package/dist/lib/cp-packages.js +389 -0
- package/dist/lib/cp-packages.js.map +1 -0
- package/dist/lib/describe-lens.d.ts +46 -0
- package/dist/lib/describe-lens.js +33 -0
- package/dist/lib/describe-lens.js.map +1 -0
- package/dist/lib/hub-client.d.ts +91 -1
- package/dist/lib/hub-client.js +565 -22
- 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/installed.d.ts +51 -0
- package/dist/lib/installed.js +70 -0
- package/dist/lib/installed.js.map +1 -0
- package/dist/lib/next-steps.d.ts +61 -0
- package/dist/lib/next-steps.js +146 -0
- package/dist/lib/next-steps.js.map +1 -0
- package/dist/lib/pod.d.ts +144 -22
- package/dist/lib/pod.js +302 -64
- package/dist/lib/pod.js.map +1 -1
- package/dist/lib/project-ref.d.ts +95 -0
- package/dist/lib/project-ref.js +144 -0
- package/dist/lib/project-ref.js.map +1 -0
- package/dist/lib/project.d.ts +35 -0
- package/dist/lib/project.js +39 -0
- package/dist/lib/project.js.map +1 -0
- package/dist/lib/session-lens.d.ts +33 -0
- package/dist/lib/session-lens.js +76 -0
- package/dist/lib/session-lens.js.map +1 -0
- package/dist/lib/skill-import.d.ts +40 -0
- package/dist/lib/skill-import.js +203 -0
- package/dist/lib/skill-import.js.map +1 -0
- package/dist/lib/skills-installer.d.ts +17 -6
- package/dist/lib/skills-installer.js +133 -19
- package/dist/lib/skills-installer.js.map +1 -1
- package/dist/lib/suite.d.ts +28 -0
- package/dist/lib/suite.js +29 -0
- package/dist/lib/suite.js.map +1 -0
- package/dist/lib/superwhisper-import.d.ts +40 -0
- package/dist/lib/superwhisper-import.js +389 -0
- package/dist/lib/superwhisper-import.js.map +1 -0
- package/dist/lib/targets.d.ts +49 -1
- package/dist/lib/targets.js +420 -288
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/template-file.d.ts +74 -0
- package/dist/lib/template-file.js +140 -0
- package/dist/lib/template-file.js.map +1 -0
- package/dist/lib/unwrapList.d.ts +1 -0
- package/dist/lib/unwrapList.js +20 -0
- package/dist/lib/unwrapList.js.map +1 -0
- package/dist/utils/logger.d.ts +2 -0
- package/dist/utils/logger.js +10 -2
- package/dist/utils/logger.js.map +1 -1
- package/node_modules/@synap/hub-rest-client/dist/index.cjs +414 -34
- package/node_modules/@synap/hub-rest-client/dist/index.d.cts +762 -22
- package/node_modules/@synap/hub-rest-client/dist/index.d.ts +762 -22
- package/node_modules/@synap/hub-rest-client/dist/index.js +414 -34
- package/node_modules/@synap/hub-rest-client/package.json +1 -1
- package/node_modules/@synap/hub-rest-client/src/client.ts +525 -37
- package/node_modules/@synap/hub-rest-client/src/index.ts +42 -0
- package/node_modules/@synap/hub-rest-client/src/setup.ts +57 -1
- package/node_modules/@synap/hub-rest-client/src/types.ts +697 -37
- package/package.json +11 -5
- package/skills/agent-os/SKILL.md +218 -0
- package/skills/manifest.json +5 -0
- package/skills/onboard/SKILL.md +193 -0
- package/skills/synap/SKILL.md +1284 -58
- package/skills/synap/_order.txt +37 -0
- package/skills/synap/_skill.yaml +24 -0
- package/skills/synap/authentication.md +10 -0
- package/skills/synap/automations.md +264 -0
- package/skills/synap/capabilities.md +107 -0
- package/skills/synap/capture.md +50 -142
- package/skills/synap/cli-operations.md +107 -0
- package/skills/synap/common-mistakes.md +13 -0
- package/skills/synap/content-os.md +83 -0
- package/skills/synap/creative-loop.md +43 -0
- package/skills/synap/crm.md +117 -0
- package/skills/synap/diagnostics.md +35 -0
- package/skills/synap/digesting-a-channel.md +63 -0
- package/skills/synap/document-embeds.md +123 -0
- package/skills/synap/escalation-ladder.md +71 -0
- package/skills/synap/focus-sessions.md +47 -0
- package/skills/synap/governance-rules.md +64 -0
- package/skills/synap/governance.md +6 -6
- package/skills/synap/graph-gardening.md +21 -0
- package/skills/synap/inline-patterns.md +38 -0
- package/skills/synap/lenses.md +38 -0
- package/skills/synap/linking-principle.md +39 -0
- package/skills/synap/linking.md +1 -0
- package/skills/synap/mental-model.md +45 -0
- package/skills/synap/more.md +7 -0
- package/skills/synap/multi-entity-capture.md +12 -0
- package/skills/synap/next-action.md +37 -0
- package/skills/synap/north-star.md +17 -0
- package/skills/synap/operating-mode-rules.md +45 -0
- package/skills/synap/operating-mode.md +9 -0
- package/skills/synap/quick-reference.md +67 -0
- package/skills/synap/reading.md +43 -0
- package/skills/synap/recap.md +21 -0
- package/skills/synap/reflexes.md +46 -0
- package/skills/synap/response-style.md +21 -0
- package/skills/synap/scope.md +13 -0
- package/skills/synap/showing.md +17 -0
- package/skills/synap/user-model.md +25 -0
- package/skills/synap/viewframe-cells.md +290 -0
- package/skills/synap/work-flow.md +113 -0
- package/skills/synap/worked-examples.md +74 -0
- package/skills/synap/workspace-design.md +45 -0
- package/skills/synap/workspace-edges.md +49 -0
- package/skills/synap/writes.md +213 -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-market/SKILL.md +335 -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 +75 -0
- package/skills/synap-market/discover-and-fetch.md +59 -0
- package/skills/synap-market/governance-and-catalog.md +56 -0
- package/skills/synap-market/install.md +55 -0
- package/skills/synap-market/overview.md +51 -0
- package/skills/synap-schema/SKILL.md +97 -6
- package/skills/synap-schema/_order.txt +13 -0
- package/skills/synap-schema/_skill.yaml +22 -0
- package/skills/synap-schema/before-you-touch.md +14 -0
- package/skills/synap-schema/common-mistakes.md +9 -0
- package/skills/synap-schema/creating-profiles.md +17 -0
- package/skills/synap-schema/discover-profiles.md +24 -0
- package/skills/synap-schema/entity-scope.md +8 -0
- package/skills/synap-schema/extend-vs-create.md +31 -0
- package/skills/synap-schema/more.md +6 -0
- package/skills/synap-schema/overlay-properties.md +22 -0
- package/skills/synap-schema/profiles.md +3 -0
- package/skills/synap-schema/property-defs.md +29 -0
- package/skills/synap-schema/read-before-write.md +50 -0
- package/skills/synap-schema/relations.md +18 -0
- package/skills/synap-schema/worked-example.md +30 -0
- package/skills/synap-ui/SKILL.md +26 -2
- package/skills/synap-ui/_order.txt +13 -0
- package/skills/synap-ui/_skill.yaml +23 -0
- package/skills/synap-ui/ai-companion.md +27 -0
- package/skills/synap-ui/arranging-bento.md +8 -0
- package/skills/synap-ui/before-you-build.md +20 -0
- package/skills/synap-ui/bento-layouts.md +35 -0
- package/skills/synap-ui/common-mistakes.md +10 -0
- package/skills/synap-ui/creating-views.md +26 -0
- package/skills/synap-ui/four-builds.md +24 -0
- package/skills/synap-ui/more.md +7 -0
- package/skills/synap-ui/proposing-vs-extending.md +11 -0
- package/skills/synap-ui/view-list.md +24 -0
- package/skills/synap-ui/views.md +3 -0
- package/skills/synap-ui/worked-example.md +18 -0
- package/skills/synap-ui/workspaces.md +47 -0
- package/templates/automations/bookmark-enrichment.automation.json +44 -0
- package/templates/automations/mail-feed.automation.json +86 -0
- package/templates/automations/url-bookmark-capture.automation.json +70 -0
- package/templates/skills/README.md +21 -0
- package/templates/skills/authoring-automations/SKILL.md +95 -0
- package/templates/skills/authoring-automations/reference/node-matrix.md +49 -0
- package/templates/skills/authoring-capabilities/SKILL.md +93 -0
- package/templates/skills/authoring-capabilities/reference/template-anatomy.md +70 -0
- package/templates/skills/authoring-playbooks/SKILL.md +102 -0
- package/templates/skills/authoring-playbooks/reference/stages-contract.md +35 -0
- package/templates/skills/authoring-playbooks/reference/worked-example.md +64 -0
- package/templates/skills/bookmark-enrichment/SKILL.md +40 -0
- package/templates/skills/coordinating-agents/SKILL.md +32 -0
- package/templates/skills/coordinating-branches/SKILL.md +27 -0
- package/templates/skills/mapping-the-server/SKILL.md +54 -0
- package/templates/skills/reading-client-progress/SKILL.md +65 -0
- package/templates/skills/routing-to-channels/SKILL.md +54 -0
- package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-CHEATSHEET.md +133 -0
- package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-ONBOARDING-GUIDE.md +761 -0
- package/templates/skills/stellar-scf-grants-advisor/CLIENT-FAQ.md +181 -0
- package/templates/skills/stellar-scf-grants-advisor/PARTNER-HANDOVER.md +130 -0
- package/templates/skills/stellar-scf-grants-advisor/SKILL.md +102 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/README.md +43 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/chat-summary-templates.md +158 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/corpus-comparable-rows.md +136 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q10-team-rewrites.md +109 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q2-description-rewrites.md +88 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q6-integration-rewrites.md +107 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/tranche-structures.md +176 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/01-methodology.md +96 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/02-scoring-framework.md +199 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/03-rejection-patterns.md +241 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/04-winner-patterns.md +120 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/05-comeback-patterns.md +92 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/06-budget-benchmarks.md +125 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/07-integration-list.md +147 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/08-abstract-fields.md +258 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/09-build-fields.md +259 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/10-corpus-winners.md +135 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/11-corpus-rejects.md +267 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/12-client-communication.md +131 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/13-excel-output-spec.md +199 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/14-worked-examples.md +160 -0
- package/templates/skills/stellar-scf-grants-advisor/templates/abstract-review-builder.py +253 -0
- package/templates/skills/stellar-scf-grants-advisor/templates/build-review-builder.py +213 -0
- package/dist/commands/connectors.d.ts +0 -31
- package/dist/commands/connectors.js +0 -276
- package/dist/commands/connectors.js.map +0 -1
- package/dist/commands/finish.d.ts +0 -25
- package/dist/commands/finish.js +0 -274
- package/dist/commands/finish.js.map +0 -1
- package/dist/commands/openclaw.d.ts +0 -40
- package/dist/commands/openclaw.js +0 -1148
- package/dist/commands/openclaw.js.map +0 -1
- package/dist/commands/security-audit.d.ts +0 -12
- package/dist/commands/security-audit.js +0 -100
- package/dist/commands/security-audit.js.map +0 -1
- package/dist/lib/hardening.d.ts +0 -18
- package/dist/lib/hardening.js +0 -214
- package/dist/lib/hardening.js.map +0 -1
package/dist/lib/pod.d.ts
CHANGED
|
@@ -10,10 +10,27 @@ export interface LocalPodConfig {
|
|
|
10
10
|
label?: string;
|
|
11
11
|
savedAt: string;
|
|
12
12
|
}
|
|
13
|
-
|
|
13
|
+
/** SSOT for every connect/surface agent identity. The type is derived from this
|
|
14
|
+
* array so the two can't drift. */
|
|
15
|
+
export declare const SURFACE_NAMES: readonly ["raycast", "claude-code", "claude-desktop", "cursor", "codex", "opencode", "aider", "windsurf", "goose", "zed", "vscode", "discord"];
|
|
16
|
+
export type SurfaceName = (typeof SURFACE_NAMES)[number];
|
|
17
|
+
/**
|
|
18
|
+
* agentTypes already owned by OTHER doors — `POST /setup/agent` treats agentType
|
|
19
|
+
* as a POD-WIDE SINGLETON, so `agents create` deriving a slug that collides with
|
|
20
|
+
* one of these would silently hijack that door's agent + key. Superset of the
|
|
21
|
+
* surfaces above plus the non-surface provisioning types (generic/openwebui MCP
|
|
22
|
+
* mappings; openclaw/cli/memory). Single source of truth for the collision guard.
|
|
23
|
+
*/
|
|
24
|
+
export declare const RESERVED_AGENT_TYPES: ReadonlySet<string>;
|
|
14
25
|
export interface SurfaceAgentKey {
|
|
15
26
|
hubApiKey: string;
|
|
16
27
|
agentUserId: string;
|
|
28
|
+
/**
|
|
29
|
+
* Pod the key was provisioned against. Consumers (e.g. the Raycast extension)
|
|
30
|
+
* must only use the key when this matches the pod they're talking to —
|
|
31
|
+
* a surface pointed at another pod falls back to that pod's own profile key.
|
|
32
|
+
*/
|
|
33
|
+
podUrl?: string;
|
|
17
34
|
}
|
|
18
35
|
/** Agent workspace routing — persisted by `synap connect` wizard. */
|
|
19
36
|
export interface AgentWorkspaceRouting {
|
|
@@ -22,6 +39,23 @@ export interface AgentWorkspaceRouting {
|
|
|
22
39
|
/** Shared workspaces the agent writes team-visible data to. */
|
|
23
40
|
productWorkspaceIds?: string[];
|
|
24
41
|
}
|
|
42
|
+
/** The active project pinned together with the pod profile it lives on. */
|
|
43
|
+
export interface ActiveProjectBinding {
|
|
44
|
+
projectId: string;
|
|
45
|
+
podName: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The active workspace pinned together with the pod profile it belongs to.
|
|
49
|
+
*
|
|
50
|
+
* A workspace exists on exactly ONE pod, but `activeWorkspaceId` is a single
|
|
51
|
+
* pod-agnostic global. Recording the pod it was set against lets resolution
|
|
52
|
+
* refuse to send a workspace to a pod it doesn't belong to (the cross-pod 403).
|
|
53
|
+
* Peer of {@link ActiveProjectBinding}.
|
|
54
|
+
*/
|
|
55
|
+
export interface ActiveWorkspaceBinding {
|
|
56
|
+
workspaceId: string;
|
|
57
|
+
podName: string;
|
|
58
|
+
}
|
|
25
59
|
export interface MultiPodConfig {
|
|
26
60
|
activePod: string;
|
|
27
61
|
/** Per-surface pod overrides. When set, takes priority over activePod for that surface. */
|
|
@@ -29,11 +63,28 @@ export interface MultiPodConfig {
|
|
|
29
63
|
pods: Record<string, LocalPodConfig>;
|
|
30
64
|
/** Active workspace override — set by `synap use <workspaceId>`. Takes priority over the pod's default workspaceId. */
|
|
31
65
|
activeWorkspaceId?: string;
|
|
66
|
+
/** Pod-aware binding of the active workspace — records which pod `activeWorkspaceId` was set against, so cross-pod resolution can ignore it for other pods. */
|
|
67
|
+
activeWorkspace?: ActiveWorkspaceBinding;
|
|
68
|
+
/** Active project override — set by `synap project use <projectId>`. Peer of activeWorkspaceId; independent (composable). */
|
|
69
|
+
activeProjectId?: string;
|
|
70
|
+
/** Pod-aware binding of the active project — set by cross-pod `synap project use <ref>` so later drift (active pod changed under the pin) can warn. */
|
|
71
|
+
activeProject?: ActiveProjectBinding;
|
|
32
72
|
/** Per-surface dedicated agent keys (provisioned with named agentType). Separate from pod profile keys. */
|
|
33
73
|
agentKeys?: Partial<Record<SurfaceName, SurfaceAgentKey>>;
|
|
34
74
|
/** Workspace routing set by `synap connect` wizard — drives capture/recall defaults. */
|
|
35
75
|
agentWorkspaceRouting?: AgentWorkspaceRouting;
|
|
36
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* The ONE "pod profile not found" message.
|
|
79
|
+
*
|
|
80
|
+
* Names the profile that missed, the pods that DO exist, and the command that
|
|
81
|
+
* adds one. Every site that fails to resolve a profile name renders through
|
|
82
|
+
* this — a bare `not found` leaves the user with no next move, and the known-pods
|
|
83
|
+
* list is usually the whole answer (a typo).
|
|
84
|
+
*/
|
|
85
|
+
export declare function podNotFoundMessage(name: string): string;
|
|
86
|
+
/** Throwing form of {@link podNotFoundMessage}. */
|
|
87
|
+
export declare function podNotFoundError(name: string): Error;
|
|
37
88
|
/** Get the pod config for a specific surface, falling back to the global activePod. */
|
|
38
89
|
export declare function getSurfacePod(surface: SurfaceName): LocalPodConfig | null;
|
|
39
90
|
/** Get the name of the pod assigned to a surface (or the global active pod name). */
|
|
@@ -48,12 +99,73 @@ export declare function listPodProfiles(): Array<{
|
|
|
48
99
|
config: LocalPodConfig;
|
|
49
100
|
active: boolean;
|
|
50
101
|
}>;
|
|
102
|
+
export declare function getPodOverride(): LocalPodConfig | null;
|
|
103
|
+
/** Resolve a saved pod profile by name and set it as this invocation's override. */
|
|
104
|
+
export declare function setPodOverrideByName(name: string): LocalPodConfig;
|
|
105
|
+
/**
|
|
106
|
+
* Consume a position-independent `--pod <name>` (or `--pod=<name>`) from argv and
|
|
107
|
+
* register it as the per-invocation override. Mutates `argv` in place so commander
|
|
108
|
+
* never sees the flag (it isn't registered per-command). No-op when the argv
|
|
109
|
+
* targets a command that owns `--pod` itself (agents, bridge-setup). Throws with a
|
|
110
|
+
* helpful message when the named profile is unknown.
|
|
111
|
+
*/
|
|
112
|
+
export declare function bootstrapPodOverride(argv: string[]): void;
|
|
51
113
|
export declare function addPodProfile(name: string, podConfig: LocalPodConfig): void;
|
|
52
114
|
export declare function setActivePod(name: string): LocalPodConfig;
|
|
53
|
-
/**
|
|
115
|
+
/** The active pod's profile NAME (not its config), or undefined if none is set. */
|
|
116
|
+
export declare function getActivePodName(): string | undefined;
|
|
117
|
+
/** Find a saved pod profile NAME by its URL (trailing slashes ignored). */
|
|
118
|
+
export declare function findPodNameByUrl(url: string): string | undefined;
|
|
119
|
+
/**
|
|
120
|
+
* Resolve the workspace to use for a specific pod — PURE (no disk, no network),
|
|
121
|
+
* so the cross-pod rule is unit-testable.
|
|
122
|
+
*
|
|
123
|
+
* A workspace lives on exactly one pod, but `activeWorkspaceId` is a single
|
|
124
|
+
* pod-agnostic global. Sending it to the wrong pod is the "Access denied to
|
|
125
|
+
* workspace" 403. The rule: only honor the global override for the pod it
|
|
126
|
+
* actually belongs to; otherwise fall back to THAT pod's own default workspace.
|
|
127
|
+
*
|
|
128
|
+
* 1. No override set → the target pod's own default.
|
|
129
|
+
* 2. Override has a pod binding → honor it only for its bound pod; for any
|
|
130
|
+
* other pod, use that pod's default.
|
|
131
|
+
* 3. Legacy override (no binding) that equals ANOTHER saved pod's default →
|
|
132
|
+
* it clearly belongs to that pod → use the target's default.
|
|
133
|
+
* 4. Otherwise no evidence it's foreign → assume it's the target pod's (the
|
|
134
|
+
* legacy `synap use <custom-ws-on-this-pod>` case) → honor it.
|
|
135
|
+
*/
|
|
136
|
+
export declare function resolveWorkspaceForPod(config: MultiPodConfig, podName: string | undefined): string | undefined;
|
|
137
|
+
/**
|
|
138
|
+
* Get the active workspace ID for a pod (by profile NAME). Applies the cross-pod
|
|
139
|
+
* rule in {@link resolveWorkspaceForPod}. Omit `podName` for the active pod.
|
|
140
|
+
*/
|
|
141
|
+
export declare function getActiveWorkspaceIdForPod(podName?: string): string | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* Get the active workspace ID for the ACTIVE pod: explicit override first (only
|
|
144
|
+
* if it belongs to this pod), then the pod default. Cross-pod-safe: a global
|
|
145
|
+
* override left over from another pod is ignored rather than sent (avoids the
|
|
146
|
+
* "Access denied to workspace" 403).
|
|
147
|
+
*/
|
|
54
148
|
export declare function getActiveWorkspaceId(): string | undefined;
|
|
55
|
-
/**
|
|
56
|
-
|
|
149
|
+
/**
|
|
150
|
+
* Persist a workspace as the active context for all subsequent commands.
|
|
151
|
+
* Records the pod the workspace belongs to (defaults to the active pod) so
|
|
152
|
+
* later cross-pod resolution can tell whether the override applies.
|
|
153
|
+
*/
|
|
154
|
+
export declare function setActiveWorkspaceId(workspaceId: string, podName?: string): void;
|
|
155
|
+
/** Get the active project ID: durable override set by `synap project use`. */
|
|
156
|
+
export declare function getActiveProjectId(): string | undefined;
|
|
157
|
+
/** Persist a project as the active context for all subsequent commands. */
|
|
158
|
+
export declare function setActiveProjectId(projectId: string): void;
|
|
159
|
+
/**
|
|
160
|
+
* Pin project AND the pod it lives on together — the cross-pod `project use`
|
|
161
|
+
* door. Stores the binding so later drift (active pod switched away from the
|
|
162
|
+
* pinned project's pod) can warn.
|
|
163
|
+
*/
|
|
164
|
+
export declare function setActiveProjectBinding(binding: ActiveProjectBinding): void;
|
|
165
|
+
/** The pod-aware active-project binding, when set by cross-pod `project use`. */
|
|
166
|
+
export declare function getActiveProjectBinding(): ActiveProjectBinding | undefined;
|
|
167
|
+
/** Remove the active project override — subsequent commands see all projects. */
|
|
168
|
+
export declare function clearActiveProjectId(): void;
|
|
57
169
|
/** Store a dedicated agent key for a specific surface (e.g. "raycast", "claude-code"). */
|
|
58
170
|
export declare function setSurfaceAgentKey(surface: SurfaceName, key: SurfaceAgentKey): void;
|
|
59
171
|
/** Read back the stored agent key for a surface. Returns null if not provisioned. */
|
|
@@ -76,15 +188,6 @@ export interface PodStatus {
|
|
|
76
188
|
* Check if a Synap pod is healthy.
|
|
77
189
|
*/
|
|
78
190
|
export declare function checkPodHealth(podUrl: string): Promise<PodStatus>;
|
|
79
|
-
/**
|
|
80
|
-
* Create an agent user and API key on the pod.
|
|
81
|
-
* Uses the PROVISIONING_TOKEN for auth.
|
|
82
|
-
*/
|
|
83
|
-
export declare function setupAgent(podUrl: string, provisioningToken: string, agentType?: string): Promise<{
|
|
84
|
-
hubApiKey: string;
|
|
85
|
-
agentUserId: string;
|
|
86
|
-
workspaceId: string;
|
|
87
|
-
}>;
|
|
88
191
|
/**
|
|
89
192
|
* Install Docker and start a self-hosted Synap pod.
|
|
90
193
|
*/
|
|
@@ -93,17 +196,31 @@ export declare function startSelfHostedPod(): void;
|
|
|
93
196
|
* Install the synap skill into OpenClaw.
|
|
94
197
|
*/
|
|
95
198
|
/**
|
|
96
|
-
*
|
|
97
|
-
* Calls the
|
|
98
|
-
*
|
|
99
|
-
*
|
|
199
|
+
* Open a Pod session for the CP-authenticated user.
|
|
200
|
+
* Calls the issuer for a short-lived generic assertion, then exchanges that
|
|
201
|
+
* assertion directly with the Pod. The issuer never receives a Pod session.
|
|
202
|
+
*
|
|
203
|
+
* Returns the Kratos session token the Pod mints after its own membership check.
|
|
204
|
+
* That token authenticates subsequent pod tRPC calls (e.g.
|
|
205
|
+
* `apiKeys.connectIntegration`) as the pod user, via the X-Session-Token header.
|
|
206
|
+
* `sessionToken` is null only if the pod handshake returned no token (e.g. 409).
|
|
100
207
|
*/
|
|
101
|
-
export declare function provisionUserOnPod(podUrl: string, cpToken: string): Promise<
|
|
208
|
+
export declare function provisionUserOnPod(podUrl: string, cpToken: string): Promise<{
|
|
209
|
+
sessionToken: string | null;
|
|
210
|
+
}>;
|
|
102
211
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
212
|
+
* Issue a scoped Hub Protocol API key on the pod for an authenticated user.
|
|
213
|
+
*
|
|
214
|
+
* Canonical path: the pod's `apiKeys.connectIntegration` tRPC procedure — the
|
|
215
|
+
* same one the pod-admin `/connect` page and the browser's LocalCliRow use.
|
|
216
|
+
* Auth is the Kratos session token minted by {@link provisionUserOnPod},
|
|
217
|
+
* forwarded as the `X-Session-Token` header. (Replaces the removed CP relay
|
|
218
|
+
* `POST /pods/setup-agent`, which now returns 410.)
|
|
219
|
+
*
|
|
220
|
+
* Backend tRPC uses the superjson transformer, so the input rides in a
|
|
221
|
+
* `{ json: ... }` envelope and the output is unwrapped from `result.data.json`.
|
|
105
222
|
*/
|
|
106
|
-
export declare function
|
|
223
|
+
export declare function setupAgentViaPod(podUrl: string, sessionToken: string, integration?: "cli" | "openclaw" | "raycast" | "custom"): Promise<{
|
|
107
224
|
hubApiKey: string;
|
|
108
225
|
agentUserId: string;
|
|
109
226
|
workspaceId: string;
|
|
@@ -111,6 +228,11 @@ export declare function setupAgentViaCp(podUrl: string, cpToken: string, agentTy
|
|
|
111
228
|
/**
|
|
112
229
|
* Enable OpenClaw as a free addon on a SELF-HOSTED pod.
|
|
113
230
|
* Uses the PROVISIONING_TOKEN directly against the pod.
|
|
231
|
+
*
|
|
232
|
+
* Routes through the shared `provisionAgentKey()` wrapper (dynamic import to
|
|
233
|
+
* avoid a circular pod.ts <-> targets.ts static import). `workspaceId` is no
|
|
234
|
+
* longer part of the response — agents are pod-wide singletons now; scope is
|
|
235
|
+
* granted separately via `enrollAgentIfNeeded()`, not returned from setup.
|
|
114
236
|
*/
|
|
115
237
|
export declare function enableOpenClawAddon(podUrl: string, provisioningToken: string): Promise<{
|
|
116
238
|
hubApiKey: string;
|
|
@@ -156,7 +278,7 @@ export declare function findSynapDeployDir(): string | null;
|
|
|
156
278
|
*
|
|
157
279
|
* Returns the deploy dir used.
|
|
158
280
|
*/
|
|
159
|
-
export declare function startOpenClawOnServer(hubApiKey: string, agentUserId: string, workspaceId: string, podUrl: string): string;
|
|
281
|
+
export declare function startOpenClawOnServer(hubApiKey: string, agentUserId: string, workspaceId: string, podUrl: string, projectId?: string): string;
|
|
160
282
|
/**
|
|
161
283
|
* Install the synap skill into OpenClaw.
|
|
162
284
|
* Automatically chooses the right execution path:
|