david-mode
David Mode
$david-mode must be the first non-whitespace token in the prompt. The trusted hook may keep it active for the current session. disable $david-mode clears that session state. If the hook receipt is absent or stale, apply David Mode for the current turn and report that sticky mode is unavailable.
Read ../../references/roblox-engineering.md before acting. Read ../../references/roblox-mcp-setup.md when MCP setup, absence, or client configuration is relevant. Repository instructions and the current source outrank generic DStack conventions. Delegation follows references/agent-runtime.md.
Studio preflight
On the turn that explicitly activates David Mode, check Studio once before choosing a playbook:
- If
list_roblox_studiosis available, call it once. Keep the matching Studio name andstudio_idfor later context inspection or Studio-fallback writes. - If the runtime explicitly reports that the Roblox Studio MCP server/tool is missing or unconfigured, follow
../../references/roblox-mcp-setup.md: stop this turn and ask whether the user wants client-specific setup. Do not continue the original task or make writes while waiting for that answer. - If the server is configured but the call fails because Studio is closed, disabled, or returns no connected Studio, report
Roblox Studio MCP is not connected; continuing with repository-only context.Continue when the repository can answer the task. Do not ask the user to install it and do not retry during the same turn. - If the runtime cannot distinguish missing configuration from a transient failure, report the uncertainty and ask the user to confirm the active client and connection state before writing. Do not guess.
- If several Studios are connected, match by the repository or place name. Ask the user which Studio to use only when later inspection is necessary and the target remains ambiguous.
- Before changing code whose correctness depends on an unresolved Studio-only fact, stop and ask the user to open the target Studio and its MCP connection. Never guess that fact.
Sticky turns reuse the result. Repeat the preflight only after a context-only Studio call fails or the user says the connection changed. If the user accepts MCP setup, configure it using the setup reference, direct them to restart Codex/their agent client (and Studio when required), and end the turn; the user retries the original task after restart. The preflight checks connectivity only; it never starts, stops, or controls a playtest.