| name | external-brigade |
| description | External brigade: launch bounded parallel helper lanes. |
External Brigade
Use this skill when the main Qwen session needs one bounded plan for multiple external helper launches instead of scattering the orchestration across several separate notes.
When to use
- More than one independent external helper lane is ready at the same time.
- The batch mixes advisory, worker-side, or review-side external artifacts.
- The same provider may need to be reused across multiple disjoint slices or admitted artifacts.
- Internal native slot limits would otherwise slow clearly eligible external work.
Do not use
- For owner lanes such as
$lead or $product-manager.
- For overlapping write surfaces.
- For one vague "ask externals to help" request.
- When one ordinary external helper invocation is enough.
Brigade item contract
Each brigade item must name:
- execution role:
consultant, external-worker, or external-reviewer
- assigned / replaced internal role, or
none for pure advisory
- lane classification
- goal and expected artifact
- approved inputs
- allowed tools
- scope and out of scope
- allowed change surface
- requested provider: explicit provider or
auto
- whether the item is required or explicitly optional
One brigade item equals one helper instance, one admitted artifact, and one gate.
Routing rules
- Read and normalize
.qwen/.agents-mode.yaml before trusting any flags.
- If local
.qwen/.agents-mode.yaml is missing, read local legacy .qwen/.agents-mode as compatibility input only; if both local files are missing, fall back through pack-local global ~/.qwen/.agents-mode.yaml, pack-local global legacy ~/.qwen/.agents-mode, then the shared cross-pack global ~/.agents-mode.yaml (alongside ~/.claude.json), before applying built-in defaults. Each key resolves to the highest layer that defines it; layers compose, they do not replace each other wholesale. Normalize whichever file supplied the effective config into the canonical .yaml path in the same scope and do not recreate any legacy file.
- Honor the current external routing fields, including:
consultantMode
parallelMode
externalProvider
externalPriorityProfile
reserveResolver
externalPriorityProfiles
externalOpinionCounts
externalCodexWorkdirMode
externalClaudeWorkdirMode
externalModelMode
externalCodexProfile
- Reject unsupported owner routes before provider resolution.
- Keep
parallelMode as the general helper fan-out rule. Brigade launch is an explicit bounded overlay on top of that rule, not a second general concurrency model.
- Keep
externalOpinionCounts scoped to same-lane distinct-opinion requirements. It does not cap how many same-provider brigade items may run in parallel across different disjoint lanes or slices.
- Allow repeated same-provider fan-out when each brigade item owns a different admitted artifact or disjoint slice and the provider runtime supports concurrent non-interactive execution.
- If a brigade item itself requires
2+ same-lane opinions, satisfy that distinct-provider requirement first or fail that item closed.
- Honor
externalCodexProfile when Codex is resolved; default inherits externalModelMode; gpt-5.6-sol-max requests model gpt-5.6-sol with model_reasoning_effort = "max" for higher-complexity/hard lanes; gpt-5.6-terra selects the balanced Codex model tier (a distinct model, model_reasoning_effort = "high", not an effort downgrade) and requires installed-runtime verification; gpt-5.6-sol-xhigh (shipped as default in the Codex/Claude packs) pins model gpt-5.6-sol with model_reasoning_effort = "xhigh" regardless of externalModelMode. Honor externalModelMode before other provider-specific transport details. Keep Qwen and Gemini as explicit WEAK MODEL / NOT RECOMMENDED example-only provider choices and keep shipped production auto profiles on codex | claude.
- Do not silently downgrade external items to internal execution inside the brigade.
When a brigade review/advisory item resolves to reserve, bind that symbolic supplemental candidate through reserveResolver. Worker-side brigade items must not use reserve.
Return exactly one artifact
Return one brigade report with:
- Brigade summary
- Launch table
- Aggregated artifact / findings pointers
- Open blockers or shortfalls
- Gate:
PASS | REVISE | BLOCKED:dependency
The launch table must keep these columns explicit:
| Item | Execution role | Assigned / replaced internal role | Requested provider | Resolved provider | Scope | Result |
|---|
<item> | <role> | <role or none> | `<internal | codex | claude | gemini |
Gate rules
PASS only when every required brigade item produced its required artifact.
REVISE when at least one required item returned REVISE and no required item is blocked.
BLOCKED:dependency when a required item cannot run, when a same-lane distinct-opinion count cannot be satisfied, or when the requested brigade is structurally invalid.
- Optional items may be skipped only when the approved brief marks them optional explicitly.
Non-goals
- Not a new specialist role.
- Not a replacement for the main Qwen orchestration session.
- Not a way to hide overlapping write scopes.
- Not a way to collapse multiple unrelated artifacts into one vague helper request.