@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
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* synap agent ask / chat
|
|
3
|
+
*
|
|
4
|
+
* Hold a REAL conversation with the workspace's deployed Intelligence-Service
|
|
5
|
+
* agent (the orchestrator / co-founder). Unlike `synap agent run` — which hits
|
|
6
|
+
* the IS /v1/chat/completions door directly and stores a research entity — this
|
|
7
|
+
* drives the SAME channel+trigger path the browser uses, so the deployed agent
|
|
8
|
+
* answers with full workspace context, tools, and governance.
|
|
9
|
+
*
|
|
10
|
+
* Verified path (Hub Protocol REST, all under `${podUrl}/api/hub`):
|
|
11
|
+
* 1. resolve/create a WORKSPACE-scoped THREAD channel
|
|
12
|
+
* POST /threads { userId, workspaceId, title, externalSource, externalId }
|
|
13
|
+
* channelType defaults to "thread" + scope defaults to "workspace" — this is
|
|
14
|
+
* NOT the pod-wide personal channel (`/channels/personal` is pod-scoped).
|
|
15
|
+
* A stable externalId dedups, so repeated `agent ask` calls CONTINUE the
|
|
16
|
+
* same conversation (multi-turn) unless `--new` forces a fresh thread.
|
|
17
|
+
* 2. post the user turn + trigger the agent
|
|
18
|
+
* POST /threads/:id/messages { role:"user", content, userId, autoRespond:true }
|
|
19
|
+
* autoRespond enqueues an A2AI pg-boss job → IS /api/chat/stream (agentType
|
|
20
|
+
* "meta" → OrchestratorAgent). The reply is ASYNC.
|
|
21
|
+
* 3. poll for the assistant reply
|
|
22
|
+
* GET /threads/:id/messages (asc by timestamp)
|
|
23
|
+
* The a2ai worker persists the answer as a role="assistant" message. We poll
|
|
24
|
+
* until a NEW assistant message (id not seen before the post) appears.
|
|
25
|
+
*/
|
|
26
|
+
export interface AgentAskOpts {
|
|
27
|
+
message?: string;
|
|
28
|
+
workspace?: string;
|
|
29
|
+
thread?: string;
|
|
30
|
+
agentType?: string;
|
|
31
|
+
new?: boolean;
|
|
32
|
+
timeout?: string;
|
|
33
|
+
json?: boolean;
|
|
34
|
+
podUrl?: string;
|
|
35
|
+
apiKey?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface AgentChatOpts {
|
|
38
|
+
workspace?: string;
|
|
39
|
+
thread?: string;
|
|
40
|
+
agentType?: string;
|
|
41
|
+
new?: boolean;
|
|
42
|
+
timeout?: string;
|
|
43
|
+
podUrl?: string;
|
|
44
|
+
apiKey?: string;
|
|
45
|
+
}
|
|
46
|
+
export declare function agentAsk(opts: AgentAskOpts): Promise<void>;
|
|
47
|
+
export declare function agentChat(opts: AgentChatOpts): Promise<void>;
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* synap agent ask / chat
|
|
3
|
+
*
|
|
4
|
+
* Hold a REAL conversation with the workspace's deployed Intelligence-Service
|
|
5
|
+
* agent (the orchestrator / co-founder). Unlike `synap agent run` — which hits
|
|
6
|
+
* the IS /v1/chat/completions door directly and stores a research entity — this
|
|
7
|
+
* drives the SAME channel+trigger path the browser uses, so the deployed agent
|
|
8
|
+
* answers with full workspace context, tools, and governance.
|
|
9
|
+
*
|
|
10
|
+
* Verified path (Hub Protocol REST, all under `${podUrl}/api/hub`):
|
|
11
|
+
* 1. resolve/create a WORKSPACE-scoped THREAD channel
|
|
12
|
+
* POST /threads { userId, workspaceId, title, externalSource, externalId }
|
|
13
|
+
* channelType defaults to "thread" + scope defaults to "workspace" — this is
|
|
14
|
+
* NOT the pod-wide personal channel (`/channels/personal` is pod-scoped).
|
|
15
|
+
* A stable externalId dedups, so repeated `agent ask` calls CONTINUE the
|
|
16
|
+
* same conversation (multi-turn) unless `--new` forces a fresh thread.
|
|
17
|
+
* 2. post the user turn + trigger the agent
|
|
18
|
+
* POST /threads/:id/messages { role:"user", content, userId, autoRespond:true }
|
|
19
|
+
* autoRespond enqueues an A2AI pg-boss job → IS /api/chat/stream (agentType
|
|
20
|
+
* "meta" → OrchestratorAgent). The reply is ASYNC.
|
|
21
|
+
* 3. poll for the assistant reply
|
|
22
|
+
* GET /threads/:id/messages (asc by timestamp)
|
|
23
|
+
* The a2ai worker persists the answer as a role="assistant" message. We poll
|
|
24
|
+
* until a NEW assistant message (id not seen before the post) appears.
|
|
25
|
+
*/
|
|
26
|
+
import chalk from "chalk";
|
|
27
|
+
import { createInterface } from "node:readline";
|
|
28
|
+
import { resolveHubConfig, resolveUserId, hubGet, hubPost, renderHubError, } from "../lib/hub-client.js";
|
|
29
|
+
import { unwrapList } from "../lib/unwrapList.js";
|
|
30
|
+
import { log } from "../utils/logger.js";
|
|
31
|
+
// ── Shared helpers ──────────────────────────────────────────────────────────────
|
|
32
|
+
/** Resolve a `--workspace <id|name>` value (or the active lens) to a workspace id. */
|
|
33
|
+
async function resolveWorkspace(cfg, wanted) {
|
|
34
|
+
// Explicit flag first — accept an id OR a name.
|
|
35
|
+
if (wanted) {
|
|
36
|
+
let list = [];
|
|
37
|
+
try {
|
|
38
|
+
const res = await hubGet("/workspaces", {}, cfg);
|
|
39
|
+
list = unwrapList(res, ["workspaces"]);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
// If the list door fails, fall through and treat `wanted` as a raw id.
|
|
43
|
+
}
|
|
44
|
+
const byId = list.find((w) => String(w.id ?? "") === wanted);
|
|
45
|
+
if (byId)
|
|
46
|
+
return String(byId.id);
|
|
47
|
+
const byName = list.find((w) => String(w.name ?? "").toLowerCase() === wanted.toLowerCase());
|
|
48
|
+
if (byName)
|
|
49
|
+
return String(byName.id);
|
|
50
|
+
// No match by name; assume the caller passed a literal id.
|
|
51
|
+
return wanted;
|
|
52
|
+
}
|
|
53
|
+
// Fall back to the active lens / configured workspace.
|
|
54
|
+
if (cfg.workspaceId)
|
|
55
|
+
return cfg.workspaceId;
|
|
56
|
+
throw new Error("No workspace. Pass --workspace <id|name> or set one with `synap use <workspace>`.");
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Resolve or create the workspace-scoped THREAD channel used for this chat.
|
|
60
|
+
* Returns its id. A stable externalId keeps the conversation continuous across
|
|
61
|
+
* invocations; `--new` (or `--thread`) overrides.
|
|
62
|
+
*/
|
|
63
|
+
async function resolveChannel(cfg, userId, workspaceId, opts) {
|
|
64
|
+
if (opts.thread)
|
|
65
|
+
return opts.thread;
|
|
66
|
+
const body = {
|
|
67
|
+
userId,
|
|
68
|
+
workspaceId,
|
|
69
|
+
title: "CLI agent chat",
|
|
70
|
+
};
|
|
71
|
+
if (!opts.new) {
|
|
72
|
+
// Stable per-(user, workspace) key → POST /threads fast-path dedups on it,
|
|
73
|
+
// so successive calls reuse ONE thread and the agent sees prior turns.
|
|
74
|
+
body.externalSource = "cli";
|
|
75
|
+
body.externalId = `agent-chat:${workspaceId}`;
|
|
76
|
+
}
|
|
77
|
+
const res = (await hubPost("/threads", body, cfg));
|
|
78
|
+
if (!res?.id)
|
|
79
|
+
throw new Error("Failed to resolve chat channel (no id returned).");
|
|
80
|
+
return res.id;
|
|
81
|
+
}
|
|
82
|
+
/** Fetch all messages in a thread (asc by timestamp). */
|
|
83
|
+
async function fetchMessages(cfg, channelId) {
|
|
84
|
+
const res = await hubGet(`/threads/${channelId}/messages`, {}, cfg);
|
|
85
|
+
return unwrapList(res, ["messages"]);
|
|
86
|
+
}
|
|
87
|
+
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
88
|
+
/**
|
|
89
|
+
* Post one user turn and wait for the deployed agent's reply.
|
|
90
|
+
*
|
|
91
|
+
* @returns the assistant reply text, or null on timeout.
|
|
92
|
+
*/
|
|
93
|
+
async function sendTurnAndAwaitReply(cfg, channelId, userId, message, agentType, timeoutMs, onWait) {
|
|
94
|
+
// Snapshot the assistant messages that already exist so we can tell OUR reply
|
|
95
|
+
// apart from history — the reliable "reply is ready" signal.
|
|
96
|
+
const before = await fetchMessages(cfg, channelId);
|
|
97
|
+
const seenAssistant = new Set(before.filter((m) => m.role === "assistant").map((m) => m.id));
|
|
98
|
+
const postBody = {
|
|
99
|
+
role: "user",
|
|
100
|
+
content: message,
|
|
101
|
+
userId,
|
|
102
|
+
autoRespond: true,
|
|
103
|
+
};
|
|
104
|
+
// agentType is a forward-compat hint: the backend autoRespond door currently
|
|
105
|
+
// routes every reply to the workspace orchestrator ("meta"). Stored in metadata
|
|
106
|
+
// so a future selectable-agent door can honor it.
|
|
107
|
+
if (agentType)
|
|
108
|
+
postBody.metadata = { requestedAgentType: agentType };
|
|
109
|
+
const posted = (await hubPost(`/threads/${channelId}/messages`, postBody, cfg));
|
|
110
|
+
const userMessageId = posted?.messageId ?? "";
|
|
111
|
+
const deadline = Date.now() + timeoutMs;
|
|
112
|
+
const intervalMs = 2000;
|
|
113
|
+
while (Date.now() < deadline) {
|
|
114
|
+
await sleep(intervalMs);
|
|
115
|
+
onWait?.();
|
|
116
|
+
let msgs;
|
|
117
|
+
try {
|
|
118
|
+
msgs = await fetchMessages(cfg, channelId);
|
|
119
|
+
}
|
|
120
|
+
catch {
|
|
121
|
+
continue; // transient — keep polling until the deadline
|
|
122
|
+
}
|
|
123
|
+
const reply = msgs.find((m) => m.role === "assistant" && !seenAssistant.has(m.id));
|
|
124
|
+
if (reply)
|
|
125
|
+
return { reply: reply.content, userMessageId };
|
|
126
|
+
}
|
|
127
|
+
return { reply: null, userMessageId };
|
|
128
|
+
}
|
|
129
|
+
function parseTimeout(raw) {
|
|
130
|
+
const secs = raw ? parseInt(raw, 10) : NaN;
|
|
131
|
+
return Number.isFinite(secs) && secs > 0 ? secs * 1000 : 90_000;
|
|
132
|
+
}
|
|
133
|
+
const TIMEOUT_HINT = "The agent did not respond in time. The Intelligence Service may be down or " +
|
|
134
|
+
"still working. Retry, or raise --timeout. Check IS health: `synap status`.";
|
|
135
|
+
// ── agent ask (single-shot) ─────────────────────────────────────────────────────
|
|
136
|
+
export async function agentAsk(opts) {
|
|
137
|
+
const message = (opts.message ?? "").trim();
|
|
138
|
+
if (!message) {
|
|
139
|
+
console.error(chalk.red("Error: a message is required. Usage: synap agent ask \"your message\""));
|
|
140
|
+
process.exit(1);
|
|
141
|
+
}
|
|
142
|
+
try {
|
|
143
|
+
const cfg = await resolveHubConfig(opts);
|
|
144
|
+
const userId = await resolveUserId(cfg);
|
|
145
|
+
const workspaceId = await resolveWorkspace(cfg, opts.workspace);
|
|
146
|
+
const channelId = await resolveChannel(cfg, userId, workspaceId, opts);
|
|
147
|
+
const timeoutMs = parseTimeout(opts.timeout);
|
|
148
|
+
if (!opts.json) {
|
|
149
|
+
log.dim(`workspace ${workspaceId} · thread ${channelId}`);
|
|
150
|
+
process.stdout.write(chalk.dim(" waiting for agent"));
|
|
151
|
+
}
|
|
152
|
+
const { reply } = await sendTurnAndAwaitReply(cfg, channelId, userId, message, opts.agentType, timeoutMs, () => {
|
|
153
|
+
if (!opts.json)
|
|
154
|
+
process.stdout.write(chalk.dim("."));
|
|
155
|
+
});
|
|
156
|
+
if (!opts.json)
|
|
157
|
+
process.stdout.write("\n");
|
|
158
|
+
if (reply === null) {
|
|
159
|
+
if (opts.json) {
|
|
160
|
+
console.log(JSON.stringify({ ok: false, error: "timeout", workspaceId, threadId: channelId }, null, 2));
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
log.error(TIMEOUT_HINT);
|
|
164
|
+
}
|
|
165
|
+
process.exit(1);
|
|
166
|
+
}
|
|
167
|
+
if (opts.json) {
|
|
168
|
+
console.log(JSON.stringify({ ok: true, reply, workspaceId, threadId: channelId }, null, 2));
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
log.blank();
|
|
172
|
+
console.log(chalk.green(" agent") + chalk.dim(" ▸"));
|
|
173
|
+
console.log(reply.split("\n").map((l) => " " + l).join("\n"));
|
|
174
|
+
log.blank();
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
catch (e) {
|
|
178
|
+
if (opts.json) {
|
|
179
|
+
console.log(JSON.stringify({ ok: false, error: e.message }, null, 2));
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
renderHubError(e);
|
|
183
|
+
}
|
|
184
|
+
process.exit(1);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
// ── agent chat (interactive REPL) ────────────────────────────────────────────────
|
|
188
|
+
export async function agentChat(opts) {
|
|
189
|
+
let cfg;
|
|
190
|
+
let userId;
|
|
191
|
+
let workspaceId;
|
|
192
|
+
let channelId;
|
|
193
|
+
const timeoutMs = parseTimeout(opts.timeout);
|
|
194
|
+
try {
|
|
195
|
+
cfg = await resolveHubConfig(opts);
|
|
196
|
+
userId = await resolveUserId(cfg);
|
|
197
|
+
workspaceId = await resolveWorkspace(cfg, opts.workspace);
|
|
198
|
+
channelId = await resolveChannel(cfg, userId, workspaceId, opts);
|
|
199
|
+
}
|
|
200
|
+
catch (e) {
|
|
201
|
+
renderHubError(e);
|
|
202
|
+
process.exit(1);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
log.heading("Synap agent chat");
|
|
206
|
+
log.dim(`workspace ${workspaceId} · thread ${channelId}`);
|
|
207
|
+
log.dim("Type your message and press enter. /exit or Ctrl-D to quit.");
|
|
208
|
+
log.blank();
|
|
209
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
210
|
+
const prompt = () => rl.setPrompt(chalk.cyan("you ▸ "));
|
|
211
|
+
prompt();
|
|
212
|
+
rl.prompt();
|
|
213
|
+
rl.on("line", async (line) => {
|
|
214
|
+
const message = line.trim();
|
|
215
|
+
if (!message) {
|
|
216
|
+
rl.prompt();
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
if (message === "/exit" || message === "/quit") {
|
|
220
|
+
rl.close();
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
rl.pause();
|
|
224
|
+
process.stdout.write(chalk.dim(" waiting for agent"));
|
|
225
|
+
try {
|
|
226
|
+
const { reply } = await sendTurnAndAwaitReply(cfg, channelId, userId, message, opts.agentType, timeoutMs, () => process.stdout.write(chalk.dim(".")));
|
|
227
|
+
process.stdout.write("\n");
|
|
228
|
+
if (reply === null) {
|
|
229
|
+
log.error(TIMEOUT_HINT);
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
console.log(chalk.green("agent ▸"));
|
|
233
|
+
console.log(reply.split("\n").map((l) => " " + l).join("\n"));
|
|
234
|
+
log.blank();
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
catch (e) {
|
|
238
|
+
process.stdout.write("\n");
|
|
239
|
+
log.error(e.message);
|
|
240
|
+
}
|
|
241
|
+
rl.resume();
|
|
242
|
+
rl.prompt();
|
|
243
|
+
});
|
|
244
|
+
rl.on("close", () => {
|
|
245
|
+
log.blank();
|
|
246
|
+
log.dim("Chat ended.");
|
|
247
|
+
process.exit(0);
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=agent-chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-chat.js","sourceRoot":"","sources":["../../src/commands/agent-chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
import chalk from "chalk";
|
|
17
17
|
import ora from "ora";
|
|
18
18
|
import { resolveHubConfig, hubGet, hubPost, hubPatch } from "../lib/hub-client.js";
|
|
19
|
+
import { unwrapList } from "../lib/unwrapList.js";
|
|
19
20
|
import { log } from "../utils/logger.js";
|
|
20
21
|
// ── Persona system prompts ────────────────────────────────────────────────────
|
|
21
22
|
// Injected as the system message. The IS handles tool use via MCP.
|
|
@@ -62,10 +63,8 @@ const INTERVAL_MS = {
|
|
|
62
63
|
};
|
|
63
64
|
async function listScheduleEntities(cfg) {
|
|
64
65
|
const res = await hubGet("/entities", { q: "[agent-sched]", workspaceId: cfg.workspaceId, limit: "50" }, cfg);
|
|
65
|
-
const entities = (res
|
|
66
|
-
return
|
|
67
|
-
? entities.filter((e) => e.name?.startsWith("[agent-sched]"))
|
|
68
|
-
: [];
|
|
66
|
+
const entities = unwrapList(res, ["entities"]);
|
|
67
|
+
return entities.filter((e) => e.name?.startsWith("[agent-sched]"));
|
|
69
68
|
}
|
|
70
69
|
// ── Public: agentRun ──────────────────────────────────────────────────────────
|
|
71
70
|
export async function agentRun(opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../src/commands/agent-run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../src/commands/agent-run.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/agents.js
CHANGED
|
@@ -13,8 +13,10 @@ import ora from "ora";
|
|
|
13
13
|
import prompts from "prompts";
|
|
14
14
|
import { log } from "../utils/logger.js";
|
|
15
15
|
import { listAgents, getAgent, addAgent, removeAgent, } from "../lib/agents-config.js";
|
|
16
|
-
import { listPodProfiles } from "../lib/pod.js";
|
|
17
|
-
import { resolveHubConfig, hubGet } from "../lib/hub-client.js";
|
|
16
|
+
import { listPodProfiles, podNotFoundMessage, RESERVED_AGENT_TYPES } from "../lib/pod.js";
|
|
17
|
+
import { resolveHubConfig, hubGet, renderHubError } from "../lib/hub-client.js";
|
|
18
|
+
import { unwrapList } from "../lib/unwrapList.js";
|
|
19
|
+
import { provisionAgentKey, enrollAgentIfNeeded, configureAgentContext } from "../lib/targets.js";
|
|
18
20
|
function maskKey(key) {
|
|
19
21
|
if (key.length <= 12)
|
|
20
22
|
return key.slice(0, 4) + "...";
|
|
@@ -136,9 +138,7 @@ export async function agentsAdd(opts = {}) {
|
|
|
136
138
|
// Validate pod profile exists
|
|
137
139
|
const allProfiles = listPodProfiles();
|
|
138
140
|
if (!allProfiles.find((p) => p.name === podName)) {
|
|
139
|
-
log.error(
|
|
140
|
-
if (allProfiles.length > 0)
|
|
141
|
-
log.dim("Available: " + allProfiles.map((p) => p.name).join(", "));
|
|
141
|
+
log.error(podNotFoundMessage(podName));
|
|
142
142
|
return;
|
|
143
143
|
}
|
|
144
144
|
// Validate the key works before storing
|
|
@@ -239,8 +239,7 @@ async function resolveWorkspace(cfg, preferredWorkspaceId) {
|
|
|
239
239
|
if (preferredWorkspaceId)
|
|
240
240
|
return preferredWorkspaceId;
|
|
241
241
|
const result = await hubGet("/workspaces", {}, cfg);
|
|
242
|
-
const
|
|
243
|
-
const list = Array.isArray(workspaceList) ? workspaceList : [];
|
|
242
|
+
const list = unwrapList(result, ["workspaces"]);
|
|
244
243
|
if (list.length === 0)
|
|
245
244
|
throw new Error("No workspaces found on this pod.");
|
|
246
245
|
if (list.length === 1)
|
|
@@ -273,7 +272,7 @@ export async function agentsCreate(opts = {}) {
|
|
|
273
272
|
? allProfiles.find((p) => p.name === opts.pod)
|
|
274
273
|
: allProfiles.find((p) => p.active) ?? allProfiles[0];
|
|
275
274
|
if (!activePod) {
|
|
276
|
-
log.error(
|
|
275
|
+
log.error(podNotFoundMessage(String(opts.pod)));
|
|
277
276
|
return;
|
|
278
277
|
}
|
|
279
278
|
const cfg = await resolveHubConfig();
|
|
@@ -283,7 +282,7 @@ export async function agentsCreate(opts = {}) {
|
|
|
283
282
|
workspaceId = await resolveWorkspace(cfg, opts.workspace);
|
|
284
283
|
}
|
|
285
284
|
catch (err) {
|
|
286
|
-
|
|
285
|
+
renderHubError(err);
|
|
287
286
|
return;
|
|
288
287
|
}
|
|
289
288
|
// Resolve name
|
|
@@ -313,70 +312,110 @@ export async function agentsCreate(opts = {}) {
|
|
|
313
312
|
return;
|
|
314
313
|
agentName = inputName.trim();
|
|
315
314
|
}
|
|
316
|
-
//
|
|
315
|
+
// Determine a safe local name for this agent identity (also the fallback
|
|
316
|
+
// agentType — see CAPABILITY DELTA note below).
|
|
317
|
+
const localName = agentName
|
|
318
|
+
.toLowerCase()
|
|
319
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
320
|
+
.replace(/^-|-$/g, "") || template;
|
|
321
|
+
// Resolve agentType.
|
|
322
|
+
//
|
|
323
|
+
// CAPABILITY DELTA vs the old agentUsers.create tRPC path: that endpoint
|
|
324
|
+
// created a brand-new named agent user on every call, so one workspace
|
|
325
|
+
// could hold many distinct "custom"/"assistant" agents side by side.
|
|
326
|
+
// `/api/hub/setup/agent` (the canonical door, via provisionAgentKey) treats
|
|
327
|
+
// agentType as a POD-WIDE SINGLETON key — one agent user per agentType,
|
|
328
|
+
// full stop. To preserve distinctness for differently-NAMED agents when the
|
|
329
|
+
// caller doesn't pin --type explicitly, we fall back to a slug of the
|
|
330
|
+
// chosen name (e.g. "bob", "alice") rather than the generic template label
|
|
331
|
+
// ("custom"/"assistant"): two `agents create --name Bob` calls now
|
|
332
|
+
// idempotently resolve to the same singleton (an improvement), but "Bob"
|
|
333
|
+
// and "Alice" still get separate agent users. Passing --type explicitly
|
|
334
|
+
// still opts into deliberately sharing one singleton across names.
|
|
335
|
+
// Genuinely lost: creating two differently-named agents that intentionally
|
|
336
|
+
// share one --type (e.g. two "assistant"-type agents named differently) no
|
|
337
|
+
// longer produces two agent users — they collapse onto the one singleton.
|
|
317
338
|
let agentType = opts.type;
|
|
318
339
|
if (!agentType) {
|
|
319
|
-
agentType = template === "twin" ? "twin" :
|
|
340
|
+
agentType = template === "twin" ? "twin" : localName;
|
|
341
|
+
}
|
|
342
|
+
// GUARD — the pod treats agentType as a singleton key, so a derived slug that
|
|
343
|
+
// collides with a built-in surface's agentType (claude-code, cursor, discord,
|
|
344
|
+
// zed…) would resolve `agents create` onto THAT surface's agent — silently
|
|
345
|
+
// reusing the key a live connection depends on. Only guard the DERIVED case;
|
|
346
|
+
// passing --type explicitly is a deliberate choice. Uses the shared SSOT set
|
|
347
|
+
// from pod.ts so it can't drift from the actual surface list.
|
|
348
|
+
if (!opts.type && RESERVED_AGENT_TYPES.has(agentType)) {
|
|
349
|
+
console.error(chalk.red(`The name "${agentName}" maps to the reserved surface type "${agentType}".`));
|
|
350
|
+
log.dim(`That agent type is owned by a connect surface (e.g. \`synap connect\`). ` +
|
|
351
|
+
`Pick a different --name, or pass an explicit --type <unique> to avoid overwriting it.`);
|
|
352
|
+
process.exit(1);
|
|
353
|
+
}
|
|
354
|
+
// Resolve role — twin inherits, others default to editor.
|
|
355
|
+
// Validate up front: an invalid --role would otherwise be sent to the backend,
|
|
356
|
+
// which treats a 400 as non-fatal (warn, don't throw) — so a typo'd role would
|
|
357
|
+
// silently print as applied. Fail fast instead.
|
|
358
|
+
const VALID_ROLES = ["admin", "editor", "viewer"];
|
|
359
|
+
if (opts.role && !VALID_ROLES.includes(opts.role)) {
|
|
360
|
+
console.error(chalk.red(`Invalid --role "${opts.role}".`));
|
|
361
|
+
log.dim(`Valid roles: ${VALID_ROLES.join(", ")}.`);
|
|
362
|
+
process.exit(1);
|
|
320
363
|
}
|
|
321
|
-
// Resolve role — twin inherits, others default to editor
|
|
322
364
|
const role = template === "twin"
|
|
323
365
|
? "editor"
|
|
324
366
|
: (opts.role ?? "editor");
|
|
325
367
|
const spinner = ora(`Creating ${template} agent on pod...`).start();
|
|
326
368
|
try {
|
|
327
|
-
//
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
keyName: `${agentName} — CLI (${template})`,
|
|
339
|
-
scope: ["hub-protocol.read", "hub-protocol.write"],
|
|
340
|
-
workspaceId,
|
|
341
|
-
});
|
|
369
|
+
// Provision through the ONE canonical door (POST /api/hub/setup/agent via
|
|
370
|
+
// the shared wrapper) — same primitive every MCP target and bridge-setup
|
|
371
|
+
// use. Replaces the direct agentUsers.create + apiKeys.create tRPC calls;
|
|
372
|
+
// those tRPC procedures still exist for other consumers, the CLI just no
|
|
373
|
+
// longer calls them here.
|
|
374
|
+
const { hubApiKey, agentUserId } = await provisionAgentKey(activePod.config.podUrl, cfg.apiKey, agentType,
|
|
375
|
+
// idempotent: re-running `agents create` for the same name REUSES the
|
|
376
|
+
// existing key rather than minting a fresh one + revoking the old (which
|
|
377
|
+
// would break anything already holding it) — same reasoning bridge-setup uses.
|
|
378
|
+
{ requireApproval: false, idempotent: true });
|
|
379
|
+
await enrollAgentIfNeeded(activePod.config.podUrl, cfg.apiKey, agentUserId, workspaceId, { role });
|
|
342
380
|
spinner.succeed(`Agent created: ${chalk.bold(agentName)}`);
|
|
343
381
|
log.blank();
|
|
344
|
-
console.log(` ${"ID".padEnd(12)} ${chalk.dim(
|
|
345
|
-
console.log(` ${"Name".padEnd(12)} ${chalk.bold(
|
|
382
|
+
console.log(` ${"ID".padEnd(12)} ${chalk.dim(agentUserId)}`);
|
|
383
|
+
console.log(` ${"Name".padEnd(12)} ${chalk.bold(agentName)}`);
|
|
346
384
|
console.log(` ${"Template".padEnd(12)} ${template}`);
|
|
385
|
+
console.log(` ${"Type".padEnd(12)} ${agentType}`);
|
|
347
386
|
console.log(` ${"Role".padEnd(12)} ${role}`);
|
|
348
387
|
console.log(` ${"Workspace".padEnd(12)} ${workspaceId.slice(0, 8)}…`);
|
|
349
388
|
log.blank();
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
log.blank();
|
|
357
|
-
}
|
|
358
|
-
// Determine a safe local name for this agent identity
|
|
359
|
-
const localName = agentName
|
|
360
|
-
.toLowerCase()
|
|
361
|
-
.replace(/[^a-z0-9]+/g, "-")
|
|
362
|
-
.replace(/^-|-$/g, "");
|
|
389
|
+
console.log(chalk.yellow(" *** Save this API key — it will not be shown again ***"));
|
|
390
|
+
console.log();
|
|
391
|
+
console.log(` ${chalk.bold("API key:")} ${chalk.green(hubApiKey)}`);
|
|
392
|
+
console.log();
|
|
393
|
+
console.log(chalk.yellow(" *** End of key — store it securely now ***"));
|
|
394
|
+
log.blank();
|
|
363
395
|
// Store locally in agents config
|
|
364
396
|
const profile = {
|
|
365
397
|
podName: activePod.name,
|
|
366
|
-
apiKey:
|
|
398
|
+
apiKey: hubApiKey,
|
|
367
399
|
workspaceId,
|
|
368
400
|
label: agentName,
|
|
369
401
|
createdAt: new Date().toISOString(),
|
|
370
402
|
template,
|
|
371
|
-
agentUserId
|
|
403
|
+
agentUserId,
|
|
372
404
|
};
|
|
373
405
|
addAgent(localName, profile);
|
|
374
406
|
log.success(`Agent identity '${localName}' saved locally.`);
|
|
375
407
|
log.dim(`Use SYNAP_AGENT=${localName} to activate this identity.`);
|
|
408
|
+
// Same CONTEXT.md routing file every other provisioned agent gets.
|
|
409
|
+
try {
|
|
410
|
+
await configureAgentContext(activePod.config.podUrl, hubApiKey, agentType, agentUserId);
|
|
411
|
+
}
|
|
412
|
+
catch (err) {
|
|
413
|
+
log.warn(`Agent context wizard failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
414
|
+
}
|
|
376
415
|
}
|
|
377
416
|
catch (err) {
|
|
378
417
|
spinner.fail("Agent creation failed.");
|
|
379
|
-
|
|
418
|
+
renderHubError(err);
|
|
380
419
|
}
|
|
381
420
|
}
|
|
382
421
|
// ─── rotate-key ───────────────────────────────────────────────────────────────
|
|
@@ -415,7 +454,7 @@ export async function agentsRotateKey(nameOrId) {
|
|
|
415
454
|
const allProfiles = listPodProfiles();
|
|
416
455
|
const podProfile = allProfiles.find((p) => p.name === profile.podName);
|
|
417
456
|
if (!podProfile) {
|
|
418
|
-
log.error(
|
|
457
|
+
log.error(podNotFoundMessage(profile.podName));
|
|
419
458
|
return;
|
|
420
459
|
}
|
|
421
460
|
const spinner = ora("Finding active key and rotating...").start();
|