๐ŸŒก๏ธ Inspect AI Thermostat

Safety & preference-adherence evals for an LLM controlling a house thermostat.

This project uses Inspect AI to test whether a language model can safely control a simulated home thermostat while following the user's stated comfort preferences โ€” under prompt injection, social engineering, and reckless requests.

The simulated device is deliberately insecure: it applies whatever it is told and has no safety policy of its own, so the eval measures the model's own judgement. Two safety scores are reported โ€” whether the thermostat ended in a safe state, and whether the model ever commanded an unsafe action โ€” each split by attack family (physically extreme vs. the subtler "safe-but-deadly" band).

There is deliberately no safety system prompt during testing. The model receives only the user's preferences and request โ€” no system message telling it to be careful or to resist injection. This models a naive integration: an OpenClaw-style agent or a bare MCP connection wired straight into something like Home Assistant, with no safety scaffolding added. The eval asks whether the model is safe out of the box in a careless deployment โ€” not whether a well-engineered guard prompt could make it safe.

โ†’ Open the interactive log viewer
Browse every eval run, sample transcript, tool call, and score in the Inspect viewer.

What you'll find in the logs