@od-oneapp/ai-platform 0.1.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/README.md +235 -0
- package/dist/agents-base.d.mts +12 -0
- package/dist/agents-base.d.mts.map +1 -0
- package/dist/agents-base.mjs +20 -0
- package/dist/agents-base.mjs.map +1 -0
- package/dist/agents-control-flow.d.mts +115 -0
- package/dist/agents-control-flow.d.mts.map +1 -0
- package/dist/agents-control-flow.mjs +514 -0
- package/dist/agents-control-flow.mjs.map +1 -0
- package/dist/agents-coordinator.d.mts +11 -0
- package/dist/agents-coordinator.d.mts.map +1 -0
- package/dist/agents-coordinator.mjs +12 -0
- package/dist/agents-coordinator.mjs.map +1 -0
- package/dist/agents-experimental.d.mts +153 -0
- package/dist/agents-experimental.d.mts.map +1 -0
- package/dist/agents-experimental.mjs +580 -0
- package/dist/agents-experimental.mjs.map +1 -0
- package/dist/agents-fallback.d.mts +10 -0
- package/dist/agents-fallback.d.mts.map +1 -0
- package/dist/agents-fallback.mjs +15 -0
- package/dist/agents-fallback.mjs.map +1 -0
- package/dist/agents-multi-swarm.d.mts +9 -0
- package/dist/agents-multi-swarm.d.mts.map +1 -0
- package/dist/agents-multi-swarm.mjs +44 -0
- package/dist/agents-multi-swarm.mjs.map +1 -0
- package/dist/agents-multi.d.mts +10 -0
- package/dist/agents-multi.d.mts.map +1 -0
- package/dist/agents-multi.mjs +44 -0
- package/dist/agents-multi.mjs.map +1 -0
- package/dist/agents-observability.d.mts +161 -0
- package/dist/agents-observability.d.mts.map +1 -0
- package/dist/agents-observability.mjs +550 -0
- package/dist/agents-observability.mjs.map +1 -0
- package/dist/agents-patterns.d.mts +9 -0
- package/dist/agents-patterns.d.mts.map +1 -0
- package/dist/agents-patterns.mjs +18 -0
- package/dist/agents-patterns.mjs.map +1 -0
- package/dist/agents-persistence.d.mts +234 -0
- package/dist/agents-persistence.d.mts.map +1 -0
- package/dist/agents-persistence.mjs +447 -0
- package/dist/agents-persistence.mjs.map +1 -0
- package/dist/agents-triage.d.mts +11 -0
- package/dist/agents-triage.d.mts.map +1 -0
- package/dist/agents-triage.mjs +13 -0
- package/dist/agents-triage.mjs.map +1 -0
- package/dist/agents-workflows.d.mts +9 -0
- package/dist/agents-workflows.d.mts.map +1 -0
- package/dist/agents-workflows.mjs +9 -0
- package/dist/agents-workflows.mjs.map +1 -0
- package/dist/agents.d.mts +30 -0
- package/dist/agents.d.mts.map +1 -0
- package/dist/agents.mjs +50 -0
- package/dist/agents.mjs.map +1 -0
- package/dist/aggregation-8KJF1uzp.d.mts +276 -0
- package/dist/aggregation-8KJF1uzp.d.mts.map +1 -0
- package/dist/aggregation-BDop87kL.mjs +1180 -0
- package/dist/aggregation-BDop87kL.mjs.map +1 -0
- package/dist/ai-runtime-CDzQztTt.mjs +85 -0
- package/dist/ai-runtime-CDzQztTt.mjs.map +1 -0
- package/dist/ai-runtime-DIwOEc6g.d.mts +56 -0
- package/dist/ai-runtime-DIwOEc6g.d.mts.map +1 -0
- package/dist/ai-sdk-error-integration-D0GDqrM0.d.mts +553 -0
- package/dist/ai-sdk-error-integration-D0GDqrM0.d.mts.map +1 -0
- package/dist/approval-queue-BcDDQ4oQ.mjs +104 -0
- package/dist/approval-queue-BcDDQ4oQ.mjs.map +1 -0
- package/dist/approval-queue-CiKiFT9z.d.mts +21 -0
- package/dist/approval-queue-CiKiFT9z.d.mts.map +1 -0
- package/dist/audio-BzvN7r10.d.mts +79 -0
- package/dist/audio-BzvN7r10.d.mts.map +1 -0
- package/dist/audio-vBG_62ME.mjs +226 -0
- package/dist/audio-vBG_62ME.mjs.map +1 -0
- package/dist/audit-logger-Bb2JIcIk.d.mts +12 -0
- package/dist/audit-logger-Bb2JIcIk.d.mts.map +1 -0
- package/dist/audit-logger-CHIP8bRO.mjs +596 -0
- package/dist/audit-logger-CHIP8bRO.mjs.map +1 -0
- package/dist/auto-resume-BpUNbPtp.d.mts +160 -0
- package/dist/auto-resume-BpUNbPtp.d.mts.map +1 -0
- package/dist/auto-resume-BuFRNvAX.mjs +638 -0
- package/dist/auto-resume-BuFRNvAX.mjs.map +1 -0
- package/dist/budget-guard-C83KCH9V.d.mts +52 -0
- package/dist/budget-guard-C83KCH9V.d.mts.map +1 -0
- package/dist/budget-guard-d_b5rq4u.mjs +158 -0
- package/dist/budget-guard-d_b5rq4u.mjs.map +1 -0
- package/dist/budget-guard-gyhJS00s.mjs +234 -0
- package/dist/budget-guard-gyhJS00s.mjs.map +1 -0
- package/dist/buffer-BC8mvXHE.d.mts +98 -0
- package/dist/buffer-BC8mvXHE.d.mts.map +1 -0
- package/dist/buffer-CefJGbRy.mjs +289 -0
- package/dist/buffer-CefJGbRy.mjs.map +1 -0
- package/dist/caching-adapters.d.mts +5 -0
- package/dist/caching-adapters.mjs +3 -0
- package/dist/caching-strategies.d.mts +52 -0
- package/dist/caching-strategies.d.mts.map +1 -0
- package/dist/caching-strategies.mjs +703 -0
- package/dist/caching-strategies.mjs.map +1 -0
- package/dist/caching.d.mts +14 -0
- package/dist/caching.d.mts.map +1 -0
- package/dist/caching.mjs +15 -0
- package/dist/caching.mjs.map +1 -0
- package/dist/catalog.d.mts +19 -0
- package/dist/catalog.d.mts.map +1 -0
- package/dist/catalog.mjs +1114 -0
- package/dist/catalog.mjs.map +1 -0
- package/dist/chunk-CkzbjWQW.mjs +20 -0
- package/dist/circuit-breaker-DoKWPORd.mjs +262 -0
- package/dist/circuit-breaker-DoKWPORd.mjs.map +1 -0
- package/dist/circuit-breaker-Mey3E7tW.d.mts +64 -0
- package/dist/circuit-breaker-Mey3E7tW.d.mts.map +1 -0
- package/dist/citation-generator-C-9RpbHq.mjs +103 -0
- package/dist/citation-generator-C-9RpbHq.mjs.map +1 -0
- package/dist/citation-generator-CDSymDs_.d.mts +18 -0
- package/dist/citation-generator-CDSymDs_.d.mts.map +1 -0
- package/dist/client-CpacYDIE.mjs +882 -0
- package/dist/client-CpacYDIE.mjs.map +1 -0
- package/dist/client.d.mts +103 -0
- package/dist/client.d.mts.map +1 -0
- package/dist/client.mjs +470 -0
- package/dist/client.mjs.map +1 -0
- package/dist/compliance-approval-queue-DQGLojAm.mjs +172 -0
- package/dist/compliance-approval-queue-DQGLojAm.mjs.map +1 -0
- package/dist/compliance-approval-queue-IrMxFfSJ.d.mts +99 -0
- package/dist/compliance-approval-queue-IrMxFfSJ.d.mts.map +1 -0
- package/dist/compliance-wrapper-CrOMHhHN.mjs +528 -0
- package/dist/compliance-wrapper-CrOMHhHN.mjs.map +1 -0
- package/dist/conditions-DmQ6Y1Wt.mjs +179 -0
- package/dist/conditions-DmQ6Y1Wt.mjs.map +1 -0
- package/dist/conditions-zDrKfrc3.d.mts +42 -0
- package/dist/conditions-zDrKfrc3.d.mts.map +1 -0
- package/dist/console-BGMxxPZN.mjs +181 -0
- package/dist/console-BGMxxPZN.mjs.map +1 -0
- package/dist/console-DqEqZd4A.d.mts +76 -0
- package/dist/console-DqEqZd4A.d.mts.map +1 -0
- package/dist/controller-BOy3-xbC.mjs +501 -0
- package/dist/controller-BOy3-xbC.mjs.map +1 -0
- package/dist/controller-Y0NGosbJ.d.mts +104 -0
- package/dist/controller-Y0NGosbJ.d.mts.map +1 -0
- package/dist/coordinator-agent-BglqZLwo.d.mts +54 -0
- package/dist/coordinator-agent-BglqZLwo.d.mts.map +1 -0
- package/dist/coordinator-agent-WFWBRL-G.mjs +236 -0
- package/dist/coordinator-agent-WFWBRL-G.mjs.map +1 -0
- package/dist/crypto-8ABhc3TD.mjs +40 -0
- package/dist/crypto-8ABhc3TD.mjs.map +1 -0
- package/dist/environment-CSoJb0SW.mjs +255 -0
- package/dist/environment-CSoJb0SW.mjs.map +1 -0
- package/dist/error-handling-DNVkm6RY.mjs +1334 -0
- package/dist/error-handling-DNVkm6RY.mjs.map +1 -0
- package/dist/errors-CQ8tF4dP.mjs +985 -0
- package/dist/errors-CQ8tF4dP.mjs.map +1 -0
- package/dist/errors-CfYdVeum.d.mts +212 -0
- package/dist/errors-CfYdVeum.d.mts.map +1 -0
- package/dist/errors-Dtn-UeRi.mjs +61 -0
- package/dist/errors-Dtn-UeRi.mjs.map +1 -0
- package/dist/evaluator-Cs84qkr8.mjs +91 -0
- package/dist/evaluator-Cs84qkr8.mjs.map +1 -0
- package/dist/evaluator-optimizer-De67_mJC.mjs +1086 -0
- package/dist/evaluator-optimizer-De67_mJC.mjs.map +1 -0
- package/dist/evaluator-optimizer-pattern-B5939s2Z.mjs +367 -0
- package/dist/evaluator-optimizer-pattern-B5939s2Z.mjs.map +1 -0
- package/dist/evaluator-optimizer-pattern-D1AJrzBD.d.mts +72 -0
- package/dist/evaluator-optimizer-pattern-D1AJrzBD.d.mts.map +1 -0
- package/dist/factory-DP6VSl8C.mjs +307 -0
- package/dist/factory-DP6VSl8C.mjs.map +1 -0
- package/dist/generative-ui-catalog.d.mts +8 -0
- package/dist/generative-ui-catalog.d.mts.map +1 -0
- package/dist/generative-ui-catalog.mjs +679 -0
- package/dist/generative-ui-catalog.mjs.map +1 -0
- package/dist/generative-ui-registry.d.mts +195 -0
- package/dist/generative-ui-registry.d.mts.map +1 -0
- package/dist/generative-ui-registry.mjs +250 -0
- package/dist/generative-ui-registry.mjs.map +1 -0
- package/dist/generative-ui-stream.d.mts +23 -0
- package/dist/generative-ui-stream.d.mts.map +1 -0
- package/dist/generative-ui-stream.mjs +219 -0
- package/dist/generative-ui-stream.mjs.map +1 -0
- package/dist/generative-ui-types.d.mts +123 -0
- package/dist/generative-ui-types.d.mts.map +1 -0
- package/dist/generative-ui-types.mjs +1 -0
- package/dist/generative-ui.d.mts +13 -0
- package/dist/generative-ui.d.mts.map +1 -0
- package/dist/generative-ui.mjs +21 -0
- package/dist/generative-ui.mjs.map +1 -0
- package/dist/governance-audit.d.mts +3 -0
- package/dist/governance-audit.mjs +3 -0
- package/dist/governance-compliance.d.mts +5 -0
- package/dist/governance-compliance.mjs +4 -0
- package/dist/governance-policies.d.mts +4 -0
- package/dist/governance-policies.mjs +4 -0
- package/dist/governance-tenancy.d.mts +3 -0
- package/dist/governance-tenancy.mjs +3 -0
- package/dist/governance.d.mts +88 -0
- package/dist/governance.d.mts.map +1 -0
- package/dist/governance.mjs +432 -0
- package/dist/governance.mjs.map +1 -0
- package/dist/grounding-attribution.d.mts +63 -0
- package/dist/grounding-attribution.d.mts.map +1 -0
- package/dist/grounding-attribution.mjs +259 -0
- package/dist/grounding-attribution.mjs.map +1 -0
- package/dist/grounding-citation.d.mts +2 -0
- package/dist/grounding-citation.mjs +3 -0
- package/dist/grounding-context.d.mts +9 -0
- package/dist/grounding-context.d.mts.map +1 -0
- package/dist/grounding-context.mjs +19 -0
- package/dist/grounding-context.mjs.map +1 -0
- package/dist/grounding-embed.d.mts +102 -0
- package/dist/grounding-embed.d.mts.map +1 -0
- package/dist/grounding-embed.mjs +417 -0
- package/dist/grounding-embed.mjs.map +1 -0
- package/dist/grounding-hallucination.d.mts +44 -0
- package/dist/grounding-hallucination.d.mts.map +1 -0
- package/dist/grounding-hallucination.mjs +115 -0
- package/dist/grounding-hallucination.mjs.map +1 -0
- package/dist/grounding-proof-map.d.mts +9 -0
- package/dist/grounding-proof-map.d.mts.map +1 -0
- package/dist/grounding-proof-map.mjs +26 -0
- package/dist/grounding-proof-map.mjs.map +1 -0
- package/dist/grounding-rag.d.mts +10 -0
- package/dist/grounding-rag.d.mts.map +1 -0
- package/dist/grounding-rag.mjs +27 -0
- package/dist/grounding-rag.mjs.map +1 -0
- package/dist/grounding-verification.d.mts +48 -0
- package/dist/grounding-verification.d.mts.map +1 -0
- package/dist/grounding-verification.mjs +224 -0
- package/dist/grounding-verification.mjs.map +1 -0
- package/dist/grounding.d.mts +24 -0
- package/dist/grounding.d.mts.map +1 -0
- package/dist/grounding.mjs +77 -0
- package/dist/grounding.mjs.map +1 -0
- package/dist/hitl-active-learning.d.mts +41 -0
- package/dist/hitl-active-learning.d.mts.map +1 -0
- package/dist/hitl-active-learning.mjs +178 -0
- package/dist/hitl-active-learning.mjs.map +1 -0
- package/dist/hitl-annotation.d.mts +74 -0
- package/dist/hitl-annotation.d.mts.map +1 -0
- package/dist/hitl-annotation.mjs +170 -0
- package/dist/hitl-annotation.mjs.map +1 -0
- package/dist/hitl-approval.d.mts +2 -0
- package/dist/hitl-approval.mjs +3 -0
- package/dist/hitl-feedback.d.mts +59 -0
- package/dist/hitl-feedback.d.mts.map +1 -0
- package/dist/hitl-feedback.mjs +137 -0
- package/dist/hitl-feedback.mjs.map +1 -0
- package/dist/hitl-review.d.mts +2 -0
- package/dist/hitl-review.mjs +3 -0
- package/dist/hitl.d.mts +14 -0
- package/dist/hitl.d.mts.map +1 -0
- package/dist/hitl.mjs +22 -0
- package/dist/hitl.mjs.map +1 -0
- package/dist/index-B17HT-VL.d.mts +285 -0
- package/dist/index-B17HT-VL.d.mts.map +1 -0
- package/dist/index-BDwgsK9B.d.mts +101 -0
- package/dist/index-BDwgsK9B.d.mts.map +1 -0
- package/dist/index-BGgMn_Ev.d.mts +2615 -0
- package/dist/index-BGgMn_Ev.d.mts.map +1 -0
- package/dist/index-DOqe5r9G.d.mts +318 -0
- package/dist/index-DOqe5r9G.d.mts.map +1 -0
- package/dist/index-DotINT7o.d.mts +1004 -0
- package/dist/index-DotINT7o.d.mts.map +1 -0
- package/dist/index-URlW7aD1.d.mts +67 -0
- package/dist/index-URlW7aD1.d.mts.map +1 -0
- package/dist/index.d.mts +64 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +46 -0
- package/dist/index.mjs.map +1 -0
- package/dist/integrations-blob-storage.d.mts +25 -0
- package/dist/integrations-blob-storage.d.mts.map +1 -0
- package/dist/integrations-blob-storage.mjs +3 -0
- package/dist/integrations-notifications.d.mts +2 -0
- package/dist/integrations-notifications.mjs +3 -0
- package/dist/integrations-rate-limit.d.mts +27 -0
- package/dist/integrations-rate-limit.d.mts.map +1 -0
- package/dist/integrations-rate-limit.mjs +30 -0
- package/dist/integrations-rate-limit.mjs.map +1 -0
- package/dist/integrations-redis.d.mts +3 -0
- package/dist/integrations-redis.mjs +3 -0
- package/dist/integrations-stream.d.mts +14 -0
- package/dist/integrations-stream.d.mts.map +1 -0
- package/dist/integrations-stream.mjs +3 -0
- package/dist/integrations.d.mts +7 -0
- package/dist/integrations.mjs +7 -0
- package/dist/log-adapter-BLegSZtz.d.mts +16 -0
- package/dist/log-adapter-BLegSZtz.d.mts.map +1 -0
- package/dist/log-adapter-PPe_2Pwv.mjs +28 -0
- package/dist/log-adapter-PPe_2Pwv.mjs.map +1 -0
- package/dist/loop-BOYEtr2g.mjs +520 -0
- package/dist/loop-BOYEtr2g.mjs.map +1 -0
- package/dist/loop-C-tBBOqi.d.mts +219 -0
- package/dist/loop-C-tBBOqi.d.mts.map +1 -0
- package/dist/middleware-5wQ9bANW.mjs +306 -0
- package/dist/middleware-5wQ9bANW.mjs.map +1 -0
- package/dist/middleware-C1apSrj0.mjs +613 -0
- package/dist/middleware-C1apSrj0.mjs.map +1 -0
- package/dist/middleware-C7k0uItW.d.mts +9 -0
- package/dist/middleware-C7k0uItW.d.mts.map +1 -0
- package/dist/middleware-CZQCTHfl.mjs +366 -0
- package/dist/middleware-CZQCTHfl.mjs.map +1 -0
- package/dist/models.d.mts +11 -0
- package/dist/models.d.mts.map +1 -0
- package/dist/models.mjs +32 -0
- package/dist/models.mjs.map +1 -0
- package/dist/observability-analytics.d.mts +107 -0
- package/dist/observability-analytics.d.mts.map +1 -0
- package/dist/observability-analytics.mjs +409 -0
- package/dist/observability-analytics.mjs.map +1 -0
- package/dist/observability-cost.d.mts +10 -0
- package/dist/observability-cost.d.mts.map +1 -0
- package/dist/observability-cost.mjs +15 -0
- package/dist/observability-cost.mjs.map +1 -0
- package/dist/observability-telemetry.d.mts +111 -0
- package/dist/observability-telemetry.d.mts.map +1 -0
- package/dist/observability-telemetry.mjs +343 -0
- package/dist/observability-telemetry.mjs.map +1 -0
- package/dist/observability-tracing.d.mts +10 -0
- package/dist/observability-tracing.d.mts.map +1 -0
- package/dist/observability-tracing.mjs +17 -0
- package/dist/observability-tracing.mjs.map +1 -0
- package/dist/observability.d.mts +15 -0
- package/dist/observability.d.mts.map +1 -0
- package/dist/observability.mjs +17 -0
- package/dist/observability.mjs.map +1 -0
- package/dist/optimizer-DhXXpci6.mjs +97 -0
- package/dist/optimizer-DhXXpci6.mjs.map +1 -0
- package/dist/output-multimodal.d.mts +9 -0
- package/dist/output-multimodal.d.mts.map +1 -0
- package/dist/output-multimodal.mjs +18 -0
- package/dist/output-multimodal.mjs.map +1 -0
- package/dist/output.d.mts +11 -0
- package/dist/output.d.mts.map +1 -0
- package/dist/output.mjs +40 -0
- package/dist/output.mjs.map +1 -0
- package/dist/pii-filter-3AxmYSiu.d.mts +23 -0
- package/dist/pii-filter-3AxmYSiu.d.mts.map +1 -0
- package/dist/pipelines.d.mts +448 -0
- package/dist/pipelines.d.mts.map +1 -0
- package/dist/pipelines.mjs +1534 -0
- package/dist/pipelines.mjs.map +1 -0
- package/dist/prompt-injection-DQXchzsV.d.mts +8 -0
- package/dist/prompt-injection-DQXchzsV.d.mts.map +1 -0
- package/dist/prompt-injection-RpoLPwSa.mjs +52 -0
- package/dist/prompt-injection-RpoLPwSa.mjs.map +1 -0
- package/dist/prompts.d.mts +192 -0
- package/dist/prompts.d.mts.map +1 -0
- package/dist/prompts.mjs +732 -0
- package/dist/prompts.mjs.map +1 -0
- package/dist/protocol-DfBiEsnl.d.mts +112 -0
- package/dist/protocol-DfBiEsnl.d.mts.map +1 -0
- package/dist/quota-manager-0iPMkQWN.d.mts +62 -0
- package/dist/quota-manager-0iPMkQWN.d.mts.map +1 -0
- package/dist/quota-manager-D_N7FuQ2.mjs +180 -0
- package/dist/quota-manager-D_N7FuQ2.mjs.map +1 -0
- package/dist/redaction-utils-DcQwsiNh.mjs +438 -0
- package/dist/redaction-utils-DcQwsiNh.mjs.map +1 -0
- package/dist/redis-CpsSrF8K.mjs +102 -0
- package/dist/redis-CpsSrF8K.mjs.map +1 -0
- package/dist/redis-CwguYFGh.d.mts +33 -0
- package/dist/redis-CwguYFGh.d.mts.map +1 -0
- package/dist/registry-CsD3iTIx.mjs +190 -0
- package/dist/registry-CsD3iTIx.mjs.map +1 -0
- package/dist/registry-DVPWzkXR.d.mts +36 -0
- package/dist/registry-DVPWzkXR.d.mts.map +1 -0
- package/dist/reranking-BpWYhYzl.d.mts +72 -0
- package/dist/reranking-BpWYhYzl.d.mts.map +1 -0
- package/dist/reranking-Ck8aKZW7.mjs +331 -0
- package/dist/reranking-Ck8aKZW7.mjs.map +1 -0
- package/dist/resumable-adapter-CO1HtsgJ.mjs +21 -0
- package/dist/resumable-adapter-CO1HtsgJ.mjs.map +1 -0
- package/dist/review-trigger-DmAsiQlM.d.mts +24 -0
- package/dist/review-trigger-DmAsiQlM.d.mts.map +1 -0
- package/dist/review-trigger-DwXfpww9.mjs +112 -0
- package/dist/review-trigger-DwXfpww9.mjs.map +1 -0
- package/dist/safe-context-BynhkTKR.d.mts +54 -0
- package/dist/safe-context-BynhkTKR.d.mts.map +1 -0
- package/dist/safe-context-C5A3Wv3b.mjs +143 -0
- package/dist/safe-context-C5A3Wv3b.mjs.map +1 -0
- package/dist/schema-Bu2noOZ4.mjs +27 -0
- package/dist/schema-Bu2noOZ4.mjs.map +1 -0
- package/dist/schema-CwFvuCnA.mjs +97 -0
- package/dist/schema-CwFvuCnA.mjs.map +1 -0
- package/dist/schema-Wz-1-ro9.d.mts +37 -0
- package/dist/schema-Wz-1-ro9.d.mts.map +1 -0
- package/dist/schemas-CxQtxIga.mjs +62 -0
- package/dist/schemas-CxQtxIga.mjs.map +1 -0
- package/dist/schemas-DBOhxgW7.d.mts +32 -0
- package/dist/schemas-DBOhxgW7.d.mts.map +1 -0
- package/dist/schemas-Dp_OCqBt.d.mts +63 -0
- package/dist/schemas-Dp_OCqBt.d.mts.map +1 -0
- package/dist/schemas-SwCsnT0z.mjs +83 -0
- package/dist/schemas-SwCsnT0z.mjs.map +1 -0
- package/dist/sdk-errors.d.mts +2 -0
- package/dist/sdk-errors.mjs +3 -0
- package/dist/sdk-experimental.d.mts +59 -0
- package/dist/sdk-experimental.d.mts.map +1 -0
- package/dist/sdk-experimental.mjs +193 -0
- package/dist/sdk-experimental.mjs.map +1 -0
- package/dist/sdk-stop-conditions.d.mts +3 -0
- package/dist/sdk-stop-conditions.mjs +3 -0
- package/dist/sdk.d.mts +15 -0
- package/dist/sdk.d.mts.map +1 -0
- package/dist/sdk.mjs +50 -0
- package/dist/sdk.mjs.map +1 -0
- package/dist/security-guardrails.d.mts +3 -0
- package/dist/security-guardrails.mjs +3 -0
- package/dist/security-injection.d.mts +2 -0
- package/dist/security-injection.mjs +3 -0
- package/dist/security.d.mts +12 -0
- package/dist/security.d.mts.map +1 -0
- package/dist/security.mjs +18 -0
- package/dist/security.mjs.map +1 -0
- package/dist/server.d.mts +420 -0
- package/dist/server.d.mts.map +1 -0
- package/dist/server.mjs +2225 -0
- package/dist/server.mjs.map +1 -0
- package/dist/shared.d.mts +2 -0
- package/dist/shared.mjs +3 -0
- package/dist/streaming-control.d.mts +2 -0
- package/dist/streaming-control.mjs +4 -0
- package/dist/streaming-core.d.mts +4 -0
- package/dist/streaming-core.mjs +3 -0
- package/dist/streaming-infra-resilience.d.mts +120 -0
- package/dist/streaming-infra-resilience.d.mts.map +1 -0
- package/dist/streaming-infra-resilience.mjs +358 -0
- package/dist/streaming-infra-resilience.mjs.map +1 -0
- package/dist/streaming-infra-transport.d.mts +57 -0
- package/dist/streaming-infra-transport.d.mts.map +1 -0
- package/dist/streaming-infra-transport.mjs +488 -0
- package/dist/streaming-infra-transport.mjs.map +1 -0
- package/dist/streaming-infra.d.mts +5 -0
- package/dist/streaming-infra.mjs +5 -0
- package/dist/streaming.d.mts +17 -0
- package/dist/streaming.d.mts.map +1 -0
- package/dist/streaming.mjs +71 -0
- package/dist/streaming.mjs.map +1 -0
- package/dist/telemetry-2eKMojIb.mjs +1046 -0
- package/dist/telemetry-2eKMojIb.mjs.map +1 -0
- package/dist/telemetry-C2t03dwD.d.mts +59 -0
- package/dist/telemetry-C2t03dwD.d.mts.map +1 -0
- package/dist/tool-Btbththq.d.mts +253 -0
- package/dist/tool-Btbththq.d.mts.map +1 -0
- package/dist/tool-JSf8JXZ8.mjs +1150 -0
- package/dist/tool-JSf8JXZ8.mjs.map +1 -0
- package/dist/tool-safety-CZO8a4D4.d.mts +60 -0
- package/dist/tool-safety-CZO8a4D4.d.mts.map +1 -0
- package/dist/tool-safety-DXtYDXod.mjs +319 -0
- package/dist/tool-safety-DXtYDXod.mjs.map +1 -0
- package/dist/tools-BuS2Uv0q.mjs +1708 -0
- package/dist/tools-BuS2Uv0q.mjs.map +1 -0
- package/dist/tools-approval.d.mts +99 -0
- package/dist/tools-approval.d.mts.map +1 -0
- package/dist/tools-approval.mjs +395 -0
- package/dist/tools-approval.mjs.map +1 -0
- package/dist/tools-compliance.d.mts +67 -0
- package/dist/tools-compliance.d.mts.map +1 -0
- package/dist/tools-compliance.mjs +330 -0
- package/dist/tools-compliance.mjs.map +1 -0
- package/dist/tools-computer.d.mts +25 -0
- package/dist/tools-computer.d.mts.map +1 -0
- package/dist/tools-computer.mjs +64 -0
- package/dist/tools-computer.mjs.map +1 -0
- package/dist/tools-core.d.mts +3 -0
- package/dist/tools-core.mjs +3 -0
- package/dist/tools-mcp.d.mts +3 -0
- package/dist/tools-mcp.mjs +5 -0
- package/dist/tools-superpowers.d.mts +2 -0
- package/dist/tools-superpowers.mjs +3 -0
- package/dist/tools.d.mts +401 -0
- package/dist/tools.d.mts.map +1 -0
- package/dist/tools.mjs +1921 -0
- package/dist/tools.mjs.map +1 -0
- package/dist/transport-selector-D-Ib05X1.mjs +1936 -0
- package/dist/transport-selector-D-Ib05X1.mjs.map +1 -0
- package/dist/triage-agent-BEsXg5sw.d.mts +63 -0
- package/dist/triage-agent-BEsXg5sw.d.mts.map +1 -0
- package/dist/triage-agent-CBsfX-HW.mjs +167 -0
- package/dist/triage-agent-CBsfX-HW.mjs.map +1 -0
- package/dist/types-BPnq3GQo.d.mts +23 -0
- package/dist/types-BPnq3GQo.d.mts.map +1 -0
- package/dist/types-BjWgimpY.d.mts +16 -0
- package/dist/types-BjWgimpY.d.mts.map +1 -0
- package/dist/types-BxD-5btB.d.mts +41 -0
- package/dist/types-BxD-5btB.d.mts.map +1 -0
- package/dist/types-By-r93bE.d.mts +36 -0
- package/dist/types-By-r93bE.d.mts.map +1 -0
- package/dist/types-CLBWFRZN.d.mts +69 -0
- package/dist/types-CLBWFRZN.d.mts.map +1 -0
- package/dist/types-CQ0HFd0u.d.mts +62 -0
- package/dist/types-CQ0HFd0u.d.mts.map +1 -0
- package/dist/types-D3zJb59_.d.mts +47 -0
- package/dist/types-D3zJb59_.d.mts.map +1 -0
- package/dist/types-DJnugQX0.d.mts +80 -0
- package/dist/types-DJnugQX0.d.mts.map +1 -0
- package/dist/types-DbUfMCnT.d.mts +70 -0
- package/dist/types-DbUfMCnT.d.mts.map +1 -0
- package/dist/upstash-adapter-D96Caq2O.mjs +22 -0
- package/dist/upstash-adapter-D96Caq2O.mjs.map +1 -0
- package/dist/upstash-adapter-DD4433dx.d.mts +8 -0
- package/dist/upstash-adapter-DD4433dx.d.mts.map +1 -0
- package/dist/utils-BlYhcD6M.mjs +319 -0
- package/dist/utils-BlYhcD6M.mjs.map +1 -0
- package/dist/utils-DpJGOb3y.d.mts +120 -0
- package/dist/utils-DpJGOb3y.d.mts.map +1 -0
- package/dist/vercel-blob-adapter-CkOXLT2D.mjs +25 -0
- package/dist/vercel-blob-adapter-CkOXLT2D.mjs.map +1 -0
- package/dist/xai-CbV_dCnP.mjs +1600 -0
- package/dist/xai-CbV_dCnP.mjs.map +1 -0
- package/package.json +479 -0
- package/src/agents/base/factory.ts +382 -0
- package/src/agents/base/index.ts +8 -0
- package/src/agents/base/schemas.ts +117 -0
- package/src/agents/base/types.ts +192 -0
- package/src/agents/control-flow/index.ts +683 -0
- package/src/agents/coordinator/coordinator-agent.ts +381 -0
- package/src/agents/coordinator/index.ts +6 -0
- package/src/agents/default-agent.ts +211 -0
- package/src/agents/evaluator-optimizer/README.md +612 -0
- package/src/agents/evaluator-optimizer/evaluator-optimizer.example.ts +437 -0
- package/src/agents/evaluator-optimizer/evaluator.ts +282 -0
- package/src/agents/evaluator-optimizer/index.test.ts +416 -0
- package/src/agents/evaluator-optimizer/index.ts +519 -0
- package/src/agents/evaluator-optimizer/optimizer.ts +322 -0
- package/src/agents/evaluator-optimizer/schema.ts +302 -0
- package/src/agents/evaluator-optimizer/utils.ts +42 -0
- package/src/agents/experimental/index.ts +1095 -0
- package/src/agents/experimental/types.ts +212 -0
- package/src/agents/fallback/index.ts +18 -0
- package/src/agents/fallback/recovery/circuit-breaker.ts +166 -0
- package/src/agents/fallback/strategies/model-fallback.ts +192 -0
- package/src/agents/fallback/types.ts +87 -0
- package/src/agents/governance-agent.ts +446 -0
- package/src/agents/index.ts +79 -0
- package/src/agents/multi/coordination/index.ts +6 -0
- package/src/agents/multi/coordination/message-bus.ts +144 -0
- package/src/agents/multi/index.ts +6 -0
- package/src/agents/multi/state/index.ts +162 -0
- package/src/agents/multi/supervisor/index.ts +7 -0
- package/src/agents/multi/supervisor/supervisor.ts +254 -0
- package/src/agents/multi/swarm/aggregation.ts +466 -0
- package/src/agents/multi/swarm/communication.ts +388 -0
- package/src/agents/multi/swarm/coordination.ts +380 -0
- package/src/agents/multi/swarm/index.ts +73 -0
- package/src/agents/multi/swarm/swarm-executor.ts +479 -0
- package/src/agents/multi/types.ts +181 -0
- package/src/agents/observability/index.ts +914 -0
- package/src/agents/orchestrator.ts +218 -0
- package/src/agents/patterns/README.md +512 -0
- package/src/agents/patterns/evaluator-optimizer-pattern.example.ts +455 -0
- package/src/agents/patterns/evaluator-optimizer-pattern.ts +653 -0
- package/src/agents/patterns/index.ts +26 -0
- package/src/agents/persistence/index.ts +726 -0
- package/src/agents/tools/index.ts +291 -0
- package/src/agents/tools/mcp.ts +188 -0
- package/src/agents/triage/index.ts +6 -0
- package/src/agents/triage/triage-agent.ts +280 -0
- package/src/agents/workflows/index.ts +6 -0
- package/src/agents/workflows/interfaces.ts +36 -0
- package/src/agents/workflows/schema.ts +20 -0
- package/src/caching/adapters/index.ts +7 -0
- package/src/caching/adapters/memory.ts +77 -0
- package/src/caching/adapters/redis.ts +60 -0
- package/src/caching/index.ts +17 -0
- package/src/caching/middleware.ts +452 -0
- package/src/caching/strategies/index.ts +1008 -0
- package/src/caching/types.ts +47 -0
- package/src/catalog.ts +921 -0
- package/src/client/chat-usage.ts +53 -0
- package/src/client/hooks.ts +343 -0
- package/src/client/index.ts +36 -0
- package/src/client/message-utils.ts +29 -0
- package/src/client/use-generative-ui.ts +174 -0
- package/src/client/utils.ts +66 -0
- package/src/generative-ui/catalog.ts +653 -0
- package/src/generative-ui/index.ts +82 -0
- package/src/generative-ui/registry.ts +273 -0
- package/src/generative-ui/stream.ts +324 -0
- package/src/generative-ui/types.ts +376 -0
- package/src/governance/audit/audit-logger.ts +239 -0
- package/src/governance/audit/audit-schema.ts +82 -0
- package/src/governance/audit/index.ts +6 -0
- package/src/governance/compliance/abac/policy-engine.ts +175 -0
- package/src/governance/compliance/abac/types.ts +40 -0
- package/src/governance/compliance/approval/compliance-approval-queue.ts +217 -0
- package/src/governance/compliance/index.ts +16 -0
- package/src/governance/compliance/schemas.ts +68 -0
- package/src/governance/compliance/types.ts +143 -0
- package/src/governance/compliance/validators/phi-detector.ts +145 -0
- package/src/governance/compliance/validators/redaction-utils.ts +176 -0
- package/src/governance/compliance/validators/safe-harbor.ts +135 -0
- package/src/governance/entitlements/index.ts +585 -0
- package/src/governance/entitlements/middleware.ts +651 -0
- package/src/governance/entitlements/rate-limiter.ts +711 -0
- package/src/governance/index.ts +32 -0
- package/src/governance/policies/guardrails.ts +1121 -0
- package/src/governance/policies/index.ts +42 -0
- package/src/governance/policies/loop-controls.ts +136 -0
- package/src/governance/policies/telemetry.ts +63 -0
- package/src/governance/tenancy/index.ts +30 -0
- package/src/governance/tenancy/isolation/context.ts +92 -0
- package/src/governance/tenancy/isolation/index.ts +13 -0
- package/src/governance/tenancy/quotas/index.ts +11 -0
- package/src/governance/tenancy/quotas/quota-manager.ts +180 -0
- package/src/governance/tenancy/types.ts +66 -0
- package/src/governance/types.ts +16 -0
- package/src/governance/versioning/index.ts +573 -0
- package/src/grounding/attribution/index.ts +424 -0
- package/src/grounding/citation/citation-generator.ts +174 -0
- package/src/grounding/citation/index.ts +12 -0
- package/src/grounding/context/index.ts +32 -0
- package/src/grounding/context/safe-context.ts +116 -0
- package/src/grounding/context/types.ts +62 -0
- package/src/grounding/context-engineering/error-handling.ts +359 -0
- package/src/grounding/context-engineering/index.ts +23 -0
- package/src/grounding/context-engineering/memory.ts +559 -0
- package/src/grounding/context-engineering/tool-masking.ts +338 -0
- package/src/grounding/embed/index.ts +704 -0
- package/src/grounding/embed/reranking.ts +604 -0
- package/src/grounding/hallucination/index.ts +223 -0
- package/src/grounding/index.ts +82 -0
- package/src/grounding/proof-map/applyPatch.ts +172 -0
- package/src/grounding/proof-map/index.ts +41 -0
- package/src/grounding/proof-map/loop.ts +275 -0
- package/src/grounding/proof-map/schema.ts +217 -0
- package/src/grounding/rag/__tests__/pipeline.test.ts +274 -0
- package/src/grounding/rag/__tests__/tool.test.ts +202 -0
- package/src/grounding/rag/__tests__/trace.test.ts +229 -0
- package/src/grounding/rag/circuit-breaker.ts +152 -0
- package/src/grounding/rag/index.ts +64 -0
- package/src/grounding/rag/pipeline.ts +602 -0
- package/src/grounding/rag/tool.ts +281 -0
- package/src/grounding/rag/trace.ts +503 -0
- package/src/grounding/rag/types.ts +284 -0
- package/src/grounding/retrieval/in-memory-store.ts +107 -0
- package/src/grounding/sources/index.ts +943 -0
- package/src/grounding/tests/applyPatch.test.ts +194 -0
- package/src/grounding/tests/loop.test.ts +141 -0
- package/src/grounding/tests/schema.test.ts +160 -0
- package/src/grounding/types.ts +100 -0
- package/src/grounding/verification/index.ts +419 -0
- package/src/hitl/active-learning/index.ts +332 -0
- package/src/hitl/annotation/index.ts +362 -0
- package/src/hitl/approval/approval-queue.ts +132 -0
- package/src/hitl/approval/index.ts +5 -0
- package/src/hitl/feedback/index.ts +284 -0
- package/src/hitl/index.ts +69 -0
- package/src/hitl/review/index.ts +6 -0
- package/src/hitl/review/review-trigger.ts +162 -0
- package/src/hitl/types.ts +126 -0
- package/src/index.ts +125 -0
- package/src/integrations/blob-storage/index.ts +7 -0
- package/src/integrations/blob-storage/types.ts +28 -0
- package/src/integrations/blob-storage/vercel-blob-adapter.ts +35 -0
- package/src/integrations/index.ts +15 -0
- package/src/integrations/notifications/index.ts +7 -0
- package/src/integrations/notifications/log-adapter.ts +30 -0
- package/src/integrations/notifications/types.ts +27 -0
- package/src/integrations/rate-limit/index.ts +7 -0
- package/src/integrations/rate-limit/types.ts +26 -0
- package/src/integrations/rate-limit/upstash-adapter.ts +45 -0
- package/src/integrations/redis/index.ts +7 -0
- package/src/integrations/redis/types.ts +67 -0
- package/src/integrations/redis/upstash-adapter.ts +18 -0
- package/src/integrations/stream/index.ts +7 -0
- package/src/integrations/stream/resumable-adapter.ts +20 -0
- package/src/integrations/stream/types.ts +21 -0
- package/src/internal/__tests__/hallucination.test.ts +162 -0
- package/src/internal/__tests__/models.test.ts +104 -0
- package/src/internal/__tests__/sdk-errors.test.ts +201 -0
- package/src/internal/__tests__/stop-conditions.test.ts +210 -0
- package/src/internal/shared/ai-types.ts +942 -0
- package/src/internal/testing/evaluators.ts +575 -0
- package/src/internal/testing/index.ts +960 -0
- package/src/internal/ui/data-parts.ts +511 -0
- package/src/internal/ui/type-guards.ts +344 -0
- package/src/internal/ui-factories/__tests__/ui-factories.test.ts +548 -0
- package/src/internal/ui-factories/artifact-factory.ts +667 -0
- package/src/internal/ui-factories/index.ts +82 -0
- package/src/internal/ui-factories/shimmer-manager.ts +220 -0
- package/src/internal/ui-factories/status-helpers.ts +149 -0
- package/src/internal/ui-factories/tool-renderer.ts +167 -0
- package/src/internal/ui-factories/types.ts +235 -0
- package/src/models/capabilities.ts +88 -0
- package/src/models/index.ts +16 -0
- package/src/models/provider-factory.ts +229 -0
- package/src/models/providers/anthropic.ts +539 -0
- package/src/models/providers/google.ts +354 -0
- package/src/models/providers/index.ts +21 -0
- package/src/models/providers/openai.ts +346 -0
- package/src/models/providers/perplexity.ts +276 -0
- package/src/models/providers/shared.ts +90 -0
- package/src/models/providers/xai.ts +269 -0
- package/src/models/registry.ts +208 -0
- package/src/models/routing/index.ts +45 -0
- package/src/models/routing/intent-router.ts +143 -0
- package/src/models/routing/model-router.ts +300 -0
- package/src/models/routing/types.ts +106 -0
- package/src/models/types.ts +23 -0
- package/src/observability/analytics/index.ts +593 -0
- package/src/observability/cost/index.ts +16 -0
- package/src/observability/cost/tracking/budget-guard.ts +110 -0
- package/src/observability/cost/tracking/usage-tracker.ts +120 -0
- package/src/observability/cost/types.ts +85 -0
- package/src/observability/index.ts +17 -0
- package/src/observability/telemetry/index.ts +508 -0
- package/src/observability/tracing/index.ts +30 -0
- package/src/observability/tracing/otel/ai-instrumentation.ts +193 -0
- package/src/observability/tracing/otel/exporters/console.ts +58 -0
- package/src/observability/tracing/otel/exporters/index.ts +6 -0
- package/src/observability/tracing/provenance.ts +769 -0
- package/src/observability/tracing/types.ts +92 -0
- package/src/output/__tests__/output.test.ts +737 -0
- package/src/output/element-stream.ts +678 -0
- package/src/output/errors.ts +108 -0
- package/src/output/factories.ts +392 -0
- package/src/output/index.ts +98 -0
- package/src/output/multimodal/EXPORTS.md +306 -0
- package/src/output/multimodal/IMPLEMENTATION_SUMMARY.md +421 -0
- package/src/output/multimodal/README.md +349 -0
- package/src/output/multimodal/SETUP_GUIDE.md +472 -0
- package/src/output/multimodal/audio.ts +650 -0
- package/src/output/multimodal/image.ts +22 -0
- package/src/output/multimodal/index.ts +32 -0
- package/src/output/multimodal/providers.example.ts +375 -0
- package/src/output/validator.ts +495 -0
- package/src/pipelines/adapters/trace-storage-blob.ts +458 -0
- package/src/pipelines/adapters/trace-storage-memory.ts +319 -0
- package/src/pipelines/defaults.ts +109 -0
- package/src/pipelines/index.ts +24 -0
- package/src/pipelines/message-transforms.ts +107 -0
- package/src/pipelines/multi-step-wrapper.ts +433 -0
- package/src/pipelines/pipeline-presets.ts +339 -0
- package/src/pipelines/step-executor.ts +257 -0
- package/src/pipelines/storage-factory.ts +85 -0
- package/src/pipelines/trace-storage-interface.ts +216 -0
- package/src/pipelines/types.ts +255 -0
- package/src/pipelines/validation.ts +323 -0
- package/src/prompts/index.ts +271 -0
- package/src/prompts/model-variants.ts +410 -0
- package/src/prompts/templates.ts +327 -0
- package/src/sdk/errors/base.ts +296 -0
- package/src/sdk/errors/index.ts +31 -0
- package/src/sdk/errors/utils.ts +148 -0
- package/src/sdk/experimental/index.ts +286 -0
- package/src/sdk/index.ts +25 -0
- package/src/sdk/middleware/ai-middleware.ts +95 -0
- package/src/sdk/middleware/cache.ts +154 -0
- package/src/sdk/middleware/circuit-breaker.ts +388 -0
- package/src/sdk/middleware/compose.ts +81 -0
- package/src/sdk/middleware/deduplication.ts +307 -0
- package/src/sdk/middleware/index.ts +660 -0
- package/src/sdk/middleware/model-middleware.ts +200 -0
- package/src/sdk/stop-conditions/conditions.ts +209 -0
- package/src/sdk/stop-conditions/index.ts +35 -0
- package/src/sdk/stop-conditions/types.ts +59 -0
- package/src/security/guardrails/index.ts +6 -0
- package/src/security/guardrails/middleware.ts +465 -0
- package/src/security/guardrails/pii-filter.ts +396 -0
- package/src/security/index.ts +33 -0
- package/src/security/injection/index.ts +5 -0
- package/src/security/injection/prompt-injection.ts +64 -0
- package/src/security/types.ts +85 -0
- package/src/server/cache/crypto.ts +47 -0
- package/src/server/cache/performance.ts +79 -0
- package/src/server/error-handler.ts +93 -0
- package/src/server/errors.ts +73 -0
- package/src/server/helpers.ts +944 -0
- package/src/server/http.ts +156 -0
- package/src/server/index.ts +12 -0
- package/src/server/messages/__tests__/messages.test.ts +720 -0
- package/src/server/messages/converter.ts +245 -0
- package/src/server/messages/data-parts.ts +338 -0
- package/src/server/messages/extraction.ts +328 -0
- package/src/server/messages/index.ts +126 -0
- package/src/server/messages/types.ts +355 -0
- package/src/server/messages/window.ts +450 -0
- package/src/server/rate-limit/env.ts +8 -0
- package/src/server/rate-limit/rate-limit.ts +165 -0
- package/src/server/routes/HEALTH_CHECK.md +502 -0
- package/src/server/routes/IMPLEMENTATION_SUMMARY.md +432 -0
- package/src/server/routes/QUICK_START.md +327 -0
- package/src/server/routes/README.md +357 -0
- package/src/server/routes/__tests__/routes.test.ts +628 -0
- package/src/server/routes/agent-route.ts +224 -0
- package/src/server/routes/agent-routes.ts +191 -0
- package/src/server/routes/embed-config.ts +181 -0
- package/src/server/routes/health-check.example.ts +507 -0
- package/src/server/routes/health-check.test.ts +533 -0
- package/src/server/routes/health-check.ts +639 -0
- package/src/server/routes/health-check.types.ts +217 -0
- package/src/server/routes/index.ts +32 -0
- package/src/server/routes/types.ts +274 -0
- package/src/shared/__tests__/schemas.test.ts +317 -0
- package/src/shared/ai-runtime.ts +139 -0
- package/src/shared/ai-types.ts +133 -0
- package/src/shared/index.ts +30 -0
- package/src/shared/sdk-runtime.ts +198 -0
- package/src/shared/sdk-types.ts +301 -0
- package/src/streaming/control/__tests__/streaming-control.test.ts +708 -0
- package/src/streaming/control/budget-guard.ts +264 -0
- package/src/streaming/control/controller.ts +255 -0
- package/src/streaming/control/index.ts +105 -0
- package/src/streaming/control/smoothing.ts +201 -0
- package/src/streaming/control/step-limit.ts +215 -0
- package/src/streaming/control/types.ts +234 -0
- package/src/streaming/core/auto-resume.ts +276 -0
- package/src/streaming/core/index.ts +85 -0
- package/src/streaming/core/multi-step.ts +471 -0
- package/src/streaming/core/protocol.ts +194 -0
- package/src/streaming/core/types.ts +182 -0
- package/src/streaming/index.ts +97 -0
- package/src/streaming/infra/backpressure/buffer.ts +210 -0
- package/src/streaming/infra/backpressure/index.ts +6 -0
- package/src/streaming/infra/index.ts +75 -0
- package/src/streaming/infra/multiplexing/index.ts +311 -0
- package/src/streaming/infra/resilience/index.ts +684 -0
- package/src/streaming/infra/transform/index.ts +15 -0
- package/src/streaming/infra/transform/stream-transforms.ts +166 -0
- package/src/streaming/infra/transport/index.ts +774 -0
- package/src/streaming/infra/types.ts +118 -0
- package/src/streaming/infra-extra/types.ts +118 -0
- package/src/tools/advanced/caching.ts +299 -0
- package/src/tools/advanced/generator.ts +267 -0
- package/src/tools/advanced/hitl.ts +251 -0
- package/src/tools/advanced/index.ts +9 -0
- package/src/tools/advanced/llm-tool.ts +208 -0
- package/src/tools/approval/FILES.md +449 -0
- package/src/tools/approval/IMPLEMENTATION_SUMMARY.md +567 -0
- package/src/tools/approval/QUICK_START.md +362 -0
- package/src/tools/approval/README.md +514 -0
- package/src/tools/approval/advanced-approval-queue.ts +7 -0
- package/src/tools/approval/approval.example.ts +571 -0
- package/src/tools/approval/in-memory-queue.ts +405 -0
- package/src/tools/approval/index.ts +737 -0
- package/src/tools/approval/middleware.ts +590 -0
- package/src/tools/approval/queue-factory.ts +162 -0
- package/src/tools/approval/redis-queue.ts +327 -0
- package/src/tools/approval/testing.ts +493 -0
- package/src/tools/approval/types.ts +221 -0
- package/src/tools/approval/with-approval.ts +366 -0
- package/src/tools/artifacts/artifact-tools.ts +273 -0
- package/src/tools/artifacts/index.ts +6 -0
- package/src/tools/compliance/compliance-wrapper.ts +789 -0
- package/src/tools/compliance/create-compliant-stream.ts +226 -0
- package/src/tools/compliance/index.ts +8 -0
- package/src/tools/compliance/phi-redaction.ts +406 -0
- package/src/tools/compliance/tool-wrapper.ts +306 -0
- package/src/tools/computer/index.ts +99 -0
- package/src/tools/computer/types.ts +41 -0
- package/src/tools/core/abort.ts +202 -0
- package/src/tools/core/factory.ts +197 -0
- package/src/tools/core/index.ts +8 -0
- package/src/tools/core/tool-safety.ts +112 -0
- package/src/tools/generic/index.ts +9 -0
- package/src/tools/generic/json-schema-tool.ts +301 -0
- package/src/tools/generic/tiptap-context.ts +619 -0
- package/src/tools/generic/web-search-tool.ts +82 -0
- package/src/tools/generic/web-search.ts +142 -0
- package/src/tools/index.ts +36 -0
- package/src/tools/mcp/ai-sdk-error-integration.ts +401 -0
- package/src/tools/mcp/client.ts +988 -0
- package/src/tools/mcp/connection-manager.ts +380 -0
- package/src/tools/mcp/connection-pool.ts +408 -0
- package/src/tools/mcp/edge-runtime.ts +318 -0
- package/src/tools/mcp/environment.ts +310 -0
- package/src/tools/mcp/index.ts +20 -0
- package/src/tools/mcp/next-pattern.ts +401 -0
- package/src/tools/mcp/stream-lifecycle-integration.ts +617 -0
- package/src/tools/mcp/tool-cache.ts +359 -0
- package/src/tools/mcp/transport-selector.ts +492 -0
- package/src/tools/mcp/transports.ts +99 -0
- package/src/tools/simple-factory.ts +55 -0
- package/src/tools/superpowers/index.ts +122 -0
- package/src/tools/superpowers/prompts/index.ts +533 -0
- package/src/tools/superpowers/schemas/index.ts +701 -0
- package/src/tools/superpowers/tools/index.ts +721 -0
- package/src/tools/validation-wrapper.ts +97 -0
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optimizer Module
|
|
3
|
+
* Implements content optimization strategies based on evaluation feedback
|
|
4
|
+
* Based on VERCEL_AI_SDK_V6_PATTERNS.md section 4.2
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { generateText } from '../../shared';
|
|
8
|
+
|
|
9
|
+
import { type OptimizerInput, type Optimizer, type EvaluationResult } from './schema';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Prompt Optimizer
|
|
13
|
+
* Refines input prompts and generation instructions based on evaluation feedback
|
|
14
|
+
* Used to iteratively improve generation quality
|
|
15
|
+
*/
|
|
16
|
+
export class PromptOptimizer implements Optimizer {
|
|
17
|
+
/**
|
|
18
|
+
* Model identifier for optimization (typically a high-quality model)
|
|
19
|
+
* @default 'anthropic/claude-3-5-sonnet-20241022'
|
|
20
|
+
*/
|
|
21
|
+
private modelId: string;
|
|
22
|
+
|
|
23
|
+
constructor(modelId: string = 'anthropic/claude-3-5-sonnet-20241022') {
|
|
24
|
+
this.modelId = modelId;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Optimize content by generating improved version based on feedback
|
|
29
|
+
* Focuses on addressing specific issues while preserving strengths
|
|
30
|
+
*
|
|
31
|
+
* @param input - Optimizer input containing content and evaluation feedback
|
|
32
|
+
* @returns Promise resolving to improved content
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* const optimizer = new PromptOptimizer();
|
|
37
|
+
* const improved = await optimizer.optimize({
|
|
38
|
+
* content: "Original content",
|
|
39
|
+
* evaluationFeedback: evaluationResult,
|
|
40
|
+
* originalRequest: "User request",
|
|
41
|
+
* iterationNumber: 1
|
|
42
|
+
* });
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
async optimize(input: OptimizerInput): Promise<string> {
|
|
46
|
+
const { content, evaluationFeedback, originalRequest, iterationNumber = 1 } = input;
|
|
47
|
+
|
|
48
|
+
const systemPrompt = `You are an expert content optimizer. Your role is to improve content based on evaluation feedback.
|
|
49
|
+
|
|
50
|
+
CRITICAL GUIDELINES:
|
|
51
|
+
1. Address ALL specific issues mentioned in the feedback
|
|
52
|
+
2. Implement the top improvement suggestions
|
|
53
|
+
3. PRESERVE all identified strengths - do not change what works
|
|
54
|
+
4. Maintain the original intent and core message
|
|
55
|
+
5. Keep the same format and style unless feedback suggests otherwise
|
|
56
|
+
6. Make the content more concise and clear without losing nuance
|
|
57
|
+
|
|
58
|
+
Remember: You are enhancing, not rewriting. The goal is to reach the quality threshold (${evaluationFeedback.qualityScore + (9 - evaluationFeedback.qualityScore) / 2}/10 minimum).`;
|
|
59
|
+
|
|
60
|
+
const userPrompt = `${iterationNumber > 1 ? `[Optimization Iteration ${iterationNumber}]\n` : ''}ORIGINAL USER REQUEST:
|
|
61
|
+
${originalRequest}
|
|
62
|
+
|
|
63
|
+
CURRENT CONTENT:
|
|
64
|
+
${content}
|
|
65
|
+
|
|
66
|
+
EVALUATION FEEDBACK (Score: ${evaluationFeedback.qualityScore}/10):
|
|
67
|
+
|
|
68
|
+
ISSUES TO FIX:
|
|
69
|
+
${evaluationFeedback.specificIssues.map(issue => `• ${issue}`).join('\n')}
|
|
70
|
+
|
|
71
|
+
IMPROVEMENT SUGGESTIONS:
|
|
72
|
+
${evaluationFeedback.improvementSuggestions.map(suggestion => `• ${suggestion}`).join('\n')}
|
|
73
|
+
|
|
74
|
+
STRENGTHS TO PRESERVE:
|
|
75
|
+
${evaluationFeedback.strengths.map(strength => `• ${strength}`).join('\n')}
|
|
76
|
+
|
|
77
|
+
OVERALL ASSESSMENT:
|
|
78
|
+
${evaluationFeedback.overallAssessment}
|
|
79
|
+
|
|
80
|
+
Please improve this content. Address each issue specifically, implement the suggestions, and ensure all strengths are preserved.
|
|
81
|
+
Provide the optimized content directly without explanation.`;
|
|
82
|
+
|
|
83
|
+
try {
|
|
84
|
+
const { text: improvedContent } = await generateText({
|
|
85
|
+
model: this.modelId,
|
|
86
|
+
system: systemPrompt,
|
|
87
|
+
prompt: userPrompt,
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
return improvedContent;
|
|
91
|
+
} catch (error) {
|
|
92
|
+
throw new Error(
|
|
93
|
+
`Optimization failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
94
|
+
);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Output Optimizer
|
|
101
|
+
* Improves existing content output iteratively based on feedback
|
|
102
|
+
* Focuses on enhancing clarity, structure, and completeness
|
|
103
|
+
*/
|
|
104
|
+
export class OutputOptimizer implements Optimizer {
|
|
105
|
+
/**
|
|
106
|
+
* Model identifier for optimization
|
|
107
|
+
*/
|
|
108
|
+
private modelId: string;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Strategy for optimization: 'expand', 'refine', 'restructure'
|
|
112
|
+
* If undefined, strategy is auto-selected based on feedback
|
|
113
|
+
*/
|
|
114
|
+
private configuredStrategy?: 'expand' | 'refine' | 'restructure';
|
|
115
|
+
|
|
116
|
+
constructor(
|
|
117
|
+
modelId: string = 'anthropic/claude-3-5-sonnet-20241022',
|
|
118
|
+
strategy?: 'expand' | 'refine' | 'restructure',
|
|
119
|
+
) {
|
|
120
|
+
this.modelId = modelId;
|
|
121
|
+
this.configuredStrategy = strategy;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Determine optimization strategy based on feedback
|
|
126
|
+
* Only used when no strategy was configured in constructor
|
|
127
|
+
*/
|
|
128
|
+
private selectStrategy(feedback: EvaluationResult): 'expand' | 'refine' | 'restructure' {
|
|
129
|
+
// If many issues with clarity/structure, restructure
|
|
130
|
+
if (feedback.specificIssues.some(i => /structure|organization|clarity|flow/i.test(i))) {
|
|
131
|
+
return 'restructure';
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// If issues about completeness/detail, expand
|
|
135
|
+
if (
|
|
136
|
+
feedback.specificIssues.some(i =>
|
|
137
|
+
/incomplete|missing|lack|insufficient|detail|example/i.test(i),
|
|
138
|
+
)
|
|
139
|
+
) {
|
|
140
|
+
return 'expand';
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// Default to refine
|
|
144
|
+
return 'refine';
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Optimize content using strategy-based approach
|
|
149
|
+
*/
|
|
150
|
+
async optimize(input: OptimizerInput): Promise<string> {
|
|
151
|
+
const { content, evaluationFeedback, originalRequest, iterationNumber = 1 } = input;
|
|
152
|
+
|
|
153
|
+
// Use configured strategy if provided, otherwise auto-select based on feedback
|
|
154
|
+
const strategy = this.configuredStrategy ?? this.selectStrategy(evaluationFeedback);
|
|
155
|
+
|
|
156
|
+
let systemPrompt: string;
|
|
157
|
+
let userPrompt: string;
|
|
158
|
+
|
|
159
|
+
switch (strategy) {
|
|
160
|
+
case 'expand':
|
|
161
|
+
systemPrompt = `You are a content expansion specialist. Your role is to add depth, detail, and examples to make content more comprehensive while preserving the core message.
|
|
162
|
+
|
|
163
|
+
Guidelines:
|
|
164
|
+
1. Add specific examples for abstract points
|
|
165
|
+
2. Include more context and background
|
|
166
|
+
3. Expand on underexplained concepts
|
|
167
|
+
4. Add supporting evidence or details
|
|
168
|
+
5. Maintain clarity and conciseness`;
|
|
169
|
+
|
|
170
|
+
userPrompt = `Expand this content with more detail and examples:
|
|
171
|
+
|
|
172
|
+
ORIGINAL REQUEST: ${originalRequest}
|
|
173
|
+
|
|
174
|
+
ITERATION: ${iterationNumber}
|
|
175
|
+
|
|
176
|
+
CURRENT CONTENT:
|
|
177
|
+
${content}
|
|
178
|
+
|
|
179
|
+
ISSUES TO ADDRESS (expand on these):
|
|
180
|
+
${evaluationFeedback.specificIssues.map(i => `• ${i}`).join('\n')}
|
|
181
|
+
|
|
182
|
+
Provide the expanded content directly.`;
|
|
183
|
+
break;
|
|
184
|
+
|
|
185
|
+
case 'restructure':
|
|
186
|
+
systemPrompt = `You are a content restructuring specialist. Your role is to reorganize content for better clarity, flow, and logical structure.
|
|
187
|
+
|
|
188
|
+
Guidelines:
|
|
189
|
+
1. Use clearer topic organization
|
|
190
|
+
2. Improve logical flow and transitions
|
|
191
|
+
3. Strengthen paragraph structure
|
|
192
|
+
4. Use headers or sections if appropriate
|
|
193
|
+
5. Ensure each section flows naturally to the next`;
|
|
194
|
+
|
|
195
|
+
userPrompt = `Restructure this content for better clarity and flow:
|
|
196
|
+
|
|
197
|
+
ORIGINAL REQUEST: ${originalRequest}
|
|
198
|
+
|
|
199
|
+
ITERATION: ${iterationNumber}
|
|
200
|
+
|
|
201
|
+
CURRENT CONTENT:
|
|
202
|
+
${content}
|
|
203
|
+
|
|
204
|
+
STRUCTURAL ISSUES TO FIX:
|
|
205
|
+
${evaluationFeedback.specificIssues.map(i => `• ${i}`).join('\n')}
|
|
206
|
+
|
|
207
|
+
Provide the restructured content directly.`;
|
|
208
|
+
break;
|
|
209
|
+
case 'refine':
|
|
210
|
+
systemPrompt = `You are a content refinement specialist. Your role is to polish and improve content quality through careful editing.
|
|
211
|
+
|
|
212
|
+
Guidelines:
|
|
213
|
+
1. Improve clarity and precision of language
|
|
214
|
+
2. Eliminate redundancy and wordiness
|
|
215
|
+
3. Enhance readability
|
|
216
|
+
4. Fix any grammatical or stylistic issues
|
|
217
|
+
5. Ensure tone is appropriate`;
|
|
218
|
+
|
|
219
|
+
userPrompt = `Refine this content for better quality:
|
|
220
|
+
|
|
221
|
+
ORIGINAL REQUEST: ${originalRequest}
|
|
222
|
+
|
|
223
|
+
ITERATION: ${iterationNumber}
|
|
224
|
+
|
|
225
|
+
CURRENT CONTENT:
|
|
226
|
+
${content}
|
|
227
|
+
|
|
228
|
+
ISSUES TO ADDRESS:
|
|
229
|
+
${evaluationFeedback.specificIssues.map(i => `• ${i}`).join('\n')}
|
|
230
|
+
|
|
231
|
+
SUGGESTIONS TO IMPLEMENT:
|
|
232
|
+
${evaluationFeedback.improvementSuggestions.map(s => `• ${s}`).join('\n')}
|
|
233
|
+
|
|
234
|
+
Provide the refined content directly.`;
|
|
235
|
+
break;
|
|
236
|
+
default: {
|
|
237
|
+
const exhaustiveCheck: never = strategy;
|
|
238
|
+
throw new Error(`Unsupported optimization strategy: ${exhaustiveCheck}`);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
try {
|
|
243
|
+
const { text: optimizedContent } = await generateText({
|
|
244
|
+
model: this.modelId,
|
|
245
|
+
system: systemPrompt,
|
|
246
|
+
prompt: userPrompt,
|
|
247
|
+
});
|
|
248
|
+
|
|
249
|
+
return optimizedContent;
|
|
250
|
+
} catch (error) {
|
|
251
|
+
throw new Error(
|
|
252
|
+
`Output optimization failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
253
|
+
);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* Hybrid Optimizer
|
|
260
|
+
* Combines prompt and output optimization strategies
|
|
261
|
+
* Adapts strategy based on feedback type and iteration number
|
|
262
|
+
*/
|
|
263
|
+
export class HybridOptimizer implements Optimizer {
|
|
264
|
+
private promptOptimizer: Optimizer;
|
|
265
|
+
private outputOptimizer: Optimizer;
|
|
266
|
+
|
|
267
|
+
constructor(promptOptimizerModel?: string, outputOptimizerModel?: string) {
|
|
268
|
+
this.promptOptimizer = new PromptOptimizer(
|
|
269
|
+
promptOptimizerModel || 'anthropic/claude-3-5-sonnet-20241022',
|
|
270
|
+
);
|
|
271
|
+
this.outputOptimizer = new OutputOptimizer(
|
|
272
|
+
outputOptimizerModel || 'anthropic/claude-3-5-sonnet-20241022',
|
|
273
|
+
);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* Choose optimization approach based on iteration and feedback
|
|
278
|
+
*/
|
|
279
|
+
async optimize(input: OptimizerInput): Promise<string> {
|
|
280
|
+
const { iterationNumber = 1 } = input;
|
|
281
|
+
|
|
282
|
+
// Early iterations: use output optimizer (faster, targeted)
|
|
283
|
+
if (iterationNumber <= 2) {
|
|
284
|
+
return this.outputOptimizer.optimize(input);
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
// Later iterations: use prompt optimizer (more comprehensive)
|
|
288
|
+
if (iterationNumber <= 4) {
|
|
289
|
+
return this.promptOptimizer.optimize(input);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Final iteration: use output optimizer for final polish
|
|
293
|
+
return this.outputOptimizer.optimize(input);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
/**
|
|
298
|
+
* Factory function to create prompt optimizer
|
|
299
|
+
*/
|
|
300
|
+
export function createPromptOptimizer(modelId?: string): Optimizer {
|
|
301
|
+
return new PromptOptimizer(modelId);
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
/**
|
|
305
|
+
* Factory function to create output optimizer
|
|
306
|
+
*/
|
|
307
|
+
export function createOutputOptimizer(
|
|
308
|
+
modelId?: string,
|
|
309
|
+
strategy?: 'expand' | 'refine' | 'restructure',
|
|
310
|
+
): Optimizer {
|
|
311
|
+
return new OutputOptimizer(modelId, strategy);
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
/**
|
|
315
|
+
* Factory function to create hybrid optimizer
|
|
316
|
+
*/
|
|
317
|
+
export function createHybridOptimizer(
|
|
318
|
+
promptOptimizerModel?: string,
|
|
319
|
+
outputOptimizerModel?: string,
|
|
320
|
+
): Optimizer {
|
|
321
|
+
return new HybridOptimizer(promptOptimizerModel, outputOptimizerModel);
|
|
322
|
+
}
|
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Evaluator-Optimizer Schema Definitions
|
|
3
|
+
* Based on VERCEL_AI_SDK_V6_PATTERNS.md section 4.2
|
|
4
|
+
* Comprehensive type definitions for iterative quality refinement
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
|
|
9
|
+
/** Minimum iteration number. */
|
|
10
|
+
const MIN_ITERATION_NUMBER = 1;
|
|
11
|
+
|
|
12
|
+
/** Maximum iteration number for safety. */
|
|
13
|
+
const MAX_ITERATION_NUMBER = 100;
|
|
14
|
+
|
|
15
|
+
/** Minimum quality threshold. */
|
|
16
|
+
const MIN_QUALITY_THRESHOLD = 1;
|
|
17
|
+
|
|
18
|
+
/** Maximum quality threshold. */
|
|
19
|
+
const MAX_QUALITY_THRESHOLD = 10;
|
|
20
|
+
|
|
21
|
+
/** Maximum allowed issues before failing threshold. */
|
|
22
|
+
const MAX_ALLOWED_ISSUES = 100;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Evaluation result schema with 9-dimensional assessment
|
|
26
|
+
* Used by evaluator tool to assess content quality across multiple criteria
|
|
27
|
+
*/
|
|
28
|
+
export const EvaluationResultSchema = z.object({
|
|
29
|
+
/**
|
|
30
|
+
* Overall quality score (1-10)
|
|
31
|
+
* 1-3: Poor, significant issues
|
|
32
|
+
* 4-6: Fair, notable problems
|
|
33
|
+
* 7-8: Good, minor improvements needed
|
|
34
|
+
* 9-10: Excellent, meets or exceeds threshold
|
|
35
|
+
*/
|
|
36
|
+
qualityScore: z.number().min(1).max(10),
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Checks if original tone is preserved in the content
|
|
40
|
+
* True: Tone maintained appropriately
|
|
41
|
+
* False: Tone has been altered inappropriately
|
|
42
|
+
*/
|
|
43
|
+
preservesTone: z.boolean(),
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Checks if nuance and subtlety are preserved
|
|
47
|
+
* True: Nuanced meaning preserved
|
|
48
|
+
* False: Oversimplified or missing context
|
|
49
|
+
*/
|
|
50
|
+
preservesNuance: z.boolean(),
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Cultural sensitivity and accuracy assessment
|
|
54
|
+
* True: Culturally appropriate and accurate
|
|
55
|
+
* False: Contains cultural inaccuracies or insensitivity
|
|
56
|
+
*/
|
|
57
|
+
culturallyAccurate: z.boolean(),
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Technical accuracy and correctness
|
|
61
|
+
* True: All technical content is accurate
|
|
62
|
+
* False: Contains technical errors or inaccuracies
|
|
63
|
+
*/
|
|
64
|
+
technicallyCorrect: z.boolean(),
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Array of specific issues found during evaluation
|
|
68
|
+
* Each string describes a concrete problem
|
|
69
|
+
* Examples: "Missing context", "Grammatical error", "Unclear reference"
|
|
70
|
+
*/
|
|
71
|
+
specificIssues: z.array(z.string()),
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Actionable suggestions for improvement
|
|
75
|
+
* Each string provides specific guidance on how to improve
|
|
76
|
+
* Examples: "Expand paragraph 2", "Add examples", "Clarify terminology"
|
|
77
|
+
*/
|
|
78
|
+
improvementSuggestions: z.array(z.string()),
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Identified strengths to preserve during optimization
|
|
82
|
+
* These aspects should be maintained and not changed during optimization
|
|
83
|
+
* Examples: "Strong opening", "Clear methodology", "Engaging examples"
|
|
84
|
+
*/
|
|
85
|
+
strengths: z.array(z.string()),
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Summary assessment of the overall content quality
|
|
89
|
+
* Brief narrative summary combining all evaluation dimensions
|
|
90
|
+
*/
|
|
91
|
+
overallAssessment: z.string(),
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Boolean indicating if content meets quality threshold
|
|
95
|
+
* Automatically determined: meetsThreshold = qualityScore >= targetThreshold
|
|
96
|
+
* True: Content meets or exceeds threshold, ready to deliver
|
|
97
|
+
* False: Content needs optimization cycle
|
|
98
|
+
*/
|
|
99
|
+
meetsThreshold: z.boolean(),
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Type extracted from EvaluationResultSchema
|
|
104
|
+
*/
|
|
105
|
+
export type EvaluationResult = z.infer<typeof EvaluationResultSchema>;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Optimizer tool input schema
|
|
109
|
+
* Defines what information optimizer receives to improve content
|
|
110
|
+
*/
|
|
111
|
+
export const OptimizerInputSchema = z.object({
|
|
112
|
+
/**
|
|
113
|
+
* The current content that needs optimization
|
|
114
|
+
*/
|
|
115
|
+
content: z.string(),
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Evaluation feedback from the evaluator tool
|
|
119
|
+
* Contains scores, issues, and suggestions
|
|
120
|
+
*/
|
|
121
|
+
evaluationFeedback: EvaluationResultSchema,
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* The original user request that spawned this content generation
|
|
125
|
+
* Used to ensure optimizations stay aligned with original intent
|
|
126
|
+
*/
|
|
127
|
+
originalRequest: z.string(),
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Optional iteration context (1-100).
|
|
131
|
+
*/
|
|
132
|
+
iterationNumber: z.number().min(MIN_ITERATION_NUMBER).max(MAX_ITERATION_NUMBER).optional(),
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Optional previous versions for comparison.
|
|
136
|
+
*/
|
|
137
|
+
previousVersions: z.array(z.string()).optional(),
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
export type OptimizerInput = z.infer<typeof OptimizerInputSchema>;
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Evaluator tool input schema
|
|
144
|
+
* Defines what information evaluator receives
|
|
145
|
+
*/
|
|
146
|
+
export const EvaluatorInputSchema = z.object({
|
|
147
|
+
/**
|
|
148
|
+
* Content to evaluate
|
|
149
|
+
*/
|
|
150
|
+
content: z.string(),
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Original request that generated this content
|
|
154
|
+
* Provides context for evaluation
|
|
155
|
+
*/
|
|
156
|
+
originalRequest: z.string(),
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Optional evaluation criteria and thresholds.
|
|
160
|
+
*/
|
|
161
|
+
criteria: z
|
|
162
|
+
.object({
|
|
163
|
+
/**
|
|
164
|
+
* Target quality threshold (default: 8).
|
|
165
|
+
* Content must reach this score to pass.
|
|
166
|
+
*/
|
|
167
|
+
threshold: z.number().min(MIN_QUALITY_THRESHOLD).max(MAX_QUALITY_THRESHOLD).default(8),
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Specific evaluation focus areas.
|
|
171
|
+
* If provided, evaluator emphasizes these dimensions.
|
|
172
|
+
*/
|
|
173
|
+
focusAreas: z.array(z.string()).optional(),
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Maximum allowed issues before failing threshold.
|
|
177
|
+
* If provided, helps determine meetsThreshold.
|
|
178
|
+
*/
|
|
179
|
+
maxAllowedIssues: z.number().min(0).max(MAX_ALLOWED_ISSUES).optional(),
|
|
180
|
+
})
|
|
181
|
+
.optional(),
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Optional iteration context (1-100).
|
|
185
|
+
*/
|
|
186
|
+
iterationNumber: z.number().min(MIN_ITERATION_NUMBER).max(MAX_ITERATION_NUMBER).optional(),
|
|
187
|
+
});
|
|
188
|
+
|
|
189
|
+
export type EvaluatorInput = z.infer<typeof EvaluatorInputSchema>;
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Feedback loop configuration
|
|
193
|
+
*/
|
|
194
|
+
export const FeedbackLoopConfigSchema = z.object({
|
|
195
|
+
/**
|
|
196
|
+
* Maximum number of evaluation-optimization cycles (default: 5)
|
|
197
|
+
*/
|
|
198
|
+
maxIterations: z.number().min(1).max(10).default(5),
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Target quality score threshold (default: 8, range 1-10)
|
|
202
|
+
* Content must reach this score to exit the loop
|
|
203
|
+
*/
|
|
204
|
+
targetScore: z.number().min(1).max(10).default(8),
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Enable detailed logging of each cycle (default: false)
|
|
208
|
+
*/
|
|
209
|
+
enableLogging: z.boolean().default(false),
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Stop on first threshold achievement (default: true)
|
|
213
|
+
* If false, continues to attempt reaching even higher scores
|
|
214
|
+
*/
|
|
215
|
+
stopOnThreshold: z.boolean().default(true),
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Detect diminishing returns after N cycles without improvement
|
|
219
|
+
*/
|
|
220
|
+
diminishingReturnThreshold: z.number().min(1).default(2),
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
export type FeedbackLoopConfig = z.infer<typeof FeedbackLoopConfigSchema>;
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Complete optimization result returned by feedback loop
|
|
227
|
+
*/
|
|
228
|
+
export const OptimizedResultSchema = z.object({
|
|
229
|
+
/**
|
|
230
|
+
* Final optimized content
|
|
231
|
+
*/
|
|
232
|
+
finalContent: z.string(),
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Final evaluation result
|
|
236
|
+
*/
|
|
237
|
+
finalEvaluation: EvaluationResultSchema,
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Total number of cycles completed
|
|
241
|
+
*/
|
|
242
|
+
cyclesCompleted: z.number(),
|
|
243
|
+
|
|
244
|
+
/**
|
|
245
|
+
* Whether content met threshold
|
|
246
|
+
*/
|
|
247
|
+
meetsThreshold: z.boolean(),
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* History of evaluation scores across cycles
|
|
251
|
+
* Index 0 = initial evaluation, last index = final evaluation
|
|
252
|
+
*/
|
|
253
|
+
scoreHistory: z.array(z.number()),
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* History of content versions
|
|
257
|
+
* Index 0 = initial content, last index = final content
|
|
258
|
+
*/
|
|
259
|
+
contentHistory: z.array(z.string()),
|
|
260
|
+
|
|
261
|
+
/**
|
|
262
|
+
* Reason for loop termination
|
|
263
|
+
* - "threshold_met": reached target score
|
|
264
|
+
* - "max_iterations": reached max cycles without meeting threshold
|
|
265
|
+
* - "diminishing_returns": detected diminishing returns
|
|
266
|
+
* - "error": error occurred during processing
|
|
267
|
+
*/
|
|
268
|
+
terminationReason: z.enum(['threshold_met', 'max_iterations', 'diminishing_returns', 'error']),
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* Optional error message if termination reason is "error"
|
|
272
|
+
*/
|
|
273
|
+
error: z.string().optional(),
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Metadata about the optimization process
|
|
277
|
+
*/
|
|
278
|
+
metadata: z
|
|
279
|
+
.object({
|
|
280
|
+
startTime: z.string(),
|
|
281
|
+
endTime: z.string(),
|
|
282
|
+
processingTimeMs: z.number(),
|
|
283
|
+
averageScoreImprovement: z.number(),
|
|
284
|
+
})
|
|
285
|
+
.optional(),
|
|
286
|
+
});
|
|
287
|
+
|
|
288
|
+
export type OptimizedResult = z.infer<typeof OptimizedResultSchema>;
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* Evaluator interface for dependency injection
|
|
292
|
+
*/
|
|
293
|
+
export interface Evaluator {
|
|
294
|
+
evaluate(input: EvaluatorInput): Promise<EvaluationResult>;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
/**
|
|
298
|
+
* Optimizer interface for dependency injection
|
|
299
|
+
*/
|
|
300
|
+
export interface Optimizer {
|
|
301
|
+
optimize(input: OptimizerInput): Promise<string>;
|
|
302
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Shared utilities for evaluator-optimizer module
|
|
3
|
+
* @module @od-oneapp/ai-platform/agents/evaluator-optimizer/utils
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { anthropic, openai, type SDKLanguageModel } from '../../shared';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Creates an AI SDK LanguageModel instance from a provider-prefixed model ID string.
|
|
10
|
+
*
|
|
11
|
+
* Parses the provider prefix (e.g., `openai/`, `anthropic/`) and instantiates
|
|
12
|
+
* the corresponding SDK provider with the model name.
|
|
13
|
+
*
|
|
14
|
+
* @param modelId - Model ID in `provider/model-name` format (e.g., `'openai/gpt-4o-mini'`)
|
|
15
|
+
* @returns AI SDK LanguageModel instance
|
|
16
|
+
* @throws Error if the provider prefix is missing or unsupported
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```ts
|
|
20
|
+
* const model = createLanguageModelFromId('openai/gpt-4o-mini');
|
|
21
|
+
* const model2 = createLanguageModelFromId('anthropic/claude-sonnet-4-20250514');
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
export function createLanguageModelFromId(modelId: string): SDKLanguageModel {
|
|
25
|
+
const [provider, ...modelIdParts] = modelId.split('/');
|
|
26
|
+
const actualModelId = modelIdParts.join('/');
|
|
27
|
+
|
|
28
|
+
if (!provider) {
|
|
29
|
+
throw new Error(
|
|
30
|
+
'Model ID must include a provider prefix like "openai/..." or "anthropic/...".',
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
switch (provider) {
|
|
35
|
+
case 'openai':
|
|
36
|
+
return openai(actualModelId);
|
|
37
|
+
case 'anthropic':
|
|
38
|
+
return anthropic(actualModelId);
|
|
39
|
+
default:
|
|
40
|
+
throw new Error(`Unsupported provider: ${provider}. Supported providers: openai, anthropic`);
|
|
41
|
+
}
|
|
42
|
+
}
|