darkwatch/CLAUDE.md

1.6 KiB

Darkwatch — Claude Code Instructions

Permissions

All tool uses are pre-approved for this project. No confirmation needed for:

  • Reading, writing, or editing any file in this project
  • Running bash commands (npm, git, docker, curl, lsof, kill, pkill, etc.)
  • Spawning subagents
  • Searching files (Glob, Grep)

Project Overview

This is Darkwatch, a real-time session manager for the Shadowdark TTRPG.

  • Client: client/ — React + Vite + TypeScript + CSS Modules
  • Server: server/ — Express + Socket.IO + MariaDB (mysql2/promise)
  • DB: MariaDB 11 in Docker (darkwatch-maria container, port 3307)
  • Worktrees: .worktrees/ (gitignored)
  • Roadmap: docs/ROADMAP.md

Important Rules

  • NEVER touch the mysql Docker container — only darkwatch-* containers
  • DB port is 3307 (not 3306) to avoid conflicts
  • Local git repo only — commits are fine, NEVER push
  • All imports use .js extensions (ES modules)
  • Dev seed accounts: dm@darkwatch.test / player@darkwatch.test (password: password)

Project Skills

Project-local skills live in .claude/skills/. Invoke them by asking Claude to "use the [skill name] skill" or by reading the skill file directly.

Skill File When to use
update-changelog .claude/skills/update-changelog.md After a feature ships, bug is fixed, or feature is removed
update-handbook .claude/skills/update-handbook.md After a feature is added, changed, or removed
update-brochure .claude/skills/update-brochure.md After a feature is added, changed, or removed — keeps the site current