Оставляйте финальный ответ у manager
Agents-as-tools подходят, когда один владелец должен выбрать специалистов, объединить их outputs и отвечать перед пользователем или внешним gate. Manager хранит исходную цель и вызывает specialist agents как ограниченные tools; specialists возвращают данные или артефакты, но не забирают user-facing разговор. Паттерн удобен для due diligence, release readiness и поддержки, когда единый компонент нормализует стиль и применяет общие guardrails.
import { Agent } from "@openai/agents";
const testAgent = new Agent({
name: "Test specialist",
instructions: "Analyze only test evidence. Return findings, not a release decision."
});
const securityAgent = new Agent({
name: "Security specialist",
instructions: "Analyze dependency and policy risks. Do not modify source files."
});
const releaseManager = new Agent({
name: "Release manager",
instructions: "Call specialists when needed and own the final release summary.",
tools: [
testAgent.asTool({
toolName: "inspect_tests",
toolDescription: "Inspect test evidence for the release candidate."
}),
securityAgent.asTool({
toolName: "inspect_security",
toolDescription: "Inspect dependency and policy evidence."
})
]
});Контракт specialist tool стоит держать узким: один глагол в названии (inspect, search, verify, calculate); описание, которое сообщает, когда вызывать tool и чего он не делает; input с узкой задачей, ссылками на artifacts и локальным budget; output со schema, provenance и completion status; и запрет на необратимый side effect, если manager ожидает только анализ.
Manager полезен, когда нужно вызвать несколько независимых экспертов, сравнить результаты, устранить дубли и выдать один согласованный output. Manager лишний, когда приложение уже знает список workers и может собрать structured outputs обычной функцией.
Manager - это и точка контроля, и bottleneck. Центральный manager удобен для общих rate limits и output policy, но одновременно становится single point of semantic failure. Его prompt нельзя превращать в свалку инструкций всех specialists.
Manager держит управление у себя. Иногда же владение нужно передать целиком - и передавать его можно только вместе с контрактом.