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 the authoring-a-skill playbook + unslop, optionally pulling fresh evidence from recent threads.
npx skills add https://github.com/uzairansaruzi/p3-stack --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), the authoring-a-skill playbook (authoring), and the unslop skill (prose discipline). It sequences them. It doesn't replace them.
Look recursively for .agents/skills/**/*-mode/SKILL.md and ~/.agents/skills/*-mode/SKILL.md matching the user's handle. Mode skills can live in a personal category directory (.agents/skills/<handle>/), not only at the top level. If one exists, confirm intent by asking in the thread (unless they already said "update my skill" or similar):
Update mode changes the rest of the flow:
git log -1 --format=%cI <path>).Scope the mining to the current project before fanning out. Use t3_thread_search and t3_thread_read on this project's threads only. Don't read threads from other projects. That crosses project boundaries and reads private chats from unrelated work.
Survey recent threads within that scope for recurring patterns. Run multiple parallel delegate_task briefs (mode: "async") across slices of history (e.g. last 2-4 weeks, split into 3 slices so each has enough material). Every brief stands alone: child agents get only the brief, never the parent's context. Each brief names the project, its slice, and the signals below; says read-only, inspect only, no writes; and asks for a short structured list of patterns seen with thread pointers. Drain with task_status. 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. Ask in the thread with short multi-choice questions rather than asking the user to type from scratch.
Shape: one or two questions with 4-6 options each, multi-select 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 question catches anything the options missed.
Don't dump 20 questions.
Group the combined signals into sections. Common ones (use only what applies):
The p3-mode skill shows the shape. Read it for granularity. Don't copy its content. The user's rules are not the same as p3-mode's.
Use the authoring-a-skill playbook to author the skill. Placement:
.agents/skills/<handle>/<handle>-mode/SKILL.md when the repo has an established personal category for that handle. Otherwise default to .agents/skills/<handle>-mode/SKILL.md in the project (or ~/.agents/skills/<handle>-mode/ if the user prefers a personal skill).description: trigger on their name + /<handle>-mode + "work in their style", not on generic keywords like "write code" or "review PR".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 the playbook'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 test/iterate benchmark loop isn't useful here. Vibe-check with the user: does it read like them? Did it miss anything? Then ship. Optimize the description only if trigger accuracy turns out to be a problem in practice.
authoring-a-skill playbook alone, no mining required.Take uzairansaruzi/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.