
Implement Pm
Ship only the PM-assigned implementation work on a dedicated git branch after exploring the repo with Serena MCP—without touching PR workflow or task closure.
Overview
Implement PM is an agent skill most often used in Build (also Ship review prep) that implements only the PM-referenced tasks on a dedicated branch after Serena-backed repo study.
Install
npx skills add https://github.com/mvagnon/plan-based-agentic-workflow --skill implement-pmWhat is this skill?
- Hard gate: requires PM system name and exact task IDs before starting
- Creates and pushes branch `{pm-tool}/{task-ids}` and scopes work to implementation only
- Mandatory Serena MCP for semantic exploration, symbols, and references before edits
- Explicitly excludes PR creation, PM backlinks, PR body updates, review workflows, and marking tasks done
- Development rules reference with ordered priority (user → rules → skills → AGENTS.md → local conventions)
- 5-tier rule priority stack before editing
Adoption & trust: 1 installs on skills.sh; trending (+100% hot-view momentum).
What problem does it solve?
You have PM task IDs but need a disciplined agent run that implements them without accidentally owning PRs, reviews, or ticket status updates.
Who is it for?
Teams using plan-based agentic workflows where PM tickets are the source of truth and implementation must stay isolated from release ceremony.
Skip if: Requests missing PM system name or task IDs, one-off fixes without ticket linkage, or flows where you want the agent to open PRs and close tasks in the same session.
When should I use this skill?
Request provides both required inputs: PM system name and exact task IDs.
What do I get? / Deliverables
A pushed implementation branch scoped to the referenced PM tasks, with codebase changes informed by Serena exploration and governed dev rules—hand off PR/review skills separately when ready.
- Pushed git branch `{pm-tool}/{task-ids}` with PM-scoped implementation commits
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Build → PM because the skill’s contract is to execute named PM tasks into code on a `{pm-tool}/{task-ids}` branch. Subphase pm fits ticket-driven implementation that assumes PM inputs (system name + exact task IDs) already exist.
Where it fits
Pull three Linear task IDs and land the feature changes on `linear/ENG-101-102` without opening a PR yet.
After PM hands off API contract tasks, explore existing handlers with Serena before adding endpoints.
Finish implementation on the PM branch so a separate review-pr skill can judge architecture against the same dev rules.
How it compares
Use as a narrow implementation executor instead of a full “ticket-to-merge” super-skill that also runs review and PM updates.
Common Questions / FAQ
Who is implement-pm for?
Solo and indie builders (and small teams) who route coding work from a PM system and want branch-scoped implementation with semantic repo analysis via Serena MCP.
When should I use implement-pm?
During Build when you have both required inputs; also useful in Ship prep when you need code landed on `{pm-tool}/{task-ids}` before a separate review-pr pass.
Is implement-pm safe to install?
It expects MCP (Serena), git push, and filesystem edits—review the Security Audits panel on this page and confirm branch/remote policies before granting access.
SKILL.md
READMESKILL.md - Implement Pm
interface: display_name: "Implement PM" short_description: "Implement PM tasks from required PM inputs." default_prompt: "Use this skill when the request provides both required inputs: PM system name and exact task IDs. The skill creates and pushes branch {pm-tool}/{task-ids}, retrieves the referenced PM tasks, studies the repository with Serena MCP, and focuses only on implementation. It does not create PRs, write PM backlinks, update PR bodies, run review workflows, or mark PM tasks done." dependencies: tools: - type: "mcp" value: "serena" description: "Required semantic code exploration and symbol/reference analysis." policy: allow_implicit_invocation: true # Development Rules Reference Use this reference during `implement-pm` before editing, and during `review-pr` before judging architecture, reuse, testing, or maintainability. ## Priority Apply rules in this order: 1. Explicit user instructions for the current task. 2. These development rules. 3. Loaded skills. 4. Governing project instruction files such as `AGENTS.md`, `CLAUDE.md`, and `GEMINI.md`. 5. Local code conventions inferred from folders, imports, naming, and nearby implementations. When rules conflict in a way that changes implementation or review outcome, surface the conflict instead of silently choosing. ## Before Editing - Load governing project instruction files. - Use Serena to inspect the affected code path. - Before adding any component, hook, utility, type, schema, decorator, service, or abstraction, search for an existing equivalent. - Reuse existing schemas, DTOs, types, constants, validators, services, hooks, repositories, components, layout primitives, tokens, variants, icons, spacing, typography, and colors. - If an existing owner is close but incomplete, extend, compose, or refactor it instead of creating a parallel implementation. ## Implementation Rules - Keep changes focused on the PM task and avoid unrelated rewrites. - Keep business rules in one place. Extract repeated conditions, transformations, validation, permission checks, formatting rules, and workflows. - Follow existing data-fetching, validation, typing, component, backend, security, and error-handling patterns. - Keep handlers/controllers thin, validate inputs at boundaries, never trust client-provided data, and enforce authorization on the server side. - Do not add dependencies, hidden behavior, broad abstractions, broad refactors, logs, or tests by default. - Keep code simple, explicit, consistently named, strictly typed where useful, and free of dead code. ## Frontend Adaptation - Consume APIs through the existing data layer. If the project uses TanStack Query, components use custom hooks, hooks use Query, and raw network calls stay in client/API functions. - Use skeletons for initial async data display and spinners for user-triggered async actions. - Disable duplicate unsafe actions while pending and surface errors intentionally. - Keep meaningful components in separate files and prefer variants over near-duplicate components. - Reuse design-system primitives before local styling. ## Tests - Do not create new tests by default during implementation. - Update existing tests only when directly affected by the implementation. - If test creation is explicitly requested, prefer the dedicated journey-test workflow from `write-tests` instead of writing narrow feature-level tests inside `implement-pm`. - Install that workflow when needed: ```bash npx skills add mvagnon/skills --skill write-tests ``` ## Before Finishing - Run relevant existing checks discovered from the repository. - Review the diff for scope, duplication, dead code, inconsistent naming, missed reuse, and regressions. - Update README files only when setup, commands, environment variables, architecture, or project conventions changed. - Commit only task-related changes with the repository commit-message convention. # Implementation Git Reference Use this reference for technical