illuma-agents 1.0.7 → 1.0.9
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 +1 -5
- package/dist/cjs/common/enum.cjs +1 -2
- package/dist/cjs/common/enum.cjs.map +1 -1
- package/dist/cjs/instrumentation.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/types.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +79 -2
- package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/utils/tools.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/index.cjs +99 -0
- package/dist/cjs/llm/bedrock/index.cjs.map +1 -0
- package/dist/cjs/llm/fake.cjs.map +1 -1
- package/dist/cjs/llm/google/index.cjs +78 -9
- package/dist/cjs/llm/google/index.cjs.map +1 -1
- package/dist/cjs/llm/google/utils/common.cjs +185 -28
- package/dist/cjs/llm/google/utils/common.cjs.map +1 -1
- package/dist/cjs/llm/providers.cjs +13 -16
- package/dist/cjs/llm/providers.cjs.map +1 -1
- package/dist/cjs/llm/text.cjs.map +1 -1
- package/dist/cjs/messages/core.cjs +14 -14
- package/dist/cjs/messages/core.cjs.map +1 -1
- package/dist/cjs/messages/ids.cjs.map +1 -1
- package/dist/cjs/messages/prune.cjs.map +1 -1
- package/dist/cjs/run.cjs +10 -1
- package/dist/cjs/run.cjs.map +1 -1
- package/dist/cjs/splitStream.cjs.map +1 -1
- package/dist/cjs/stream.cjs +4 -1
- package/dist/cjs/stream.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +163 -55
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/cjs/tools/handlers.cjs +29 -25
- package/dist/cjs/tools/handlers.cjs.map +1 -1
- package/dist/cjs/tools/search/anthropic.cjs.map +1 -1
- package/dist/cjs/tools/search/content.cjs.map +1 -1
- package/dist/cjs/tools/search/firecrawl.cjs.map +1 -1
- package/dist/cjs/tools/search/format.cjs.map +1 -1
- package/dist/cjs/tools/search/highlights.cjs.map +1 -1
- package/dist/cjs/tools/search/rerankers.cjs.map +1 -1
- package/dist/cjs/tools/search/schema.cjs +25 -25
- package/dist/cjs/tools/search/schema.cjs.map +1 -1
- package/dist/cjs/tools/search/search.cjs +6 -1
- package/dist/cjs/tools/search/search.cjs.map +1 -1
- package/dist/cjs/tools/search/serper-scraper.cjs.map +1 -1
- package/dist/cjs/tools/search/tool.cjs +162 -35
- package/dist/cjs/tools/search/tool.cjs.map +1 -1
- package/dist/cjs/tools/search/utils.cjs.map +1 -1
- package/dist/cjs/utils/graph.cjs.map +1 -1
- package/dist/cjs/utils/llm.cjs +0 -1
- package/dist/cjs/utils/llm.cjs.map +1 -1
- package/dist/cjs/utils/misc.cjs.map +1 -1
- package/dist/cjs/utils/run.cjs.map +1 -1
- package/dist/cjs/utils/title.cjs +7 -7
- package/dist/cjs/utils/title.cjs.map +1 -1
- package/dist/esm/common/enum.mjs +1 -2
- package/dist/esm/common/enum.mjs.map +1 -1
- package/dist/esm/instrumentation.mjs.map +1 -1
- package/dist/esm/llm/anthropic/types.mjs.map +1 -1
- package/dist/esm/llm/anthropic/utils/message_inputs.mjs +79 -2
- package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -1
- package/dist/esm/llm/anthropic/utils/tools.mjs.map +1 -1
- package/dist/esm/llm/bedrock/index.mjs +97 -0
- package/dist/esm/llm/bedrock/index.mjs.map +1 -0
- package/dist/esm/llm/fake.mjs.map +1 -1
- package/dist/esm/llm/google/index.mjs +79 -10
- package/dist/esm/llm/google/index.mjs.map +1 -1
- package/dist/esm/llm/google/utils/common.mjs +184 -30
- package/dist/esm/llm/google/utils/common.mjs.map +1 -1
- package/dist/esm/llm/providers.mjs +2 -5
- package/dist/esm/llm/providers.mjs.map +1 -1
- package/dist/esm/llm/text.mjs.map +1 -1
- package/dist/esm/messages/core.mjs +14 -14
- package/dist/esm/messages/core.mjs.map +1 -1
- package/dist/esm/messages/ids.mjs.map +1 -1
- package/dist/esm/messages/prune.mjs.map +1 -1
- package/dist/esm/run.mjs +10 -1
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/splitStream.mjs.map +1 -1
- package/dist/esm/stream.mjs +4 -1
- package/dist/esm/stream.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +164 -56
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/esm/tools/handlers.mjs +30 -26
- package/dist/esm/tools/handlers.mjs.map +1 -1
- package/dist/esm/tools/search/anthropic.mjs.map +1 -1
- package/dist/esm/tools/search/content.mjs.map +1 -1
- package/dist/esm/tools/search/firecrawl.mjs.map +1 -1
- package/dist/esm/tools/search/format.mjs.map +1 -1
- package/dist/esm/tools/search/highlights.mjs.map +1 -1
- package/dist/esm/tools/search/rerankers.mjs.map +1 -1
- package/dist/esm/tools/search/schema.mjs +25 -25
- package/dist/esm/tools/search/schema.mjs.map +1 -1
- package/dist/esm/tools/search/search.mjs +6 -1
- package/dist/esm/tools/search/search.mjs.map +1 -1
- package/dist/esm/tools/search/serper-scraper.mjs.map +1 -1
- package/dist/esm/tools/search/tool.mjs +162 -35
- package/dist/esm/tools/search/tool.mjs.map +1 -1
- package/dist/esm/tools/search/utils.mjs.map +1 -1
- package/dist/esm/utils/graph.mjs.map +1 -1
- package/dist/esm/utils/llm.mjs +0 -1
- package/dist/esm/utils/llm.mjs.map +1 -1
- package/dist/esm/utils/misc.mjs.map +1 -1
- package/dist/esm/utils/run.mjs.map +1 -1
- package/dist/esm/utils/title.mjs +7 -7
- package/dist/esm/utils/title.mjs.map +1 -1
- package/dist/types/common/enum.d.ts +1 -2
- package/dist/types/llm/bedrock/index.d.ts +36 -0
- package/dist/types/llm/google/index.d.ts +10 -0
- package/dist/types/llm/google/types.d.ts +11 -1
- package/dist/types/llm/google/utils/common.d.ts +17 -2
- package/dist/types/tools/ToolNode.d.ts +9 -1
- package/dist/types/tools/search/types.d.ts +2 -0
- package/dist/types/types/llm.d.ts +3 -8
- package/dist/types/types/tools.d.ts +1 -1
- package/package.json +15 -11
- package/src/common/enum.ts +1 -2
- package/src/common/index.ts +1 -1
- package/src/instrumentation.ts +22 -22
- package/src/llm/anthropic/llm.spec.ts +1442 -1442
- package/src/llm/anthropic/types.ts +140 -140
- package/src/llm/anthropic/utils/message_inputs.ts +757 -660
- package/src/llm/anthropic/utils/output_parsers.ts +133 -133
- package/src/llm/anthropic/utils/tools.ts +29 -29
- package/src/llm/bedrock/index.ts +128 -0
- package/src/llm/fake.ts +133 -133
- package/src/llm/google/data/gettysburg10.wav +0 -0
- package/src/llm/google/data/hotdog.jpg +0 -0
- package/src/llm/google/index.ts +129 -14
- package/src/llm/google/llm.spec.ts +932 -0
- package/src/llm/google/types.ts +56 -43
- package/src/llm/google/utils/common.ts +873 -660
- package/src/llm/google/utils/tools.ts +160 -160
- package/src/llm/openai/types.ts +24 -24
- package/src/llm/openai/utils/isReasoningModel.test.ts +90 -90
- package/src/llm/providers.ts +2 -7
- package/src/llm/text.ts +94 -94
- package/src/messages/core.ts +463 -463
- package/src/messages/formatAgentMessages.tools.test.ts +400 -400
- package/src/messages/formatMessage.test.ts +693 -693
- package/src/messages/ids.ts +26 -26
- package/src/messages/prune.ts +567 -567
- package/src/messages/shiftIndexTokenCountMap.test.ts +81 -81
- package/src/mockStream.ts +98 -98
- package/src/prompts/collab.ts +5 -5
- package/src/prompts/index.ts +1 -1
- package/src/prompts/taskmanager.ts +61 -61
- package/src/run.ts +13 -4
- package/src/scripts/ant_web_search_edge_case.ts +162 -0
- package/src/scripts/ant_web_search_error_edge_case.ts +148 -0
- package/src/scripts/args.ts +48 -48
- package/src/scripts/caching.ts +123 -123
- package/src/scripts/code_exec_files.ts +193 -193
- package/src/scripts/empty_input.ts +137 -137
- package/src/scripts/image.ts +178 -178
- package/src/scripts/memory.ts +97 -97
- package/src/scripts/thinking.ts +149 -149
- package/src/specs/anthropic.simple.test.ts +67 -0
- package/src/specs/spec.utils.ts +3 -3
- package/src/specs/token-distribution-edge-case.test.ts +316 -316
- package/src/specs/tool-error.test.ts +193 -193
- package/src/splitStream.test.ts +691 -691
- package/src/splitStream.ts +234 -234
- package/src/stream.test.ts +94 -94
- package/src/stream.ts +4 -1
- package/src/tools/ToolNode.ts +206 -64
- package/src/tools/handlers.ts +32 -28
- package/src/tools/search/anthropic.ts +51 -51
- package/src/tools/search/content.test.ts +173 -173
- package/src/tools/search/content.ts +147 -147
- package/src/tools/search/direct-url.test.ts +530 -0
- package/src/tools/search/firecrawl.ts +210 -210
- package/src/tools/search/format.ts +250 -250
- package/src/tools/search/highlights.ts +320 -320
- package/src/tools/search/index.ts +2 -2
- package/src/tools/search/jina-reranker.test.ts +126 -126
- package/src/tools/search/output.md +2775 -2775
- package/src/tools/search/rerankers.ts +242 -242
- package/src/tools/search/schema.ts +63 -63
- package/src/tools/search/search.ts +766 -759
- package/src/tools/search/serper-scraper.ts +155 -155
- package/src/tools/search/test.html +883 -883
- package/src/tools/search/test.md +642 -642
- package/src/tools/search/test.ts +159 -159
- package/src/tools/search/tool.ts +619 -471
- package/src/tools/search/types.ts +689 -687
- package/src/tools/search/utils.ts +79 -79
- package/src/types/index.ts +6 -6
- package/src/types/llm.ts +2 -8
- package/src/types/tools.ts +80 -80
- package/src/utils/graph.ts +10 -10
- package/src/utils/llm.ts +26 -27
- package/src/utils/llmConfig.ts +5 -3
- package/src/utils/logging.ts +48 -48
- package/src/utils/misc.ts +57 -57
- package/src/utils/run.ts +100 -100
- package/src/utils/title.ts +165 -165
- package/dist/cjs/llm/ollama/index.cjs +0 -70
- package/dist/cjs/llm/ollama/index.cjs.map +0 -1
- package/dist/cjs/llm/ollama/utils.cjs +0 -158
- package/dist/cjs/llm/ollama/utils.cjs.map +0 -1
- package/dist/esm/llm/ollama/index.mjs +0 -68
- package/dist/esm/llm/ollama/index.mjs.map +0 -1
- package/dist/esm/llm/ollama/utils.mjs +0 -155
- package/dist/esm/llm/ollama/utils.mjs.map +0 -1
- package/dist/types/llm/ollama/index.d.ts +0 -8
- package/dist/types/llm/ollama/utils.d.ts +0 -7
- package/src/llm/ollama/index.ts +0 -92
- package/src/llm/ollama/utils.ts +0 -193
- package/src/proto/CollabGraph.ts +0 -269
- package/src/proto/TaskManager.ts +0 -243
- package/src/proto/collab.ts +0 -200
- package/src/proto/collab_design.ts +0 -184
- package/src/proto/collab_design_v2.ts +0 -224
- package/src/proto/collab_design_v3.ts +0 -255
- package/src/proto/collab_design_v4.ts +0 -220
- package/src/proto/collab_design_v5.ts +0 -251
- package/src/proto/collab_graph.ts +0 -181
- package/src/proto/collab_original.ts +0 -123
- package/src/proto/example.ts +0 -93
- package/src/proto/example_new.ts +0 -68
- package/src/proto/example_old.ts +0 -201
- package/src/proto/example_test.ts +0 -152
- package/src/proto/example_test_anthropic.ts +0 -100
- package/src/proto/log_stream.ts +0 -202
- package/src/proto/main_collab_community_event.ts +0 -133
- package/src/proto/main_collab_design_v2.ts +0 -96
- package/src/proto/main_collab_design_v4.ts +0 -100
- package/src/proto/main_collab_design_v5.ts +0 -135
- package/src/proto/main_collab_global_analysis.ts +0 -122
- package/src/proto/main_collab_hackathon_event.ts +0 -153
- package/src/proto/main_collab_space_mission.ts +0 -153
- package/src/proto/main_philosophy.ts +0 -210
- package/src/proto/original_script.ts +0 -126
- package/src/proto/standard.ts +0 -100
- package/src/proto/stream.ts +0 -56
- package/src/proto/tasks.ts +0 -118
- package/src/proto/tools/global_analysis_tools.ts +0 -86
- package/src/proto/tools/space_mission_tools.ts +0 -60
- package/src/proto/vertexai.ts +0 -54
|
@@ -1,140 +1,140 @@
|
|
|
1
|
-
import Anthropic from '@anthropic-ai/sdk';
|
|
2
|
-
import { BindToolsInput } from '@langchain/core/language_models/chat_models';
|
|
3
|
-
|
|
4
|
-
export type AnthropicStreamUsage = Anthropic.Usage;
|
|
5
|
-
export type AnthropicMessageDeltaEvent = Anthropic.MessageDeltaEvent;
|
|
6
|
-
export type AnthropicMessageStartEvent = Anthropic.MessageStartEvent;
|
|
7
|
-
|
|
8
|
-
export type AnthropicToolResponse = {
|
|
9
|
-
type: 'tool_use';
|
|
10
|
-
id: string;
|
|
11
|
-
name: string;
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
-
input: Record<string, any>;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export type AnthropicMessageParam = Anthropic.MessageParam;
|
|
17
|
-
export type AnthropicMessageResponse =
|
|
18
|
-
| Anthropic.ContentBlock
|
|
19
|
-
| AnthropicToolResponse;
|
|
20
|
-
export type AnthropicMessageCreateParams =
|
|
21
|
-
Anthropic.MessageCreateParamsNonStreaming;
|
|
22
|
-
export type AnthropicStreamingMessageCreateParams =
|
|
23
|
-
Anthropic.MessageCreateParamsStreaming;
|
|
24
|
-
export type AnthropicThinkingConfigParam = Anthropic.ThinkingConfigParam;
|
|
25
|
-
export type AnthropicMessageStreamEvent = Anthropic.MessageStreamEvent;
|
|
26
|
-
export type AnthropicRequestOptions = Anthropic.RequestOptions;
|
|
27
|
-
export type AnthropicToolChoice =
|
|
28
|
-
| {
|
|
29
|
-
type: 'tool';
|
|
30
|
-
name: string;
|
|
31
|
-
}
|
|
32
|
-
| 'any'
|
|
33
|
-
| 'auto'
|
|
34
|
-
| 'none'
|
|
35
|
-
| string;
|
|
36
|
-
export type ChatAnthropicToolType = Anthropic.Messages.Tool | BindToolsInput;
|
|
37
|
-
export type AnthropicTextBlockParam = Anthropic.Messages.TextBlockParam;
|
|
38
|
-
export type AnthropicImageBlockParam = Anthropic.Messages.ImageBlockParam;
|
|
39
|
-
export type AnthropicToolUseBlockParam = Anthropic.Messages.ToolUseBlockParam;
|
|
40
|
-
export type AnthropicToolResultBlockParam =
|
|
41
|
-
Anthropic.Messages.ToolResultBlockParam;
|
|
42
|
-
export type AnthropicDocumentBlockParam = Anthropic.Messages.DocumentBlockParam;
|
|
43
|
-
export type AnthropicThinkingBlockParam = Anthropic.Messages.ThinkingBlockParam;
|
|
44
|
-
export type AnthropicRedactedThinkingBlockParam =
|
|
45
|
-
Anthropic.Messages.RedactedThinkingBlockParam;
|
|
46
|
-
export type AnthropicServerToolUseBlockParam =
|
|
47
|
-
Anthropic.Messages.ServerToolUseBlockParam;
|
|
48
|
-
export type AnthropicWebSearchToolResultBlockParam =
|
|
49
|
-
Anthropic.Messages.WebSearchToolResultBlockParam;
|
|
50
|
-
export type AnthropicWebSearchResultBlockParam =
|
|
51
|
-
Anthropic.Messages.WebSearchResultBlockParam;
|
|
52
|
-
export type AnthropicSearchResultBlockParam =
|
|
53
|
-
Anthropic.Beta.BetaSearchResultBlockParam;
|
|
54
|
-
|
|
55
|
-
// Union of all possible content block types including server tool use
|
|
56
|
-
export type AnthropicContentBlock =
|
|
57
|
-
| AnthropicTextBlockParam
|
|
58
|
-
| AnthropicImageBlockParam
|
|
59
|
-
| AnthropicToolUseBlockParam
|
|
60
|
-
| AnthropicToolResultBlockParam
|
|
61
|
-
| AnthropicDocumentBlockParam
|
|
62
|
-
| AnthropicThinkingBlockParam
|
|
63
|
-
| AnthropicRedactedThinkingBlockParam
|
|
64
|
-
| AnthropicServerToolUseBlockParam
|
|
65
|
-
| AnthropicWebSearchToolResultBlockParam
|
|
66
|
-
| AnthropicWebSearchResultBlockParam;
|
|
67
|
-
|
|
68
|
-
// Union of all possible content block types including server tool use
|
|
69
|
-
export type ChatAnthropicContentBlock =
|
|
70
|
-
| AnthropicTextBlockParam
|
|
71
|
-
| AnthropicImageBlockParam
|
|
72
|
-
| AnthropicToolUseBlockParam
|
|
73
|
-
| AnthropicToolResultBlockParam
|
|
74
|
-
| AnthropicDocumentBlockParam
|
|
75
|
-
| AnthropicThinkingBlockParam
|
|
76
|
-
| AnthropicRedactedThinkingBlockParam
|
|
77
|
-
| AnthropicServerToolUseBlockParam
|
|
78
|
-
| AnthropicWebSearchToolResultBlockParam
|
|
79
|
-
| AnthropicWebSearchResultBlockParam
|
|
80
|
-
| AnthropicSearchResultBlockParam;
|
|
81
|
-
|
|
82
|
-
export function isAnthropicImageBlockParam(
|
|
83
|
-
block: unknown
|
|
84
|
-
): block is AnthropicImageBlockParam {
|
|
85
|
-
if (block == null) {
|
|
86
|
-
return false;
|
|
87
|
-
}
|
|
88
|
-
if (typeof block !== 'object') {
|
|
89
|
-
return false;
|
|
90
|
-
}
|
|
91
|
-
if (!('type' in block) || block.type !== 'image') {
|
|
92
|
-
return false;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
if (!('source' in block) || typeof block.source !== 'object') {
|
|
96
|
-
return false;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
if (block.source == null) {
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
if (!('type' in block.source)) {
|
|
104
|
-
return false;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
if (block.source.type === 'base64') {
|
|
108
|
-
if (!('media_type' in block.source)) {
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
if (typeof block.source.media_type !== 'string') {
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
if (!('data' in block.source)) {
|
|
117
|
-
return false;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
if (typeof block.source.data !== 'string') {
|
|
121
|
-
return false;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return true;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
if (block.source.type === 'url') {
|
|
128
|
-
if (!('url' in block.source)) {
|
|
129
|
-
return false;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
if (typeof block.source.url !== 'string') {
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
return true;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
1
|
+
import Anthropic from '@anthropic-ai/sdk';
|
|
2
|
+
import { BindToolsInput } from '@langchain/core/language_models/chat_models';
|
|
3
|
+
|
|
4
|
+
export type AnthropicStreamUsage = Anthropic.Usage;
|
|
5
|
+
export type AnthropicMessageDeltaEvent = Anthropic.MessageDeltaEvent;
|
|
6
|
+
export type AnthropicMessageStartEvent = Anthropic.MessageStartEvent;
|
|
7
|
+
|
|
8
|
+
export type AnthropicToolResponse = {
|
|
9
|
+
type: 'tool_use';
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
+
input: Record<string, any>;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export type AnthropicMessageParam = Anthropic.MessageParam;
|
|
17
|
+
export type AnthropicMessageResponse =
|
|
18
|
+
| Anthropic.ContentBlock
|
|
19
|
+
| AnthropicToolResponse;
|
|
20
|
+
export type AnthropicMessageCreateParams =
|
|
21
|
+
Anthropic.MessageCreateParamsNonStreaming;
|
|
22
|
+
export type AnthropicStreamingMessageCreateParams =
|
|
23
|
+
Anthropic.MessageCreateParamsStreaming;
|
|
24
|
+
export type AnthropicThinkingConfigParam = Anthropic.ThinkingConfigParam;
|
|
25
|
+
export type AnthropicMessageStreamEvent = Anthropic.MessageStreamEvent;
|
|
26
|
+
export type AnthropicRequestOptions = Anthropic.RequestOptions;
|
|
27
|
+
export type AnthropicToolChoice =
|
|
28
|
+
| {
|
|
29
|
+
type: 'tool';
|
|
30
|
+
name: string;
|
|
31
|
+
}
|
|
32
|
+
| 'any'
|
|
33
|
+
| 'auto'
|
|
34
|
+
| 'none'
|
|
35
|
+
| string;
|
|
36
|
+
export type ChatAnthropicToolType = Anthropic.Messages.Tool | BindToolsInput;
|
|
37
|
+
export type AnthropicTextBlockParam = Anthropic.Messages.TextBlockParam;
|
|
38
|
+
export type AnthropicImageBlockParam = Anthropic.Messages.ImageBlockParam;
|
|
39
|
+
export type AnthropicToolUseBlockParam = Anthropic.Messages.ToolUseBlockParam;
|
|
40
|
+
export type AnthropicToolResultBlockParam =
|
|
41
|
+
Anthropic.Messages.ToolResultBlockParam;
|
|
42
|
+
export type AnthropicDocumentBlockParam = Anthropic.Messages.DocumentBlockParam;
|
|
43
|
+
export type AnthropicThinkingBlockParam = Anthropic.Messages.ThinkingBlockParam;
|
|
44
|
+
export type AnthropicRedactedThinkingBlockParam =
|
|
45
|
+
Anthropic.Messages.RedactedThinkingBlockParam;
|
|
46
|
+
export type AnthropicServerToolUseBlockParam =
|
|
47
|
+
Anthropic.Messages.ServerToolUseBlockParam;
|
|
48
|
+
export type AnthropicWebSearchToolResultBlockParam =
|
|
49
|
+
Anthropic.Messages.WebSearchToolResultBlockParam;
|
|
50
|
+
export type AnthropicWebSearchResultBlockParam =
|
|
51
|
+
Anthropic.Messages.WebSearchResultBlockParam;
|
|
52
|
+
export type AnthropicSearchResultBlockParam =
|
|
53
|
+
Anthropic.Beta.BetaSearchResultBlockParam;
|
|
54
|
+
|
|
55
|
+
// Union of all possible content block types including server tool use
|
|
56
|
+
export type AnthropicContentBlock =
|
|
57
|
+
| AnthropicTextBlockParam
|
|
58
|
+
| AnthropicImageBlockParam
|
|
59
|
+
| AnthropicToolUseBlockParam
|
|
60
|
+
| AnthropicToolResultBlockParam
|
|
61
|
+
| AnthropicDocumentBlockParam
|
|
62
|
+
| AnthropicThinkingBlockParam
|
|
63
|
+
| AnthropicRedactedThinkingBlockParam
|
|
64
|
+
| AnthropicServerToolUseBlockParam
|
|
65
|
+
| AnthropicWebSearchToolResultBlockParam
|
|
66
|
+
| AnthropicWebSearchResultBlockParam;
|
|
67
|
+
|
|
68
|
+
// Union of all possible content block types including server tool use
|
|
69
|
+
export type ChatAnthropicContentBlock =
|
|
70
|
+
| AnthropicTextBlockParam
|
|
71
|
+
| AnthropicImageBlockParam
|
|
72
|
+
| AnthropicToolUseBlockParam
|
|
73
|
+
| AnthropicToolResultBlockParam
|
|
74
|
+
| AnthropicDocumentBlockParam
|
|
75
|
+
| AnthropicThinkingBlockParam
|
|
76
|
+
| AnthropicRedactedThinkingBlockParam
|
|
77
|
+
| AnthropicServerToolUseBlockParam
|
|
78
|
+
| AnthropicWebSearchToolResultBlockParam
|
|
79
|
+
| AnthropicWebSearchResultBlockParam
|
|
80
|
+
| AnthropicSearchResultBlockParam;
|
|
81
|
+
|
|
82
|
+
export function isAnthropicImageBlockParam(
|
|
83
|
+
block: unknown
|
|
84
|
+
): block is AnthropicImageBlockParam {
|
|
85
|
+
if (block == null) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
if (typeof block !== 'object') {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
if (!('type' in block) || block.type !== 'image') {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
if (!('source' in block) || typeof block.source !== 'object') {
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
if (block.source == null) {
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (!('type' in block.source)) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (block.source.type === 'base64') {
|
|
108
|
+
if (!('media_type' in block.source)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
if (typeof block.source.media_type !== 'string') {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (!('data' in block.source)) {
|
|
117
|
+
return false;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
if (typeof block.source.data !== 'string') {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (block.source.type === 'url') {
|
|
128
|
+
if (!('url' in block.source)) {
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (typeof block.source.url !== 'string') {
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
return false;
|
|
140
|
+
}
|