You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Audit command: `uv tool run --python 3.13 pip-audit -r agents/langchain-deepagents-code/requirements.lock --progress-spinner off --disable-pip`
12
12
- Audit date: August 11, 2026
13
13
- Targeted audit result: `aiohttp 3.14.3, cryptography 50.0.0, uv 0.11.33, langgraph-checkpoint-sqlite 3.1.1, MCP 1.28.1, Pillow 12.3.0, and pyasn1 0.6.4 have no known vulnerabilities`
@@ -18,17 +18,53 @@ The lock now selects `aiohttp==3.14.3`, `cryptography==50.0.0`, `uv==0.11.33`, `
18
18
These selections clear `GHSA-cq5v-8q36-5273`, `GHSA-g6cj-pr64-35w5`, and `GHSA-47pj-3jcm-6whg`.
19
19
The direct `langgraph-checkpoint-sqlite==3.1.1` requirement is a hash-locked security constraint for `GHSA-47pj-3jcm-6whg`.
20
20
Remove it when the selected Deep Agents Code graph resolves `3.1.1` or later without the direct constraint and the complete-lock audit remains clear.
21
-
The direct MCP and pyasn1 requirements are temporary, hash-locked constraints for the released Deep Agents Code `0.1.34` graph.
22
-
Deep Agents Code `0.1.45` and later contain the MCP and pyasn1 fixes, but their hook boundary has changed.
23
-
Remove the temporary direct constraints only as part of a separately validated semantic migration to `>=0.1.45` that preserves NemoClaw's managed runtime hooks.
21
+
The Deep Agents Code selector is the published `0.1.55` release at commit
22
+
`80fe3d3cbcd23b8ebbc2b1b0d67d7ea318d11ef6`. Its reviewed wheel is
23
+
`deepagents_code-0.1.55-py3-none-any.whl` with SHA-256
This semantic migration through `0.1.55` crosses the MCP and pyasn1 fixes while retaining the
28
+
managed hook, approval, credential, update, and startup-mode guards at the
29
+
NemoClaw launcher and exact-version package-patch boundaries.
24
30
25
31
The image build runs `pip3 check` and asserts all eight installed package versions, including Deep Agents Code itself, before publishing.
26
32
The complete point-in-time audit now reports only two duplicate database records for `setuptools==82.0.1`; that record is outside the Critical/High remediation scope.
27
33
This review does not claim the complete lock is vulnerability-free.
28
34
35
+
## Progressive MCP Tool Catalog Compatibility
36
+
37
+
Deep Agents Code `0.1.55` with LangChain `1.3.14` can supply `search_tools` with a `ToolRuntime.tools` view that omits loaded MCP tools.
38
+
The next model request can still expose those tools, but a search against only the middleware runtime view reports no match and cannot disclose them.
39
+
40
+
NemoClaw owns the progressive-disclosure middleware injection at graph construction.
41
+
The main-agent middleware retains the parent graph's registered tool tuple.
42
+
A declarative local subagent that defines `tools` retains that catalog, including an explicit empty list.
43
+
A declarative local subagent that omits `tools` inherits the parent graph's catalog.
44
+
An explicit subagent catalog therefore cannot search or expose a parent-only tool.
45
+
At search time, the middleware combines that tuple with `ToolRuntime.tools` by object identity and applies the existing name, result, state, and schema limits to the combined catalog.
46
+
Model requests still use their request-time tool view, and the existing callable-name validation still rejects ambiguous or reserved owners before graph construction.
47
+
48
+
Deep Agents Code `0.1.55` also derives MCP approval from protocol annotations.
49
+
Its headless guard permits an MCP call without an approval UI only when `readOnlyHint` is literally `true`, `destructiveHint` is not `true`, and every supplied standard hint has a Boolean value.
50
+
The guard rejects unannotated, malformed, contradictory, or mutating tools instead of treating them as read-only.
51
+
NemoClaw retains that fail-closed behavior.
52
+
53
+
The live E2E `fake_echo` and `fake_status` tools perform only read-only proof and status operations, so their `tools/list` definitions declare `readOnlyHint: true`.
54
+
The compatible-model fixture reports a search failure only when the `search_tools` result omits the target.
55
+
After a valid search, the fixture reports a rejected or incorrect target result as an invocation failure.
56
+
57
+
The focused fixture and installed-image validator give `search_tools` a runtime view that contains only itself.
58
+
They require a registered hidden MCP tool to appear in the search response and in the next model tool list.
59
+
The focused fixture also assigns separate tools to the parent and one subagent.
60
+
It requires an omitted subagent catalog to inherit the parent tool and an explicit subagent catalog to retain only the subagent tool.
61
+
The same fixture requires the subagent tool to remain searchable and to appear in the next model request when `ToolRuntime.tools` contains only `search_tools`.
62
+
The live Deep Agents MCP E2E test separately requires the tool to be hidden initially, returned by `search_tools`, exposed on the next model request, and invoked through the authenticated managed MCP path.
63
+
Remove the retained catalog only after the pinned Deep Agents and LangChain runtime supplies every registered searchable tool to middleware calls and both evidence paths pass without it.
64
+
29
65
## Managed `fetch_url` Proxy Adapter
30
66
31
-
Deep Agents Code `0.1.34` deliberately disables ambient proxies and resolves
67
+
Deep Agents Code `0.1.55` deliberately disables ambient proxies and resolves
32
68
destination DNS locally before pinning the address used by `fetch_url`. That is
33
69
the wrong transport inside a NemoClaw-managed sandbox: ordinary egress and
34
70
destination resolution must pass through the policy proxy, so the direct path
@@ -64,19 +100,19 @@ behavior.
64
100
65
101
## Released Nemotron 3 Ultra Profile
66
102
67
-
Deep Agents Code `0.1.34` pins `deepagents==0.7.0a6`, whose official wheel
103
+
Deep Agents Code `0.1.55` pins `deepagents==0.7.5`, whose official wheel
68
104
contains the Nemotron 3 Ultra harness profile merged in Deep Agents PR #4192.
69
105
NemoClaw no longer vendors or overlays that source.
0 commit comments