Use for \"automate me\", \"create/update/refresh my -mode skill\", \"turn/capture my preferences or working style into a skill\", or wanting agents to follow how the user works. Drafts or revises a personal -mode skill via create-skill + unslop, optionally pulling fresh evidence from recent transcripts.
npx skills add https://github.com/backnotprop/pstack --skill automate-me
A guided flow for turning the user's working conventions into a skill agents will follow. The output is one -mode skill tailored to them (e.g. jay-mode, priya-mode).
This skill orchestrates three others: an inline mining pass (see step 1), your harness's skill-authoring skill (authoring), and the unslop skill (prose discipline). It sequences them. It doesn't replace them.
The skill-authoring skill is create-skill in Cursor (built in) or Anthropic's skill-creator. If you have neither, follow the Agent Skills format at agentskills.io. "create-skill" below means whichever of these you use.
Look recursively for *-mode/SKILL.md matching the user's handle in your harness's skill folders. In the project: .cursor/skills/ (Cursor), .claude/skills/ (Claude Code), .pi/skills/ (Pi), or .agents/skills/ (Codex, OpenCode, and others). For the user: ~/.cursor/skills/, ~/.claude/skills/, ~/.pi/agent/skills/, ~/.codex/skills/, ~/.config/opencode/skills/, or ~/.agents/skills/. Mode skills can live in a personal category directory (<skills>/<handle>/), not only at the top level. If one exists, confirm intent with your structured-question tool (AskQuestion in Cursor, AskUserQuestion in Claude Code, question in OpenCode) unless they already said "update my skill" or similar:
Update mode changes the rest of the flow:
git log -1 --format=%cI <path>).Locate the active workspace's transcripts before fanning out. Use only that workspace's directory. Don't glob across every project's directory. That crosses workspace boundaries and reads private chats from unrelated projects. Where they live depends on your harness:
agent-transcripts/ directory under ~/.cursor/projects/.~/.claude/projects/<slug>/*.jsonl, where <slug> is the workspace path with every character that isn't a letter or digit turned into "-".~/.pi/agent/sessions/--<slug>--/*.jsonl, where <slug> is the workspace path with the leading slash dropped and each "/" turned into "-".~/.codex/sessions/YYYY/MM/DD/rollout-*.jsonl. Keep only files whose first line has payload.cwd equal to the workspace path.Survey recent agent conversations within that scope for recurring patterns. Run multiple parallel subagents across slices of history (e.g. last 2-4 weeks, split into 3 slices so each has enough material). Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the poteto-mode skill. Each slice mining subagent reads transcripts from the workspace-scoped path the parent provides, looks for the signals below, and returns a short structured list of patterns it saw with evidence pointers. Default signals worth hunting:
Cross-check across slices before elevating a signal. Patterns seen in 2+ slices are high-confidence. Lone signals are weak and usually get dropped.
Mining misses intent that hasn't come up yet. Use your structured-question tool (structured multi-choice: AskQuestion in Cursor, AskUserQuestion in Claude Code, question in OpenCode) rather than asking the user to type from scratch. If your harness has none, ask in chat with numbered options.
Shape: one or two questions with 4-6 options each, multi-select (allow_multiple: true in Cursor) for category questions. Start broad ("Which areas matter most?"), then follow up on selected areas with specific options. After the structured rounds, one free-form chat question catches anything the options missed.
Don't dump 20 questions.
Group the combined signals into sections. Common ones (use only what applies):
The poteto-mode skill shows the shape. Read it for granularity. Don't copy its content. The user's rules are not the same as poteto-mode's.
Use your skill-authoring skill (create-skill) to author the skill. Placement:
<skills>/<handle>/<handle>-mode/SKILL.md when the repo has an established personal category for that handle. Otherwise default to <skills>/<handle>-mode/SKILL.md in the project, or the user-level skill folder if the user prefers a personal skill. <skills> is your harness's skill folder from step 0.description: trigger on their name + /<handle>-mode + "work in their style", not on generic keywords like "write code" or "review PR".create-skill's YAML rules. Keep description as one YAML scalar. Quote it or use description: >- with indented continuation lines when punctuation or wrapping requires it.disable-model-invocation: true by default. Opt out only if the user explicitly wants their mode to apply on every turn.Apply the unslop skill and create-skill's writing guidelines to every line.
Show the draft to the user and take feedback. Expect multiple iterations. Cut ruthlessly. A mode skill is not a manual.
Work in a worktree off main. Commit and open a PR. Don't push to main directly.
A -mode skill is subjective output. A create-skill-style test/iterate benchmark loop isn't useful here. Vibe-check with the user: does it read like them? Did it miss anything? Then ship.
Run a description-optimization loop only if the skill's trigger accuracy turns out to be a problem in practice.
create-skill alone, no mining required.Take backnotprop/automate-me from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.