managed-deepagents 0.5.0-dev.78 → 0.5.0-dev.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -8
- package/dist/channels/assistant-text.js +1 -1
- package/dist/channels/assistant-text.js.map +1 -1
- package/dist/channels/binding.d.ts.map +1 -1
- package/dist/channels/binding.js +3 -1
- package/dist/channels/binding.js.map +1 -1
- package/dist/channels/index.d.ts +6 -8
- package/dist/channels/index.d.ts.map +1 -1
- package/dist/channels/index.js +5 -5
- package/dist/channels/index.js.map +1 -1
- package/dist/channels/manifest.d.ts +36 -3
- package/dist/channels/manifest.d.ts.map +1 -1
- package/dist/channels/messaging-registry.d.ts +17 -0
- package/dist/channels/messaging-registry.d.ts.map +1 -0
- package/dist/channels/messaging-registry.js +44 -0
- package/dist/channels/messaging-registry.js.map +1 -0
- package/dist/channels/registry.d.ts +4 -3
- package/dist/channels/registry.d.ts.map +1 -1
- package/dist/channels/registry.js +6 -5
- package/dist/channels/registry.js.map +1 -1
- package/dist/channels/schedule-delivery.d.ts +4 -1
- package/dist/channels/schedule-delivery.d.ts.map +1 -1
- package/dist/channels/schedule-delivery.js +4 -2
- package/dist/channels/schedule-delivery.js.map +1 -1
- package/dist/connectors/github/adapter-core.d.ts +15 -0
- package/dist/connectors/github/adapter-core.d.ts.map +1 -0
- package/dist/connectors/github/adapter-core.js +52 -0
- package/dist/connectors/github/adapter-core.js.map +1 -0
- package/dist/{channels → connectors}/github/define.d.ts +28 -58
- package/dist/connectors/github/define.d.ts.map +1 -0
- package/dist/connectors/github/define.js +72 -0
- package/dist/connectors/github/define.js.map +1 -0
- package/dist/{channels → connectors}/github/http.d.ts +4 -4
- package/dist/connectors/github/http.d.ts.map +1 -0
- package/dist/{channels → connectors}/github/http.js +13 -24
- package/dist/connectors/github/http.js.map +1 -0
- package/dist/connectors/github/index.d.ts +59 -16
- package/dist/connectors/github/index.d.ts.map +1 -1
- package/dist/connectors/github/index.js +159 -73
- package/dist/connectors/github/index.js.map +1 -1
- package/dist/connectors/github/match.d.ts +20 -0
- package/dist/connectors/github/match.d.ts.map +1 -0
- package/dist/connectors/github/match.js +41 -0
- package/dist/connectors/github/match.js.map +1 -0
- package/dist/{channels → connectors}/github/normalize.d.ts +1 -1
- package/dist/connectors/github/normalize.d.ts.map +1 -0
- package/dist/{channels → connectors}/github/normalize.js +2 -2
- package/dist/connectors/github/normalize.js.map +1 -0
- package/dist/connectors/github/sandbox.d.ts.map +1 -1
- package/dist/connectors/github/sandbox.js +30 -23
- package/dist/connectors/github/sandbox.js.map +1 -1
- package/dist/connectors/github/source-thread.d.ts.map +1 -0
- package/dist/connectors/github/source-thread.js.map +1 -0
- package/dist/{channels → connectors}/github/transport.d.ts +7 -1
- package/dist/connectors/github/transport.d.ts.map +1 -0
- package/dist/{channels → connectors}/github/transport.js +18 -4
- package/dist/connectors/github/transport.js.map +1 -0
- package/dist/connectors/langsmith/index.d.ts +29 -17
- package/dist/connectors/langsmith/index.d.ts.map +1 -1
- package/dist/connectors/langsmith/index.js +34 -29
- package/dist/connectors/langsmith/index.js.map +1 -1
- package/dist/connectors/langsmith/routes.d.ts +4 -15
- package/dist/connectors/langsmith/routes.d.ts.map +1 -1
- package/dist/connectors/langsmith/routes.js +63 -72
- package/dist/connectors/langsmith/routes.js.map +1 -1
- package/dist/connectors/mcp/index.d.ts +13 -20
- package/dist/connectors/mcp/index.d.ts.map +1 -1
- package/dist/connectors/mcp/index.js +92 -112
- package/dist/connectors/mcp/index.js.map +1 -1
- package/dist/connectors/mcp/load.d.ts.map +1 -1
- package/dist/connectors/mcp/load.js +16 -40
- package/dist/connectors/mcp/load.js.map +1 -1
- package/dist/{channels → connectors}/slack/adapter-core.d.ts +1 -1
- package/dist/connectors/slack/adapter-core.d.ts.map +1 -0
- package/dist/connectors/slack/adapter-core.js.map +1 -0
- package/dist/{channels → connectors}/slack/adapter.d.ts +3 -4
- package/dist/connectors/slack/adapter.d.ts.map +1 -0
- package/dist/{channels → connectors}/slack/adapter.js +1 -1
- package/dist/connectors/slack/adapter.js.map +1 -0
- package/dist/{channels → connectors}/slack/http.d.ts +6 -40
- package/dist/connectors/slack/http.d.ts.map +1 -0
- package/dist/{channels → connectors}/slack/http.js +22 -125
- package/dist/connectors/slack/http.js.map +1 -0
- package/dist/connectors/slack/index.d.ts +108 -0
- package/dist/connectors/slack/index.d.ts.map +1 -0
- package/dist/connectors/slack/index.js +191 -0
- package/dist/connectors/slack/index.js.map +1 -0
- package/dist/{channels → connectors}/slack/normalize.d.ts +5 -5
- package/dist/connectors/slack/normalize.d.ts.map +1 -0
- package/dist/{channels → connectors}/slack/normalize.js +21 -20
- package/dist/connectors/slack/normalize.js.map +1 -0
- package/dist/connectors/slack/source-thread.d.ts.map +1 -0
- package/dist/connectors/slack/source-thread.js.map +1 -0
- package/dist/{channels → connectors}/slack/transport.d.ts +1 -1
- package/dist/connectors/slack/transport.d.ts.map +1 -0
- package/dist/{channels → connectors}/slack/transport.js +4 -3
- package/dist/connectors/slack/transport.js.map +1 -0
- package/dist/connectors/tool-selection.d.ts +31 -0
- package/dist/connectors/tool-selection.d.ts.map +1 -0
- package/dist/connectors/tool-selection.js +54 -0
- package/dist/connectors/tool-selection.js.map +1 -0
- package/dist/connectors/toolserver/catalog.d.ts +134 -0
- package/dist/connectors/toolserver/catalog.d.ts.map +1 -0
- package/dist/connectors/toolserver/catalog.js +74 -0
- package/dist/connectors/toolserver/catalog.js.map +1 -0
- package/dist/connectors/toolserver/index.d.ts +119 -0
- package/dist/connectors/toolserver/index.d.ts.map +1 -0
- package/dist/connectors/toolserver/index.js +150 -0
- package/dist/connectors/toolserver/index.js.map +1 -0
- package/dist/connectors/toolserver/load.d.ts +55 -0
- package/dist/connectors/toolserver/load.d.ts.map +1 -0
- package/dist/connectors/toolserver/load.js +162 -0
- package/dist/connectors/toolserver/load.js.map +1 -0
- package/dist/extension.d.ts +77 -0
- package/dist/extension.d.ts.map +1 -0
- package/dist/extension.js +127 -0
- package/dist/extension.js.map +1 -0
- package/dist/identity/claims.d.ts +18 -0
- package/dist/identity/claims.d.ts.map +1 -0
- package/dist/identity/claims.js +37 -0
- package/dist/identity/claims.js.map +1 -0
- package/dist/identity/connect-inference.d.ts +28 -0
- package/dist/identity/connect-inference.d.ts.map +1 -0
- package/dist/identity/connect-inference.js +39 -0
- package/dist/identity/connect-inference.js.map +1 -0
- package/dist/identity/connect-provider-types.d.ts +23 -6
- package/dist/identity/connect-provider-types.d.ts.map +1 -1
- package/dist/identity/connect-provider-types.js +3 -1
- package/dist/identity/connect-provider-types.js.map +1 -1
- package/dist/identity/connect-provider.d.ts +9 -4
- package/dist/identity/connect-provider.d.ts.map +1 -1
- package/dist/identity/connect-provider.js +19 -9
- package/dist/identity/connect-provider.js.map +1 -1
- package/dist/identity/credential-resolvers.d.ts +33 -0
- package/dist/identity/credential-resolvers.d.ts.map +1 -0
- package/dist/identity/credential-resolvers.js +62 -0
- package/dist/identity/credential-resolvers.js.map +1 -0
- package/dist/identity/github/connect-http.d.ts +3 -3
- package/dist/identity/github/connect-http.d.ts.map +1 -1
- package/dist/identity/github/connect-http.js +21 -13
- package/dist/identity/github/connect-http.js.map +1 -1
- package/dist/identity/github/credentials-store.d.ts +10 -10
- package/dist/identity/github/credentials-store.d.ts.map +1 -1
- package/dist/identity/github/credentials-store.js +40 -43
- package/dist/identity/github/credentials-store.js.map +1 -1
- package/dist/identity/github/credentials.d.ts +16 -13
- package/dist/identity/github/credentials.d.ts.map +1 -1
- package/dist/identity/github/credentials.js +43 -23
- package/dist/identity/github/credentials.js.map +1 -1
- package/dist/identity/github/index.d.ts +2 -3
- package/dist/identity/github/index.d.ts.map +1 -1
- package/dist/identity/github/index.js +1 -2
- package/dist/identity/github/index.js.map +1 -1
- package/dist/identity/github/oauth.d.ts +3 -3
- package/dist/identity/github/oauth.d.ts.map +1 -1
- package/dist/identity/github/oauth.js +10 -9
- package/dist/identity/github/oauth.js.map +1 -1
- package/dist/identity/index.d.ts +35 -29
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +98 -131
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/loopback.d.ts +27 -2
- package/dist/identity/loopback.d.ts.map +1 -1
- package/dist/identity/loopback.js +61 -8
- package/dist/identity/loopback.js.map +1 -1
- package/dist/identity/options.d.ts +90 -0
- package/dist/identity/options.d.ts.map +1 -0
- package/dist/identity/options.js +171 -0
- package/dist/identity/options.js.map +1 -0
- package/dist/identity/slack/connect-http.d.ts +3 -3
- package/dist/identity/slack/connect-http.d.ts.map +1 -1
- package/dist/identity/slack/connect-http.js +22 -14
- package/dist/identity/slack/connect-http.js.map +1 -1
- package/dist/identity/slack/index.d.ts +1 -2
- package/dist/identity/slack/index.d.ts.map +1 -1
- package/dist/identity/slack/index.js +1 -2
- package/dist/identity/slack/index.js.map +1 -1
- package/dist/identity/slack/links.d.ts +15 -15
- package/dist/identity/slack/links.d.ts.map +1 -1
- package/dist/identity/slack/links.js +50 -53
- package/dist/identity/slack/links.js.map +1 -1
- package/dist/identity/slack/oauth.d.ts +2 -2
- package/dist/identity/slack/oauth.d.ts.map +1 -1
- package/dist/identity/slack/oauth.js +9 -24
- package/dist/identity/slack/oauth.js.map +1 -1
- package/dist/identity/supabase.js +9 -9
- package/dist/identity/supabase.js.map +1 -1
- package/dist/identity/types.d.ts +82 -36
- package/dist/identity/types.d.ts.map +1 -1
- package/dist/index.d.ts +11 -21
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -12
- package/dist/index.js.map +1 -1
- package/dist/ingress/index.d.ts +54 -0
- package/dist/ingress/index.d.ts.map +1 -0
- package/dist/ingress/index.js +128 -0
- package/dist/ingress/index.js.map +1 -0
- package/dist/namespaces.d.ts +76 -0
- package/dist/namespaces.d.ts.map +1 -0
- package/dist/namespaces.js +94 -0
- package/dist/namespaces.js.map +1 -0
- package/dist/runtime/auth.d.ts +18 -14
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/auth.js +88 -68
- package/dist/runtime/auth.js.map +1 -1
- package/dist/runtime/backend.d.ts +1 -1
- package/dist/runtime/backend.d.ts.map +1 -1
- package/dist/runtime/connector.d.ts +66 -23
- package/dist/runtime/connector.d.ts.map +1 -1
- package/dist/runtime/connector.js +63 -27
- package/dist/runtime/connector.js.map +1 -1
- package/dist/runtime/cors.d.ts +2 -3
- package/dist/runtime/cors.d.ts.map +1 -1
- package/dist/runtime/cors.js +2 -7
- package/dist/runtime/cors.js.map +1 -1
- package/dist/runtime/credentials.d.ts.map +1 -1
- package/dist/runtime/credentials.js +39 -14
- package/dist/runtime/credentials.js.map +1 -1
- package/dist/runtime/http.d.ts +47 -0
- package/dist/runtime/http.d.ts.map +1 -0
- package/dist/runtime/http.js +54 -0
- package/dist/runtime/http.js.map +1 -0
- package/dist/runtime/identity-http.d.ts +6 -16
- package/dist/runtime/identity-http.d.ts.map +1 -1
- package/dist/runtime/identity-http.js +71 -54
- package/dist/runtime/identity-http.js.map +1 -1
- package/dist/runtime/identity-runtime.d.ts +18 -17
- package/dist/runtime/identity-runtime.d.ts.map +1 -1
- package/dist/runtime/identity-runtime.js +55 -39
- package/dist/runtime/identity-runtime.js.map +1 -1
- package/dist/runtime/index.d.ts +77 -104
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +36 -35
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/memory/index.d.ts +1 -0
- package/dist/runtime/memory/index.d.ts.map +1 -1
- package/dist/runtime/memory/index.js +1 -0
- package/dist/runtime/memory/index.js.map +1 -1
- package/dist/runtime/memory/lazy-context-backend.d.ts +66 -0
- package/dist/runtime/memory/lazy-context-backend.d.ts.map +1 -0
- package/dist/runtime/memory/lazy-context-backend.js +154 -0
- package/dist/runtime/memory/lazy-context-backend.js.map +1 -0
- package/dist/runtime/memory/user-repo.js +3 -3
- package/dist/runtime/memory/user-repo.js.map +1 -1
- package/dist/runtime/sandbox-manager.d.ts +33 -0
- package/dist/runtime/sandbox-manager.d.ts.map +1 -1
- package/dist/runtime/sandbox-manager.js +173 -9
- package/dist/runtime/sandbox-manager.js.map +1 -1
- package/dist/runtime/sandbox-stream-retry.d.ts +16 -0
- package/dist/runtime/sandbox-stream-retry.d.ts.map +1 -0
- package/dist/runtime/sandbox-stream-retry.js +61 -0
- package/dist/runtime/sandbox-stream-retry.js.map +1 -0
- package/dist/runtime/setup-script.d.ts.map +1 -1
- package/dist/runtime/setup-script.js +4 -2
- package/dist/runtime/setup-script.js.map +1 -1
- package/dist/runtime/validated-token.d.ts +1 -1
- package/dist/runtime/validated-token.d.ts.map +1 -1
- package/dist/runtime/validated-token.js +75 -33
- package/dist/runtime/validated-token.js.map +1 -1
- package/dist/sandbox.d.ts +19 -22
- package/dist/sandbox.d.ts.map +1 -1
- package/dist/sandbox.js +20 -34
- package/dist/sandbox.js.map +1 -1
- package/dist/schedules.js +8 -9
- package/dist/schedules.js.map +1 -1
- package/package.json +18 -28
- package/dist/channels/collect.d.ts +0 -26
- package/dist/channels/collect.d.ts.map +0 -1
- package/dist/channels/collect.js +0 -42
- package/dist/channels/collect.js.map +0 -1
- package/dist/channels/github/adapter-core.d.ts +0 -6
- package/dist/channels/github/adapter-core.d.ts.map +0 -1
- package/dist/channels/github/adapter-core.js +0 -27
- package/dist/channels/github/adapter-core.js.map +0 -1
- package/dist/channels/github/adapter.d.ts +0 -16
- package/dist/channels/github/adapter.d.ts.map +0 -1
- package/dist/channels/github/adapter.js +0 -52
- package/dist/channels/github/adapter.js.map +0 -1
- package/dist/channels/github/define.d.ts.map +0 -1
- package/dist/channels/github/define.js +0 -166
- package/dist/channels/github/define.js.map +0 -1
- package/dist/channels/github/http.d.ts.map +0 -1
- package/dist/channels/github/http.js.map +0 -1
- package/dist/channels/github/index.d.ts +0 -12
- package/dist/channels/github/index.d.ts.map +0 -1
- package/dist/channels/github/index.js +0 -10
- package/dist/channels/github/index.js.map +0 -1
- package/dist/channels/github/normalize.d.ts.map +0 -1
- package/dist/channels/github/normalize.js.map +0 -1
- package/dist/channels/github/source-thread.d.ts.map +0 -1
- package/dist/channels/github/source-thread.js.map +0 -1
- package/dist/channels/github/transport.d.ts.map +0 -1
- package/dist/channels/github/transport.js.map +0 -1
- package/dist/channels/plugin.d.ts +0 -61
- package/dist/channels/plugin.d.ts.map +0 -1
- package/dist/channels/plugin.js +0 -80
- package/dist/channels/plugin.js.map +0 -1
- package/dist/channels/slack/adapter-core.d.ts.map +0 -1
- package/dist/channels/slack/adapter-core.js.map +0 -1
- package/dist/channels/slack/adapter.d.ts.map +0 -1
- package/dist/channels/slack/adapter.js.map +0 -1
- package/dist/channels/slack/define.d.ts +0 -74
- package/dist/channels/slack/define.d.ts.map +0 -1
- package/dist/channels/slack/define.js +0 -160
- package/dist/channels/slack/define.js.map +0 -1
- package/dist/channels/slack/http.d.ts.map +0 -1
- package/dist/channels/slack/http.js.map +0 -1
- package/dist/channels/slack/index.d.ts +0 -18
- package/dist/channels/slack/index.d.ts.map +0 -1
- package/dist/channels/slack/index.js +0 -13
- package/dist/channels/slack/index.js.map +0 -1
- package/dist/channels/slack/normalize.d.ts.map +0 -1
- package/dist/channels/slack/normalize.js.map +0 -1
- package/dist/channels/slack/source-thread.d.ts.map +0 -1
- package/dist/channels/slack/source-thread.js.map +0 -1
- package/dist/channels/slack/transport.d.ts.map +0 -1
- package/dist/channels/slack/transport.js.map +0 -1
- /package/dist/{channels → connectors}/github/source-thread.d.ts +0 -0
- /package/dist/{channels → connectors}/github/source-thread.js +0 -0
- /package/dist/{channels → connectors}/slack/adapter-core.js +0 -0
- /package/dist/{channels → connectors}/slack/source-thread.d.ts +0 -0
- /package/dist/{channels → connectors}/slack/source-thread.js +0 -0
package/README.md
CHANGED
|
@@ -54,6 +54,16 @@ cd my-agent
|
|
|
54
54
|
npm install
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
+
`mda init` can shape the project up front — `--instructions "..."` (or
|
|
58
|
+
`--instructions-file <path>`) writes the system prompt, `--scope <boundary>`
|
|
59
|
+
declares who may call the deployment and how runs are isolated, `--model <spec>` picks the model, and
|
|
60
|
+
`--no-sandbox` / `--no-evals` leave parts out. Nothing prompts, so this is also
|
|
61
|
+
the command to hand a coding agent or a CI script rather than having it write a
|
|
62
|
+
project layout from memory.
|
|
63
|
+
|
|
64
|
+
`mda init my-agent --interactive` hands the build to the Deep Agent builder
|
|
65
|
+
instead, which interviews you in your terminal.
|
|
66
|
+
|
|
57
67
|
## Define an Agent
|
|
58
68
|
|
|
59
69
|
Create an `agent.ts` that exports a named `agent` definition:
|
|
@@ -72,7 +82,7 @@ export const agent = defineDeepAgent({
|
|
|
72
82
|
|
|
73
83
|
`defineDeepAgent` requires a static `name` (LangGraph assistant id and default LangSmith deployment name) and otherwise accepts the [`createDeepAgent`](https://reference.langchain.com/javascript/deepagents/agent/createDeepAgent) configuration surface minus the managed keys: `backend`, `store`, `checkpointer`, `memory`, `skills`, and `systemPrompt`. Those are provided by the managed runtime when your agent is deployed. Write the system prompt in `instructions.md` next to `agent.ts`; the CLI embeds it at deploy time.
|
|
74
84
|
|
|
75
|
-
On deploy, Context Hub stores harness files (`instructions.md`, `skills/**`) plus a shared agent memory template and optional `org-memory/**` in the deployment Hub repo. When identity scopes memory to
|
|
85
|
+
On deploy, Context Hub stores harness files (`instructions.md`, `skills/**`) plus a shared agent memory template and optional `org-memory/**` in the deployment Hub repo. When identity scopes memory to a user or organization, the runtime opens a **dedicated Hub repo per caller** (lazy-created) and mounts it at `/memories/user/`; shared `agent` memory still remounts a path in the deployment repo. Hot memory (`/memories/user/AGENTS.md`) is injected every turn. Optional org facts mount read-only at `/memories/org/`. Deploy never overwrites existing memories.
|
|
76
86
|
|
|
77
87
|
## Project Shape
|
|
78
88
|
|
|
@@ -122,10 +132,9 @@ enables the sandbox when that declaration is present — delete `sandbox/` to op
|
|
|
122
132
|
out:
|
|
123
133
|
|
|
124
134
|
```ts
|
|
125
|
-
import {
|
|
126
|
-
import { defineSandbox } from "managed-deepagents";
|
|
135
|
+
import { sandboxes } from "managed-deepagents";
|
|
127
136
|
|
|
128
|
-
export const sandbox =
|
|
137
|
+
export const sandbox = sandboxes.langsmith({
|
|
129
138
|
scope: "thread",
|
|
130
139
|
idleTtlSeconds: 600,
|
|
131
140
|
});
|
|
@@ -138,13 +147,13 @@ lifecycle.
|
|
|
138
147
|
## MCP Connectors
|
|
139
148
|
|
|
140
149
|
Add `connectors/mcp.ts` to attach MCP servers. The file must export a named
|
|
141
|
-
`
|
|
150
|
+
`connector`. By default, MDA exposes every tool loaded from each declared
|
|
142
151
|
server:
|
|
143
152
|
|
|
144
153
|
```ts
|
|
145
|
-
import {
|
|
154
|
+
import { connectors } from "managed-deepagents";
|
|
146
155
|
|
|
147
|
-
export const
|
|
156
|
+
export const connector = connectors.mcp({
|
|
148
157
|
mcpServers: {
|
|
149
158
|
langchainDocs: {
|
|
150
159
|
transport: "http",
|
|
@@ -192,10 +201,43 @@ Common deploy options:
|
|
|
192
201
|
|
|
193
202
|
```bash
|
|
194
203
|
mda deploy ./my-agent --name my-agent-dev --deployment-type dev
|
|
195
|
-
mda deploy ./my-agent --
|
|
204
|
+
mda deploy ./my-agent --workspace-id "$LANGCHAIN_WORKSPACE_ID"
|
|
196
205
|
mda deploy ./my-agent --no-wait
|
|
197
206
|
```
|
|
198
207
|
|
|
208
|
+
Read the deployed agent's server logs:
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
mda logs ./my-agent
|
|
212
|
+
mda logs ./my-agent --lines 200 --level error
|
|
213
|
+
mda logs ./my-agent > agent.log
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
In a terminal `mda logs` streams new output until you press Ctrl-C. When the
|
|
217
|
+
output is piped or redirected it prints the most recent lines (1000 by default)
|
|
218
|
+
and exits.
|
|
219
|
+
|
|
220
|
+
Tear it down again:
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
mda delete ./my-agent
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
`mda delete` (alias `mda destroy`) removes the LangSmith deployment, the tracing
|
|
227
|
+
project created alongside it, the deployment's Context Hub repo including the
|
|
228
|
+
per-user and per-organization memory repos beneath it, and the managed sandboxes the
|
|
229
|
+
deployment created. It asks for confirmation first; pass `--yes` to skip the
|
|
230
|
+
prompt in scripts. Agent memory and thread history are not recoverable
|
|
231
|
+
afterwards.
|
|
232
|
+
|
|
233
|
+
Sandboxes are matched by name: the runtime names each one
|
|
234
|
+
`{deployment}--{digest}`, which also lets a restarted deployment re-adopt its
|
|
235
|
+
existing sandbox instead of stranding it. The digest covers the sandbox scope
|
|
236
|
+
plus how it was provisioned, so editing `setup.sh` or switching snapshots gives
|
|
237
|
+
the next run a fresh sandbox instead of one built from the previous recipe.
|
|
238
|
+
Sandboxes created before this behavior existed are unnamed and are left to
|
|
239
|
+
LangSmith's idle-stop and retention window.
|
|
240
|
+
|
|
199
241
|
Before deploying, make sure `LANGSMITH_API_KEY` and your model provider key
|
|
200
242
|
such as `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` are available in the project
|
|
201
243
|
`.env`, the process environment, or LangSmith workspace secrets. TypeScript
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant-text.js","sourceRoot":"","sources":["../../src/channels/assistant-text.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,UAAU,oBAAoB,CAAC,KAA6B;IAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI;YAAE,SAAS;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,aAAa,CAAC,OAAgB;IACrC,IAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"assistant-text.js","sourceRoot":"","sources":["../../src/channels/assistant-text.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,UAAU,oBAAoB,CAAC,KAA6B;IAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI;YAAE,SAAS;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,aAAa,CAAC,OAAgB;IACrC,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACpD,IAAI,CAAC;QACH,OAAO,0BAA0B,CAC/B,OAA2D,CAC5D,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/channels/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/channels/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE/E,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD,2FAA2F;AAC3F,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAKzD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAExD;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,gBAAgB,GAAE,CAChB,QAAQ,EAAE,MAAM,KACb,gBAAgB,GAAG,SAA4B,GACnD,cAAc,GAAG,SAAS,CAiC5B"}
|
package/dist/channels/binding.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* source provider matches — clients cannot invent a channel surface.
|
|
7
7
|
*/
|
|
8
8
|
import { createRuntimeChannel } from "./runtime.js";
|
|
9
|
+
import { messagingTransportForName } from "./messaging-registry.js";
|
|
9
10
|
import { getChannelAdapter } from "./registry.js";
|
|
10
11
|
/** Env var holding the Slack bot token for Phase 1 single-workspace installs. */
|
|
11
12
|
export const SLACK_BOT_TOKEN_ENV = "SLACK_BOT_TOKEN";
|
|
@@ -42,7 +43,8 @@ export function resolveRuntimeChannel(configurable, transportFactory = defaultTr
|
|
|
42
43
|
sourceProvider !== binding.provider) {
|
|
43
44
|
return undefined;
|
|
44
45
|
}
|
|
45
|
-
const transport =
|
|
46
|
+
const transport = messagingTransportForName(binding.name) ??
|
|
47
|
+
transportFactory(binding.provider);
|
|
46
48
|
if (!transport)
|
|
47
49
|
return undefined;
|
|
48
50
|
const deliveryId = binding.deliveryId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/channels/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD,iFAAiF;AACjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAErD,2FAA2F;AAC3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,sFAAsF;AACtF,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAmB,CAAC;AAWzD,MAAM,UAAU,eAAe,CAAC,UAAkB;IAChD,qBAAqB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,qBAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,OAAO,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,YAAiD,EACjD,gBAAgB,GAEoB,gBAAgB;IAEpD,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,IAAI,GAAG,YAAY,CAAC,mBAEb,CAAC;IACd,MAAM,cAAc,GAAG,IAAI,EAAE,mBAAmB,CAAC;IACjD,MAAM,OAAO,GAAG,YAAY,CAAC,mBAAmB,CAEnC,CAAC;IACd,IACE,CAAC,OAAO;QACR,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAChC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;QACtC,cAAc,KAAK,OAAO,CAAC,QAAQ,EACnC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/channels/binding.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD,iFAAiF;AACjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAErD,2FAA2F;AAC3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,sFAAsF;AACtF,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAmB,CAAC;AAWzD,MAAM,UAAU,eAAe,CAAC,UAAkB;IAChD,qBAAqB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,qBAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,OAAO,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,YAAiD,EACjD,gBAAgB,GAEoB,gBAAgB;IAEpD,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,IAAI,GAAG,YAAY,CAAC,mBAEb,CAAC;IACd,MAAM,cAAc,GAAG,IAAI,EAAE,mBAAmB,CAAC;IACjD,MAAM,OAAO,GAAG,YAAY,CAAC,mBAAmB,CAEnC,CAAC;IACd,IACE,CAAC,OAAO;QACR,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAChC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;QACtC,cAAc,KAAK,OAAO,CAAC,QAAQ,EACnC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GACb,yBAAyB,CAAC,OAAO,CAAC,IAAI,CAAC;QACvC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,OAAO,oBAAoB,CAAC;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS;QACT,aAAa,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC;KACjD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB;IACxC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACnE,CAAC"}
|
package/dist/channels/index.d.ts
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Channel
|
|
2
|
+
* Channel capability contracts — the named messaging surface a connector may
|
|
3
|
+
* contribute (`runtime.channel`, schedule `deliverTo`).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* `
|
|
5
|
+
* Authoring lives on `connectors.*`. Provider verify/normalize/transport code
|
|
6
|
+
* stays under `channels/{slack,github}/` as internal implementation details.
|
|
6
7
|
*/
|
|
7
8
|
export type { ChannelAddress, ChannelAttachmentRef, ChannelCapabilities, ChannelDestination, ChannelErrorCode, ChannelEvent, ChannelInboundMessage, ChannelMessage, ChannelMessageUpdate, ChannelNativePayload, JsonValue, PostedChannelMessage, RuntimeChannel, } from "./types.js";
|
|
8
9
|
export { normalizeChannelDestination } from "./types.js";
|
|
9
10
|
export { CHANNEL_ERROR_CODES, ChannelError } from "./errors.js";
|
|
10
|
-
export type { ChannelManifest, JsonObject } from "./manifest.js";
|
|
11
|
-
export { CHANNEL_BRAND, defineChannel, isChannelDefinition, manifestsFromChannelDefinitions, } from "./plugin.js";
|
|
12
|
-
export type { ChannelDefinition, ChannelManifestBody, DefineChannelOptions, } from "./plugin.js";
|
|
11
|
+
export type { ChannelAppIdentity, ChannelConnectionManifest, ChannelManifest, ChannelManifestBody, JsonObject, } from "./manifest.js";
|
|
13
12
|
export { getChannelAdapter, registerChannelAdapter, trustedChannelSourceProviders, } from "./registry.js";
|
|
14
13
|
export type { ChannelHttpContext, ChannelProviderAdapter } from "./registry.js";
|
|
15
|
-
export { collectChannels } from "./collect.js";
|
|
16
|
-
export type { ChannelModuleEntry } from "./collect.js";
|
|
17
14
|
export { createRuntimeChannel } from "./runtime.js";
|
|
18
15
|
export type { ChannelTransport, CreateRuntimeChannelOptions, } from "./runtime.js";
|
|
19
16
|
export { CHANNEL_BINDING_KEY, SLACK_BOT_TOKEN_ENV, clearFinalPosted, markFinalPosted, resolveRuntimeChannel, wasDeliveryFinalPosted, } from "./binding.js";
|
|
@@ -23,4 +20,5 @@ export type { DeliveryRecord, DeliveryStatus } from "./store.js";
|
|
|
23
20
|
export { extractAssistantText } from "./assistant-text.js";
|
|
24
21
|
export { addressFromDeliverTo, createScheduleDeliveryMiddleware, deliverScheduleResult, isTrustedScheduleDeliveryRun, readScheduleDeliverTo, } from "./schedule-delivery.js";
|
|
25
22
|
export type { DeliverScheduleResultInput, NormalizedScheduleDeliverTo, } from "./schedule-delivery.js";
|
|
23
|
+
export { clearMessagingRegistry, messagingTransportForName, registerConnectorMessaging, trustedMessagingProviders, } from "./messaging-registry.js";
|
|
26
24
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/channels/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/channels/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,EACpB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,YAAY,EACV,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACnB,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,YAAY,EACV,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,oBAAoB,EACpB,gCAAgC,EAChC,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC"}
|
package/dist/channels/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Channel
|
|
2
|
+
* Channel capability contracts — the named messaging surface a connector may
|
|
3
|
+
* contribute (`runtime.channel`, schedule `deliverTo`).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* `
|
|
5
|
+
* Authoring lives on `connectors.*`. Provider verify/normalize/transport code
|
|
6
|
+
* stays under `channels/{slack,github}/` as internal implementation details.
|
|
6
7
|
*/
|
|
7
8
|
export { normalizeChannelDestination } from "./types.js";
|
|
8
9
|
export { CHANNEL_ERROR_CODES, ChannelError } from "./errors.js";
|
|
9
|
-
export { CHANNEL_BRAND, defineChannel, isChannelDefinition, manifestsFromChannelDefinitions, } from "./plugin.js";
|
|
10
10
|
export { getChannelAdapter, registerChannelAdapter, trustedChannelSourceProviders, } from "./registry.js";
|
|
11
|
-
export { collectChannels } from "./collect.js";
|
|
12
11
|
export { createRuntimeChannel } from "./runtime.js";
|
|
13
12
|
export { CHANNEL_BINDING_KEY, SLACK_BOT_TOKEN_ENV, clearFinalPosted, markFinalPosted, resolveRuntimeChannel, wasDeliveryFinalPosted, } from "./binding.js";
|
|
14
13
|
export { InMemoryChannelStore } from "./store.js";
|
|
15
14
|
export { extractAssistantText } from "./assistant-text.js";
|
|
16
15
|
export { addressFromDeliverTo, createScheduleDeliveryMiddleware, deliverScheduleResult, isTrustedScheduleDeliveryRun, readScheduleDeliverTo, } from "./schedule-delivery.js";
|
|
16
|
+
export { clearMessagingRegistry, messagingTransportForName, registerConnectorMessaging, trustedMessagingProviders, } from "./messaging-registry.js";
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/channels/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/channels/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiBH,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAUhE,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAMpD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,oBAAoB,EACpB,gCAAgC,EAChC,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC"}
|
|
@@ -10,12 +10,41 @@ export type JsonObject = {
|
|
|
10
10
|
readonly [key: string]: JsonValue;
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* How the provider-side app presents itself where users meet it.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* Every field is optional because deploy can name the app after the deployment
|
|
16
|
+
* and let the provider supply the rest.
|
|
17
|
+
*/
|
|
18
|
+
export interface ChannelAppIdentity {
|
|
19
|
+
/** Display name, defaulting to the deployment's name. */
|
|
20
|
+
name?: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
/** Project-relative path to a 512×512 PNG. */
|
|
23
|
+
icon?: string;
|
|
24
|
+
/** `#RRGGBB`. */
|
|
25
|
+
backgroundColor?: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* A provider connection deploy arranges before events can reach the channel.
|
|
29
|
+
*
|
|
30
|
+
* The channel declares what it needs; deploy fulfils it against the workspace's
|
|
31
|
+
* LangSmith connection and writes the resulting credentials onto the deployment
|
|
32
|
+
* as secrets. The runtime only ever sees those secrets, which is what keeps a
|
|
33
|
+
* channel out of the business of holding provider credentials.
|
|
34
|
+
*/
|
|
35
|
+
export interface ChannelConnectionManifest {
|
|
36
|
+
/** Connection deploy knows how to arrange. */
|
|
37
|
+
kind: "slack_app";
|
|
38
|
+
app?: ChannelAppIdentity;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Deploy/runtime requirements a connector may declare (messaging / ingress).
|
|
42
|
+
*
|
|
43
|
+
* Emitted by the CLI as `connector-manifests.json` for connectors that
|
|
44
|
+
* implement `requirements(name)`.
|
|
16
45
|
*/
|
|
17
46
|
export interface ChannelManifest {
|
|
18
|
-
/** File-derived
|
|
47
|
+
/** File-derived connector name (`connectors/{name}` → `/connectors/{name}/events`). */
|
|
19
48
|
name: string;
|
|
20
49
|
/** Adapter key used by the runtime registry. */
|
|
21
50
|
provider: string;
|
|
@@ -28,7 +57,11 @@ export interface ChannelManifest {
|
|
|
28
57
|
requiredPermissions: readonly string[];
|
|
29
58
|
/** Env vars deploy must ensure when this channel is present. */
|
|
30
59
|
requiredEnv: readonly string[];
|
|
60
|
+
/** Provider connection deploy arranges, and whose secrets it then injects. */
|
|
61
|
+
connection?: ChannelConnectionManifest;
|
|
31
62
|
/** Opaque-to-core provider config (Slack triggers/filters, GitHub filters, …). */
|
|
32
63
|
providerConfig: JsonObject;
|
|
33
64
|
}
|
|
65
|
+
/** Author-supplied requirements fields; `name` / `provider` are stamped by the factory. */
|
|
66
|
+
export type ChannelManifestBody = Omit<ChannelManifest, "name" | "provider">;
|
|
34
67
|
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/channels/manifest.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,2EAA2E;AAC3E,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE/D
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/channels/manifest.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,2EAA2E;AAC3E,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,yBAAyB;IACxC,8CAA8C;IAC9C,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,kBAAkB,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,gEAAgE;IAChE,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,kFAAkF;IAClF,cAAc,EAAE,UAAU,CAAC;CAC5B;AAED,2FAA2F;AAC3F,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Name → messaging transport registry.
|
|
3
|
+
*
|
|
4
|
+
* Filled when connectors are mounted / collected. `resolveRuntimeChannel` and
|
|
5
|
+
* schedule delivery look up transports by connector file-stem name.
|
|
6
|
+
*/
|
|
7
|
+
import type { ChannelTransport } from "./runtime.js";
|
|
8
|
+
import type { Connector } from "../runtime/connector.js";
|
|
9
|
+
/** Register messaging factories from collected connectors. */
|
|
10
|
+
export declare function registerConnectorMessaging(connectors: readonly Connector[]): void;
|
|
11
|
+
/** Clear the registry (tests). */
|
|
12
|
+
export declare function clearMessagingRegistry(): void;
|
|
13
|
+
/** Build a transport for a connector name. */
|
|
14
|
+
export declare function messagingTransportForName(name: string, env?: NodeJS.ProcessEnv): ChannelTransport | undefined;
|
|
15
|
+
/** Providers allowed as trusted source-provider stamps. */
|
|
16
|
+
export declare function trustedMessagingProviders(): ReadonlySet<string>;
|
|
17
|
+
//# sourceMappingURL=messaging-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging-registry.d.ts","sourceRoot":"","sources":["../../src/channels/messaging-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AASzD,8DAA8D;AAC9D,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,SAAS,SAAS,EAAE,GAC/B,IAAI,CAmBN;AAED,kCAAkC;AAClC,wBAAgB,sBAAsB,IAAI,IAAI,CAK7C;AAED,8CAA8C;AAC9C,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,gBAAgB,GAAG,SAAS,CAE9B;AAED,2DAA2D;AAC3D,wBAAgB,yBAAyB,IAAI,WAAW,CAAC,MAAM,CAAC,CAE/D"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Name → messaging transport registry.
|
|
3
|
+
*
|
|
4
|
+
* Filled when connectors are mounted / collected. `resolveRuntimeChannel` and
|
|
5
|
+
* schedule delivery look up transports by connector file-stem name.
|
|
6
|
+
*/
|
|
7
|
+
const byName = new Map();
|
|
8
|
+
const trustedProviders = new Set(["slack", "github"]);
|
|
9
|
+
/** Register messaging factories from collected connectors. */
|
|
10
|
+
export function registerConnectorMessaging(connectors) {
|
|
11
|
+
for (const connector of connectors) {
|
|
12
|
+
if (!connector.name || typeof connector.messaging !== "function") {
|
|
13
|
+
continue;
|
|
14
|
+
}
|
|
15
|
+
const messaging = connector.messaging.bind(connector);
|
|
16
|
+
byName.set(connector.name, messaging);
|
|
17
|
+
if (typeof connector.kind === "string" && connector.kind.trim()) {
|
|
18
|
+
trustedProviders.add(connector.kind);
|
|
19
|
+
}
|
|
20
|
+
// Also register by kind for binding.provider lookups during transport build.
|
|
21
|
+
const requirements = typeof connector.requirements === "function"
|
|
22
|
+
? connector.requirements(connector.name)
|
|
23
|
+
: undefined;
|
|
24
|
+
if (requirements?.provider) {
|
|
25
|
+
trustedProviders.add(requirements.provider);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/** Clear the registry (tests). */
|
|
30
|
+
export function clearMessagingRegistry() {
|
|
31
|
+
byName.clear();
|
|
32
|
+
trustedProviders.clear();
|
|
33
|
+
trustedProviders.add("slack");
|
|
34
|
+
trustedProviders.add("github");
|
|
35
|
+
}
|
|
36
|
+
/** Build a transport for a connector name. */
|
|
37
|
+
export function messagingTransportForName(name, env = process.env) {
|
|
38
|
+
return byName.get(name)?.(env);
|
|
39
|
+
}
|
|
40
|
+
/** Providers allowed as trusted source-provider stamps. */
|
|
41
|
+
export function trustedMessagingProviders() {
|
|
42
|
+
return trustedProviders;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=messaging-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging-registry.js","sourceRoot":"","sources":["../../src/channels/messaging-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;AACnD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE9D,8DAA8D;AAC9D,MAAM,UAAU,0BAA0B,CACxC,UAAgC;IAEhC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;YACjE,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACtC,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAChE,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,6EAA6E;QAC7E,MAAM,YAAY,GAChB,OAAO,SAAS,CAAC,YAAY,KAAK,UAAU;YAC1C,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC;YACxC,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,YAAY,EAAE,QAAQ,EAAE,CAAC;YAC3B,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;AACH,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,sBAAsB;IACpC,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,gBAAgB,CAAC,KAAK,EAAE,CAAC;IACzB,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9B,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,yBAAyB,CACvC,IAAY,EACZ,GAAG,GAAsB,OAAO,CAAC,GAAG;IAEpC,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,yBAAyB;IACvC,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Channel provider adapter registry.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* lookup so
|
|
4
|
+
* Used as a fallback transport lookup for `runtime.channel` when the
|
|
5
|
+
* name→messaging registry has not been filled. First-party adapters register
|
|
6
|
+
* lazily on first lookup so connector modules can import adapter-core without
|
|
7
|
+
* a load cycle.
|
|
7
8
|
*/
|
|
8
9
|
import { registerChannelAdapter, trustedChannelSourceProviders } from "./registry-store.js";
|
|
9
10
|
import type { ChannelHttpContext, ChannelProviderAdapter } from "./registry-types.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/channels/registry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/channels/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAEL,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,CAAC;AAWjE,4DAA4D;AAC5D,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,GACf,sBAAsB,GAAG,SAAS,CAGpC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Channel provider adapter registry.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* lookup so
|
|
4
|
+
* Used as a fallback transport lookup for `runtime.channel` when the
|
|
5
|
+
* name→messaging registry has not been filled. First-party adapters register
|
|
6
|
+
* lazily on first lookup so connector modules can import adapter-core without
|
|
7
|
+
* a load cycle.
|
|
7
8
|
*/
|
|
8
|
-
import { githubChannelAdapter } from "
|
|
9
|
+
import { githubChannelAdapter } from "../connectors/github/adapter-core.js";
|
|
10
|
+
import { slackChannelAdapter } from "../connectors/slack/adapter-core.js";
|
|
9
11
|
import { getChannelAdapter as getStoredAdapter, registerChannelAdapter, trustedChannelSourceProviders, } from "./registry-store.js";
|
|
10
|
-
import { slackChannelAdapter } from "./slack/adapter-core.js";
|
|
11
12
|
export { registerChannelAdapter, trustedChannelSourceProviders };
|
|
12
13
|
let builtinsRegistered = false;
|
|
13
14
|
function ensureBuiltinAdapters() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/channels/registry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/channels/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EACL,iBAAiB,IAAI,gBAAgB,EACrC,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,CAAC;AAEjE,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAE/B,SAAS,qBAAqB;IAC5B,IAAI,kBAAkB;QAAE,OAAO;IAC/B,kBAAkB,GAAG,IAAI,CAAC;IAC1B,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAC5C,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;AAC/C,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,iBAAiB,CAC/B,QAAgB;IAEhB,qBAAqB,EAAE,CAAC;IACxB,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -64,8 +64,11 @@ export declare function isTrustedScheduleDeliveryRun(configurable: Record<string
|
|
|
64
64
|
* Prefer explicit `runtime.configurable`, then ambient — not
|
|
65
65
|
* `resolveRuntimeConfigurable`, which can discard a present `mda_schedule` when
|
|
66
66
|
* the bag lacks `langgraph_auth_user`.
|
|
67
|
+
*
|
|
68
|
+
* Production always calls this with no options; `options.deliver` is test-only.
|
|
67
69
|
*/
|
|
68
70
|
export declare function createScheduleDeliveryMiddleware(options?: {
|
|
69
|
-
deliver
|
|
71
|
+
/** Override deliver implementation (tests). */
|
|
72
|
+
_deliver?: typeof deliverScheduleResult;
|
|
70
73
|
}): ManagedMiddleware;
|
|
71
74
|
//# sourceMappingURL=schedule-delivery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-delivery.d.ts","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAK1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,6DAA6D;AAC7D,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,MAAM;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GAC3E,IAAI,CAEN;AAED,uDAAuD;AACvD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EACE;QAAE,IAAI,EAAE,uBAAuB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,2BAA2B,GAAG,SAAS,CAoDzC;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,2BAA2B,CAAC,IAAI,CAAC,GACpC,cAAc,CAKhB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,2BAA2B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAgD1C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,OAAO,CAcT;AAmBD
|
|
1
|
+
{"version":3,"file":"schedule-delivery.d.ts","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAK1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,6DAA6D;AAC7D,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,MAAM;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GAC3E,IAAI,CAEN;AAED,uDAAuD;AACvD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EACE;QAAE,IAAI,EAAE,uBAAuB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,2BAA2B,GAAG,SAAS,CAoDzC;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,2BAA2B,CAAC,IAAI,CAAC,GACpC,cAAc,CAKhB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,2BAA2B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAgD1C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,OAAO,CAcT;AAmBD;;;;;;;;;GASG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,CAAC,EAAE;IACzD,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,qBAAqB,CAAC;CACzC,GAAG,iBAAiB,CAyBpB"}
|
|
@@ -13,7 +13,7 @@ import { getConfig } from "@langchain/langgraph";
|
|
|
13
13
|
import { configurableFromRuntime, resolveAmbientConfigurable, } from "../runtime/identity-runtime.js";
|
|
14
14
|
import { extractAssistantText } from "./assistant-text.js";
|
|
15
15
|
import { SLACK_BOT_TOKEN_ENV } from "./binding.js";
|
|
16
|
-
import { createSlackWebApiTransport } from "
|
|
16
|
+
import { createSlackWebApiTransport } from "../connectors/slack/transport.js";
|
|
17
17
|
let scheduleMetadataForTests;
|
|
18
18
|
/** Override LangGraph run metadata resolution. Test-only. */
|
|
19
19
|
export function setScheduleMetadataForTests(loader) {
|
|
@@ -166,9 +166,11 @@ function resolveScheduleMetadata() {
|
|
|
166
166
|
* Prefer explicit `runtime.configurable`, then ambient — not
|
|
167
167
|
* `resolveRuntimeConfigurable`, which can discard a present `mda_schedule` when
|
|
168
168
|
* the bag lacks `langgraph_auth_user`.
|
|
169
|
+
*
|
|
170
|
+
* Production always calls this with no options; `options.deliver` is test-only.
|
|
169
171
|
*/
|
|
170
172
|
export function createScheduleDeliveryMiddleware(options) {
|
|
171
|
-
const deliver = options?.
|
|
173
|
+
const deliver = options?._deliver ?? deliverScheduleResult;
|
|
172
174
|
return {
|
|
173
175
|
name: "mda-schedule-delivery",
|
|
174
176
|
async afterAgent(state, runtime) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-delivery.js","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EACL,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"schedule-delivery.js","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub adapter object without imports from the connector factory (avoids load cycles).
|
|
3
|
+
*/
|
|
4
|
+
import type { ChannelManifest } from "../../channels/manifest.js";
|
|
5
|
+
import type { ChannelProviderAdapter } from "../../channels/registry-types.js";
|
|
6
|
+
import type { RequiredGitHubChannelConfig } from "./define.js";
|
|
7
|
+
/**
|
|
8
|
+
* Rebuild a config shell from the JSON manifest when the live module is absent.
|
|
9
|
+
*
|
|
10
|
+
* Manifest events have no `prompt` — callers that only have the manifest
|
|
11
|
+
* cannot produce agent task text. Prefer passing the live definition.
|
|
12
|
+
*/
|
|
13
|
+
export declare function githubConfigFromManifest(manifest: ChannelManifest): RequiredGitHubChannelConfig;
|
|
14
|
+
export declare const githubChannelAdapter: ChannelProviderAdapter;
|
|
15
|
+
//# sourceMappingURL=adapter-core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-core.d.ts","sourceRoot":"","sources":["../../../src/connectors/github/adapter-core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAc,MAAM,4BAA4B,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAEV,2BAA2B,EAE5B,MAAM,aAAa,CAAC;AAIrB;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,eAAe,GACxB,2BAA2B,CA4B7B;AAED,eAAO,MAAM,oBAAoB,EAAE,sBAoBlC,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub adapter object without imports from the connector factory (avoids load cycles).
|
|
3
|
+
*/
|
|
4
|
+
import { handleGitHubEventsRequest } from "./http.js";
|
|
5
|
+
import { transportFromEnv } from "./transport.js";
|
|
6
|
+
/**
|
|
7
|
+
* Rebuild a config shell from the JSON manifest when the live module is absent.
|
|
8
|
+
*
|
|
9
|
+
* Manifest events have no `prompt` — callers that only have the manifest
|
|
10
|
+
* cannot produce agent task text. Prefer passing the live definition.
|
|
11
|
+
*/
|
|
12
|
+
export function githubConfigFromManifest(manifest) {
|
|
13
|
+
const cfg = manifest.providerConfig;
|
|
14
|
+
const rawEvents = cfg.events;
|
|
15
|
+
if (!Array.isArray(rawEvents) || rawEvents.length === 0) {
|
|
16
|
+
return { events: [] };
|
|
17
|
+
}
|
|
18
|
+
const events = rawEvents.map((entry, index) => {
|
|
19
|
+
const h = entry;
|
|
20
|
+
const on = h.on;
|
|
21
|
+
const autoReply = typeof h.autoReply === "boolean" ? h.autoReply : true;
|
|
22
|
+
const repositories = Array.isArray(h.repositories)
|
|
23
|
+
? h.repositories
|
|
24
|
+
: undefined;
|
|
25
|
+
return {
|
|
26
|
+
on,
|
|
27
|
+
repositories,
|
|
28
|
+
autoReply,
|
|
29
|
+
prompt: () => {
|
|
30
|
+
throw new Error(`GitHub connector "${manifest.name}" events[${index}] has no live ` +
|
|
31
|
+
"`prompt` callback; ensure the connector module is loaded.");
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
return { events };
|
|
36
|
+
}
|
|
37
|
+
export const githubChannelAdapter = {
|
|
38
|
+
provider: "github",
|
|
39
|
+
async handleEventsRequest(request, ctx) {
|
|
40
|
+
const definition = ctx.definition;
|
|
41
|
+
return handleGitHubEventsRequest(request, {
|
|
42
|
+
name: ctx.name,
|
|
43
|
+
config: definition?.config ?? githubConfigFromManifest(ctx.manifest),
|
|
44
|
+
definition: ctx.definition,
|
|
45
|
+
rawBody: ctx.rawBody,
|
|
46
|
+
});
|
|
47
|
+
},
|
|
48
|
+
createTransport(env) {
|
|
49
|
+
return transportFromEnv(env);
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=adapter-core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-core.js","sourceRoot":"","sources":["../../../src/connectors/github/adapter-core.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAAyB;IAEzB,MAAM,GAAG,GAAG,QAAQ,CAAC,cAA4B,CAAC;IAClD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IACD,MAAM,MAAM,GAAmC,SAAS,CAAC,GAAG,CAC1D,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACf,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,MAAM,EAAE,GAAG,CAAC,CAAC,EAA0B,CAAC;QACxC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;YAChD,CAAC,CAAE,CAAC,CAAC,YAAyB;YAC9B,CAAC,CAAC,SAAS,CAAC;QACd,OAAO;YACL,EAAE;YACF,YAAY;YACZ,SAAS;YACT,MAAM,EAAE,GAAG,EAAE;gBACX,MAAM,IAAI,KAAK,CACb,qBAAqB,QAAQ,CAAC,IAAI,YAAY,KAAK,gBAAgB;oBACjE,2DAA2D,CAC9D,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,QAAQ,EAAE,QAAQ;IAElB,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,GAAG;QACpC,MAAM,UAAU,GAAG,GAAG,CAAC,UAEV,CAAC;QACd,OAAO,yBAAyB,CAAC,OAAO,EAAE;YACxC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM,EAAE,UAAU,EAAE,MAAM,IAAI,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC;YACpE,UAAU,EAAE,GAAG,CAAC,UAEE;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,GAAG;QACjB,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF,CAAC"}
|