@compresr/sdk 1.3.2 → 1.5.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/LICENSE +201 -0
- package/README.md +237 -173
- package/dist/cjs/agents/engine.d.ts +121 -0
- package/dist/cjs/agents/engine.d.ts.map +1 -0
- package/dist/cjs/agents/engine.js +517 -0
- package/dist/cjs/agents/engine.js.map +1 -0
- package/dist/cjs/agents/facades/anthropic.d.ts +26 -0
- package/dist/cjs/agents/facades/anthropic.d.ts.map +1 -0
- package/dist/cjs/agents/facades/anthropic.js +46 -0
- package/dist/cjs/agents/facades/anthropic.js.map +1 -0
- package/dist/cjs/agents/facades/index.d.ts +4 -0
- package/dist/cjs/agents/facades/index.d.ts.map +1 -0
- package/dist/cjs/agents/facades/index.js +10 -0
- package/dist/cjs/agents/facades/index.js.map +1 -0
- package/dist/cjs/agents/facades/native.d.ts +29 -0
- package/dist/cjs/agents/facades/native.d.ts.map +1 -0
- package/dist/cjs/agents/facades/native.js +27 -0
- package/dist/cjs/agents/facades/native.js.map +1 -0
- package/dist/cjs/agents/facades/openai.d.ts +32 -0
- package/dist/cjs/agents/facades/openai.d.ts.map +1 -0
- package/dist/cjs/agents/facades/openai.js +55 -0
- package/dist/cjs/agents/facades/openai.js.map +1 -0
- package/dist/cjs/agents/index.d.ts +23 -0
- package/dist/cjs/agents/index.d.ts.map +1 -0
- package/dist/cjs/agents/index.js +37 -0
- package/dist/cjs/agents/index.js.map +1 -0
- package/dist/cjs/agents/normalized.d.ts +59 -0
- package/dist/cjs/agents/normalized.d.ts.map +1 -0
- package/dist/cjs/agents/normalized.js +35 -0
- package/dist/cjs/agents/normalized.js.map +1 -0
- package/dist/cjs/agents/schemas/anthropic.d.ts +46 -0
- package/dist/cjs/agents/schemas/anthropic.d.ts.map +1 -0
- package/dist/cjs/agents/schemas/anthropic.js +55 -0
- package/dist/cjs/agents/schemas/anthropic.js.map +1 -0
- package/dist/cjs/agents/schemas/index.d.ts +3 -0
- package/dist/cjs/agents/schemas/index.d.ts.map +1 -0
- package/dist/cjs/agents/schemas/index.js +8 -0
- package/dist/cjs/agents/schemas/index.js.map +1 -0
- package/dist/cjs/agents/schemas/openai.d.ts +51 -0
- package/dist/cjs/agents/schemas/openai.d.ts.map +1 -0
- package/dist/cjs/agents/schemas/openai.js +60 -0
- package/dist/cjs/agents/schemas/openai.js.map +1 -0
- package/dist/cjs/agents/tools/index.d.ts +2 -0
- package/dist/cjs/agents/tools/index.d.ts.map +1 -0
- package/dist/cjs/agents/tools/index.js +7 -0
- package/dist/cjs/agents/tools/index.js.map +1 -0
- package/dist/cjs/agents/tools/web-search.d.ts +56 -0
- package/dist/cjs/agents/tools/web-search.d.ts.map +1 -0
- package/dist/cjs/agents/tools/web-search.js +128 -0
- package/dist/cjs/agents/tools/web-search.js.map +1 -0
- package/dist/cjs/clients/compression.d.ts +39 -147
- package/dist/cjs/clients/compression.d.ts.map +1 -1
- package/dist/cjs/clients/compression.js +114 -194
- package/dist/cjs/clients/compression.js.map +1 -1
- package/dist/cjs/clients/index.d.ts +1 -1
- package/dist/cjs/clients/index.d.ts.map +1 -1
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/config/constants.d.ts +3 -28
- package/dist/cjs/config/constants.d.ts.map +1 -1
- package/dist/cjs/config/constants.js +4 -43
- package/dist/cjs/config/constants.js.map +1 -1
- package/dist/cjs/config/endpoints.d.ts +3 -15
- package/dist/cjs/config/endpoints.d.ts.map +1 -1
- package/dist/cjs/config/endpoints.js +3 -20
- package/dist/cjs/config/endpoints.js.map +1 -1
- package/dist/cjs/config/index.d.ts +1 -1
- package/dist/cjs/config/index.d.ts.map +1 -1
- package/dist/cjs/config/index.js +1 -7
- package/dist/cjs/config/index.js.map +1 -1
- package/dist/cjs/errors/exceptions.d.ts.map +1 -1
- package/dist/cjs/errors/exceptions.js +0 -6
- package/dist/cjs/errors/exceptions.js.map +1 -1
- package/dist/cjs/http/client.d.ts +5 -17
- package/dist/cjs/http/client.d.ts.map +1 -1
- package/dist/cjs/http/client.js +110 -115
- package/dist/cjs/http/client.js.map +1 -1
- package/dist/cjs/index.d.ts +7 -15
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +22 -25
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/integrations/_shared/client.d.ts +13 -0
- package/dist/cjs/integrations/_shared/client.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/client.js +21 -0
- package/dist/cjs/integrations/_shared/client.js.map +1 -0
- package/dist/cjs/integrations/_shared/compress.d.ts +28 -0
- package/dist/cjs/integrations/_shared/compress.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/compress.js +38 -0
- package/dist/cjs/integrations/_shared/compress.js.map +1 -0
- package/dist/cjs/integrations/_shared/errors.d.ts +20 -0
- package/dist/cjs/integrations/_shared/errors.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/errors.js +49 -0
- package/dist/cjs/integrations/_shared/errors.js.map +1 -0
- package/dist/cjs/integrations/_shared/filters.d.ts +20 -0
- package/dist/cjs/integrations/_shared/filters.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/filters.js +33 -0
- package/dist/cjs/integrations/_shared/filters.js.map +1 -0
- package/dist/cjs/integrations/_shared/index.d.ts +7 -0
- package/dist/cjs/integrations/_shared/index.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/index.js +26 -0
- package/dist/cjs/integrations/_shared/index.js.map +1 -0
- package/dist/cjs/integrations/_shared/query.d.ts +48 -0
- package/dist/cjs/integrations/_shared/query.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/query.js +141 -0
- package/dist/cjs/integrations/_shared/query.js.map +1 -0
- package/dist/cjs/integrations/_shared/tokens.d.ts +20 -0
- package/dist/cjs/integrations/_shared/tokens.d.ts.map +1 -0
- package/dist/cjs/integrations/_shared/tokens.js +26 -0
- package/dist/cjs/integrations/_shared/tokens.js.map +1 -0
- package/dist/cjs/integrations/langchain/index.d.ts +10 -0
- package/dist/cjs/integrations/langchain/index.d.ts.map +1 -0
- package/dist/cjs/integrations/langchain/index.js +18 -0
- package/dist/cjs/integrations/langchain/index.js.map +1 -0
- package/dist/cjs/integrations/langchain/middleware.d.ts +94 -0
- package/dist/cjs/integrations/langchain/middleware.d.ts.map +1 -0
- package/dist/cjs/integrations/langchain/middleware.js +273 -0
- package/dist/cjs/integrations/langchain/middleware.js.map +1 -0
- package/dist/cjs/integrations/langchain/retriever.d.ts +54 -0
- package/dist/cjs/integrations/langchain/retriever.d.ts.map +1 -0
- package/dist/cjs/integrations/langchain/retriever.js +118 -0
- package/dist/cjs/integrations/langchain/retriever.js.map +1 -0
- package/dist/cjs/integrations/langchain/wrappers.d.ts +39 -0
- package/dist/cjs/integrations/langchain/wrappers.d.ts.map +1 -0
- package/dist/cjs/integrations/langchain/wrappers.js +88 -0
- package/dist/cjs/integrations/langchain/wrappers.js.map +1 -0
- package/dist/cjs/integrations/langgraph/checkpoint.d.ts +49 -0
- package/dist/cjs/integrations/langgraph/checkpoint.d.ts.map +1 -0
- package/dist/cjs/integrations/langgraph/checkpoint.js +79 -0
- package/dist/cjs/integrations/langgraph/checkpoint.js.map +1 -0
- package/dist/cjs/integrations/langgraph/handoff.d.ts +44 -0
- package/dist/cjs/integrations/langgraph/handoff.d.ts.map +1 -0
- package/dist/cjs/integrations/langgraph/handoff.js +86 -0
- package/dist/cjs/integrations/langgraph/handoff.js.map +1 -0
- package/dist/cjs/integrations/langgraph/index.d.ts +18 -0
- package/dist/cjs/integrations/langgraph/index.d.ts.map +1 -0
- package/dist/cjs/integrations/langgraph/index.js +28 -0
- package/dist/cjs/integrations/langgraph/index.js.map +1 -0
- package/dist/cjs/integrations/langgraph/nodes.d.ts +34 -0
- package/dist/cjs/integrations/langgraph/nodes.d.ts.map +1 -0
- package/dist/cjs/integrations/langgraph/nodes.js +54 -0
- package/dist/cjs/integrations/langgraph/nodes.js.map +1 -0
- package/dist/cjs/integrations/langgraph/store.d.ts +76 -0
- package/dist/cjs/integrations/langgraph/store.d.ts.map +1 -0
- package/dist/cjs/integrations/langgraph/store.js +121 -0
- package/dist/cjs/integrations/langgraph/store.js.map +1 -0
- package/dist/cjs/integrations/llamaindex/index.d.ts +10 -0
- package/dist/cjs/integrations/llamaindex/index.d.ts.map +1 -0
- package/dist/cjs/integrations/llamaindex/index.js +15 -0
- package/dist/cjs/integrations/llamaindex/index.js.map +1 -0
- package/dist/cjs/integrations/llamaindex/memory.d.ts +74 -0
- package/dist/cjs/integrations/llamaindex/memory.d.ts.map +1 -0
- package/dist/cjs/integrations/llamaindex/memory.js +95 -0
- package/dist/cjs/integrations/llamaindex/memory.js.map +1 -0
- package/dist/cjs/integrations/llamaindex/postprocessor.d.ts +66 -0
- package/dist/cjs/integrations/llamaindex/postprocessor.d.ts.map +1 -0
- package/dist/cjs/integrations/llamaindex/postprocessor.js +172 -0
- package/dist/cjs/integrations/llamaindex/postprocessor.js.map +1 -0
- package/dist/cjs/integrations/llamaindex/wrappers.d.ts +38 -0
- package/dist/cjs/integrations/llamaindex/wrappers.d.ts.map +1 -0
- package/dist/cjs/integrations/llamaindex/wrappers.js +46 -0
- package/dist/cjs/integrations/llamaindex/wrappers.js.map +1 -0
- package/dist/cjs/logger.d.ts +18 -0
- package/dist/cjs/logger.d.ts.map +1 -0
- package/dist/cjs/logger.js +41 -0
- package/dist/cjs/logger.js.map +1 -0
- package/dist/cjs/schemas/compression.d.ts +10 -80
- package/dist/cjs/schemas/compression.d.ts.map +1 -1
- package/dist/cjs/schemas/compression.js +4 -57
- package/dist/cjs/schemas/compression.js.map +1 -1
- package/dist/cjs/schemas/index.d.ts +1 -4
- package/dist/cjs/schemas/index.d.ts.map +1 -1
- package/dist/cjs/schemas/index.js +1 -8
- package/dist/cjs/schemas/index.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/agents/engine.d.ts +121 -0
- package/dist/esm/agents/engine.d.ts.map +1 -0
- package/dist/esm/agents/engine.js +478 -0
- package/dist/esm/agents/engine.js.map +1 -0
- package/dist/esm/agents/facades/anthropic.d.ts +26 -0
- package/dist/esm/agents/facades/anthropic.d.ts.map +1 -0
- package/dist/esm/agents/facades/anthropic.js +43 -0
- package/dist/esm/agents/facades/anthropic.js.map +1 -0
- package/dist/esm/agents/facades/index.d.ts +4 -0
- package/dist/esm/agents/facades/index.d.ts.map +1 -0
- package/dist/esm/agents/facades/index.js +4 -0
- package/dist/esm/agents/facades/index.js.map +1 -0
- package/dist/esm/agents/facades/native.d.ts +29 -0
- package/dist/esm/agents/facades/native.d.ts.map +1 -0
- package/dist/esm/agents/facades/native.js +24 -0
- package/dist/esm/agents/facades/native.js.map +1 -0
- package/dist/esm/agents/facades/openai.d.ts +32 -0
- package/dist/esm/agents/facades/openai.d.ts.map +1 -0
- package/dist/esm/agents/facades/openai.js +52 -0
- package/dist/esm/agents/facades/openai.js.map +1 -0
- package/dist/esm/agents/index.d.ts +23 -0
- package/dist/esm/agents/index.d.ts.map +1 -0
- package/dist/esm/agents/index.js +23 -0
- package/dist/esm/agents/index.js.map +1 -0
- package/dist/esm/agents/normalized.d.ts +59 -0
- package/dist/esm/agents/normalized.d.ts.map +1 -0
- package/dist/esm/agents/normalized.js +31 -0
- package/dist/esm/agents/normalized.js.map +1 -0
- package/dist/esm/agents/schemas/anthropic.d.ts +46 -0
- package/dist/esm/agents/schemas/anthropic.d.ts.map +1 -0
- package/dist/esm/agents/schemas/anthropic.js +52 -0
- package/dist/esm/agents/schemas/anthropic.js.map +1 -0
- package/dist/esm/agents/schemas/index.d.ts +3 -0
- package/dist/esm/agents/schemas/index.d.ts.map +1 -0
- package/dist/esm/agents/schemas/index.js +3 -0
- package/dist/esm/agents/schemas/index.js.map +1 -0
- package/dist/esm/agents/schemas/openai.d.ts +51 -0
- package/dist/esm/agents/schemas/openai.d.ts.map +1 -0
- package/dist/esm/agents/schemas/openai.js +57 -0
- package/dist/esm/agents/schemas/openai.js.map +1 -0
- package/dist/esm/agents/tools/index.d.ts +2 -0
- package/dist/esm/agents/tools/index.d.ts.map +1 -0
- package/dist/esm/agents/tools/index.js +2 -0
- package/dist/esm/agents/tools/index.js.map +1 -0
- package/dist/esm/agents/tools/web-search.d.ts +56 -0
- package/dist/esm/agents/tools/web-search.d.ts.map +1 -0
- package/dist/esm/agents/tools/web-search.js +91 -0
- package/dist/esm/agents/tools/web-search.js.map +1 -0
- package/dist/esm/clients/compression.d.ts +39 -147
- package/dist/esm/clients/compression.d.ts.map +1 -1
- package/dist/esm/clients/compression.js +117 -197
- package/dist/esm/clients/compression.js.map +1 -1
- package/dist/esm/clients/index.d.ts +1 -1
- package/dist/esm/clients/index.d.ts.map +1 -1
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/config/constants.d.ts +3 -28
- package/dist/esm/config/constants.d.ts.map +1 -1
- package/dist/esm/config/constants.js +3 -42
- package/dist/esm/config/constants.js.map +1 -1
- package/dist/esm/config/endpoints.d.ts +3 -15
- package/dist/esm/config/endpoints.d.ts.map +1 -1
- package/dist/esm/config/endpoints.js +3 -20
- package/dist/esm/config/endpoints.js.map +1 -1
- package/dist/esm/config/index.d.ts +1 -1
- package/dist/esm/config/index.d.ts.map +1 -1
- package/dist/esm/config/index.js +1 -1
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/errors/exceptions.d.ts.map +1 -1
- package/dist/esm/errors/exceptions.js +0 -6
- package/dist/esm/errors/exceptions.js.map +1 -1
- package/dist/esm/http/client.d.ts +5 -17
- package/dist/esm/http/client.d.ts.map +1 -1
- package/dist/esm/http/client.js +110 -115
- package/dist/esm/http/client.js.map +1 -1
- package/dist/esm/index.d.ts +7 -15
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +7 -13
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/integrations/_shared/client.d.ts +13 -0
- package/dist/esm/integrations/_shared/client.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/client.js +17 -0
- package/dist/esm/integrations/_shared/client.js.map +1 -0
- package/dist/esm/integrations/_shared/compress.d.ts +28 -0
- package/dist/esm/integrations/_shared/compress.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/compress.js +35 -0
- package/dist/esm/integrations/_shared/compress.js.map +1 -0
- package/dist/esm/integrations/_shared/errors.d.ts +20 -0
- package/dist/esm/integrations/_shared/errors.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/errors.js +44 -0
- package/dist/esm/integrations/_shared/errors.js.map +1 -0
- package/dist/esm/integrations/_shared/filters.d.ts +20 -0
- package/dist/esm/integrations/_shared/filters.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/filters.js +30 -0
- package/dist/esm/integrations/_shared/filters.js.map +1 -0
- package/dist/esm/integrations/_shared/index.d.ts +7 -0
- package/dist/esm/integrations/_shared/index.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/index.js +7 -0
- package/dist/esm/integrations/_shared/index.js.map +1 -0
- package/dist/esm/integrations/_shared/query.d.ts +48 -0
- package/dist/esm/integrations/_shared/query.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/query.js +135 -0
- package/dist/esm/integrations/_shared/query.js.map +1 -0
- package/dist/esm/integrations/_shared/tokens.d.ts +20 -0
- package/dist/esm/integrations/_shared/tokens.d.ts.map +1 -0
- package/dist/esm/integrations/_shared/tokens.js +23 -0
- package/dist/esm/integrations/_shared/tokens.js.map +1 -0
- package/dist/esm/integrations/langchain/index.d.ts +10 -0
- package/dist/esm/integrations/langchain/index.d.ts.map +1 -0
- package/dist/esm/integrations/langchain/index.js +9 -0
- package/dist/esm/integrations/langchain/index.js.map +1 -0
- package/dist/esm/integrations/langchain/middleware.d.ts +94 -0
- package/dist/esm/integrations/langchain/middleware.d.ts.map +1 -0
- package/dist/esm/integrations/langchain/middleware.js +268 -0
- package/dist/esm/integrations/langchain/middleware.js.map +1 -0
- package/dist/esm/integrations/langchain/retriever.d.ts +54 -0
- package/dist/esm/integrations/langchain/retriever.d.ts.map +1 -0
- package/dist/esm/integrations/langchain/retriever.js +114 -0
- package/dist/esm/integrations/langchain/retriever.js.map +1 -0
- package/dist/esm/integrations/langchain/wrappers.d.ts +39 -0
- package/dist/esm/integrations/langchain/wrappers.d.ts.map +1 -0
- package/dist/esm/integrations/langchain/wrappers.js +84 -0
- package/dist/esm/integrations/langchain/wrappers.js.map +1 -0
- package/dist/esm/integrations/langgraph/checkpoint.d.ts +49 -0
- package/dist/esm/integrations/langgraph/checkpoint.d.ts.map +1 -0
- package/dist/esm/integrations/langgraph/checkpoint.js +75 -0
- package/dist/esm/integrations/langgraph/checkpoint.js.map +1 -0
- package/dist/esm/integrations/langgraph/handoff.d.ts +44 -0
- package/dist/esm/integrations/langgraph/handoff.d.ts.map +1 -0
- package/dist/esm/integrations/langgraph/handoff.js +83 -0
- package/dist/esm/integrations/langgraph/handoff.js.map +1 -0
- package/dist/esm/integrations/langgraph/index.d.ts +18 -0
- package/dist/esm/integrations/langgraph/index.d.ts.map +1 -0
- package/dist/esm/integrations/langgraph/index.js +17 -0
- package/dist/esm/integrations/langgraph/index.js.map +1 -0
- package/dist/esm/integrations/langgraph/nodes.d.ts +34 -0
- package/dist/esm/integrations/langgraph/nodes.d.ts.map +1 -0
- package/dist/esm/integrations/langgraph/nodes.js +51 -0
- package/dist/esm/integrations/langgraph/nodes.js.map +1 -0
- package/dist/esm/integrations/langgraph/store.d.ts +76 -0
- package/dist/esm/integrations/langgraph/store.d.ts.map +1 -0
- package/dist/esm/integrations/langgraph/store.js +117 -0
- package/dist/esm/integrations/langgraph/store.js.map +1 -0
- package/dist/esm/integrations/llamaindex/index.d.ts +10 -0
- package/dist/esm/integrations/llamaindex/index.d.ts.map +1 -0
- package/dist/esm/integrations/llamaindex/index.js +9 -0
- package/dist/esm/integrations/llamaindex/index.js.map +1 -0
- package/dist/esm/integrations/llamaindex/memory.d.ts +74 -0
- package/dist/esm/integrations/llamaindex/memory.d.ts.map +1 -0
- package/dist/esm/integrations/llamaindex/memory.js +91 -0
- package/dist/esm/integrations/llamaindex/memory.js.map +1 -0
- package/dist/esm/integrations/llamaindex/postprocessor.d.ts +66 -0
- package/dist/esm/integrations/llamaindex/postprocessor.d.ts.map +1 -0
- package/dist/esm/integrations/llamaindex/postprocessor.js +168 -0
- package/dist/esm/integrations/llamaindex/postprocessor.js.map +1 -0
- package/dist/esm/integrations/llamaindex/wrappers.d.ts +38 -0
- package/dist/esm/integrations/llamaindex/wrappers.d.ts.map +1 -0
- package/dist/esm/integrations/llamaindex/wrappers.js +43 -0
- package/dist/esm/integrations/llamaindex/wrappers.js.map +1 -0
- package/dist/esm/logger.d.ts +18 -0
- package/dist/esm/logger.d.ts.map +1 -0
- package/dist/esm/logger.js +37 -0
- package/dist/esm/logger.js.map +1 -0
- package/dist/esm/schemas/compression.d.ts +10 -80
- package/dist/esm/schemas/compression.d.ts.map +1 -1
- package/dist/esm/schemas/compression.js +3 -56
- package/dist/esm/schemas/compression.js.map +1 -1
- package/dist/esm/schemas/index.d.ts +1 -4
- package/dist/esm/schemas/index.d.ts.map +1 -1
- package/dist/esm/schemas/index.js +1 -6
- package/dist/esm/schemas/index.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +89 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../../../src/agents/facades/native.ts"],"names":[],"mappings":"AAgCA,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAsB,EACtB,OAAyB;IAEzB,MAAM,OAAO,GAAqC;QAChD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QACrD,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;KACrC,CAAC;IACF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAClE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAClE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACjF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5D,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAChD,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CompresrEngine } from '../engine.js';
|
|
2
|
+
import { type ChatCompletion } from '../schemas/openai.js';
|
|
3
|
+
export interface OpenAICompletionsCreateOptions {
|
|
4
|
+
/**
|
|
5
|
+
* Optional per-call model. Defaults to the model encoded on the engine's
|
|
6
|
+
* ``llm`` spec (``'openai:gpt-...'``). If neither is set, the engine throws
|
|
7
|
+
* ``CompresrError("missing_model")``.
|
|
8
|
+
*/
|
|
9
|
+
model?: string;
|
|
10
|
+
messages: ReadonlyArray<unknown>;
|
|
11
|
+
maxTokens?: number;
|
|
12
|
+
tools?: ReadonlyArray<unknown>;
|
|
13
|
+
config?: Record<string, unknown>;
|
|
14
|
+
temperature?: number;
|
|
15
|
+
topP?: number;
|
|
16
|
+
presencePenalty?: number;
|
|
17
|
+
frequencyPenalty?: number;
|
|
18
|
+
seed?: number;
|
|
19
|
+
stop?: string[];
|
|
20
|
+
logprobs?: boolean;
|
|
21
|
+
topLogprobs?: number;
|
|
22
|
+
}
|
|
23
|
+
export interface OpenAICompletionsFacade {
|
|
24
|
+
create(options: OpenAICompletionsCreateOptions): Promise<ChatCompletion>;
|
|
25
|
+
/** Streaming not yet implemented — throws. */
|
|
26
|
+
stream(options: OpenAICompletionsCreateOptions): Promise<never>;
|
|
27
|
+
}
|
|
28
|
+
export interface OpenAIChatFacade {
|
|
29
|
+
completions: OpenAICompletionsFacade;
|
|
30
|
+
}
|
|
31
|
+
export declare function openaiChatCompletions(engine: CompresrEngine): OpenAIChatFacade;
|
|
32
|
+
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/agents/facades/openai.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE7E,MAAM,WAAW,8BAA8B;IAC7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAIjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACzE,8CAA8C;IAC9C,MAAM,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,gBAAgB,CAsC9E"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAI-shaped facade — ``client.chat.completions.create(...)``.
|
|
3
|
+
*
|
|
4
|
+
* Delegates the actual run to a private :class:`CompresrEngine` and remaps the
|
|
5
|
+
* returned :class:`NormalizedResult` to an OpenAI ``ChatCompletion`` shape.
|
|
6
|
+
*
|
|
7
|
+
* Mirrors Python ``compresr/agents/facades/openai.py``.
|
|
8
|
+
*/
|
|
9
|
+
import { CompresrError } from '../../errors/index.js';
|
|
10
|
+
import { toChatCompletion } from '../schemas/openai.js';
|
|
11
|
+
export function openaiChatCompletions(engine) {
|
|
12
|
+
const completions = {
|
|
13
|
+
async create(options) {
|
|
14
|
+
const runOpts = {
|
|
15
|
+
messages: options.messages,
|
|
16
|
+
tools: options.tools ?? [],
|
|
17
|
+
maxTokens: options.maxTokens ?? 4096,
|
|
18
|
+
};
|
|
19
|
+
if (options.model !== undefined)
|
|
20
|
+
runOpts.model = options.model;
|
|
21
|
+
if (options.config !== undefined)
|
|
22
|
+
runOpts.config = options.config;
|
|
23
|
+
if (options.temperature !== undefined)
|
|
24
|
+
runOpts.temperature = options.temperature;
|
|
25
|
+
if (options.topP !== undefined)
|
|
26
|
+
runOpts.topP = options.topP;
|
|
27
|
+
if (options.presencePenalty !== undefined) {
|
|
28
|
+
runOpts.presencePenalty = options.presencePenalty;
|
|
29
|
+
}
|
|
30
|
+
if (options.frequencyPenalty !== undefined) {
|
|
31
|
+
runOpts.frequencyPenalty = options.frequencyPenalty;
|
|
32
|
+
}
|
|
33
|
+
if (options.seed !== undefined)
|
|
34
|
+
runOpts.seed = options.seed;
|
|
35
|
+
if (options.stop !== undefined)
|
|
36
|
+
runOpts.stop = options.stop;
|
|
37
|
+
if (options.logprobs !== undefined)
|
|
38
|
+
runOpts.logprobs = options.logprobs;
|
|
39
|
+
if (options.topLogprobs !== undefined) {
|
|
40
|
+
runOpts.topLogprobs = options.topLogprobs;
|
|
41
|
+
}
|
|
42
|
+
const result = await engine.run(runOpts);
|
|
43
|
+
const responseModel = options.model ?? engine.defaultModelName ?? '';
|
|
44
|
+
return toChatCompletion(result, { model: responseModel });
|
|
45
|
+
},
|
|
46
|
+
stream(_options) {
|
|
47
|
+
return Promise.reject(new CompresrError('streaming not yet implemented — Phase 2 work item', 'not_implemented'));
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
return { completions };
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=openai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/agents/facades/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAuB,MAAM,sBAAsB,CAAC;AAoC7E,MAAM,UAAU,qBAAqB,CAAC,MAAsB;IAC1D,MAAM,WAAW,GAA4B;QAC3C,KAAK,CAAC,MAAM,CAAC,OAAuC;YAClD,MAAM,OAAO,GAAqC;gBAChD,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;aACrC,CAAC;YACF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAClE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;gBAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACjF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC1C,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;YACpD,CAAC;YACD,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBAC3C,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YACtD,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YACxE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACtC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YAC5C,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;YACrE,OAAO,gBAAgB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,CAAC,QAAwC;YAC7C,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,aAAa,CACf,mDAAmD,EACnD,iBAAiB,CAClB,CACF,CAAC;QACJ,CAAC;KACF,CAAC;IACF,OAAO,EAAE,WAAW,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compresr agents — provider-shape facades over LangChain.js.
|
|
3
|
+
*
|
|
4
|
+
* Public surface is intentionally minimal. Heavy LangChain imports stay
|
|
5
|
+
* dynamic so ``import "@compresr/sdk/agents"`` stays cheap when the user
|
|
6
|
+
* only needs the type names.
|
|
7
|
+
*
|
|
8
|
+
* npm install langchain @langchain/core # engine peers
|
|
9
|
+
* npm install @langchain/anthropic # for anthropic:...
|
|
10
|
+
* npm install @langchain/openai # for openai:...
|
|
11
|
+
* npm install @langchain/google-genai # for google_genai:...
|
|
12
|
+
* npm install @langchain/tavily # for WebSearchTool.tavily
|
|
13
|
+
* npm install @langchain/community # for WebSearchTool.brave
|
|
14
|
+
*/
|
|
15
|
+
export { CompresrEngine, parseLlmSpec, type CompresrEngineOptions, type CompressionPolicyOptions, type RunOptions, } from './engine.js';
|
|
16
|
+
export { WebSearchTool, createWebSearchTool, type TavilyOptions, type BraveOptions, } from './tools/index.js';
|
|
17
|
+
export { type Citation, type CompresrStats, type NormalizedResult, type NormalizedToolUse, defaultCompresrStats, emptyNormalizedResult, } from './normalized.js';
|
|
18
|
+
export { anthropicMessages, type AnthropicMessagesFacade, type AnthropicMessagesCreateOptions, } from './facades/anthropic.js';
|
|
19
|
+
export { openaiChatCompletions, type OpenAIChatFacade, type OpenAICompletionsFacade, type OpenAICompletionsCreateOptions, } from './facades/openai.js';
|
|
20
|
+
export { nativeRun, type NativeRunOptions } from './facades/native.js';
|
|
21
|
+
export { type AnthropicMessage, type ContentBlock, type TextBlock, type ToolUseBlock, type AnthropicUsage, toAnthropicMessage, } from './schemas/anthropic.js';
|
|
22
|
+
export { type ChatCompletion, type ChatMessage, type Choice, type FunctionCall, type ToolCall, type OpenAIUsage, toChatCompletion, } from './schemas/openai.js';
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,cAAc,EACd,YAAY,EACZ,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,UAAU,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,GACpC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,GACpC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compresr agents — provider-shape facades over LangChain.js.
|
|
3
|
+
*
|
|
4
|
+
* Public surface is intentionally minimal. Heavy LangChain imports stay
|
|
5
|
+
* dynamic so ``import "@compresr/sdk/agents"`` stays cheap when the user
|
|
6
|
+
* only needs the type names.
|
|
7
|
+
*
|
|
8
|
+
* npm install langchain @langchain/core # engine peers
|
|
9
|
+
* npm install @langchain/anthropic # for anthropic:...
|
|
10
|
+
* npm install @langchain/openai # for openai:...
|
|
11
|
+
* npm install @langchain/google-genai # for google_genai:...
|
|
12
|
+
* npm install @langchain/tavily # for WebSearchTool.tavily
|
|
13
|
+
* npm install @langchain/community # for WebSearchTool.brave
|
|
14
|
+
*/
|
|
15
|
+
export { CompresrEngine, parseLlmSpec, } from './engine.js';
|
|
16
|
+
export { WebSearchTool, createWebSearchTool, } from './tools/index.js';
|
|
17
|
+
export { defaultCompresrStats, emptyNormalizedResult, } from './normalized.js';
|
|
18
|
+
export { anthropicMessages, } from './facades/anthropic.js';
|
|
19
|
+
export { openaiChatCompletions, } from './facades/openai.js';
|
|
20
|
+
export { nativeRun } from './facades/native.js';
|
|
21
|
+
export { toAnthropicMessage, } from './schemas/anthropic.js';
|
|
22
|
+
export { toChatCompletion, } from './schemas/openai.js';
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,cAAc,EACd,YAAY,GAIb,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,EACb,mBAAmB,GAGpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAKL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,GAGlB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,qBAAqB,GAItB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAyB,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAML,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAOL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalized result types used by Wave 2B's provider-shape facades.
|
|
3
|
+
*
|
|
4
|
+
* These shapes are intentionally provider-agnostic — every backend (Anthropic,
|
|
5
|
+
* OpenAI Responses, Gemini grounding) gets remapped into the same
|
|
6
|
+
* ``NormalizedResult`` by ``CompresrEngine``. Plain interfaces keep the shape
|
|
7
|
+
* immutable on the type-level and free of runtime overhead.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors Python ``compresr/agents/normalized.py``.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Aggregate compression stats for a single agent run.
|
|
13
|
+
*
|
|
14
|
+
* ``byTool`` maps tool name -> tokens saved. Wave 2A leaves these at
|
|
15
|
+
* zero; Wave 2B+ will plumb the actual middleware savings.
|
|
16
|
+
*/
|
|
17
|
+
export interface CompresrStats {
|
|
18
|
+
readonly tokensSaved: number;
|
|
19
|
+
readonly originalTotal: number;
|
|
20
|
+
readonly compressedTotal: number;
|
|
21
|
+
readonly byTool: Readonly<Record<string, number>>;
|
|
22
|
+
}
|
|
23
|
+
export declare function defaultCompresrStats(): CompresrStats;
|
|
24
|
+
/**
|
|
25
|
+
* A single citation extracted from a provider response.
|
|
26
|
+
*
|
|
27
|
+
* Raw provider data is preserved in ``providerMetadata`` so callers
|
|
28
|
+
* can recover anything the normalizer dropped.
|
|
29
|
+
*/
|
|
30
|
+
export interface Citation {
|
|
31
|
+
readonly url: string;
|
|
32
|
+
readonly title?: string;
|
|
33
|
+
readonly citedText?: string;
|
|
34
|
+
readonly providerMetadata: Readonly<Record<string, unknown>>;
|
|
35
|
+
}
|
|
36
|
+
/** Normalized tool-use shape — ``{ id, name, input }`` triples. */
|
|
37
|
+
export interface NormalizedToolUse {
|
|
38
|
+
readonly id?: string;
|
|
39
|
+
readonly name?: string;
|
|
40
|
+
readonly input?: Record<string, unknown>;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Provider-agnostic agent invocation result.
|
|
44
|
+
*
|
|
45
|
+
* ``raw`` preserves the original ``AIMessage`` so advanced users can
|
|
46
|
+
* reach in for fields the normalizer doesn't surface.
|
|
47
|
+
*/
|
|
48
|
+
export interface NormalizedResult {
|
|
49
|
+
readonly text: string;
|
|
50
|
+
readonly contentBlocks: ReadonlyArray<unknown>;
|
|
51
|
+
readonly toolUses: ReadonlyArray<NormalizedToolUse>;
|
|
52
|
+
readonly citations: ReadonlyArray<Citation>;
|
|
53
|
+
readonly stopReason: string;
|
|
54
|
+
readonly usage: Readonly<Record<string, number>>;
|
|
55
|
+
readonly compresrStats: CompresrStats;
|
|
56
|
+
readonly raw: unknown;
|
|
57
|
+
}
|
|
58
|
+
export declare function emptyNormalizedResult(): NormalizedResult;
|
|
59
|
+
//# sourceMappingURL=normalized.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalized.d.ts","sourceRoot":"","sources":["../../../src/agents/normalized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACnD;AAED,wBAAgB,oBAAoB,IAAI,aAAa,CAOpD;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC9D;AAED,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,CAWxD"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalized result types used by Wave 2B's provider-shape facades.
|
|
3
|
+
*
|
|
4
|
+
* These shapes are intentionally provider-agnostic — every backend (Anthropic,
|
|
5
|
+
* OpenAI Responses, Gemini grounding) gets remapped into the same
|
|
6
|
+
* ``NormalizedResult`` by ``CompresrEngine``. Plain interfaces keep the shape
|
|
7
|
+
* immutable on the type-level and free of runtime overhead.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors Python ``compresr/agents/normalized.py``.
|
|
10
|
+
*/
|
|
11
|
+
export function defaultCompresrStats() {
|
|
12
|
+
return {
|
|
13
|
+
tokensSaved: 0,
|
|
14
|
+
originalTotal: 0,
|
|
15
|
+
compressedTotal: 0,
|
|
16
|
+
byTool: {},
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export function emptyNormalizedResult() {
|
|
20
|
+
return {
|
|
21
|
+
text: '',
|
|
22
|
+
contentBlocks: [],
|
|
23
|
+
toolUses: [],
|
|
24
|
+
citations: [],
|
|
25
|
+
stopReason: 'end_turn',
|
|
26
|
+
usage: {},
|
|
27
|
+
compresrStats: defaultCompresrStats(),
|
|
28
|
+
raw: null,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=normalized.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalized.js","sourceRoot":"","sources":["../../../src/agents/normalized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAeH,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,WAAW,EAAE,CAAC;QACd,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAuCD,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,IAAI,EAAE,EAAE;QACR,aAAa,EAAE,EAAE;QACjB,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,UAAU;QACtB,KAAK,EAAE,EAAE;QACT,aAAa,EAAE,oBAAoB,EAAE;QACrC,GAAG,EAAE,IAAI;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anthropic ``Message`` look-alike interfaces.
|
|
3
|
+
*
|
|
4
|
+
* These duck-type the Anthropic SDK's response shape (``message.content[0].text``,
|
|
5
|
+
* ``message.usage.input_tokens``, ``message.stop_reason``) so customers can
|
|
6
|
+
* swap ``CompressionClient`` in for their existing ``Anthropic`` client without
|
|
7
|
+
* installing the ``@anthropic-ai/sdk`` package or rewriting downstream parsing.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors Python ``compresr/agents/schemas/anthropic.py``.
|
|
10
|
+
*/
|
|
11
|
+
import type { Citation, CompresrStats, NormalizedResult } from '../normalized.js';
|
|
12
|
+
export interface TextBlock {
|
|
13
|
+
readonly type: 'text';
|
|
14
|
+
readonly text: string;
|
|
15
|
+
readonly citations: ReadonlyArray<Citation>;
|
|
16
|
+
}
|
|
17
|
+
export interface ToolUseBlock {
|
|
18
|
+
readonly type: 'tool_use';
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly input: Readonly<Record<string, unknown>>;
|
|
22
|
+
}
|
|
23
|
+
export type ContentBlock = TextBlock | ToolUseBlock;
|
|
24
|
+
export interface AnthropicUsage {
|
|
25
|
+
readonly input_tokens: number;
|
|
26
|
+
readonly output_tokens: number;
|
|
27
|
+
readonly cache_read_input_tokens: number;
|
|
28
|
+
readonly cache_creation_input_tokens: number;
|
|
29
|
+
}
|
|
30
|
+
export interface AnthropicMessage {
|
|
31
|
+
readonly id: string;
|
|
32
|
+
readonly role: 'assistant';
|
|
33
|
+
readonly type: 'message';
|
|
34
|
+
readonly model: string;
|
|
35
|
+
readonly content: ReadonlyArray<ContentBlock>;
|
|
36
|
+
readonly stop_reason: string;
|
|
37
|
+
readonly usage: AnthropicUsage;
|
|
38
|
+
readonly compresr: CompresrStats;
|
|
39
|
+
readonly raw: unknown;
|
|
40
|
+
}
|
|
41
|
+
export interface ToAnthropicMessageOptions {
|
|
42
|
+
model: string;
|
|
43
|
+
msgId?: string;
|
|
44
|
+
}
|
|
45
|
+
export declare function toAnthropicMessage(result: NormalizedResult, options: ToAnthropicMessageOptions): AnthropicMessage;
|
|
46
|
+
//# sourceMappingURL=anthropic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../../src/agents/schemas/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACnD;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,YAAY,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB;AAiBD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,yBAAyB,GACjC,gBAAgB,CAkClB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
function intOrZero(v) {
|
|
2
|
+
if (typeof v === 'number' && Number.isFinite(v))
|
|
3
|
+
return Math.trunc(v);
|
|
4
|
+
if (typeof v === 'string') {
|
|
5
|
+
const n = Number(v);
|
|
6
|
+
if (Number.isFinite(n))
|
|
7
|
+
return Math.trunc(n);
|
|
8
|
+
}
|
|
9
|
+
return 0;
|
|
10
|
+
}
|
|
11
|
+
function deriveId(result, prefix) {
|
|
12
|
+
const raw = result.raw;
|
|
13
|
+
if (raw && typeof raw.id === 'string' && raw.id)
|
|
14
|
+
return raw.id;
|
|
15
|
+
return `${prefix}generated`;
|
|
16
|
+
}
|
|
17
|
+
export function toAnthropicMessage(result, options) {
|
|
18
|
+
const blocks = [];
|
|
19
|
+
if (result.text) {
|
|
20
|
+
blocks.push({
|
|
21
|
+
type: 'text',
|
|
22
|
+
text: result.text,
|
|
23
|
+
citations: [...result.citations],
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
for (const tu of result.toolUses) {
|
|
27
|
+
blocks.push({
|
|
28
|
+
type: 'tool_use',
|
|
29
|
+
id: tu.id ?? '',
|
|
30
|
+
name: tu.name ?? '',
|
|
31
|
+
input: { ...(tu.input ?? {}) },
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
const u = result.usage;
|
|
35
|
+
return {
|
|
36
|
+
id: options.msgId ?? deriveId(result, 'msg_'),
|
|
37
|
+
role: 'assistant',
|
|
38
|
+
type: 'message',
|
|
39
|
+
model: options.model,
|
|
40
|
+
content: blocks,
|
|
41
|
+
stop_reason: result.stopReason || 'end_turn',
|
|
42
|
+
usage: {
|
|
43
|
+
input_tokens: intOrZero(u['input_tokens']),
|
|
44
|
+
output_tokens: intOrZero(u['output_tokens']),
|
|
45
|
+
cache_read_input_tokens: intOrZero(u['cache_read_input_tokens']),
|
|
46
|
+
cache_creation_input_tokens: intOrZero(u['cache_creation_input_tokens']),
|
|
47
|
+
},
|
|
48
|
+
compresr: result.compresrStats,
|
|
49
|
+
raw: result.raw,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=anthropic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../../src/agents/schemas/anthropic.ts"],"names":[],"mappings":"AAkDA,SAAS,SAAS,CAAC,CAAU;IAC3B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,QAAQ,CAAC,MAAwB,EAAE,MAAc;IACxD,MAAM,GAAG,GAAG,MAAM,CAAC,GAA6B,CAAC;IACjD,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,EAAE,CAAC;IAC/D,OAAO,GAAG,MAAM,WAAW,CAAC;AAC9B,CAAC;AAOD,MAAM,UAAU,kBAAkB,CAChC,MAAwB,EACxB,OAAkC;IAElC,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE;YACf,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE;YACnB,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE;SAC/B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAC7C,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,MAAM,CAAC,UAAU,IAAI,UAAU;QAC5C,KAAK,EAAE;YACL,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YAC1C,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAC5C,uBAAuB,EAAE,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;YAChE,2BAA2B,EAAE,SAAS,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;SACzE;QACD,QAAQ,EAAE,MAAM,CAAC,aAAa;QAC9B,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { type AnthropicMessage, type AnthropicUsage, type ContentBlock, type TextBlock, type ToolUseBlock, toAnthropicMessage, type ToAnthropicMessageOptions, } from './anthropic.js';
|
|
2
|
+
export { type ChatCompletion, type ChatMessage, type Choice, type FunctionCall, type ToolCall, type OpenAIUsage, toChatCompletion, type ToChatCompletionOptions, } from './openai.js';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,kBAAkB,EAClB,KAAK,yBAAyB,GAC/B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,gBAAgB,EAChB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,kBAAkB,GAEnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAOL,gBAAgB,GAEjB,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAI ``ChatCompletion`` look-alike interfaces.
|
|
3
|
+
*
|
|
4
|
+
* Customers using ``new OpenAI().chat.completions.create(...)`` can swap in
|
|
5
|
+
* ``new CompressionClient(...).chat.completions.create(...)`` without
|
|
6
|
+
* installing ``openai`` or rewriting downstream parsing — the return shape
|
|
7
|
+
* mirrors ``openai.types.chat.ChatCompletion``.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors Python ``compresr/agents/schemas/openai.py``.
|
|
10
|
+
*/
|
|
11
|
+
import type { CompresrStats, NormalizedResult } from '../normalized.js';
|
|
12
|
+
export interface FunctionCall {
|
|
13
|
+
readonly name: string;
|
|
14
|
+
/** JSON-encoded arguments string, per OpenAI's wire shape. */
|
|
15
|
+
readonly arguments: string;
|
|
16
|
+
}
|
|
17
|
+
export interface ToolCall {
|
|
18
|
+
readonly id: string;
|
|
19
|
+
readonly type: 'function';
|
|
20
|
+
readonly function: FunctionCall;
|
|
21
|
+
}
|
|
22
|
+
export interface ChatMessage {
|
|
23
|
+
readonly role: 'assistant';
|
|
24
|
+
readonly content: string | null;
|
|
25
|
+
readonly tool_calls: ReadonlyArray<ToolCall>;
|
|
26
|
+
}
|
|
27
|
+
export interface Choice {
|
|
28
|
+
readonly index: number;
|
|
29
|
+
readonly message: ChatMessage;
|
|
30
|
+
readonly finish_reason: string;
|
|
31
|
+
}
|
|
32
|
+
export interface OpenAIUsage {
|
|
33
|
+
readonly prompt_tokens: number;
|
|
34
|
+
readonly completion_tokens: number;
|
|
35
|
+
readonly total_tokens: number;
|
|
36
|
+
}
|
|
37
|
+
export interface ChatCompletion {
|
|
38
|
+
readonly id: string;
|
|
39
|
+
readonly object: 'chat.completion';
|
|
40
|
+
readonly model: string;
|
|
41
|
+
readonly choices: ReadonlyArray<Choice>;
|
|
42
|
+
readonly usage: OpenAIUsage;
|
|
43
|
+
readonly compresr: CompresrStats;
|
|
44
|
+
readonly raw: unknown;
|
|
45
|
+
}
|
|
46
|
+
export interface ToChatCompletionOptions {
|
|
47
|
+
model: string;
|
|
48
|
+
completionId?: string;
|
|
49
|
+
}
|
|
50
|
+
export declare function toChatCompletion(result: NormalizedResult, options: ToChatCompletionOptions): ChatCompletion;
|
|
51
|
+
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/agents/schemas/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAExE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB;AAyBD,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,uBAAuB,GAC/B,cAAc,CAoChB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
const FINISH_REASON_MAP = {
|
|
2
|
+
end_turn: 'stop',
|
|
3
|
+
stop_sequence: 'stop',
|
|
4
|
+
max_tokens: 'length',
|
|
5
|
+
tool_use: 'tool_calls',
|
|
6
|
+
pause_turn: 'tool_calls',
|
|
7
|
+
};
|
|
8
|
+
function intOrZero(v) {
|
|
9
|
+
if (typeof v === 'number' && Number.isFinite(v))
|
|
10
|
+
return Math.trunc(v);
|
|
11
|
+
if (typeof v === 'string') {
|
|
12
|
+
const n = Number(v);
|
|
13
|
+
if (Number.isFinite(n))
|
|
14
|
+
return Math.trunc(n);
|
|
15
|
+
}
|
|
16
|
+
return 0;
|
|
17
|
+
}
|
|
18
|
+
function deriveId(result, prefix) {
|
|
19
|
+
const raw = result.raw;
|
|
20
|
+
if (raw && typeof raw.id === 'string' && raw.id)
|
|
21
|
+
return raw.id;
|
|
22
|
+
return `${prefix}generated`;
|
|
23
|
+
}
|
|
24
|
+
export function toChatCompletion(result, options) {
|
|
25
|
+
const toolCalls = result.toolUses.map((tu) => ({
|
|
26
|
+
id: tu.id ?? '',
|
|
27
|
+
type: 'function',
|
|
28
|
+
function: {
|
|
29
|
+
name: tu.name ?? '',
|
|
30
|
+
arguments: JSON.stringify(tu.input ?? {}),
|
|
31
|
+
},
|
|
32
|
+
}));
|
|
33
|
+
const message = {
|
|
34
|
+
role: 'assistant',
|
|
35
|
+
content: result.text || null,
|
|
36
|
+
tool_calls: toolCalls,
|
|
37
|
+
};
|
|
38
|
+
const stop = result.stopReason || '';
|
|
39
|
+
const finishReason = FINISH_REASON_MAP[stop] ?? (stop || 'stop');
|
|
40
|
+
const u = result.usage;
|
|
41
|
+
const promptTokens = intOrZero(u['input_tokens'] ?? u['prompt_tokens']);
|
|
42
|
+
const completionTokens = intOrZero(u['output_tokens'] ?? u['completion_tokens']);
|
|
43
|
+
return {
|
|
44
|
+
id: options.completionId ?? deriveId(result, 'chatcmpl-'),
|
|
45
|
+
object: 'chat.completion',
|
|
46
|
+
model: options.model,
|
|
47
|
+
choices: [{ index: 0, message, finish_reason: finishReason }],
|
|
48
|
+
usage: {
|
|
49
|
+
prompt_tokens: promptTokens,
|
|
50
|
+
completion_tokens: completionTokens,
|
|
51
|
+
total_tokens: promptTokens + completionTokens,
|
|
52
|
+
},
|
|
53
|
+
compresr: result.compresrStats,
|
|
54
|
+
raw: result.raw,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=openai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/agents/schemas/openai.ts"],"names":[],"mappings":"AAoDA,MAAM,iBAAiB,GAAqC;IAC1D,QAAQ,EAAE,MAAM;IAChB,aAAa,EAAE,MAAM;IACrB,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE,YAAY;CACzB,CAAC;AAEF,SAAS,SAAS,CAAC,CAAU;IAC3B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,QAAQ,CAAC,MAAwB,EAAE,MAAc;IACxD,MAAM,GAAG,GAAG,MAAM,CAAC,GAA6B,CAAC;IACjD,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,EAAE,CAAC;IAC/D,OAAO,GAAG,MAAM,WAAW,CAAC;AAC9B,CAAC;AAOD,MAAM,UAAU,gBAAgB,CAC9B,MAAwB,EACxB,OAAgC;IAEhC,MAAM,SAAS,GAAe,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE;QACf,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;SAC1C;KACF,CAAC,CAAC,CAAC;IACJ,MAAM,OAAO,GAAgB;QAC3B,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;QAC5B,UAAU,EAAE,SAAS;KACtB,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,MAAM,YAAY,GAAG,SAAS,CAC5B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CACxC,CAAC;IACF,MAAM,gBAAgB,GAAG,SAAS,CAChC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAC7C,CAAC;IACF,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,YAAY,IAAI,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;QACzD,MAAM,EAAE,iBAAiB;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;QAC7D,KAAK,EAAE;YACL,aAAa,EAAE,YAAY;YAC3B,iBAAiB,EAAE,gBAAgB;YACnC,YAAY,EAAE,YAAY,GAAG,gBAAgB;SAC9C;QACD,QAAQ,EAAE,MAAM,CAAC,aAAa;QAC9B,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,mBAAmB,GAGpB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ``WebSearchTool`` — backed by Tavily or Brave.
|
|
3
|
+
*
|
|
4
|
+
* Returns a LangChain.js ``BaseTool`` whose output flows through Compresr's
|
|
5
|
+
* ``compresrToolMiddleware`` automatically when used with the SDK's engine
|
|
6
|
+
* (``client.messages.create`` / ``client.chat.completions.create`` /
|
|
7
|
+
* ``client.run``).
|
|
8
|
+
*
|
|
9
|
+
* Provider-native server tools (Anthropic ``web_search_20250305``, OpenAI
|
|
10
|
+
* ``web_search_preview``, Gemini ``google_search``) are intentionally NOT
|
|
11
|
+
* supported here — they execute server-side and return opaque/encrypted
|
|
12
|
+
* content that Compresr cannot read or compress. Use a real search API
|
|
13
|
+
* (Tavily or Brave) so the result is plaintext we can compress.
|
|
14
|
+
*
|
|
15
|
+
* Mirrors Python ``compresr/agents/tools/web_search.py``.
|
|
16
|
+
*/
|
|
17
|
+
import type { StructuredToolInterface } from '@langchain/core/tools';
|
|
18
|
+
/** Public return type for the web-search factories — any tool that satisfies
|
|
19
|
+
* LangChain.js's ``StructuredToolInterface`` is acceptable. We use the
|
|
20
|
+
* interface form (not the abstract class) so we avoid generic parameter
|
|
21
|
+
* gymnastics at the call site. */
|
|
22
|
+
export type WebSearchToolInstance = StructuredToolInterface;
|
|
23
|
+
export interface TavilyOptions {
|
|
24
|
+
apiKey?: string;
|
|
25
|
+
maxResults?: number;
|
|
26
|
+
allowedDomains?: ReadonlyArray<string>;
|
|
27
|
+
blockedDomains?: ReadonlyArray<string>;
|
|
28
|
+
/** Additional kwargs forwarded to the underlying LangChain tool. */
|
|
29
|
+
extra?: Record<string, unknown>;
|
|
30
|
+
}
|
|
31
|
+
export interface BraveOptions {
|
|
32
|
+
apiKey?: string;
|
|
33
|
+
maxResults?: number;
|
|
34
|
+
/** Additional kwargs forwarded to the underlying LangChain tool. */
|
|
35
|
+
extra?: Record<string, unknown>;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Factory namespace for web-search tools — pick a provider via
|
|
39
|
+
* ``WebSearchTool.tavily(...)`` or ``WebSearchTool.brave(...)``.
|
|
40
|
+
*
|
|
41
|
+
* Each method returns a LangChain.js ``StructuredToolInterface`` ready to
|
|
42
|
+
* pass into the engine's ``tools: []`` array. The interface form is used
|
|
43
|
+
* (instead of the abstract ``StructuredTool`` class) so callers can drop
|
|
44
|
+
* in any compatible tool implementation without hitting generic-parameter
|
|
45
|
+
* mismatches.
|
|
46
|
+
*/
|
|
47
|
+
export declare const WebSearchTool: {
|
|
48
|
+
readonly tavily: (options?: TavilyOptions) => Promise<WebSearchToolInstance>;
|
|
49
|
+
readonly brave: (options?: BraveOptions) => Promise<WebSearchToolInstance>;
|
|
50
|
+
};
|
|
51
|
+
export type WebSearchTool = typeof WebSearchTool;
|
|
52
|
+
/** Direct factory for the Tavily variant — preferred when ``tools: [...]``
|
|
53
|
+
* needs a synchronous reference. Returns a promise that resolves to a tool. */
|
|
54
|
+
export declare function createWebSearchTool(provider: 'tavily', options?: TavilyOptions): Promise<WebSearchToolInstance>;
|
|
55
|
+
export declare function createWebSearchTool(provider: 'brave', options?: BraveOptions): Promise<WebSearchToolInstance>;
|
|
56
|
+
//# sourceMappingURL=web-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIrE;;;kCAGkC;AAClC,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAwFD;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa;gCACR,aAAa,KAAQ,OAAO,CAAC,qBAAqB,CAAC;+BAGpD,YAAY,KAAQ,OAAO,CAAC,qBAAqB,CAAC;CAGzD,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC;AAEjD;+EAC+E;AAC/E,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAClC,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,qBAAqB,CAAC,CAAC"}
|