agentex-sdk 0.1.0a6__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.
Files changed (289) hide show
  1. agentex/__init__.py +103 -0
  2. agentex/_base_client.py +1992 -0
  3. agentex/_client.py +506 -0
  4. agentex/_compat.py +219 -0
  5. agentex/_constants.py +14 -0
  6. agentex/_exceptions.py +108 -0
  7. agentex/_files.py +123 -0
  8. agentex/_models.py +829 -0
  9. agentex/_qs.py +150 -0
  10. agentex/_resource.py +43 -0
  11. agentex/_response.py +830 -0
  12. agentex/_streaming.py +333 -0
  13. agentex/_types.py +219 -0
  14. agentex/_utils/__init__.py +57 -0
  15. agentex/_utils/_logs.py +25 -0
  16. agentex/_utils/_proxy.py +65 -0
  17. agentex/_utils/_reflection.py +42 -0
  18. agentex/_utils/_resources_proxy.py +24 -0
  19. agentex/_utils/_streams.py +12 -0
  20. agentex/_utils/_sync.py +86 -0
  21. agentex/_utils/_transform.py +447 -0
  22. agentex/_utils/_typing.py +151 -0
  23. agentex/_utils/_utils.py +422 -0
  24. agentex/_version.py +4 -0
  25. agentex/lib/.keep +4 -0
  26. agentex/lib/__init__.py +0 -0
  27. agentex/lib/adk/__init__.py +41 -0
  28. agentex/lib/adk/_modules/__init__.py +0 -0
  29. agentex/lib/adk/_modules/acp.py +247 -0
  30. agentex/lib/adk/_modules/agent_task_tracker.py +176 -0
  31. agentex/lib/adk/_modules/agents.py +77 -0
  32. agentex/lib/adk/_modules/events.py +141 -0
  33. agentex/lib/adk/_modules/messages.py +285 -0
  34. agentex/lib/adk/_modules/state.py +291 -0
  35. agentex/lib/adk/_modules/streaming.py +75 -0
  36. agentex/lib/adk/_modules/tasks.py +124 -0
  37. agentex/lib/adk/_modules/tracing.py +194 -0
  38. agentex/lib/adk/providers/__init__.py +9 -0
  39. agentex/lib/adk/providers/_modules/__init__.py +0 -0
  40. agentex/lib/adk/providers/_modules/litellm.py +232 -0
  41. agentex/lib/adk/providers/_modules/openai.py +416 -0
  42. agentex/lib/adk/providers/_modules/sgp.py +85 -0
  43. agentex/lib/adk/utils/__init__.py +5 -0
  44. agentex/lib/adk/utils/_modules/__init__.py +0 -0
  45. agentex/lib/adk/utils/_modules/templating.py +94 -0
  46. agentex/lib/cli/__init__.py +0 -0
  47. agentex/lib/cli/commands/__init__.py +0 -0
  48. agentex/lib/cli/commands/agents.py +328 -0
  49. agentex/lib/cli/commands/init.py +227 -0
  50. agentex/lib/cli/commands/main.py +33 -0
  51. agentex/lib/cli/commands/secrets.py +169 -0
  52. agentex/lib/cli/commands/tasks.py +118 -0
  53. agentex/lib/cli/commands/uv.py +133 -0
  54. agentex/lib/cli/handlers/__init__.py +0 -0
  55. agentex/lib/cli/handlers/agent_handlers.py +160 -0
  56. agentex/lib/cli/handlers/cleanup_handlers.py +186 -0
  57. agentex/lib/cli/handlers/deploy_handlers.py +351 -0
  58. agentex/lib/cli/handlers/run_handlers.py +452 -0
  59. agentex/lib/cli/handlers/secret_handlers.py +670 -0
  60. agentex/lib/cli/templates/default/.dockerignore.j2 +43 -0
  61. agentex/lib/cli/templates/default/Dockerfile-uv.j2 +42 -0
  62. agentex/lib/cli/templates/default/Dockerfile.j2 +42 -0
  63. agentex/lib/cli/templates/default/README.md.j2 +193 -0
  64. agentex/lib/cli/templates/default/deploy/example.yaml.j2 +55 -0
  65. agentex/lib/cli/templates/default/manifest.yaml.j2 +116 -0
  66. agentex/lib/cli/templates/default/project/acp.py.j2 +29 -0
  67. agentex/lib/cli/templates/default/pyproject.toml.j2 +33 -0
  68. agentex/lib/cli/templates/default/requirements.txt.j2 +5 -0
  69. agentex/lib/cli/templates/deploy/Screenshot 2025-03-19 at 10.36.57/342/200/257AM.png +0 -0
  70. agentex/lib/cli/templates/deploy/example.yaml.j2 +55 -0
  71. agentex/lib/cli/templates/sync/.dockerignore.j2 +43 -0
  72. agentex/lib/cli/templates/sync/Dockerfile-uv.j2 +42 -0
  73. agentex/lib/cli/templates/sync/Dockerfile.j2 +42 -0
  74. agentex/lib/cli/templates/sync/README.md.j2 +293 -0
  75. agentex/lib/cli/templates/sync/deploy/example.yaml.j2 +55 -0
  76. agentex/lib/cli/templates/sync/manifest.yaml.j2 +116 -0
  77. agentex/lib/cli/templates/sync/project/acp.py.j2 +26 -0
  78. agentex/lib/cli/templates/sync/pyproject.toml.j2 +33 -0
  79. agentex/lib/cli/templates/sync/requirements.txt.j2 +5 -0
  80. agentex/lib/cli/templates/temporal/.dockerignore.j2 +43 -0
  81. agentex/lib/cli/templates/temporal/Dockerfile-uv.j2 +48 -0
  82. agentex/lib/cli/templates/temporal/Dockerfile.j2 +48 -0
  83. agentex/lib/cli/templates/temporal/README.md.j2 +316 -0
  84. agentex/lib/cli/templates/temporal/deploy/example.yaml.j2 +55 -0
  85. agentex/lib/cli/templates/temporal/manifest.yaml.j2 +137 -0
  86. agentex/lib/cli/templates/temporal/project/acp.py.j2 +30 -0
  87. agentex/lib/cli/templates/temporal/project/run_worker.py.j2 +33 -0
  88. agentex/lib/cli/templates/temporal/project/workflow.py.j2 +66 -0
  89. agentex/lib/cli/templates/temporal/pyproject.toml.j2 +34 -0
  90. agentex/lib/cli/templates/temporal/requirements.txt.j2 +5 -0
  91. agentex/lib/cli/utils/cli_utils.py +14 -0
  92. agentex/lib/cli/utils/credential_utils.py +103 -0
  93. agentex/lib/cli/utils/exceptions.py +6 -0
  94. agentex/lib/cli/utils/kubectl_utils.py +135 -0
  95. agentex/lib/cli/utils/kubernetes_secrets_utils.py +185 -0
  96. agentex/lib/core/__init__.py +0 -0
  97. agentex/lib/core/adapters/__init__.py +0 -0
  98. agentex/lib/core/adapters/llm/__init__.py +1 -0
  99. agentex/lib/core/adapters/llm/adapter_litellm.py +46 -0
  100. agentex/lib/core/adapters/llm/adapter_sgp.py +55 -0
  101. agentex/lib/core/adapters/llm/port.py +24 -0
  102. agentex/lib/core/adapters/streams/adapter_redis.py +128 -0
  103. agentex/lib/core/adapters/streams/port.py +50 -0
  104. agentex/lib/core/clients/__init__.py +1 -0
  105. agentex/lib/core/clients/temporal/__init__.py +0 -0
  106. agentex/lib/core/clients/temporal/temporal_client.py +181 -0
  107. agentex/lib/core/clients/temporal/types.py +47 -0
  108. agentex/lib/core/clients/temporal/utils.py +56 -0
  109. agentex/lib/core/services/__init__.py +0 -0
  110. agentex/lib/core/services/adk/__init__.py +0 -0
  111. agentex/lib/core/services/adk/acp/__init__.py +0 -0
  112. agentex/lib/core/services/adk/acp/acp.py +210 -0
  113. agentex/lib/core/services/adk/agent_task_tracker.py +85 -0
  114. agentex/lib/core/services/adk/agents.py +43 -0
  115. agentex/lib/core/services/adk/events.py +61 -0
  116. agentex/lib/core/services/adk/messages.py +164 -0
  117. agentex/lib/core/services/adk/providers/__init__.py +0 -0
  118. agentex/lib/core/services/adk/providers/litellm.py +256 -0
  119. agentex/lib/core/services/adk/providers/openai.py +723 -0
  120. agentex/lib/core/services/adk/providers/sgp.py +99 -0
  121. agentex/lib/core/services/adk/state.py +120 -0
  122. agentex/lib/core/services/adk/streaming.py +262 -0
  123. agentex/lib/core/services/adk/tasks.py +69 -0
  124. agentex/lib/core/services/adk/tracing.py +36 -0
  125. agentex/lib/core/services/adk/utils/__init__.py +0 -0
  126. agentex/lib/core/services/adk/utils/templating.py +58 -0
  127. agentex/lib/core/temporal/__init__.py +0 -0
  128. agentex/lib/core/temporal/activities/__init__.py +207 -0
  129. agentex/lib/core/temporal/activities/activity_helpers.py +37 -0
  130. agentex/lib/core/temporal/activities/adk/__init__.py +0 -0
  131. agentex/lib/core/temporal/activities/adk/acp/__init__.py +0 -0
  132. agentex/lib/core/temporal/activities/adk/acp/acp_activities.py +86 -0
  133. agentex/lib/core/temporal/activities/adk/agent_task_tracker_activities.py +76 -0
  134. agentex/lib/core/temporal/activities/adk/agents_activities.py +35 -0
  135. agentex/lib/core/temporal/activities/adk/events_activities.py +50 -0
  136. agentex/lib/core/temporal/activities/adk/messages_activities.py +94 -0
  137. agentex/lib/core/temporal/activities/adk/providers/__init__.py +0 -0
  138. agentex/lib/core/temporal/activities/adk/providers/litellm_activities.py +71 -0
  139. agentex/lib/core/temporal/activities/adk/providers/openai_activities.py +210 -0
  140. agentex/lib/core/temporal/activities/adk/providers/sgp_activities.py +42 -0
  141. agentex/lib/core/temporal/activities/adk/state_activities.py +85 -0
  142. agentex/lib/core/temporal/activities/adk/streaming_activities.py +33 -0
  143. agentex/lib/core/temporal/activities/adk/tasks_activities.py +48 -0
  144. agentex/lib/core/temporal/activities/adk/tracing_activities.py +55 -0
  145. agentex/lib/core/temporal/activities/adk/utils/__init__.py +0 -0
  146. agentex/lib/core/temporal/activities/adk/utils/templating_activities.py +41 -0
  147. agentex/lib/core/temporal/services/__init__.py +0 -0
  148. agentex/lib/core/temporal/services/temporal_task_service.py +69 -0
  149. agentex/lib/core/temporal/types/__init__.py +0 -0
  150. agentex/lib/core/temporal/types/workflow.py +5 -0
  151. agentex/lib/core/temporal/workers/__init__.py +0 -0
  152. agentex/lib/core/temporal/workers/worker.py +162 -0
  153. agentex/lib/core/temporal/workflows/workflow.py +26 -0
  154. agentex/lib/core/tracing/__init__.py +5 -0
  155. agentex/lib/core/tracing/processors/agentex_tracing_processor.py +117 -0
  156. agentex/lib/core/tracing/processors/sgp_tracing_processor.py +119 -0
  157. agentex/lib/core/tracing/processors/tracing_processor_interface.py +40 -0
  158. agentex/lib/core/tracing/trace.py +311 -0
  159. agentex/lib/core/tracing/tracer.py +70 -0
  160. agentex/lib/core/tracing/tracing_processor_manager.py +62 -0
  161. agentex/lib/environment_variables.py +87 -0
  162. agentex/lib/py.typed +0 -0
  163. agentex/lib/sdk/__init__.py +0 -0
  164. agentex/lib/sdk/config/__init__.py +0 -0
  165. agentex/lib/sdk/config/agent_config.py +61 -0
  166. agentex/lib/sdk/config/agent_manifest.py +219 -0
  167. agentex/lib/sdk/config/build_config.py +35 -0
  168. agentex/lib/sdk/config/deployment_config.py +117 -0
  169. agentex/lib/sdk/config/local_development_config.py +56 -0
  170. agentex/lib/sdk/config/project_config.py +103 -0
  171. agentex/lib/sdk/fastacp/__init__.py +3 -0
  172. agentex/lib/sdk/fastacp/base/base_acp_server.py +406 -0
  173. agentex/lib/sdk/fastacp/fastacp.py +74 -0
  174. agentex/lib/sdk/fastacp/impl/agentic_base_acp.py +72 -0
  175. agentex/lib/sdk/fastacp/impl/sync_acp.py +109 -0
  176. agentex/lib/sdk/fastacp/impl/temporal_acp.py +97 -0
  177. agentex/lib/sdk/fastacp/tests/README.md +297 -0
  178. agentex/lib/sdk/fastacp/tests/conftest.py +307 -0
  179. agentex/lib/sdk/fastacp/tests/pytest.ini +10 -0
  180. agentex/lib/sdk/fastacp/tests/run_tests.py +227 -0
  181. agentex/lib/sdk/fastacp/tests/test_base_acp_server.py +450 -0
  182. agentex/lib/sdk/fastacp/tests/test_fastacp_factory.py +344 -0
  183. agentex/lib/sdk/fastacp/tests/test_integration.py +477 -0
  184. agentex/lib/sdk/state_machine/__init__.py +6 -0
  185. agentex/lib/sdk/state_machine/noop_workflow.py +21 -0
  186. agentex/lib/sdk/state_machine/state.py +10 -0
  187. agentex/lib/sdk/state_machine/state_machine.py +189 -0
  188. agentex/lib/sdk/state_machine/state_workflow.py +16 -0
  189. agentex/lib/sdk/utils/__init__.py +0 -0
  190. agentex/lib/sdk/utils/messages.py +223 -0
  191. agentex/lib/types/__init__.py +0 -0
  192. agentex/lib/types/acp.py +94 -0
  193. agentex/lib/types/agent_configs.py +79 -0
  194. agentex/lib/types/agent_results.py +29 -0
  195. agentex/lib/types/credentials.py +34 -0
  196. agentex/lib/types/fastacp.py +61 -0
  197. agentex/lib/types/files.py +13 -0
  198. agentex/lib/types/json_rpc.py +49 -0
  199. agentex/lib/types/llm_messages.py +354 -0
  200. agentex/lib/types/task_message_updates.py +171 -0
  201. agentex/lib/types/tracing.py +34 -0
  202. agentex/lib/utils/__init__.py +0 -0
  203. agentex/lib/utils/completions.py +131 -0
  204. agentex/lib/utils/console.py +14 -0
  205. agentex/lib/utils/io.py +29 -0
  206. agentex/lib/utils/iterables.py +14 -0
  207. agentex/lib/utils/json_schema.py +23 -0
  208. agentex/lib/utils/logging.py +31 -0
  209. agentex/lib/utils/mcp.py +17 -0
  210. agentex/lib/utils/model_utils.py +46 -0
  211. agentex/lib/utils/parsing.py +15 -0
  212. agentex/lib/utils/regex.py +6 -0
  213. agentex/lib/utils/temporal.py +13 -0
  214. agentex/py.typed +0 -0
  215. agentex/resources/__init__.py +103 -0
  216. agentex/resources/agents.py +707 -0
  217. agentex/resources/events.py +294 -0
  218. agentex/resources/messages/__init__.py +33 -0
  219. agentex/resources/messages/batch.py +271 -0
  220. agentex/resources/messages/messages.py +492 -0
  221. agentex/resources/spans.py +557 -0
  222. agentex/resources/states.py +544 -0
  223. agentex/resources/tasks.py +615 -0
  224. agentex/resources/tracker.py +384 -0
  225. agentex/types/__init__.py +56 -0
  226. agentex/types/acp_type.py +7 -0
  227. agentex/types/agent.py +29 -0
  228. agentex/types/agent_list_params.py +13 -0
  229. agentex/types/agent_list_response.py +10 -0
  230. agentex/types/agent_rpc_by_name_params.py +21 -0
  231. agentex/types/agent_rpc_params.py +51 -0
  232. agentex/types/agent_rpc_params1.py +21 -0
  233. agentex/types/agent_rpc_response.py +20 -0
  234. agentex/types/agent_rpc_result.py +90 -0
  235. agentex/types/agent_task_tracker.py +34 -0
  236. agentex/types/data_content.py +30 -0
  237. agentex/types/data_content_param.py +31 -0
  238. agentex/types/data_delta.py +14 -0
  239. agentex/types/event.py +29 -0
  240. agentex/types/event_list_params.py +22 -0
  241. agentex/types/event_list_response.py +10 -0
  242. agentex/types/message_author.py +7 -0
  243. agentex/types/message_create_params.py +18 -0
  244. agentex/types/message_list_params.py +14 -0
  245. agentex/types/message_list_response.py +10 -0
  246. agentex/types/message_style.py +7 -0
  247. agentex/types/message_update_params.py +18 -0
  248. agentex/types/messages/__init__.py +8 -0
  249. agentex/types/messages/batch_create_params.py +16 -0
  250. agentex/types/messages/batch_create_response.py +10 -0
  251. agentex/types/messages/batch_update_params.py +16 -0
  252. agentex/types/messages/batch_update_response.py +10 -0
  253. agentex/types/shared/__init__.py +3 -0
  254. agentex/types/shared/task_message_update.py +83 -0
  255. agentex/types/span.py +36 -0
  256. agentex/types/span_create_params.py +40 -0
  257. agentex/types/span_list_params.py +12 -0
  258. agentex/types/span_list_response.py +10 -0
  259. agentex/types/span_update_params.py +37 -0
  260. agentex/types/state.py +25 -0
  261. agentex/types/state_create_params.py +16 -0
  262. agentex/types/state_list_params.py +16 -0
  263. agentex/types/state_list_response.py +10 -0
  264. agentex/types/state_update_params.py +16 -0
  265. agentex/types/task.py +23 -0
  266. agentex/types/task_delete_by_name_response.py +8 -0
  267. agentex/types/task_delete_response.py +8 -0
  268. agentex/types/task_list_response.py +10 -0
  269. agentex/types/task_message.py +33 -0
  270. agentex/types/task_message_content.py +16 -0
  271. agentex/types/task_message_content_param.py +17 -0
  272. agentex/types/task_message_delta.py +16 -0
  273. agentex/types/text_content.py +53 -0
  274. agentex/types/text_content_param.py +54 -0
  275. agentex/types/text_delta.py +14 -0
  276. agentex/types/tool_request_content.py +36 -0
  277. agentex/types/tool_request_content_param.py +37 -0
  278. agentex/types/tool_request_delta.py +18 -0
  279. agentex/types/tool_response_content.py +36 -0
  280. agentex/types/tool_response_content_param.py +36 -0
  281. agentex/types/tool_response_delta.py +18 -0
  282. agentex/types/tracker_list_params.py +16 -0
  283. agentex/types/tracker_list_response.py +10 -0
  284. agentex/types/tracker_update_params.py +19 -0
  285. agentex_sdk-0.1.0a6.dist-info/METADATA +426 -0
  286. agentex_sdk-0.1.0a6.dist-info/RECORD +289 -0
  287. agentex_sdk-0.1.0a6.dist-info/WHEEL +4 -0
  288. agentex_sdk-0.1.0a6.dist-info/entry_points.txt +2 -0
  289. agentex_sdk-0.1.0a6.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,90 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Union, Optional
