# Claude Shorthand Cheat-Sheet ## Core Operators | Pattern | Meaning | Example | |---------|---------|---------| | `→` | then (sequential) | `ssh pve173 → zpool status` | | `+` | and (parallel) | `check caddy + check pihole` | | `X ? Y : Z` | if X then Y else Z | `port open ? connect : debug` | | `!X` | don't / skip | `!error handling` | | `w/` | with | `py script w/ argparse` | | `@` | at path/location | `new config @ /etc/caddy/` | | `re:` | regarding | `fix re: tank degraded drive` | | `=` | set/assign | `port=3000, lang=python` | | `~` | approximately / like | `~50 lines, ~yesterday` | | `>>` | output to / save to | `results >> /tmp/report.txt` | | `<-` | from / source | `data <- freshrss API` | ## Spec Block (complex tasks) ``` feat: - lang: - deps: - in: - out: - !: ``` ## Examples ### Verbose → Compressed **Service setup:** ``` # Before (~80 tokens): "Please create a new Python service in the printer-automation directory that connects to the FreshRSS API, fetches today's articles, formats them for the receipt printer, and runs as a systemd service" # After (~20 tokens): feat: daily print @ printer-automation/ - freshrss API → format → receipt printer - systemd service ``` **Infra task:** ``` # Before (~50 tokens): "SSH into pve173, check if any drives in the tank pool are degraded, and if so tell me which ones need replacement" # After (~12 tokens): pve173 → tank degraded drives? → list replacements ``` **Multi-step:** ``` # Before (~60 tokens): "First read the Caddyfile, then add a new reverse proxy entry for wiki.sethpc.xyz pointing to 192.168.0.160 port 3000, and also add it to the Pi-hole DNS" # After (~15 tokens): add wiki.sethpc.xyz → .160:3000 to caddy + pihole ``` **Conditional:** ``` # Before (~45 tokens): "Check if ollama is running on pve197. If it is, test the qwen model. If it's not running, start it first then test." # After (~15 tokens): pve197: ollama running ? test qwen : start → test ``` ## Anchors (use known names) | Say | Not | |-----|-----| | `pve173` | "the PowerEdge node at 192.168.0.173" | | `tank` | "the ZFS pool on node-173" | | `caddy` | "the reverse proxy in CT 600" | | `pihole` | "the DNS server at 192.168.0.153" | | `steel141` | "this machine, my gaming PC" | | `ollama` | "the LLM inference service" | ## Quick Rules 1. Drop articles (a, the, an) — Claude doesn't need them 2. Drop politeness (please, could you, I'd like) — zero effect on output 3. Use aliases from CLAUDE.md — they're shared vocabulary 4. Bullets > paragraphs — less ambiguous, fewer tokens 5. Imply obvious steps — "add X to caddy" implies read/edit/save