research: CAP model handling, model-as-tool and skill delegation (cap-protocol, +59 sources, 2 conclusions)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-25 18:24:40 +01:00
co-authored by Claude Sonnet 5.5
parent 0ac0584a96
commit 636886201b
64 changed files with 2026 additions and 5 deletions
@@ -0,0 +1,51 @@
# OpenAI Agents SDK: Tools (agents as tools)
## Metadata
| Field | Value |
|---|---|
| Institute | Molodetz Institute — Research & Retrieval Division |
| Subject | cap-protocol |
| Document type | Source Dossier |
| Tier | 1 |
| Source title | OpenAI Agents SDK: Tools (agents as tools) |
| Source URL | https://openai.github.io/openai-agents-python/tools/ |
| Source publisher / author | OpenAI |
| Source type | vendor docs |
| Source date (published) | Unknown — not stated |
| Date researched | 2026-10-25 |
| Researched by | tai (agent), model: Claude Sonnet 5, on behalf of retoor |
| Research method | direct page fetch |
| Confidence | High |
| Status | Active |
## Summary
The SDK page that defines `Agent.as_tool()`: exposing a specialist agent to a manager as a callable tool instead of handing the conversation over.
## Key findings
- The agent-as-tool run has its own state: the parent run's conversation state is not inherited automatically; pass the same `session` to share client-managed history.
- The nested run's final output is returned to the parent as the tool result; `custom_output_extractor` can reshape it first.
- `is_enabled` takes a boolean, a callable or an async function; disabled tools are completely hidden from the LLM at runtime.
- By default the tool expects an object with one string field `input`; a Pydantic model or dataclass via `parameters` replaces that, and `include_input_schema=True` adds the JSON Schema to the nested input.
- If `needs_approval` requires a decision, the nested run pauses and the pending items surface in `result.interruptions`.
- Guidance: use a central agent that orchestrates specialists 'instead of handing off control'.
## Pros / strengths
Concrete, small API that names the knobs a delegation tool needs: input schema, output extractor, enable switch, approval pause.
## Cons / limitations / caveats
Describes the SDK's API, not measured outcomes; the handoff comparison lives on another page.
## Relevance to tai
Template for the shape of a tai `ask_agent` tool: structured input, nested run in its own context, only the final output returned, an enable switch and an approval hook.
## Changelog
| Date | Change |
|---|---|
| 2026-10-25 | Initial dossier created. |