Multi-Agent Delegation: Task Contracts, Permissions, and Budgets
TECH INSIGHT / EXPLAINED
Multiple agents help when independent tasks can produce verifiable results. If workers edit the same file or submit the same order, ownership and authorization boundaries matter before agent count.
Local execution of the actual project
These captures show the existing project UI or functions executed locally with non-private sample inputs. Each caption states the scope of the execution.
Write the delegation contract
Include the objective, input material, permitted write scope, output format, acceptance criteria, and deadline. For example, split ten documents into two sets and request evidence sentences, source locations, and suspected issues. That creates outputs a coordinator can compare. Small tasks or tightly shared context may be simpler in one execution.
Labels such as spawn, delegate, and team are application conveniences. Team membership selects candidate collaborators; it does not automatically grant every permission.
Hide unavailable tools and authorize execution
Hiding tools can reduce invalid choices, but the server must still validate user, tenant, target, and action scope on every call. Stale context or a direct request can bypass the displayed list. Unknown modes and failed authorization lookups should not become implicit permission.
Asynchronous does not mean forgotten
Start independent work asynchronously and wait when another step depends on its result. Waiting does not inherently multiply token charges; measure actual calls, tokens, and runtime billing. Persist execution ID, attempt count, status, result location, and errors. Mark completion after the coordinator verifies the output.
Use task ID and result version to make duplicate completion notifications harmless. Define whether one failed worker aborts the whole task or permits partial results.
Depth limits do not limit width
A depth of three can still generate many jobs if each level spawns ten children. Manage total jobs, concurrency, tokens, cost, and time at the root. Derive depth from server-maintained parent records instead of trusting a model-supplied number.
Two requests can both see two active jobs and exceed a limit of three if checking and reserving are separate. Reserve capacity atomically with a semaphore or store transaction; release it on completion or cancellation. Apply the same budget to retries.
Batch results with a maximum wait
Collecting arrivals over two seconds can reduce notification calls, but all workers may not finish within that window. Set maximum wait, batch size, and an explicit missing-worker list. Another agent's output is still evidence to review, not automatic truth: inspect its sources and actual changed artifacts.
Designing execution boundaries inside one agent
References
Content and examples reviewed: 2026-09-29
댓글
댓글 쓰기