glaip-sdk 0.7.13__py3-none-any.whl → 0.7.14__py3-none-any.whl

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.
@@ -1,3 +1,4 @@
1
+ # pylint: disable=duplicate-code
1
2
  """LangGraph-based runner for local agent execution.
2
3
 
3
4
  This module provides the LangGraphRunner which executes glaip-sdk agents
@@ -23,21 +24,20 @@ import logging
23
24
  from dataclasses import dataclass
24
25
  from typing import TYPE_CHECKING, Any
25
26
 
26
- from gllm_core.utils import LoggerManager
27
-
28
27
  from glaip_sdk.client.run_rendering import AgentRunRenderingManager
29
28
  from glaip_sdk.hitl import PauseResumeCallback
29
+ from glaip_sdk.models import DEFAULT_MODEL
30
30
  from glaip_sdk.runner.base import BaseRunner
31
31
  from glaip_sdk.runner.deps import (
32
32
  check_local_runtime_available,
33
33
  get_local_runtime_missing_message,
34
34
  )
35
35
  from glaip_sdk.utils.tool_storage_provider import build_tool_output_manager
36
+ from gllm_core.utils import LoggerManager
36
37
 
37
38
  if TYPE_CHECKING:
38
- from langchain_core.messages import BaseMessage
39
-
40
39
  from glaip_sdk.agents.base import Agent
40
+ from langchain_core.messages import BaseMessage
41
41
 
42
42
 
43
43
  _AIP_LOGS_SWALLOWED = False
@@ -85,7 +85,11 @@ def _convert_chat_history_to_messages(
85
85
  if not chat_history:
86
86
  return []
87
87
 
88
- from langchain_core.messages import AIMessage, HumanMessage, SystemMessage # noqa: PLC0415
88
+ from langchain_core.messages import ( # noqa: PLC0415
89
+ AIMessage,
90
+ HumanMessage,
91
+ SystemMessage,
92
+ )
89
93
 
90
94
  messages: list[BaseMessage] = []
91
95
  for msg in chat_history:
@@ -120,7 +124,7 @@ class LangGraphRunner(BaseRunner):
120
124
  Defaults to "gpt-4o-mini".
121
125
  """
122
126
 
123
- default_model: str = "openai/gpt-4o-mini"
127
+ default_model: str = DEFAULT_MODEL
124
128
 
