← Browse

@vercel-labs/ai-python-subagents

B

Use for the subagent-as-a-tool pattern.

skillclaude

Install

agr install @vercel-labs/ai-python-subagents --target claude

Writes 1 file into .claude/skills/, pinned to git-42defb91.

  • .claude/skills/ai-python-subagents/SKILL.md

Document


name: ai-python-subagents description: Use for the subagent-as-a-tool pattern. metadata: sdk-version: "0.4.0"

ai-python-subagents

Use a subagent tool when the parent model should choose when to call another agent.

@ai.tool
async def research(topic: str) -> ai.SubAgentTool:
    child = ai.Agent(tools=[lookup])
    messages = [
        ai.system_message("Research briefly."),
        ai.user_message(topic),
    ]

    async with child.run(model, messages) as stream:
        async for event in stream:
            yield event

The parent model sees the child agent's final assistant text as the tool result. The caller sees child events as ai.events.PartialToolCallResult.

Render nested output from event.value:

if isinstance(event, ai.events.PartialToolCallResult):
    if isinstance(event.value, ai.events.TextDelta):
        print(event.value.chunk, end="", flush=True)

Do not append child messages to the parent history yourself. The tool result stores the child transcript as a MessageBundle.

For MessageBundle, preliminary output, and streaming tool details, use ai-python-streaming-tools.

Trustgrade B

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • warnLicenseno SPDX license detected

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-42defb91007f2026-07-31