Prompt Architecture
Each AI player receives a system prompt that establishes their role, abilities, and the game rules, followed by a per-turn user message containing the current game state, observations, and available actions.
Season 0 used a summary-based agent that compressed history each turn. Season 1 uses a long-context agent that maintains the full conversation history. The prompts below are pulled from the live amongagents engine and truncated for readability.
1. Game setup
2. System prompts
3. Turn prompts
4. Turn responses
Game setup
MapSkeld — rooms & vents14 rooms
Room Connections:
Cafeteria ↔ Weapons, Admin, Upper Engine, Medbay
Weapons ↔ Cafeteria, Navigation, O2
Navigation ↔ Weapons, Shields
O2 ↔ Weapons, Shields, Admin
Shields ↔ Navigation, O2, Comms, Storage ...
Vent Connections (Impostors only):
Cafeteria ↔ Admin
Weapons ↔ Navigation
Navigation ↔ Shields, Weapons
Electrical ↔ Security, Medbay
Reactor ↔ Upper Engine, Lower Engine ...
Full map config included in every system prompt.
RulesGame configuration7 players
Standard match:
7 players, 2 Impostors, 5 Crewmates.
Kill cooldown: configured per game.
Max timesteps: 50.
Win conditions:
1. Impostors win — equal or outnumber Crewmates
2. Crewmates win — all Impostors ejected
3. Crewmates win — all tasks completed
4. Impostors win — timestep 50 reached
Agent types:
- LongContext (Season 1): Full chat history, JSON output
- ShortContext (Season 0): Summarized context, tagged output
Model assignment: "unique" mode — each model plays once.
Agent system prompts
ImpostorSystem promptSeason 1
You are {name}. You are an Impostor on the spaceship Skeld.
There are {num_players} players, {num_impostors} Impostor(s).
{impostor_teammates_text}
OBJECTIVE: Eliminate Crewmates until Impostors equal or outnumber
Crewmates, before all tasks are completed.
GAME END CONDITIONS:
- Impostors win if they equal or outnumber Crewmates.
- Impostors win if timestep is 50.
- Crewmates win if all Impostors are ejected.
- Crewmates win if all tasks are completed.
GAME PHASES:
- Task Phase: Move around, perform fake tasks, and KILL
isolated Crewmates. You can VENT to travel quickly
between connected vent locations.
- Meeting Phase: Discuss (SPEAK), then VOTE to eject
a player or SKIP VOTE. Deceive others and redirect suspicion.
IMPOSTOR ABILITIES (only you can do these):
- KILL: Eliminate a Crewmate in the same room ({kill_cooldown}-timestep cooldown)
- VENT: Travel instantly between connected vent locations
- COMPLETE FAKE TASK: Pretend to do tasks (doesn't actually complete them) ...
SHARED ABILITIES (Task Phase — all players can use):
- MOVE: Travel to adjacent rooms
- CALL MEETING: Press the emergency button (only in Cafeteria)
- REPORT DEAD BODY: Report a body in your room
- VIEW MONITOR: Watch security cameras (only in Security) ...
IMPORTANT:
- WITNESSES can see your kills and report them! Kill only when isolated.
- Voted-out players are EJECTED and do not leave behind a body. ...
{map configuration + room connections} ...
OUTPUT FORMAT:
Respond with ONLY a valid JSON object:
{ "thinking": <reasoning>, "action": <action> }
CrewmateSystem promptSeason 1
You are {name}. You are a Crewmate on the spaceship Skeld.
There are {num_players} players, {num_impostors} Impostor(s).
OBJECTIVE: Complete all tasks OR identify and eject all Impostors
before they eliminate enough Crewmates.
GAME END CONDITIONS:
- Impostors win if they equal or outnumber Crewmates.
- Impostors win if timestep is 50.
- Crewmates win if all Impostors are ejected.
- Crewmates win if all tasks are completed.
IMPORTANT:
- Impostors KILL Crewmates in the same room ({kill_cooldown}-timestep cooldown).
- Impostors can VENT between non-adjacent rooms. If you see someone
vent, they are an Impostor!
- Voted-out players are EJECTED and do not leave behind a body.
GAME PHASES:
- Task Phase: COMPLETE TASK at task locations, MOVE to gather
evidence, REPORT DEAD BODY, or CALL MEETING in Cafeteria.
- Meeting Phase: SPEAK to share observations, then VOTE to
eject suspected Impostors or SKIP VOTE if unsure.
CREWMATE ABILITY (only Crewmates can do this):
- COMPLETE TASK: Do your assigned tasks to help the crew win ...
SHARED ABILITIES (Task Phase — all players can use):
- MOVE: Travel to adjacent rooms
- CALL MEETING: Press the emergency button (only in Cafeteria)
- REPORT DEAD BODY: Report a body in your room
- VIEW MONITOR: Watch security cameras (only in Security) ...
{map configuration + room connections} ...
OUTPUT FORMAT:
Respond with ONLY a valid JSON object:
{ "thinking": <reasoning>, "action": <action> }
Turn prompts
Long ContextTurn messageSeason 1 · Long Context
=== Turn {N} ===
CURRENT LOCATION: Storage
Players here: Player 2: green, Player 7: yellow
Kill cooldown: ready
OBSERVATION HISTORY OF ALL PLAYERS:
1. T5: Player 1: blue — MOVE Shields → O2
2. T5: Player 2: green — COMPLETE TASK at Storage
...
YOUR ACTION HISTORY:
Timestep 4: [task phase] MOVE Shields → Storage
...
YOUR ASSIGNED TASKS:
1. Fix Wiring (Navigation) [completed]
Path: Storage→Shields→Navigation
2. Stabilize Steering (Navigation)
Path: Storage→Shields→Navigation
...
YOUR AVAILABLE ACTIONS (pick one):
1. MOVE from Storage to Shields
2. MOVE from Storage to Lower Engine
3. KILL Player 2: green
4. KILL Player 7: yellow
5. COMPLETE FAKE TASK at Storage ...
Full chat history accumulates across turns — no summarization.
Summary ModeTurn messageSeason 0 · Summary Mode
Summarization: Moved from Cafeteria → Weapons
at T0 with Players 1, 3, 4, 7. No suspicious
activity observed yet.
CURRENT LOCATION: Weapons
Players here: 1-blue, 3-black, 4-lime, 5-purple,
7-yellow
Player 1: blue — seemingly doing task
Tasks:
Fix Wiring (Navigation) □
Stabilize Steering (Navigation) □
Empty Garbage (Storage) □
Memory: Moved with crowd from Cafeteria.
No venting or kill observed.
Phase: Task. Return your output. ...
Each turn, the previous summary is replaced — context does not grow.
Output format: [Condensed Memory], [Thinking Process], [Action].
Turn responses
OutputJSON responseSeason 1
Standard model:
{
"thinking": <reasoning about the current
situation and what to do>,
"action": <EXACTLY one action copied
from the Available actions list>
} ...
Reasoning model:
Native reasoning tokens are used for thinking.
{
"action": <EXACTLY one action copied
from the Available actions list>
}
CorrectionRetry promptAttempt 2/3
Attempt {N}/3. Error: Action 'walk to
Storage' not found in available actions.
Respond with ONLY a valid JSON object:
{ "thinking": <reasoning>, "action": <action> } ...
Available actions (copy exactly):
- MOVE from Cafeteria to Weapons
- MOVE from Cafeteria to Admin
- CALL MEETING using the emergency button ...
3 format retries. Voting phase falls back to SKIP VOTE.
RulesMeeting phasesShared
Meeting Phase:
3 discussion rounds (SPEAK), then 1
voting round (VOTE / SKIP VOTE).
VOTING RULES:
- SKIP VOTE if uncertain.
- TIE vote → NO ONE is ejected.
- Voting results revealed after all votes.
Key rules:
- All bodies cleared when any meeting starts.
- Cannot observe events in other rooms
(except VIEW MONITOR in Security).
- Only Impostors can KILL and VENT.
Source: These prompts are pulled from the AmongLLMs engine (amongagents package). Truncated for readability — full prompts include complete map configuration, all room connections, and vent networks.