@lleverage-ai/agent-sdk 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +2321 -0
- package/dist/agent.d.ts +52 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +2122 -0
- package/dist/agent.js.map +1 -0
- package/dist/backend.d.ts +378 -0
- package/dist/backend.d.ts.map +1 -0
- package/dist/backend.js +71 -0
- package/dist/backend.js.map +1 -0
- package/dist/backends/composite.d.ts +258 -0
- package/dist/backends/composite.d.ts.map +1 -0
- package/dist/backends/composite.js +437 -0
- package/dist/backends/composite.js.map +1 -0
- package/dist/backends/filesystem.d.ts +268 -0
- package/dist/backends/filesystem.d.ts.map +1 -0
- package/dist/backends/filesystem.js +623 -0
- package/dist/backends/filesystem.js.map +1 -0
- package/dist/backends/index.d.ts +14 -0
- package/dist/backends/index.d.ts.map +1 -0
- package/dist/backends/index.js +14 -0
- package/dist/backends/index.js.map +1 -0
- package/dist/backends/persistent.d.ts +312 -0
- package/dist/backends/persistent.d.ts.map +1 -0
- package/dist/backends/persistent.js +519 -0
- package/dist/backends/persistent.js.map +1 -0
- package/dist/backends/sandbox.d.ts +315 -0
- package/dist/backends/sandbox.d.ts.map +1 -0
- package/dist/backends/sandbox.js +490 -0
- package/dist/backends/sandbox.js.map +1 -0
- package/dist/backends/state.d.ts +225 -0
- package/dist/backends/state.d.ts.map +1 -0
- package/dist/backends/state.js +396 -0
- package/dist/backends/state.js.map +1 -0
- package/dist/checkpointer/file-saver.d.ts +182 -0
- package/dist/checkpointer/file-saver.d.ts.map +1 -0
- package/dist/checkpointer/file-saver.js +298 -0
- package/dist/checkpointer/file-saver.js.map +1 -0
- package/dist/checkpointer/index.d.ts +40 -0
- package/dist/checkpointer/index.d.ts.map +1 -0
- package/dist/checkpointer/index.js +40 -0
- package/dist/checkpointer/index.js.map +1 -0
- package/dist/checkpointer/kv-saver.d.ts +142 -0
- package/dist/checkpointer/kv-saver.d.ts.map +1 -0
- package/dist/checkpointer/kv-saver.js +176 -0
- package/dist/checkpointer/kv-saver.js.map +1 -0
- package/dist/checkpointer/memory-saver.d.ts +158 -0
- package/dist/checkpointer/memory-saver.d.ts.map +1 -0
- package/dist/checkpointer/memory-saver.js +222 -0
- package/dist/checkpointer/memory-saver.js.map +1 -0
- package/dist/checkpointer/types.d.ts +353 -0
- package/dist/checkpointer/types.d.ts.map +1 -0
- package/dist/checkpointer/types.js +159 -0
- package/dist/checkpointer/types.js.map +1 -0
- package/dist/context-manager.d.ts +627 -0
- package/dist/context-manager.d.ts.map +1 -0
- package/dist/context-manager.js +1039 -0
- package/dist/context-manager.js.map +1 -0
- package/dist/context.d.ts +57 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +76 -0
- package/dist/context.js.map +1 -0
- package/dist/errors/index.d.ts +611 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +1023 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/generation-helpers.d.ts +126 -0
- package/dist/generation-helpers.d.ts.map +1 -0
- package/dist/generation-helpers.js +181 -0
- package/dist/generation-helpers.js.map +1 -0
- package/dist/hooks/audit.d.ts +210 -0
- package/dist/hooks/audit.d.ts.map +1 -0
- package/dist/hooks/audit.js +305 -0
- package/dist/hooks/audit.js.map +1 -0
- package/dist/hooks/cache.d.ts +180 -0
- package/dist/hooks/cache.d.ts.map +1 -0
- package/dist/hooks/cache.js +273 -0
- package/dist/hooks/cache.js.map +1 -0
- package/dist/hooks/guardrails.d.ts +145 -0
- package/dist/hooks/guardrails.d.ts.map +1 -0
- package/dist/hooks/guardrails.js +326 -0
- package/dist/hooks/guardrails.js.map +1 -0
- package/dist/hooks/index.d.ts +18 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +32 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/logging.d.ts +193 -0
- package/dist/hooks/logging.d.ts.map +1 -0
- package/dist/hooks/logging.js +345 -0
- package/dist/hooks/logging.js.map +1 -0
- package/dist/hooks/parallel-guardrails.d.ts +268 -0
- package/dist/hooks/parallel-guardrails.d.ts.map +1 -0
- package/dist/hooks/parallel-guardrails.js +416 -0
- package/dist/hooks/parallel-guardrails.js.map +1 -0
- package/dist/hooks/rate-limit.d.ts +305 -0
- package/dist/hooks/rate-limit.d.ts.map +1 -0
- package/dist/hooks/rate-limit.js +372 -0
- package/dist/hooks/rate-limit.js.map +1 -0
- package/dist/hooks/retry.d.ts +144 -0
- package/dist/hooks/retry.d.ts.map +1 -0
- package/dist/hooks/retry.js +210 -0
- package/dist/hooks/retry.js.map +1 -0
- package/dist/hooks/secrets.d.ts +174 -0
- package/dist/hooks/secrets.d.ts.map +1 -0
- package/dist/hooks/secrets.js +306 -0
- package/dist/hooks/secrets.js.map +1 -0
- package/dist/hooks.d.ts +229 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +352 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.d.ts +97 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +182 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/env.d.ts +25 -0
- package/dist/mcp/env.d.ts.map +1 -0
- package/dist/mcp/env.js +18 -0
- package/dist/mcp/env.js.map +1 -0
- package/dist/mcp/index.d.ts +16 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +17 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/manager.d.ts +184 -0
- package/dist/mcp/manager.d.ts.map +1 -0
- package/dist/mcp/manager.js +446 -0
- package/dist/mcp/manager.js.map +1 -0
- package/dist/mcp/types.d.ts +58 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +7 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/mcp/validation.d.ts +119 -0
- package/dist/mcp/validation.d.ts.map +1 -0
- package/dist/mcp/validation.js +407 -0
- package/dist/mcp/validation.js.map +1 -0
- package/dist/mcp/virtual-server.d.ts +78 -0
- package/dist/mcp/virtual-server.d.ts.map +1 -0
- package/dist/mcp/virtual-server.js +137 -0
- package/dist/mcp/virtual-server.js.map +1 -0
- package/dist/memory/filesystem-store.d.ts +217 -0
- package/dist/memory/filesystem-store.d.ts.map +1 -0
- package/dist/memory/filesystem-store.js +343 -0
- package/dist/memory/filesystem-store.js.map +1 -0
- package/dist/memory/index.d.ts +46 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +46 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/loader.d.ts +396 -0
- package/dist/memory/loader.d.ts.map +1 -0
- package/dist/memory/loader.js +419 -0
- package/dist/memory/loader.js.map +1 -0
- package/dist/memory/permissions.d.ts +282 -0
- package/dist/memory/permissions.d.ts.map +1 -0
- package/dist/memory/permissions.js +297 -0
- package/dist/memory/permissions.js.map +1 -0
- package/dist/memory/rules.d.ts +249 -0
- package/dist/memory/rules.d.ts.map +1 -0
- package/dist/memory/rules.js +362 -0
- package/dist/memory/rules.js.map +1 -0
- package/dist/memory/store.d.ts +286 -0
- package/dist/memory/store.d.ts.map +1 -0
- package/dist/memory/store.js +263 -0
- package/dist/memory/store.js.map +1 -0
- package/dist/middleware/apply.d.ts +73 -0
- package/dist/middleware/apply.d.ts.map +1 -0
- package/dist/middleware/apply.js +219 -0
- package/dist/middleware/apply.js.map +1 -0
- package/dist/middleware/context.d.ts +33 -0
- package/dist/middleware/context.d.ts.map +1 -0
- package/dist/middleware/context.js +176 -0
- package/dist/middleware/context.js.map +1 -0
- package/dist/middleware/index.d.ts +31 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +32 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/logging.d.ts +137 -0
- package/dist/middleware/logging.d.ts.map +1 -0
- package/dist/middleware/logging.js +374 -0
- package/dist/middleware/logging.js.map +1 -0
- package/dist/middleware/types.d.ts +183 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/middleware/types.js +11 -0
- package/dist/middleware/types.js.map +1 -0
- package/dist/observability/events.d.ts +183 -0
- package/dist/observability/events.d.ts.map +1 -0
- package/dist/observability/events.js +305 -0
- package/dist/observability/events.js.map +1 -0
- package/dist/observability/index.d.ts +55 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +87 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/logger.d.ts +318 -0
- package/dist/observability/logger.d.ts.map +1 -0
- package/dist/observability/logger.js +436 -0
- package/dist/observability/logger.js.map +1 -0
- package/dist/observability/metrics.d.ts +341 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/metrics.js +490 -0
- package/dist/observability/metrics.js.map +1 -0
- package/dist/observability/preset.d.ts +161 -0
- package/dist/observability/preset.d.ts.map +1 -0
- package/dist/observability/preset.js +133 -0
- package/dist/observability/preset.js.map +1 -0
- package/dist/observability/streaming.d.ts +113 -0
- package/dist/observability/streaming.d.ts.map +1 -0
- package/dist/observability/streaming.js +114 -0
- package/dist/observability/streaming.js.map +1 -0
- package/dist/observability/tracing.d.ts +378 -0
- package/dist/observability/tracing.d.ts.map +1 -0
- package/dist/observability/tracing.js +539 -0
- package/dist/observability/tracing.js.map +1 -0
- package/dist/plugins.d.ts +55 -0
- package/dist/plugins.d.ts.map +1 -0
- package/dist/plugins.js +63 -0
- package/dist/plugins.js.map +1 -0
- package/dist/presets/index.d.ts +7 -0
- package/dist/presets/index.d.ts.map +1 -0
- package/dist/presets/index.js +7 -0
- package/dist/presets/index.js.map +1 -0
- package/dist/presets/production.d.ts +262 -0
- package/dist/presets/production.d.ts.map +1 -0
- package/dist/presets/production.js +295 -0
- package/dist/presets/production.js.map +1 -0
- package/dist/security/index.d.ts +179 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +323 -0
- package/dist/security/index.js.map +1 -0
- package/dist/subagents/advanced.d.ts +413 -0
- package/dist/subagents/advanced.d.ts.map +1 -0
- package/dist/subagents/advanced.js +396 -0
- package/dist/subagents/advanced.js.map +1 -0
- package/dist/subagents/index.d.ts +14 -0
- package/dist/subagents/index.d.ts.map +1 -0
- package/dist/subagents/index.js +15 -0
- package/dist/subagents/index.js.map +1 -0
- package/dist/subagents.d.ts +73 -0
- package/dist/subagents.d.ts.map +1 -0
- package/dist/subagents.js +213 -0
- package/dist/subagents.js.map +1 -0
- package/dist/task-store/file-store.d.ts +76 -0
- package/dist/task-store/file-store.d.ts.map +1 -0
- package/dist/task-store/file-store.js +190 -0
- package/dist/task-store/file-store.js.map +1 -0
- package/dist/task-store/index.d.ts +11 -0
- package/dist/task-store/index.d.ts.map +1 -0
- package/dist/task-store/index.js +10 -0
- package/dist/task-store/index.js.map +1 -0
- package/dist/task-store/kv-store.d.ts +140 -0
- package/dist/task-store/kv-store.d.ts.map +1 -0
- package/dist/task-store/kv-store.js +169 -0
- package/dist/task-store/kv-store.js.map +1 -0
- package/dist/task-store/memory-store.d.ts +66 -0
- package/dist/task-store/memory-store.d.ts.map +1 -0
- package/dist/task-store/memory-store.js +125 -0
- package/dist/task-store/memory-store.js.map +1 -0
- package/dist/task-store/types.d.ts +235 -0
- package/dist/task-store/types.d.ts.map +1 -0
- package/dist/task-store/types.js +110 -0
- package/dist/task-store/types.js.map +1 -0
- package/dist/testing/assertions.d.ts +401 -0
- package/dist/testing/assertions.d.ts.map +1 -0
- package/dist/testing/assertions.js +630 -0
- package/dist/testing/assertions.js.map +1 -0
- package/dist/testing/index.d.ts +343 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +360 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-agent.d.ts +214 -0
- package/dist/testing/mock-agent.d.ts.map +1 -0
- package/dist/testing/mock-agent.js +448 -0
- package/dist/testing/mock-agent.js.map +1 -0
- package/dist/testing/recorder.d.ts +288 -0
- package/dist/testing/recorder.d.ts.map +1 -0
- package/dist/testing/recorder.js +499 -0
- package/dist/testing/recorder.js.map +1 -0
- package/dist/tools/execute.d.ts +104 -0
- package/dist/tools/execute.d.ts.map +1 -0
- package/dist/tools/execute.js +191 -0
- package/dist/tools/execute.js.map +1 -0
- package/dist/tools/factory.d.ts +260 -0
- package/dist/tools/factory.d.ts.map +1 -0
- package/dist/tools/factory.js +241 -0
- package/dist/tools/factory.js.map +1 -0
- package/dist/tools/filesystem.d.ts +215 -0
- package/dist/tools/filesystem.d.ts.map +1 -0
- package/dist/tools/filesystem.js +311 -0
- package/dist/tools/filesystem.js.map +1 -0
- package/dist/tools/index.d.ts +33 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +33 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/search.d.ts +59 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +94 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/skills.d.ts +354 -0
- package/dist/tools/skills.d.ts.map +1 -0
- package/dist/tools/skills.js +413 -0
- package/dist/tools/skills.js.map +1 -0
- package/dist/tools/task.d.ts +272 -0
- package/dist/tools/task.d.ts.map +1 -0
- package/dist/tools/task.js +521 -0
- package/dist/tools/task.js.map +1 -0
- package/dist/tools/todos.d.ts +131 -0
- package/dist/tools/todos.d.ts.map +1 -0
- package/dist/tools/todos.js +120 -0
- package/dist/tools/todos.js.map +1 -0
- package/dist/tools/tool-registry.d.ts +424 -0
- package/dist/tools/tool-registry.d.ts.map +1 -0
- package/dist/tools/tool-registry.js +607 -0
- package/dist/tools/tool-registry.js.map +1 -0
- package/dist/tools/user-interaction.d.ts +116 -0
- package/dist/tools/user-interaction.d.ts.map +1 -0
- package/dist/tools/user-interaction.js +147 -0
- package/dist/tools/user-interaction.js.map +1 -0
- package/dist/tools/utils.d.ts +124 -0
- package/dist/tools/utils.d.ts.map +1 -0
- package/dist/tools/utils.js +189 -0
- package/dist/tools/utils.js.map +1 -0
- package/dist/tools.d.ts +74 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +73 -0
- package/dist/tools.js.map +1 -0
- package/dist/types.d.ts +2421 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +55 -0
- package/dist/types.js.map +1 -0
- package/package.json +81 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAEH,aAAa;AACb,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAazC,UAAU;AACV,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAY3D,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,YAAY,GACb,MAAM,qBAAqB,CAAC;AAkB7B,sBAAsB;AACtB,OAAO,EACL,uBAAuB;AACvB,oBAAoB;AACpB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,iBAAiB;AACjB,aAAa;AACb,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,WAAW;AACX,sBAAsB;AACtB,kBAAkB;AAClB,eAAe;AACf,WAAW,EACX,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA4B7C,wBAAwB;AACxB,OAAO,EACL,UAAU;AACV,mBAAmB;AACnB,UAAU,EACV,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe;AACf,yBAAyB;AACzB,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,6BAA6B,EAC7B,cAAc,EACd,WAAW,EACX,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACb,eAAe;AACf,uBAAuB;AACvB,YAAY,EACZ,cAAc;AACd,YAAY;AACZ,SAAS,GACV,MAAM,mBAAmB,CAAC;AA+B3B,iDAAiD;AACjD,OAAO,EACL,uBAAuB,EACvB,sBAAsB;AACtB,cAAc;AACd,gBAAgB;AAChB,6BAA6B;AAC7B,6BAA6B;AAC7B,cAAc;AACd,gBAAgB,EAChB,+BAA+B;AAC/B,mBAAmB;AACnB,qBAAqB,EACrB,wBAAwB;AACxB,gBAAgB;AAChB,kBAAkB,IAAI,4BAA4B,EAClD,uBAAuB,EACvB,4BAA4B,EAC5B,2BAA2B,EAC3B,uBAAuB,EACvB,+BAA+B;AAC/B,mBAAmB;AACnB,oBAAoB,EACpB,oBAAoB;AACpB,cAAc;AACd,gBAAgB;AAChB,uBAAuB;AACvB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,IAAI,sBAAsB;AAC5C,uCAAuC;AACvC,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,EACX,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,QAAQ;AACR,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,GAChB,MAAM,YAAY,CAAC;AASpB,+BAA+B;AAC/B,OAAO,EACL,aAAa,EACb,aAAa,EACb,uBAAuB,EACvB,iBAAiB,EACjB,UAAU,EACV,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAqBxB,gBAAgB;AAChB,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B;AAC3B,mBAAmB;AACnB,yBAAyB;AACzB,mBAAmB;AACnB,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB;AACzB,oBAAoB;AACpB,eAAe,EACf,aAAa,EACb,qBAAqB;AACrB,mBAAmB;AACnB,kBAAkB;AAClB,oBAAoB;AACpB,4BAA4B,EAC5B,eAAe,EACf,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAQ3B,oBAAoB;AACpB,OAAO;AACL,wBAAwB;AACxB,eAAe;AACf,sBAAsB;AACtB,uBAAuB;AACvB,2CAA2C;AAC3C,uBAAuB,EACvB,UAAU,EACV,eAAe,EACf,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAgD/B,wBAAwB;AACxB,uBAAuB;AACvB,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,0BAA0B,EAC1B,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,YAAY,EACZ,2BAA2B,EAC3B,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,6BAA6B,EAC7B,6BAA6B,EAC7B,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB;AACrB,UAAU;AACV,YAAY;AACZ,UAAU;AACV,uBAAuB,EACvB,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,qBAAqB,EACrB,sBAAsB;AACtB,SAAS;AACT,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,gBAAgB;AAChB,SAAS;AACT,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAO5C,gDAAgD;AAChD,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,qCAAqC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAiB1D,qBAAqB;AACrB,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,eAAe,EACf,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAUhD,2CAA2C;AAC3C,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAqC/B,aAAa;AACb,OAAO,EACL,iBAAiB,EACjB,mBAAmB;AACnB,yBAAyB;AACzB,yBAAyB;AACzB,YAAY;AACZ,cAAc;AACd,uCAAuC;AACvC,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,yBAAyB,EACzB,cAAc,EACd,cAAc;AACd,mBAAmB;AACnB,cAAc;AACd,iCAAiC;AACjC,qBAAqB,EACrB,mBAAmB,EACnB,eAAe;AACf,kCAAkC;AAClC,cAAc;AACd,YAAY;AACZ,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB;AACnB,8BAA8B;AAC9B,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,mBAAmB;AACnB,sCAAsC;AACtC,aAAa;AACb,wCAAwC;AACxC,YAAY,EACZ,SAAS,EACT,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,8CAA8C;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAkFzC,iDAAiD;AACjD,OAAO;AACL,qBAAqB;AACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable expansion utilities for MCP configuration.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Expands environment variables in a string using ${VAR} syntax.
|
|
8
|
+
*
|
|
9
|
+
* @param value - String or object containing strings to expand
|
|
10
|
+
* @returns String or object with expanded values
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* // String expansion
|
|
15
|
+
* expandEnvVars("Bearer ${API_TOKEN}") // "Bearer actual-value"
|
|
16
|
+
*
|
|
17
|
+
* // Object expansion
|
|
18
|
+
* expandEnvVars({ token: "${TOKEN}" }) // { token: "actual-value" }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @category MCP
|
|
22
|
+
*/
|
|
23
|
+
export declare function expandEnvVars(value: string): string;
|
|
24
|
+
export declare function expandEnvVars(value: Record<string, string>): Record<string, string>;
|
|
25
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/mcp/env.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;AACrD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
package/dist/mcp/env.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable expansion utilities for MCP configuration.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
6
|
+
export function expandEnvVars(value) {
|
|
7
|
+
if (typeof value === "string") {
|
|
8
|
+
return value.replace(/\$\{([^}]+)\}/g, (_, varName) => {
|
|
9
|
+
return process.env[varName] ?? "";
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
const result = {};
|
|
13
|
+
for (const [key, val] of Object.entries(value)) {
|
|
14
|
+
result[key] = expandEnvVars(val);
|
|
15
|
+
}
|
|
16
|
+
return result;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/mcp/env.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH,MAAM,UAAU,aAAa,CAC3B,KAAsC;IAEtC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;YACpD,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP (Model Context Protocol) integration utilities.
|
|
3
|
+
*
|
|
4
|
+
* This module provides tools for working with MCP servers and plugins,
|
|
5
|
+
* including virtual servers for inline plugin tools.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
export { expandEnvVars } from "./env.js";
|
|
10
|
+
export type { MCPManagerOptions } from "./manager.js";
|
|
11
|
+
export { MCPManager } from "./manager.js";
|
|
12
|
+
export type { MCPToolLoadResult, MCPToolMetadata, MCPToolSource, } from "./types.js";
|
|
13
|
+
export type { JsonSchemaToZodResult } from "./validation.js";
|
|
14
|
+
export { isSchemaEmpty, jsonSchemaToZod, MCPInputValidationError, MCPInputValidator, } from "./validation.js";
|
|
15
|
+
export { VirtualMCPServer } from "./virtual-server.js";
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAG7D,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP (Model Context Protocol) integration utilities.
|
|
3
|
+
*
|
|
4
|
+
* This module provides tools for working with MCP servers and plugins,
|
|
5
|
+
* including virtual servers for inline plugin tools.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
// Environment utilities
|
|
10
|
+
export { expandEnvVars } from "./env.js";
|
|
11
|
+
// Manager
|
|
12
|
+
export { MCPManager } from "./manager.js";
|
|
13
|
+
// Validation
|
|
14
|
+
export { isSchemaEmpty, jsonSchemaToZod, MCPInputValidationError, MCPInputValidator, } from "./validation.js";
|
|
15
|
+
// Virtual Server
|
|
16
|
+
export { VirtualMCPServer } from "./virtual-server.js";
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,wBAAwB;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,UAAU;AACV,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAS1C,aAAa;AACb,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,iBAAiB;AACjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Manager for unified tool management.
|
|
3
|
+
*
|
|
4
|
+
* Handles both inline plugin tools (via VirtualMCPServer) and
|
|
5
|
+
* external MCP servers (via official SDK).
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
import { type ToolSet } from "ai";
|
|
10
|
+
import type { MCPServerConfig } from "../types.js";
|
|
11
|
+
import type { MCPToolLoadResult, MCPToolMetadata } from "./types.js";
|
|
12
|
+
/**
|
|
13
|
+
* Options for MCPManager initialization.
|
|
14
|
+
* @category MCP
|
|
15
|
+
*/
|
|
16
|
+
export interface MCPManagerOptions {
|
|
17
|
+
/** Hook callbacks for MCP lifecycle events */
|
|
18
|
+
onConnectionFailed?: (input: {
|
|
19
|
+
server_name: string;
|
|
20
|
+
config: MCPServerConfig;
|
|
21
|
+
error: Error;
|
|
22
|
+
}) => void | Promise<void>;
|
|
23
|
+
onConnectionRestored?: (input: {
|
|
24
|
+
server_name: string;
|
|
25
|
+
tool_count: number;
|
|
26
|
+
}) => void | Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Manages MCP tool registration, discovery, and execution.
|
|
30
|
+
*
|
|
31
|
+
* Provides a unified interface for tools from:
|
|
32
|
+
* - Inline plugin definitions (wrapped as virtual MCP servers)
|
|
33
|
+
* - External MCP servers (stdio, http, sse)
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const manager = new MCPManager();
|
|
38
|
+
*
|
|
39
|
+
* // Register inline plugin tools
|
|
40
|
+
* manager.registerPluginTools("my-plugin", { myTool: tool(...) });
|
|
41
|
+
*
|
|
42
|
+
* // Connect to external MCP server
|
|
43
|
+
* await manager.connectServer("github", {
|
|
44
|
+
* type: "stdio",
|
|
45
|
+
* command: "npx",
|
|
46
|
+
* args: ["-y", "@modelcontextprotocol/server-github"],
|
|
47
|
+
* env: { GITHUB_TOKEN: "${GITHUB_TOKEN}" },
|
|
48
|
+
* });
|
|
49
|
+
*
|
|
50
|
+
* // Search and use tools
|
|
51
|
+
* const tools = manager.searchTools("github issues");
|
|
52
|
+
* const toolSet = manager.getToolSet();
|
|
53
|
+
* ```
|
|
54
|
+
*
|
|
55
|
+
* @category MCP
|
|
56
|
+
*/
|
|
57
|
+
export declare class MCPManager {
|
|
58
|
+
/** Virtual servers for inline plugin tools */
|
|
59
|
+
private virtualServers;
|
|
60
|
+
/** Connected external MCP clients */
|
|
61
|
+
private externalClients;
|
|
62
|
+
/** Cached tool metadata for search */
|
|
63
|
+
private toolMetadataCache;
|
|
64
|
+
/** Whether cache needs refresh */
|
|
65
|
+
private cacheInvalid;
|
|
66
|
+
/** Set of tools that are loaded and available for use */
|
|
67
|
+
private loadedTools;
|
|
68
|
+
/** Track which servers have auto-load enabled */
|
|
69
|
+
private autoLoadServers;
|
|
70
|
+
/** Connection failure callback */
|
|
71
|
+
private onConnectionFailed?;
|
|
72
|
+
/** Connection restored callback */
|
|
73
|
+
private onConnectionRestored?;
|
|
74
|
+
/** Input validator for MCP tools */
|
|
75
|
+
private validator;
|
|
76
|
+
/**
|
|
77
|
+
* Creates a new MCP manager.
|
|
78
|
+
*
|
|
79
|
+
* @param options - Configuration options including hook callbacks
|
|
80
|
+
*/
|
|
81
|
+
constructor(options?: MCPManagerOptions);
|
|
82
|
+
/**
|
|
83
|
+
* Connect to an external MCP server.
|
|
84
|
+
*
|
|
85
|
+
* @param name - Unique name for this server (used in tool naming)
|
|
86
|
+
* @param config - Server connection configuration
|
|
87
|
+
* @throws If server with same name is already connected
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```typescript
|
|
91
|
+
* // Connect to stdio server
|
|
92
|
+
* await manager.connectServer("github", {
|
|
93
|
+
* type: "stdio",
|
|
94
|
+
* command: "npx",
|
|
95
|
+
* args: ["-y", "@modelcontextprotocol/server-github"],
|
|
96
|
+
* env: { GITHUB_TOKEN: "${GITHUB_TOKEN}" },
|
|
97
|
+
* });
|
|
98
|
+
*
|
|
99
|
+
* // Connect to HTTP server
|
|
100
|
+
* await manager.connectServer("docs", {
|
|
101
|
+
* type: "http",
|
|
102
|
+
* url: "https://docs.example.com/mcp",
|
|
103
|
+
* headers: { Authorization: "Bearer ${API_TOKEN}" },
|
|
104
|
+
* });
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
107
|
+
connectServer(name: string, config: MCPServerConfig): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Create transport for MCP connection.
|
|
110
|
+
* @internal
|
|
111
|
+
*/
|
|
112
|
+
private createTransport;
|
|
113
|
+
/**
|
|
114
|
+
* Register inline plugin tools as a virtual MCP server.
|
|
115
|
+
*
|
|
116
|
+
* Tools will be exposed with naming pattern `mcp__<pluginName>__<toolName>`.
|
|
117
|
+
*
|
|
118
|
+
* @param pluginName - Plugin/server name
|
|
119
|
+
* @param tools - AI SDK tools to register
|
|
120
|
+
* @param options - Registration options
|
|
121
|
+
*/
|
|
122
|
+
registerPluginTools(pluginName: string, tools: ToolSet, options?: {
|
|
123
|
+
autoLoad?: boolean;
|
|
124
|
+
}): void;
|
|
125
|
+
/**
|
|
126
|
+
* List all available tools from all sources.
|
|
127
|
+
*
|
|
128
|
+
* @returns Array of tool metadata
|
|
129
|
+
*/
|
|
130
|
+
listTools(): MCPToolMetadata[];
|
|
131
|
+
/**
|
|
132
|
+
* Search tools by query string.
|
|
133
|
+
*
|
|
134
|
+
* Matches against tool name and description (case-insensitive).
|
|
135
|
+
*
|
|
136
|
+
* @param query - Search query
|
|
137
|
+
* @param limit - Maximum results to return
|
|
138
|
+
* @returns Matching tool metadata
|
|
139
|
+
*/
|
|
140
|
+
searchTools(query: string, limit?: number): MCPToolMetadata[];
|
|
141
|
+
/**
|
|
142
|
+
* Get AI SDK compatible ToolSet.
|
|
143
|
+
*
|
|
144
|
+
* Only returns tools that have been loaded (either via autoLoad or explicit loadTools call).
|
|
145
|
+
*
|
|
146
|
+
* @param filter - Optional list of tool names to include
|
|
147
|
+
* @returns ToolSet with MCP-named tools
|
|
148
|
+
*/
|
|
149
|
+
getToolSet(filter?: string[]): ToolSet;
|
|
150
|
+
/**
|
|
151
|
+
* Extract text result from MCP tool response.
|
|
152
|
+
* @internal
|
|
153
|
+
*/
|
|
154
|
+
private extractTextResult;
|
|
155
|
+
/**
|
|
156
|
+
* Create an AI SDK tool for an external MCP tool.
|
|
157
|
+
* @internal
|
|
158
|
+
*/
|
|
159
|
+
private createExternalTool;
|
|
160
|
+
/**
|
|
161
|
+
* Call a tool by its MCP name.
|
|
162
|
+
*
|
|
163
|
+
* @param mcpName - Full MCP tool name (mcp__<source>__<tool>)
|
|
164
|
+
* @param args - Tool arguments
|
|
165
|
+
* @returns Tool execution result
|
|
166
|
+
*/
|
|
167
|
+
callTool(mcpName: string, args: unknown): Promise<unknown>;
|
|
168
|
+
/**
|
|
169
|
+
* Load specific tools by name, making them available via getToolSet().
|
|
170
|
+
*
|
|
171
|
+
* @param toolNames - MCP tool names to load
|
|
172
|
+
* @returns Load result with loaded/alreadyLoaded/notFound lists
|
|
173
|
+
*/
|
|
174
|
+
loadTools(toolNames: string[]): MCPToolLoadResult;
|
|
175
|
+
/**
|
|
176
|
+
* Disconnect all external MCP servers.
|
|
177
|
+
*/
|
|
178
|
+
disconnect(): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* Refresh metadata cache if invalid.
|
|
181
|
+
*/
|
|
182
|
+
private refreshCacheIfNeeded;
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/mcp/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EAAa,KAAK,OAAO,EAAQ,MAAM,IAAI,CAAC;AACnD,OAAO,KAAK,EAEV,eAAe,EAGhB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAiB,MAAM,YAAY,CAAC;AAepF;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,eAAe,CAAC;QACxB,KAAK,EAAE,KAAK,CAAC;KACd,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC7B,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,UAAU;IACrB,8CAA8C;IAC9C,OAAO,CAAC,cAAc,CAA4C;IAElE,qCAAqC;IACrC,OAAO,CAAC,eAAe,CAA2C;IAElE,sCAAsC;IACtC,OAAO,CAAC,iBAAiB,CAAyB;IAElD,kCAAkC;IAClC,OAAO,CAAC,YAAY,CAAQ;IAE5B,yDAAyD;IACzD,OAAO,CAAC,WAAW,CAA0B;IAE7C,iDAAiD;IACjD,OAAO,CAAC,eAAe,CAA0B;IAEjD,kCAAkC;IAClC,OAAO,CAAC,kBAAkB,CAAC,CAA0C;IAErE,mCAAmC;IACnC,OAAO,CAAC,oBAAoB,CAAC,CAA4C;IAEzE,oCAAoC;IACpC,OAAO,CAAC,SAAS,CAA8C;IAE/D;;;;OAIG;gBACS,OAAO,GAAE,iBAAsB;IAK3C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAoFzE;;;OAGG;IACH,OAAO,CAAC,eAAe;IAiCvB;;;;;;;;OAQG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAO,GACnC,IAAI;IAkBP;;;;OAIG;IACH,SAAS,IAAI,eAAe,EAAE;IAK9B;;;;;;;;OAQG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,eAAe,EAAE;IAiBzD;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO;IA+BtC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAazB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;;;;OAMG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA0ChE;;;;;OAKG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,iBAAiB;IAuBjD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBjC;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAiB7B"}
|