meshagent-api 0.43.3__tar.gz → 0.44.0__tar.gz

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 (66) hide show
  1. {meshagent_api-0.43.3/meshagent_api.egg-info → meshagent_api-0.44.0}/PKG-INFO +1 -1
  2. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/__init__.py +2 -0
  3. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/room_server_client.py +12 -0
  4. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/room_server_client_test.py +3 -0
  5. meshagent_api-0.44.0/meshagent/api/version.py +1 -0
  6. {meshagent_api-0.43.3 → meshagent_api-0.44.0/meshagent_api.egg-info}/PKG-INFO +1 -1
  7. meshagent_api-0.43.3/meshagent/api/version.py +0 -1
  8. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/LICENSE +0 -0
  9. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/MANIFEST.in +0 -0
  10. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/README.md +0 -0
  11. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/agent_content.py +0 -0
  12. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/aiohttp_redaction.py +0 -0
  13. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/chan.py +0 -0
  14. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/client.py +0 -0
  15. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/client_test.py +0 -0
  16. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/crdt.py +0 -0
  17. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/dataset_schema.py +0 -0
  18. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/entrypoint.js +0 -0
  19. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/error_codes.py +0 -0
  20. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/helpers.py +0 -0
  21. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/http.py +0 -0
  22. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/image_runtime.py +0 -0
  23. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/keys.py +0 -0
  24. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/managed_agents.py +0 -0
  25. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/managed_agents_test.py +0 -0
  26. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/messaging.py +0 -0
  27. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/messaging_test.py +0 -0
  28. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/oauth.py +0 -0
  29. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/oauth_scopes.py +0 -0
  30. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/oauth_scopes_test.py +0 -0
  31. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/participant.py +0 -0
  32. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/participant_token.py +0 -0
  33. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/participant_token_test.py +0 -0
  34. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/port_forward.py +0 -0
  35. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/port_forward_test.py +0 -0
  36. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/protocol.py +0 -0
  37. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/protocol_test.py +0 -0
  38. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/py.typed +0 -0
  39. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/reasoning_schema.py +0 -0
  40. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/registry_auth.py +0 -0
  41. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/room_ports.py +0 -0
  42. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/runtime.py +0 -0
  43. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/runtime_test.py +0 -0
  44. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema.py +0 -0
  45. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema_document.py +0 -0
  46. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema_document_test.py +0 -0
  47. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema_registry.py +0 -0
  48. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema_test.py +0 -0
  49. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/schema_util.py +0 -0
  50. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/service_spec_test.py +0 -0
  51. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/service_template_test.py +0 -0
  52. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/services.py +0 -0
  53. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/specs/service.py +0 -0
  54. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/sql.py +0 -0
  55. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/sql_test.py +0 -0
  56. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/token_test.py +0 -0
  57. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/urls.py +0 -0
  58. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/webhooks.py +0 -0
  59. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/websocket_protocol.py +0 -0
  60. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent/api/websocket_protocol_test.py +0 -0
  61. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent_api.egg-info/SOURCES.txt +0 -0
  62. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent_api.egg-info/dependency_links.txt +0 -0
  63. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent_api.egg-info/requires.txt +0 -0
  64. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/meshagent_api.egg-info/top_level.txt +0 -0
  65. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/pyproject.toml +0 -0
  66. {meshagent_api-0.43.3 → meshagent_api-0.44.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshagent-api
3
- Version: 0.43.3
3
+ Version: 0.44.0
4
4
  Summary: Python Server API for Meshagent
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: Documentation, https://docs.meshagent.com
@@ -12,6 +12,7 @@ from .room_server_client import (
12
12
  DatasetOptimizeConfig,
13
13
  DatasetOptimizeResult,
14
14
  DatasetTableStats,
15
+ TOOL_SEARCH_ANNOTATION,
15
16
  RequiredToolkit,
16
17
  RequiredSchema,
17
18
  RequiredTable,
@@ -121,6 +122,7 @@ __all__ = [
121
122
  DatasetOptimizeConfig,
122
123
  DatasetOptimizeResult,
123
124
  DatasetTableStats,
125
+ TOOL_SEARCH_ANNOTATION,
124
126
  WebSocketClientProtocol,
125
127
  RequiredToolkit,
126
128
  RequiredSchema,
@@ -162,6 +162,8 @@ type DatasetJsonValue = (
162
162
  DatasetJsonScalarValue | list["DatasetJsonValue"] | dict[str, "DatasetJsonValue"]
163
163
  )
164
164
 
165
+ TOOL_SEARCH_ANNOTATION = "meshagent.tool_search"
166
+
165
167
 
166
168
  def _normalize_dataset_json_value(
167
169
  value: Any,
@@ -2338,6 +2340,12 @@ class RoomClient:
2338
2340
  title = tk_json.get("title", "")
2339
2341
  description = tk_json.get("description", "")
2340
2342
  participant_id = tk_json.get("participant_id", None)
2343
+ annotations_json = tk_json.get("annotations", {})
2344
+ annotations: dict[str, str] = {}
2345
+ if isinstance(annotations_json, dict):
2346
+ for key, value in annotations_json.items():
2347
+ if isinstance(key, str) and isinstance(value, str):
2348
+ annotations[key] = value
2341
2349
 
2342
2350
  # Tools are usually a dict keyed by tool name
2343
2351
  tools = []
@@ -2401,6 +2409,7 @@ class RoomClient:
2401
2409
  description=description,
2402
2410
  tools=tools,
2403
2411
  participant_id=participant_id,
2412
+ annotations=annotations,
2404
2413
  )
2405
2414
  )
2406
2415
  return result
@@ -3092,12 +3101,14 @@ class ToolkitDescription:
3092
3101
  description: str,
3093
3102
  tools: List[ToolDescription],
3094
3103
  participant_id: Optional[str] = None,
3104
+ annotations: Optional[dict[str, str]] = None,
3095
3105
  ):
3096
3106
  self.name = name
3097
3107
  self.title = title
3098
3108
  self.description = description
3099
3109
  self.tools = tools
3100
3110
  self.participant_id = participant_id
3111
+ self.annotations = dict(annotations or {})
3101
3112
 
3102
3113
  def get_tool(self, name: str) -> ToolDescription | None:
3103
3114
  for t in self.tools:
@@ -3113,6 +3124,7 @@ class ToolkitDescription:
3113
3124
  "title": self.title,
3114
3125
  "tools": list(map(lambda x: x.to_json(), self.tools)),
3115
3126
  "participant_id": self.participant_id,
3127
+ "annotations": self.annotations,
3116
3128
  }