125
129
  def run(
126
130
  self,
@@ -258,7 +262,9 @@ class LangGraphRunner(BaseRunner):
258
262
 
259
263
  # Build the local LangGraphReactAgent from the glaip_sdk Agent
260
264
  local_agent = self.build_langgraph_agent(
261
- agent, runtime_config=runtime_config, pause_resume_callback=pause_resume_callback
265
+ agent,
266
+ runtime_config=runtime_config,
267
+ pause_resume_callback=pause_resume_callback,
262
268
  )
263
269
 
264
270
  # Convert chat history to LangChain messages for the agent
@@ -306,10 +312,17 @@ class LangGraphRunner(BaseRunner):
306
312
  raise
307
313
 
308
314
  # Use shared finalizer to avoid code duplication
309
- from glaip_sdk.client.run_rendering import finalize_render_manager # noqa: PLC0415
315
+ from glaip_sdk.client.run_rendering import ( # noqa: PLC0415
316
+ finalize_render_manager,
317
+ )
310
318
 
311
319
  return finalize_render_manager(
312
- render_manager, renderer, final_text, stats_usage, started_monotonic, finished_monotonic
320
+ render_manager,
321
+ renderer,
322
+ final_text,
323
+ stats_usage,
324
+ started_monotonic,
325
+ finished_monotonic,
313
326
  )
314
327
 
315
328
  def build_langgraph_agent(
@@ -339,7 +352,6 @@ class LangGraphRunner(BaseRunner):
339
352
  ValueError: If agent has unsupported tools, MCPs, or sub-agents for local mode.
340
353
  """
341
354
  from aip_agents.agent import LangGraphReactAgent # noqa: PLC0415
342
-
343
355
  from glaip_sdk.runner.tool_adapter import LangChainToolAdapter # noqa: PLC0415
344
356
 
345
357
  # Adapt tools for local execution
@@ -364,6 +376,9 @@ class LangGraphRunner(BaseRunner):
364
376
  merged_agent_config = self._merge_agent_config(agent, normalized_config)
365
377
  agent_config_params, agent_config_kwargs = self._apply_agent_config(merged_agent_config)
366
378
 
379
+ # Resolve model and merge its configuration into agent kwargs
380
+ model_string = self._resolve_local_model(agent, agent_config_kwargs)
381
+
367
382
  tool_output_manager = self._resolve_tool_output_manager(
368
383
  agent,
369
384
  merged_agent_config,
@@ -382,7 +397,7 @@ class LangGraphRunner(BaseRunner):
382
397
  name=agent.name,
383
398
  instruction=agent.instruction,
384
399
  description=agent.description,
385
- model=agent.model or self.default_model,
400
+ model=model_string,
386
401
  tools=langchain_tools,
387
402
  agents=sub_agent_instances if sub_agent_instances else None,
388
403
  tool_configs=tool_configs if tool_configs else None,
@@ -434,7 +449,9 @@ class LangGraphRunner(BaseRunner):
434
449
  hitl_enabled = merged_agent_config.get("hitl_enabled", False)
435
450
  if hitl_enabled:
436
451
  try:
437
- from aip_agents.agent.hitl.manager import ApprovalManager # noqa: PLC0415
452
+ from aip_agents.agent.hitl.manager import ( # noqa: PLC0415
453
+ ApprovalManager,
454
+ )
438
455
  from glaip_sdk.hitl import LocalPromptHandler # noqa: PLC0415
439
456
 
440
457
  local_agent.hitl_manager = ApprovalManager(
@@ -443,7 +460,10 @@ class LangGraphRunner(BaseRunner):
443
460
  # Store callback reference for setting renderer later
444
461
  if pause_resume_callback:
445
462
  local_agent._pause_resume_callback = pause_resume_callback
446
- logger.debug("HITL manager injected for agent '%s' (hitl_enabled=True)", agent_name)
463
+ logger.debug(
464
+ "HITL manager injected for agent '%s' (hitl_enabled=True)",
465
+ agent_name,
466
+ )
447
467
  except ImportError as e:
448
468
  # Missing dependencies - fail fast
449
469
  raise ImportError("Local HITL requires aip_agents. Install with: pip install 'glaip-sdk[local]'") from e
@@ -451,7 +471,10 @@ class LangGraphRunner(BaseRunner):
451
471
  # Other errors during HITL setup - fail fast
452
472
  raise RuntimeError(f"Failed to initialize HITL manager for agent '{agent_name}'") from e
453
473
  else:
454
- logger.debug("HITL manager not injected for agent '%s' (hitl_enabled=False)", agent_name)
474
+ logger.debug(
475
+ "HITL manager not injected for agent '%s' (hitl_enabled=False)",
476
+ agent_name,
477
+ )
455
478
 
456
479
  def _build_sub_agents(
457
480
  self,
@@ -727,6 +750,7 @@ class LangGraphRunner(BaseRunner):
727
750
  """
728
751
  direct_params = {}
729
752
  kwargs_params = {}
753
+ config_dict = {}
730
754
 
731
755
  # Direct constructor parameters
732
756
  if "planning" in agent_config:
@@ -738,19 +762,86 @@ class LangGraphRunner(BaseRunner):
738
762
  # Kwargs parameters (passed through **kwargs to BaseAgent)
739
763
  if "enable_pii" in agent_config:
740
764
  kwargs_params["enable_pii"] = agent_config["enable_pii"]
765
+ config_dict["enable_pii"] = agent_config["enable_pii"]
741
766
 
742
767
  if "memory" in agent_config:
743
768
  # Map "memory" to "memory_backend" for aip-agents compatibility
744
769
  kwargs_params["memory_backend"] = agent_config["memory"]
770
+ config_dict["memory_backend"] = agent_config["memory"]
745
771
 
746
772
  # Additional memory-related settings
747
773
  memory_settings = ["agent_id", "memory_namespace", "save_interaction_to_memory"]
748
774
  for key in memory_settings:
749
775
  if key in agent_config:
750
776
  kwargs_params[key] = agent_config[key]
777
+ config_dict[key] = agent_config[key]
778
+
779
+ # Ensure we pass a config dictionary to BaseAgent, which uses it for
780
+ # LM configuration (api keys, etc.) and other settings.
781
+ if config_dict:
782
+ kwargs_params["config"] = config_dict
751
783
 
752
784
  return direct_params, kwargs_params
753
785
 
786
+ def _convert_model_for_local(self, model: Any) -> tuple[str, dict[str, Any]]:
787
+ """Convert model to aip_agents format for local execution.
788
+
789
+ Args:
790
+ model: Model object or string identifier.
791
+
792
+ Returns:
793
+ Tuple of (model_string, config_dict).
794
+ """
795
+ from glaip_sdk.models._validation import ( # noqa: PLC0415
796
+ convert_model_for_local_execution,
797
+ )
798
+
799
+ return convert_model_for_local_execution(model)
800
+
801
+ def _resolve_local_model(self, agent: Agent, agent_config_kwargs: dict[str, Any]) -> str:
802
+ """Resolve model string and merge its configuration into agent kwargs.
803
+
804
+ This method extracts model-specific credentials and hyperparameters from a Model
805
+ object and merges them into the 'config' dictionary within agent_config_kwargs.
806
+ This is required because BaseAgent expects LM settings (api keys, etc.) to be
807
+ inside the 'config' parameter, not top-level kwargs.
808
+
809
+ Example:
810
+ If agent has:
811
+ - model = Model(id="deepinfra/model", credentials="key-123")
812
+ - agent_config_kwargs = {"enable_pii": True, "config": {"enable_pii": True}}
813
+
814
+ _resolve_local_model will:
815
+ 1. Resolve model_string to "openai-compatible/model"
816
+ 2. Extract model_config as {"lm_api_key": "key-123"}
817
+ 3. Update agent_config_kwargs["config"] to:
818
+ {"enable_pii": True, "lm_api_key": "key-123"}
819
+
820
+ Args:
821
+ agent: The glaip_sdk Agent.
822
+ agent_config_kwargs: Agent config kwargs to update (modified in-place).
823
+
824
+ Returns:
825
+ The model identifier string for local execution.
826
+ """
827
+ model_to_use = agent.model or self.default_model
828
+ model_string, model_config = self._convert_model_for_local(model_to_use)
829
+
830
+ if model_config:
831
+ # Normalize config to a dict early to simplify merging
832
+ config_val = agent_config_kwargs.get("config", {})
833
+ if hasattr(config_val, "model_dump"):
834
+ config_val = config_val.model_dump()
835
+
836
+ if not isinstance(config_val, dict):
837
+ config_val = {}
838
+
839
+ # Use a single merge path for model configuration
840
+ config_val.update(model_config)
841
+ agent_config_kwargs["config"] = config_val
842
+
843
+ return model_string
844
+
754
845
  def _apply_runtime_mcp_configs(
755
846
  self,
756
847
  base_configs: dict[str, Any],
@@ -83,7 +83,9 @@ def resolve_language_model_selection(merged_data: dict[str, Any], cli_model: str
83
83
  """
84
84
  # Priority 1: CLI --model flag
85
85
  if cli_model:
86
- return {"model": cli_model}, False
86
+ from glaip_sdk.models._validation import _validate_model # noqa: PLC0415
87
+
88
+ return {"model": _validate_model(cli_model)}, False
87
89
 
88
90
  # Priority 2: language_model_id from import
89
91
  if merged_data.get("language_model_id"):
@@ -92,7 +94,11 @@ def resolve_language_model_selection(merged_data: dict[str, Any], cli_model: str
92
94
  # Priority 3: Legacy lm_name from agent_config
93
95
  agent_config = merged_data.get("agent_config") or {}
94
96
  if isinstance(agent_config, dict) and agent_config.get("lm_name"):
95
- return {"model": agent_config["lm_name"]}, True # Strip LM identity when extracting from agent_config
97
+ from glaip_sdk.models._validation import _validate_model # noqa: PLC0415
98
+
99
+ return {
100
+ "model": _validate_model(agent_config["lm_name"])
101
+ }, True # Strip LM identity when extracting from agent_config
96
102
 
97
103
  # No LM selection found
98
104
  return {}, False
@@ -10,6 +10,7 @@ Authors:
10
10
  from __future__ import annotations
11
11
 
12
12
  from typing import TYPE_CHECKING
13
+ from collections.abc import Mapping
13
14
 
14
15
  from glaip_sdk.utils.resource_refs import is_uuid
15
16
  from gllm_core.utils import LoggerManager
@@ -379,14 +380,14 @@ def get_name_from_key(key: object) -> str | None:
379
380
  raise ValueError(f"Unable to resolve config key: {key!r}")
380
381
 
381
382
 
382
- def normalize_local_config_keys(config: dict[object, object]) -> dict[str, object]:
383
+ def normalize_local_config_keys(config: Mapping[object, object]) -> dict[str, object]:
383
384
  """Normalize all keys in a config dict to names for local mode.
384
385
 
385
386
  Converts instance/class/string keys to string names without using
386
387
  registry. UUID keys are skipped with a warning.
387
388
 
388
389
  Args:
389
- config: Dict with instance/class/string keys and any values.
390
+ config: Dict/Mapping with instance/class/string keys and any values.
390
391
 
391
392
  Returns:
392
393
  Dict with string name keys only. UUID keys are omitted.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: glaip-sdk
3
- Version: 0.7.13
3
+ Version: 0.7.14
4
4
  Summary: Python SDK and CLI for GL AIP (GDP Labs AI Agent Package) - Build, run, and manage AI agents
5
5
  Author-email: Raymond Christopher <raymond.christopher@gdplabs.id>
6
6
  License: MIT
@@ -5,7 +5,7 @@ glaip_sdk/exceptions.py,sha256=iAChFClkytXRBLP0vZq1_YjoZxA9i4m4bW1gDLiGR1g,2321
5
5
  glaip_sdk/icons.py,sha256=J5THz0ReAmDwIiIooh1_G3Le-mwTJyEjhJDdJ13KRxM,524
6
6
  glaip_sdk/rich_components.py,sha256=44Z0V1ZQleVh9gUDGwRR5mriiYFnVGOhm7fFxZYbP8c,4052
7
7
  glaip_sdk/agents/__init__.py,sha256=VfYov56edbWuySXFEbWJ_jLXgwnFzPk1KB-9-mfsUCc,776
8
- glaip_sdk/agents/base.py,sha256=TKULRlc3wSPLd901_e2h5dXorYVbGt_Nc9YHkDVqp6A,47979
8
+ glaip_sdk/agents/base.py,sha256=Aq7bDGHAw7214wW-9Re_uAzbaGphIUpIIbuibuDf7i4,49131
9
9
  glaip_sdk/cli/__init__.py,sha256=xCCfuF1Yc7mpCDcfhHZTX0vizvtrDSLeT8MJ3V7m5A0,156
10
10
  glaip_sdk/cli/account_store.py,sha256=u_memecwEQssustZs2wYBrHbEmKUlDfmmL-zO1F3n3A,19034
11
11
  glaip_sdk/cli/agent_config.py,sha256=YAbFKrTNTRqNA6b0i0Q3pH-01rhHDRi5v8dxSFwGSwM,2401
@@ -33,9 +33,9 @@ glaip_sdk/cli/commands/configure.py,sha256=ZToy6LSQ3ulEBrB9YpuWiIAiOQ2XQ11MxPNtN
33
33
  glaip_sdk/cli/commands/models.py,sha256=kZKqwv2uzfyz8n_7b0hYTT8waaVZMDzVoSXtRvWa9jk,2042
34
34
  glaip_sdk/cli/commands/transcripts_original.py,sha256=6KEAP_mMdoNgydpunxLjYl6QJIY-CJorwLTBSF3Cfuo,26416
35
35
  glaip_sdk/cli/commands/update.py,sha256=QYz51JdYSbzbLVIH3-Q-qh5MIY4o-LtpbbfMwHYuExA,6658
36
- glaip_sdk/cli/commands/agents/__init__.py,sha256=V-tRAqMcY4amDygp16clkEfQS4Sqw0vOR4BzAGHzNg0,3436
37
- glaip_sdk/cli/commands/agents/_common.py,sha256=2Zg_LctV6CCyZVrXz3xFs6fDX624jVTDzv9VYHMq2JM,17812
38
- glaip_sdk/cli/commands/agents/create.py,sha256=8IFWXZJexspy1M2059CUygVd_xmXXg3JZtVUskVwHMI,4819
36
+ glaip_sdk/cli/commands/agents/__init__.py,sha256=W_fOLZMuTod4atEn4Pryl6Kjp19-qcbnJzFnwfgv-dQ,3361
37
+ glaip_sdk/cli/commands/agents/_common.py,sha256=HztukkGoeS_jZ8fHkrijLofdgSe3ic6uYlUaVoPeAvs,17850
38
+ glaip_sdk/cli/commands/agents/create.py,sha256=uCbDfLtCHZwZl1Z-aiMEXoJAWZaKJybZQU1rKReGkzM,5002
39
39
  glaip_sdk/cli/commands/agents/delete.py,sha256=WgNOr_JHqD8EF4jBU0vmUphIyAlbLHWbx68KuINxnz0,1684
40
40
  glaip_sdk/cli/commands/agents/get.py,sha256=vwYa2GIFgxGPTmNiIPv3EceJ2NI3S92e6qaAVrgJm48,2682
41
41
  glaip_sdk/cli/commands/agents/list.py,sha256=u4gGYYMLJZatKVtpIovcxqzU8caIyvZCuou1GzePcAo,4696
@@ -106,10 +106,10 @@ glaip_sdk/cli/transcript/viewer.py,sha256=Y4G40WR6v1g4TfxRbGSZqdrqhLcqBxoWkQgToQ
106
106
  glaip_sdk/client/__init__.py,sha256=s2REOumgE8Z8lA9dWJpwXqpgMdzSELSuCQkZ7sYngX0,381
107
107
  glaip_sdk/client/_schedule_payloads.py,sha256=9BXa75CCx3clsKgwmG9AWyvhPY6kVwzQtoLvTTw40CQ,2759
108
108
  glaip_sdk/client/agent_runs.py,sha256=tZSFEZZ3Yx0uYRgnwkLe-X0TlmgKJQ-ivzb6SrVnxY8,4862
109
- glaip_sdk/client/agents.py,sha256=kUNklI6QS39dgPFWMy1F0uw8En4rZ2fDiPW9B87jaVU,49724
110
- glaip_sdk/client/base.py,sha256=BhNaC2TJJ2jVWRTYmfxD3WjYgAyIuWNz9YURdNXXjJo,18245
109
+ glaip_sdk/client/agents.py,sha256=nnR9gSWBTLNxnifednnSIrJy734EdziAArZH7E7HNGg,58497
110
+ glaip_sdk/client/base.py,sha256=_LAAaCLLPGi2tpsGIpAJqcbEIUShnGLoB2hyWwcRMa8,19133
111
111
  glaip_sdk/client/hitl.py,sha256=dO_q-43miI0oGrJDyUrZ9MbettQp0hai4kjvPaYm010,3545
112
- glaip_sdk/client/main.py,sha256=FqN-JIoCTN1pV-3O-ElIbe8t_cWYUDV4S0N8W018De0,9362
112
+ glaip_sdk/client/main.py,sha256=QbFBA7tlX4znMCp860-gw23Fhv9GAabSeMRoxX2tavc,9184
113
113
  glaip_sdk/client/mcps.py,sha256=-JdaIkg0QE3egJ8p93eoOPULup8KbM2WRCcwlvqlqrA,14492
114
114
  glaip_sdk/client/run_rendering.py,sha256=BKe9a_KnL58XNcGlLvbhJAZBh57e8-ykYiqp0bbS4ZE,28860
115
115
  glaip_sdk/client/schedules.py,sha256=ZfPzCYzk4YRuPkjkTTgLe5Rqa07mi-h2WmP4H91mMZ0,14113
@@ -117,9 +117,9 @@ glaip_sdk/client/shared.py,sha256=esHlsR0LEfL-pFDaWebQjKKOLl09jsRY-2pllBUn4nU,52
117
117
  glaip_sdk/client/tools.py,sha256=NzQTIsn-bjYN9EfGWCBqqawCIVs7auaccFv7BM_3oCc,23871
118
118
  glaip_sdk/client/validators.py,sha256=ioF9VCs-LG2yLkaRDd7Hff74lojDZZ0_Q3CiLbdm1RY,8381
119
119
  glaip_sdk/client/payloads/agent/__init__.py,sha256=gItEH2zt2secVq6n60oGA-ztdE5mc0GLECn-QMX47ew,558
120
- glaip_sdk/client/payloads/agent/requests.py,sha256=5FuGEuypaEXlWBhB07JrDca_ecLg4bvo8mjyFBxAV9U,17139
120
+ glaip_sdk/client/payloads/agent/requests.py,sha256=zmyKtR9UuUNwGHzInBHqeurrfrUsshchFafe_5tiEX8,17375
121
121
  glaip_sdk/client/payloads/agent/responses.py,sha256=1eRMI4JAIGqTB5zY_7D9ILQDRHPXR06U7JqHSmRp3Qs,1243
122
- glaip_sdk/config/constants.py,sha256=Y03c6op0e7K0jTQ8bmWXhWAqsnjWxkAhWniq8Z0iEKY,1081
122
+ glaip_sdk/config/constants.py,sha256=AWxzOwy8QLv6wYSaOvv5xqAOb7ksgfMB2lkj0f0F1FM,1801
123
123
  glaip_sdk/guardrails/__init__.py,sha256=C1gpL2himmv0FfAsR1ywuvBkwXP54-ziPeqqdAo207k,2677
124
124
  glaip_sdk/guardrails/serializer.py,sha256=x4WDaGH-kmaPHnIJNi3aJjToYf4Ru_3mIh3yxSWO25U,2832
125
125
  glaip_sdk/hitl/__init__.py,sha256=hi_SwW1oBimNnSFPo9Yc-mZWVPzpytlnDWNq2h1_fPo,1572
@@ -129,11 +129,15 @@ glaip_sdk/hitl/local.py,sha256=7Qf-O62YcVXpOHdckm1-g4wwvHQCvwg4D1ikK-xwgqA,4642
129
129
  glaip_sdk/hitl/remote.py,sha256=cdO-wWwRGdyb0HYNMwIvHfvKwOqhqp-l7efnaC9b85M,18914
130
130
  glaip_sdk/mcps/__init__.py,sha256=4jYrt8K__oxrxexHRcmnRBXt-W_tbJN61H9Kf2lVh4Q,551
131
131
  glaip_sdk/mcps/base.py,sha256=jWwHjDF67_mtDGRp9p5SolANjVeB8jt1PSwPBtX876M,11654
132
- glaip_sdk/models/__init__.py,sha256=Yfy5CKe9xt3MkyoRIiZ4PYy19LbEfv3GXi2PgqXW7iU,2973
133
- glaip_sdk/models/agent.py,sha256=vtmUSDrrib1hvm0xnofIuOebqlrs-gIaLsny8hzg1iE,1523
132
+ glaip_sdk/models/__init__.py,sha256=UUMCfUE17l8XEGak2zMm0GIMIyJd2tXb_KdHL4wSFpo,3646
133
+ glaip_sdk/models/_provider_mappings.py,sha256=aHpFHzT4estAv4x_cjTibinHifM-btOg44jZjRBG97I,3045
134
+ glaip_sdk/models/_validation.py,sha256=URPDiDLmgKKW4AXQO4QjZlw7Bq27dVeRJkup0TB48qE,2882
135
+ glaip_sdk/models/agent.py,sha256=rZarI1268hh_XuM1AKjuX3YN9_b1z--8e9cFKx0KRlg,1524
134
136
  glaip_sdk/models/agent_runs.py,sha256=rK0fTpivukyiqIxrS86evgNtfEwV8Xecq_NeUakFUFw,3829
135
137
  glaip_sdk/models/common.py,sha256=O30MEGO2nKcGhKbnPNkoGzwNvDVUBjM-uU-Tpigaz5Y,1180
138
+ glaip_sdk/models/constants.py,sha256=dRO1IWgdhaDYwoKu5jGZmcEovPKvFeCjWHCE_VWg2Xk,4429
136
139
  glaip_sdk/models/mcp.py,sha256=ti_8MUf4k7qbR1gPs9JhqhybMcLUhZxEELtHQrTv2-U,944
140
+ glaip_sdk/models/model.py,sha256=l8VFKwOH-sjWh6looiDKGpAkIL535pK5rt9LC-TvqMY,5616
137
141
  glaip_sdk/models/schedule.py,sha256=gfL_b9abaWToMtnCD_iXOsmonQ1sq2dZoLcInvCzZ2o,7248
138
142
  glaip_sdk/models/tool.py,sha256=w3nL2DqyCtGgDPCd40Asi9obRGghQjLlC9Vt_p32Mpc,951
139
143
  glaip_sdk/payload_schemas/__init__.py,sha256=nTJmzwn2BbEpzZdq-8U24eVHQHxqYO3_-SABMV9lS_Q,142
@@ -147,7 +151,7 @@ glaip_sdk/registry/tool.py,sha256=c0Ja4rFYMOKs_1yjDLDZxCId4IjQzprwXzX0iIL8Fio,14
147
151
  glaip_sdk/runner/__init__.py,sha256=orJ3nLR9P-n1qMaAMWZ_xRS4368YnDpdltg-bX5BlUk,2210
148
152
  glaip_sdk/runner/base.py,sha256=KIjcSAyDCP9_mn2H4rXR5gu1FZlwD9pe0gkTBmr6Yi4,2663
149
153
  glaip_sdk/runner/deps.py,sha256=Du3hr2R5RHOYCRAv7RVmx661x-ayVXIeZ8JD7ODirTA,3884
150
- glaip_sdk/runner/langgraph.py,sha256=AcZPybe8Jxu1KfGQcVuHjy8X7OI36xpMBdAyjMsr9Rc,33070
154
+ glaip_sdk/runner/langgraph.py,sha256=sKF8JMMRicr9iiDNA8hIoZVfvfhjT_TMqlYfvW3yT6w,36379
151
155
  glaip_sdk/runner/logging_config.py,sha256=OrQgW23t42qQRqEXKH8U4bFg4JG5EEkUJTlbvtU65iE,2528
152
156
  glaip_sdk/runner/mcp_adapter/__init__.py,sha256=Rdttfg3N6kg3-DaTCKqaGXKByZyBt0Mwf6FV8s_5kI8,462
153
157
  glaip_sdk/runner/mcp_adapter/base_mcp_adapter.py,sha256=ic56fKgb3zgVZZQm3ClWUZi7pE1t4EVq8mOg6AM6hdA,1374
@@ -161,7 +165,7 @@ glaip_sdk/schedules/base.py,sha256=ZRKWknoxQOYMhX8mjQ7S7oqpy6Wr0xdbzcgIrycsEQ8,9
161
165
  glaip_sdk/tools/__init__.py,sha256=rhGzEqQFCzeMrxmikBuNrMz4PyYczwic28boDKVmoHs,585
162
166
  glaip_sdk/tools/base.py,sha256=KRaWWX5cKAvEKtBr4iSOaKQlQ973A4pNOW2KVvA1aYs,17353
163
167
  glaip_sdk/utils/__init__.py,sha256=5a1kNLtUriwd1qAT6RU083GOyABS7LMZQacDP4yS9S4,2830
164
- glaip_sdk/utils/agent_config.py,sha256=RhcHsSOVwOaSC2ggnPuHn36Aa0keGJhs8KGb2InvzRk,7262
168
+ glaip_sdk/utils/agent_config.py,sha256=T4YbLaNYq2HzlkXCmwEmErKoDtxu-2KKcmFvnhqAMhw,7484
165
169
  glaip_sdk/utils/bundler.py,sha256=fLumFj1MqqqGA1Mwn05v_cEKPALv3rIPEMvaURpxZ80,15171
166
170
  glaip_sdk/utils/client.py,sha256=otPUOIDvLCCsvFBNR8YMZFtRrORggmvvlFjl3YeeTqQ,3121
167
171
  glaip_sdk/utils/client_utils.py,sha256=hzHxxNuM37mK4HhgIdS0qg4AqjAA5ai2irPO6Nr1Uzo,15350
@@ -175,7 +179,7 @@ glaip_sdk/utils/import_resolver.py,sha256=X2qUV4_XmwStccGjnQ0YcxXAFyxZzwaKpfxjAW
175
179
  glaip_sdk/utils/instructions.py,sha256=MTk93lsq3I8aRnvnRMSXXNMzcpnaIM_Pm3Aiiiq3GBc,2997
176
180
  glaip_sdk/utils/resource_refs.py,sha256=vF34kyAtFBLnaKnQVrsr2st1JiSxVbIZ4yq0DelJvCI,5966
177
181
  glaip_sdk/utils/run_renderer.py,sha256=d_VMI6LbvHPUUeRmGqh5wK_lHqDEIAcym2iqpbtDad0,1365
178
- glaip_sdk/utils/runtime_config.py,sha256=Gl9-CQ4lYZ39vRSgtdfcSU3CXshVDDuTOdSzjvsCgG0,14070
182
+ glaip_sdk/utils/runtime_config.py,sha256=frbnCVCRVMNXiQODOBZtDSkbys18xayZzpkhJjlpJEs,14117
179
183
  glaip_sdk/utils/serialization.py,sha256=z-qpvWLSBrGK3wbUclcA1UIKLXJedTnMSwPdq-FF4lo,13308
180
184
  glaip_sdk/utils/sync.py,sha256=71egWp5qm_8tYpWZyGazvnP4NnyW16rcmzjGVicmQEE,6043
181
185
  glaip_sdk/utils/tool_detection.py,sha256=B7xze014TZyqWI4JqLhkZrbtT5h32CjQEXRswtdcljI,9808
@@ -212,8 +216,8 @@ glaip_sdk/utils/rendering/steps/format.py,sha256=Chnq7OBaj8XMeBntSBxrX5zSmrYeGcO
212
216
  glaip_sdk/utils/rendering/steps/manager.py,sha256=BiBmTeQMQhjRMykgICXsXNYh1hGsss-fH9BIGVMWFi0,13194
213
217
  glaip_sdk/utils/rendering/viewer/__init__.py,sha256=XrxmE2cMAozqrzo1jtDFm8HqNtvDcYi2mAhXLXn5CjI,457
214
218
  glaip_sdk/utils/rendering/viewer/presenter.py,sha256=mlLMTjnyeyPVtsyrAbz1BJu9lFGQSlS-voZ-_Cuugv0,5725
215
- glaip_sdk-0.7.13.dist-info/METADATA,sha256=tcKELknQg-32vMVt0GdHxK7cyIWpE-QpCKUFlTtcJeY,8528
216
- glaip_sdk-0.7.13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
217
- glaip_sdk-0.7.13.dist-info/entry_points.txt,sha256=NkhO6FfgX9Zrjn63GuKphf-dLw7KNJvucAcXc7P3aMk,54
218
- glaip_sdk-0.7.13.dist-info/top_level.txt,sha256=td7yXttiYX2s94-4wFhv-5KdT0rSZ-pnJRSire341hw,10
219
- glaip_sdk-0.7.13.dist-info/RECORD,,
219
+ glaip_sdk-0.7.14.dist-info/METADATA,sha256=zUdx8wiJbp1JiDNlntuItt5_Y1krwQRZDhpyEcnGcDo,8528
220
+ glaip_sdk-0.7.14.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
221
+ glaip_sdk-0.7.14.dist-info/entry_points.txt,sha256=NkhO6FfgX9Zrjn63GuKphf-dLw7KNJvucAcXc7P3aMk,54
222
+ glaip_sdk-0.7.14.dist-info/top_level.txt,sha256=td7yXttiYX2s94-4wFhv-5KdT0rSZ-pnJRSire341hw,10
223
+ glaip_sdk-0.7.14.dist-info/RECORD,,