@google/adk 1.3.0 → 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/dist/cjs/a2a/agent_to_a2a.js +18 -2
- package/dist/cjs/a2a/event_converter_utils.js +8 -4
- package/dist/cjs/a2a/metadata_converter_utils.js +1 -1
- package/dist/cjs/agents/active_streaming_tool.js +6 -1
- package/dist/cjs/agents/base_agent.js +39 -0
- package/dist/cjs/agents/context.js +1 -11
- package/dist/cjs/agents/functions.js +39 -35
- package/dist/cjs/agents/instructions.js +23 -5
- package/dist/cjs/agents/invocation_context.js +2 -5
- package/dist/cjs/agents/llm_agent.js +10 -7
- package/dist/cjs/agents/loop_agent.js +15 -3
- package/dist/cjs/agents/processors/code_execution_request_processor.js +0 -3
- package/dist/cjs/agents/processors/content_processor_utils.js +18 -4
- package/dist/cjs/agents/processors/context_compactor_request_processor.js +4 -2
- package/dist/cjs/agents/processors/interactions_request_processor.js +63 -0
- package/dist/cjs/agents/routed_agent.js +31 -0
- package/dist/cjs/agents/run_config.js +3 -2
- package/dist/cjs/apps/app.js +79 -0
- package/dist/cjs/apps/resumability_config.js +44 -0
- package/dist/cjs/artifacts/file_artifact_service.js +14 -1
- package/dist/cjs/artifacts/gcs_artifact_service.js +57 -15
- package/dist/cjs/artifacts/in_memory_artifact_service.js +12 -1
- package/dist/cjs/artifacts/scoped_artifact_service.js +101 -0
- package/dist/cjs/artifacts/session_artifact_service.js +27 -0
- package/dist/cjs/auth/oauth2/oauth2_discovery.js +17 -5
- package/dist/cjs/auth/oauth2/oauth2_utils.js +12 -1
- package/dist/cjs/common.js +76 -0
- package/dist/cjs/context/agent_controlled_context_compactor.js +109 -0
- package/dist/cjs/context/anchored_context_compactor.js +127 -0
- package/dist/cjs/context/compaction_utils.js +52 -0
- package/dist/cjs/context/token_based_context_compactor.js +52 -33
- package/dist/cjs/context/trajectory_thought_pruning_compactor.js +71 -0
- package/dist/cjs/events/compacted_event.js +9 -3
- package/dist/cjs/events/event.js +52 -0
- package/dist/cjs/index.js +4 -0
- package/dist/cjs/integrations/agent_registry/agent_registry_mcp_toolset.js +9 -1
- package/dist/cjs/models/google_llm.js +25 -10
- package/dist/cjs/models/interactions_utils.js +732 -0
- package/dist/cjs/plugins/base_plugin.js +1 -0
- package/dist/cjs/plugins/global_instruction_plugin.js +97 -0
- package/dist/cjs/runner/in_memory_runner.js +13 -2
- package/dist/cjs/runner/runner.js +143 -83
- package/dist/cjs/sessions/base_session_service.js +6 -1
- package/dist/cjs/sessions/database_session_service.js +24 -7
- package/dist/cjs/sessions/vertex_ai_session_service.js +19 -4
- package/dist/cjs/skills/loader.js +2 -2
- package/dist/cjs/tools/base_toolset.js +1 -1
- package/dist/cjs/tools/consolidate_context_tool.js +79 -0
- package/dist/cjs/tools/enterprise_web_search_tool.js +81 -0
- package/dist/cjs/tools/example_tool.js +68 -0
- package/dist/cjs/tools/forwarding_artifact_service.js +16 -28
- package/dist/cjs/tools/load_web_page.js +250 -0
- package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +140 -0
- package/dist/cjs/tools/mcp/mcp_toolset.js +63 -0
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +15 -22
- package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +54 -4
- package/dist/cjs/tools/skill/skill_toolset.js +4 -2
- package/dist/cjs/utils/async_hooks_shim.js +52 -0
- package/dist/cjs/utils/branch_trie.js +41 -0
- package/dist/cjs/utils/client_labels.js +41 -3
- package/dist/cjs/utils/env_aware_utils.js +10 -1
- package/dist/cjs/utils/streaming_utils.js +15 -9
- package/dist/cjs/utils/task.js +62 -0
- package/dist/cjs/version.js +1 -1
- package/dist/esm/a2a/agent_to_a2a.js +18 -2
- package/dist/esm/a2a/event_converter_utils.js +8 -4
- package/dist/esm/a2a/metadata_converter_utils.js +1 -1
- package/dist/esm/agents/active_streaming_tool.js +6 -1
- package/dist/esm/agents/base_agent.js +39 -0
- package/dist/esm/agents/context.js +1 -11
- package/dist/esm/agents/functions.js +43 -32
- package/dist/esm/agents/instructions.js +23 -5
- package/dist/esm/agents/invocation_context.js +2 -5
- package/dist/esm/agents/llm_agent.js +12 -9
- package/dist/esm/agents/loop_agent.js +15 -3
- package/dist/esm/agents/processors/code_execution_request_processor.js +0 -3
- package/dist/esm/agents/processors/content_processor_utils.js +16 -3
- package/dist/esm/agents/processors/context_compactor_request_processor.js +4 -2
- package/dist/esm/agents/processors/interactions_request_processor.js +34 -0
- package/dist/esm/agents/routed_agent.js +31 -0
- package/dist/esm/agents/run_config.js +3 -2
- package/dist/esm/apps/app.js +49 -0
- package/dist/esm/apps/resumability_config.js +16 -0
- package/dist/esm/artifacts/file_artifact_service.js +14 -1
- package/dist/esm/artifacts/gcs_artifact_service.js +57 -15
- package/dist/esm/artifacts/in_memory_artifact_service.js +12 -1
- package/dist/esm/artifacts/scoped_artifact_service.js +73 -0
- package/dist/esm/artifacts/session_artifact_service.js +7 -0
- package/dist/esm/auth/oauth2/oauth2_discovery.js +14 -4
- package/dist/esm/auth/oauth2/oauth2_utils.js +12 -1
- package/dist/esm/common.js +67 -3
- package/dist/esm/context/agent_controlled_context_compactor.js +81 -0
- package/dist/esm/context/anchored_context_compactor.js +99 -0
- package/dist/esm/context/compaction_utils.js +27 -0
- package/dist/esm/context/token_based_context_compactor.js +52 -33
- package/dist/esm/context/trajectory_thought_pruning_compactor.js +43 -0
- package/dist/esm/events/compacted_event.js +7 -2
- package/dist/esm/events/event.js +46 -0
- package/dist/esm/index.js +6 -1
- package/dist/esm/integrations/agent_registry/agent_registry_mcp_toolset.js +9 -1
- package/dist/esm/models/google_llm.js +23 -9
- package/dist/esm/models/interactions_utils.js +697 -0
- package/dist/esm/plugins/base_plugin.js +1 -0
- package/dist/esm/plugins/global_instruction_plugin.js +69 -0
- package/dist/esm/runner/in_memory_runner.js +13 -2
- package/dist/esm/runner/runner.js +141 -84
- package/dist/esm/sessions/base_session_service.js +6 -1
- package/dist/esm/sessions/database_session_service.js +24 -7
- package/dist/esm/sessions/vertex_ai_session_service.js +17 -3
- package/dist/esm/skills/loader.js +2 -2
- package/dist/esm/tools/base_toolset.js +1 -1
- package/dist/esm/tools/consolidate_context_tool.js +51 -0
- package/dist/esm/tools/enterprise_web_search_tool.js +55 -0
- package/dist/esm/tools/example_tool.js +42 -0
- package/dist/esm/tools/forwarding_artifact_service.js +16 -28
- package/dist/esm/tools/load_web_page.js +221 -0
- package/dist/esm/tools/mcp/load_mcp_resource_tool.js +114 -0
- package/dist/esm/tools/mcp/mcp_toolset.js +63 -0
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +15 -22
- package/dist/esm/tools/skill/run_skill_inline_script_tool.js +53 -4
- package/dist/esm/tools/skill/skill_toolset.js +4 -2
- package/dist/esm/utils/async_hooks_shim.js +24 -0
- package/dist/esm/utils/branch_trie.js +13 -0
- package/dist/esm/utils/client_labels.js +38 -2
- package/dist/esm/utils/env_aware_utils.js +10 -1
- package/dist/esm/utils/streaming_utils.js +11 -5
- package/dist/esm/utils/task.js +34 -0
- package/dist/esm/version.js +1 -1
- package/dist/types/a2a/a2a_remote_agent.d.ts +5 -1
- package/dist/types/a2a/agent_to_a2a.d.ts +38 -0
- package/dist/types/agents/active_streaming_tool.d.ts +3 -4
- package/dist/types/agents/base_agent.d.ts +29 -1
- package/dist/types/agents/functions.d.ts +12 -17
- package/dist/types/agents/invocation_context.d.ts +7 -3
- package/dist/types/agents/llm_agent.d.ts +5 -1
- package/dist/types/agents/loop_agent.d.ts +2 -2
- package/dist/types/agents/processors/content_processor_utils.d.ts +8 -0
- package/dist/types/agents/processors/interactions_request_processor.d.ts +17 -0
- package/dist/types/agents/routed_agent.d.ts +24 -1
- package/dist/types/agents/run_config.d.ts +1 -1
- package/dist/types/apps/app.d.ts +52 -0
- package/dist/types/apps/resumability_config.d.ts +27 -0
- package/dist/types/artifacts/base_artifact_service.d.ts +6 -36
- package/dist/types/artifacts/gcs_artifact_service.d.ts +2 -1
- package/dist/types/artifacts/scoped_artifact_service.d.ts +25 -0
- package/dist/types/artifacts/session_artifact_service.d.ts +25 -0
- package/dist/types/auth/oauth2/oauth2_discovery.d.ts +11 -0
- package/dist/types/common.d.ts +29 -5
- package/dist/types/context/agent_controlled_context_compactor.d.ts +24 -0
- package/dist/types/context/anchored_context_compactor.d.ts +35 -0
- package/dist/types/context/base_context_compactor.d.ts +3 -0
- package/dist/types/context/compaction_utils.d.ts +15 -0
- package/dist/types/context/token_based_context_compactor.d.ts +6 -1
- package/dist/types/context/trajectory_thought_pruning_compactor.d.ts +27 -0
- package/dist/types/events/compacted_event.d.ts +10 -0
- package/dist/types/events/event.d.ts +21 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/types/models/google_llm.d.ts +15 -1
- package/dist/types/models/interactions_utils.d.ts +92 -0
- package/dist/types/models/llm_request.d.ts +4 -0
- package/dist/types/models/llm_response.d.ts +4 -0
- package/dist/types/plugins/base_plugin.d.ts +2 -1
- package/dist/types/plugins/global_instruction_plugin.d.ts +38 -0
- package/dist/types/runner/in_memory_runner.d.ts +7 -1
- package/dist/types/runner/runner.d.ts +44 -10
- package/dist/types/sessions/base_session_service.d.ts +3 -16
- package/dist/types/sessions/session.d.ts +11 -0
- package/dist/types/sessions/vertex_ai_session_service.d.ts +9 -1
- package/dist/types/tools/consolidate_context_tool.d.ts +19 -0
- package/dist/types/tools/enterprise_web_search_tool.d.ts +26 -0
- package/dist/types/tools/example_tool.d.ts +21 -0
- package/dist/types/tools/forwarding_artifact_service.d.ts +3 -2
- package/dist/types/tools/load_web_page.d.ts +33 -0
- package/dist/types/tools/mcp/load_mcp_resource_tool.d.ts +26 -0
- package/dist/types/tools/mcp/mcp_toolset.d.ts +27 -0
- package/dist/types/tools/skill/run_skill_inline_script_tool.d.ts +25 -0
- package/dist/types/tools/skill/skill_toolset.d.ts +9 -0
- package/dist/types/utils/async_hooks_shim.d.ts +10 -0
- package/dist/types/utils/branch_trie.d.ts +14 -0
- package/dist/types/utils/client_labels.d.ts +10 -0
- package/dist/types/utils/env_aware_utils.d.ts +3 -3
- package/dist/types/utils/task.d.ts +24 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/web/a2a/agent_to_a2a.js +18 -2
- package/dist/web/a2a/event_converter_utils.js +8 -4
- package/dist/web/a2a/metadata_converter_utils.js +1 -1
- package/dist/web/agents/active_streaming_tool.js +6 -1
- package/dist/web/agents/base_agent.js +39 -0
- package/dist/web/agents/context.js +1 -11
- package/dist/web/agents/functions.js +43 -32
- package/dist/web/agents/instructions.js +23 -5
- package/dist/web/agents/invocation_context.js +2 -5
- package/dist/web/agents/llm_agent.js +12 -9
- package/dist/web/agents/loop_agent.js +27 -3
- package/dist/web/agents/processors/code_execution_request_processor.js +0 -3
- package/dist/web/agents/processors/content_processor_utils.js +16 -3
- package/dist/web/agents/processors/context_compactor_request_processor.js +4 -2
- package/dist/web/agents/processors/interactions_request_processor.js +52 -0
- package/dist/web/agents/routed_agent.js +31 -0
- package/dist/web/agents/run_config.js +8 -3
- package/dist/web/apps/app.js +49 -0
- package/dist/web/apps/resumability_config.js +31 -0
- package/dist/web/artifacts/file_artifact_service.js +14 -1
- package/dist/web/artifacts/gcs_artifact_service.js +55 -15
- package/dist/web/artifacts/in_memory_artifact_service.js +12 -1
- package/dist/web/artifacts/scoped_artifact_service.js +86 -0
- package/dist/web/artifacts/session_artifact_service.js +7 -0
- package/dist/web/auth/oauth2/oauth2_discovery.js +14 -4
- package/dist/web/auth/oauth2/oauth2_utils.js +12 -1
- package/dist/web/common.js +67 -3
- package/dist/web/context/agent_controlled_context_compactor.js +81 -0
- package/dist/web/context/anchored_context_compactor.js +117 -0
- package/dist/web/context/compaction_utils.js +27 -0
- package/dist/web/context/token_based_context_compactor.js +52 -33
- package/dist/web/context/trajectory_thought_pruning_compactor.js +43 -0
- package/dist/web/events/compacted_event.js +7 -2
- package/dist/web/events/event.js +44 -0
- package/dist/web/index.js +6 -1
- package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +9 -1
- package/dist/web/models/google_llm.js +54 -9
- package/dist/web/models/interactions_utils.js +728 -0
- package/dist/web/plugins/base_plugin.js +1 -0
- package/dist/web/plugins/global_instruction_plugin.js +67 -0
- package/dist/web/runner/in_memory_runner.js +13 -2
- package/dist/web/runner/runner.js +157 -84
- package/dist/web/sessions/base_session_service.js +6 -1
- package/dist/web/sessions/database_session_service.js +24 -7
- package/dist/web/sessions/vertex_ai_session_service.js +17 -3
- package/dist/web/skills/loader.js +2 -2
- package/dist/web/tools/base_toolset.js +1 -1
- package/dist/web/tools/consolidate_context_tool.js +51 -0
- package/dist/web/tools/enterprise_web_search_tool.js +55 -0
- package/dist/web/tools/example_tool.js +42 -0
- package/dist/web/tools/forwarding_artifact_service.js +16 -28
- package/dist/web/tools/load_web_page.js +221 -0
- package/dist/web/tools/mcp/load_mcp_resource_tool.js +107 -0
- package/dist/web/tools/mcp/mcp_toolset.js +63 -0
- package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +15 -22
- package/dist/web/tools/skill/run_skill_inline_script_tool.js +51 -4
- package/dist/web/tools/skill/skill_toolset.js +4 -2
- package/dist/web/utils/async_hooks_shim.js +24 -0
- package/dist/web/utils/branch_trie.js +13 -0
- package/dist/web/utils/client_labels.js +38 -2
- package/dist/web/utils/env_aware_utils.js +10 -1
- package/dist/web/utils/streaming_utils.js +11 -5
- package/dist/web/utils/task.js +34 -0
- package/dist/web/version.js +1 -1
- package/package.json +2 -2
package/dist/cjs/common.js
CHANGED
|
@@ -28,8 +28,10 @@ __export(common_exports, {
|
|
|
28
28
|
AUTH_PREPROCESSOR: () => import_auth_preprocessor.AUTH_PREPROCESSOR,
|
|
29
29
|
ActiveStreamingTool: () => import_active_streaming_tool.ActiveStreamingTool,
|
|
30
30
|
Agent: () => import_llm_agent.LlmAgent,
|
|
31
|
+
AgentControlledContextCompactor: () => import_agent_controlled_context_compactor.AgentControlledContextCompactor,
|
|
31
32
|
AgentTool: () => import_agent_tool.AgentTool,
|
|
32
33
|
AgentTransferLlmRequestProcessor: () => import_agent_transfer_llm_request_processor.AgentTransferLlmRequestProcessor,
|
|
34
|
+
AnchoredContextCompactor: () => import_anchored_context_compactor.AnchoredContextCompactor,
|
|
33
35
|
ApigeeLlm: () => import_apigee_llm.ApigeeLlm,
|
|
34
36
|
AuthCredentialTypes: () => import_auth_credential.AuthCredentialTypes,
|
|
35
37
|
AuthHandler: () => import_auth_handler.AuthHandler,
|
|
@@ -48,14 +50,18 @@ __export(common_exports, {
|
|
|
48
50
|
BuiltInCodeExecutor: () => import_built_in_code_executor.BuiltInCodeExecutor,
|
|
49
51
|
CONTENT_REQUEST_PROCESSOR: () => import_content_request_processor.CONTENT_REQUEST_PROCESSOR,
|
|
50
52
|
CodeExecutionLanguage: () => import_code_execution_utils.CodeExecutionLanguage,
|
|
53
|
+
ConsolidateContextTool: () => import_consolidate_context_tool.ConsolidateContextTool,
|
|
51
54
|
ContentRequestProcessor: () => import_content_request_processor.ContentRequestProcessor,
|
|
52
55
|
Context: () => import_context.Context,
|
|
53
56
|
ContextCompactionTrigger: () => import_base_plugin.ContextCompactionTrigger,
|
|
54
57
|
ContextCompactorRequestProcessor: () => import_context_compactor_request_processor.ContextCompactorRequestProcessor,
|
|
55
58
|
CredentialExchangeError: () => import_base_credential_exchanger.CredentialExchangeError,
|
|
56
59
|
CredentialRefresherRegistry: () => import_credential_refresher_registry.CredentialRefresherRegistry,
|
|
60
|
+
ENTERPRISE_WEB_SEARCH: () => import_enterprise_web_search_tool.ENTERPRISE_WEB_SEARCH,
|
|
57
61
|
EXIT_LOOP: () => import_exit_loop_tool.EXIT_LOOP,
|
|
62
|
+
EnterpriseWebSearchTool: () => import_enterprise_web_search_tool.EnterpriseWebSearchTool,
|
|
58
63
|
EventType: () => import_structured_events.EventType,
|
|
64
|
+
ExampleTool: () => import_example_tool.ExampleTool,
|
|
59
65
|
ExitLoopTool: () => import_exit_loop_tool.ExitLoopTool,
|
|
60
66
|
FileContentEncoding: () => import_code_execution_utils.FileContentEncoding,
|
|
61
67
|
FunctionTool: () => import_function_tool.FunctionTool,
|
|
@@ -63,19 +69,23 @@ __export(common_exports, {
|
|
|
63
69
|
GOOGLE_MAPS_GROUNDING: () => import_google_maps_grounding_tool.GOOGLE_MAPS_GROUNDING,
|
|
64
70
|
GOOGLE_SEARCH: () => import_google_search_tool.GOOGLE_SEARCH,
|
|
65
71
|
Gemini: () => import_google_llm.Gemini,
|
|
72
|
+
GlobalInstructionPlugin: () => import_global_instruction_plugin.GlobalInstructionPlugin,
|
|
66
73
|
GoogleLLMVariant: () => import_variant_utils.GoogleLLMVariant,
|
|
67
74
|
GoogleMapsGroundingTool: () => import_google_maps_grounding_tool.GoogleMapsGroundingTool,
|
|
68
75
|
GoogleSearchTool: () => import_google_search_tool.GoogleSearchTool,
|
|
76
|
+
INTERACTIONS_REQUEST_PROCESSOR: () => import_interactions_request_processor.INTERACTIONS_REQUEST_PROCESSOR,
|
|
69
77
|
InMemoryArtifactService: () => import_in_memory_artifact_service.InMemoryArtifactService,
|
|
70
78
|
InMemoryCredentialService: () => import_in_memory_credential_service.InMemoryCredentialService,
|
|
71
79
|
InMemoryMemoryService: () => import_in_memory_memory_service.InMemoryMemoryService,
|
|
72
80
|
InMemoryPolicyEngine: () => import_security_plugin.InMemoryPolicyEngine,
|
|
73
81
|
InMemoryRunner: () => import_in_memory_runner.InMemoryRunner,
|
|
74
82
|
InMemorySessionService: () => import_in_memory_session_service.InMemorySessionService,
|
|
83
|
+
InteractionsRequestProcessor: () => import_interactions_request_processor.InteractionsRequestProcessor,
|
|
75
84
|
InvocationContext: () => import_invocation_context.InvocationContext,
|
|
76
85
|
LLMRegistry: () => import_registry.LLMRegistry,
|
|
77
86
|
LOAD_ARTIFACTS: () => import_load_artifacts_tool.LOAD_ARTIFACTS,
|
|
78
87
|
LOAD_MEMORY: () => import_load_memory_tool.LOAD_MEMORY,
|
|
88
|
+
LOAD_WEB_PAGE: () => import_load_web_page.LOAD_WEB_PAGE,
|
|
79
89
|
ListSkillsTool: () => import_list_skills_tool.ListSkillsTool,
|
|
80
90
|
LiveRequestQueue: () => import_live_request_queue.LiveRequestQueue,
|
|
81
91
|
LlmAgent: () => import_llm_agent.LlmAgent,
|
|
@@ -112,9 +122,11 @@ __export(common_exports, {
|
|
|
112
122
|
SkillToolset: () => import_skill_toolset.SkillToolset,
|
|
113
123
|
State: () => import_state.State,
|
|
114
124
|
StreamingMode: () => import_run_config.StreamingMode,
|
|
125
|
+
Task: () => import_task.Task,
|
|
115
126
|
TokenBasedContextCompactor: () => import_token_based_context_compactor.TokenBasedContextCompactor,
|
|
116
127
|
ToolAuthHandler: () => import_tool_auth_handler.ToolAuthHandler,
|
|
117
128
|
ToolConfirmation: () => import_tool_confirmation.ToolConfirmation,
|
|
129
|
+
TrajectoryThoughtPruningCompactor: () => import_trajectory_thought_pruning_compactor.TrajectoryThoughtPruningCompactor,
|
|
118
130
|
TruncatingContextCompactor: () => import_truncating_context_compactor.TruncatingContextCompactor,
|
|
119
131
|
URL_CONTEXT: () => import_url_context_tool.URL_CONTEXT,
|
|
120
132
|
UrlContextTool: () => import_url_context_tool.UrlContextTool,
|
|
@@ -124,13 +136,21 @@ __export(common_exports, {
|
|
|
124
136
|
createEvent: () => import_event.createEvent,
|
|
125
137
|
createEventActions: () => import_event_actions.createEventActions,
|
|
126
138
|
createRestApiTool: () => import_rest_api_tool.createRestApiTool,
|
|
139
|
+
createResumabilityConfig: () => import_resumability_config.createResumabilityConfig,
|
|
127
140
|
createSession: () => import_session.createSession,
|
|
141
|
+
determineAgentForResumption: () => import_runner.determineAgentForResumption,
|
|
142
|
+
findEventByFunctionCallId: () => import_functions.findEventByFunctionCallId,
|
|
143
|
+
findEventByLastFunctionResponseId: () => import_runner.findEventByLastFunctionResponseId,
|
|
144
|
+
findMatchingFunctionCall: () => import_functions.findMatchingFunctionCall,
|
|
128
145
|
functionsExportedForTestingOnly: () => import_functions.functionsExportedForTestingOnly,
|
|
129
146
|
geminiInitParams: () => import_google_llm.geminiInitParams,
|
|
147
|
+
generateClientFunctionCallId: () => import_event.generateClientFunctionCallId,
|
|
130
148
|
getAskUserConfirmationFunctionCalls: () => import_security_plugin.getAskUserConfirmationFunctionCalls,
|
|
149
|
+
getClientLabels: () => import_client_labels.getClientLabels,
|
|
131
150
|
getFunctionCalls: () => import_event.getFunctionCalls,
|
|
132
151
|
getFunctionResponses: () => import_event.getFunctionResponses,
|
|
133
152
|
getLogger: () => import_logger.getLogger,
|
|
153
|
+
hasThoughts: () => import_event.hasThoughts,
|
|
134
154
|
hasTrailingCodeExecutionResult: () => import_event.hasTrailingCodeExecutionResult,
|
|
135
155
|
isAgentTool: () => import_agent_tool.isAgentTool,
|
|
136
156
|
isBaseAgent: () => import_base_agent.isBaseAgent,
|
|
@@ -146,12 +166,18 @@ __export(common_exports, {
|
|
|
146
166
|
isLlmAgent: () => import_llm_agent.isLlmAgent,
|
|
147
167
|
isLoopAgent: () => import_loop_agent.isLoopAgent,
|
|
148
168
|
isParallelAgent: () => import_parallel_agent.isParallelAgent,
|
|
169
|
+
isRoutableLlmAgent: () => import_runner.isRoutableLlmAgent,
|
|
149
170
|
isRoutedAgent: () => import_routed_agent.isRoutedAgent,
|
|
150
171
|
isRunner: () => import_runner.isRunner,
|
|
172
|
+
isScratchpadEvent: () => import_compacted_event.isScratchpadEvent,
|
|
151
173
|
isSequentialAgent: () => import_sequential_agent.isSequentialAgent,
|
|
152
174
|
loadAllSkillsInDir: () => import_loader.loadAllSkillsInDir,
|
|
153
175
|
loadSkillFromDir: () => import_loader.loadSkillFromDir,
|
|
154
176
|
loadSkillFromZipBuffer: () => import_loader.loadSkillFromZipBuffer,
|
|
177
|
+
loadWebPage: () => import_load_web_page.loadWebPage,
|
|
178
|
+
populateClientFunctionCallId: () => import_event.populateClientFunctionCallId,
|
|
179
|
+
pruneThoughts: () => import_event.pruneThoughts,
|
|
180
|
+
runWithClientLabel: () => import_client_labels.runWithClientLabel,
|
|
155
181
|
setLogLevel: () => import_logger.setLogLevel,
|
|
156
182
|
setLogger: () => import_logger.setLogger,
|
|
157
183
|
stringifyContent: () => import_event.stringifyContent,
|
|
@@ -174,10 +200,12 @@ var import_agent_transfer_llm_request_processor = require("./agents/processors/a
|
|
|
174
200
|
var import_base_llm_processor = require("./agents/processors/base_llm_processor.js");
|
|
175
201
|
var import_content_request_processor = require("./agents/processors/content_request_processor.js");
|
|
176
202
|
var import_context_compactor_request_processor = require("./agents/processors/context_compactor_request_processor.js");
|
|
203
|
+
var import_interactions_request_processor = require("./agents/processors/interactions_request_processor.js");
|
|
177
204
|
var import_readonly_context = require("./agents/readonly_context.js");
|
|
178
205
|
var import_routed_agent = require("./agents/routed_agent.js");
|
|
179
206
|
var import_run_config = require("./agents/run_config.js");
|
|
180
207
|
var import_sequential_agent = require("./agents/sequential_agent.js");
|
|
208
|
+
var import_resumability_config = require("./apps/resumability_config.js");
|
|
181
209
|
var import_in_memory_artifact_service = require("./artifacts/in_memory_artifact_service.js");
|
|
182
210
|
var import_auth_credential = require("./auth/auth_credential.js");
|
|
183
211
|
var import_auth_handler = require("./auth/auth_handler.js");
|
|
@@ -193,8 +221,11 @@ var import_credential_refresher_registry = require("./auth/refresher/credential_
|
|
|
193
221
|
var import_base_code_executor = require("./code_executors/base_code_executor.js");
|
|
194
222
|
var import_built_in_code_executor = require("./code_executors/built_in_code_executor.js");
|
|
195
223
|
var import_code_execution_utils = require("./code_executors/code_execution_utils.js");
|
|
224
|
+
var import_agent_controlled_context_compactor = require("./context/agent_controlled_context_compactor.js");
|
|
225
|
+
var import_anchored_context_compactor = require("./context/anchored_context_compactor.js");
|
|
196
226
|
var import_llm_summarizer = require("./context/summarizers/llm_summarizer.js");
|
|
197
227
|
var import_token_based_context_compactor = require("./context/token_based_context_compactor.js");
|
|
228
|
+
var import_trajectory_thought_pruning_compactor = require("./context/trajectory_thought_pruning_compactor.js");
|
|
198
229
|
var import_truncating_context_compactor = require("./context/truncating_context_compactor.js");
|
|
199
230
|
var import_compacted_event = require("./events/compacted_event.js");
|
|
200
231
|
var import_event = require("./events/event.js");
|
|
@@ -209,6 +240,7 @@ var import_google_llm = require("./models/google_llm.js");
|
|
|
209
240
|
var import_registry = require("./models/registry.js");
|
|
210
241
|
var import_routed_llm = require("./models/routed_llm.js");
|
|
211
242
|
var import_base_plugin = require("./plugins/base_plugin.js");
|
|
243
|
+
var import_global_instruction_plugin = require("./plugins/global_instruction_plugin.js");
|
|
212
244
|
var import_logging_plugin = require("./plugins/logging_plugin.js");
|
|
213
245
|
var import_plugin_manager = require("./plugins/plugin_manager.js");
|
|
214
246
|
var import_security_plugin = require("./plugins/security_plugin.js");
|
|
@@ -221,21 +253,27 @@ var import_state = require("./sessions/state.js");
|
|
|
221
253
|
var import_agent_tool = require("./tools/agent_tool.js");
|
|
222
254
|
var import_base_tool = require("./tools/base_tool.js");
|
|
223
255
|
var import_base_toolset = require("./tools/base_toolset.js");
|
|
256
|
+
var import_consolidate_context_tool = require("./tools/consolidate_context_tool.js");
|
|
257
|
+
var import_enterprise_web_search_tool = require("./tools/enterprise_web_search_tool.js");
|
|
258
|
+
var import_example_tool = require("./tools/example_tool.js");
|
|
224
259
|
var import_exit_loop_tool = require("./tools/exit_loop_tool.js");
|
|
225
260
|
var import_function_tool = require("./tools/function_tool.js");
|
|
226
261
|
var import_google_maps_grounding_tool = require("./tools/google_maps_grounding_tool.js");
|
|
227
262
|
var import_google_search_tool = require("./tools/google_search_tool.js");
|
|
228
263
|
var import_load_artifacts_tool = require("./tools/load_artifacts_tool.js");
|
|
229
264
|
var import_load_memory_tool = require("./tools/load_memory_tool.js");
|
|
265
|
+
var import_load_web_page = require("./tools/load_web_page.js");
|
|
230
266
|
var import_long_running_tool = require("./tools/long_running_tool.js");
|
|
231
267
|
var import_preload_memory_tool = require("./tools/preload_memory_tool.js");
|
|
232
268
|
var import_tool_confirmation = require("./tools/tool_confirmation.js");
|
|
233
269
|
var import_url_context_tool = require("./tools/url_context_tool.js");
|
|
234
270
|
var import_vertex_ai_search_tool = require("./tools/vertex_ai_search_tool.js");
|
|
235
271
|
var import_vertex_rag_retrieval_tool = require("./tools/vertex_rag_retrieval_tool.js");
|
|
272
|
+
var import_client_labels = require("./utils/client_labels.js");
|
|
236
273
|
var import_logger = require("./utils/logger.js");
|
|
237
274
|
var import_model_name = require("./utils/model_name.js");
|
|
238
275
|
var import_simple_zod_to_json = require("./utils/simple_zod_to_json.js");
|
|
276
|
+
var import_task = require("./utils/task.js");
|
|
239
277
|
var import_variant_utils = require("./utils/variant_utils.js");
|
|
240
278
|
var import_version = require("./version.js");
|
|
241
279
|
var import_gcp_skill_registry = require("./skills/gcp_skill_registry.js");
|
|
@@ -245,11 +283,17 @@ var import_load_skill_resource_tool = require("./tools/skill/load_skill_resource
|
|
|
245
283
|
var import_load_skill_tool = require("./tools/skill/load_skill_tool.js");
|
|
246
284
|
var import_search_skills_tool = require("./tools/skill/search_skills_tool.js");
|
|
247
285
|
var import_skill_toolset = require("./tools/skill/skill_toolset.js");
|
|
286
|
+
__reExport(common_exports, require("./artifacts/base_artifact_service.js"), module.exports);
|
|
287
|
+
__reExport(common_exports, require("./features/feature_registry.js"), module.exports);
|
|
288
|
+
__reExport(common_exports, require("./memory/base_memory_service.js"), module.exports);
|
|
289
|
+
__reExport(common_exports, require("./sessions/base_session_service.js"), module.exports);
|
|
290
|
+
__reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
248
291
|
var import_openapi_spec_parser = require("./tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js");
|
|
249
292
|
var import_operation_parser = require("./tools/openapi_tool/openapi_spec_parser/operation_parser.js");
|
|
250
293
|
var import_tool_auth_handler = require("./tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js");
|
|
251
294
|
var import_openapi_toolset = require("./tools/openapi_tool/openapi_toolset.js");
|
|
252
295
|
var import_rest_api_tool = require("./tools/openapi_tool/rest_api_tool.js");
|
|
296
|
+
__reExport(common_exports, require("./apps/app.js"), module.exports);
|
|
253
297
|
__reExport(common_exports, require("./artifacts/base_artifact_service.js"), module.exports);
|
|
254
298
|
__reExport(common_exports, require("./features/feature_registry.js"), module.exports);
|
|
255
299
|
__reExport(common_exports, require("./memory/base_memory_service.js"), module.exports);
|
|
@@ -265,8 +309,10 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
265
309
|
AUTH_PREPROCESSOR,
|
|
266
310
|
ActiveStreamingTool,
|
|
267
311
|
Agent,
|
|
312
|
+
AgentControlledContextCompactor,
|
|
268
313
|
AgentTool,
|
|
269
314
|
AgentTransferLlmRequestProcessor,
|
|
315
|
+
AnchoredContextCompactor,
|
|
270
316
|
ApigeeLlm,
|
|
271
317
|
AuthCredentialTypes,
|
|
272
318
|
AuthHandler,
|
|
@@ -285,14 +331,18 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
285
331
|
BuiltInCodeExecutor,
|
|
286
332
|
CONTENT_REQUEST_PROCESSOR,
|
|
287
333
|
CodeExecutionLanguage,
|
|
334
|
+
ConsolidateContextTool,
|
|
288
335
|
ContentRequestProcessor,
|
|
289
336
|
Context,
|
|
290
337
|
ContextCompactionTrigger,
|
|
291
338
|
ContextCompactorRequestProcessor,
|
|
292
339
|
CredentialExchangeError,
|
|
293
340
|
CredentialRefresherRegistry,
|
|
341
|
+
ENTERPRISE_WEB_SEARCH,
|
|
294
342
|
EXIT_LOOP,
|
|
343
|
+
EnterpriseWebSearchTool,
|
|
295
344
|
EventType,
|
|
345
|
+
ExampleTool,
|
|
296
346
|
ExitLoopTool,
|
|
297
347
|
FileContentEncoding,
|
|
298
348
|
FunctionTool,
|
|
@@ -300,19 +350,23 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
300
350
|
GOOGLE_MAPS_GROUNDING,
|
|
301
351
|
GOOGLE_SEARCH,
|
|
302
352
|
Gemini,
|
|
353
|
+
GlobalInstructionPlugin,
|
|
303
354
|
GoogleLLMVariant,
|
|
304
355
|
GoogleMapsGroundingTool,
|
|
305
356
|
GoogleSearchTool,
|
|
357
|
+
INTERACTIONS_REQUEST_PROCESSOR,
|
|
306
358
|
InMemoryArtifactService,
|
|
307
359
|
InMemoryCredentialService,
|
|
308
360
|
InMemoryMemoryService,
|
|
309
361
|
InMemoryPolicyEngine,
|
|
310
362
|
InMemoryRunner,
|
|
311
363
|
InMemorySessionService,
|
|
364
|
+
InteractionsRequestProcessor,
|
|
312
365
|
InvocationContext,
|
|
313
366
|
LLMRegistry,
|
|
314
367
|
LOAD_ARTIFACTS,
|
|
315
368
|
LOAD_MEMORY,
|
|
369
|
+
LOAD_WEB_PAGE,
|
|
316
370
|
ListSkillsTool,
|
|
317
371
|
LiveRequestQueue,
|
|
318
372
|
LlmAgent,
|
|
@@ -349,9 +403,11 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
349
403
|
SkillToolset,
|
|
350
404
|
State,
|
|
351
405
|
StreamingMode,
|
|
406
|
+
Task,
|
|
352
407
|
TokenBasedContextCompactor,
|
|
353
408
|
ToolAuthHandler,
|
|
354
409
|
ToolConfirmation,
|
|
410
|
+
TrajectoryThoughtPruningCompactor,
|
|
355
411
|
TruncatingContextCompactor,
|
|
356
412
|
URL_CONTEXT,
|
|
357
413
|
UrlContextTool,
|
|
@@ -361,13 +417,21 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
361
417
|
createEvent,
|
|
362
418
|
createEventActions,
|
|
363
419
|
createRestApiTool,
|
|
420
|
+
createResumabilityConfig,
|
|
364
421
|
createSession,
|
|
422
|
+
determineAgentForResumption,
|
|
423
|
+
findEventByFunctionCallId,
|
|
424
|
+
findEventByLastFunctionResponseId,
|
|
425
|
+
findMatchingFunctionCall,
|
|
365
426
|
functionsExportedForTestingOnly,
|
|
366
427
|
geminiInitParams,
|
|
428
|
+
generateClientFunctionCallId,
|
|
367
429
|
getAskUserConfirmationFunctionCalls,
|
|
430
|
+
getClientLabels,
|
|
368
431
|
getFunctionCalls,
|
|
369
432
|
getFunctionResponses,
|
|
370
433
|
getLogger,
|
|
434
|
+
hasThoughts,
|
|
371
435
|
hasTrailingCodeExecutionResult,
|
|
372
436
|
isAgentTool,
|
|
373
437
|
isBaseAgent,
|
|
@@ -383,12 +447,18 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
383
447
|
isLlmAgent,
|
|
384
448
|
isLoopAgent,
|
|
385
449
|
isParallelAgent,
|
|
450
|
+
isRoutableLlmAgent,
|
|
386
451
|
isRoutedAgent,
|
|
387
452
|
isRunner,
|
|
453
|
+
isScratchpadEvent,
|
|
388
454
|
isSequentialAgent,
|
|
389
455
|
loadAllSkillsInDir,
|
|
390
456
|
loadSkillFromDir,
|
|
391
457
|
loadSkillFromZipBuffer,
|
|
458
|
+
loadWebPage,
|
|
459
|
+
populateClientFunctionCallId,
|
|
460
|
+
pruneThoughts,
|
|
461
|
+
runWithClientLabel,
|
|
392
462
|
setLogLevel,
|
|
393
463
|
setLogger,
|
|
394
464
|
stringifyContent,
|
|
@@ -400,5 +470,11 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
|
|
|
400
470
|
...require("./features/feature_registry.js"),
|
|
401
471
|
...require("./memory/base_memory_service.js"),
|
|
402
472
|
...require("./sessions/base_session_service.js"),
|
|
473
|
+
...require("./tools/base_tool.js"),
|
|
474
|
+
...require("./apps/app.js"),
|
|
475
|
+
...require("./artifacts/base_artifact_service.js"),
|
|
476
|
+
...require("./features/feature_registry.js"),
|
|
477
|
+
...require("./memory/base_memory_service.js"),
|
|
478
|
+
...require("./sessions/base_session_service.js"),
|
|
403
479
|
...require("./tools/base_tool.js")
|
|
404
480
|
});
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __export = (target, all) => {
|
|
13
|
+
for (var name in all)
|
|
14
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
|
+
};
|
|
16
|
+
var __copyProps = (to, from, except, desc) => {
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from))
|
|
19
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
+
var agent_controlled_context_compactor_exports = {};
|
|
26
|
+
__export(agent_controlled_context_compactor_exports, {
|
|
27
|
+
AgentControlledContextCompactor: () => AgentControlledContextCompactor
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(agent_controlled_context_compactor_exports);
|
|
30
|
+
var import_compacted_event = require("../events/compacted_event.js");
|
|
31
|
+
var import_event = require("../events/event.js");
|
|
32
|
+
var import_base_plugin = require("../plugins/base_plugin.js");
|
|
33
|
+
/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2026 Google LLC
|
|
36
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
37
|
+
*/
|
|
38
|
+
class AgentControlledContextCompactor {
|
|
39
|
+
constructor(options) {
|
|
40
|
+
this.trigger = import_base_plugin.ContextCompactionTrigger.AgentControlled;
|
|
41
|
+
this.summarizer = options.summarizer;
|
|
42
|
+
}
|
|
43
|
+
shouldCompact(invocationContext) {
|
|
44
|
+
return invocationContext.session.state["temp:consolidate_context"] === true;
|
|
45
|
+
}
|
|
46
|
+
async compact(invocationContext) {
|
|
47
|
+
const events = invocationContext.session.events;
|
|
48
|
+
const activeEvents = this.getActiveEvents(events);
|
|
49
|
+
const consolidateToolCallIndex = activeEvents.reduce(
|
|
50
|
+
(acc, e, idx) => {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
return ((_b = (_a = e.content) == null ? void 0 : _a.parts) == null ? void 0 : _b.some(
|
|
53
|
+
(p) => {
|
|
54
|
+
var _a2;
|
|
55
|
+
return ((_a2 = p.functionCall) == null ? void 0 : _a2.name) === "consolidate_context";
|
|
56
|
+
}
|
|
57
|
+
)) ? idx : acc;
|
|
58
|
+
},
|
|
59
|
+
-1
|
|
60
|
+
);
|
|
61
|
+
if (consolidateToolCallIndex <= 0) {
|
|
62
|
+
this.clearFlags(invocationContext);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const eventsToCompact = activeEvents.slice(0, consolidateToolCallIndex);
|
|
66
|
+
const detail = invocationContext.session.state["temp:consolidate_context_detail"];
|
|
67
|
+
if (detail) {
|
|
68
|
+
eventsToCompact.push(
|
|
69
|
+
(0, import_event.createEvent)({
|
|
70
|
+
author: "system",
|
|
71
|
+
timestamp: eventsToCompact[eventsToCompact.length - 1].timestamp,
|
|
72
|
+
content: {
|
|
73
|
+
role: "user",
|
|
74
|
+
parts: [
|
|
75
|
+
{
|
|
76
|
+
text: `CRITICAL INSTRUCTION FOR SUMMARY: Please summarize the history. Focus especially on: ${detail}`
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
})
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
const compactedEvent = await this.summarizer.summarize(eventsToCompact);
|
|
85
|
+
invocationContext.session.events.push(compactedEvent);
|
|
86
|
+
} catch (error) {
|
|
87
|
+
console.error("Compaction failed:", error);
|
|
88
|
+
} finally {
|
|
89
|
+
this.clearFlags(invocationContext);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
clearFlags(invocationContext) {
|
|
93
|
+
delete invocationContext.session.state["temp:consolidate_context"];
|
|
94
|
+
delete invocationContext.session.state["temp:consolidate_context_detail"];
|
|
95
|
+
}
|
|
96
|
+
getActiveEvents(events) {
|
|
97
|
+
const latest = events.filter(import_compacted_event.isCompactedEvent).pop();
|
|
98
|
+
return latest ? [
|
|
99
|
+
latest,
|
|
100
|
+
...events.filter(
|
|
101
|
+
(e) => !(0, import_compacted_event.isCompactedEvent)(e) && e.timestamp > latest.endTime
|
|
102
|
+
)
|
|
103
|
+
] : events;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
107
|
+
0 && (module.exports = {
|
|
108
|
+
AgentControlledContextCompactor
|
|
109
|
+
});
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __export = (target, all) => {
|
|
13
|
+
for (var name in all)
|
|
14
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
|
+
};
|
|
16
|
+
var __copyProps = (to, from, except, desc) => {
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from))
|
|
19
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
+
var anchored_context_compactor_exports = {};
|
|
26
|
+
__export(anchored_context_compactor_exports, {
|
|
27
|
+
AnchoredContextCompactor: () => AnchoredContextCompactor
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(anchored_context_compactor_exports);
|
|
30
|
+
var import_compacted_event = require("../events/compacted_event.js");
|
|
31
|
+
var import_event = require("../events/event.js");
|
|
32
|
+
var import_compaction_utils = require("./compaction_utils.js");
|
|
33
|
+
/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2026 Google LLC
|
|
36
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
37
|
+
*/
|
|
38
|
+
class AnchoredContextCompactor {
|
|
39
|
+
constructor(options) {
|
|
40
|
+
this.tokenThreshold = options.tokenThreshold;
|
|
41
|
+
this.eventRetentionSize = options.eventRetentionSize;
|
|
42
|
+
this.summarizer = options.summarizer;
|
|
43
|
+
}
|
|
44
|
+
getActiveEvents(events) {
|
|
45
|
+
let latestScratchpad = void 0;
|
|
46
|
+
for (let i = events.length - 1; i >= 0; i--) {
|
|
47
|
+
const e = events[i];
|
|
48
|
+
if ((0, import_compacted_event.isScratchpadEvent)(e)) {
|
|
49
|
+
latestScratchpad = e;
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (!latestScratchpad) {
|
|
54
|
+
return events;
|
|
55
|
+
}
|
|
56
|
+
const activeRawEvents = events.filter(
|
|
57
|
+
(e) => e.timestamp > latestScratchpad.endTime && !(0, import_compacted_event.isScratchpadEvent)(e)
|
|
58
|
+
);
|
|
59
|
+
return [latestScratchpad, ...activeRawEvents];
|
|
60
|
+
}
|
|
61
|
+
shouldCompact(invocationContext) {
|
|
62
|
+
const events = invocationContext.session.events;
|
|
63
|
+
const activeEvents = this.getActiveEvents(events);
|
|
64
|
+
const hasScratchpad = activeEvents.length > 0 && (0, import_compacted_event.isScratchpadEvent)(activeEvents[0]);
|
|
65
|
+
const rawEvents = hasScratchpad ? activeEvents.slice(1) : activeEvents;
|
|
66
|
+
if (rawEvents.length <= this.eventRetentionSize) {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
const retainStartIndex = (0, import_compaction_utils.calculateRetainStartIndex)(
|
|
70
|
+
rawEvents,
|
|
71
|
+
this.eventRetentionSize
|
|
72
|
+
);
|
|
73
|
+
if (retainStartIndex === 0) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
const totalTokens = activeEvents.reduce(
|
|
77
|
+
(sum, event) => sum + (0, import_event.getEventTokens)(event),
|
|
78
|
+
0
|
|
79
|
+
);
|
|
80
|
+
return totalTokens > this.tokenThreshold;
|
|
81
|
+
}
|
|
82
|
+
async compact(invocationContext) {
|
|
83
|
+
const events = invocationContext.session.events;
|
|
84
|
+
const activeEvents = this.getActiveEvents(events);
|
|
85
|
+
const hasScratchpad = activeEvents.length > 0 && (0, import_compacted_event.isScratchpadEvent)(activeEvents[0]);
|
|
86
|
+
const rawEvents = hasScratchpad ? activeEvents.slice(1) : activeEvents;
|
|
87
|
+
if (rawEvents.length <= this.eventRetentionSize) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
const retainStartIndex = (0, import_compaction_utils.calculateRetainStartIndex)(
|
|
91
|
+
rawEvents,
|
|
92
|
+
this.eventRetentionSize
|
|
93
|
+
);
|
|
94
|
+
if (retainStartIndex === 0) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const rawEventsToCompact = rawEvents.slice(0, retainStartIndex);
|
|
98
|
+
let scratchpadEvent;
|
|
99
|
+
if (hasScratchpad) {
|
|
100
|
+
const existingScratchpad = activeEvents[0];
|
|
101
|
+
scratchpadEvent = await this.summarizer.summarize([
|
|
102
|
+
existingScratchpad,
|
|
103
|
+
...rawEventsToCompact
|
|
104
|
+
]);
|
|
105
|
+
} else {
|
|
106
|
+
scratchpadEvent = await this.summarizer.summarize(rawEventsToCompact);
|
|
107
|
+
}
|
|
108
|
+
const updatedScratchpad = {
|
|
109
|
+
...scratchpadEvent,
|
|
110
|
+
isScratchpad: true,
|
|
111
|
+
author: "system"
|
|
112
|
+
};
|
|
113
|
+
const inactiveEvents = events.slice(0, events.indexOf(activeEvents[0]));
|
|
114
|
+
const retainedRawEvents = rawEvents.slice(retainStartIndex);
|
|
115
|
+
const newEventsList = [
|
|
116
|
+
...inactiveEvents,
|
|
117
|
+
updatedScratchpad,
|
|
118
|
+
...retainedRawEvents
|
|
119
|
+
];
|
|
120
|
+
events.length = 0;
|
|
121
|
+
events.push(...newEventsList);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
125
|
+
0 && (module.exports = {
|
|
126
|
+
AnchoredContextCompactor
|
|
127
|
+
});
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __export = (target, all) => {
|
|
13
|
+
for (var name in all)
|
|
14
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
|
+
};
|
|
16
|
+
var __copyProps = (to, from, except, desc) => {
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from))
|
|
19
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
+
var compaction_utils_exports = {};
|
|
26
|
+
__export(compaction_utils_exports, {
|
|
27
|
+
calculateRetainStartIndex: () => calculateRetainStartIndex
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(compaction_utils_exports);
|
|
30
|
+
var import_event = require("../events/event.js");
|
|
31
|
+
/**
|
|
32
|
+
* @license
|
|
33
|
+
* Copyright 2026 Google LLC
|
|
34
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
35
|
+
*/
|
|
36
|
+
function calculateRetainStartIndex(rawEvents, eventRetentionSize) {
|
|
37
|
+
let retainStartIndex = Math.max(0, rawEvents.length - eventRetentionSize);
|
|
38
|
+
while (retainStartIndex > 0) {
|
|
39
|
+
const eventToRetain = rawEvents[retainStartIndex];
|
|
40
|
+
const previousEvent = rawEvents[retainStartIndex - 1];
|
|
41
|
+
if ((0, import_event.getFunctionResponses)(eventToRetain).length > 0 && (0, import_event.getFunctionCalls)(previousEvent).length > 0) {
|
|
42
|
+
retainStartIndex--;
|
|
43
|
+
} else {
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return retainStartIndex;
|
|
48
|
+
}
|
|
49
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
50
|
+
0 && (module.exports = {
|
|
51
|
+
calculateRetainStartIndex
|
|
52
|
+
});
|