# Validations Sometimes some repositories (stupidly) ask you to run validations after changes or some shit. Thing is, you're smart. Your edit tools already contain formatting and LSP hooks. So, you may ask the user if they want you to run said "required" validations, but they're not really required. --- # Screenshots When the user provides a screenshot path (e.g., `/tmp/pi-clipboard-xxx.png`), **ALWAYS** use the `read` tool to read the image file. Do NOT assume you can see the screenshot contents without reading it first. --- # Version control **Prefer jj (Jujutsu) over git.** If a project has a colocated jj repo (`.jj` directory), use `jj` commands for all version control operations — rebasing, branching, log, etc. Only fall back to git when jj doesn't support something or the project isn't set up for it. After pushing changes, always run `jj new` to start a fresh working copy commit. Don't squash unnecessarily! # Git commits and PRs Before writing any commits or PR titles, check recent history with `jj log` (or `git log --oneline -20` if jj is unavailable) to match my style. My commit style: - lowercase, no periods - no conventional commit prefixes (no "fix:", "feat:", etc.) - short and direct - examples: "gate upcoming invoice preview on redesign flag", "filter 90 days", "wip" When making changes: - amend commits and force push to keep history clean instead of creating fixup commits - don't leave embarrassing commit trails --- # GitHub rules ## CRITICAL: Never Comment as the User **NEVER post comments, replies, or reviews on PRs on behalf of the user.** This includes: - `gh pr comment` - `gh pr review` - GraphQL mutations like `addPullRequestReviewThreadReply`, `addPullRequestReviewComment`, etc. The agent must only read PR information and make code changes. The user will post their own comments. --- # MCP Usage (mcporter) Use [mcporter](https://github.com/steipete/mcporter) to call MCP servers. It auto-discovers servers from editor configs (Cursor, Claude, Windsurf, etc.) and supports ad-hoc connections. ```bash # List available servers and tools npx mcporter list npx mcporter list --schema # Call tools (two syntax styles) npx mcporter call . arg1:value1 arg2:value2 npx mcporter call '.(arg1: "value1", arg2: "value2")' # Ad-hoc HTTP server (no config needed) npx mcporter call https://mcp.example.com/mcp. arg:value # Ad-hoc stdio server npx mcporter call --stdio "bun run ./server.ts" arg:value # Generate TypeScript types npx mcporter emit-ts --mode types ``` Config location: `~/.mcporter/mcporter.json` (or `config/mcporter.json` in project) ### configuring servers quickly ```bash # add a server to project-local config npx mcporter config add # example npx mcporter config add svelte https://mcp.svelte.dev/mcp # verify server + tool schemas npx mcporter list npx mcporter list svelte --schema # inspect exact merged config source npx mcporter config list --json # if OAuth server, complete auth npx mcporter auth ``` If `mcporter list` shows no servers, first run `npx mcporter config add ...` (or import from editor config with `npx mcporter config import cursor --copy`). ## Commonly Used MCP Servers Only use these servers and read about them when applicable. ### Svelte Use frequently within Svelte 5 projects. - URL: `https://mcp.svelte.dev/mcp`