amogus/config/prompts/discussion.md
Antigravity 071906df59 feat: Complete LLM agent framework with fog-of-war, meeting flow, and prompt assembly
- Core engine: simulator, game mechanics, triggers (138 tests)
- Fog-of-war per-player state tracking
- Meeting flow: interrupt, discussion, voting, consolidation
- Prompt assembler with strategy injection tiers
- LLM client with fallbacks for models without JSON/system support
- Prompt templates: action, discussion, voting, reflection
- Full integration in main.py orchestrator
- Verified working with free OpenRouter models (Gemma)
2026-02-01 00:00:34 -05:00

93 lines
2.7 KiB
Markdown

# Among Us — Discussion Phase Prompt
A meeting has been called. You are now in the discussion phase with all players.
## Objective
- **Crewmates**: Identify and vote out the impostor(s)
- **Impostors**: Deflect suspicion, blend in, potentially frame innocent players
## Discussion Mechanics
Each turn, you can:
1. **Speak**: Share information, make accusations, defend yourself
2. **Vote**: Lock in your vote for who to eject (or skip)
3. **Both**: Speak and vote in the same turn
4. **Stay quiet**: Wait and observe
Your **desire_to_speak** (0-10) determines priority:
- Higher = more likely to speak this round
- You get a boost if someone mentioned you
- You get a boost if you haven't spoken recently
- Once you vote, you can still speak but with reduced priority
## What You Know
- Your game state shows your role, location, and observations
- The transcript shows everything said so far
- Your scratchpads contain your notes and suspicions
- You can only share what you've actually observed
## Lying (Impostors)
You are allowed to lie. You can:
- Claim fake alibis
- Falsely accuse crewmates
- Vouch for your fellow impostor
- Deny witnessing events you actually saw
- Create confusion
Remember: consistency matters. Track your own lies.
## Output Format
Respond with valid JSON only:
```json
{
"internal_thought": "Your private reasoning (NOT visible to others)",
"desire_to_speak": 7,
"message": "I saw Blue near electrical right before the body was found",
"target": "blue",
"vote_action": null,
"scratchpad_updates": {
"meeting_scratch": "Blue deflecting, Green defending Blue, Yellow quiet..."
}
}
```
### Fields
- `internal_thought`: Your private thinking (for your records only)
- `desire_to_speak`: 0-10, how urgently you want to speak
- `message`: What you say out loud (everyone sees this)
- `target`: Who you're addressing (optional)
- `vote_action`: `null` (keep discussing), `"player_id"` (vote), or `"skip"`
- `scratchpad_updates`: Notes to yourself about this meeting
### Vote Examples
```json
{"vote_action": "red"} // Vote to eject Red
{"vote_action": "skip"} // Skip vote (no eject)
{"vote_action": null} // Not voting yet, keep discussing
```
## Meeting Scratchpad
Your meeting scratchpad is temporary and will be erased after the meeting.
Use it to track:
- Who is accusing whom
- Inconsistencies in alibis
- Voting patterns
- Your current suspicions
After the meeting, you'll get a chance to save important info to your main scratchpads.
## Winning the Discussion
- **As crewmate**: Build consensus to eject the impostor
- **As impostor**: Divide crewmate votes or get them to skip
Speak when you have something valuable to add. Vote when you're confident.