meshagent-tools 0.20.6__tar.gz → 0.22.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 (30) hide show
  1. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/CHANGELOG.md +18 -0
  2. {meshagent_tools-0.20.6/meshagent_tools.egg-info → meshagent_tools-0.22.0}/PKG-INFO +2 -2
  3. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/database.py +27 -17
  4. meshagent_tools-0.22.0/meshagent/tools/version.py +1 -0
  5. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0/meshagent_tools.egg-info}/PKG-INFO +2 -2
  6. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent_tools.egg-info/requires.txt +1 -1
  7. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/pyproject.toml +1 -1
  8. meshagent_tools-0.20.6/meshagent/tools/version.py +0 -1
  9. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/LICENSE +0 -0
  10. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/MANIFEST.in +0 -0
  11. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/README.md +0 -0
  12. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/__init__.py +0 -0
  13. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/blob.py +0 -0
  14. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/config.py +0 -0
  15. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/datetime.py +0 -0
  16. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/discovery.py +0 -0
  17. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/document_tools.py +0 -0
  18. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/hosting.py +0 -0
  19. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/multi_tool.py +0 -0
  20. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/pydantic.py +0 -0
  21. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/storage.py +0 -0
  22. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/strict_schema.py +0 -0
  23. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/tool.py +0 -0
  24. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/toolkit.py +0 -0
  25. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/uuid.py +0 -0
  26. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent/tools/web_toolkit.py +0 -0
  27. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent_tools.egg-info/SOURCES.txt +0 -0
  28. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent_tools.egg-info/dependency_links.txt +0 -0
  29. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/meshagent_tools.egg-info/top_level.txt +0 -0
  30. {meshagent_tools-0.20.6 → meshagent_tools-0.22.0}/setup.cfg +0 -0
@@ -1,3 +1,21 @@
1
+ ## [0.22.0]
2
+ - Added meshagent-anthropic with Anthropic Messages adapter, MCP connector toolkit support, and an OpenAI-Responses-compatible stream adapter (depends on anthropic>=0.25,<1.0).
3
+ - Breaking: agent naming now derives from participant name (Agent.name deprecated; TaskRunner/LLMRunner/Worker/VoiceBot constructors no longer require name; Voicebot alias removed; MailWorker renamed to MailBot with queue default).
4
+ - Breaking: SecretsClient methods renamed to list_secrets/delete_secret and expanded with request_secret/provide_secret/get_secret/set_secret/delete_requested_secret flows.
5
+ - Breaking: Meshagent client create_service/update_service now return ServiceSpec objects; service-template create/update helpers added for project and room services.
6
+ - OpenAI Responses adapter adds context window tracking, compaction via responses.compact, input-token counting, usage storage, max_output_tokens control, and shell tool env injection.
7
+ - RoomClient can auto-initialize from MESHAGENT_ROOM/MESHAGENT_TOKEN; websocket URL helper added.
8
+ - Schema documents add grep/tag queries and ChatBotClient; chat reply routing now targets the requesting participant reliably.
9
+ - Database toolkit now expects update values as a list of column updates and defaults to advanced search/delete tools.
10
+ - Dependency addition: prompt-toolkit~=3.0.52 added to CLI 'all' extras.
11
+
12
+ ## [0.21.0]
13
+ - Breaking: the Image model no longer exposes manifest/template metadata in image listings.
14
+ - Add token-backed environment variables in service specs so Python clients can inject participant tokens instead of static values.
15
+ - Add `on_demand` and `writable_root_fs` flags on container specs to control per-request services and filesystem mutability.
16
+ - Breaking: the agent schedule annotation key is corrected to `meshagent.agent.schedule`; update any existing annotations using the old spelling.
17
+ - Add a Shell agent type and a shell command annotation for service metadata.
18
+
1
19
  ## [0.20.6]
2
20
  - Stability
3
21
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshagent-tools
3
- Version: 0.20.6
3
+ Version: 0.22.0
4
4
  Summary: Tools for Meshagent
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: Documentation, https://docs.meshagent.com
@@ -12,7 +12,7 @@ License-File: LICENSE
12
12
  Requires-Dist: pyjwt~=2.10
13
13
  Requires-Dist: pytest~=8.4
14
14
  Requires-Dist: pytest-asyncio~=0.26
15
- Requires-Dist: meshagent-api~=0.20.6
15
+ Requires-Dist: meshagent-api~=0.22.0
16
16
  Requires-Dist: aiohttp~=3.10
17
17
  Requires-Dist: opentelemetry-distro~=0.54b1
18
18
  Dynamic: license-file
@@ -130,16 +130,17 @@ class UpdateTool(Tool):
130
130
  for k, v in schema.items():
131
131
  columns += f"column {k} => {v.to_json()}"
132
132
 
133
- values_schema = {
134
- "type": "object",
135
- "required": [],
136
- "additionalProperties": False,
137
- "properties": {},
138
- }
133
+ anyOf = []
139
134
 
