toolfuncs 1.2.0__tar.gz → 1.2.1__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.
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/PKG-INFO +3 -1
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/README.md +2 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/pyproject.toml +1 -1
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/agent_hooks.py +1 -1
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_agent_hooks.py +3 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/uv.lock +1 -1
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/.github/workflows/release.yml +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/.github/workflows/test.yml +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/.gitignore +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/.python-version +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/docs/contract.md +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/docs/migrating-to-1.0.md +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/__init__.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/__main__.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_catalog.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_contract.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_descriptions.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_doctor.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_errors.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_import_path.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_mcp.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_packages.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_runtime.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_setup.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/_tools.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/py.typed +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/src/toolfuncs/sdk.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/__init__.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/conftest.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_contract.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_doctor.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_import_path.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_managed_runtime.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_mcp.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_packages.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_path_mcp.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_sdk_cli.py +0 -0
- {toolfuncs-1.2.0 → toolfuncs-1.2.1}/tests/test_tools.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: toolfuncs
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.1
|
|
4
4
|
Summary: Typed Python functions with native Python, CLI, and MCP interfaces
|
|
5
5
|
Project-URL: Repository, https://github.com/nimashoghi/toolfuncs
|
|
6
6
|
Project-URL: Issues, https://github.com/nimashoghi/toolfuncs/issues
|
|
@@ -385,6 +385,8 @@ toolfuncs setup [--bin-dir DIRECTORY]
|
|
|
385
385
|
|
|
386
386
|
## Agent integration
|
|
387
387
|
|
|
388
|
+
The discovery hook allows 30 seconds for reading a cold PATH. Large system executable directories can take longer than 10 seconds on first access, even though discovery only reads static metadata. Re-run `toolfuncs setup` after upgrading to refresh an existing hook registration.
|
|
389
|
+
|
|
388
390
|
The installed hook runs at initial session start and at the session-start event emitted after compaction. It discovers the effective tools directly from that harness process's `PATH`, then adds a compact catalog such as:
|
|
389
391
|
|
|
390
392
|
```text
|
|
@@ -367,6 +367,8 @@ toolfuncs setup [--bin-dir DIRECTORY]
|
|
|
367
367
|
|
|
368
368
|
## Agent integration
|
|
369
369
|
|
|
370
|
+
The discovery hook allows 30 seconds for reading a cold PATH. Large system executable directories can take longer than 10 seconds on first access, even though discovery only reads static metadata. Re-run `toolfuncs setup` after upgrading to refresh an existing hook registration.
|
|
371
|
+
|
|
370
372
|
The installed hook runs at initial session start and at the session-start event emitted after compaction. It discovers the effective tools directly from that harness process's `PATH`, then adds a compact catalog such as:
|
|
371
373
|
|
|
372
374
|
```text
|
|
@@ -63,7 +63,7 @@ def catalog_context(
|
|
|
63
63
|
return "\n".join(lines)
|
|
64
64
|
|
|
65
65
|
|
|
66
|
-
@hooks.on(shared.events.SessionStarted, timeout=
|
|
66
|
+
@hooks.on(shared.events.SessionStarted, timeout=30)
|
|
67
67
|
def advertise_tools(event: shared.events.SessionStarted) -> shared.outputs.Result:
|
|
68
68
|
"""Advertise available toolfuncs at startup and after compaction."""
|
|
69
69
|
|
|
@@ -197,3 +197,6 @@ def test_hook_registration_uses_session_start_for_startup_and_compact(
|
|
|
197
197
|
configured = rendered["hooks"]
|
|
198
198
|
assert isinstance(configured, dict)
|
|
199
199
|
assert set(configured) == {"SessionStart"}
|
|
200
|
+
for group in configured["SessionStart"]:
|
|
201
|
+
for hook in group["hooks"]:
|
|
202
|
+
assert hook["timeout"] == 30
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|