Dome Systems

Play chess with a coach and a standing opponent

A two-agent chess app with delegated coaching and a standing Stockfish opponent.

User
Caller
  • chat
App
Agents
  • chess-coach
  • opponent-stockfish
Daily limit
chess-coach
$5.00
Governance
Gateway
  • chess
Pool

coach

  • chess-coach-model
Tools

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. 1

      Create a sandbox workspace

      dome sandbox provision --scope workspace

      Use a sandbox while trying a template. Provisioning does not switch your active context.

    2. 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. 3

      Pull the template

      npx @domesystems/templates pull im2nguyen/demo-chess@0.1.1 --dir demo-chess

      Downloads this immutable release and verifies its digest.

    4. 4

      Run the template

      npx @domesystems/templates up --dir demo-chess

      Imports 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.