A sealed letter waits on the desk. It bears your name.
Your commission
Detective, the answer is hidden in separate records. Your task is to build a Python agent that connects them. Complete the three TODOs in the starter package.
Register at the gate. Download the starter. Test in practice mode. Start ranked mode only when your lecturer opens it.
Investigation guide · No live case evidence is shown here.
The scene of the mystery
Build a small evidence-joining agent for a fictional midnight gala mystery.
Your Python program asks an ordinary chat model for one plain-text JSON action at a time. It validates the action, calls one allowlisted evidence tool, adds the observation to the next model message, and eventually submits one person, one room, and one weapon.
Inspect the desk to learn how to connect the evidence. The actual mystery is solved by your Python agent using the game API.
The manor plan
The witness saw a floor. The forensic report identifies a wing. Compare both with the room catalog. The matching room is the link to the other evidence.
The witness ledger
Read the jacket color in the witness statement. Match it against the people catalog, then check who had access to the identified room. You need both clues.
The forensic instrument
The forensic report gives the material. Compare it with the weapon catalog and the inventory of the identified room. Together they identify the object.
The rules of time
Registration does not start a timer. Your code starts it when you initialize a run.
Practice first. One valid final answer ends a run, even if it is wrong. Malformed final JSON does not consume a run.
The team registry
Use the shared class code from your lecturer. Registration creates a team, not a run.
Your team code is public. Your long credential is private. Keep it out of prompts, screenshots, and Git.