4
+ from typing_extensions import Literal, TypeAlias
5
+
6
+ from .task import Task
7
+ from .event import Event
8
+ from .._models import BaseModel
9
+ from .task_message import TaskMessage
10
+ from .task_message_delta import TaskMessageDelta
11
+ from .task_message_content import TaskMessageContent
12
+
13
+ __all__ = [
14
+ "AgentRpcResult",
15
+ "StreamTaskMessageStart",
16
+ "StreamTaskMessageDelta",
17
+ "StreamTaskMessageFull",
18
+ "StreamTaskMessageDone",
19
+ ]
20
+
21
+
22
+ class StreamTaskMessageStart(BaseModel):
23
+ content: TaskMessageContent
24
+
25
+ index: Optional[int] = None
26
+
27
+ parent_task_message: Optional[TaskMessage] = None
28
+ """Represents a message in the agent system.
29
+
30
+ This entity is used to store messages in MongoDB, with each message associated
31
+ with a specific task.
32
+ """
33
+
34
+ type: Optional[Literal["start"]] = None
35
+
36
+
37
+ class StreamTaskMessageDelta(BaseModel):
38
+ delta: Optional[TaskMessageDelta] = None
39
+ """Delta for text updates"""
40
+
41
+ index: Optional[int] = None
42
+
43
+ parent_task_message: Optional[TaskMessage] = None
44
+ """Represents a message in the agent system.
45
+
46
+ This entity is used to store messages in MongoDB, with each message associated
47
+ with a specific task.
48
+ """
49
+
50
+ type: Optional[Literal["delta"]] = None
51
+
52
+
53
+ class StreamTaskMessageFull(BaseModel):
54
+ content: TaskMessageContent
55
+
56
+ index: Optional[int] = None
57
+
58
+ parent_task_message: Optional[TaskMessage] = None
59
+ """Represents a message in the agent system.
60
+
61
+ This entity is used to store messages in MongoDB, with each message associated
62
+ with a specific task.
63
+ """
64
+
65
+ type: Optional[Literal["full"]] = None
66
+
67
+
68
+ class StreamTaskMessageDone(BaseModel):
69
+ index: Optional[int] = None
70
+
71
+ parent_task_message: Optional[TaskMessage] = None
72
+ """Represents a message in the agent system.
73
+
74
+ This entity is used to store messages in MongoDB, with each message associated
75
+ with a specific task.
76
+ """
77
+
78
+ type: Optional[Literal["done"]] = None
79
+
80
+
81
+ AgentRpcResult: TypeAlias = Union[
82
+ List[TaskMessage],
83
+ StreamTaskMessageStart,
84
+ StreamTaskMessageDelta,
85
+ StreamTaskMessageFull,
86
+ StreamTaskMessageDone,
87
+ Task,
88
+ Event,
89
+ None,
90
+ ]
@@ -0,0 +1,34 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+
8
+ __all__ = ["AgentTaskTracker"]
9
+
10
+
11
+ class AgentTaskTracker(BaseModel):
12
+ id: str
13
+ """The UUID of the agent task tracker"""
14
+
15
+ agent_id: str
16
+ """The UUID of the agent"""
17
+
18
+ created_at: datetime
19
+ """When the agent task tracker was created"""
20
+
21
+ task_id: str
22
+ """The UUID of the task"""
23
+
24
+ last_processed_event_id: Optional[str] = None
25
+ """The last processed event ID"""
26
+
27
+ status: Optional[str] = None
28
+ """Processing status"""
29
+
30
+ status_reason: Optional[str] = None
31
+ """Optional status reason"""
32
+
33
+ updated_at: Optional[datetime] = None
34
+ """When the agent task tracker was last updated"""
@@ -0,0 +1,30 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from .._models import BaseModel
7
+ from .message_style import MessageStyle
8
+ from .message_author import MessageAuthor
9
+
10
+ __all__ = ["DataContent"]
11
+
12
+
13
+ class DataContent(BaseModel):
14
+ author: MessageAuthor
15
+ """
16
+ The role of the messages author, in this case `system`, `user`, `assistant`, or
17
+ `tool`.
18
+ """
19
+
20
+ data: Dict[str, object]
21
+ """The contents of the data message."""
22
+
23
+ style: MessageStyle = "static"
24
+ """The style of the message.
25
+
26
+ This is used by the client to determine how to display the message.
27
+ """
28
+
29
+ type: Literal["data"] = "data"
30
+ """The type of the message, in this case `data`."""
@@ -0,0 +1,31 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from .message_style import MessageStyle
9
+ from .message_author import MessageAuthor
10
+
11
+ __all__ = ["DataContentParam"]
12
+
13
+
14
+ class DataContentParam(TypedDict, total=False):
15
+ author: Required[MessageAuthor]
16
+ """
17
+ The role of the messages author, in this case `system`, `user`, `assistant`, or
18
+ `tool`.
19
+ """
20
+
21
+ data: Required[Dict[str, object]]
22
+ """The contents of the data message."""
23
+
24
+ style: MessageStyle
25
+ """The style of the message.
26
+
27
+ This is used by the client to determine how to display the message.
28
+ """
29
+
30
+ type: Literal["data"]
31
+ """The type of the message, in this case `data`."""
@@ -0,0 +1,14 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from .._models import BaseModel
7
+
8
+ __all__ = ["DataDelta"]
9
+
10
+
11
+ class DataDelta(BaseModel):
12
+ data_delta: Optional[str] = None
13
+
14
+ type: Optional[Literal["data"]] = None
agentex/types/event.py ADDED
@@ -0,0 +1,29 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+ from .task_message_content import TaskMessageContent
8
+
9
+ __all__ = ["Event"]
10
+
11
+
12
+ class Event(BaseModel):
13
+ id: str
14
+ """The UUID of the event"""
15
+
16
+ agent_id: str
17
+ """The UUID of the agent that the event belongs to"""
18
+
19
+ sequence_id: int
20
+ """The sequence ID of the event"""
21
+
22
+ task_id: str
23
+ """The UUID of the task that the event belongs to"""
24
+
25
+ content: Optional[TaskMessageContent] = None
26
+ """The content of the event"""
27
+
28
+ created_at: Optional[datetime] = None
29
+ """The timestamp of the event"""
@@ -0,0 +1,22 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ __all__ = ["EventListParams"]
9
+
10
+
11
+ class EventListParams(TypedDict, total=False):
12
+ agent_id: Required[str]
13
+ """The agent ID to filter events by"""
14
+
15
+ task_id: Required[str]
16
+ """The task ID to filter events by"""
17
+
18
+ last_processed_event_id: Optional[str]
19
+ """Optional event ID to get events after this ID"""
20
+
21
+ limit: Optional[int]
22
+ """Optional limit on number of results"""
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .event import Event
7
+
8
+ __all__ = ["EventListResponse"]
9
+
10
+ EventListResponse: TypeAlias = List[Event]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["MessageAuthor"]
6
+
7
+ MessageAuthor: TypeAlias = Literal["user", "agent"]
@@ -0,0 +1,18 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from .task_message_content_param import TaskMessageContentParam
9
+
10
+ __all__ = ["MessageCreateParams"]
11
+
12
+
13
+ class MessageCreateParams(TypedDict, total=False):
14
+ content: Required[TaskMessageContentParam]
15
+
16
+ task_id: Required[str]
17
+
18
+ streaming_status: Optional[Literal["IN_PROGRESS", "DONE"]]
@@ -0,0 +1,14 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ __all__ = ["MessageListParams"]
9
+
10
+
11
+ class MessageListParams(TypedDict, total=False):
12
+ task_id: Required[str]
13
+
14
+ limit: Optional[int]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .task_message import TaskMessage
7
+
8
+ __all__ = ["MessageListResponse"]
9
+
10
+ MessageListResponse: TypeAlias = List[TaskMessage]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["MessageStyle"]
6
+
7
+ MessageStyle: TypeAlias = Literal["static", "active"]
@@ -0,0 +1,18 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from .task_message_content_param import TaskMessageContentParam
9
+
10
+ __all__ = ["MessageUpdateParams"]
11
+
12
+
13
+ class MessageUpdateParams(TypedDict, total=False):
14
+ content: Required[TaskMessageContentParam]
15
+
16
+ task_id: Required[str]
17
+
18
+ streaming_status: Optional[Literal["IN_PROGRESS", "DONE"]]
@@ -0,0 +1,8 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .batch_create_params import BatchCreateParams as BatchCreateParams
6
+ from .batch_update_params import BatchUpdateParams as BatchUpdateParams
7
+ from .batch_create_response import BatchCreateResponse as BatchCreateResponse
8
+ from .batch_update_response import BatchUpdateResponse as BatchUpdateResponse
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Iterable
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ from ..task_message_content_param import TaskMessageContentParam
9
+
10
+ __all__ = ["BatchCreateParams"]
11
+
12
+
13
+ class BatchCreateParams(TypedDict, total=False):
14
+ contents: Required[Iterable[TaskMessageContentParam]]
15
+
16
+ task_id: Required[str]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from ..task_message import TaskMessage
7
+
8
+ __all__ = ["BatchCreateResponse"]
9
+
10
+ BatchCreateResponse: TypeAlias = List[TaskMessage]
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ from ..task_message_content_param import TaskMessageContentParam
9
+
10
+ __all__ = ["BatchUpdateParams"]
11
+
12
+
13
+ class BatchUpdateParams(TypedDict, total=False):
14
+ task_id: Required[str]
15
+
16
+ updates: Required[Dict[str, TaskMessageContentParam]]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from ..task_message import TaskMessage
7
+
8
+ __all__ = ["BatchUpdateResponse"]
9
+
10
+ BatchUpdateResponse: TypeAlias = List[TaskMessage]
@@ -0,0 +1,3 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .task_message_update import TaskMessageUpdate as TaskMessageUpdate
@@ -0,0 +1,83 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Union, Optional
4
+ from typing_extensions import Literal, Annotated, TypeAlias
5
+
6
+ from ..._utils import PropertyInfo
7
+ from ..._models import BaseModel
8
+ from ..task_message import TaskMessage
9
+ from ..task_message_delta import TaskMessageDelta
10
+ from ..task_message_content import TaskMessageContent
11
+
12
+ __all__ = [
13
+ "TaskMessageUpdate",
14
+ "StreamTaskMessageStart",
15
+ "StreamTaskMessageDelta",
16
+ "StreamTaskMessageFull",
17
+ "StreamTaskMessageDone",
18
+ ]
19
+
20
+
21
+ class StreamTaskMessageStart(BaseModel):
22
+ content: TaskMessageContent
23
+
24
+ index: Optional[int] = None
25
+
26
+ parent_task_message: Optional[TaskMessage] = None
27
+ """Represents a message in the agent system.
28
+
29
+ This entity is used to store messages in MongoDB, with each message associated
30
+ with a specific task.
31
+ """
32
+
33
+ type: Optional[Literal["start"]] = None
34
+
35
+
36
+ class StreamTaskMessageDelta(BaseModel):
37
+ delta: Optional[TaskMessageDelta] = None
38
+ """Delta for text updates"""
39
+
40
+ index: Optional[int] = None
41
+
42
+ parent_task_message: Optional[TaskMessage] = None
43
+ """Represents a message in the agent system.
44
+
45
+ This entity is used to store messages in MongoDB, with each message associated
46
+ with a specific task.
47
+ """
48
+
49
+ type: Optional[Literal["delta"]] = None
50
+
51
+
52
+ class StreamTaskMessageFull(BaseModel):
53
+ content: TaskMessageContent
54
+
55
+ index: Optional[int] = None
56
+
57
+ parent_task_message: Optional[TaskMessage] = None
58
+ """Represents a message in the agent system.
59
+
60
+ This entity is used to store messages in MongoDB, with each message associated
61
+ with a specific task.
62
+ """
63
+
64
+ type: Optional[Literal["full"]] = None
65
+
66
+
67
+ class StreamTaskMessageDone(BaseModel):
68
+ index: Optional[int] = None
69
+
70
+ parent_task_message: Optional[TaskMessage] = None
71
+ """Represents a message in the agent system.
72
+
73
+ This entity is used to store messages in MongoDB, with each message associated
74
+ with a specific task.
75
+ """
76
+
77
+ type: Optional[Literal["done"]] = None
78
+
79
+
80
+ TaskMessageUpdate: TypeAlias = Annotated[
81
+ Union[StreamTaskMessageStart, StreamTaskMessageDelta, StreamTaskMessageFull, StreamTaskMessageDone],
82
+ PropertyInfo(discriminator="type"),
83
+ ]
agentex/types/span.py ADDED
@@ -0,0 +1,36 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, List, Union, Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+
8
+ __all__ = ["Span"]
9
+
10
+
11
+ class Span(BaseModel):
12
+ id: str
13
+
14
+ name: str
15
+ """Name that describes what operation this span represents"""
16
+
17
+ start_time: datetime
18
+ """The time the span started"""
19
+
20
+ trace_id: str
21
+ """Unique identifier for the trace this span belongs to"""
22
+
23
+ data: Union[Dict[str, object], List[Dict[str, object]], None] = None
24
+ """Any additional metadata or context for the span"""
25
+
26
+ end_time: Optional[datetime] = None
27
+ """The time the span ended"""
28
+
29
+ input: Union[Dict[str, object], List[Dict[str, object]], None] = None
30
+ """Input parameters or data for the operation"""
31
+
32
+ output: Union[Dict[str, object], List[Dict[str, object]], None] = None
33
+ """Output data resulting from the operation"""
34
+
35
+ parent_id: Optional[str] = None
36
+ """ID of the parent span if this is a child span in a trace"""
@@ -0,0 +1,40 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict, Union, Iterable, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+
11
+ __all__ = ["SpanCreateParams"]
12
+
13
+
14
+ class SpanCreateParams(TypedDict, total=False):
15
+ name: Required[str]
16
+ """Name that describes what operation this span represents"""
17
+
18
+ start_time: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
19
+ """The time the span started"""
20
+
21
+ trace_id: Required[str]
22
+ """Unique identifier for the trace this span belongs to"""
23
+
24
+ id: Optional[str]
25
+ """Unique identifier for the span. If not provided, an ID will be generated."""
26
+
27
+ data: Union[Dict[str, object], Iterable[Dict[str, object]], None]
28
+ """Any additional metadata or context for the span"""
29
+
30
+ end_time: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
31
+ """The time the span ended"""
32
+
33
+ input: Union[Dict[str, object], Iterable[Dict[str, object]], None]
34
+ """Input parameters or data for the operation"""
35
+
36
+ output: Union[Dict[str, object], Iterable[Dict[str, object]], None]
37
+ """Output data resulting from the operation"""
38
+
39
+ parent_id: Optional[str]
40
+ """ID of the parent span if this is a child span in a trace"""
@@ -0,0 +1,12 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ __all__ = ["SpanListParams"]
9
+
10
+
11
+ class SpanListParams(TypedDict, total=False):
12
+ trace_id: Optional[str]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .span import Span
7
+
8
+ __all__ = ["SpanListResponse"]
9
+
10
+ SpanListResponse: TypeAlias = List[Span]
@@ -0,0 +1,37 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict, Union, Iterable, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+
11
+ __all__ = ["SpanUpdateParams"]
12
+
13
+
14
+ class SpanUpdateParams(TypedDict, total=False):
15
+ data: Union[Dict[str, object], Iterable[Dict[str, object]], None]
16
+ """Any additional metadata or context for the span"""
17
+
18
+ end_time: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
19
+ """The time the span ended"""
20
+
21
+ input: Union[Dict[str, object], Iterable[Dict[str, object]], None]
22
+ """Input parameters or data for the operation"""
23
+
24
+ name: Optional[str]
25
+ """Name that describes what operation this span represents"""
26
+
27
+ output: Union[Dict[str, object], Iterable[Dict[str, object]], None]
28
+ """Output data resulting from the operation"""
29
+
30
+ parent_id: Optional[str]
31
+ """ID of the parent span if this is a child span in a trace"""
32
+
33
+ start_time: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
34
+ """The time the span started"""
35
+
36
+ trace_id: Optional[str]
37
+ """Unique identifier for the trace this span belongs to"""
agentex/types/state.py ADDED
@@ -0,0 +1,25 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+
8
+ __all__ = ["State"]
9
+
10
+
11
+ class State(BaseModel):
12
+ id: str
13
+ """The task state's unique id"""
14
+
15
+ agent_id: str
16
+
17
+ created_at: datetime
18
+ """The timestamp when the state was created"""
19
+
20
+ state: Dict[str, object]
21
+
22
+ task_id: str
23
+
24
+ updated_at: Optional[datetime] = None
25
+ """The timestamp when the state was last updated"""