{"owner":"lichess-org","repo":"lila","hasSkills":true,"totalSkillsCount":22,"totalTokensCount":7892,"categories":["root-instruction","cursor-rule","windsurf-rule","cline-rule","roo-rule","mcp-config","marketplace","plugin-manifest","copilot-instructions"],"hasMcp":true,"mcpConfig":{"mcpServers":{"lila":{"command":"npx","args":["-y","@modelcontextprotocol/server-lila"]}}},"found":["AGENTS.md","RULES.md","PROMPT.md","PROMPTS.md","SYSTEM.md","ROUTING.md","SKILLS.md",".cursorrules",".windsurfrules",".clinerules",".roorules",".aideprules",".roomodes","llms.txt","llms-full.txt","mcp.json","marketplace.json","plugin.json",".github/copilot-instructions.md",".cursor/mcp.json",".claude-plugin/marketplace.json",".claude-plugin/plugin.json"],"skills":{"AGENTS.md":"# Lila Development Guide for Coding Agents\n\n## Repository Overview\n\nLila (li[chess in sca]la) is the free, open-source chess server powering lichess.org - one of the world's largest chess platforms with 12+ billion games. This is a production-scale application serving millions of users with real-time gameplay, computer analysis, tournaments, and comprehensive chess features.\n\n**Technology Stack:**\n\n- **Backend**: Scala 3.8.2 with Play Framework 2.8, SBT build system\n- **Frontend**: TypeScript with Snabbdom, PNPM workspace monorepo\n- **Database**: MongoDB with Elasticsearch indexing\n- **Real-time**: WebSocket connections via separate lila-ws server, Redis for communication\n- **Chess Engine**: Stockfish via distributed fishnet cluster\n- **Styling**: Sass with custom build pipeline\n\n## Environment Requirements\n\n**CRITICAL**: These exact versions are required - the build will fail without them:\n\n- **Java 21** (JDK, not JRE - needs jdk.compiler module)\n- **Node.js 24.15.0+** (specified in `.node-version`)\n- **PNPM 11.18.0+** (specified in `package.json`)\n\n**Installation:**\n\n```bash\n# Install PNPM globally\nnpm install -g pnpm@11.18.0\n\n# Install dependencies (always run this first)\npnpm install\n```\n\n## Build & Development Commands\n\n**Frontend (UI) Development:**\n\n```bash\n# Build all UI packages (requires Node 24+)\n./ui/build\n\n# Build specific packages\n./ui/build site analyse lobby\n\n# Watch mode for development\n./ui/build -w\n\n# Production build\n./ui/build -p\n\n# No dependency installation (faster rebuilds)\n./ui/build --no-install\n```\n\n**Backend (Scala) Development:**\n\n```bash\n# Start development console (lila.sh is the SBT wrapper)\n# Automatically copies .sbtopts.default and conf/application.conf.default if missing\n./lila.sh\n\n# In SBT console (via ./lila.sh), compile and run:\nsbt> compile\nsbt> run\n\n# Run with specific JVM options\n./lila.sh -Depoll=true\n\n# Full build with tests and staging\n./lila.sh \"test;stage\"\n```\n\n**Testing & Quality:**\n\n```bash\n# Run all frontend tests (Vitest)\npnpm test\n\n# Watch mode for tests\npnpm test:watch\n\n# Check code formatting (Oxfmt)\npnpm check-format\n\n# Auto-format code\npnpm format\n\n# Lint TypeScript code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Backend formatting check (Scalafmt) - via lila.sh wrapper\n./lila.sh scalafmtCheckAll\n\n# Auto-format Scala code\n./lila.sh scalafmtAll\n```\n\n## Project Architecture\n\n**Module Structure (80+ Scala modules):**\n\n- Modules are in `/modules/[name]/src/main/` with strict dependency hierarchy\n- Core modules: `core`, `common`, `db`, `memo`, `ui`\n- Domain modules: `game`, `user`, `tournament`, `study`, `puzzle`, etc.\n- Build order matters - see `build.sbt` for dependency graph\n\n**Frontend Structure (36 UI packages):**\n\n- `/ui/[package]/` - Individual TypeScript packages\n- `/ui/lib/` - Shared utilities and types\n- `/ui/@types/` - TypeScript definitions\n- `/ui/.build/` - Custom build system with esbuild\n- Each package has `package.json` with custom \"build\" property\n\n**Key Directories:**\n\n- `/app/` - Play Framework controllers, views, main application\n- `/conf/` - Configuration files, routes, application settings\n- `/public/` - Static assets, will contain compiled CSS/JS after build\n- `/bin/` - Utility scripts (deploy, CLI tools, git hooks)\n- `/project/` - SBT build configuration (BuildSettings.scala, Dependencies.scala)\n\n## Common Issues & Solutions\n\n**Node Version Error:** `Nodejs v24.15.0 or later is required`\n\n- Install Node 24.15+ using nvm or package manager\n- Check with: `node -v`\n\n**Java Version Issues:**\n\n- Ensure Java 21 JDK is installed (not JRE)\n- Check: `java --list-modules | grep jdk.compiler`\n- Set JAVA_HOME properly\n\n**Build Failures:**\n\n- Always run `pnpm install` after pulling changes\n- For UI issues: `./ui/build --clean` then rebuild\n- For Scala issues: `sbt clean compile`\n\n**PNPM Workspace Issues:**\n\n- Dependencies use `workspace:*` for internal packages\n- Run `pnpm install` from repository root, not subdirectories\n\n## Development Workflow\n\n**Making Changes:**\n\n1. **Frontend**: Edit files in `/ui/[package]/src/`, run `./ui/build -w` for live reload\n2. **Backend**: Edit `/modules/[name]/src/main/`, use `sbt ~compile` for auto-recompile\n3. **Styles**: Edit `.scss` files, included in UI build process\n4. **Configuration**: Edit `/conf/` files, may require server restart\n\n**Before Committing:**\n\n1. Run `pnpm check-format` and `pnpm lint`\n2. Run `./lila.sh scalafmtCheckAll`\n3. Run `pnpm test` for frontend tests\n4. Consider `./lila.sh test` for affected backend modules (can be slow)\n\n**Utility Scripts:**\n\n- `/bin/deploy` - Production deployment automation\n- `/bin/trans-lint` - Translation validation\n- `/bin/git-hooks/` - Git hooks for formatting/linting\n\n## GitHub Actions & CI\n\n**Workflows validate:**\n\n- **server.yml**: Scala compilation, tests, formatting with Java 21\n- **assets.yml**: UI build, tests, formatting with Node 24+\n- **lint.yml**: Code quality checks\n\n**Deployment:**\n\n- Uses `/bin/deploy` script with workflow artifacts\n- Server builds create `lila-3.0.tar.zst` artifact\n- Asset builds create `assets.tar.zst` artifact\n\n## Key Configuration Files\n\n- **build.sbt**: Main SBT configuration, module definitions\n- **package.json**: Root package with scripts and dependencies\n- **pnpm-workspace.yaml**: Defines workspace packages\n- **ui/.build/**: Custom frontend build system\n- **.scalafmt.conf**: Scala formatting rules\n- **ui/.oxlint.json**: TypeScript formatting rules (Oxlint)\n- **ui/.oxfmt.json**: TypeScript/CSS/JSON/MD formatting rules (Oxfmt)\n- **conf/routes**: HTTP route definitions\n- **conf/application.conf.default**: Main application configuration template\n\n## Development Tips\n\n- **Large codebase**: Use specific module builds rather than full recompilation\n- **Asset compilation**: The `./ui/build` system is sophisticated - study `/ui/README.md` for details\n- **Hot reloading**: Backend changes require manual restart, frontend has watch mode\n- **Module dependencies**: Check `build.sbt` before adding cross-module dependencies\n- **Database**: Uses MongoDB - no migrations, but schema assumptions in code\n- **Performance**: This is a high-traffic production system - consider performance impact\n\n**Trust these instructions** - they are validated and comprehensive. Only search for additional information if these instructions are incomplete or incorrect for your specific task.\n","RULES.md":"# Development & Architecture Rules\n\nPath: `RULES.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/RULES.md)","PROMPT.md":"# Core System Prompt & Persona\n\nPath: `PROMPT.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPT.md)","PROMPTS.md":"# Agent Prompts Catalog\n\nPath: `PROMPTS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPTS.md)","SYSTEM.md":"# System Architecture & Agent Directives\n\nPath: `SYSTEM.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SYSTEM.md)","ROUTING.md":"# Multi-Agent Routing & Delegation Matrix\n\nPath: `ROUTING.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/ROUTING.md)","SKILLS.md":"# Workspace Skills & Capabilities Index\n\nPath: `SKILLS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SKILLS.md)",".cursorrules":"# Cursor IDE Native Rules\n\nPath: `.cursorrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursorrules)",".windsurfrules":"# Windsurf Cascade Agent Rules\n\nPath: `.windsurfrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.windsurfrules)",".clinerules":"# Cline Extension Native Directives\n\nPath: `.clinerules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.clinerules)",".roorules":"# Roo Code Autonomous Agent Rules\n\nPath: `.roorules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roorules)",".aideprules":"# Aider Coding Assistant Guidelines\n\nPath: `.aideprules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.aideprules)",".roomodes":"# Roo Code Custom Persona Modes\n\nPath: `.roomodes`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roomodes)","llms.txt":"# LLM Index & Context Digest\n\nPath: `llms.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms.txt)","llms-full.txt":"# LLM Full Documentation Context\n\nPath: `llms-full.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms-full.txt)","mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/mcp.json)","marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/marketplace.json)","plugin.json":"# Plugin Plugin Manifest\n\nPath: `plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/plugin.json)",".github/copilot-instructions.md":"# GitHub Copilot Instructions\n\nPath: `.github/copilot-instructions.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.github/copilot-instructions.md)",".cursor/mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursor/mcp.json)",".claude-plugin/marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/marketplace.json)",".claude-plugin/plugin.json":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/plugin.json)"},"files":{"AGENTS.md":"# Lila Development Guide for Coding Agents\n\n## Repository Overview\n\nLila (li[chess in sca]la) is the free, open-source chess server powering lichess.org - one of the world's largest chess platforms with 12+ billion games. This is a production-scale application serving millions of users with real-time gameplay, computer analysis, tournaments, and comprehensive chess features.\n\n**Technology Stack:**\n\n- **Backend**: Scala 3.8.2 with Play Framework 2.8, SBT build system\n- **Frontend**: TypeScript with Snabbdom, PNPM workspace monorepo\n- **Database**: MongoDB with Elasticsearch indexing\n- **Real-time**: WebSocket connections via separate lila-ws server, Redis for communication\n- **Chess Engine**: Stockfish via distributed fishnet cluster\n- **Styling**: Sass with custom build pipeline\n\n## Environment Requirements\n\n**CRITICAL**: These exact versions are required - the build will fail without them:\n\n- **Java 21** (JDK, not JRE - needs jdk.compiler module)\n- **Node.js 24.15.0+** (specified in `.node-version`)\n- **PNPM 11.18.0+** (specified in `package.json`)\n\n**Installation:**\n\n```bash\n# Install PNPM globally\nnpm install -g pnpm@11.18.0\n\n# Install dependencies (always run this first)\npnpm install\n```\n\n## Build & Development Commands\n\n**Frontend (UI) Development:**\n\n```bash\n# Build all UI packages (requires Node 24+)\n./ui/build\n\n# Build specific packages\n./ui/build site analyse lobby\n\n# Watch mode for development\n./ui/build -w\n\n# Production build\n./ui/build -p\n\n# No dependency installation (faster rebuilds)\n./ui/build --no-install\n```\n\n**Backend (Scala) Development:**\n\n```bash\n# Start development console (lila.sh is the SBT wrapper)\n# Automatically copies .sbtopts.default and conf/application.conf.default if missing\n./lila.sh\n\n# In SBT console (via ./lila.sh), compile and run:\nsbt> compile\nsbt> run\n\n# Run with specific JVM options\n./lila.sh -Depoll=true\n\n# Full build with tests and staging\n./lila.sh \"test;stage\"\n```\n\n**Testing & Quality:**\n\n```bash\n# Run all frontend tests (Vitest)\npnpm test\n\n# Watch mode for tests\npnpm test:watch\n\n# Check code formatting (Oxfmt)\npnpm check-format\n\n# Auto-format code\npnpm format\n\n# Lint TypeScript code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Backend formatting check (Scalafmt) - via lila.sh wrapper\n./lila.sh scalafmtCheckAll\n\n# Auto-format Scala code\n./lila.sh scalafmtAll\n```\n\n## Project Architecture\n\n**Module Structure (80+ Scala modules):**\n\n- Modules are in `/modules/[name]/src/main/` with strict dependency hierarchy\n- Core modules: `core`, `common`, `db`, `memo`, `ui`\n- Domain modules: `game`, `user`, `tournament`, `study`, `puzzle`, etc.\n- Build order matters - see `build.sbt` for dependency graph\n\n**Frontend Structure (36 UI packages):**\n\n- `/ui/[package]/` - Individual TypeScript packages\n- `/ui/lib/` - Shared utilities and types\n- `/ui/@types/` - TypeScript definitions\n- `/ui/.build/` - Custom build system with esbuild\n- Each package has `package.json` with custom \"build\" property\n\n**Key Directories:**\n\n- `/app/` - Play Framework controllers, views, main application\n- `/conf/` - Configuration files, routes, application settings\n- `/public/` - Static assets, will contain compiled CSS/JS after build\n- `/bin/` - Utility scripts (deploy, CLI tools, git hooks)\n- `/project/` - SBT build configuration (BuildSettings.scala, Dependencies.scala)\n\n## Common Issues & Solutions\n\n**Node Version Error:** `Nodejs v24.15.0 or later is required`\n\n- Install Node 24.15+ using nvm or package manager\n- Check with: `node -v`\n\n**Java Version Issues:**\n\n- Ensure Java 21 JDK is installed (not JRE)\n- Check: `java --list-modules | grep jdk.compiler`\n- Set JAVA_HOME properly\n\n**Build Failures:**\n\n- Always run `pnpm install` after pulling changes\n- For UI issues: `./ui/build --clean` then rebuild\n- For Scala issues: `sbt clean compile`\n\n**PNPM Workspace Issues:**\n\n- Dependencies use `workspace:*` for internal packages\n- Run `pnpm install` from repository root, not subdirectories\n\n## Development Workflow\n\n**Making Changes:**\n\n1. **Frontend**: Edit files in `/ui/[package]/src/`, run `./ui/build -w` for live reload\n2. **Backend**: Edit `/modules/[name]/src/main/`, use `sbt ~compile` for auto-recompile\n3. **Styles**: Edit `.scss` files, included in UI build process\n4. **Configuration**: Edit `/conf/` files, may require server restart\n\n**Before Committing:**\n\n1. Run `pnpm check-format` and `pnpm lint`\n2. Run `./lila.sh scalafmtCheckAll`\n3. Run `pnpm test` for frontend tests\n4. Consider `./lila.sh test` for affected backend modules (can be slow)\n\n**Utility Scripts:**\n\n- `/bin/deploy` - Production deployment automation\n- `/bin/trans-lint` - Translation validation\n- `/bin/git-hooks/` - Git hooks for formatting/linting\n\n## GitHub Actions & CI\n\n**Workflows validate:**\n\n- **server.yml**: Scala compilation, tests, formatting with Java 21\n- **assets.yml**: UI build, tests, formatting with Node 24+\n- **lint.yml**: Code quality checks\n\n**Deployment:**\n\n- Uses `/bin/deploy` script with workflow artifacts\n- Server builds create `lila-3.0.tar.zst` artifact\n- Asset builds create `assets.tar.zst` artifact\n\n## Key Configuration Files\n\n- **build.sbt**: Main SBT configuration, module definitions\n- **package.json**: Root package with scripts and dependencies\n- **pnpm-workspace.yaml**: Defines workspace packages\n- **ui/.build/**: Custom frontend build system\n- **.scalafmt.conf**: Scala formatting rules\n- **ui/.oxlint.json**: TypeScript formatting rules (Oxlint)\n- **ui/.oxfmt.json**: TypeScript/CSS/JSON/MD formatting rules (Oxfmt)\n- **conf/routes**: HTTP route definitions\n- **conf/application.conf.default**: Main application configuration template\n\n## Development Tips\n\n- **Large codebase**: Use specific module builds rather than full recompilation\n- **Asset compilation**: The `./ui/build` system is sophisticated - study `/ui/README.md` for details\n- **Hot reloading**: Backend changes require manual restart, frontend has watch mode\n- **Module dependencies**: Check `build.sbt` before adding cross-module dependencies\n- **Database**: Uses MongoDB - no migrations, but schema assumptions in code\n- **Performance**: This is a high-traffic production system - consider performance impact\n\n**Trust these instructions** - they are validated and comprehensive. Only search for additional information if these instructions are incomplete or incorrect for your specific task.\n","RULES.md":"# Development & Architecture Rules\n\nPath: `RULES.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/RULES.md)","PROMPT.md":"# Core System Prompt & Persona\n\nPath: `PROMPT.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPT.md)","PROMPTS.md":"# Agent Prompts Catalog\n\nPath: `PROMPTS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPTS.md)","SYSTEM.md":"# System Architecture & Agent Directives\n\nPath: `SYSTEM.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SYSTEM.md)","ROUTING.md":"# Multi-Agent Routing & Delegation Matrix\n\nPath: `ROUTING.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/ROUTING.md)","SKILLS.md":"# Workspace Skills & Capabilities Index\n\nPath: `SKILLS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SKILLS.md)",".cursorrules":"# Cursor IDE Native Rules\n\nPath: `.cursorrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursorrules)",".windsurfrules":"# Windsurf Cascade Agent Rules\n\nPath: `.windsurfrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.windsurfrules)",".clinerules":"# Cline Extension Native Directives\n\nPath: `.clinerules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.clinerules)",".roorules":"# Roo Code Autonomous Agent Rules\n\nPath: `.roorules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roorules)",".aideprules":"# Aider Coding Assistant Guidelines\n\nPath: `.aideprules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.aideprules)",".roomodes":"# Roo Code Custom Persona Modes\n\nPath: `.roomodes`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roomodes)","llms.txt":"# LLM Index & Context Digest\n\nPath: `llms.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms.txt)","llms-full.txt":"# LLM Full Documentation Context\n\nPath: `llms-full.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms-full.txt)","mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/mcp.json)","marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/marketplace.json)","plugin.json":"# Plugin Plugin Manifest\n\nPath: `plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/plugin.json)",".github/copilot-instructions.md":"# GitHub Copilot Instructions\n\nPath: `.github/copilot-instructions.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.github/copilot-instructions.md)",".cursor/mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursor/mcp.json)",".claude-plugin/marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/marketplace.json)",".claude-plugin/plugin.json":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/plugin.json)"},"items":[{"name":".aideprules","path":".aideprules","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.aideprules","title":"Aider Coding Assistant Guidelines","category":"root-instruction","format":"markdown","content":"# Aider Coding Assistant Guidelines\n\nPath: `.aideprules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.aideprules)","tokens":300,"sizeBytes":155},{"name":"AGENTS.md","path":"AGENTS.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/AGENTS.md","title":"AI Agent Protocol & Instructions","category":"root-instruction","format":"markdown","content":"# Lila Development Guide for Coding Agents\n\n## Repository Overview\n\nLila (li[chess in sca]la) is the free, open-source chess server powering lichess.org - one of the world's largest chess platforms with 12+ billion games. This is a production-scale application serving millions of users with real-time gameplay, computer analysis, tournaments, and comprehensive chess features.\n\n**Technology Stack:**\n\n- **Backend**: Scala 3.8.2 with Play Framework 2.8, SBT build system\n- **Frontend**: TypeScript with Snabbdom, PNPM workspace monorepo\n- **Database**: MongoDB with Elasticsearch indexing\n- **Real-time**: WebSocket connections via separate lila-ws server, Redis for communication\n- **Chess Engine**: Stockfish via distributed fishnet cluster\n- **Styling**: Sass with custom build pipeline\n\n## Environment Requirements\n\n**CRITICAL**: These exact versions are required - the build will fail without them:\n\n- **Java 21** (JDK, not JRE - needs jdk.compiler module)\n- **Node.js 24.15.0+** (specified in `.node-version`)\n- **PNPM 11.18.0+** (specified in `package.json`)\n\n**Installation:**\n\n```bash\n# Install PNPM globally\nnpm install -g pnpm@11.18.0\n\n# Install dependencies (always run this first)\npnpm install\n```\n\n## Build & Development Commands\n\n**Frontend (UI) Development:**\n\n```bash\n# Build all UI packages (requires Node 24+)\n./ui/build\n\n# Build specific packages\n./ui/build site analyse lobby\n\n# Watch mode for development\n./ui/build -w\n\n# Production build\n./ui/build -p\n\n# No dependency installation (faster rebuilds)\n./ui/build --no-install\n```\n\n**Backend (Scala) Development:**\n\n```bash\n# Start development console (lila.sh is the SBT wrapper)\n# Automatically copies .sbtopts.default and conf/application.conf.default if missing\n./lila.sh\n\n# In SBT console (via ./lila.sh), compile and run:\nsbt> compile\nsbt> run\n\n# Run with specific JVM options\n./lila.sh -Depoll=true\n\n# Full build with tests and staging\n./lila.sh \"test;stage\"\n```\n\n**Testing & Quality:**\n\n```bash\n# Run all frontend tests (Vitest)\npnpm test\n\n# Watch mode for tests\npnpm test:watch\n\n# Check code formatting (Oxfmt)\npnpm check-format\n\n# Auto-format code\npnpm format\n\n# Lint TypeScript code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Backend formatting check (Scalafmt) - via lila.sh wrapper\n./lila.sh scalafmtCheckAll\n\n# Auto-format Scala code\n./lila.sh scalafmtAll\n```\n\n## Project Architecture\n\n**Module Structure (80+ Scala modules):**\n\n- Modules are in `/modules/[name]/src/main/` with strict dependency hierarchy\n- Core modules: `core`, `common`, `db`, `memo`, `ui`\n- Domain modules: `game`, `user`, `tournament`, `study`, `puzzle`, etc.\n- Build order matters - see `build.sbt` for dependency graph\n\n**Frontend Structure (36 UI packages):**\n\n- `/ui/[package]/` - Individual TypeScript packages\n- `/ui/lib/` - Shared utilities and types\n- `/ui/@types/` - TypeScript definitions\n- `/ui/.build/` - Custom build system with esbuild\n- Each package has `package.json` with custom \"build\" property\n\n**Key Directories:**\n\n- `/app/` - Play Framework controllers, views, main application\n- `/conf/` - Configuration files, routes, application settings\n- `/public/` - Static assets, will contain compiled CSS/JS after build\n- `/bin/` - Utility scripts (deploy, CLI tools, git hooks)\n- `/project/` - SBT build configuration (BuildSettings.scala, Dependencies.scala)\n\n## Common Issues & Solutions\n\n**Node Version Error:** `Nodejs v24.15.0 or later is required`\n\n- Install Node 24.15+ using nvm or package manager\n- Check with: `node -v`\n\n**Java Version Issues:**\n\n- Ensure Java 21 JDK is installed (not JRE)\n- Check: `java --list-modules | grep jdk.compiler`\n- Set JAVA_HOME properly\n\n**Build Failures:**\n\n- Always run `pnpm install` after pulling changes\n- For UI issues: `./ui/build --clean` then rebuild\n- For Scala issues: `sbt clean compile`\n\n**PNPM Workspace Issues:**\n\n- Dependencies use `workspace:*` for internal packages\n- Run `pnpm install` from repository root, not subdirectories\n\n## Development Workflow\n\n**Making Changes:**\n\n1. **Frontend**: Edit files in `/ui/[package]/src/`, run `./ui/build -w` for live reload\n2. **Backend**: Edit `/modules/[name]/src/main/`, use `sbt ~compile` for auto-recompile\n3. **Styles**: Edit `.scss` files, included in UI build process\n4. **Configuration**: Edit `/conf/` files, may require server restart\n\n**Before Committing:**\n\n1. Run `pnpm check-format` and `pnpm lint`\n2. Run `./lila.sh scalafmtCheckAll`\n3. Run `pnpm test` for frontend tests\n4. Consider `./lila.sh test` for affected backend modules (can be slow)\n\n**Utility Scripts:**\n\n- `/bin/deploy` - Production deployment automation\n- `/bin/trans-lint` - Translation validation\n- `/bin/git-hooks/` - Git hooks for formatting/linting\n\n## GitHub Actions & CI\n\n**Workflows validate:**\n\n- **server.yml**: Scala compilation, tests, formatting with Java 21\n- **assets.yml**: UI build, tests, formatting with Node 24+\n- **lint.yml**: Code quality checks\n\n**Deployment:**\n\n- Uses `/bin/deploy` script with workflow artifacts\n- Server builds create `lila-3.0.tar.zst` artifact\n- Asset builds create `assets.tar.zst` artifact\n\n## Key Configuration Files\n\n- **build.sbt**: Main SBT configuration, module definitions\n- **package.json**: Root package with scripts and dependencies\n- **pnpm-workspace.yaml**: Defines workspace packages\n- **ui/.build/**: Custom frontend build system\n- **.scalafmt.conf**: Scala formatting rules\n- **ui/.oxlint.json**: TypeScript formatting rules (Oxlint)\n- **ui/.oxfmt.json**: TypeScript/CSS/JSON/MD formatting rules (Oxfmt)\n- **conf/routes**: HTTP route definitions\n- **conf/application.conf.default**: Main application configuration template\n\n## Development Tips\n\n- **Large codebase**: Use specific module builds rather than full recompilation\n- **Asset compilation**: The `./ui/build` system is sophisticated - study `/ui/README.md` for details\n- **Hot reloading**: Backend changes require manual restart, frontend has watch mode\n- **Module dependencies**: Check `build.sbt` before adding cross-module dependencies\n- **Database**: Uses MongoDB - no migrations, but schema assumptions in code\n- **Performance**: This is a high-traffic production system - consider performance impact\n\n**Trust these instructions** - they are validated and comprehensive. Only search for additional information if these instructions are incomplete or incorrect for your specific task.\n","isInternal":false,"tokens":1592,"sizeBytes":6365},{"name":"llms-full.txt","path":"llms-full.txt","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms-full.txt","title":"LLM Full Documentation Context","category":"root-instruction","format":"text","content":"# LLM Full Documentation Context\n\nPath: `llms-full.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms-full.txt)","tokens":300,"sizeBytes":156},{"name":"llms.txt","path":"llms.txt","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms.txt","title":"LLM Index & Context Digest","category":"root-instruction","format":"text","content":"# LLM Index & Context Digest\n\nPath: `llms.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms.txt)","tokens":300,"sizeBytes":142},{"name":"PROMPT.md","path":"PROMPT.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPT.md","title":"Core System Prompt & Persona","category":"root-instruction","format":"markdown","content":"# Core System Prompt & Persona\n\nPath: `PROMPT.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPT.md)","tokens":300,"sizeBytes":146},{"name":"PROMPTS.md","path":"PROMPTS.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPTS.md","title":"Agent Prompts Catalog","category":"root-instruction","format":"markdown","content":"# Agent Prompts Catalog\n\nPath: `PROMPTS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPTS.md)","tokens":300,"sizeBytes":141},{"name":"ROUTING.md","path":"ROUTING.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/ROUTING.md","title":"Multi-Agent Routing & Delegation Matrix","category":"root-instruction","format":"markdown","content":"# Multi-Agent Routing & Delegation Matrix\n\nPath: `ROUTING.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/ROUTING.md)","tokens":300,"sizeBytes":159},{"name":"RULES.md","path":"RULES.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/RULES.md","title":"Development & Architecture Rules","category":"root-instruction","format":"markdown","content":"# Development & Architecture Rules\n\nPath: `RULES.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/RULES.md)","tokens":300,"sizeBytes":148},{"name":"SKILLS.md","path":"SKILLS.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/SKILLS.md","title":"Workspace Skills & Capabilities Index","category":"root-instruction","format":"markdown","content":"# Workspace Skills & Capabilities Index\n\nPath: `SKILLS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SKILLS.md)","tokens":300,"sizeBytes":155},{"name":"SYSTEM.md","path":"SYSTEM.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/SYSTEM.md","title":"System Architecture & Agent Directives","category":"root-instruction","format":"markdown","content":"# System Architecture & Agent Directives\n\nPath: `SYSTEM.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SYSTEM.md)","tokens":300,"sizeBytes":156},{"name":".cursorrules","path":".cursorrules","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursorrules","title":"Cursor IDE Native Rules","category":"cursor-rule","format":"markdown","content":"# Cursor IDE Native Rules\n\nPath: `.cursorrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursorrules)","tokens":300,"sizeBytes":147},{"name":".windsurfrules","path":".windsurfrules","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.windsurfrules","title":"Windsurf Cascade Agent Rules","category":"windsurf-rule","format":"markdown","content":"# Windsurf Cascade Agent Rules\n\nPath: `.windsurfrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.windsurfrules)","tokens":300,"sizeBytes":156},{"name":"copilot-instructions.md","path":".github/copilot-instructions.md","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.github/copilot-instructions.md","title":"GitHub Copilot Instructions","category":"copilot-instructions","format":"markdown","content":"# GitHub Copilot Instructions\n\nPath: `.github/copilot-instructions.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.github/copilot-instructions.md)","tokens":300,"sizeBytes":189},{"name":".roomodes","path":".roomodes","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roomodes","title":"Roo Code Custom Persona Modes","category":"roo-rule","format":"markdown","content":"# Roo Code Custom Persona Modes\n\nPath: `.roomodes`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roomodes)","tokens":300,"sizeBytes":147},{"name":".roorules","path":".roorules","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roorules","title":"Roo Code Autonomous Agent Rules","category":"roo-rule","format":"markdown","content":"# Roo Code Autonomous Agent Rules\n\nPath: `.roorules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roorules)","tokens":300,"sizeBytes":149},{"name":".clinerules","path":".clinerules","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.clinerules","title":"Cline Extension Native Directives","category":"cline-rule","format":"markdown","content":"# Cline Extension Native Directives\n\nPath: `.clinerules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.clinerules)","tokens":300,"sizeBytes":155},{"name":"marketplace.json","path":".claude-plugin/marketplace.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/marketplace.json","title":"Claude Plugin Marketplace Catalog","category":"marketplace","format":"json","content":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/marketplace.json)","tokens":300,"sizeBytes":195},{"name":"marketplace.json","path":"marketplace.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/marketplace.json","title":"Claude Plugin Marketplace Catalog","category":"marketplace","format":"json","content":"# Claude Plugin Marketplace Catalog\n\nPath: `marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/marketplace.json)","tokens":300,"sizeBytes":165},{"name":"plugin.json","path":".claude-plugin/plugin.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/plugin.json","title":"claude-plugin Plugin Manifest","category":"plugin-manifest","format":"json","content":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/plugin.json)","tokens":300,"sizeBytes":181},{"name":"plugin.json","path":"plugin.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/plugin.json","title":"Plugin Plugin Manifest","category":"plugin-manifest","format":"json","content":"# Plugin Plugin Manifest\n\nPath: `plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/plugin.json)","tokens":300,"sizeBytes":144},{"name":"mcp.json","path":".cursor/mcp.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursor/mcp.json","title":"Model Context Protocol (MCP) Configuration","category":"mcp-config","format":"json","content":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursor/mcp.json)","tokens":300,"sizeBytes":174},{"name":"mcp.json","path":"mcp.json","rawUrl":"https://raw.githubusercontent.com/lichess-org/lila/HEAD/mcp.json","title":"Model Context Protocol (MCP) Configuration","category":"mcp-config","format":"json","content":"# Model Context Protocol (MCP) Configuration\n\nPath: `mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/mcp.json)","tokens":300,"sizeBytes":158}],"systemPromptSnippet":"<yakaai_skills repo=\"lichess-org/lila\">\n<!-- File: .aideprules (Tokens: ~300 | Category: root-instruction) -->\n# Aider Coding Assistant Guidelines\n\nPath: `.aideprules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.aideprules)\n\n<!-- File: AGENTS.md (Tokens: ~1592 | Category: root-instruction) -->\n# Lila Development Guide for Coding Agents\n\n## Repository Overview\n\nLila (li[chess in sca]la) is the free, open-source chess server powering lichess.org - one of the world's largest chess platforms with 12+ billion games. This is a production-scale application serving millions of users with real-time gameplay, computer analysis, tournaments, and comprehensive chess features.\n\n**Technology Stack:**\n\n- **Backend**: Scala 3.8.2 with Play Framework 2.8, SBT build system\n- **Frontend**: TypeScript with Snabbdom, PNPM workspace monorepo\n- **Database**: MongoDB with Elasticsearch indexing\n- **Real-time**: WebSocket connections via separate lila-ws server, Redis for communication\n- **Chess Engine**: Stockfish via distributed fishnet cluster\n- **Styling**: Sass with custom build pipeline\n\n## Environment Requirements\n\n**CRITICAL**: These exact versions are required - the build will fail without them:\n\n- **Java 21** (JDK, not JRE - needs jdk.compiler module)\n- **Node.js 24.15.0+** (specified in `.node-version`)\n- **PNPM 11.18.0+** (specified in `package.json`)\n\n**Installation:**\n\n```bash\n# Install PNPM globally\nnpm install -g pnpm@11.18.0\n\n# Install dependencies (always run this first)\npnpm install\n```\n\n## Build & Development Commands\n\n**Frontend (UI) Development:**\n\n```bash\n# Build all UI packages (requires Node 24+)\n./ui/build\n\n# Build specific packages\n./ui/build site analyse lobby\n\n# Watch mode for development\n./ui/build -w\n\n# Production build\n./ui/build -p\n\n# No dependency installation (faster rebuilds)\n./ui/build --no-install\n```\n\n**Backend (Scala) Development:**\n\n```bash\n# Start development console (lila.sh is the SBT wrapper)\n# Automatically copies .sbtopts.default and conf/application.conf.default if missing\n./lila.sh\n\n# In SBT console (via ./lila.sh), compile and run:\nsbt> compile\nsbt> run\n\n# Run with specific JVM options\n./lila.sh -Depoll=true\n\n# Full build with tests and staging\n./lila.sh \"test;stage\"\n```\n\n**Testing & Quality:**\n\n```bash\n# Run all frontend tests (Vitest)\npnpm test\n\n# Watch mode for tests\npnpm test:watch\n\n# Check code formatting (Oxfmt)\npnpm check-format\n\n# Auto-format code\npnpm format\n\n# Lint TypeScript code\npnpm lint\n\n# Auto-fix lint issues\npnpm lint:fix\n\n# Backend formatting check (Scalafmt) - via lila.sh wrapper\n./lila.sh scalafmtCheckAll\n\n# Auto-format Scala code\n./lila.sh scalafmtAll\n```\n\n## Project Architecture\n\n**Module Structure (80+ Scala modules):**\n\n- Modules are in `/modules/[name]/src/main/` with strict dependency hierarchy\n- Core modules: `core`, `common`, `db`, `memo`, `ui`\n- Domain modules: `game`, `user`, `tournament`, `study`, `puzzle`, etc.\n- Build order matters - see `build.sbt` for dependency graph\n\n**Frontend Structure (36 UI packages):**\n\n- `/ui/[package]/` - Individual TypeScript packages\n- `/ui/lib/` - Shared utilities and types\n- `/ui/@types/` - TypeScript definitions\n- `/ui/.build/` - Custom build system with esbuild\n- Each package has `package.json` with custom \"build\" property\n\n**Key Directories:**\n\n- `/app/` - Play Framework controllers, views, main application\n- `/conf/` - Configuration files, routes, application settings\n- `/public/` - Static assets, will contain compiled CSS/JS after build\n- `/bin/` - Utility scripts (deploy, CLI tools, git hooks)\n- `/project/` - SBT build configuration (BuildSettings.scala, Dependencies.scala)\n\n## Common Issues & Solutions\n\n**Node Version Error:** `Nodejs v24.15.0 or later is required`\n\n- Install Node 24.15+ using nvm or package manager\n- Check with: `node -v`\n\n**Java Version Issues:**\n\n- Ensure Java 21 JDK is installed (not JRE)\n- Check: `java --list-modules | grep jdk.compiler`\n- Set JAVA_HOME properly\n\n**Build Failures:**\n\n- Always run `pnpm install` after pulling changes\n- For UI issues: `./ui/build --clean` then rebuild\n- For Scala issues: `sbt clean compile`\n\n**PNPM Workspace Issues:**\n\n- Dependencies use `workspace:*` for internal packages\n- Run `pnpm install` from repository root, not subdirectories\n\n## Development Workflow\n\n**Making Changes:**\n\n1. **Frontend**: Edit files in `/ui/[package]/src/`, run `./ui/build -w` for live reload\n2. **Backend**: Edit `/modules/[name]/src/main/`, use `sbt ~compile` for auto-recompile\n3. **Styles**: Edit `.scss` files, included in UI build process\n4. **Configuration**: Edit `/conf/` files, may require server restart\n\n**Before Committing:**\n\n1. Run `pnpm check-format` and `pnpm lint`\n2. Run `./lila.sh scalafmtCheckAll`\n3. Run `pnpm test` for frontend tests\n4. Consider `./lila.sh test` for affected backend modules (can be slow)\n\n**Utility Scripts:**\n\n- `/bin/deploy` - Production deployment automation\n- `/bin/trans-lint` - Translation validation\n- `/bin/git-hooks/` - Git hooks for formatting/linting\n\n## GitHub Actions & CI\n\n**Workflows validate:**\n\n- **server.yml**: Scala compilation, tests, formatting with Java 21\n- **assets.yml**: UI build, tests, formatting with Node 24+\n- **lint.yml**: Code quality checks\n\n**Deployment:**\n\n- Uses `/bin/deploy` script with workflow artifacts\n- Server builds create `lila-3.0.tar.zst` artifact\n- Asset builds create `assets.tar.zst` artifact\n\n## Key Configuration Files\n\n- **build.sbt**: Main SBT configuration, module definitions\n- **package.json**: Root package with scripts and dependencies\n- **pnpm-workspace.yaml**: Defines workspace packages\n- **ui/.build/**: Custom frontend build system\n- **.scalafmt.conf**: Scala formatting rules\n- **ui/.oxlint.json**: TypeScript formatting rules (Oxlint)\n- **ui/.oxfmt.json**: TypeScript/CSS/JSON/MD formatting rules (Oxfmt)\n- **conf/routes**: HTTP route definitions\n- **conf/application.conf.default**: Main application configuration template\n\n## Development Tips\n\n- **Large codebase**: Use specific module builds rather than full recompilation\n- **Asset compilation**: The `./ui/build` system is sophisticated - study `/ui/README.md` for details\n- **Hot reloading**: Backend changes require manual restart, frontend has watch mode\n- **Module dependencies**: Check `build.sbt` before adding cross-module dependencies\n- **Database**: Uses MongoDB - no migrations, but schema assumptions in code\n- **Performance**: This is a high-traffic production system - consider performance impact\n\n**Trust these instructions** - they are validated and comprehensive. Only search for additional information if these instructions are incomplete or incorrect for your specific task.\n\n<!-- File: llms-full.txt (Tokens: ~300 | Category: root-instruction) -->\n# LLM Full Documentation Context\n\nPath: `llms-full.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms-full.txt)\n\n<!-- File: llms.txt (Tokens: ~300 | Category: root-instruction) -->\n# LLM Index & Context Digest\n\nPath: `llms.txt`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/llms.txt)\n\n<!-- File: PROMPT.md (Tokens: ~300 | Category: root-instruction) -->\n# Core System Prompt & Persona\n\nPath: `PROMPT.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPT.md)\n\n<!-- File: PROMPTS.md (Tokens: ~300 | Category: root-instruction) -->\n# Agent Prompts Catalog\n\nPath: `PROMPTS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/PROMPTS.md)\n\n<!-- File: ROUTING.md (Tokens: ~300 | Category: root-instruction) -->\n# Multi-Agent Routing & Delegation Matrix\n\nPath: `ROUTING.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/ROUTING.md)\n\n<!-- File: RULES.md (Tokens: ~300 | Category: root-instruction) -->\n# Development & Architecture Rules\n\nPath: `RULES.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/RULES.md)\n\n<!-- File: SKILLS.md (Tokens: ~300 | Category: root-instruction) -->\n# Workspace Skills & Capabilities Index\n\nPath: `SKILLS.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SKILLS.md)\n\n<!-- File: SYSTEM.md (Tokens: ~300 | Category: root-instruction) -->\n# System Architecture & Agent Directives\n\nPath: `SYSTEM.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/SYSTEM.md)\n\n<!-- File: .cursorrules (Tokens: ~300 | Category: cursor-rule) -->\n# Cursor IDE Native Rules\n\nPath: `.cursorrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursorrules)\n\n<!-- File: .windsurfrules (Tokens: ~300 | Category: windsurf-rule) -->\n# Windsurf Cascade Agent Rules\n\nPath: `.windsurfrules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.windsurfrules)\n\n<!-- File: .github/copilot-instructions.md (Tokens: ~300 | Category: copilot-instructions) -->\n# GitHub Copilot Instructions\n\nPath: `.github/copilot-instructions.md`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.github/copilot-instructions.md)\n\n<!-- File: .roomodes (Tokens: ~300 | Category: roo-rule) -->\n# Roo Code Custom Persona Modes\n\nPath: `.roomodes`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roomodes)\n\n<!-- File: .roorules (Tokens: ~300 | Category: roo-rule) -->\n# Roo Code Autonomous Agent Rules\n\nPath: `.roorules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.roorules)\n\n<!-- File: .clinerules (Tokens: ~300 | Category: cline-rule) -->\n# Cline Extension Native Directives\n\nPath: `.clinerules`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.clinerules)\n\n<!-- File: .claude-plugin/marketplace.json (Tokens: ~300 | Category: marketplace) -->\n# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/marketplace.json)\n\n<!-- File: marketplace.json (Tokens: ~300 | Category: marketplace) -->\n# Claude Plugin Marketplace Catalog\n\nPath: `marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/marketplace.json)\n\n<!-- File: .claude-plugin/plugin.json (Tokens: ~300 | Category: plugin-manifest) -->\n# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.claude-plugin/plugin.json)\n\n<!-- File: plugin.json (Tokens: ~300 | Category: plugin-manifest) -->\n# Plugin Plugin Manifest\n\nPath: `plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/plugin.json)\n\n<!-- File: .cursor/mcp.json (Tokens: ~300 | Category: mcp-config) -->\n# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/.cursor/mcp.json)\n\n<!-- File: mcp.json (Tokens: ~300 | Category: mcp-config) -->\n# Model Context Protocol (MCP) Configuration\n\nPath: `mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/lichess-org/lila/HEAD/mcp.json)\n</yakaai_skills>"}