mattpocock-skills
claudeMatt Pocock's agent skills for real engineering (grilling, spec/ticket flows, TDD, code review, domain modelling and more).
39 skills
Overpowered Claude Code talents to power level your software architecture.
Plugin talents from marketplace talent-tree in heyJordanParker/dotfiles. Commands read from the repo's manifest — yesterday.
This plugin runs code on your machine — its hooks fire automatically on events like tool use. The exact commands are listed below; read them before installing.
analyze-voiceBuilds a Voice.md profile from a writer's existing samples — reverse-engineers the patterns that make their copy sound like them, then writes a structured, reusable profile the rest of the team applies at write time. TRIGGER when asked to capture, define, or learn a voice, build or regenerate a Voic
big-ideaFind the BIG IDEA of a piece — the one fresh, charged idea the whole thing hangs on, spiky enough that the reader stops and feels it. TRIGGER when a piece needs its core idea found or sharpened, when a draft reads as flat or generic, or when a headline or angle has no single idea underneath it. DO N
browseRead one web page for research — a plain-HTTP fetch that passes bot walls headless browsers cannot, cleaned to its main content, cached, and recorded in the source registry. TRIGGER when a research or review step needs a page's text. DO NOT TRIGGER to screenshot a page or drive an interactive surfac
buyer-reviewRead the piece AS the product's owner-approved buyer — believable, valuable, would they pay. Belief lives here. TRIGGER when a draft needs the buyer's reaction, a believability read, or when the Buyer Reviewer loads it for the review-as-a-buyer stage. DO NOT TRIGGER for whether a claim is technicall
check-ai-writingThe sole de-slop pass — AI tells, metaphors and metaphorical verbs, synthetic cadence, template smell, and the additive distinctiveness check. Anything whose cause is genericness. TRIGGER when de-slopping a draft, hunting AI tells or generic SaaS phrasing, or when the editor loads it for the check-f
no-ai-slopEdit drafts into sharper, more human writing while preserving the writer's personal voice, or detect AI-slop patterns without rewriting. Use when the user wants a draft clearer, more direct, more opinionated, or less AI-sounding, or asks whether writing reads as AI.
check-claimsTrace every claim in a piece to a research record or a product fact — proof presence lives here. Unsourced claims are listed, never shipped, never auto-killed; they escalate to the chief. TRIGGER when fact-checking a draft, verifying claims and proof, or when the Fact Checker loads it for the check-
check-realityAttack whether the market, buyer, problem, and language a research or strategy artifact claims actually EXIST — the reality-attack pass. Not improvement, destruction of fabricated reality. Every item gets a 1-to-100 existence-confidence rating with reasoning, default low; internal coherence is not e
check-strategyJudge whether the piece's argument holds — right buyer at the right awareness and sophistication, sections answering the buyer's real questions in a real order, and nothing starring that shouldn't lead. A strategic judgment gate argued from the buyer's perspective, not a checklist. Findings block. T
check-structureThe between-sections pass — coherence, the seams between parts, the skim layer (the title chain alone tells the story), structural repetition, and set-level continuity across a multi-piece deliverable. Returns findings and suggested edits; the writer folds them in. Never mutates the draft. TRIGGER w
cold-readReact blank-slate to one piece of material — a single sentence or idea — as a cold reader who knows only WHO they are, and answer ONE question the initiator asked. Advisory, transient, never a kill vote. TRIGGER when an initiator wants a cold buyer's reaction to one bare sentence or idea to inform a
copywritingThe shared direct-response craft model — the awareness/sophistication axes, message-to-market match, persuasion structures, proof and cognitive levers, the offer-and-position frame, and the fascination — that the planning and writing skills draw on. TRIGGER when a decision needs the craft model behi
cro-reviewAudit the action path — CTA presence, position, and size, competing actions, form friction, and ad-to-page continuity. TRIGGER when checking whether a piece drives one clear action, or when the Conversion Reviewer loads it for the check-calls-to-action-and-friction stage. DO NOT TRIGGER for whether
curate-researchAfter a research thread completes, lift its durable knowledge into the wiki as readable prose. Read only that thread's research folder, select the lasting facts about a company, a market, a person, or a source, write them into the owning wiki topics, and report what was filed and what was left trans
discover-audienceBuyer discovery — run the discover pass on the audience axis: who the people the product serves are (self-names observed with citations) and where they talk about their own situation in public. TRIGGER when the market thread needs its buyer groups and sources enumerated before any one is mined. DO N
discover-competitorsCompetitor discovery — run the discover pass on the competitor axis: everyone competing for this buyer's money, drawn two ways (same-problem and same-audience). TRIGGER when the competitor thread needs its set enumerated before any one is studied. DO NOT TRIGGER to study one competitor's own surface
discover-marketThe market axis of the broad pass — sweep a domain wide for its visible structure: the segments, the ways money moves in the category, how people buy, and the observable sizes and spend, one line per entry with where it was observed. TRIGGER when a thread needs the domain's market structure enumerat
discover-problemsThe problems axis of the broad pass — sweep a domain wide for the problems people voice, each in the speakers' own words with where it was voiced, one line per entry. TRIGGER when a thread needs the domain's voiced problems enumerated before any one is mined. DO NOT TRIGGER to mine one group's langu
discoverThe broad pass of a research thread — take one subject, sweep wide, and return long lists of what exists with one line of observed context per entry, into research/<subject>/discovery/. Enumeration, never judgment. TRIGGER when a thread needs its field enumerated before any one entry is studied, or
draft-offersBuild offer OPTIONS — the pure invitation to buy: outcome, deliverables, exchange, risk reversal, proof burden — from the buyer's problems and evidence, drawing on product facts as the material, as proposals for the owner to pick. TRIGGER when a job touches the offer and needs options built. DO NOT
dreamConsolidate the knowledge wiki — revisit journaled topics, fold repeated findings into each topic's Claude.md, surface contradictions, keep cross-links true. TRIGGER on a scheduled pass or when a topic tree has grown messy or redundant. DO NOT TRIGGER to file fresh session material (that is journal)
edit-sentencesThe within-sentence quality pass — clarity, economy, active voice, rhythm, plain words, positive form, modifier placement. Returns findings and suggested edits; the writer folds them in. Never mutates the draft. TRIGGER when tightening, proofing, or line-editing a draft's sentences, or when the Edit
extractPull the problem quotes and on-subject facts out of ONE cached page against a named subject — verbatim quotes where a real person voices a problem, plus the concrete facts, praise and features skipped. TRIGGER when the assistant is handed one page to extract. DO NOT TRIGGER to enumerate a field (dis
gifPick the reaction GIF that lands an emotion by taking one of the most popular matches on Giphy — the one the reader has already seen, so the association is built. TRIGGER when a piece calls for a reaction or emotion GIF (a win-back or onboarding email, an X or LinkedIn post, a blog post) and you nee
gradingThe profile-wide grading standard — nothing is true/false; every claim, problem, buyer, offer, and strategy carries an EVIDENCE rating from 1 to 100 COMPUTED from countable evidence by the published rubric, arithmetic shown, with measurement contracts for market claims. Every rating rides to the own
ideateFan wide takes on ONE thing — an offer, a Mechanism, a big idea, a hero, an angle, a name — then refute, iterate, and return 3–5 survivors that stood criticism for the owner's pick. The shared idea process every option set runs. TRIGGER when one decision point wants a set of real options instead of
journalFile a session's loose material into the knowledge wiki — each capture into its owning topic folder, the topic's Claude.md kept current. TRIGGER after a session hands you loose captures (notes, clippings, findings, screenshots) that need a home in the wiki. DO NOT TRIGGER to gather new research, or
judge-researchTurn a completed research phase into the four judged root files — read the research records and write Buyers.md, Competitors.md, Problems.md, and Statistics.md, each entry a 1-to-100 rating with its arithmetic, reasoning, and record citations. TRIGGER when research records are ready to be rated into
learnTurn a session's owner input into system updates — classify each thing he said, then route only what earns persistence to its one home. TRIGGER before updating any skill, agent, or record from the owner's session input, or after a session rich in his feedback. DO NOT TRIGGER to write a known ruling
market-researchRun the market-research phase for one workspace — sweep every research axis wide, then mine the entries that surfaced into records, closing each thread and the phase under review. Produces the research/ tree the strategy phase later judges. TRIGGER when a workspace needs its market evidence gathered
mechanismFind the most effective way to present the product's Process — the named Mechanism that makes the offer feel different from every other claim in the category. TRIGGER when a piece or offer needs its distinctive Mechanism named or sharpened. DO NOT TRIGGER to build the whole offer (draft-offers), to
name-thingsName ONE thing the market will see — a mechanism, a system, a method, a product, an offer — as a set of tested name options for the owner's pick. TRIGGER when a mechanism, offer, or product needs its market-facing name. DO NOT TRIGGER to name code identifiers or files (naming), to find the piece's c
plan-copyRun the strategy stage for one project — re-derive the project's own judged buyers, problems, and statistics from the original research records, build multiple high-level strategies the owner picks among, fan the options inside the picked strategy, then write the three plan files (Reader.md, Brief.m
product-researchRun the product-research phase for one workspace — mine the product's own artifacts into the three copy-shaped files a writer uses, on a channel isolated from market research. TRIGGER when the owner cannot supply the product facts and a workspace needs them before strategy or writing. DO NOT TRIGGER
record-decisionWrite an owner ruling into the one home that owns it — his words verbatim, never restated. TRIGGER when the owner rules on a copy question and the ruling must persist, or when he states or corrects a business fact a flat fact file owns. DO NOT TRIGGER to record a within-job note (that lives with the
research-audienceThe audience axis of the deep pass — mine ONE group deep across its venues for how it talks and what it already pays for, verbatim with URLs and dates, into the group's records. TRIGGER when one discovered group needs its language and spend mined. DO NOT TRIGGER to enumerate groups and venues broad
research-competitorOrchestrate one competitor's research thread — dispatch single-task agents to capture its landing page, its user reviews, the problems it solves, the market it serves, and its offer, all from its own surfaces — into the competitor thread. TRIGGER when one named competitor needs its thread researched
research-google-adsRun the research pass on one competitor's Google paid creative — its ads from the Google Ads Transparency Center, literal quoted hooks and claims with run dates — into the competitor thread. TRIGGER when a job needs a competitor's Search, Display, or YouTube ads captured. DO NOT TRIGGER for Meta ads
research-marketThe market axis of the deep pass — mine ONE part of the market's structure deep from primary sources: how money moves in that segment, how people buy, and the observable sizes and spend, verbatim with URLs and dates. TRIGGER when one discovered part of the market structure needs its records extracte
research-meta-adsRun the research pass on one competitor's Meta paid creative — its live and past ads from the Meta Ad Library, literal quoted hooks and claims with run dates — into the competitor thread. TRIGGER when a job needs a competitor's Facebook or Instagram ads captured. DO NOT TRIGGER for Google ads (resea
research-problemRun the research pass on one problem — where it lives, whose words voice it, what the failure cost, the SHAPE of help sought or bought, and who circles it — into the market thread. TRIGGER when one problem needs its buyer language mined deep. DO NOT TRIGGER to enumerate the field (discover-audience)
research-productRun the research pass on the product — mine its own artifacts and organize them into the three copy-shaped files a writer uses: the problems it solves, its features with their user-visible outcomes, and the step-by-step processes it runs, boundaries woven per feature, observed app behavior ranked ov
research-threadOrchestrate ONE research thread end to end — take the dispatched kind (discover or research) and subject, run the axis's pass with one assistant per search or page, file the results, and close under review. TRIGGER when the researcher is handed one thread to run. DO NOT TRIGGER to sweep one field yo
research-tiktok-adsRun the research pass on one competitor's TikTok paid creative — its ads from the TikTok Commercial Content Library, literal quoted hooks and claims with run dates — into the competitor thread. TRIGGER when a job needs a competitor's TikTok ads captured. DO NOT TRIGGER for Meta ads (research-meta-ad
researchThe deep pass of a research thread — take one subject, mine it deep, and write verbatim records into research/<subject>/<topic>.md with full citations. Records only, never judgment. TRIGGER when one discovered entry needs its records extracted, or when a research specialization names this as its Pro
review-copyRun a review round on a deliverable — dispatch the applicable checks in parallel, collect findings, and drive the iteration to clean. TRIGGER when a draft or a set is ready for its checks, or when the chief runs a review round. DO NOT TRIGGER to run one check in isolation (the individual check skill
review-designReview the built design against the plan's argument — hierarchy matches, and nothing hides or fights the copy. Owns rendered action visibility. TRIGGER when a rendered design exists and needs checking against the copy's argument, or when the Designer loads it for the check-the-design stage. DO NOT T
review-researchThe research-phase review — read the assembled research against the research SOP and return a per-thread verdict of pass or return-for-re-execution with the named gap. TRIGGER when the chief closes the research phase and needs the assembled threads reviewed before the judged files are written. DO NO
review-sourceReview ONE research URL for trustworthiness and usefulness (each 1-100) and record its facts into the sources registry — one judgment per URL, reasoning stated. TRIGGER when the source reviewer sweeps an unjudged URL the registry holds. DO NOT TRIGGER to locate sources (discover-audience) or to extr
reviseThe writer's own draft loop — draft from the plan, fold findings to locally clean, then answer a review round's blocking findings; a rejected draft is never a seed. TRIGGER when a writer folds findings into their draft, in the local production loop before review or on a review round's blocking findi
screenshotCapture a full-page screenshot of a web page through agent-browser, session closed in the same step. TRIGGER when a research or review step needs a page captured as an image — a competitor's landing page, a rendered design. DO NOT TRIGGER to read a page's text (browse) or to score a source (review-s
setupInitialize a product's workspace — interview the owner for the owner-fact files and the product folder, and scaffold the folder the system works in. TRIGGER when a product has no workspace yet, or a new product enters the system. DO NOT TRIGGER to scaffold one deliverable inside an existing workspac
startScaffold one project folder inside a product's workspace — a page or a campaign, with its re-derived judged files, strategy folder, plan-file placeholders, and working layout. TRIGGER when a new page or campaign enters an existing workspace. DO NOT TRIGGER to initialize the whole product workspace (
strategyRun the strategy phase for one project — re-derive its judged files from the research records, build the offer, mechanism, and big-idea options, recombine them into MULTIPLE rated strategies the owner picks among, and attack each for construction and reality. Produces the three plan files the writer
wikiUse the knowledge wiki — find its root, search before reading, read a topic and its Claude.md, reference material by relative path, re-index after writing. TRIGGER whenever a task needs something the wiki might hold, or writes anything into it. DO NOT TRIGGER to file a session's loose captures (that
write-adsWrite a paid ad — the hook and body that earn the click and set the promise the landing page must keep. Owns the ad's own hook; loads one platform reference per invocation. TRIGGER when a piece is a paid placement (a Meta or Google ad). DO NOT TRIGGER for an organic feed post with no paid placement
write-catalog-pageWrite a catalog page — a page that lists several offers, products, or pages and routes each reader to the right one, rather than closing a single thing. Titles first, then the sections. TRIGGER when a page's job is to present a set and route (a home at the root domain that catalogs offers, a browse
write-emailsWrite email — the subject, preheader, first line, body, and P.S., one job and one CTA per email. Loads one reference for the email's kind. TRIGGER when a piece is an email (a single broadcast, a lifecycle sequence, or a launch sequence). DO NOT TRIGGER for a page (the write-page skills), a paid ad (
write-headlinesWrite the headline unit — the hero headline, a standalone headline, its subhead, and its CTA line — matched to the reader's awareness stage. TRIGGER when the headline unit of a page, ad, section, or email is needed as a unit, or when a gate found a headline failure. DO NOT TRIGGER for the line right
write-hooksWrite the hook — the line right after the headline that wins the read (the first line of body, the second line of an ad, the opening sentence of an email). TRIGGER when the headline is set and the line that pays it off is needed, or when a gate found a hook failure. DO NOT TRIGGER for the headline i
write-leadsWrite the lead — the opening passage (first 10-20% of a piece) that earns the rest of the read, in the lead type the reader's awareness stage calls for. TRIGGER when a page, email, or long-form piece needs its opening passage written, or when a gate found a lead failure. DO NOT TRIGGER for the singl
write-optin-pageWrite an opt-in page — a page that sells the opt-in itself, trading one specific free thing for an email and doing nothing else. Titles first, then the sections. TRIGGER when a page's job is to grow a list by trading for a lead magnet. DO NOT TRIGGER for a page that closes a paid offer (write-sales-
write-sales-pageWrite a sales page — one long-scroll page that sells ONE thing. Titles first (the full title chain designed before any body), then the sections under it. TRIGGER when a page's job is to close one offer in a single scroll. DO NOT TRIGGER for a page that trades for an email (write-optin-page), a page
write-social-postsWrite an organic social post in one of seven formats — tweet, thread, LinkedIn post, carousel, image post, story, or reel — written native to its feed, where the conversion is attention itself. TRIGGER when a piece is organic content in a space you do not own. DO NOT TRIGGER for a paid ad (write-ads
write-storyWrite a narrative component — a founder origin, a customer story, a before-after, a case study told as a story — built only from captured evidence, delivered to the piece's writer. TRIGGER when a piece needs a story that carries the one belief shift, or a narrative proof block. DO NOT TRIGGER to wri
write-video-scriptWrite a content video script — a YouTube or educational video that earns and holds attention and delivers value, where the conversion is the watch, the subscribe, or a soft next step, not a closed sale. TRIGGER when a piece is a content video script. DO NOT TRIGGER for a sales video that closes one
write-vslWrite a VSL — the spoken script behind a demo or video sales letter that carries a page's selling argument aloud and hands the viewer to the page's CTA. TRIGGER when a piece is a sales video script that sells one offer. DO NOT TRIGGER for a content video (YouTube, educational) that does not close an
writeRun the production phase for one project — draft each asset from its plan with the fitting write skill, drive it through the review loop to convergence, and hand version picks to the owner. Produces the finished copy. TRIGGER when a project's plan files are set and the copy is ready to be written. D
${CLAUDE_PLUGIN_ROOT}/hooks/block-git-revert.sh
${CLAUDE_PLUGIN_ROOT}/hooks/block-unsafe-delete.sh
${CLAUDE_PLUGIN_ROOT}/hooks/sync-shaping.sh
Matt Pocock's agent skills for real engineering (grilling, spec/ticket flows, TDD, code review, domain modelling and more).
39 skills
Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques
15 skills · hooks
AI-powered codebase understanding — analyze, visualize, and explain any project
9 skills · 10 agents · hooks
Editorial diagrams in your brand, as self-contained HTML and SVG. Architecture, flowcharts, sequence, state machines, ER and database schemas, timelines, swimlanes, org charts, Gantt, Wardley maps, user journeys, service blueprints, UML class, lifecycle phase maps, and charts from bar, line and scatter to Sankey, treemap and heatmap, plus many more. Redraws draw.io, Mermaid, Excalidraw and PlantUML files. Exports SVG and PNG.
1 skill · 7 commands
Reliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer
8 skills · 1 MCP server
Automates browser interactions for web testing, form filling, screenshots, and data extraction
12 skills
This page updates itself from your repo. Add the badge to your README, or get it Featured to pin it above the organic results with a followed link to your site.