3117
3129
 
3118
3130
 
@@ -2542,6 +2542,7 @@ async def test_list_toolkits_preserves_strict_tool_metadata() -> None:
2542
2542
  "test": {
2543
2543
  "title": "Test",
2544
2544
  "description": "desc",
2545
+ "annotations": {"meshagent.tool_search": "true"},
2545
2546
  "tools": {
2546
2547
  "strict_tool": {
2547
2548
  "title": "Strict Tool",
@@ -2568,6 +2569,8 @@ async def test_list_toolkits_preserves_strict_tool_metadata() -> None:
2568
2569
  assert len(toolkits) == 1
2569
2570
  assert len(toolkits[0].tools) == 1
2570
2571
  assert toolkits[0].tools[0].strict is False
2572
+ assert toolkits[0].annotations == {"meshagent.tool_search": "true"}
2573
+ assert toolkits[0].to_json()["annotations"] == {"meshagent.tool_search": "true"}
2571
2574
 
2572
2575
 
2573
2576
  @pytest.mark.asyncio
@@ -0,0 +1 @@
1
+ __version__ = "0.44.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshagent-api
3
- Version: 0.43.3
3
+ Version: 0.44.0
4
4
  Summary: Python Server API for Meshagent
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: Documentation, https://docs.meshagent.com
@@ -1 +0,0 @@
1
- __version__ = "0.43.3"
File without changes
File without changes
File without changes