name: start-commander description: "Use when: start commander, begin tactical session, activate AI commander, command red forces, command blue forces, tactical AI setup, commander session, start tactical AI, run commander, initialize commander, /commander" argument-hint: "Specify faction (Red/Blue), objective, AWACS unit name, and intel mode — or leave blank to be interviewed"
start-commander Skill
Collects all required Commander session parameters via an interview, then composes and hands off the startup prompt to the Commander subagent. The Commander runs the Session Startup Procedure and executes the first Decision Cycle.
When to Use
- User types
/commanderor/start-commander - User says "start the commander", "begin a tactical session", "run tactical AI", "command red/blue forces"
- Hivemind's
/commanderflow is triggered
Procedure
Step 1 — Interview the User
If parameters were not already provided, ask the following (use vscode_askQuestions if available):
Faction — Which side is the Commander controlling?
- Red
- Blue
Objective — What is the Commander's primary mandate?
DEFEND— Hold the AO, minimize enemy penetrationATTRIT— Destroy enemy forces while preserving own strengthASSAULT— Seize terrain or destroy a specific target, accept lossesSCREEN— Buy time, trading space for time; retreat when threatenedANNIHILATE— All-in, maximum aggression, destroy everything
AWACS Unit Name — The exact DCS unit name of the faction's AWACS aircraft or early-warning radar. This is the unit the Commander will call
GetDetectedTargetson when inAWACS_ONLYmode.Intel Mode — How should the Commander sense the enemy?
AWACS_ONLY(realistic) — Enemy contacts from the AWACS radar only. Fog of war applies.SATELLITE— All enemy units visible directly via gRPC. No fog of war.
Scenario Spec (optional) — Paste the MissionBuilder scenario spec or a brief description of the AO and enemy order of battle. Helps the Commander make informed decisions from the first cycle.
Step 2 — Compose the Commander Startup Prompt
Using the collected parameters, build the following structured prompt:
Faction: <Red|Blue>
Objective: <DEFEND|ATTRIT|ASSAULT|SCREEN|ANNIHILATE>
AWACS Unit: <unit name>
Intel Mode: <AWACS_ONLY|SATELLITE>
Scenario: <spec or "none">
Run the Session Startup Procedure:
1. Health check (call check_health — abort if grpcClientConnected is false)
2. Register agent name via MB_setAgent('Commander') Eval inject
3. Build the initial force picture (GetGroups → GetUnits → GetPosition for own side; enemy picture per intelMode)
4. Execute one full Decision Cycle: Assess → Decide → Issue Orders → Report
Return the Commander's Report in the structured format defined in your agent file.
Step 3 — Invoke Commander Subagent
Hand the composed prompt to the Commander subagent using the agent tool.
Do not execute any gRPC calls yourself. Commander owns all gRPC interaction and Lua injection.
Step 4 — Present Report and Offer Next Cycle
After the Commander subagent returns, display its report to the user verbatim, then ask:
"Commander cycle complete. Say next to run another decision cycle, stop to end the session, or describe any override orders."
| User response | Action |
|---|---|
| next | Invoke Commander again: "Run one Decision Cycle. Refresh the force picture and issue orders for this cycle." |
override <instruction> |
Invoke Commander with the override prepended: "Override: <instruction>. Then run one Decision Cycle." |
| stop | End the session. Summarise total cycles run and orders issued. |
Rules
- Do not query gRPC yourself. This skill only orchestrates. Commander owns all gRPC calls and Eval injections.
- The AWACS unit name must be exact — it must match the DCS unit name in the mission. If the user is unsure, note it in the prompt and Commander will attempt
GetGroupsto discover candidates. - Intel mode is sticky for the session — do not change it mid-session unless the user explicitly requests it.