patcher
Project-scoped agent guidance for Patcher repository development.
Install
mkdir -p .claude/skills/patcher && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/10159" && unzip -o skill.zip -d .claude/skills/patcher && rm skill.zipInstalls to .claude/skills/patcher
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Routing and tooling guide for development work in the Patcher repository (Angular 21 + RxJS + Supabase synth-rack app). Use this skill when the user asks for non-trivial dev work — planning, implementing components/services, reviewing changes, refactoring, writing tests, polishing UI, or diagnosing bugs. Points to specialised agent personas in internaldocs/agents/ and surfaces the LSP / cocoindex / Sentry / Supabase MCP tools configured in this repo. Skip for trivial questions or pure doc reads.Key capabilities
- →Route tasks to personas
- →Execute coordinator-loop
- →Search code with cocoindex
- →Inspect Sentry/Supabase
How it works
Routes development tasks to specialized agent personas and surfaces project-specific tools like LSP and cocoindex.
Inputs & outputs
When to use patcher
- →Plan new features
- →Diagnose bugs
- →Execute coordinator-loop tasks
About this skill
Patcher — Agent Routing & Tooling
This skill is project-scoped — it only loads when working inside the Patcher repository, so no activation guard is needed.
Canonical sources (read these, do not duplicate)
AGENTS.md— repo-wide rules, command policy, layering, git policyinternaldocs/README.md— doc indexinternaldocs/agents/README.md— full persona specs + composition patterns
Persona quick-routing
When the user's request matches one of these, delegate to a sub-agent using the task tool (agent_type: general-purpose for most, explore for read-only investigations). Paste the corresponding persona file content from internaldocs/agents/ into the prompt.
| User intent | Persona | Model | File |
|---|---|---|---|
| Rough feature idea / future work intake that should become a TODO-linked plan | feature-notetaker | claude-opus-4.7 | internaldocs/agents/feature-notetaker.md |
| "Plan X", multi-step or cross-cutting work, ambiguous scope | planner | claude-opus-4.7 | internaldocs/agents/planner.md |
| Review a backend/storage/schema plan before approval or implementation | backend-plan-reviewer | claude-opus-4.7 | internaldocs/agents/backend-plan-reviewer.md |
| Hard ambiguous problem, high-risk decision, or explicit premium-model counsel request | advisor | claude-opus-4.7 | internaldocs/agents/advisor.md |
| Implement Angular component / service / RxJS pipeline | frontend-dev | gpt-5.5 | internaldocs/agents/frontend-dev.md |
| Design visual / spacing / responsive direction, UI structure, or product organization | designer | claude-sonnet-4.6 | internaldocs/agents/designer.md |
| Review a diff / branch / PR before commit | reviewer | gpt-5.4-mini | internaldocs/agents/reviewer.md |
| Restructure code without changing behaviour | refactorer | gpt-5.5 | internaldocs/agents/refactorer.md |
| Add unit / E2E test coverage | test-writer | gpt-5.5 | internaldocs/agents/test-writer.md |
| Diagnose a defect to root cause | bug-hunter | gpt-5.4 | internaldocs/agents/bug-hunter.md |
| "Begin loop", "run the loop", "via loop", or run one/full/multiple TODO → implementation → review → documentation cleanup cycles | coordinator-loop | gpt-5.5 | internaldocs/agents/coordinator-loop.md |
Boot a long-running autonomous loop driven by agent/ and internaldocs/workflow/ (replaces pasting a 10 KB mission prompt by hand) | autonomous-engineer | gpt-5.5 | internaldocs/agents/autonomous-engineer.md |
| Update public documentation for a confirmed production release | docs-publisher | gpt-5.5 | internaldocs/agents/docs-publisher.md |
Model policy: use gpt-5.5 for coding-heavy executors (frontend-dev, refactorer, test-writer, autonomous-engineer), claude-sonnet-4.6 for non-coding visual/structural design work, and claude-opus-4.7 for planning and premium counsel. Use cheaper OpenAI models for read-heavy tasks: gpt-5.4 for root-cause diagnosis and gpt-5.4-mini for diff review. Escalate review/diagnosis only for hard architecture, security, or data-loss risk.
Composition flows:
- Idea intake:
feature-notetaker→ backlog plan →coordinator-looplater - Frontend feature:
planner→frontend-dev→reviewer - Backend/schema feature:
planner→backend-plan-reviewer→ executor →reviewer - Hard decision: normal investigation →
advisor→ appropriate executor - Bug fix:
bug-hunter→frontend-dev→test-writer - Cleanup:
refactorer→reviewer - Visual:
designer→frontend-dev→reviewer - Backlog automation: foreground decision coordinator ("via loop") →
coordinator-loop/ executor persona →reviewer→ docs cleanup → next safe task or next queued product question - Release documentation: confirmed production publication →
docs-publisher→ independent review → local docs commit → explicit user push
"Via loop" operating mode
When the user says "via loop", resume the collaborative orchestration mode:
- Act as the foreground decision coordinator, not the main coder.
- Read active/completed subagent results,
git status,CURRENT_FEATURE.md, andTODO.md. - Delegate implementation/review/recorder work to subagents.
- Ask product-owner questions with
ask_userwhile subagents run when the questions are independent of the running work. - Record approvals in workflow docs through small recorder tasks.
- Immediately continue after each subagent completes while safe work remains.
- Stop only when no safe work remains without product-owner answers; then ask the next highest-leverage queued question.
Tooling that is configured but easy to miss
The repo has these wired up in .github/ — prefer them over grep / find:
- LSP (TypeScript,
.github/lsp.json) — use thelsptool for known symbols:findReferences,goToDefinition,documentSymbol,incomingCalls,hover. Reliable for file-scoped ops;workspaceSymbolmay need a warmup query. - cocoindex-code-search MCP (
.github/mcp.json) — semantic search across 10.890+ TS chunks, local embeddings (zero API cost), daemon refreshes on save. Use for concept queries ("how is auth wired", "where do we cache rack lists"). Start withlimit: 5. - Sentry MCP — pull issue details directly; do not ask the user to paste stack traces.
- Supabase MCP — read-only inspection only (list tables, advisors, logs). Never apply migrations / RLS changes without explicit user approval.
- GitHub MCP — PR / issue / Actions inspection.
Search order: LSP (named symbols) → cocoindex (concepts) → grep+glob (literals only).
Copilot session coordination: Orchestrate
The user-level orchestrate skill is available in the GitHub Copilot session UI. Use it when the user explicitly asks for
Orchestrate, or when the work should be split across separate sessions/branches because it is multi-repo, stacked/dependent PR work,
parallel fan-out, or an alternative exploration.
Do not replace ordinary Patcher persona delegation with Orchestrate. For a single change in this repo, stay in this session and use
the persona routing above. For single-repo research in this checkout, stay inline. When Orchestrate is appropriate, load the skill,
announce the session plan before spawning anything, and give each child session a standalone prompt that includes the relevant Patcher
rules from AGENTS.md. After consuming each child result, complete the lifecycle by archiving the session and verifying that its
worktree and local branch were removed; preserve anything dirty or not yet reconciled.
Hard rules (copy from AGENTS.md, surfaced here for visibility)
- Package manager:
pnpmonly. Preferpnpm test-headless,pnpm lint,pnpm test:e2e:auth,pnpm updateBackendTypes. Nevernpm install,ng test, or watch variants unless explicitly asked. - Layering:
Component → Data Service → API Service → Supabase. Backend access only throughSupabaseService. - Data services:
@Injectable()component-provided. API services:@Injectable({ providedIn: 'root' }). - Subscriptions: extend
SubManager, usetakeUntil(this.destroy$), orasyncpipe in template. - Naming: observables/subjects suffix
$, privateBehaviorSubjectprefix_. - New Supabase queries: explicit column lists (no
select('*')), register table inDatabaseStrings.tsfirst, bust caches on writes. - Git: branch
developis primary, never runrelease:*fromdevelop. Commit every completed, validated chunk immediately as its own isolated commit (standing approval — do not ask): one chunk = one commit, stage only that chunk's files (nevergit add -Awith unrelated changes present), never leave finished work uncommitted, leave pre-existing foreign changes untouched. Never push unless explicitly requested. Never force-push (--force,--force-with-lease, or equivalent history-rewriting ref updates) unless the user explicitly requests a force push in that turn. - No
Co-authored-bytrailers on commits in this repo. - No Supabase RLS / migration changes without explicit human approval.
- Work on
developby default. Do not switch toproduction, release, or push unless explicitly asked; the user owns production rollout. - Avoid backend-breaking changes that could break the currently published production app unless the user explicitly approves them while present. Prefer additive/backward-compatible backend changes.
- Code execution is autonomous, but UX placement/hierarchy is co-designed: before implementing meaningful new UI surfaces, ask for a short placement approval (where it lives, visual weight, affected/excluded surfaces). Use
designerfirst when visual hierarchy or information architecture is ambiguous. - Feature flags are optional, not required for every new feature. Use them when the user wants something hidden, when production needs shielding while
developremains reviewable, or as a safe backend rollout switch.
When NOT to delegate
For one-liner edits, doc reads, or quick questions, do the work directly. Persona delegation has overhead — only use it when the task fits the persona's full workflow.
When not to use it
- →Trivial questions
- →Pure doc reads
Prerequisites
Limitations
- →Requires Patcher repository context
- →No force-push without explicit request
How it compares
It uses a persona-based delegation model for complex development loops rather than a single general-purpose agent.
Compared to similar skills
patcher side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| patcher (this skill) | 0 | 2mo | No flags | Advanced |
| angular | 100 | 4mo | Review | Advanced |
| angular-modernization | 4 | 8mo | Review | Intermediate |
| angular-spa | 0 | 1mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by Polyterative
View all by Polyterative →You might also like
angular
sickn33
Modern Angular (v20+) expert with deep knowledge of Signals, Standalone Components, Zoneless applications, SSR/Hydration, and reactive patterns. Use PROACTIVELY for Angular development, component architecture, state management, performance optimization, and migration to modern patterns.
angular-modernization
bitwarden
Modernizes Angular code such as components and directives to follow best practices using both automatic CLI migrations and Bitwarden-specific patterns. YOU must use this skill when someone requests modernizing Angular code. DO NOT invoke for general Angular discussions unrelated to modernization.
angular-spa
Allmantool
Govern implementation, refactoring, bug-fix, audit, review, testing, and migration work in this repository’s Angular/Nx SPA. Use for every task that reads or changes Angular, TypeScript, templates, CSS, NgModules, routes, NGXS, RxJS, HTTP/data access, tests, Nx configuration, or Angular/Nx governanc
typescript-expert
davila7
TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling. Use PROACTIVELY for any TypeScript/JavaScript issues including complex type gymnastics, build performance, debugging, and architectural decisions. If a specialized expert is a better fit, I will recommend switching and stop.
agent-coder
ruvnet
Agent skill for coder - invoke with $agent-coder
functional
citypaul
Functional programming patterns with immutable data. Use when writing logic or data transformations.