140
135
  for k, v in schema.items():
141
- values_schema["required"].append(k)
142
- values_schema["properties"][k] = v.to_json_schema()
136
+ anyOf.append(
137
+ {
138
+ "type": "object",
139
+ "additionalProperties": False,
140
+ "required": [k],
141
+ "properties": {k: v.to_json_schema()},
142
+ }
143
+ )
143
144
 
144
145
  input_schema = {
145
146
  "type": "object",
@@ -153,7 +154,11 @@ class UpdateTool(Tool):
153
154
  "type": "string",
154
155
  "description": f"a lance db compatible filter, columns are: {columns}",
155
156
  },
156
- "values": values_schema,
157
+ "values": {
158
+ "type": "array",
159
+ "description": "a list of columns to update",
160
+ "items": {"anyOf": anyOf},
161
+ },
157
162
  },
158
163
  }
159
164
 
@@ -164,9 +169,14 @@ class UpdateTool(Tool):
164
169
  input_schema=input_schema,
165
170
  )
166
171
 
167
- async def execute(self, context: ToolContext, *, where: str, values: dict):
172
+ async def execute(self, context: ToolContext, *, where: str, values: list[dict]):
173
+ set = {}
174
+ for value in values:
175
+ for k, v in value.items():
176
+ set[k] = v
177
+
168
178
  await context.room.database.update(
169
- table=self.table, where=where, values=values, namespace=self.namespace
179
+ table=self.table, where=where, values=set, namespace=self.namespace
170
180
  )
171
181
 
172
182
  return {"ok": True}
@@ -245,7 +255,7 @@ class SearchTool(Tool):
245
255
  }
246
256
 
247
257
 
248
- class LLMßSearchTool(Tool):
258
+ class LLMSearchTool(Tool):
249
259
  def __init__(
250
260
  self,
251
261
  *,
@@ -490,7 +500,7 @@ class AdvancedSearchTool(Tool):
490
500
  columns = ""
491
501
 
492
502
  for k, v in schema.items():
493
- columns += f"column {k} => {v.to_json()}"
503
+ columns += f"column {k} => {v.to_json()}\n"
494
504
 
495
505
  input_schema = {
496
506
  "type": "object",
@@ -580,9 +590,9 @@ class DatabaseToolkit(RemoteToolkit):
580
590
  tools.append(
581
591
  UpdateTool(table=table, schema=schema, namespace=namespace)
582
592
  )
583
- tools.append(
584
- DeleteRowsTool(table=table, schema=schema, namespace=namespace)
585
- )
593
+ # tools.append(
594
+ # DeleteRowsTool(table=table, schema=schema, namespace=namespace)
595
+ # )
586
596
  tools.append(
587
597
  AdvancedDeleteRowsTool(
588
598
  table=table, schema=schema, namespace=namespace
@@ -590,7 +600,7 @@ class DatabaseToolkit(RemoteToolkit):
590
600
  )
591
601
 
592
602
  tools.append(CountTool(table=table, schema=schema, namespace=namespace))
593
- tools.append(SearchTool(table=table, schema=schema, namespace=namespace))
603
+ # tools.append(SearchTool(table=table, schema=schema, namespace=namespace))
594
604
  tools.append(
595
605
  AdvancedSearchTool(table=table, schema=schema, namespace=namespace)
596
606
  )
@@ -0,0 +1 @@
1
+ __version__ = "0.22.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshagent-tools
3
- Version: 0.20.6
3
+ Version: 0.22.0
4
4
  Summary: Tools for Meshagent
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: Documentation, https://docs.meshagent.com
@@ -12,7 +12,7 @@ License-File: LICENSE
12
12
  Requires-Dist: pyjwt~=2.10
13
13
  Requires-Dist: pytest~=8.4
14
14
  Requires-Dist: pytest-asyncio~=0.26
15
- Requires-Dist: meshagent-api~=0.20.6
15
+ Requires-Dist: meshagent-api~=0.22.0
16
16
  Requires-Dist: aiohttp~=3.10
17
17
  Requires-Dist: opentelemetry-distro~=0.54b1
18
18
  Dynamic: license-file
@@ -1,6 +1,6 @@
1
1
  pyjwt~=2.10
2
2
  pytest~=8.4
3
3
  pytest-asyncio~=0.26
4
- meshagent-api~=0.20.6
4
+ meshagent-api~=0.22.0
5
5
  aiohttp~=3.10
6
6
  opentelemetry-distro~=0.54b1
@@ -12,7 +12,7 @@ dependencies = [
12
12
  "pyjwt~=2.10",
13
13
  "pytest~=8.4",
14
14
  "pytest-asyncio~=0.26",
15
- "meshagent-api~=0.20.6",
15
+ "meshagent-api~=0.22.0",
16
16
  "aiohttp~=3.10",
17
17
  "opentelemetry-distro~=0.54b1"
18
18
  ]
@@ -1 +0,0 @@
1
- __version__ = "0.20.6"