prompt-mirror
Installation
SKILL.md
prompt-mirror
A coach that reads only your own session history. The extraction runs on your machine. It separates what you typed from the far larger volume of agent, autopilot and scheduled traffic, scores how you direct agents (length, steering, polling, repeated corrections, missing done-when and stop conditions, stuck loops, fan-out), and returns three concrete suggestions using your own messages as the before. It may draft instruction or skill changes; it never applies them. Applying is steer-once's job.
When to use
- On demand: "how am I prompting", "coach me", "what do I keep correcting", "self-retro".
- Weekly, as a local session automation on your own machine.
- After a run where you typed "still broken", "status?" or "why did you stop" more than twice.
Do not use it to evaluate someone else, to rank teammates, or from a cloud automation. Cloud runners cannot and should not read local session state.
Privacy rules (non-negotiable defaults; each is also a dial)
- Extraction is local. Analysis goes through your model. The script reads
~/.copilot(or$COPILOT_HOME) and writes to~/.copilot/prompt-mirror/<date>/with0700/0600permissions, and nothing it writes is uploaded. But any redacted sample Copilot reads to score you goes to your configured model service, same as anything else in chat. So before reading message text, ask once: "Read redacted samples (they go to your model service), or numbers only?" Numbers only means--no-text: build the scorecard from counts, and skip the sample reads in steps 3 and 5 and the before/after quotes. Never paste history into an issue, PR, gist, cloud agent or automation. - Quote sparingly. At most one quote per suggestion, at most 25 words, redacted, and only from the "before" side.
- Never quote messages flagged
heatedorsensitive(profanity, HR, performance reviews, compensation, health, legal). Use aggregate counts only. - Redact before display: secrets and tokens, emails, URLs, home paths,
@handles, UUIDs and long hex, plus every term in the user's--redact-termsfile (people, codenames, internal hosts). Never show session IDs beyond an 8-character prefix, and never in anything shared. - Anything leaving the machine (for example a steer-once PR) is re-shown to the user first, as the exact text that will be published.