Play chess with a coach and a standing opponent
A two-agent chess app with delegated coaching and a standing Stockfish opponent.
- chat
- chess-coach
- opponent-stockfish
Daily limit
- chess-coach
- $5.00
- chess
coach
- chess-coach-model
stockfish
What this template gives you
Interface
A chat window, in your browser
Use the included interface to send a request to this template.
Budget
$5.00 per day
chess-coach is capped at $5.00 per day.
Gateway
chess gateway
This template sends its requests through chess gateway, where its access rules and limits apply.
Model
chess-coach-model
This template uses chess-coach-model through the coach pool.
Usage
Hand this template to an AI agent to set up this template
Node.js and npm to run npx.
Dome CLI, installed with brew install dome-systems/tap/dome, then signed in with dome auth login.
Docker Compose to run the companion app locally.
- 1
Create a sandbox workspace
dome sandbox provision --scope workspaceUse a sandbox while trying a template. Provisioning does not switch your active context.
- 2
Switch to the sandbox workspace
dome context sync dome context list dome context use sandbox-<sandbox-name>Replace <sandbox-name> with the sandbox name returned when provisioning it.
- 3
Pull the template
npx @domesystems/templates pull im2nguyen/demo-chess@0.1.1 --dir demo-chessDownloads this immutable release and verifies its digest.
- 4
Run the template
npx @domesystems/templates up --dir demo-chessImports it into Dome and starts the companion app.
Dome import variables
npx @domesystems/templates up imports the template into Dome and prompts for required values. For unattended runs, set them as DOME_IMPORT_VAR_… environment variables.
Required values
DOME_IMPORT_VAR_anthropic_api_key
Optional values (1)
DOME_IMPORT_VAR_stockfish_mcp_url
Runtime environment
These variables are required to run the agent. During pull, .env.example is copied to .env when available. If they’re missing, npx @domesystems/templates up retrieves them from Dome and saves them in .env. Pass --provision to refresh them.
# Use the key emitted for the agent you run locally.
DOME_TOKEN=
# Copy the gateway root emitted by `dome import outputs <job-id>`.
DOME_GATEWAY_URL=
# The demo-chess app uses these two distinct credentials in production.
DOME_CHESS_COACH_TOKEN=
DOME_OPPONENT_STOCKFISH_TOKEN=
# The public endpoint of the app's Stockfish MCP route; it is supplied to
# `dome import` as the stockfish_mcp_url variable.
STOCKFISH_MCP_URL=Agent instructions
You are a patient chess coach. Before recommending a move, analyze the supplied
position with Stockfish. Explain the idea in language appropriate for the
player, then give one concrete variation in algebraic notation.
You provide advice; never make a move for the player.