[GH-ISSUE #4202] [deepagents]: Subagents page documents interrupt_on type as dict[str, bool], missing InterruptOnConfig support #2790

Closed
opened 2026-06-05 17:26:48 -04:00 by yindo · 0 comments
Owner

Originally created by @AdemBoukhris457 on GitHub (May 29, 2026).
Original GitHub issue: https://github.com/langchain-ai/docs/issues/4202

Type of issue

issue / bug

Language

Python

Description

The Subagents page documents the interrupt_on field on the SubAgent spec table as:

Type: dict[str, bool]

However, the actual type in libs/deepagents/deepagents/middleware/subagents.py (line 98) is:

interrupt_on: NotRequired[dict[str, bool | InterruptOnConfig]]

Where InterruptOnConfig (imported from langchain.agents.middleware) allows per-tool configuration with allowed_decisions, for example:

interrupt_on = {
    "delete_file": {"allowed_decisions": ["approve", "edit", "reject"]},
    "read_file": True,
}

The Human-in-the-loop page already documents this correctly, listing True, False, and {"allowed_decisions": [...]} as valid values. The subagents page should match.

Originally created by @AdemBoukhris457 on GitHub (May 29, 2026). Original GitHub issue: https://github.com/langchain-ai/docs/issues/4202 ### Type of issue issue / bug ### Language Python ### Description The [Subagents page](https://docs.langchain.com/oss/python/deepagents/subagents#subagent-dictionary-based) documents the `interrupt_on` field on the `SubAgent` spec table as: > **Type:** `dict[str, bool]` However, the actual type in `libs/deepagents/deepagents/middleware/subagents.py` (line 98) is: ```python interrupt_on: NotRequired[dict[str, bool | InterruptOnConfig]] ``` Where `InterruptOnConfig` (imported from `langchain.agents.middleware`) allows per-tool configuration with `allowed_decisions`, for example: ```python interrupt_on = { "delete_file": {"allowed_decisions": ["approve", "edit", "reject"]}, "read_file": True, } ``` The [Human-in-the-loop page](https://docs.langchain.com/oss/python/deepagents/human-in-the-loop#basic-configuration) already documents this correctly, listing `True`, `False`, and `{"allowed_decisions": [...]}` as valid values. The subagents page should match.
yindo added the externaldeepagents labels 2026-06-05 17:26:48 -04:00
yindo closed this issue 2026-06-05 17:26:48 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langchain-ai/docs#2790