# Claude Assistant Guidelines This document contains guidelines for Claude when working on this project. ## Git Workflow ### Commits and Pushes **IMPORTANT: Never commit or push without explicit user approval.** When changes are ready to be committed: 1. Make the code changes 2. Show the user what will be committed (git status/diff) 3. **Wait for explicit approval** from the user before running `git commit` and `git push` 4. Only proceed with commits when the user says "commit and push" or similar ### Commit Message Format Use the following format for commit messages: ``` - Detail 1 - Detail 2 Co-Authored-By: Claude Sonnet 4.5 ``` ## Project Structure This is a monorepo containing: - **haos-integration**: Home Assistant custom integration (submodule) - **media-server**: FastAPI media server (submodule) ### Submodule Workflow When making changes: 1. Commit changes in the submodule first 2. Push the submodule 3. Update the main repo to reference the new submodule commit 4. Commit and push the main repo ## Code Style - Follow existing code patterns - Add comprehensive documentation for new features - Update README files when adding new functionality - Include examples in documentation ## Testing - Test changes locally before committing - Verify server restarts successfully after changes - Check integration compatibility with Home Assistant ## Server Restart After making changes to the backend (Python files), restart the media server to apply them. Frontend-only changes (CSS, HTML, JS) are served as static files and only require a browser hard-refresh (Ctrl+Shift+R).