feat(ui): configure maxParallelToolCalls for factory-created agents

The acp and stdio-agent plugins only forwarded `model` into their created
agents, so every factory/ACP deployment was pinned to the agent-loop default
parallel cap with no cordis.yml override. Add a `maxParallelToolCalls` config
field (positive-integer validated) to both, threaded through the existing
per-agent options path — symmetric with `model`.
This commit is contained in:
Dudu-0223
2026-07-14 11:55:39 +08:00
parent 8c8e5fdd24
commit eae8b8ce2e
7 changed files with 50 additions and 3 deletions

View File

@@ -136,6 +136,17 @@ describe('dsh-stdio-agent app', () => {
await ctx.fiber.dispose()
})
it('forwards maxParallelToolCalls onto the pre-created agent when set', async () => {
const ctx = await mount({
model: 'mock',
maxParallelToolCalls: 3,
persistenceRoot: '/tmp/dsh-stdio-agent-spec-parallel',
skills: await isolatedSkillsConfig(),
})
expect(ctx.get('agents')?.get(AgentId('main'))?.options.maxParallelToolCalls).toBe(3)
await ctx.fiber.dispose()
})
it('exposes its name and Config schema', () => {
expect(stdioAgent.name).toBe('stdio-agent')
expect(stdioAgent.Config).toBeDefined()