🐦‍⬛ RavenClaude — Marketplace Guide

marketplace v0.25.0
Generated 2026-05-22 13:46 UTC by scripts/generate-repo-guide.py
7 plugins
55 agents
86 skills
11 hooks
66 templates

What this is

RavenClaude — a private marketplace of opinionated Claude Code plugins. All 7 plugins ship example-scenario frontmatter on every agent (55 agents total). Capability Grounding Protocol has 4 composing clauses: pre-action environment-context check + pre-action decision-tree traversal + alternate-methods enumeration + mandatory blocked-phrasing. Auto-discovery for permission-awareness via the environment-discovery skill. **New in 0.25.0:** ravenclaude-core gains the `cross-platform-determinism` skill — captured from two real bugs in the marketplace's own repo-guide generator (Windows backslash paths + cp1252 encoding crash). Generators whose output is committed and diff-checked must be byte-identical across OSes; the skill names the six failure categories and ships a review checklist. Plugins: ravenclaude-core (15 skills incl. cross-platform-determinism), power-platform (11 + bundled pbix-mcp + Mermaid decision-tree knowledge file + scenarios bank), finance (7), regulatory-compliance (6 + BMA Bermuda specialist), web-design (7 + WCAG/CWV/SEO discipline), edtech-partner-success (6 PSM-lane specialists — K-12 / higher-ed / corporate L&D agnostic), data-platform (4 for dashboard engagements). Repo-guide includes Overview-tab 'I want to…' use-case lookup filterable by plugin + per-plugin last-updated badges. Salesforce on the roadmap.

I want to…

Use this lookup to navigate from what you're trying to do to which agent + plugin handles it. Sorted starter-first then alphabetically. Filter by plugin below or search via the Index / Search tab.

I want to…AgentPluginDifficultyAudience
Add client-side validation via JS form scriptingmodel-driven-engineerpower-platformstarterpower-platform-maker, dev
Add tests for a new feature before it hits code reviewtester-qaravenclaude-corestarterdev
Annual policy refresh for an existing P&Ppolicy-and-procedure-writerregulatory-compliancestartercompliance
Author a new agent for a domainprompt-engineerravenclaude-corestarterdev, consultant
Author homepage + product-page copy aligned to a voice-and-tone guidecontent-strategistweb-designstarterdev, consultant
Build / refresh an enterprise risk registerrisk-and-controls-specialistregulatory-compliancestartercompliance
Build / refresh the 13-week direct cash forecasttreasury-analystfinancestarteranalyst, consultant
Build / refresh the rolling forecastfpa-analystfinancestarteranalyst, consultant
Build a brand system from scratch for a new sitevisual-designerweb-designstarterdev, consultant
Build a canvas app screen with a gallery + form patternpower-fx-engineerpower-platformstarterpower-platform-maker, dev
Build a cloud flow that posts to Teams when a SharePoint row changesflow-engineerpower-platformstarterpower-platform-maker, dev
Build a component from a designer's spec with semantic HTML + tokensfrontend-implementerweb-designstarterdev
Build a custom Airbyte source connector for a vendor without native ELT supportconnector-developerdata-platformstarterdata-engineer, dev
Build a model-driven app shell from a Dataverse schemamodel-driven-engineerpower-platformstarterpower-platform-maker, dev
Build a new API endpoint per a specced designbackend-coderravenclaude-corestarterdev, data-engineer
Build a new dbt model on top of an existing sourcedata-engineerravenclaude-corestarterdata-engineer, dev, analyst
Build a PCF custom control for a non-standard input typepcf-developerpower-platformstarterpower-platform-maker, dev
Build a Power Pages portal with anonymous + authenticated areaspower-pages-engineerpower-platformstarterpower-platform-maker, dev
Build a React/Astro/Next component per a designer's specfrontend-coderravenclaude-corestarterdev
Build a three-statement model for an acquisition targetfinancial-modelerfinancestarteranalyst, consultant
Build a triangulated valuation (DCF + comps + precedent)valuation-analystfinancestarteranalyst, consultant
Choose between Copilot Studio + AI Builder vs custom Azure OpenAI via connectorcopilot-studio-engineerpower-platformstarterpower-platform-maker, dev
Choose between Power Pages and a canvas app for an external surfacepower-pages-engineerpower-platformstarterpower-platform-maker, dev
Choose between Supabase / Neon / RDS / Fabric for this engagementdatabase-setup-guidedata-platformstarterdata-engineer, dev, consultant
Classify a Bermuda insurance entity (Class 1/2/3/3A/3B/4/A-E/IIGB)bermuda-insurance-specialistregulatory-compliancestartercompliance, consultant
Color-contrast + reduced-motion audit on a design systemaccessibility-auditorweb-designstarterdev
Compare 3 tools / vendors / libraries with primary sourcesdeep-researcherravenclaude-corestarterconsultant, dev, psm, analyst
Compose a quarterly board pack from input analysesboard-pack-composerfinancestarteranalyst, consultant
Critique an existing agent producing inconsistent resultsprompt-engineerravenclaude-corestarterdev, consultant
Decide Airbyte vs Fivatran vs n8n for an engagementetl-pipeline-engineerdata-platformstarterdata-engineer, dev
Design / refresh the month-end close calendarcontrollerfinancestarteranalyst
Design a chatbot that answers FAQ from a knowledge sourcecopilot-studio-engineerpower-platformstarterpower-platform-maker, dev
Design a Dataverse schema for a new business appdataverse-architectpower-platformstarterpower-platform-maker, dev
Design a new recovery play for partners showing an emerging risk signalsuccess-playbook-designeredtech-partner-successstarterpsm, consultant
Design a partner health score from scratch with signals + decay + thresholdslearning-analytics-analystedtech-partner-successstarterpsm, consultant, analyst
Design a Power BI semantic model from a star schemapower-bi-engineerpower-platformstarterpower-platform-maker, dev, analyst
Design an advocacy play for case-study candidate identificationsuccess-playbook-designeredtech-partner-successstarterpsm, consultant
Design DLP policy at tenant + environment scopepower-platform-adminpower-platformstarterpower-platform-maker, dev, compliance
Diagnose slow page + recommend fixes ranked by impactperformance-engineerweb-designstarterdev
Draft a 30/60/90 success plan for a newly-onboarded K-12 partnerpartner-success-manageredtech-partner-successstarterpsm, consultant
Draft a 30/60/90 success plan for a newly-onboarded partnerpartner-success-managerravenclaude-corestarterpsm, consultant
Draft a new compliance policy from scratchpolicy-and-procedure-writerregulatory-compliancestartercompliance
Executive summary of a decision for leadershipdocumentarianravenclaude-corestarterconsultant, psm, analyst, compliance
Health-check a K-12 partner that's gone quietpartner-success-manageredtech-partner-successstarterpsm, consultant
Health-check a partner that's gone quietpartner-success-managerravenclaude-corestarterpsm, consultant
I'm about to build something cross-cutting and want a design before I codearchitectravenclaude-corestarterdev, consultant, data-engineer, analyst
Migrate a large Excel workbook to a real Power Appdataverse-architectpower-platformstarterpower-platform-maker, dev
New endpoint + the UI that calls it as one cohesive changefullstack-coderravenclaude-corestarterdev
Post-QBR commitment tracking — what did we promiseqbr-composeredtech-partner-successstarterpsm, consultant
Pre-launch WCAG 2.2 AA audit of a siteaccessibility-auditorweb-designstarterdev
Pre-meeting context refresh before a partner callpartner-profile-curatoredtech-partner-successstarterpsm, consultant
Prep a period-end regulatory filing (FATCA / CRS / Solvency II QRT / BMA EBS)regulatory-reporting-analystregulatory-compliancestartercompliance, analyst
Prep QBR materials end-to-end one week outqbr-composeredtech-partner-successstarterpsm, consultant
Pull QuickBooks Online data into the warehouseetl-pipeline-engineerdata-platformstarterdata-engineer, dev
Review a KYC file + recommend EDD actionaml-kyc-analystregulatory-compliancestartercompliance
Review auth changes pre-merge (mandatory for any auth/crypto touch)security-reviewerravenclaude-corestarterdev, compliance
Review my non-trivial PR before I mergecode-reviewerravenclaude-corestarterdev, consultant
Sanity-check what we can legally say in a district memo touching student dataferpa-comms-translatoredtech-partner-successstarterpsm, consultant
Scaffold an Evidence.dev portfolio dashboard for a marketing sitedashboard-builderdata-platformstarterdata-engineer, dev, analyst
Set up source control for a Power Platform solutionsolution-alm-engineerpower-platformstarterpower-platform-maker, dev
Set up Test Studio tests for a canvas apppower-platform-testerpower-platformstarterpower-platform-maker, dev
Stand up a new cloud database for a client engagementdatabase-setup-guidedata-platformstarterdata-engineer, dev, consultant
Stand up exam readiness 6-12 weeks before regulator examexamination-prep-specialistregulatory-compliancestartercompliance
Stand up PBC tracker 6-8 weeks before audit fieldworkaudit-prep-specialistfinancestarteranalyst, consultant, compliance
Start the durable record for a newly-onboarded partnerpartner-profile-curatoredtech-partner-successstarterpsm, consultant
Tech-stack selection for a greenfield marketing siteweb-architectweb-designstarterdev, consultant
Translate a PSM email into a parent-facing variantferpa-comms-translatoredtech-partner-successstarterpsm, consultant
Translate a technical post-mortem for non-technical stakeholdersdocumentarianravenclaude-corestarterconsultant, psm, analyst, compliance
Triage a sanctions hit + clear or escalateaml-kyc-analystregulatory-compliancestartercompliance
Usability review of an existing screenux-designerweb-designstarterdev, consultant
Verify a load-bearing vendor claim before we cite it in a deliverabledeep-researcherravenclaude-corestarterconsultant, dev, psm, analyst
Visual design system for a new product surfacedesignerravenclaude-corestarterdev, consultant, psm
Weekly status report I can send to stakeholdersproject-managerravenclaude-corestarterconsultant, psm, dev
Wire `pac solution check` into the ALM pipelinepower-platform-testerpower-platformstarterpower-platform-maker, dev
Wireframe a new feature flow before visual design startsux-designerweb-designstarterdev, consultant
Wireframe a new screen before frontend implementationdesignerravenclaude-corestarterdev, consultant, psm
Write variance commentary for monthly closefpa-analystfinancestarteranalyst, consultant
Accessibility audit + prioritized remediation plandesignerravenclaude-coreadvanceddev, consultant, psm
Add dark-mode to an existing light-mode designvisual-designerweb-designadvanceddev, consultant
Add idempotency + a worker to an existing webhook handlerbackend-coderravenclaude-coreadvanceddev, data-engineer
Add real-time updates via SSE/WebSocket to existing CRUD surfacefullstack-coderravenclaude-coreadvanceddev
ARIA + keyboard-navigation review for a complex componentaccessibility-auditorweb-designadvanceddev
Assemble KPI pack with commentary for board / leadershipfpa-analystfinanceadvancedanalyst, consultant
Audit + rationalize an existing design system's tokensvisual-designerweb-designadvanceddev, consultant
Audit cross-file consistency on a refactorcode-reviewerravenclaude-coreadvanceddev, consultant
Audit for suspected PII exposure in logssecurity-reviewerravenclaude-coretroubleshootingdev, compliance
Audit licensing + capacity (Dataverse storage, API entitlements, PA request limits)power-platform-adminpower-platformadvancedpower-platform-maker, dev, compliance
Build the BSCR / ECR / MCR calculation for a captive or commercial insurerbermuda-insurance-specialistregulatory-complianceadvancedcompliance, consultant
Bulk-create 100+ flows programmatically (PA Management API blocked)flow-engineerpower-platformadvancedpower-platform-maker, dev
Calculate covenant compliance for a lender packtreasury-analystfinanceadvancedanalyst, consultant
Choose plug-in vs flow vs business rule for cross-table logicdataverse-architectpower-platformadvancedpower-platform-maker, dev
Configure Azure AD B2C auth + table permissions for tiered accesspower-pages-engineerpower-platformadvancedpower-platform-maker, dev
Configure generative answers with semantic boundaries for an enterprise tenantcopilot-studio-engineerpower-platformadvancedpower-platform-maker, dev
Content audit of existing site for SEO + voice + accuracycontent-strategistweb-designadvanceddev, consultant
Decide build-vs-buy when partial coverage existsconnector-developerdata-platformadvanceddata-engineer, dev
Defend a valuation against pushbackvaluation-analystfinancetroubleshootinganalyst, consultant
Design a risk-appetite statementrisk-and-controls-specialistregulatory-complianceadvancedcompliance
Design accrual / deferred-revenue / fixed-asset roll for a new revenue streamcontrollerfinanceadvancedanalyst
Design an ALM pipeline (Power Platform Pipelines vs ADO Build Tools)solution-alm-engineerpower-platformadvancedpower-platform-maker, dev
Design content model for headless CMScontent-strategistweb-designadvanceddev, consultant
Design FX hedging strategy for a multi-currency exposuretreasury-analystfinanceadvancedanalyst, consultant
Diagnose 'query can't be delegated' warnings on a large listpower-fx-engineerpower-platformtroubleshootingpower-platform-maker, dev
Diagnose a flow that activated then immediately turned itself offflow-engineerpower-platformtroubleshootingpower-platform-maker, dev
Diagnose a production metric drop that doesn't match source datadata-engineerravenclaude-coretroubleshootingdata-engineer, dev, analyst
Diagnose a solution import failure between dev and test envssolution-alm-engineerpower-platformtroubleshootingpower-platform-maker, dev
Diagnose and fix a memory leak under loadbackend-coderravenclaude-coretroubleshootingdev, data-engineer
Diagnose MAR overage risk on HubSpot deal-heavy orgsetl-pipeline-engineerdata-platformadvanceddata-engineer, dev
Diagnose rostering / SIS sync issues that are masquerading as engagement dropslearning-analytics-analystedtech-partner-successadvancedpsm, consultant, analyst
Diagnose semantic model refresh failure in prodpower-bi-engineerpower-platformtroubleshootingpower-platform-maker, dev, analyst
Diagnose source-data quality issue blocking a filingregulatory-reporting-analystregulatory-compliancetroubleshootingcompliance, analyst
Diagnose SPN 403 on Dataverse table createdataverse-architectpower-platformtroubleshootingpower-platform-maker, dev
Diagnose visible layout shift on initial loadfrontend-coderravenclaude-coretroubleshootingdev
Diagnose why a flow is throttled in prodpower-platform-adminpower-platformtroubleshootingpower-platform-maker, dev, compliance
Diagnose why a metric moved on a specific partnerlearning-analytics-analystedtech-partner-successtroubleshootingpsm, consultant, analyst
Draft a case-study quote that needs parental consent + state media-releaseferpa-comms-translatoredtech-partner-successadvancedpsm, consultant
Draft a SAR / STR narrative for a suspicious transaction patternaml-kyc-analystregulatory-complianceadvancedcompliance
Draft management response to MRA / MRIA / management letterexamination-prep-specialistregulatory-complianceadvancedcompliance
Draft SOC1/SOC2 control narrative + walkthrough docaudit-prep-specialistfinanceadvancedanalyst, consultant, compliance
Embed a Custom Page in a model-driven app for non-tabular UImodel-driven-engineerpower-platformadvancedpower-platform-maker, dev
Embed Superset into the client's admin panel with JWT-secured iframedashboard-builderdata-platformadvanceddata-engineer, dev, analyst
Escalate a critical risk that surfaced mid-weekproject-managerravenclaude-coretroubleshootingconsultant, psm, dev
Fundraising data room narrativeboard-pack-composerfinanceadvancedanalyst, consultant
Gap analysis against new regulationpolicy-and-procedure-writerregulatory-complianceadvancedcompliance
Get an independent second opinion on a controversial diffcode-reviewerravenclaude-coretroubleshootingdev, consultant
Hunt down flaky tests in a suitetester-qaravenclaude-coreadvanceddev
Improve conversion on an underperforming form / pageux-designerweb-designadvanceddev, consultant
Lender covenant compliance packboard-pack-composerfinanceadvancedanalyst, consultant
Long-form runbook for a new operational proceduredocumentarianravenclaude-coreadvancedconsultant, psm, analyst, compliance
Migrate a class component tree to hooks without behavior changefrontend-coderravenclaude-coreadvanceddev
Migrate a sprawling Excel/SharePoint dataset to a real DBdatabase-setup-guidedata-platformadvanceddata-engineer, dev, consultant
Migrate ELT from one vendor to another without losing historydata-engineerravenclaude-coreadvanceddata-engineer, dev, analyst
Package + register a PCF control for both canvas + model-driven contextspcf-developerpower-platformadvancedpower-platform-maker, dev
Pre-submission review of a regulatory returnregulatory-reporting-analystregulatory-complianceadvancedcompliance, analyst
Prep BMA exam materials for a Bermuda insurance entitybermuda-insurance-specialistregulatory-complianceadvancedcompliance, consultant
PSM handoff — bring the new owner up to speed on partner Xpartner-profile-curatoredtech-partner-successadvancedpsm, consultant
QBR prep for a high-stakes partnerpartner-success-managerravenclaude-coreadvancedpsm, consultant
RAID log refresh after a major scope changeproject-managerravenclaude-coreadvancedconsultant, psm, dev
Re-platform decision (e.g., WordPress → Astro)web-architectweb-designadvanceddev, consultant
Refactor a broken / overgrown modelfinancial-modelerfinanceadvancedanalyst, consultant
Refactor a complex flow-heavy canvas app into delegated Power Fx + reusable componentspower-fx-engineerpower-platformadvancedpower-platform-maker, dev
Refactor a hardcoded-values component to token-drivenfrontend-implementerweb-designadvanceddev
Refactor inconsistent prompt patterns across plugins into a shared skillprompt-engineerravenclaude-coreadvanceddev, consultant
Refresh a 409A valuationvaluation-analystfinanceadvancedanalyst, consultant
Refresh a renewal play that hasn't landed twice in a rowsuccess-playbook-designeredtech-partner-successadvancedpsm, consultant
Remediate audit deficiency from prior yearaudit-prep-specialistfinanceadvancedanalyst, consultant, compliance
Renewal-QBR variant 120-180 days before contract endqbr-composeredtech-partner-successadvancedpsm, consultant
Review an existing model for hardcodes / circulars / methodology issuesfinancial-modelerfinanceadvancedanalyst, consultant
Reviewer flagged a structural concern mid-build and I need a re-architect callarchitectravenclaude-coreadvanceddev, consultant, data-engineer, analyst
Run mock examiner walkthrough on a control areaexamination-prep-specialistregulatory-complianceadvancedcompliance
Run the 90-day implementation arc for a newly-contracted partnerpartner-success-manageredtech-partner-successadvancedpsm, consultant
Scaffold a Cube schema with securityContext for a multi-tenant client deliverabledashboard-builderdata-platformadvanceddata-engineer, dev, analyst
Set up a PBIP project under git in Azure DevOps with deployment pipelinepower-bi-engineerpower-platformadvancedpower-platform-maker, dev, analyst
Set up performance budget + CI enforcementperformance-engineerweb-designadvanceddev
Technical SEO audit of an existing siteweb-architectweb-designadvanceddev, consultant
Tests are contradicting the plan and I don't know which is wrongarchitectravenclaude-coretroubleshootingdev, consultant, data-engineer, analyst
Third-party script auditperformance-engineerweb-designadvanceddev
Threat-model a new integration with untrusted inputsecurity-reviewerravenclaude-coreadvanceddev, compliance
Three-lines-of-defense assessment for a control arearisk-and-controls-specialistregulatory-complianceadvancedcompliance
Triage a mysterious failure in a passing suitetester-qaravenclaude-coretroubleshootingdev
Triage a recon variance that's blocking closecontrollerfinancetroubleshootinganalyst
Troubleshoot an unfamiliar error across docs + forums + source codedeep-researcherravenclaude-coreadvancedconsultant, dev, psm, analyst
Validate DAX semantic correctness + VertiPaq + DAX-server timings for a complex measurepower-platform-testerpower-platformadvancedpower-platform-maker, dev
Wire a design system's tokens into a React / Astro / Next codebasefrontend-implementerweb-designadvanceddev

How to install

/plugin marketplace add mcorbett51090/RavenClaude
/plugin install ravenclaude-core@ravenclaude
# Optional:
/plugin install power-platform@ravenclaude
/plugin install finance@ravenclaude
/plugin install regulatory-compliance@ravenclaude
/plugin install web-design@ravenclaude
/reload-plugins

Jump to a plugin

ravenclaude-core

v0.14.1

Domain-neutral Claude Code plugin: 14 specialist agents, team-lead dispatch playbook, format/lint/test gates, hooks, templates, slash commands `/init-agent-ready` and `/wrap`. v0.9.0: pre-action decision-tree traversal. v0.10.0: every agent ships example-scenario frontmatter. v0.11.0: pre-action environment-context check + Team Lead session-start orientation. v0.12.0: auto-discovery streamlining via `environment-discovery` skill. **v0.13.0 — cross-platform-determinism skill:** new skill captures the lesson from two real bugs in this repo's own `scripts/generate-repo-guide.py` (OS-dependent path separators from `str(Path)` and locale-dependent encoding crashing on Windows cp1252). Teaches the six categories of generator nondeterminism — path separators, encoding, line endings, ordering, timestamps, locale — with a review checklist for any script whose output is committed and diff-checked in CI.

Last updated 2026-05-22
team-lead agents orchestration code-review project-management partner-success
14 Agents18 Skills5 Hooks4 Rules14 Templates

Agents (14)

architect

tools: Read, Grep, Glob, WebFetch, WebSearch, Bash model: opus
DeveloperConsultantData engineerAnalyst

Use this agent as the technical conscience across the entire software lifecycle — design, build, test, review, iterate. Spawn for upfront design BEFORE writing code, AND re-consult whenever a phase boundary surfaces a question that exceeds a coder/tester/reviewer's authority (tests contradict the plan, scope expands mid-build, reviewer flags a structural concern, iteration requires re-planning). Do NOT use it to write production code.

Example scenarios (3)
Intent: I'm about to build something cross-cutting and want a design before I code
You type: Help me design <feature> before I start writing code
You get: Plan with components, contracts, risks, alternatives — keep/update/deny ready
starter
+ 2 more
Intent: Reviewer flagged a structural concern mid-build and I need a re-architect call
You type: Reviewer says my <choice> doesn't compose with <constraint> — what's the right shape?
You get: Revised plan + decision rationale + which work to discard
advanced
Intent: Tests are contradicting the plan and I don't know which is wrong
You type: Tests say X but my design says Y — adjudicate
You get: Verdict on plan-vs-tests + path forward + risks owned by each option
troubleshooting
Quickstart
  1. Trigger phrase: 'Design <feature> with constraints A, B, C
  2. Expected output: structured plan (Goal / Constraints / Proposed Design / Why this over alternatives / Risks)
  3. Common follow-up: dispatch backend-coder / frontend-coder per the plan, then have code-reviewer audit before merge
Works well with
backend-coderfrontend-codercode-reviewersecurity-reviewerdeep-researcher
plugins/ravenclaude-core/agents/architect.md

backend-coder

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
DeveloperData engineer

Use this agent to implement server-side code — API handlers, business logic, database queries, background jobs, integrations. Spawn AFTER the architect has produced a plan. Each invocation should target one focused, testable change.

Example scenarios (3)
Intent: Build a new API endpoint per a specced design
You type: Implement the <path> endpoint per the architect's plan
You get: Working endpoint + unit tests + commit; the diff matches the spec
starter
+ 2 more
Intent: Add idempotency + a worker to an existing webhook handler
You type: Add idempotency-key handling to /webhook and a worker that retries on 5xx
You get: Idempotency layer + retry worker + happy/sad-path tests covering both
advanced
Intent: Diagnose and fix a memory leak under load
You type: Profile and fix the memory leak in <handler> — load test repros it at 50 req/s
You get: Root cause identified + fix shipped + load test now passing for 10 min
troubleshooting
Quickstart
  1. Trigger phrase: 'Implement <focused change> per <plan link>' — narrow scope, one testable unit
  2. Expected output: code change + tests + commit ready for code-reviewer
  3. Common follow-up: dispatch tester-qa (coverage), then code-reviewer (pre-merge), then security-reviewer if auth/PII/crypto involved
Works well with
architectcode-reviewertester-qasecurity-reviewer
plugins/ravenclaude-core/agents/backend-coder.md

code-reviewer

tools: Read, Grep, Glob, Bash model: opus
DeveloperConsultant

Use this agent for pre-merge review of any non-trivial diff. Spawn it AFTER coder + tester agents are done but BEFORE the Team Lead opens a PR or merges. Returns a structured review with blockers, suggestions, and praise.

Example scenarios (3)
Intent: Review my non-trivial PR before I merge
You type: Review the diff on branch <branch>
You get: Structured review with blockers / suggestions / praise
starter
+ 2 more
Intent: Audit cross-file consistency on a refactor
You type: Confirm this <N>-file refactor doesn't leave stragglers or dead code
You get: Per-file pass + dead-code report + missed-import / unused-export list
advanced
Intent: Get an independent second opinion on a controversial diff
You type: Independent read on this controversial diff — what's blocker vs taste?
You get: Concrete blockers separated from taste-level concerns; clear merge / don't-merge verdict
troubleshooting
Quickstart
  1. Trigger phrase: 'Review <branch or PR>' — works on either git branch or PR URL
  2. Expected output: blockers (must-fix) / suggestions (could-fix) / praise (keep doing this)
  3. Common follow-up: send blockers back to backend-coder / frontend-coder; security-reviewer in parallel if any auth/PII touch
Works well with
architectsecurity-reviewerbackend-coderfrontend-codertester-qa
plugins/ravenclaude-core/agents/code-reviewer.md

data-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Data engineerDeveloperAnalyst

Use this agent for data-shaped work that isn't tied to a specific domain plugin — pipeline design, data modeling, ETL/ELT, warehouse and lake schemas, query performance, data quality, lineage, ingestion connectors, and analytics-engineering style transformations (dbt-flavored or hand-rolled). Spawn for "design this pipeline", "model this warehouse", "this query is slow", "this batch keeps failing", "make this dataset trustworthy". NOT for Power BI semantic models or DAX (that's `power-platform/power-bi-engineer`). NOT for application database schema design driven by a product feature (route to `architect` instead). NOT for ML feature engineering as part of model training (that's a separate specialty).

Example scenarios (3)
Intent: Build a new dbt model on top of an existing source
You type: Add a stg_<name> + dim_<name> model with tests
You get: Models + tests + docs + ELT pipeline updated end-to-end
starter
+ 2 more
Intent: Migrate ELT from one vendor to another without losing history
You type: Plan + execute the migration from <source> to <target> with parallel-run verification
You get: Migration runbook + verified data parity + cutover plan
advanced
Intent: Diagnose a production metric drop that doesn't match source data
You type: Why is <metric> down from <date>? Source data looks correct
You get: Root cause traced to the specific transform / sync step + fix + reconciliation
troubleshooting
Quickstart
  1. Trigger phrase: 'Design the pipeline for <X>' OR 'This <query/batch/sync> is broken — diagnose
  2. Expected output: pipeline plan OR diagnostic + fix with verifiable parity check
  3. Common follow-up: dispatch architect if the design touches application schema; code-reviewer for transform PRs
Works well with
architectcode-reviewerbackend-coder
plugins/ravenclaude-core/agents/data-engineer.md

deep-researcher

tools: Read, Grep, Glob, WebFetch, WebSearch, Bash model: opus
ConsultantDeveloperPartner SuccessAnalyst

Use this agent for rigorous, multi-source research — troubleshooting unfamiliar errors, comparing tools/libraries, verifying claims, or going deeper than a single web search. Spawn it when the question needs official docs PLUS expert blogs/forums/source code, when confidence levels and source citations matter, or when another agent (architect, project-manager, PSM) has flagged a research gap. Returns a structured brief with findings, confidence ratings, competing hypotheses, and open questions. Do NOT use it for tasks the Team Lead can answer from the repo alone.

Example scenarios (3)
Intent: Compare 3 tools / vendors / libraries with primary sources
You type: Research the 3 leading <category> options for <context>
You get: Brief with citations, confidence levels, competing hypotheses, recommendation
starter
+ 2 more
Intent: Troubleshoot an unfamiliar error across docs + forums + source code
You type: I'm hitting <error> on <platform> — synthesize what practitioners + docs say
You get: Root-cause synthesis with primary citations + ranked fix options
advanced
Intent: Verify a load-bearing vendor claim before we cite it in a deliverable
You type: Fact-check the <vendor> claim that <X> against primary sources
You get: Verdict (verified / disputed / cannot verify) + citation chain
starter
Quickstart
  1. Trigger phrase: 'Research <question> with primary sources + confidence levels
  2. Expected output: structured brief — TL;DR / Findings / Competing hypotheses / Gaps / Recommendations / Sources
  3. Common follow-up: pass to architect (design implications), documentarian (writeup), or apply Matt's fact-check rule before any load-bearing claim lands in repo
Works well with
architectdocumentarianprompt-engineer
plugins/ravenclaude-core/agents/deep-researcher.md

designer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
DeveloperConsultantPartner Success

Use this agent for UX direction and visual design — wireframes, user flows, screen layouts, design specs, accessibility checks, visual hierarchy. Spawn BEFORE the frontend-coder starts a UI, or when any visual artifact (Power Apps screen, partner-facing slide deck, dashboard, infographic, onboarding artifact) needs intentional design rather than ad-hoc layout. Do NOT use it to write production code — it produces specs the frontend-coder (or the user) executes. Do NOT use it for stakeholder prose (that's the documentarian).

Example scenarios (3)
Intent: Wireframe a new screen before frontend implementation
You type: Wireframe the <feature> screen with the 3 main user flows
You get: Wireframe + design rationale + accessibility notes + handoff spec for frontend-coder
starter
+ 2 more
Intent: Accessibility audit + prioritized remediation plan
You type: Audit <surface> against WCAG 2.2 AA and rank the gaps
You get: Audit report + remediation list ranked by user impact + effort
advanced
Intent: Visual design system for a new product surface
You type: Design the visual system (typography, color, spacing) for <product>
You get: Design tokens + component specs + usage examples
starter
Quickstart
  1. Trigger phrase: 'Design <screen|system|spec> for <context>
  2. Expected output: visual spec + rationale + accessibility notes — frontend-coder can implement directly
  3. Common follow-up: dispatch frontend-coder to build it; documentarian if a partner-facing artifact needs prose around it
Works well with
frontend-coderdocumentarianarchitect
plugins/ravenclaude-core/agents/designer.md

documentarian

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
ConsultantPartner SuccessAnalystCompliance

Use this agent for stakeholder-facing written deliverables — executive summaries, decision memos, variance commentary, partner briefs, runbooks, SOPs, release notes, READMEs, onboarding guides, long-form writeups. Spawn when the work product is *prose intended for a human audience*, not code, not internal PM hygiene. Do NOT use for RAID/status/task tracking (that's project-manager), system design plans (architect), code comments (coders), or raw analysis from data (the user or a domain expert produces the inputs; this agent polishes them).

Example scenarios (3)
Intent: Executive summary of a decision for leadership
You type: Summarize the <decision> + rationale + next steps in 1 page
You get: Polished memo ready to send — no jargon, clear actions
starter
+ 2 more
Intent: Translate a technical post-mortem for non-technical stakeholders
You type: Write a stakeholder-readable summary of <incident>
You get: Clear narrative + action items + no developer-jargon
starter
Intent: Long-form runbook for a new operational procedure
You type: Document <procedure> as a step-by-step runbook with prereqs and recovery
You get: Runbook with prereqs / steps / validation / recovery paths — ready for the next operator
advanced
Quickstart
  1. Trigger phrase: 'Draft a <memo|summary|runbook|brief> on <topic> for <audience>
  2. Expected output: polished prose, audience-shaped — leadership / partners / new-hires get different tones
  3. Common follow-up: deep-researcher if claims need citations; partner-success-manager for partner-facing copy review
Works well with
deep-researcherproject-managerpartner-success-manager
plugins/ravenclaude-core/agents/documentarian.md

frontend-coder

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
Developer

Use this agent to implement UI work — components, pages, client-side state, styling, accessibility, browser-side integrations. Spawn AFTER the architect or designer has decided on structure and visual direction. Verify in a real browser before reporting done.

Example scenarios (3)
Intent: Build a React/Astro/Next component per a designer's spec
You type: Implement the <component> from <design spec link>
You get: Component + tests + Storybook/example entry — verified in real browser
starter
+ 2 more
Intent: Migrate a class component tree to hooks without behavior change
You type: Refactor <feature> from class components to hooks
You get: Refactored tree + matching test results + behavior parity verified
advanced
Intent: Diagnose visible layout shift on initial load
You type: Diagnose the CLS regression in <route> — Core Web Vitals broke
You get: Root cause + fix + Core Web Vitals back in green
troubleshooting
Quickstart
  1. Trigger phrase: 'Build <component> from <spec>' OR 'Fix <visible-bug> in <route>
  2. Expected output: code + tests + verification in a real browser (not just unit tests)
  3. Common follow-up: tester-qa for coverage gaps; code-reviewer pre-merge; designer-revisit if spec ambiguity surfaced
Works well with
designerarchitectcode-reviewertester-qa
plugins/ravenclaude-core/agents/frontend-coder.md

fullstack-coder

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
Developer

Use this agent only for changes that genuinely cross the client/server boundary in one cohesive unit (e.g., a new endpoint plus the UI that calls it). Prefer separate backend-coder + frontend-coder agents when the work can be split cleanly.

Example scenarios (2)
Intent: New endpoint + the UI that calls it as one cohesive change
You type: Build the /<endpoint> + the form that posts to it
You get: Endpoint + UI + integration test verifying the round-trip
starter
+ 1 more
Intent: Add real-time updates via SSE/WebSocket to existing CRUD surface
You type: Add real-time updates to <feature>
You get: Server stream + client subscription + reconnection handling
advanced
Quickstart
  1. Trigger phrase: 'Build <feature> end-to-end' — use ONLY when split into backend+frontend doesn't compose cleanly
  2. Expected output: coordinated change touching server + client + tests across both
  3. Common follow-up: code-reviewer pre-merge (with cross-boundary attention); security-reviewer if the new endpoint touches auth/PII
Works well with
architectcode-reviewertester-qabackend-coderfrontend-coder
plugins/ravenclaude-core/agents/fullstack-coder.md

partner-success-manager

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
Partner SuccessConsultant

Use this agent for any Partner Success Manager work — maintaining partner profiles, success plans, QBRs, health scores, onboarding checklists, touchpoint logs, and the team's growing AI workflow library. Domain-neutral; PSM patterns apply across SaaS / EdTech / fintech / GovTech. Spawn proactively at QBR prep time (1 week before), when a partner has been silent >30 days, when a health score dips, or when a useful AI pattern surfaces and should be captured. Do NOT use for project management (project-manager agent), system design (architect), or end-customer success.

Example scenarios (3)
Intent: Health-check a partner that's gone quiet
You type: Partner <name> hasn't responded in 3 weeks — what's the read?
You get: Health-score snapshot + named signals driving it + recommended touchpoint
starter
+ 2 more
Intent: Draft a 30/60/90 success plan for a newly-onboarded partner
You type: New partner <name> onboarded — draft the 30/60/90
You get: Success plan with measurable outcomes + cadence + named owners
starter
Intent: QBR prep for a high-stakes partner
You type: QBR for <name> next week — pull the data + draft the narrative
You get: Data pull plan + deck outline + commitment tracker
advanced
Quickstart
  1. Trigger phrase: 'Health check <partner>' OR '<partner> QBR prep' OR 'Draft success plan for <new partner>
  2. Expected output: structured artifact (health score / success plan / QBR brief) with signals cited and dated
  3. Common follow-up: documentarian for partner-facing prose; project-manager if commitments need RAID tracking; route to edtech-partner-success plugin for K-12-flavored work
Works well with
project-managerdocumentariandeep-researcher
plugins/ravenclaude-core/agents/partner-success-manager.md

project-manager

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
ConsultantPartner SuccessDeveloper

Use this agent for any project hygiene work — maintaining the RAID log, task list, weekly status report, activity log, or stakeholder register. PMP / PMBOK 7-aligned. Spawn proactively when a week passes without a status update, or immediately when a critical risk, issue, or decision emerges. Do NOT use for system design (that's the architect), implementation (coder), or written deliverables for stakeholders (documentarian).

Example scenarios (3)
Intent: Weekly status report I can send to stakeholders
You type: Generate this week's status from the activity log
You get: Status report with progress / blockers / next steps / open risks
starter
+ 2 more
Intent: RAID log refresh after a major scope change
You type: Refresh the RAID log — we descoped <feature> this week
You get: Updated risks / assumptions / issues / decisions with named owners + dates
advanced
Intent: Escalate a critical risk that surfaced mid-week
You type: Risk: <description>. Draft the escalation memo
You get: Escalation memo + recommended stakeholder distribution
troubleshooting
Quickstart
  1. Trigger phrase: 'Weekly status' OR 'Refresh RAID' OR 'Escalate <risk>
  2. Expected output: PMBOK-aligned artifact (status / RAID / escalation memo) with dated commitments
  3. Common follow-up: documentarian if the artifact needs polishing for partner-facing delivery
Works well with
documentariandeep-researcherpartner-success-manager
plugins/ravenclaude-core/agents/project-manager.md

prompt-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
DeveloperConsultant

Use this agent to author, critique, refine, or refactor agent definitions, skill files, and prompt patterns across RavenClaude and any Expert repo (PowerPlatformExpert, SalesforceExpert, etc.). Spawn when adding a new agent or skill, when an existing prompt produces inconsistent results, when reusable patterns need to be factored into a shared skill, when naming/voice/structure has drifted across repos, or when Anthropic ships new guidance worth absorbing. Owns the meta-layer of the AI library. Do NOT use for general research (deep-researcher), stakeholder prose (documentarian), or the PSM's team-shared workflow library (that's PSM-owned).

Example scenarios (3)
Intent: Author a new agent for a domain
You type: Draft the <name> agent with proper inline priors + tools + output contract
You get: Agent file ready for review — description, tools, model, scenarios, output contract
starter
+ 2 more
Intent: Critique an existing agent producing inconsistent results
You type: Why does <agent> produce inconsistent output on <X>?
You get: Failure-mode analysis + targeted prompt revision
starter
Intent: Refactor inconsistent prompt patterns across plugins into a shared skill
You type: Find <pattern> drift across plugins and propose a shared skill
You get: Drift report + draft shared skill + migration plan for affected agents
advanced
Quickstart
  1. Trigger phrase: 'Draft <agent>' OR 'Critique <agent>' OR 'Factor <pattern> into a shared skill
  2. Expected output: agent/skill file ready for code-reviewer + architect review
  3. Common follow-up: code-reviewer pre-merge; deep-researcher if Anthropic has published new guidance worth absorbing
Works well with
architectcode-reviewerdeep-researcher
plugins/ravenclaude-core/agents/prompt-engineer.md

security-reviewer

tools: Read, Grep, Glob, Bash, WebFetch model: opus
DeveloperCompliance

Use this agent whenever a diff touches authentication, authorization, cryptography, secrets, sessions, untrusted input parsing, file uploads, deserialization, SQL, shell, network egress, or third-party integrations. Spawn it AFTER code-reviewer or in parallel with it. Mandatory for any auth/crypto change.

Example scenarios (3)
Intent: Review auth changes pre-merge (mandatory for any auth/crypto touch)
You type: Review the auth changes in <PR>
You get: Security verdict — blockers + suggestions + which specific OWASP categories were checked
starter
+ 2 more
Intent: Threat-model a new integration with untrusted input
You type: Threat-model the <integration> with attention to <input source>
You get: Threat model + ranked mitigations + which threats are accepted vs blocked
advanced
Intent: Audit for suspected PII exposure in logs
You type: Audit logs / log statements for <suspected pattern>
You get: Findings + remediation + log-scrub script ready to deploy
troubleshooting
Quickstart
  1. Trigger phrase: 'Security review <PR>' OR 'Threat-model <integration>' OR 'Audit for <PII pattern>
  2. Expected output: structured review — blockers (must-fix-before-merge) + suggestions + OWASP categories addressed
  3. Common follow-up: backend-coder for fixes; architect if structural-not-tactical concern; documentarian if compliance reporting needed
Works well with
architectcode-reviewerbackend-coder
plugins/ravenclaude-core/agents/security-reviewer.md

tester-qa

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
Developer

Use this agent to design test plans, hunt flakes, plug coverage gaps, or harden tests around a new feature. Spawn it AFTER coder agents have a working diff but BEFORE code review. Also use for triaging mysterious test failures.

Example scenarios (3)
Intent: Add tests for a new feature before it hits code review
You type: Cover <feature> with happy / sad / edge cases
You get: Tests + coverage report — gaps named explicitly if any
starter
+ 2 more
Intent: Hunt down flaky tests in a suite
You type: Find and fix flakes in <suite>
You get: Flake-source identification + targeted fixes + stability report
advanced
Intent: Triage a mysterious failure in a passing suite
You type: What's failing intermittently in <suite> and why?
You get: Root cause + fix OR stable-skip with tracking issue
troubleshooting
Quickstart
  1. Trigger phrase: 'Test <feature>' OR 'Fix flakes in <suite>' OR 'Triage <test failure>
  2. Expected output: tests + coverage + stability report — gaps explicitly named, not glossed over
  3. Common follow-up: code-reviewer pre-merge once tests are green and stable
Works well with
backend-coderfrontend-codercode-reviewerarchitect
plugins/ravenclaude-core/agents/tester-qa.md

Skills (18)

agent-quality-rubric

Score and improve an agent file against a 6-dimension rubric — Mission clarity, Scope sharpness, Capability Grounding alignment, Output-Contract completeness, Escalation paths, Example scenarios. Each dimension scored 1-5 with anchors; includes a remediation template that turns a low score into an actionable PR. Reach for this skill when authoring a new agent, reviewing a PR that adds or modifies an agent, or running a periodic agent-bank audit. Used by `prompt-engineer` (primary) plus `architect`.

plugins/ravenclaude-core/skills/agent-quality-rubric.md

audit-ci-gates

For any consumer project where a CI workflow is meant to *enforce* a property (lint, format, security scan, manifest validation, version pin, layout allow-list, etc.). When working on a CI file or adding a new check, run this skill — every gate must fail on a known-bad input AND pass on a known-good input. A gate that runs without gating, or gates the wrong thing, is invisible from inside a green CI dashboard. Also triggers on user phrases like "audit the CI", "verify the gates", "is this gate real", "does this lint actually fail".

plugins/ravenclaude-core/skills/audit-ci-gates.md

cleanup-worktrees

Remove finished agent worktrees, prune their branches, and surface anything still in flight. Run at the end of a multi-agent session and weekly as hygiene.

plugins/ravenclaude-core/skills/cleanup-worktrees.md

contribute-finding

For Claude sessions running in a consumer project (any project where ravenclaude-core is installed). Triggered when you discover a cross-domain finding worth contributing back to the RavenClaude marketplace — either spontaneously, or when the user says "contribute this," "save to RavenClaude," "this is worth keeping," or similar. Walks through the qualifying check, picks the right shape (lesson, best-practice, or both), and formats a copyable staging submission the user can drop into RavenClaude/docs/staging/incoming/.

plugins/ravenclaude-core/skills/contribute-finding.md

create-pr

Open a pull request for the current branch using the project's standard template. Verifies the branch is green, summarizes the diff against main, and pushes only after the user confirms.

plugins/ravenclaude-core/skills/create-pr.md

cross-platform-determinism

For any script that produces a file the repo COMMITS and CI DIFFS — generated HTML, lockfiles, JSON snapshots, fixture files, documentation rendered from source. The output must be byte-identical regardless of who regenerated it or on what OS. This skill catches the specific failure modes that turn a freshness gate into a paper tiger that fails forever — OS-dependent path separators, locale-dependent encodings, nondeterministic ordering, drifting timestamps. Triggers on phrases like "freshness check failing", "regenerated locally but diff doesn't match", "works in CI not on Windows", "generator produces different output", and on any review of a script whose output is committed.

plugins/ravenclaude-core/skills/cross-platform-determinism.md

draft-agent-brief

Use this skill when the user wants to create a new agent and has a clear business goal but isn't fluent in the agent's target domain. Walks them through producing a strong brief by filling in `templates/agent-brief.md` from their plain-language description, then iterating once or twice before building or dispatching the agent. Triggers when the user asks for "a new agent that does X" without already supplying the technical spec, or when they've filled the brief template and left blanks where they didn't know.

plugins/ravenclaude-core/skills/draft-agent-brief.md

environment-discovery

Auto-discover the consumer's environment posture by probing installed CLIs (pac / az / aws / gcloud / gh) with read-only commands at session start, decoding JWTs for role/scope claims, and assembling a draft `.ravenclaude/environment-context.md` for save/edit/skip. Streamlines proposal 2026-05-22-001's permission-awareness mechanism.

plugins/ravenclaude-core/skills/environment-discovery.md

knowledge-file-staleness-sweep

Run a periodic staleness sweep over all `plugins/<plugin>/knowledge/*.md` files and any decision-tree sections — flag entries past their `last-verified` window, categorize by re-verification effort (Tier 1-5 per Researcher schema), produce a remediation queue with named re-verifiers. Reach for this skill on the Researcher's weekly cadence OR before a marketplace release. Used by `deep-researcher` (primary) plus the maintainer.

plugins/ravenclaude-core/skills/knowledge-file-staleness-sweep.md

new-worktree

Create an isolated git worktree under .claude/worktrees/ for a sub-agent to work in. Use this before dispatching any coder agent so that parallel work cannot collide.

plugins/ravenclaude-core/skills/new-worktree.md

plugin-release-checklist

Pre-release checklist for shipping any plugin update through this marketplace — plugin.json + marketplace.json + architecture.md version-mirror discipline, .repo-layout.json glob coverage for new dirs, CLAUDE.md skill / template tables synced, JSON validation, prettier check, audit-gates meta-test, and the consumer migration-note rule. Includes the exact bash commands to run (Windows PowerShell + bash). Reach for this skill at the end of any plugin PR or before merging a release-candidate branch. Used by the maintainer (primary) plus `project-manager`.

plugins/ravenclaude-core/skills/plugin-release-checklist.md

prompt-pattern-library

Curated, applied prompt-pattern catalog used across this marketplace — decision-tree traversal pre-action prior, alternate-methods-before-blocked, Structured Output Protocol `---RESULT_START---` block, scenario-retrieval inline prior, escalation-by-mandatory-phrasing, citation-aware research, environment-context preamble, orchestrator-worker reinforcement, agent-scenario-authoring frontmatter. Each pattern includes when to use it, what it composes with, an example block, and the failure mode it prevents. Reach for this skill when authoring a new agent, when an existing agent shows a behavior gap that a known pattern would close, or when the `prompt-engineer` is consulting on an agent revision. Used by `prompt-engineer` (primary).

plugins/ravenclaude-core/skills/prompt-pattern-library.md

researcher

Meta-skill that keeps all agents, skills, and knowledge files current and honest — Daily Quick Check + Weekly Deep Research modes. Categorization schema (Tier 1 Consensus / 2 Strong-but-Contextual / 3 Divergent / 4 Emerging / 5 Deprecated). Includes 90-day staleness checks for decision trees AND `.ravenclaude/environment-context.md`.

plugins/ravenclaude-core/skills/researcher.md

review-staged-contributions

For the RavenClaude marketplace maintainer. Walks every file in docs/staging/incoming/ one at a time, runs a security sweep + topic-expert analysis on each, presents each with a keep/update/deny prompt, promotes approved submissions to their canonical location (docs/memory-bank/lessons-learned.md for lessons, docs/best-practices/<slug>.md for best-practices), and deletes denied ones. Trigger when the maintainer says any of "check for updates", "check the staging queue", "anything in staging", "review submissions", "drain the queue", or "review staged contributions" — also fires on the slash command /review-staged-contributions.

plugins/ravenclaude-core/skills/review-staged-contributions.md

run-full-test-suite

Run the project's full quality gate — format check, lint, typecheck, unit tests, integration tests — in order, fail fast, summarize. Use before reporting any non-trivial change as complete.

plugins/ravenclaude-core/skills/run-full-test-suite.md

scenario-retrieval

Consult the unverified scenarios bank (`plugins/<plugin>/scenarios/*.md`) before answering plugin-domain questions. Glob + tag-filter + recency-weight, surface top 2-3 with mandatory unverified-scenario preamble ("Based on N unverified scenarios from YYYY-MM tagged [scope] — verify in your environment"). Secondary source — never replaces canonical knowledge files.

plugins/ravenclaude-core/skills/scenario-retrieval.md

spawn-team

Team Lead dispatch playbook. Given a feature or task, decide which specialized agents to dispatch, prepare their briefs, allocate worktrees, run them in the right order, and re-route on blockers. Load this skill whenever you (the Team Lead) are about to dispatch more than one agent on a request. Keeps routing consistent across sessions and avoids re-deriving the workflow each time.

plugins/ravenclaude-core/skills/spawn-team.md

structured-output

Enforce the Structured Output Protocol — every sub-agent handoff ends with a `---RESULT_START--- ... ---RESULT_END---` JSON block alongside the human-readable Markdown. Team Lead parses the JSON for routing; Markdown stays for human review. Active across all 14 core specialists.

plugins/ravenclaude-core/skills/structured-output.md

Hooks (5)

enforce-layout.sh

enforce-layout.sh PreToolUse hook for Write | Edit | MultiEdit. Reads .repo-layout.json from the consumer's project root. If absent, no-ops silently (allow everything). If present, checks the target path against the allowed_globs / forbidden_globs allow-list and denies off-pattern writes with a helpful message including a suggested correct location. Deny mechanism: emits hookSpecificOutput JSON to

plugins/ravenclaude-core/hooks/enforce-layout.sh

format-on-write.sh

format-on-write.sh PostToolUse hook for Edit | Write | MultiEdit. Auto-format the file Claude just touched, using whatever formatter the project defines. No-ops silently when a formatter isn't configured for the file type — never blocks the agent's flow.

plugins/ravenclaude-core/hooks/format-on-write.sh

guard-destructive.sh

guard-destructive.sh PreToolUse hook for Bash. Catches obviously destructive commands that slipped past the deny-list (e.g. inside subshells, pipes, here-docs). Exits non-zero to block the command; prints a reason on stderr.

plugins/ravenclaude-core/hooks/guard-destructive.sh

guard-recursive-spawn.sh

guard-recursive-spawn.sh PostToolUse hook for Edit | Write | MultiEdit on agent definition files (plugins/*/agents/*.md). Warns when an agent's prompt instructs *itself* to spawn another sub-agent. Why this matters ---------------- RavenClaude follows the hierarchical orchestrator-worker pattern documented in plugins/ravenclaude-core/CLAUDE.md and plugins/ravenclaude-core/skills/spawn-team.md: onl

plugins/ravenclaude-core/hooks/guard-recursive-spawn.sh

remind-tests.sh

remind-tests.sh Stop hook. If any source files were modified in the working tree this session, print a reminder to run the full quality gate before reporting the task complete. Output goes to stderr — Claude sees it as a system notice, the user sees it in the transcript.

plugins/ravenclaude-core/hooks/remind-tests.sh

Rules (4)

agent-collaboration

Rule: Agent Collaboration Protocol

plugins/ravenclaude-core/rules/agent-collaboration.md

coding-standards

Rule: Coding Standards (long form)

plugins/ravenclaude-core/rules/coding-standards.md

git-workflow

Rule: Git Workflow (long form)

plugins/ravenclaude-core/rules/git-workflow.md

security

Rule: Security (long form)

plugins/ravenclaude-core/rules/security.md

Templates (14)

activity-log.md

Activity Log — *<Project Name>*

plugins/ravenclaude-core/templates/activity-log.md

agent-brief.md

Agent Brief Template

plugins/ravenclaude-core/templates/agent-brief.md

agent-definition-template.md

Agent Definition Template

plugins/ravenclaude-core/templates/agent-definition-template.md

agent-ready-repo/

(template folder)

plugins/ravenclaude-core/templates/agent-ready-repo

deliverables/

(template folder)

plugins/ravenclaude-core/templates/deliverables

design/

(template folder)

plugins/ravenclaude-core/templates/design

environment-context.md

Environment Context — `<engagement_name>`

plugins/ravenclaude-core/templates/environment-context.md

partner-success/

(template folder)

plugins/ravenclaude-core/templates/partner-success

raid-log.md

RAID Log — *<Project Name>*

plugins/ravenclaude-core/templates/raid-log.md

research-report-template.md

Research Report Template

plugins/ravenclaude-core/templates/research-report-template.md

run-artifacts/

(template folder)

plugins/ravenclaude-core/templates/run-artifacts

stakeholder-register.md

Stakeholder Register — *<Project Name>*

plugins/ravenclaude-core/templates/stakeholder-register.md

status-report.md

Status Report — *<Project Name>*

plugins/ravenclaude-core/templates/status-report.md

task-list.md

Task List — *<Project Name>*

plugins/ravenclaude-core/templates/task-list.md

power-platform

v0.12.2

Microsoft Power Platform specialist team — 11 specialists (Test Studio + DAX + pac solution check tester, PBIP-git + DAX + ADO power-bi-engineer, canvas/Power Fx, Power Automate + connectors, Dataverse modeling, model-driven apps, pac CLI + ALM, tenant governance/DLP, PCF, Copilot Studio + AI Builder, Power Pages). House-opinions hook covers 8 mechanically-detectable §3/§4 violations. v0.11.0: first Mermaid decision tree in a knowledge file (PA flow recovery). v0.10.0: scenarios bank with 3 seed scenarios from the customer DEV engagement. **v0.12.0 — all 11 agents now ship example-scenario frontmatter** (audience + works_with + scenarios + quickstart), feeding the repo-guide's per-agent cards and Overview-tab use-case lookup. Bundles the community pbix-mcp server (d0nk3yhm/pbix-mcp, MIT) for Power BI .pbix/.pbit read/write/DAX-eval (requires `pip install pbix-mcp`).

Requires {'plugins': ['ravenclaude-core@>=0.2.0']}
Last updated 2026-05-22
power-platform power-apps power-automate dataverse power-fx power-bi pbip copilot-studio alm low-code
11 Agents18 Skills1 Hooks1 Templates1 MCP servers

Agents (11)

copilot-studio-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Copilot Studio (formerly Power Virtual Agents) bot design and AI Builder integration — topics, generative answers, knowledge sources, prompts in flows, custom and prebuilt AI Builder models, AI Credit budgeting, bot channels (Teams/web/Direct Line). Spawn for bot architecture, conversational design, AI Builder model selection, "Copilot Studio vs direct Azure OpenAI via custom connector" decisions, prompt design in Power Automate. NOT for general flow work (flow-engineer).

Example scenarios (3)
Intent: Design a chatbot that answers FAQ from a knowledge source
You type: Build a Copilot Studio bot grounded on <SharePoint site | PDF library | URL>
You get: Bot architecture + topic design + knowledge source config + Teams/web channel ready
starter
+ 2 more
Intent: Choose between Copilot Studio + AI Builder vs custom Azure OpenAI via connector
You type: Should this use Copilot Studio or a direct Azure OpenAI call?
You get: Decision memo — cost / governance / capability tradeoffs + recommendation
starter
Intent: Configure generative answers with semantic boundaries for an enterprise tenant
You type: Lock the bot's generative answers to <scope> without bleeding to public sources
You get: Tenant-scoped configuration + governance test plan + AI Credit budget
advanced
Quickstart
  1. Trigger phrase: 'Build a Copilot Studio bot for <use case>' OR 'Copilot Studio vs OpenAI for <X>?
  2. Expected output: bot architecture, knowledge source config, channel setup, governance + cost notes
  3. Common follow-up: flow-engineer if the bot calls flows; solution-alm-engineer to package
Works well with
flow-engineerdataverse-architectsolution-alm-engineer
plugins/power-platform/agents/copilot-studio-engineer.md

dataverse-architect

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Dataverse data modeling, security model design, plug-ins, and business rules. Spawn for "design these tables", "model this security", "should this be a plug-in or a flow", "audit this schema", or "migrate this from SharePoint/Excel to Dataverse". NOT for app-building (canvas → power-fx-engineer; model-driven UI → model-driven-engineer). NOT for ALM (solution-alm-engineer).

Example scenarios (4)
Intent: Design a Dataverse schema for a new business app
You type: Design the Dataverse schema for <business process>
You get: Tables, relationships, choice columns, security model + rationale doc
starter
+ 3 more
Intent: Migrate a large Excel workbook to a real Power App
You type: Migrate this <N>-row Excel workbook to Dataverse
You get: Schema design + migration plan + alternate-key strategy for GUID-free env promotion
starter
Intent: Choose plug-in vs flow vs business rule for cross-table logic
You type: Should this be a plug-in, a flow, or a business rule?
You get: Decision memo with the lowest-tier mechanism per §3 #7 + licensing impact
advanced
Intent: Diagnose SPN 403 on Dataverse table create
You type: SPN is getting 403 on Dataverse Web API even with System Customizer
You get: Traverse the decision tree in knowledge/programmatic-flow-creation.md — typically Application User missing in target env
troubleshooting
Quickstart
  1. Trigger phrase: 'Design Dataverse schema for <X>' OR 'Plug-in vs flow for <Y>?
  2. Expected output: schema + security model + rationale; or decision memo with tradeoffs
  3. Common follow-up: model-driven-engineer or power-fx-engineer for UI; solution-alm-engineer to package; security-reviewer if FLS/RLS/sharing touched
Works well with
model-driven-engineerpower-fx-engineersolution-alm-engineersecurity-reviewer
plugins/power-platform/agents/dataverse-architect.md

flow-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Power Automate work — cloud flows, desktop flows (RPA), and custom connectors. Triggers, expressions, error handling, child flows, retries, batching, parallelism. Spawn for any flow build/review/troubleshooting, custom connector authoring (OpenAPI), or "should this be Power Automate, Logic Apps, or a Function App?" decisions. NOT for canvas app work (power-fx-engineer) and NOT for data modeling (dataverse-architect).

Example scenarios (3)
Intent: Build a cloud flow that posts to Teams when a SharePoint row changes
You type: Build a flow that watches <list> and posts to <channel>
You get: Flow JSON ready to import via solution + connection refs + Try/Catch/Finally
starter
+ 2 more
Intent: Bulk-create 100+ flows programmatically (PA Management API blocked)
You type: Bulk-create flows via Dataverse Web API — script + clientdata template
You get: Pivot to Dataverse Web API per knowledge/programmatic-flow-creation.md + script + live-shape clientdata template
advanced
Intent: Diagnose a flow that activated then immediately turned itself off
You type: PA flow turns itself off after activation — what's the fix?
You get: Traverse decision tree — usually missing connection-reference rebinding (NOT reimport)
troubleshooting
Quickstart
  1. Trigger phrase: 'Build a flow that <X>' OR 'Diagnose flow <Y> error' OR 'Bulk-create flows for <use case>
  2. Expected output: flow JSON / script / diagnostic with the right decision-tree leaf chosen
  3. Common follow-up: solution-alm-engineer to package; dataverse-architect if data model needs work
Works well with
dataverse-architectsolution-alm-engineercopilot-studio-engineer
plugins/power-platform/agents/flow-engineer.md

model-driven-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for model-driven app construction — site maps, app modules, forms (main/quick create/quick view), views, dashboards, charts, business process flows, command bar customization, JS web resources, form scripting via Xrm/formContext APIs. NOT for data modeling (dataverse-architect) and NOT for canvas-only Power Fx (power-fx-engineer). Custom Pages are jointly owned with power-fx-engineer — embedding into a model-driven app is here, the canvas screen content is there.

Example scenarios (3)
Intent: Build a model-driven app shell from a Dataverse schema
You type: Build the model-driven app for <process> with sitemap + forms + views
You get: App module + sitemap + main/quick-create/quick-view forms + views + dashboards
starter
+ 2 more
Intent: Add client-side validation via JS form scripting
You type: Add a JS web resource that validates <field> on save
You get: Web resource + form-event registration + tested in real form
starter
Intent: Embed a Custom Page in a model-driven app for non-tabular UI
You type: Embed a canvas Custom Page in <app> for <use case>
You get: Custom Page wired into sitemap + jointly handed off to power-fx-engineer for the canvas content
advanced
Quickstart
  1. Trigger phrase: 'Build a model-driven app for <X>' OR 'Add JS form scripting for <Y>
  2. Expected output: app shell / form / JS resource — tested against real Dataverse env
  3. Common follow-up: power-fx-engineer for any embedded Custom Page; solution-alm-engineer to package
Works well with
dataverse-architectpower-fx-engineersolution-alm-engineer
plugins/power-platform/agents/model-driven-engineer.md

pcf-developer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Power Apps Component Framework (PCF) custom controls — TypeScript, manifest, lifecycle, build, package, register. Pro-code lane. Spawn when canvas / Custom Pages / canvas components genuinely cannot deliver the required UI. NOT for canvas formulas (power-fx-engineer) and NOT for model-driven JS web resources (model-driven-engineer).

Example scenarios (2)
Intent: Build a PCF custom control for a non-standard input type
You type: Build a PCF control that renders <input type>
You get: Manifest + TypeScript implementation + lifecycle methods + npm build + tested in harness
starter
+ 1 more
Intent: Package + register a PCF control for both canvas + model-driven contexts
You type: Make this PCF control work in both canvas and model-driven apps
You get: Dual-context manifest + tested in both surfaces + solution-ready
advanced
Quickstart
  1. Trigger phrase: 'Build a PCF control for <X>' — use ONLY when canvas can't deliver it
  2. Expected output: TS implementation + manifest + build script + tested in PCF harness
  3. Common follow-up: model-driven-engineer or power-fx-engineer to wire into an app; solution-alm-engineer to package
Works well with
model-driven-engineerpower-fx-engineersolution-alm-engineer
plugins/power-platform/agents/pcf-developer.md

power-bi-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloperAnalyst

Use this agent for Power BI semantic models, DAX authoring/review, reports, dataflows, PBIP project source control, git integration with Azure DevOps / Azure Repos, deployment strategies (Deployment Pipelines vs ADO pipelines), refresh/gateway troubleshooting, and bridging Power BI artifacts with Power Platform solutions/ALM. Spawn for model design, complex DAX, setting up PBIP git repos, diagnosing "why won't my semantic model refresh in prod", report performance, or Power BI ALM/CI-CD questions. NOT for Dataverse schema (dataverse-architect) or general canvas/Power Fx (power-fx-engineer).

Example scenarios (3)
Intent: Design a Power BI semantic model from a star schema
You type: Design the semantic model for <fact + dim tables>
You get: Star schema model + relationships + role-playing dims + calc groups + tested DAX measures
starter
+ 2 more
Intent: Set up a PBIP project under git in Azure DevOps with deployment pipeline
You type: Move <pbix> to PBIP under git + set up ADO pipeline
You get: PBIP repo + deployment pipeline + tested promotion dev → test → prod
advanced
Intent: Diagnose semantic model refresh failure in prod
You type: Power BI refresh failing in prod with <error> — diagnose
You get: Root cause (gateway / credential / source) + fix + monitoring recommendation
troubleshooting
Quickstart
  1. Trigger phrase: 'Design semantic model for <X>' OR 'Set up PBIP git + ADO' OR 'Refresh failing for <model>
  2. Expected output: model / pipeline / diagnostic with VertiPaq + DAX-server-timing depth where relevant
  3. Common follow-up: solution-alm-engineer for solution-level coordination; power-platform-tester for DAX correctness validation
Works well with
solution-alm-engineerdataverse-architectdata-engineer
plugins/power-platform/agents/power-bi-engineer.md

power-fx-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for canvas Power App work — screen architecture, Power Fx formulas, components and component libraries, delegation, performance, theming, accessibility, Test Studio, Monitor. Also covers the canvas/Power Fx side of Custom Pages embedded in model-driven apps. NOT for model-driven app shell work (that's model-driven-engineer) and NOT for data modeling (that's dataverse-architect). Spawn for build, review, troubleshooting, or "is this delegable?" questions.

Example scenarios (3)
Intent: Build a canvas app screen with a gallery + form pattern
You type: Build a canvas screen with gallery + form for <table>
You get: Screen + Power Fx + delegation-safe queries + tested in player
starter
+ 2 more
Intent: Refactor a complex flow-heavy canvas app into delegated Power Fx + reusable components
You type: Refactor <app> — too many flows; move logic into delegated Power Fx + components
You get: Refactor plan + component library + reduced flow surface + same behavior
advanced
Intent: Diagnose 'query can't be delegated' warnings on a large list
You type: Diagnose delegation warning on <Filter/Lookup> against <data source>
You get: Root cause + delegation-safe rewrite OR justified non-delegable acceptance with size cap
troubleshooting
Quickstart
  1. Trigger phrase: 'Build canvas screen for <X>' OR 'Refactor <app>' OR 'Diagnose delegation in <Y>
  2. Expected output: Power Fx + delegation-safe queries + tested behavior in canvas player
  3. Common follow-up: dataverse-architect if data model needs work; solution-alm-engineer to package
Works well with
dataverse-architectmodel-driven-engineersolution-alm-engineer
plugins/power-platform/agents/power-fx-engineer.md

power-pages-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Power Pages (formerly Power Apps Portals) — external-facing sites for anonymous or B2C users. Tables, table permissions, web roles, liquid templating, basic / advanced / multi-step forms, authentication providers (Azure AD B2C, local accounts, etc.), web files, content snippets, custom CSS/JS. Spawn for portal architecture, table-permission design, B2C auth setup, custom liquid, "should this be Power Pages or a canvas app" decisions. NOT for internal-tenant apps (canvas → power-fx-engineer; model-driven → model-driven-engineer).

Example scenarios (3)
Intent: Build a Power Pages portal with anonymous + authenticated areas
You type: Build a portal for <use case> with anon home + auth-required pages
You get: Portal architecture + web roles + table permissions + auth provider config
starter
+ 2 more
Intent: Configure Azure AD B2C auth + table permissions for tiered access
You type: Set up Azure AD B2C on this portal with <N> permission tiers
You get: B2C tenant config + portal-side mapping + tested per-tier table permissions
advanced
Intent: Choose between Power Pages and a canvas app for an external surface
You type: Power Pages vs canvas for <external use case>?
You get: Decision memo — anon vs auth, SEO needs, branding, licensing impact
starter
Quickstart
  1. Trigger phrase: 'Build a portal for <X>' OR 'Set up B2C on <portal>' OR 'Power Pages vs canvas?
  2. Expected output: portal architecture + web roles + table permissions; or auth config; or decision memo
  3. Common follow-up: dataverse-architect for data model; security-reviewer for B2C + table permissions audit
Works well with
dataverse-architectsecurity-reviewersolution-alm-engineer
plugins/power-platform/agents/power-pages-engineer.md

power-platform-admin

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloperCompliance

Use this agent for tenant-level Power Platform admin work — environment strategy (Default avoidance, Production / Sandbox / Developer / Trial / Teams), managed environments, environment groups, DLP policies at tenant + environment scope, CoE Starter Kit, licensing audits, capacity reporting (Dataverse storage, API entitlements, Power Automate request limits), tenant-level analytics, sharing limits, weekly digest. Spawn for governance design, DLP authoring, license budgeting, capacity planning, "do we need managed environments", "audit this tenant for risk". NOT for solution-level ALM (solution-alm-engineer) or app-level builds.

Example scenarios (3)
Intent: Design DLP policy at tenant + environment scope
You type: Design DLP for <tenant> with <connector classifications>
You get: DLP policy doc + rollout plan + override path for sanctioned exceptions
starter
+ 2 more
Intent: Audit licensing + capacity (Dataverse storage, API entitlements, PA request limits)
You type: Audit our tenant — licenses, capacity, where we're throttle-risk
You get: Audit report + per-environment capacity table + recommendations
advanced
Intent: Diagnose why a flow is throttled in prod
You type: Flow <id> is hitting throttle in prod — what's the cap?
You get: Diagnostic against PA request limits + per-user / per-flow / per-connector entitlements + mitigation
troubleshooting
Quickstart
  1. Trigger phrase: 'Design DLP for <tenant>' OR 'Audit our tenant' OR 'Diagnose throttling on <flow>
  2. Expected output: policy doc / audit report / diagnostic — with capacity + licensing math shown
  3. Common follow-up: solution-alm-engineer for env strategy; security-reviewer for cross-tenant sharing audit
Works well with
solution-alm-engineerdataverse-architectsecurity-reviewer
plugins/power-platform/agents/power-platform-admin.md

power-platform-tester

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Power Platform-specific testing — Power Fx unit/integration tests in Test Studio, canvas-app monitor traces, Power Automate flow tests (`Test → Manually`, telemetry-driven assertions), Dataverse data validation, model-driven app form/business-rule testing, DAX measure correctness and performance, Power BI semantic model VertiPaq diagnostics, and `pac solution check`. Spawn AFTER a power-platform specialist has produced a change but BEFORE `solution-alm-engineer` packages the release. NOT for application-layer JS/TS testing of PCF controls (the `pcf-developer` owns that test surface). NOT for general data-pipeline testing (that's the core `data-engineer` or `tester-qa`).

Example scenarios (3)
Intent: Set up Test Studio tests for a canvas app
You type: Build Test Studio tests for <screen / flow> in <app>
You get: Test suite + recorded fixtures + assertions on canvas behavior
starter
+ 2 more
Intent: Wire `pac solution check` into the ALM pipeline
You type: Add `pac solution check` to our ADO pipeline + fail on warnings above <threshold>
You get: Pipeline step + severity threshold + reviewable report artifact
starter
Intent: Validate DAX semantic correctness + VertiPaq + DAX-server timings for a complex measure
You type: Audit DAX measure <name> for correctness + performance
You get: DAX Studio server timings + VertiPaq analyzer + correctness assertions + refactor if needed
advanced
Quickstart
  1. Trigger phrase: 'Test <X>' OR 'Validate DAX <measure>' OR 'Wire pac solution check
  2. Expected output: test suite / DAX diagnostic / pipeline gate — with severity thresholds named
  3. Common follow-up: solution-alm-engineer to package once tests are green
Works well with
power-fx-engineerflow-engineerpower-bi-engineersolution-alm-engineer
plugins/power-platform/agents/power-platform-tester.md

solution-alm-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Power Platform makerDeveloper

Use this agent for Power Platform Application Lifecycle Management — pac CLI mastery, source control of unpacked solutions, environment variables, connection references, environment strategy at the solution level (dev/test/prod promotion), and ALM pipelines (in-product Power Platform Pipelines, Azure DevOps + Power Platform Build Tools, GitHub Actions for Power Platform). Spawn for "set up source control for this solution", "design our pipeline", "diagnose this import failure", "what's the env-var/connection-ref strategy". NOT for data modeling (dataverse-architect) and NOT for tenant-scope governance (power-platform-admin).

Example scenarios (3)
Intent: Set up source control for a Power Platform solution
You type: Unpack <solution.zip> and commit the tree to git
You get: Unpacked solution tree committed + ALM-friendly .gitignore + env-var + connection-ref strategy
starter
+ 2 more
Intent: Design an ALM pipeline (Power Platform Pipelines vs ADO Build Tools)
You type: Design our dev → test → prod pipeline for <solution>
You get: Pipeline design + env-var handling + connection-ref re-binding + rollback strategy
advanced
Intent: Diagnose a solution import failure between dev and test envs
You type: Solution import to <env> failed with <error>
You get: Root cause (env var / connection ref / missing dependency / managed-state) + targeted fix; for PA-flow-stuck patterns, traverse the decision tree first
troubleshooting
Quickstart
  1. Trigger phrase: 'Set up source control for <solution>' OR 'Design pipeline for <X>' OR 'Diagnose import failure
  2. Expected output: unpacked tree + ALM config; or pipeline design; or root-cause diagnostic
  3. Common follow-up: dataverse-architect if schema involved; power-platform-admin for env strategy at tenant scope
Works well with
dataverse-architectflow-engineerpower-platform-admin
plugins/power-platform/agents/solution-alm-engineer.md

Skills (18)

alm-pipeline-design

Design end-to-end ALM pipelines for Power Platform solutions — pac CLI primitives, Azure DevOps multi-stage pipelines, source-control unpacked solutions, env-var + connection-reference promotion across DEV → TEST → UAT → PROD, managed-vs-unmanaged discipline. Used by `solution-alm-engineer` (primary).

plugins/power-platform/skills/alm-pipeline-design/SKILL.md

canvas-app-performance

Diagnose and fix Power Fx canvas app performance — delegation as a P1 design constraint, lazy-load patterns, Concurrent() vs sequential, ClearCollect vs collection growth, OnStart vs OnVisible, screen-transition cost, control-count budgets per screen, and the connector-call audit via Monitor. Used by `power-fx-engineer` (primary).

plugins/power-platform/skills/canvas-app-performance/SKILL.md

code-review

Deep code audit that finds dead wiring, silent failures, unfinished features, placeholder stubs, bloated files, and unnecessary complexity. Produces an actionable report with file:line references grouped by severity. Think of it as a senior dev doing a thorough PR review of the entire codebase. Triggers on: "code review", "audit the code", "review the code", "find dead code", "find placeholders", "check for stubs", "prune the code", "code cleanup", "implementation review", "completeness check", "find unused code".

plugins/power-platform/skills/code-review/SKILL.md

copilot-studio-bot-design

Design Copilot Studio bots — topic vs generative-answers boundaries, knowledge-source hygiene, trigger-phrase design, slot-filling patterns, escalation-to-human criteria, AI Builder vs prompt-flow vs direct Azure OpenAI decisions, and the test-set discipline that catches regressions on every authoring change. Used by `copilot-studio-engineer` (primary).

plugins/power-platform/skills/copilot-studio-bot-design/SKILL.md

dataverse-plugins

Use when developing, registering, or deploying Dataverse plugins (C# server-side extensions). Covers the IPlugin interface, execution pipeline stages, entity images, common patterns (auto-numbering, cascading updates, validation), and registration/deployment. Triggers on: "plugin", "server-side logic", "business logic", "auto-number", "cascading update", "pre-operation", "post-operation", "plugin registration", "IPlugin", "execution pipeline", "plugin trace", "InvalidPluginExecutionException", "PreValidation", "PostOperation".

plugins/power-platform/skills/dataverse-plugins/SKILL.md

dataverse-web-api

Use when programmatically creating, modifying, or querying Dataverse schema and metadata via the Web API (OData v4.0). Covers table/column/relationship definitions, solution ALM, form and view XML construction, app module composition, global option sets, business rules, Custom API registration, and publishing. Triggers on: "dataverse api", "dataverse metadata", "entitydefinitions", "web api schema", "create dataverse table", "create dataverse column", "fetchxml", "formxml", "layoutxml", "dataverse solution", "dataverse relationship", "odata dataverse", "metadata api", "publish customizations", "dataverse alm", "grid control", "editable grid", "business rule", "rich text", "auto-number", "file column", "image column", "pcf control", "security role", "column security", "environment variable", "custom api", "data migration", "solution import".

plugins/power-platform/skills/dataverse-web-api/SKILL.md

dataverse-web-resources

Use when creating, deploying, or managing Dataverse web resources for model-driven apps. Covers JavaScript form scripts (OnLoad, OnSave, OnChange events), HTML dashboard pages, CSS styling, image resources, navigation/side panes, ribbon/command bar customization, business process flow client API, and deployment via the Web API. Triggers on: "web resource", "javascript form", "form script", "html dashboard", "ribbon command", "onload event", "onchange event", "onsave event", "formContext", "Xrm.WebApi", "web resource deployment", "dashboard page", "form event handler", "side pane", "command bar", "ribbon", "modal dialog", "navigation", "Xrm.App", "Xrm.Navigation", "business process flow", "bpf", "stage change".

plugins/power-platform/skills/dataverse-web-resources/SKILL.md

dlp-policy-design

Design tenant Data Loss Prevention policies for Power Platform — business / non-business / blocked classification, environment-scoped vs tenant-wide policies, exemption process, common-connector pitfalls (HTTP, SharePoint, Dataverse, custom connectors), and the "every flow gets re-evaluated on policy change" implication. Used by `power-platform-admin` (primary).

plugins/power-platform/skills/dlp-policy-design/SKILL.md

grounding-protocol

Reduce confident-but-incorrect "I can't do that" claims by forcing agents to verify capabilities before refusing scope. Mandatory checklist covers skills review, alternate-methods enumeration, team-composition check, and escalation phrasing. Inherited by every Power Platform agent.

plugins/power-platform/skills/grounding-protocol/SKILL.md

maintainability-review

Forward-looking maintainability + evolvability review of a Power Platform solution — understandability, modifiability, testability, evolution readiness, ownership. Used before major releases, handoffs, when inheriting an existing solution.

plugins/power-platform/skills/maintainability-review/SKILL.md

pcf-controls

Use when building, deploying, or using PowerApps Component Framework (PCF) controls. Covers field controls and dataset controls, React virtual controls, control lifecycle, manifest configuration, solution packaging, and deployment. Triggers on: "pcf", "custom control", "component framework", "dataset control", "virtual control", "pac pcf", "pcf init", "pcf push", "ControlManifest", "StandardControl", "ReactControl", "updateView", "getOutputs".

plugins/power-platform/skills/pcf-controls/SKILL.md

plan-with-team

Spawns an Agent Team to collaboratively plan Power Platform / Dataverse applications. Three specialists (Data Architect, UX Designer, The Skeptic) debate and refine the plan before any code is written. Falls back to structured single-agent planning if agent teams are not enabled. Triggers on: "plan my app", "plan with team", "design my app", "architect this app", "plan the schema", "team planning", "agent team plan", "plan power app", "plan dataverse app", "design the data model".

plugins/power-platform/skills/plan-with-team/SKILL.md

power-apps-code-apps

Use when building, scaffolding, debugging, or deploying Microsoft Power Apps Code Apps using React, Vue, or TypeScript in VS Code. Handles project initialization via pac CLI, Dataverse and connector data access via the @microsoft/power-apps SDK, power.config.json configuration, Vite build pipelines, and deployment to Power Platform environments. Triggers on: "power apps", "code app", "pac code", "dataverse", "power platform app", "vibe coding", "scaffold power app", "deploy code app".

plugins/power-platform/skills/power-apps-code-apps/SKILL.md

power-automate

Veteran-level reference for Power Automate work — expressions, error handling + scopes, child flows, solution-aware flows + connection references, Dataverse triggers, throttling, approvals, performance patterns. Used by `flow-engineer` (primary) and any agent touching flows.

plugins/power-platform/skills/power-automate/SKILL.md

power-bi

Veteran-level reference for Power BI — PBIP project structure + git, semantic model design, DAX patterns + performance, deployment pipelines, refresh / gateway troubleshooting, integration with Power Platform solutions / ALM. Used by `power-bi-engineer` (primary).

plugins/power-platform/skills/power-bi/SKILL.md

power-pages-permissions

Design table permissions, web roles, and authentication for Power Pages — anonymous vs authenticated patterns, B2C / Entra-External-ID auth, table-permission scoping (global / contact / account / parental / self), record ownership, and the "row I can see in MDA but not in Pages" debugging playbook. Used by `power-pages-engineer` (primary).

plugins/power-platform/skills/power-pages-permissions/SKILL.md

record-screen

Record a Chrome browser tab to video via CLI. Use when the user wants to capture a screen recording of a browser tab. Supports list, start, stop, caption, and status subcommands. No debug mode required — uses a Chrome extension.

plugins/power-platform/skills/record-screen/SKILL.md

visual-qa

AI-powered visual QA testing that walks through an app in the browser, records every action with annotated captions (what was done, what should happen), captures screenshots/GIFs, and sends the evidence to Gemini for automated review. Catches UX misalignments, broken flows, missing states, and edge cases that traditional tests miss. Can use Agent Teams for parallel test coverage. Triggers on: "visual test", "visual qa", "test the app", "qa review", "check the ui", "record a test", "walk through the app", "e2e test", "end to end test", "catch edge cases", "gemini review", "screen test", "ux test", "visual regression".

plugins/power-platform/skills/visual-qa/SKILL.md

Hooks (1)

check-house-opinions.sh

check-house-opinions.sh PostToolUse hook for Edit | Write | MultiEdit on Power Platform source files. Catches the most common, mechanically-detectable violations of the Power Platform team constitution (see plugins/power-platform/CLAUDE.md §3 "house opinions"): 1. GUIDs hard-coded in Power Fx canvas YAML — should look up by name or alt key. 2. Default publisher prefix (`cr_`, `crXXX_`, `new_`) in

plugins/power-platform/hooks/check-house-opinions.sh

Templates (1)

maintainability-review-template.md

Maintainability Review Template

plugins/power-platform/templates/maintainability-review-template.md

Bundled MCP servers (1)

powerbi-editor

{'command': 'pbix-mcp-server'}

finance

v0.5.1

Corporate finance & FP&A specialist team — FP&A analyst (budgets, forecasts, variance commentary), financial modeler (3-statement, DCF, scenarios), controller (close, JEs, reconciliations), treasury analyst (cash, covenants, FX), valuation analyst (DCF + comps + precedent), audit-prep specialist (PBC, walkthroughs, SOC1/2 narratives), and board-pack composer. 4 skills, 8 templates, 1 advisory hook (hardcoded rates, plaintext PII, missing Sources / Assumptions). Inherits ravenclaude-core protocols.

Requires {'plugins': ['ravenclaude-core@>=0.5.0']}
Last updated 2026-05-22
finance fpa financial-modeling controller month-end-close valuation treasury audit-prep board-reporting
7 Agents9 Skills1 Hooks8 Templates

Agents (7)

audit-prep-specialist

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
AnalystConsultantCompliance

Use this agent for audit readiness — PBC (provided-by-client) list management, walkthrough documentation, SOC1 / SOC2 control narratives, deficiency remediation, examiner walkthrough rehearsals. Spawn pre-audit (6-8 weeks before fieldwork), for SOC report preparation, or for examiner walkthrough drafting. NOT for the close itself (controller) and NOT for board / lender reporting (board-pack-composer).

Example scenarios (3)
Intent: Stand up PBC tracker 6-8 weeks before audit fieldwork
You type: Audit kicks off in <N> weeks — stand up the PBC list
You get: PBC tracker with owners + due dates + source-evidence pointers + reviewer sign-off column
starter
+ 2 more
Intent: Draft SOC1/SOC2 control narrative + walkthrough doc
You type: Draft the SOC2 narrative for <control area>
You get: Control narrative + risks + mitigations + walkthrough doc + evidence map
advanced
Intent: Remediate audit deficiency from prior year
You type: Remediate the <prior-year deficiency> finding before fieldwork
You get: Remediation plan + new control design + evidence-collection schedule + management response draft
advanced
Quickstart
  1. Trigger phrase: 'PBC tracker for <audit>' OR 'SOC narrative for <control>' OR 'Remediate <deficiency>
  2. Expected output: structured audit-readiness artifact with sources + owners + dated commitments
  3. Common follow-up: controller for source-evidence (JEs, recons); regulatory-compliance for SOC1/SOC2-CC framework specifics
Works well with
controllerfpa-analyst
plugins/finance/agents/audit-prep-specialist.md

board-pack-composer

tools: Read, Edit, Write, Grep, Glob, Bash model: opus
AnalystConsultant

Use this agent for board / investor / lender reporting packs — narrative-first composition, section sequencing, KPI selection, executive-summary patterns. Spawn for quarterly board cycles, investor updates, lender covenant compliance packs, fundraising-process data rooms. NOT for the underlying analysis (fpa-analyst, financial-modeler, treasury-analyst — they supply the inputs).

Example scenarios (3)
Intent: Compose a quarterly board pack from input analyses
You type: Board pack for Q<N> — assemble the narrative + sections from <inputs>
You get: Board pack outline + executive summary + section sequencing + KPI selection + open questions for the board
starter
+ 2 more
Intent: Lender covenant compliance pack
You type: Build the lender covenant-compliance pack for <period>
You get: Covenant math + waiver-risk flag + supporting evidence + executive summary
advanced
Intent: Fundraising data room narrative
You type: Build the fundraising data-room narrative for <round>
You get: Investor-readable narrative arc + section sequencing + Q&A prep + sensitive-data scrub check
advanced
Quickstart
  1. Trigger phrase: 'Board pack for <period>' OR 'Covenant pack for <lender>' OR 'Fundraising narrative for <round>
  2. Expected output: narrative-first pack with executive summary + sourced KPIs + open questions
  3. Common follow-up: fpa-analyst for variance commentary inputs; treasury-analyst for cash slides; documentarian for prose polish
Works well with
fpa-analystfinancial-modelertreasury-analyst
plugins/finance/agents/board-pack-composer.md

controller

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Analyst

Use this agent for month-end / quarter-end close work — JE design and review, account reconciliations, accruals, intercompany, close-calendar mechanics, deferred revenue / prepaids / fixed-asset rolls. Spawn for close prep, JE review, recon escalations, accrual triage. NOT for budget / forecast (fpa-analyst) and NOT for treasury / cash (treasury-analyst).

Example scenarios (3)
Intent: Design / refresh the month-end close calendar
You type: Close calendar for <period> — day-by-day owners + deliverables
You get: Close calendar with named owners + daily milestones + JE buckets + recon checklist
starter
+ 2 more
Intent: Triage a recon variance that's blocking close
You type: <account> recon is off by <amount> — diagnose
You get: Root cause (cutoff / FX / GL coding / intercompany) + proposed reclassification + documented entry
troubleshooting
Intent: Design accrual / deferred-revenue / fixed-asset roll for a new revenue stream
You type: Design the <accrual type> roll for our new <revenue stream>
You get: Accrual methodology + GL coding + journal-entry template + recon plan + audit support
advanced
Quickstart
  1. Trigger phrase: 'Close calendar for <period>' OR '<account> recon off' OR 'Design accrual for <revenue stream>
  2. Expected output: close artifact (calendar / recon / JE design) with named owners + sources + materiality threshold
  3. Common follow-up: fpa-analyst for variance commentary AFTER recons settle; audit-prep-specialist if SOC/audit evidence needs collection
Works well with
fpa-analystaudit-prep-specialist
plugins/finance/agents/controller.md

financial-modeler

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
AnalystConsultant

Use this agent for financial-model work — three-statement models, DCF, scenario / sensitivity, model architecture, model documentation. Spawn for building a model from scratch, reviewing an existing model, refactoring a broken / overgrown one, or defending modeling assumptions. NOT for budget / forecast / variance work (fpa-analyst) and NOT for board-pack composition (board-pack-composer).

Example scenarios (3)
Intent: Build a three-statement model for an acquisition target
You type: Build a 3-statement model for <target> with <X year> projections
You get: Linked IS + BS + CF + assumptions tab + scenario layer + documentation
starter
+ 2 more
Intent: Review an existing model for hardcodes / circulars / methodology issues
You type: Review <model> — 7-pass review
You get: Findings (hardcodes / undisclosed circulars / methodology gaps) + remediation plan ranked by audit-defensibility
advanced
Intent: Refactor a broken / overgrown model
You type: Refactor <model> — too many tabs, broken formulas, unclear assumptions
You get: Refactored model with inputs-only sheet + clean dependencies + documented assumptions + tested integrity
advanced
Quickstart
  1. Trigger phrase: 'Build 3-statement for <target>' OR 'Review <model>' OR 'Refactor <model>
  2. Expected output: model + documentation tab + assumptions tab + tested scenarios + sources cited
  3. Common follow-up: valuation-analyst for DCF / comps on top; fpa-analyst for ongoing forecast cycles; board-pack-composer for board-facing deliverable
Works well with
fpa-analystvaluation-analyst
plugins/finance/agents/financial-modeler.md

fpa-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
AnalystConsultant

Use this agent for FP&A work — budgeting, rolling forecasts, KPI commentary, variance walks, scenario modeling at the P&L level, headcount and opex planning. Spawn for budget season, monthly / quarterly variance commentary, KPI pack assembly, board-pack commentary inserts. NOT for full three-statement model build (financial-modeler) and NOT for journal entries / close mechanics (controller).

Example scenarios (3)
Intent: Write variance commentary for monthly close
You type: Variance commentary for <period> — why is <line item> off by <amount>?
You get: Variance walk with named driver + commentary in plain English + materiality threshold applied + sourced figures
starter
+ 2 more
Intent: Build / refresh the rolling forecast
You type: Refresh the rolling forecast for <next N months>
You get: Forecast with documented assumptions + scenarios (base/upside/downside) + variance to prior forecast explained
starter
Intent: Assemble KPI pack with commentary for board / leadership
You type: Build the KPI pack for <period> for <audience>
You get: KPI pack with definitions + owners + refresh cadence + narrative commentary for each metric
advanced
Quickstart
  1. Trigger phrase: 'Variance for <period>' OR 'Refresh forecast for <next N months>' OR 'KPI pack for <audience>
  2. Expected output: variance walk / forecast / KPI pack with sources + materiality + narrative — never tables without commentary
  3. Common follow-up: controller if recons unsettle the commentary; board-pack-composer for assembly; financial-modeler if the model itself needs work
Works well with
financial-modelercontrollerboard-pack-composer
plugins/finance/agents/fpa-analyst.md

treasury-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
AnalystConsultant

Use this agent for treasury and cash-management work — 13-week direct cash forecasts, working-capital optimization, debt covenant compliance, FX exposure and hedging, banking operations, debt-schedule mechanics. Spawn for cash forecasts, covenant calculations, FX strategy, banking-fee audits, debt-restructuring scenarios. NOT for budget / P&L forecasting (fpa-analyst) and NOT for valuation (valuation-analyst).

Example scenarios (3)
Intent: Build / refresh the 13-week direct cash forecast
You type: Refresh the 13-week cash forecast — runway looks tight
You get: 13-week direct cash forecast + base/downside scenarios + working-capital actions ranked by impact
starter
+ 2 more
Intent: Calculate covenant compliance for a lender pack
You type: Calculate <covenant> for <period> + flag waiver risk
You get: Covenant math + waiver-risk flag + remediation options + evidence pack for the lender
advanced
Intent: Design FX hedging strategy for a multi-currency exposure
You type: Design FX hedging for our <currency> exposure
You get: Exposure quantified + hedge ratio recommendation + instrument choice + accounting treatment note
advanced
Quickstart
  1. Trigger phrase: '13-week cash for <period>' OR 'Covenant <name> for <period>' OR 'FX hedge for <currency>
  2. Expected output: cash artifact / covenant pack / hedge plan with sources + assumptions + downside scenario
  3. Common follow-up: board-pack-composer for lender or board assembly; controller for source data; fpa-analyst for longer-range view
Works well with
fpa-analystcontroller
plugins/finance/agents/treasury-analyst.md

valuation-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
AnalystConsultant

Use this agent for valuation work — business valuation (DCF + comparable companies + precedent transactions), 409A valuations, fairness-opinion support, valuation methodology defense, ESOP / RSU strike-price refreshes. Spawn for pre-investment / pre-acquisition valuation, board-discussion prep, 409A refreshes, defending a valuation against pushback. NOT for general modeling (financial-modeler) and NOT for the operating forecast itself (fpa-analyst).

Example scenarios (3)
Intent: Build a triangulated valuation (DCF + comps + precedent)
You type: Valuation for <target> — DCF + comps + precedent triangulation
You get: Three valuation methods + weighted blend + range (not a single point) + method-weight rationale
starter
+ 2 more
Intent: Refresh a 409A valuation
You type: 409A refresh — last one was <date>
You get: Updated 409A with current cap-table + recent transaction data + methodology defense doc
advanced
Intent: Defend a valuation against pushback
You type: <stakeholder> is pushing back on the valuation — defend it
You get: Methodology defense + sensitivity analysis + ranked counter-arguments + recommended posture
troubleshooting
Quickstart
  1. Trigger phrase: 'Valuation for <target>' OR '409A refresh' OR 'Defend valuation against <pushback>
  2. Expected output: valuation range with method weights + assumptions + sensitivity + defense narrative
  3. Common follow-up: financial-modeler if the underlying forecast needs work; board-pack-composer if going to a board
Works well with
financial-modelerfpa-analyst
plugins/finance/agents/valuation-analyst.md

Skills (9)

board-pack-composition

Compose narrative-first board / investor / lender reporting packs — section sequencing, KPI selection, executive-summary patterns. Numbers don't ship without commentary. Used by `board-pack-composer` (primary).

plugins/finance/skills/board-pack-composition.md

dcf-valuation

Run a defensible discounted-cash-flow valuation — explicit projection period, terminal value (Gordon vs exit-multiple), WACC build, sensitivities, scenario weighting, and the cross-check against trading / precedent multiples. Reach for this skill on any valuation work (pre-investment, 409A, fairness opinion, M&A) where a number has to survive board / counterparty scrutiny. Used by `valuation-analyst` (primary) and `financial-modeler`.

plugins/finance/skills/dcf-valuation.md

driver-based-forecasting

Build and refresh a driver-based rolling forecast that survives FP&A review — driver tree from revenue volume × price, opex by category-driver, working-capital roll, capex schedule, scenario layer. Reach for this skill when standing up a new forecast model, refreshing the annual plan, or when an executive asks "what would it take to hit X?" Used by `fpa-analyst` (primary), `financial-modeler`, and `board-pack-composer` for the forecast slides.

plugins/finance/skills/driver-based-forecasting.md

kpi-definition

Define KPIs that survive cross-team disagreement — single owner, single formula, single source of truth, decay-tested, documented in a KPI dictionary. Reach for this skill when launching a new metric, when two teams cite different numbers for "the same" KPI, when an exec asks "why doesn't this tie?", or when standing up a KPI pack. Used by `fpa-analyst` (primary) and `board-pack-composer`.

plugins/finance/skills/kpi-definition.md

model-review

7-pass review of financial models — assumptions, mechanics, integrity (BS balances, CF reconciles), hardcodes, error-checks, scenarios, documentation. Used by `financial-modeler` (primary) and `valuation-analyst` for DCF integrity checks.

plugins/finance/skills/model-review.md

month-end-close

Run a clean month-end / quarter-end close — close-calendar mechanics, JE buckets, reconciliation checklist, exception-triage playbook. Reconciliation before commentary; materiality as a design constraint. Used by `controller` (primary).

plugins/finance/skills/month-end-close.md

soc-control-walkthrough

Document a SOC 1 / SOC 2 control walkthrough — control description, test of design vs test of operating effectiveness, evidence-of-control patterns, sampling, exception triage, deficiency severity classification (control deficiency / significant deficiency / material weakness). Reach for this skill during pre-audit prep, when documenting a new control for the next SOC cycle, or when responding to an auditor's walkthrough request. Used by `audit-prep-specialist` (primary).

plugins/finance/skills/soc-control-walkthrough.md

thirteen-week-cash-forecast

Build and operate a 13-week direct-method cash forecast — receipts by source, disbursements by category, week-by-week roll, variance-to-prior-forecast cadence, covenant headroom view, and the trigger thresholds for management action. Reach for this skill when a business is cash-tight, in workout, lender-monitored, or post-fundraise discipline-building. Used by `treasury-analyst` (primary) and `fpa-analyst` for the longer-range bridge.

plugins/finance/skills/thirteen-week-cash-forecast.md

variance-commentary

Write variance commentary that tells a story instead of restating a table — templates for revenue, GM, opex, EBITDA, FCF with named drivers + materiality threshold applied. Source-cite every number. Used by `fpa-analyst` (primary) + `board-pack-composer`.

plugins/finance/skills/variance-commentary.md

Hooks (1)

flag-finance-anti-patterns.sh

flag-finance-anti-patterns.sh PostToolUse hook for Edit | Write | MultiEdit on finance-conventional files. Flags mechanically-detectable violations of the finance team constitution (see plugins/finance/CLAUDE.md §3 "house opinions" and §4 "anti-patterns"): 1. Hardcoded rate-like numbers in model files (`*0.21`, `*1.25` etc.) where the number looks like a tax rate, growth rate, or discount factor b

plugins/finance/hooks/flag-finance-anti-patterns.sh

Templates (8)

account-reconciliation.md

Account reconciliation — [Account name] / [GL #]

plugins/finance/templates/account-reconciliation.md

audit-pbc-tracker.md

Audit PBC tracker — [Audit / Period]

plugins/finance/templates/audit-pbc-tracker.md

board-pack-outline.md

Board pack outline — [Entity] [Period]

plugins/finance/templates/board-pack-outline.md

cash-flow-forecast.md

13-week direct cash forecast — [Entity]

plugins/finance/templates/cash-flow-forecast.md

kpi-pack-template.md

KPI pack — [Entity] [Period]

plugins/finance/templates/kpi-pack-template.md

model-documentation.md

Model documentation — [Model name]

plugins/finance/templates/model-documentation.md

month-end-close-calendar.md

Month-end close calendar — [Entity] [Period]

plugins/finance/templates/month-end-close-calendar.md

variance-commentary.md

Variance commentary — [Entity] [Period]

plugins/finance/templates/variance-commentary.md

regulatory-compliance

v0.4.1

Financial-regulatory & compliance specialist team — AML/KYC analyst (sanctions, EDD, SAR/STR), regulatory-reporting analyst (FATCA/CRS, supervisory returns, Solvency II, BMA EBS), risk-and-controls specialist (three lines of defense, KRIs), policy & procedure writer, examination-prep specialist, and Bermuda-insurance specialist. 4 skills, 8 templates, 1 defensive PreToolUse hook (PII scrub — SSN/IBAN/credit-card/Bermuda TIN/wire instructions). Positioning reflects field experience inside a Tier-1 financial regulator (BMA). Inherits ravenclaude-core protocols.

Requires {'plugins': ['ravenclaude-core@>=0.5.0']}
Last updated 2026-05-22
regulatory-compliance aml kyc sanctions regulatory-reporting risk-management bermuda bma examination-prep soc2
6 Agents9 Skills1 Hooks8 Templates

Agents (6)

aml-kyc-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Compliance

Use this agent for AML / KYC / sanctions / financial-crime work — customer-onboarding KYC, sanctions screening / hit clearing, EDD (enhanced due diligence), SAR / STR narrative drafting, transaction-monitoring rule tuning. Spawn for KYC file reviews, suspicious-activity triage, sanctions hits, EDD packages, AML program design questions. NOT for general regulatory filings (regulatory-reporting-analyst) and NOT for legal opinions (route to counsel).

Example scenarios (3)
Intent: Review a KYC file + recommend EDD action
You type: Review the KYC file for <customer> — higher-risk indicators?
You get: File review + risk-rating + EDD recommendation if warranted + multi-source verification check
starter
+ 2 more
Intent: Triage a sanctions hit + clear or escalate
You type: Sanctions hit on <name> — clear or escalate?
You get: Binary disposition (cleared with documented rationale + named clearer + source-list version, OR escalated) — never 'looks fine
starter
Intent: Draft a SAR / STR narrative for a suspicious transaction pattern
You type: Draft a SAR narrative for <transaction pattern> on <customer>
You get: SAR/STR narrative with typology + the W's + omissions documented + reviewer sign-off chain
advanced
Quickstart
  1. Trigger phrase: 'KYC review <customer>' OR 'Sanctions hit <name>' OR 'SAR narrative for <pattern>
  2. Expected output: structured KYC/sanctions/SAR artifact with regulatory citations + jurisdiction + confidentiality class
  3. Common follow-up: risk-and-controls-specialist if programmatic gap surfaces; policy-and-procedure-writer if policy refresh needed; counsel for legal opinion
Works well with
risk-and-controls-specialistpolicy-and-procedure-writer
plugins/regulatory-compliance/agents/aml-kyc-analyst.md

bermuda-insurance-specialist

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
ComplianceConsultant

Use this agent for Bermuda-domiciled insurance work — BMA Insurance Act 1978 + Rules / Codes, captives (Class 1 / 2 / 3 / 3A / 3B), commercial insurers (Class 4 / 3A / IIGB), long-term insurers (Class A-E), reinsurers, Insurance-Linked Securities (ILS) / Special Purpose Insurers (SPI), Segregated Accounts Companies (SAC), BSCR / ECR / MCR, EBS (economic balance sheet), CISSA, Solvency II equivalence implications, BMA filings. Spawn when work involves a Bermuda insurance entity, BMA-specific filings, captive structures, ILS / SPI vehicles, or BMA exam prep. NOT for non-Bermuda regulatory work (use regulatory-reporting-analyst) and NOT for legal opinions.

Example scenarios (3)
Intent: Classify a Bermuda insurance entity (Class 1/2/3/3A/3B/4/A-E/IIGB)
You type: Classify <entity> under BMA Insurance Act for capital + filing implications
You get: Class determination + BSCR/ECR/MCR implications + filing obligations + Solvency II equivalence path
starter
+ 2 more
Intent: Build the BSCR / ECR / MCR calculation for a captive or commercial insurer
You type: Calculate BSCR for <entity> based on current EBS
You get: Capital calc with line-item derivation + sensitivity to top assumptions + filing-ready output
advanced
Intent: Prep BMA exam materials for a Bermuda insurance entity
You type: BMA exam in <N> weeks for <entity> — walkthrough rehearsal
You get: Walkthrough docs + PBC tracker + mock-examiner Q&A + BMA-specific filing-history audit
advanced
Quickstart
  1. Trigger phrase: 'Classify <entity> under BMA' OR 'BSCR for <entity>' OR 'BMA exam prep for <entity>
  2. Expected output: BMA-cited artifact (classification / capital calc / exam prep) with Insurance Act + Rules citations + jurisdiction
  3. Common follow-up: regulatory-reporting-analyst for the filing itself; examination-prep-specialist for exam-week posture; counsel for any legal-opinion question
Works well with
regulatory-reporting-analystexamination-prep-specialistpolicy-and-procedure-writer
plugins/regulatory-compliance/agents/bermuda-insurance-specialist.md

examination-prep-specialist

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Compliance

Use this agent for regulator examination readiness — PBC list management for exam, walkthrough rehearsals, mock examiner interviews, examiner Q&A drafting, MRA / MRIA / management-letter responses, remediation tracking. Spawn 6-12 weeks before an exam, immediately after an exam closes, or when a regulator's information request lands. NOT for financial-statement audit prep (that's finance/audit-prep-specialist).

Example scenarios (3)
Intent: Stand up exam readiness 6-12 weeks before regulator exam
You type: BMA/Fed/OCC exam in <N> weeks — stand up readiness
You get: PBC tracker + walkthrough docs + mock-interview agenda + named owners per workstream
starter
+ 2 more
Intent: Draft management response to MRA / MRIA / management letter
You type: Draft response to <MRA/MRIA/finding> — due in <N> weeks
You get: Response narrative + remediation plan with named owners + dated commitments + evidence-collection schedule
advanced
Intent: Run mock examiner walkthrough on a control area
You type: Mock walkthrough on <control area> — find weak spots before fieldwork
You get: Mock-interview Q&A + identified weak spots + remediation list + named rehearsal owners
advanced
Quickstart
  1. Trigger phrase: 'Exam prep for <date>' OR 'Response to <finding>' OR 'Mock walkthrough on <area>
  2. Expected output: structured exam artifact (PBC / response / walkthrough) with regulatory citations + dated commitments + named owners
  3. Common follow-up: subject-matter specialists for substantive content; counsel if response involves legal exposure
Works well with
aml-kyc-analystregulatory-reporting-analystrisk-and-controls-specialistpolicy-and-procedure-writer
plugins/regulatory-compliance/agents/examination-prep-specialist.md

policy-and-procedure-writer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Compliance

Use this agent for compliance manual / policy / procedure authoring — new policy drafting, P&P refreshes, gap analysis against new regulation, regulator-facing documentation, jurisdictional adaptation of an existing policy. Spawn for new policies, periodic policy review cycles, mapping a new regulation into existing policies, drafting public-facing compliance commitments. NOT for legal opinions (route to counsel) and NOT for operational implementation (route to the relevant operational team).

Example scenarios (3)
Intent: Draft a new compliance policy from scratch
You type: Draft a <policy area> policy — we don't have one
You get: Policy with purpose/scope/definitions/roles/procedures/monitoring/review cycle + regulatory citations + ownership
starter
+ 2 more
Intent: Gap analysis against new regulation
You type: <new regulation> just landed — gap analysis against our current P&Ps
You get: Gap report + ranked policy updates + draft revisions for the highest-priority gaps
advanced
Intent: Annual policy refresh for an existing P&P
You type: Annual refresh of <policy> — check against current regulation + practice
You get: Refreshed policy + change log + reviewer sign-off chain + operational-realism check
starter
Quickstart
  1. Trigger phrase: 'Draft <policy area>' OR 'Gap analysis for <regulation>' OR 'Annual refresh of <policy>
  2. Expected output: policy / gap report / refresh with primary-source regulatory citations + named owners + review cycle
  3. Common follow-up: aml-kyc-analyst for operational realism on AML policies; risk-and-controls-specialist if controls need updating; counsel for any legal-opinion gate
Works well with
risk-and-controls-specialistaml-kyc-analyst
plugins/regulatory-compliance/agents/policy-and-procedure-writer.md

regulatory-reporting-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
ComplianceAnalyst

Use this agent for regulatory filings — FATCA, CRS, supervisory returns, Solvency II QRTs, BMA EBS, US RBC, statutory financial statements, supervisory reports, capital adequacy calculations. Spawn for period-end filing prep, return review pre-submission, data-lineage / source-quality questions for regulatory data, regulatory accounting policy reviews. NOT for AML / sanctions specifically (aml-kyc-analyst) and NOT for legal opinions.

Example scenarios (3)
Intent: Prep a period-end regulatory filing (FATCA / CRS / Solvency II QRT / BMA EBS)
You type: Prep <filing> for <period> — data lineage + maker-checker chain
You get: Filing ready + data-lineage audit + maker-checker sign-off chain + pre-submission checklist passed
starter
+ 2 more
Intent: Pre-submission review of a regulatory return
You type: Review <return> before submission — find errors
You get: Review report + identified errors (data / methodology / disclosure) + remediation + sign-off recommendation
advanced
Intent: Diagnose source-data quality issue blocking a filing
You type: Source data for <return> has <issue> — can we file?
You get: Root cause + remediation options (fix source / disclose limitation / restate) + regulator-acceptance risk ranking
troubleshooting
Quickstart
  1. Trigger phrase: 'Prep <filing> for <period>' OR 'Review <return> pre-submission' OR 'Source data issue on <return>
  2. Expected output: filing-ready artifact / review report / diagnostic — with primary-source regulatory citations + maker-checker chain
  3. Common follow-up: finance/controller for source data; bermuda-insurance-specialist if Bermuda-domiciled; examination-prep-specialist if exam-adjacent
Works well with
examination-prep-specialistrisk-and-controls-specialist
plugins/regulatory-compliance/agents/regulatory-reporting-analyst.md

risk-and-controls-specialist

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: sonnet
Compliance

Use this agent for enterprise risk management — risk-framework design, three lines of defense, risk-appetite statements, risk registers, KRI design, control self-assessment, ORM / ERM. Spawn for risk-register builds and refreshes, control-mapping, KRI tuning, three-lines-of-defense assessments, risk-appetite-statement workshops. NOT for AML-specific risk (aml-kyc-analyst owns that) and NOT for legal opinions.

Example scenarios (3)
Intent: Build / refresh an enterprise risk register
You type: Build the risk register for <entity / domain> — inherent + residual ratings
You get: Risk register with named risks + inherent rating + control mapping + residual rating + KRIs + named owners
starter
+ 2 more
Intent: Design a risk-appetite statement
You type: Draft a risk-appetite statement for <domain>
You get: Risk-appetite statement with quantified tolerances + qualitative red-lines + governance + escalation paths
advanced
Intent: Three-lines-of-defense assessment for a control area
You type: Assess three-lines-of-defense for <control area> — are accountabilities clear?
You get: Assessment with named 1L/2L/3L owners + identified gaps + remediation plan
advanced
Quickstart
  1. Trigger phrase: 'Risk register for <domain>' OR 'Risk-appetite statement for <X>' OR '3LOD assessment for <area>
  2. Expected output: risk artifact with regulatory citations + named owners + inherent + residual ratings (never one or the other)
  3. Common follow-up: policy-and-procedure-writer to map risks to P&Ps; aml-kyc-analyst if AML-specific risk surfaces; examination-prep-specialist for exam evidence
Works well with
policy-and-procedure-writerexamination-prep-specialistaml-kyc-analyst
plugins/regulatory-compliance/agents/risk-and-controls-specialist.md

Skills (9)

aml-program-review

Structured review of an AML program against FATF / FFIEC expectations — the 5 pillars, common findings, regulatory citations with primary sources. Used by `aml-kyc-analyst` (primary).

plugins/regulatory-compliance/skills/aml-program-review.md

control-testing

Compliance / second-line control testing rubric — design adequacy + operating effectiveness for compliance controls (KYC quality, monitoring rule tuning, training coverage, regulatory-mapping freshness). Distinct from SOC1/SOC2 financial-control testing — second-line compliance testing has different scoping, sampling, and reporting. Reach for this skill when scoping a periodic compliance-monitoring program, training MI/QC analysts, or responding to an exam request for "evidence your controls work." Used by `risk-and-controls-specialist` (primary) and `aml-kyc-analyst`.

plugins/regulatory-compliance/skills/control-testing.md

examination-readiness

Pre-exam playbook for regulator examinations — PBC tracker, walkthrough rehearsal, mock interviews, exam-week posture, MRA / MRIA / management-letter response patterns. Used by `examination-prep-specialist` (primary).

plugins/regulatory-compliance/skills/examination-readiness.md

kyc-edd-review

KYC file + EDD review playbook — risk-rating logic, BOI / UBO verification, source-of-wealth vs source-of-funds, EDD trigger conditions, file completeness checklist, sign-off chain. Reach for this skill when reviewing a single customer file, designing the firm's KYC standard, or training analysts. Used by `aml-kyc-analyst` (primary).

plugins/regulatory-compliance/skills/kyc-edd-review.md

regulatory-mapping

Map internal controls / policies / procedures to specific regulatory citations (regulator + section + paragraph). Gap-analysis output format. Used by `risk-and-controls-specialist` + `policy-and-procedure-writer`.

plugins/regulatory-compliance/skills/regulatory-mapping.md

risk-register-build

Build / refresh an enterprise risk register that survives audit committee scrutiny — three lines of defense assignment, inherent + residual rating math, KRI design, risk-appetite mapping, control coverage, and the half-yearly refresh cadence. Reach for this skill when standing up a new ORM/ERM framework, refreshing the register, or remediating an "outdated register" finding. Used by `risk-and-controls-specialist` (primary) and `policy-and-procedure-writer`.

plugins/regulatory-compliance/skills/risk-register-build.md

sanctions-hit-disposition

Disposition framework for sanctions screening alerts — true-match vs false-positive triage, secondary-match evidence chain, escalation criteria, documented-rationale template, list-version capture, and the audit-trail requirements that survive examiner review. Reach for this skill when designing the disposition process or training analysts on hit clearance. Used by `aml-kyc-analyst` (primary).

plugins/regulatory-compliance/skills/sanctions-hit-disposition.md

sar-narrative-drafting

Draft SAR / STR narratives that survive regulator review — typology + the W's + what to omit + reviewer sign-off chain. Used by `aml-kyc-analyst` (primary). Confidentiality class always at least client-confidential; often regulator-only.

plugins/regulatory-compliance/skills/sar-narrative-drafting.md

supervisory-return-prep

Period-end supervisory / regulatory return preparation playbook — data lineage, maker-checker, materiality / threshold definitions, common return families (FATCA, CRS, BMA EBS, Solvency II, supervisory returns, capital adequacy / RBC), late-filing protocols. Reach for this skill 4-6 weeks before a periodic filing or when responding to a regulator data request. Used by `regulatory-reporting-analyst` (primary).

plugins/regulatory-compliance/skills/supervisory-return-prep.md

Hooks (1)

scrub-confidential-pre-write.sh

scrub-confidential-pre-write.sh PreToolUse hook for Write | Edit | MultiEdit. Scans the *pending* target file (its current on-disk content if it exists; the agent's about-to-write content is not directly visible here, so this hook acts as a second line of defense by re-scanning the file AFTER the tool runs is one option, but this hook is PreToolUse and so checks the existing file content for prior

plugins/regulatory-compliance/hooks/scrub-confidential-pre-write.sh

Templates (8)

aml-program-outline.md

AML program outline — [Entity]

plugins/regulatory-compliance/templates/aml-program-outline.md

control-narrative.md

Control narrative — [Control ID] [Control name]

plugins/regulatory-compliance/templates/control-narrative.md

examination-response-tracker.md

Examination response tracker — [Regulator] [Exam type] [Period]

plugins/regulatory-compliance/templates/examination-response-tracker.md

kyc-edd-workpaper.md

KYC / EDD workpaper — [Customer ID]

plugins/regulatory-compliance/templates/kyc-edd-workpaper.md

policy-template.md

[Policy Name]

plugins/regulatory-compliance/templates/policy-template.md

risk-register.md

Risk register — [Entity / Domain]

plugins/regulatory-compliance/templates/risk-register.md

sar-narrative-template.md

SAR / STR narrative — [Case ID]

plugins/regulatory-compliance/templates/sar-narrative-template.md

supervisory-return-checklist.md

Pre-submission checklist — [Return name] [Period]

plugins/regulatory-compliance/templates/supervisory-return-checklist.md

web-design

v0.4.2

Web design & build specialist team — web architect (IA, stack, hosting), UX designer (wireframes, flows, conversion), visual designer (brand, typography, tokens), frontend implementer (HTML/CSS/JS, React, Astro, Next), content strategist (copy, microcopy, SEO content), accessibility auditor (WCAG 2.2 AA/AAA), and performance engineer (Core Web Vitals, image/font optimization). 4 skills (design-system audit, accessibility review, Core Web Vitals tuning, technical SEO audit), 8 templates, 1 advisory hook, and a knowledge bank seeded with a curated 2026 reference set of "cutting edge yet simple" marketing-site donors (Linear, Vercel, Raycast, Resend, Cursor, v0, Tldraw, Cal.com) — visual-designer / ux-designer / frontend-implementer / web-architect all carry compact inline priors plus a pointer to the full brief. Inherits ravenclaude-core protocols.

Requires {'plugins': ['ravenclaude-core@>=0.5.0']}
Last updated 2026-05-22
web-design accessibility wcag performance core-web-vitals seo design-system frontend ux content-strategy
7 Agents9 Skills1 Hooks8 Templates

Agents (7)

accessibility-auditor

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Developer

Use this agent for accessibility work — WCAG 2.2 AA / AAA audits, ARIA review, keyboard-navigation review, screen-reader testing, color-contrast checks, focus management, reduced-motion / reduced-data accommodation. Spawn for pre-launch audits, remediation prioritization, ongoing a11y review cycles. NOT for visual design (visual-designer) and NOT for implementation (frontend-implementer).

Example scenarios (3)
Intent: Pre-launch WCAG 2.2 AA audit of a site
You type: Audit <site> against WCAG 2.2 AA — what blocks launch?
You get: Audit report ranked by user-impact + WCAG criterion + remediation owner + go/no-go
starter
+ 2 more
Intent: ARIA + keyboard-navigation review for a complex component
You type: Review <component> for ARIA + keyboard nav
You get: Annotated findings + role/state/property fixes + focus-trap pattern + screen-reader tested
advanced
Intent: Color-contrast + reduced-motion audit on a design system
You type: Audit <design system> for contrast + prefers-reduced-motion compliance
You get: Per-token contrast ratios + token-fix suggestions + motion-preference handling
starter
Quickstart
  1. Trigger phrase: 'A11y audit <site>' OR 'ARIA review <component>' OR 'Contrast audit <design system>
  2. Expected output: WCAG-cited findings + remediation owner + user-impact-ranked priorities
  3. Common follow-up: visual-designer for token revisions; frontend-implementer for ARIA + keyboard fixes; ux-designer for flow-level a11y
Works well with
ux-designervisual-designerfrontend-implementer
plugins/web-design/agents/accessibility-auditor.md

content-strategist

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
DeveloperConsultant

Use this agent for content / copy work — site copy, content hierarchy, microcopy, SEO content, content style guide, content audit, content modeling for headless CMS. Spawn for content audit, copy authoring, voice-and-tone design, content modeling, blog / article strategy. NOT for stakeholder prose (use ravenclaude-core/documentarian) and NOT for technical SEO infrastructure (use web-architect).

Example scenarios (3)
Intent: Author homepage + product-page copy aligned to a voice-and-tone guide
You type: Write the home + <product page> copy in <brand voice>
You get: Copy in voice + microcopy for CTAs + form labels + error messages + one-CTA-per-screen enforced
starter
+ 2 more
Intent: Content audit of existing site for SEO + voice + accuracy
You type: Audit the content on <site> — SEO + voice + accuracy
You get: Audit report + page-by-page recommendations + ranked rewrite list + voice-drift findings
advanced
Intent: Design content model for headless CMS
You type: Design the content model for <CMS> for a <site type>
You get: Content-type schema + field-level guidance + editor microcopy + draft preview workflow
advanced
Quickstart
  1. Trigger phrase: 'Write copy for <page>' OR 'Audit content on <site>' OR 'Design content model for <CMS>
  2. Expected output: copy / audit report / content model — with voice consistency + one-CTA-per-screen + SEO-friendly headings
  3. Common follow-up: ux-designer for layout + microcopy interplay; web-architect if content model touches CMS infrastructure
Works well with
ux-designerweb-architect
plugins/web-design/agents/content-strategist.md

frontend-implementer

tools: Read, Edit, Write, Grep, Glob, Bash model: sonnet
Developer

Use this agent for web frontend implementation — HTML, CSS, vanilla JS, React, Astro, Next, component-library work, responsive patterns, design-token wiring, build integration. Spawn for UI build / refactor, design-to-code conversion, component-library setup, design-system code. NOT for backend code (use ravenclaude-core/backend-coder) and NOT for visual decisions (visual-designer).

Example scenarios (3)
Intent: Build a component from a designer's spec with semantic HTML + tokens
You type: Implement <component> from <design spec> — semantic HTML + token-only colors
You get: Component code + tokens wired + tested responsive + a11y semantics + Storybook entry
starter
+ 2 more
Intent: Wire a design system's tokens into a React / Astro / Next codebase
You type: Wire <design system> tokens into <codebase>
You get: Token pipeline (Style Dictionary or equivalent) + CSS vars + Tailwind / equivalent integration + dark-mode support
advanced
Intent: Refactor a hardcoded-values component to token-driven
You type: Refactor <component> — replace hardcoded values with design tokens
You get: Token migration + same visual output + theme-switch verified + a11y unchanged
advanced
Quickstart
  1. Trigger phrase: 'Build <component>' OR 'Wire <design system> tokens' OR 'Refactor <component> to tokens
  2. Expected output: code + Storybook + responsive verified + a11y semantics + token-driven (no hardcoded values)
  3. Common follow-up: accessibility-auditor for a11y review; performance-engineer for CWV impact; visual-designer if spec ambiguity surfaced
Works well with
visual-designerux-designerperformance-engineeraccessibility-auditor
plugins/web-design/agents/frontend-implementer.md

performance-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Developer

Use this agent for web performance work — Core Web Vitals (LCP / CLS / INP) diagnosis and tuning, image / font / JS optimization, CDN strategy, caching, third-party hygiene, performance budgets. Spawn for performance review, slow-page diagnosis, pre-launch budget enforcement, ongoing CWV monitoring. NOT for backend perf (use ravenclaude-core/backend-coder) and NOT for build / hosting decisions (web-architect).

Example scenarios (3)
Intent: Diagnose slow page + recommend fixes ranked by impact
You type: <page> is slow — what's the LCP / CLS / INP story?
You get: CWV diagnostic + ranked fix list by impact + budget delta projection per fix
starter
+ 2 more
Intent: Set up performance budget + CI enforcement
You type: Define perf budget for <site> + wire CI to enforce
You get: Per-page budget + Lighthouse-CI or equivalent + budget-breach gate in pipeline
advanced
Intent: Third-party script audit
You type: Audit our third-party scripts for perf + privacy cost
You get: Catalogued scripts + per-script weight + render-blocking flag + recommended removals or async-deferred wiring
advanced
Quickstart
  1. Trigger phrase: '<page> is slow' OR 'Define perf budget' OR 'Audit third-party scripts
  2. Expected output: CWV diagnostic / budget spec / third-party catalogue with ranked actions
  3. Common follow-up: frontend-implementer for code changes; web-architect for CDN / build pipeline tuning
Works well with
frontend-implementerweb-architect
plugins/web-design/agents/performance-engineer.md

ux-designer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
DeveloperConsultant

Use this agent for UX work — wireframes, user flows, screen-level layouts, conversion design, interaction design, usability heuristics. Spawn for pre-build UX, screen flows, conversion-focused redesigns, usability reviews, form design. NOT for visual design (visual-designer) and NOT for code (frontend-implementer).

Example scenarios (3)
Intent: Wireframe a new feature flow before visual design starts
You type: Wireframe the <feature> with the 3 main user flows
You get: Wireframes + flow diagrams + interaction notes + a11y considerations baked in
starter
+ 2 more
Intent: Improve conversion on an underperforming form / page
You type: <form/page> conversion is <X%> — redesign for conversion
You get: Redesigned flow + reduced friction + named heuristics applied + measurable conversion hypotheses
advanced
Intent: Usability review of an existing screen
You type: Usability review of <screen> — find the rough edges
You get: Heuristic eval + ranked issues + remediation suggestions + observed-vs-intended-flow gap analysis
starter
Quickstart
  1. Trigger phrase: 'Wireframe <feature>' OR 'Conversion redesign of <form/page>' OR 'Usability review <screen>
  2. Expected output: wireframes / redesign / heuristic eval — with a11y considerations built in + one-CTA-per-screen enforced
  3. Common follow-up: visual-designer for visual treatment; content-strategist for microcopy; frontend-implementer for build
Works well with
visual-designercontent-strategistfrontend-implementer
plugins/web-design/agents/ux-designer.md

visual-designer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
DeveloperConsultant

Use this agent for visual / brand work — brand systems, typography, color, layout grids, design tokens, component visual style, theming, dark-mode, motion design. Spawn for brand-from-scratch, design-system spec, visual review, theming, token rationalization. NOT for UX flow / wireframes (ux-designer) and NOT for code implementation (frontend-implementer).

Example scenarios (3)
Intent: Build a brand system from scratch for a new site
You type: Design the brand system for <site/product> — voice / typography / color / grid / tokens
You get: Brand system spec + design tokens + component visual style + dark-mode + motion guidelines
starter
+ 2 more
Intent: Audit + rationalize an existing design system's tokens
You type: Audit <design system>'s tokens — find drift + propose consolidation
You get: Token audit + drift findings + consolidation plan + theme-switch testing
advanced
Intent: Add dark-mode to an existing light-mode design
You type: Add dark-mode support to <design system>
You get: Dark-mode token set + contrast verification + tested switch behavior + reduced-motion considered
advanced
Quickstart
  1. Trigger phrase: 'Brand system for <X>' OR 'Token audit on <design system>' OR 'Dark-mode for <system>
  2. Expected output: design spec + tokens + verified contrast + Figma / spec artifact ready for frontend-implementer
  3. Common follow-up: frontend-implementer to wire tokens; accessibility-auditor for contrast verification; ux-designer if flow-level visual decisions needed
Works well with
ux-designerfrontend-implementer
plugins/web-design/agents/visual-designer.md

web-architect

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
DeveloperConsultant

Use this agent for web architecture decisions — site architecture, information architecture, tech-stack selection, hosting / CDN, build pipeline, repo structure, content modeling for headless CMS, technical SEO foundations. Spawn for greenfield, re-platform, technical-SEO audits, stack trade-off decisions. NOT for component-level code (frontend-implementer) and NOT for visual design (visual-designer).

Example scenarios (3)
Intent: Tech-stack selection for a greenfield marketing site
You type: Stack for a new marketing site — <constraints>
You get: Stack recommendation (Astro / Next / SvelteKit / 11ty / etc.) + hosting + CDN + build pipeline + IA
starter
+ 2 more
Intent: Technical SEO audit of an existing site
You type: Technical SEO audit of <site> — crawl + schema + sitemaps + OG
You get: Audit report + ranked fixes + schema-markup gaps + OG/Twitter Card improvements
advanced
Intent: Re-platform decision (e.g., WordPress → Astro)
You type: Re-platform <site> from <current> to <candidate>?
You get: Trade-off memo (perf / a11y / content-author UX / cost / ops burden) + migration plan if recommended
advanced
Quickstart
  1. Trigger phrase: 'Stack for <new site>' OR 'Technical SEO audit of <site>' OR 'Re-platform <site> from <A> to <B>?
  2. Expected output: stack recommendation / audit report / decision memo — with hosting + CDN + build pipeline + technical-SEO baseline
  3. Common follow-up: frontend-implementer to build per the stack; performance-engineer for CWV-budget baseline; content-strategist for content modeling
Works well with
frontend-implementercontent-strategistperformance-engineer
plugins/web-design/agents/web-architect.md

Skills (9)

accessibility-review

WCAG 2.2-aligned accessibility audit — semantics, ARIA, keyboard navigation, color contrast, focus management, motion preferences. Severity guide + tooling notes. Used by `accessibility-auditor` (primary).

plugins/web-design/skills/accessibility-review.md

content-audit

Audit existing site content — full inventory (URL × type × intent × last-updated × owner), scoring against business / user-need / SEO criteria, remediation queue (keep / consolidate / rewrite / retire), and the migration plan when re-platforming. Reach for this skill at the start of a re-platform, before an SEO push, or when content quality has stopped predicting conversion. Used by `content-strategist` (primary) + `web-architect`.

plugins/web-design/skills/content-audit.md

conversion-design

Design and audit conversion-focused screens — funnel definition, friction-vs-trust balance, form field selection (every field is a cost), one CTA per screen discipline, social-proof placement, microcopy patterns, and the conversion-rate measurement plan. Reach for this skill when designing or reviewing a landing page, sign-up flow, checkout, or any "convert visitor → action" screen. Used by `ux-designer` (primary) + `content-strategist`.

plugins/web-design/skills/conversion-design.md

core-web-vitals-tuning

Diagnose and improve Core Web Vitals (LCP / CLS / INP). Includes a Mermaid decision tree for root-cause triage across all three vitals + canonical fix-by-symptom map. Field data (CrUX / RUM) at p75 is the measurement target. Used by `performance-engineer` (primary).

plugins/web-design/skills/core-web-vitals-tuning.md

design-system-audit

Audit an existing brand / design system for consistency, completeness, token coverage, dark-mode readiness. Used by `visual-designer` (primary) + `frontend-implementer` (token-to-code wiring).

plugins/web-design/skills/design-system-audit.md

design-tokens-scaffolding

Scaffold a token system from brand spec to token JSON to CSS variables to framework theme (Tailwind / Shadcn / CSS-in-JS / Theme UI). Includes naming convention, scale design (color / spacing / typography / radius / shadow / motion), light/dark mode, semantic vs primitive tokens, and the dual-mode build pipeline. Reach for this skill when launching a new design system or when an existing system has "design drift" between Figma and code. Used by `visual-designer` (primary) + `frontend-implementer`.

plugins/web-design/skills/design-tokens-scaffolding.md

information-architecture

Design site information architecture — sitemap, URL taxonomy, navigation patterns (primary / utility / footer / contextual), card-sort discipline, content model that the IA implies, and the URL-to-template mapping. Reach for this skill at the start of a new build or when redesigning navigation on an existing site. Used by `web-architect` (primary) + `ux-designer`.

plugins/web-design/skills/information-architecture.md

seo-technical-audit

Technical SEO sweep — crawlability, indexability, schema markup, sitemaps, OG / Twitter Card metadata, hreflang, structured data. Used by `web-architect` (primary, technical) + `content-strategist` (content-SEO).

plugins/web-design/skills/seo-technical-audit.md

third-party-script-hygiene

Catalogue and hygiene-audit third-party scripts on a marketing site — performance budget by category (analytics / chat / A/B / fonts / video / social), async-defer patterns, consent-gating (GDPR / CCPA / consent-mode v2), CSP implications, and the periodic re-audit cadence. Every third-party is debt; this skill quantifies it. Reach for this skill before launch, during a Core Web Vitals push, or when adding a new external script. Used by `performance-engineer` (primary) + `web-architect`.

plugins/web-design/skills/third-party-script-hygiene.md

Hooks (1)

check-web-anti-patterns.sh

check-web-anti-patterns.sh PostToolUse hook for Edit | Write | MultiEdit on web-conventional files. Flags mechanically-detectable violations of the web-design team constitution (see plugins/web-design/CLAUDE.md §3 "house opinions" and §4 "anti-patterns"): 1. Oversized raster image committed (> 500 KB jpg / png / webp). §4 — image > 500 KB above-the-fold. 2. `<img>` tag missing alt attribute. §3 #5

plugins/web-design/hooks/check-web-anti-patterns.sh

Templates (8)

accessibility-audit-report.md

Accessibility audit report — [Site / scope]

plugins/web-design/templates/accessibility-audit-report.md

content-style-guide.md

Content style guide — [Brand / site]

plugins/web-design/templates/content-style-guide.md

design-brief.md

Design brief — [Project name]

plugins/web-design/templates/design-brief.md

design-system-spec.md

Design system spec — [System name] [Version]

plugins/web-design/templates/design-system-spec.md

launch-checklist.md

Launch checklist — [Site / project] [Launch date]

plugins/web-design/templates/launch-checklist.md

performance-budget.md

Performance budget — [Site / page-type]

plugins/web-design/templates/performance-budget.md

seo-audit-report.md

SEO audit report — [Site]

plugins/web-design/templates/seo-audit-report.md

site-architecture.md

Site architecture — [Site name]

plugins/web-design/templates/site-architecture.md

edtech-partner-success

v0.5.1

EdTech-flavored Partner Success Manager team — 6 specialist agents anchored on the PSM lane. 8 skills, 15 templates, 1 advisory hook, and a 15-doc knowledge bank across 5 waves (v0.2.0 production-lesson + v0.3.0 foundational + v0.4.0 vertical-depth + v0.4.1 operating-cadence + v0.4.2 capability-extension). v0.4.2 ships what would have been v0.5.0 team expansion as skills + knowledge + templates rather than parallel agents (per the marketplace house rule added 2026-05-21): 4 new skills (advocacy-program-design, adoption-sequencing-k12, implementation-90-day-arc, partner-training-program-design), 5 new knowledge files (edtech-reference-customer-patterns, k12-adoption-arc-fall-spring-summer, sis-sso-rostering-integration-patterns, district-implementation-failure-modes, k12-pd-norms-and-constraints), and 6 new templates (case-study-draft, reference-pipeline-tracker, adoption-diagnostic-worksheet, implementation-90-day-plan, train-the-trainer-curriculum, renewal-decision-memo). Primary-source citations with retrieval dates and confidence notation. Vertical-explicit but segment-agnostic — fits K-12, higher-ed, corporate L&D, or mixed EdTech books. Inherits ravenclaude-core protocols; requires ravenclaude-core@>=0.7.0.

Requires {'plugins': ['ravenclaude-core@>=0.7.0']}
Last updated 2026-05-22
edtech partner-success customer-success psm qbr health-score ferpa rostering learning-analytics
6 Agents12 Skills1 Hooks15 Templates

Agents (6)

ferpa-comms-translator

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Partner SuccessConsultant

Use this agent for FERPA-aware (and segment-equivalent data-privacy) multilingual, multi-audience partner & end-user communication. Parent comms, school admin comms, district / institution leadership, end-user-facing copy. Spawn for "translate this PSM email for the parent audience", "this announcement is going to non-English-primary families — variant pls", "sanity-check what we can legally say in this district memo", or "the partner asked for a parent-facing version of the QBR summary". NOT for internal PSM team comms (those are plain English, no translation needed). NOT for legal opinions on what's allowed (that's escalation to `regulatory-compliance` or counsel).

Example scenarios (3)
Intent: Translate a PSM email into a parent-facing variant
You type: Translate <email> for parent audience — non-English-primary families included
You get: Parent-facing variant (plain language) + multilingual variants per Title VI
starter
+ 2 more
Intent: Sanity-check what we can legally say in a district memo touching student data
You type: Review this district memo for FERPA / state-privacy issues before sending
You get: Redlined memo + flagged claims + small-cohort identifiability check
starter
Intent: Draft a case-study quote that needs parental consent + state media-release
You type: Write a case-study quote from a parent in <state>; what consent is needed?
You get: Quote draft + state-specific consent + anonymization recommendation per edtech-reference-customer-patterns.md
advanced
Quickstart
  1. Trigger phrase: 'Translate <X> for <audience>' OR 'Sanity-check this comm for FERPA / state-privacy
  2. Expected output: audience-shaped draft + flagged compliance concerns + multilingual variants when Title VI applies
  3. Common follow-up: escalate to regulatory-compliance or counsel for legal opinions; partner-profile-curator for partner-specific terminology
Works well with
partner-success-managerqbr-composerpartner-profile-curator
plugins/edtech-partner-success/agents/ferpa-comms-translator.md

learning-analytics-analyst

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Partner SuccessConsultantAnalyst

Use this agent for partner-engagement signal design, health-score architecture, dashboard specs, and metric interpretation. Spawn for "design a partner health score", "is this partner red or yellow", "build a new metric for X", "diagnose why a metric moved", or rostering / data-quality diagnostic work in K-12 (Clever / ClassLink / OneRoster), higher-ed (SIS / LMS), or corporate L&D (HRIS / LMS) contexts. NOT for the partner-facing comms about a metric (that's `ferpa-comms-translator`). NOT for the deck that presents a metric (that's `qbr-composer`).

Example scenarios (3)
Intent: Design a partner health score from scratch with signals + decay + thresholds
You type: Design a health score for <partner segment> — what signals, what weights, what decay?
You get: Health-score spec with named signals, weighting, half-life decay, red/yellow thresholds + playbook hand-off
starter
+ 2 more
Intent: Diagnose why a metric moved on a specific partner
You type: Partner X's <metric> dropped — diagnose
You get: Enumerated candidate root causes (rostering / champion / curriculum-misfit / dead-zone) + recommended diagnostic via adoption-diagnostic-worksheet
troubleshooting
Intent: Diagnose rostering / SIS sync issues that are masquerading as engagement drops
You type: <partner> says 'the data isn't right' — what's the rostering smell?
You get: Diagnosis tree from rostering-data-quality-typology + actionable next step + who-owns-what matrix
advanced
Quickstart
  1. Trigger phrase: 'Design health score for <X>' OR 'Diagnose <metric> drop on <partner>
  2. Expected output: signal spec / diagnosis tree / play-trigger mapping — with calendar-overlay applied per k12-psm-operating-cadence.md
  3. Common follow-up: success-playbook-designer if a play needs new signals; partner-success-manager to execute; qbr-composer if the metric needs to land in a QBR
Works well with
partner-success-managersuccess-playbook-designerqbr-composer
plugins/edtech-partner-success/agents/learning-analytics-analyst.md

partner-profile-curator

tools: Read, Edit, Write, Grep, Glob, Bash model: opus
Partner SuccessConsultant

Use this agent to maintain the durable partner record — the context that outlives any one PSM seat. Institutional history, decision-makers, named programs, prior incidents, what they care about (in their own words). Distinct from the touchpoint log (which is the running diary). Spawn for new-partner onboarding (start the durable record), PSM handoff between owners, pre-meeting context refresh, or "what did we promise this partner last year". NOT for current-state metrics (that's `learning-analytics-analyst`). NOT for current-quarter touchpoints (those live in the log, not the profile).

Example scenarios (3)
Intent: Start the durable record for a newly-onboarded partner
You type: New partner <name> closed Friday — start the profile
You get: Initial profile with institutional history + named decision-makers + jurisdictional context + AI posture (v0.4.0 addition)
starter
+ 2 more
Intent: Pre-meeting context refresh before a partner call
You type: Refresh the profile for <partner> — call is tomorrow
You get: What-we-promised summary + named-decision-maker confirmation + recent incidents + last QBR commitments
starter
Intent: PSM handoff — bring the new owner up to speed on partner X
You type: Handoff: <new PSM> is taking over partner <X>
You get: Full profile review + champion-redundancy assessment + open commitments + jurisdiction + politics-context
advanced
Quickstart
  1. Trigger phrase: 'Start profile for <new partner>' OR 'Refresh profile for <partner>' OR 'Handoff: <new PSM> on <partner>
  2. Expected output: profile section with quoted-verbatim partner statements + 'we observed' annotations + jurisdiction + AI posture
  3. Common follow-up: partner-success-manager to act on it; ferpa-comms-translator for partner-specific terminology
Works well with
partner-success-managerqbr-composersuccess-playbook-designer
plugins/edtech-partner-success/agents/partner-profile-curator.md

partner-success-manager

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Partner SuccessConsultant

Use this agent for EdTech-specialized PSM work — onboarding, adoption, ongoing pulse, day-to-day partner-facing work. Specializes the generic ravenclaude-core/partner-success-manager for the EdTech vertical (K-12 / higher-ed / corporate L&D). Spawn for a health check on a partner, first-90-days plan, regular touchpoint cadence, "is this partner OK?", first response to a partner signal. NOT for designing renewal / expansion / recovery plays (that's `success-playbook-designer`). NOT for QBR composition end-to-end (that's `qbr-composer`).

Example scenarios (3)
Intent: Health-check a K-12 partner that's gone quiet
You type: Partner <name> hasn't responded in 3 weeks — what's the read?
You get: Health-score snapshot + named signals + calendar-dead-zone overlay (per operating-cadence) + recommended touchpoint
starter
+ 2 more
Intent: Draft a 30/60/90 success plan for a newly-onboarded K-12 partner
You type: New K-12 partner <name> — draft the 30/60/90 with rostering + train-the-trainer milestones
You get: Success plan with measurable outcomes + segment-aware cadence + jurisdiction touchpoints
starter
Intent: Run the 90-day implementation arc for a newly-contracted partner
You type: Stand up the 90-day implementation for partner <X>
You get: Filled implementation-90-day-plan + train-the-trainer plan + first-30-day measurement plan + go-live + handoff
advanced
Quickstart
  1. Trigger phrase: 'Health check <partner>' OR 'New partner onboarding <X>' OR '<partner> implementation arc
  2. Expected output: structured artifact (health-snapshot / success-plan / 90-day plan) with calendar overlay + jurisdiction applied
  3. Common follow-up: success-playbook-designer for which play applies; qbr-composer at QBR time; ferpa-comms-translator for partner-facing copy
Works well with
success-playbook-designerqbr-composerlearning-analytics-analystpartner-profile-curator
plugins/edtech-partner-success/agents/partner-success-manager.md

qbr-composer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Partner SuccessConsultant

Use this agent for Quarterly Business Review materials end-to-end — data pull plan → narrative → deck → talk track → followup tracker. Spawn for QBR prep (~1 week before by default), post-QBR commitment tracking, mock-QBR rehearsal, or a renewal-QBR variant. NOT for play design (that's `success-playbook-designer`). NOT for the underlying metric design (that's `learning-analytics-analyst`).

Example scenarios (3)
Intent: Prep QBR materials end-to-end one week out
You type: QBR for partner <X> is in a week — prep the deck + talk track
You get: Data pull plan + narrative + deck outline + talk track + commitment tracker template
starter
+ 2 more
Intent: Renewal-QBR variant 120-180 days before contract end
You type: Renewal QBR for <X> — they're in Q3 of the fiscal year
You get: Outcome-led narrative (CFO-readable line-item delta) + named-decision-maker confirmation + multi-year-is-K-12-exception framing
advanced
Intent: Post-QBR commitment tracking — what did we promise
You type: Build the post-QBR commitment tracker for the <date> QBR with <partner>
You get: Tracker with named action items + owners + dates + escalation paths
starter
Quickstart
  1. Trigger phrase: 'QBR prep for <partner>' OR 'Renewal QBR for <partner>' OR 'Post-QBR tracker
  2. Expected output: end-to-end QBR artifact set — never just a deck without commitments tracker
  3. Common follow-up: learning-analytics-analyst for the data layer; ferpa-comms-translator for non-English-primary parent-leadership audiences; partner-success-manager to execute commitments
Works well with
learning-analytics-analystpartner-success-managerferpa-comms-translator
plugins/edtech-partner-success/agents/qbr-composer.md

success-playbook-designer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Partner SuccessConsultant

Use this agent to design or refresh PSM plays — renewal plays, expansion plays, recovery (red-flag intervention) plays, advocacy plays. The PSM *executes* plays; this agent *designs* them. Spawn for "we need a new recovery play for partners showing the X signal", "the renewal play hasn't worked twice in a row — refresh it", "what should the expansion play be when a partner crosses adoption threshold Y", "design an advocacy play to surface case-study candidates". NOT for executing a play on a specific partner (that's `partner-success-manager`).

Example scenarios (3)
Intent: Design a new recovery play for partners showing an emerging risk signal
You type: We need a recovery play for partners hitting <signal threshold>
You get: Branched play with triggers + decision points + escalation routes + measurable success criteria
starter
+ 2 more
Intent: Refresh a renewal play that hasn't landed twice in a row
You type: The renewal play for <segment> isn't working — refresh it
You get: Refreshed play with K-12 120-180-day clock + multi-year-is-exception + price-increase value-framing
advanced
Intent: Design an advocacy play for case-study candidate identification
You type: Design an advocacy play to surface top-quartile candidates
You get: Play with health-score eligibility gate + 5-tier advocacy ladder + state-by-state attribution overlay
starter
Quickstart
  1. Trigger phrase: 'Design <play type> for <signal/segment>' OR 'Refresh <play>' OR 'Design advocacy play for <X>
  2. Expected output: branched play (not a script) with calendar-overlay suppression + decision points + named failure mode + escalation route
  3. Common follow-up: partner-success-manager to execute on specific partners; learning-analytics-analyst if play-trigger signals need analytics work
Works well with
partner-success-managerlearning-analytics-analystqbr-composer
plugins/edtech-partner-success/agents/success-playbook-designer.md

Skills (12)

adoption-sequencing-k12

Sequence K-12 partner adoption activities by stage (newly-implemented / first-year-sustaining / multi-year-mature / pre-renewal) with school-year-phase overlay. Surface-by-surface rhythm (teacher / admin / student / family-facing). Diagnostic-before-intervention discipline — don't push feature-breadth in stage 1. Used by `learning-analytics-analyst` + `success-playbook-designer`.

plugins/edtech-partner-success/skills/adoption-sequencing-k12.md

advocacy-program-design

Design a structured EdTech advocacy program with 5-tier ladder (logo → quote → case study → speaker → peer call). Health-score eligibility gate (top-quartile only), 2-asks-per-year ceiling, state-by-state anonymization overlay (CA/NY/IL stricter; TX/FL more permissive), FERPA consent for student/parent quotes. Used by `success-playbook-designer` + `ferpa-comms-translator` + `partner-success-manager`.

plugins/edtech-partner-success/skills/advocacy-program-design.md

executive-sponsor-mapping

Map the partner's buying committee — economic buyer, champion, technical buyer / IT, user-champion, blocker, executive sponsor — across segments (K-12 / higher-ed / corp L&D). Includes the multi-thread coverage gap visualization, the "ghost sponsor" detection pattern, sponsor-change protocols, and integration with the durable partner profile. Reach for this skill on a new-partner kick-off, before a renewal, when a critical contact leaves, or when QBRs are well-attended but decisions aren't happening. Used by `partner-profile-curator` (primary) + `partner-success-manager`.

plugins/edtech-partner-success/skills/executive-sponsor-mapping.md

expansion-play-design

Design expansion motions that fire only when the partner has earned value — 3-gate eligibility (top-quartile health + demonstrable adoption + organizational readiness), value-trigger taxonomy, seat / module / department land-and-expand patterns, internal-champion-armament, ROI-storytelling format, and the "don't sell to bottom-quartile" discipline. Segment overlays for K-12 / higher-ed / corp L&D. Reach for this skill when designing the firm's expansion playbook or when the partner-success leader is being pushed to monetize too hard. Used by `success-playbook-designer` (primary).

plugins/edtech-partner-success/skills/expansion-play-design.md

implementation-90-day-arc

Run the 90-day technical-onboarding arc for a newly-contracted EdTech partner — discovery (weeks 1-2) → integration setup (3-4) → train-the-trainer (5-6) → go-live + Day-30 measurement (7-8) → stabilization + PSM handoff (9-12). Calendar-dead-zone go-live check is the highest-leverage pre-flight. Used by `partner-success-manager` + `learning-analytics-analyst`.

plugins/edtech-partner-success/skills/implementation-90-day-arc.md

partner-health-scoring

Design and maintain a partner health score that actually predicts renewal / churn for EdTech partners. Signal selection, weighting, half-life / decay, red-flag triggers, and threshold-to-play mapping. Reach for this skill when designing a new score, refreshing one that's stopped predicting outcomes, or interpreting a score move.

plugins/edtech-partner-success/skills/partner-health-scoring.md

partner-training-program-design

Design partner-facing training programs for EdTech — train-the-trainer is the only model that scales in K-12. K-12 PD modality decision rule (live-in-person / live-virtual / hybrid / async-with-followup), PD-credit alignment with state frameworks, teacher-union overlay in unionized states. Used by `ravenclaude-core/documentarian` + `partner-success-manager` + `success-playbook-designer`.

plugins/edtech-partner-success/skills/partner-training-program-design.md

qbr-composition

Compose a Quarterly Business Review end-to-end — data pull plan, narrative arc, deck outline, talk track, post-QBR commitment tracker. Reach for this skill 1–2 weeks before a QBR is scheduled, OR after a QBR to convert in-meeting promises into a tracked plan.

plugins/edtech-partner-success/skills/qbr-composition.md

recovery-play-design

Design red-flag intervention sequences — root-cause diagnostic before remedy (4 parallel hypotheses), time-bound recovery plan with measurable 30/60/90-day signal targets, escalation criteria (PSM → success leadership → exec sponsor → counsel → churn-prep), the "is this recoverable?" rule, churn-prep workflow when not, and the post-recovery learning capture. Reach for this skill when a partner trips red on the health score, when a renewal is at clear risk, or when a partner has signaled dissatisfaction. Used by `success-playbook-designer` (primary) + `partner-success-manager`.

plugins/edtech-partner-success/skills/recovery-play-design.md

renewal-play-design

Design renewal motions that earn the renewal instead of negotiating it — T-180/T-120/T-90/T-60/T-30/T-0 sequence, sponsor-confirmation arc, value-evidence pack, multi-thread the buying committee, decision-memo support, expand/maintain/contract decision rule, and segment-specific overlays (K-12 budget cycle, higher-ed academic calendar, corp L&D fiscal year). Reach for this skill 120-90 days before a renewal date, when a renewal "should be safe" but no movement has happened, or when designing the firm's renewal playbook. Used by `success-playbook-designer` (primary) + `partner-success-manager`.

plugins/edtech-partner-success/skills/renewal-play-design.md

rostering-data-quality

Diagnose rostering / SIS / LMS data-sync issues in EdTech contexts — K-12 (Clever, ClassLink, OneRoster), higher-ed (SIS/LMS), corporate L&D (HRIS/LMS). When to escalate to product vs coach the partner's admin. Reach for this skill when a partner says "the data isn't right" or when partner-engagement metrics drop without an obvious user-side cause.

plugins/edtech-partner-success/skills/rostering-data-quality.md

success-plan-authoring

Author a 30/60/90 day or quarterly success plan for an EdTech partner that has measurable success criteria, named owners, and a defensible cadence. Reach for this skill when onboarding a new partner OR when refreshing a quarterly plan after a renewal / midyear review.

plugins/edtech-partner-success/skills/success-plan-authoring.md

Hooks (1)

flag-psm-anti-patterns.sh

flag-psm-anti-patterns.sh PostToolUse hook for Edit | Write | MultiEdit on EdTech-PSM artifact files. Flags the most common mechanically-detectable violations of the EdTech-PSM team constitution (see plugins/edtech-partner-success/CLAUDE.md §3, §4): 1. Action item without a date — files matching *qbr*, *success-plan*, *touchpoint*, *escalation* with a bullet/checkbox that looks like an action item

plugins/edtech-partner-success/hooks/flag-psm-anti-patterns.sh

Templates (15)

adoption-diagnostic-worksheet.md

Adoption diagnostic worksheet — `<partner_name>`

plugins/edtech-partner-success/templates/adoption-diagnostic-worksheet.md

annual-partner-review.md

Annual Partner Review — `<Partner Name>` — `<Year>`

plugins/edtech-partner-success/templates/annual-partner-review.md

case-study-draft.md

Case study draft — `<partner_name | "Anonymized Partner">`

plugins/edtech-partner-success/templates/case-study-draft.md

cross-functional-partnership-map.md

Cross-functional partnership map — `<partner_name | vendor_name>`

plugins/edtech-partner-success/templates/cross-functional-partnership-map.md

escalation-memo.md

Escalation Memo — `<Partner Name>` — `<short risk description>`

plugins/edtech-partner-success/templates/escalation-memo.md

health-score-dashboard.md

Health-Score Dashboard — Spec

plugins/edtech-partner-success/templates/health-score-dashboard.md

implementation-90-day-plan.md

Implementation 90-day plan — `<partner_name>`

plugins/edtech-partner-success/templates/implementation-90-day-plan.md

onboarding-checklist.md

Onboarding Checklist — First 90 Days — `<Partner Name>`

plugins/edtech-partner-success/templates/onboarding-checklist.md

partner-profile.md

Partner Profile — `<Partner Name>`

plugins/edtech-partner-success/templates/partner-profile.md

qbr-deck-outline.md

QBR Deck Outline — `<Partner Name>` — `<Quarter>`

plugins/edtech-partner-success/templates/qbr-deck-outline.md

reference-pipeline-tracker.md

Reference customer pipeline tracker

plugins/edtech-partner-success/templates/reference-pipeline-tracker.md

renewal-decision-memo.md

Renewal decision memo — `<partner_name>`

plugins/edtech-partner-success/templates/renewal-decision-memo.md

success-plan.md

Success Plan — `<Partner Name>`

plugins/edtech-partner-success/templates/success-plan.md

touchpoint-log.md

Touchpoint Log — `<Partner Name>`

plugins/edtech-partner-success/templates/touchpoint-log.md

train-the-trainer-curriculum.md

Train-the-trainer curriculum — `<partner_name>`

plugins/edtech-partner-success/templates/train-the-trainer-curriculum.md

data-platform

v0.3.2

Data-platform team — 4 specialist agents (database-setup-guide, etl-pipeline-engineer, dashboard-builder, connector-developer) that guide cloud-database setup, ELT pipelines (Airbyte / Fivetran / n8n) with connectors for QuickBooks / Stripe / Salesforce / HubSpot / GA4 / Shopify / HRIS, and interactive dashboards (Evidence.dev / Apache Superset / Metabase / Cube + Tremor) embedded in marketing sites and client apps. 7 skills — three invoked by ravenclaude-core/security-reviewer; one by ravenclaude-core/architect — implementing the marketplace house rule 'domain plugins extend core via skills, not parallel agents'. 12 templates (3 runnable security-critical + 4 conceptual + 3 seam-marked stubs + dbt-project-starter + cube-schema-starter). 1 consolidated advisory hook. 13-doc knowledge bank: v0.1.0 landscape + RLS + QBO + Power BI Embedded + EdTech LMS gap, plus v0.2.0 per-connector deep-dives (Stripe, Salesforce, HubSpot, GA4, Shopify, HRIS). Opinionated against per-viewer-priced BI tools (Looker / Tableau / Sigma) for SMB-consulting use cases; requires ravenclaude-core@>=0.7.0.

Requires {'plugins': ['ravenclaude-core@>=0.7.0']}
Last updated 2026-05-22
data-platform interactive-dashboards embedded-analytics cube evidence-dev metabase superset power-bi-embedded supabase airbyte fivetran rls multi-tenant quickbooks
4 Agents11 Skills1 Hooks12 Templates

Agents (4)

connector-developer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Data engineerDeveloper

Use this agent for custom Airbyte connector authoring when an ELT vendor doesn't ship a connector for the source the engagement needs. Highest-leverage use case is EdTech LMS (Canvas, Moodle, Schoology, Blackboard, D2L) — native ELT vendor coverage is thin, and custom-Airbyte-connector capability is a real consulting differentiator. Also HRIS edge cases (ADP via Flexspring, niche regional vendors) and unusual SaaS sources. Spawn for "vendor doesn't ship a Canvas connector — what do we do", "build a custom Airbyte source for [niche SaaS]". NOT for configuring an existing Airbyte / Fivetran connector (that's `etl-pipeline-engineer`).

Example scenarios (2)
Intent: Build a custom Airbyte source connector for a vendor without native ELT support
You type: Build a Canvas LMS Airbyte connector — Fivetran/Airbyte don't ship one
You get: Connector manifest + auth/pagination/incremental config + tested against real source + ready for Airbyte Cloud / self-hosted
starter
+ 1 more
Intent: Decide build-vs-buy when partial coverage exists
You type: <vendor> has a partial connector but missing <table> — build or fork?
You get: Decision memo + recommended path (extend existing / fork / build) + maintenance burden estimate
advanced
Quickstart
  1. Trigger phrase: 'Build connector for <vendor>' OR 'Vendor X has partial coverage — extend or fork?
  2. Expected output: connector source + tested against real auth flow + handoff to etl-pipeline-engineer for production wiring
  3. Common follow-up: etl-pipeline-engineer to deploy + monitor; database-setup-guide if landing schema needs work
Works well with
etl-pipeline-engineerdatabase-setup-guide
plugins/data-platform/agents/connector-developer.md

dashboard-builder

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Data engineerDeveloperAnalyst

Use this agent for interactive dashboard front-end generation — Evidence.dev (marketing-site portfolio), Apache Superset / Metabase OSS (client deliverable), Cube + Next.js + Tremor + Recharts + shadcn/ui (productized SaaS), Power BI Embedded F-SKU (Microsoft-stack engagements). Spawn for "build a dashboard for ravenpower.net", "scaffold a Cube schema for this client", "generate the React KPI cards", "embed Superset into the client's admin panel". NOT for the underlying database (that's `database-setup-guide`). NOT for the JWT-issuance security review (that's `ravenclaude-core/security-reviewer` invoking the `jwt-embed-issuance` skill).

Example scenarios (3)
Intent: Scaffold an Evidence.dev portfolio dashboard for a marketing site
You type: Build an Evidence.dev dashboard for ravenpower.net showing <metric>
You get: Evidence project + SQL-fenced .md pages + chart components + deployment config
starter
+ 2 more
Intent: Scaffold a Cube schema with securityContext for a multi-tenant client deliverable
You type: Cube schema for <client> — multi-tenant with per-customer filtering
You get: Cubes + access_policy + tenant-aware pre-aggregations + cross-boundary denial test passing
advanced
Intent: Embed Superset into the client's admin panel with JWT-secured iframe
You type: Embed <dashboard> into <client app> via iframe — JWT-secured
You get: Iframe component + JWT acquisition + CSP frame-ancestors config + role/permission scoping
advanced
Quickstart
  1. Trigger phrase: 'Build dashboard for <X>' OR 'Cube schema for <client>' OR 'Embed <dashboard> into <app>
  2. Expected output: dashboard project + tenant-isolation pattern matched to the case (A/B/C/D)
  3. Common follow-up: database-setup-guide if data layer needs work; security-reviewer for any JWT/RLS/embed-CSP audit
Works well with
database-setup-guideetl-pipeline-engineer
plugins/data-platform/agents/dashboard-builder.md

database-setup-guide

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Data engineerDeveloperConsultant

Use this agent for cloud-database setup guidance — Supabase, Neon, RDS, Azure SQL, Fabric, DuckDB, MotherDuck, Snowflake, Databricks, Turso. Spawn for "stand up a new database for this client", "migrate this Excel/SharePoint sprawl to a real DB", "set up multi-tenant tables", or "which DB for this engagement". NOT for query authoring (route to client's data engineer). NOT for RLS policy authoring (that's the rls-policy-authoring skill, invoked by `ravenclaude-core/security-reviewer`).

Example scenarios (3)
Intent: Stand up a new cloud database for a client engagement
You type: Stand up a database for <client> — multi-tenant, <N> tenants, mostly <workload>
You get: DB selected (Supabase / Neon / RDS / Fabric / etc.) + multi-tenant schema starter + connection-string template
starter
+ 2 more
Intent: Migrate a sprawling Excel/SharePoint dataset to a real DB
You type: Migrate <client>'s spreadsheet sprawl to a real DB
You get: Migration plan + schema design + ELT setup + tested cutover
advanced
Intent: Choose between Supabase / Neon / RDS / Fabric for this engagement
You type: Supabase vs Neon vs Fabric for <use case>?
You get: Decision memo with pricing math + ops burden + lock-in considerations + recommendation
starter
Quickstart
  1. Trigger phrase: 'Stand up DB for <client>' OR 'Migrate <data source> to a DB' OR '<DB-A> vs <DB-B>?
  2. Expected output: DB selection + schema starter + connection template; or decision memo
  3. Common follow-up: security-reviewer for RLS policy authoring; etl-pipeline-engineer to wire data ingestion
Works well with
etl-pipeline-engineerdashboard-builder
plugins/data-platform/agents/database-setup-guide.md

etl-pipeline-engineer

tools: Read, Edit, Write, Grep, Glob, Bash, WebFetch, WebSearch model: opus
Data engineerDeveloper

Use this agent for ELT pipeline design and configuration — Airbyte, Fivetran, n8n, custom integrations. Source-system specifics for QuickBooks Online, Stripe, Salesforce, HubSpot, Google Analytics 4, Shopify, common HRIS. Spawn for "pull QuickBooks into the warehouse", "set up Airbyte for this engagement", "the Fivetran connector for X is missing", "this is going to blow our MAR budget — what now". NOT for custom Airbyte connector authoring (that's `connector-developer`). NOT for modeling the data once ingested (that's `ravenclaude-core/data-engineer`).

Example scenarios (3)
Intent: Pull QuickBooks Online data into the warehouse
You type: Set up the QBO → <warehouse> pipeline for <client>
You get: Airbyte/Fivetran connector configured + OAuth + 10 req/s rate-limit-aware retry + first sync verified
starter
+ 2 more
Intent: Diagnose MAR overage risk on HubSpot deal-heavy orgs
You type: Fivetran MAR is going to blow our budget on <client> — what now?
You get: Connector strategy options (column selection / Airbyte switch / delete-policy adjustment) + cost projection per option
advanced
Intent: Decide Airbyte vs Fivatran vs n8n for an engagement
You type: Airbyte vs Fivetran vs n8n for <engagement context>?
You get: Decision memo with cost math + sources covered + ops burden + recommendation
starter
Quickstart
  1. Trigger phrase: 'Pipeline for <source> → <warehouse>' OR 'MAR overage risk on <client>' OR '<ELT-A> vs <ELT-B>?
  2. Expected output: configured pipeline / cost-mitigation plan / decision memo
  3. Common follow-up: connector-developer if no native connector exists; database-setup-guide if landing schema needs work
Works well with
connector-developerdatabase-setup-guide
plugins/data-platform/agents/etl-pipeline-engineer.md

Skills (11)

cloud-database-comparison

Compare cloud databases (Supabase, Neon, RDS, Azure SQL, Fabric, DuckDB, MotherDuck, Snowflake, Databricks, Turso) for an SMB consulting engagement — pricing tables with retrieval dates, setup-complexity matrix, when-to-pick guidance. Used by `database-setup-guide` to recommend a DB choice for a new engagement.

plugins/data-platform/skills/cloud-database-comparison.md

connector-configuration

Connector-specific configuration patterns for ELT pipelines — QuickBooks OAuth + rate-limit handling, Stripe webhook + batch hybrid, Salesforce Bulk API 2.0, HubSpot API v3, GA4 BigQuery export, Shopify GraphQL Admin API. Used by `etl-pipeline-engineer` when configuring an Airbyte / Fivetran / n8n connector against a real source.

plugins/data-platform/skills/connector-configuration.md

cube-schema-scaffolding

Scaffold Cube semantic-layer schemas with mandatory `securityContext` baked in for multi-tenant customer-facing dashboards. Includes measure/dimension patterns, pre-aggregation hints, view-level partner-facing query surface, and the cross-boundary denial test. Used by `dashboard-builder` on Case-C productized-SaaS engagements.

plugins/data-platform/skills/cube-schema-scaffolding.md

dashboard-performance-tuning

Tune interactive-dashboard performance against a per-widget-class budget — Cube pre-aggregation design, Postgres / DuckDB materialized views, cache layers (Cube + Redis + browser TanStack Query), the per-widget profile loop (measure → identify the slow stage → fix at the lowest-cost layer). Reach for this skill when a dashboard exceeds the 1-2s widget target, or proactively before adding a heavy widget. Used by `dashboard-builder` (primary).

plugins/data-platform/skills/dashboard-performance-tuning.md

data-quality-tests

Design data-quality tests that catch real bugs — uniqueness / not-null / referential integrity / freshness / row-count drift / value-range / cross-source reconciliation. dbt-test mechanics for each, severity tiers (error vs warn), the runbook-entry-per-failing-test discipline, and when to escalate to Great Expectations or Monte Carlo / Bigeye. Reach for this skill when launching a new pipeline OR after a "the numbers were wrong" incident. Used by `etl-pipeline-engineer` (primary).

plugins/data-platform/skills/data-quality-tests.md

dbt-project-scaffolding

Scaffold a dbt project that ships — sources → staging → intermediate → marts → metrics layer discipline, generic + custom tests, doc-blocks for every model, exposure tracking, RLS-safe role separation (build-role vs query-role), CI shape (`dbt build` on PR), and a dev/prod env-promotion shape. Reach for this skill at engagement start (greenfield warehouse) or when a dbt project has decayed into ungoverned models. Used by `etl-pipeline-engineer` (primary) + `dashboard-builder`.

plugins/data-platform/skills/dbt-project-scaffolding.md

embed-csp-and-iframe-sandboxing

Configure CSP `frame-ancestors`, iframe `sandbox` attributes, postMessage origin checks, and web-component shadow-DOM boundaries for embedded dashboards. Invoked by `ravenclaude-core/security-reviewer` when a diff touches embed-auth flow; generated alongside dashboard code by `dashboard-builder`.

plugins/data-platform/skills/embed-csp-and-iframe-sandboxing.md

jwt-embed-issuance

Canonical 2026 JWT-embed flow for dashboard embedding — required claims (`sub`, `tenant_id`, `iat`, `exp`, `iss`, `aud`, `nonce`), tool-specific verification (Superset guest tokens, Metabase JWT URLs, Cube Authorization Bearer, Power BI MSAL-via-AAD), 5-15 min expiration policy, cross-boundary denial test contract. Invoked by `ravenclaude-core/security-reviewer` for any embed-auth review.

plugins/data-platform/skills/jwt-embed-issuance.md

multi-tenant-migration

Migrate a single-tenant database / dashboard stack to multi-tenant — `tenant_id` column propagation + backfill, RLS / semantic-layer scope rules introduced post-hoc, JWT-claim shape migration, embed-token cutover plan with parallel + backout window, and the mandatory cross-boundary denial test before flipping the switch. Reach for this skill when an engagement shifts from one-client deliverable to productized SaaS. Used by `database-setup-guide` (primary) + `dashboard-builder`.

plugins/data-platform/skills/multi-tenant-migration.md

rls-policy-authoring

Author Postgres Row Level Security policies (force-on, CI-deployed, denial-tested) for multi-tenant dashboards. Encodes the closeness-to-data invariant — tenant isolation at the closest-to-data layer the viewer's token cannot influence. Covers Postgres RLS + semantic-layer enforcement (Cube `securityContext`, Power BI DAX roles, Fabric, Snowflake row-access). Invoked by `ravenclaude-core/security-reviewer`.

plugins/data-platform/skills/rls-policy-authoring.md

stack-selection

Select a dashboard-engagement stack via the Case A/B/C/D Mermaid decision tree (Portfolio / Per-client / Productized SaaS / Pipes-only) — surfaces the per-viewer-pricing-trap heuristic, recognizes the EdTech LMS connector-gap, returns a populated `stack-decision-record.md`. Invoked by `ravenclaude-core/architect` via inline prior.

plugins/data-platform/skills/stack-selection.md

Hooks (1)

flag-data-platform-smells.sh

flag-data-platform-smells.sh PreToolUse hook for Edit | Write | MultiEdit on data-platform artifact files. Flags four mechanically-detectable violations of the data-platform team constitution (see plugins/data-platform/CLAUDE.md §3, §4): 1. Inline secrets — API keys, JWT signing secrets, connection strings with credentials, OAuth client secrets in .tsx/.ts/.js/.py/.yml/.sql (§3 #4) 2. Postgres CRE

plugins/data-platform/hooks/flag-data-platform-smells.sh

Templates (12)

airbyte-source-config.yaml

---------------------------------------------------------------------------

plugins/data-platform/templates/airbyte-source-config.yaml

cube-schema-starter.yml

Cube schema starter — multi-tenant analytics

plugins/data-platform/templates/cube-schema-starter.yml

dashboard-engagement-checklist.md

Dashboard engagement checklist — {{Engagement / Client Name}}

plugins/data-platform/templates/dashboard-engagement-checklist.md

database-schema-starter.sql

(no description)

plugins/data-platform/templates/database-schema-starter.sql

dbt-project-starter/

(template folder)

plugins/data-platform/templates/dbt-project-starter

evidence-portfolio-page.md

{{Case Study Title}}

plugins/data-platform/templates/evidence-portfolio-page.md

jwt-issuer.ts

(no description)

plugins/data-platform/templates/jwt-issuer.ts

metabase-interactive-embed.tsx.md

Metabase Interactive Embedding (React component) — seam-marked stub

plugins/data-platform/templates/metabase-interactive-embed.tsx.md

power-bi-embedded-react.tsx.md

Power BI Embedded App-Owns-Data (React component) — seam-marked stub

plugins/data-platform/templates/power-bi-embedded-react.tsx.md

rls-cross-tenant-test.sql

(no description)

plugins/data-platform/templates/rls-cross-tenant-test.sql

stack-decision-record.md

Stack decision record — {{Engagement / Client Name}}

plugins/data-platform/templates/stack-decision-record.md

superset-embed-iframe.tsx.md

Superset embed (React iframe component) — seam-marked stub

plugins/data-platform/templates/superset-embed-iframe.tsx.md

Decision Trees

Every ## Decision Tree: section across the marketplace, rendered visually. Trees ship in plugin knowledge/skill files where multi-conditional procedural knowledge benefits from forced traversal over prose recall. Stale-after-90-days backstop via the Researcher's Weekly Deep Research sweep.

Team Lead — which specialist to spawn

ravenclaude-coreLast verified: 2026-05-22

When this applies: a user request has just arrived at the Team Lead session, and the Team Lead is choosing whether to handle it directly or delegate to one specialist (or a sequence). **Traverse top-to-bottom before spawning — do NOT keyword-match the request to an agent name.**

flowchart TD
    START[User request arrives at Team Lead] --> Q1{"Trivial Q&A, single-file ≤10-line tweak,<br/>or pure orchestration question?"}
    Q1 -->|YES| DIRECT["Team Lead handles directly<br/>NO spawn"]
    Q1 -->|NO| Q2{"Touches auth, secrets, PII/PCI/PHI,<br/>RLS/FLS, or a new external surface?"}
    Q2 -->|YES| SEC["Spawn security-reviewer<br/>(may run in parallel with builder)"]
    Q2 -->|NO| Q3{"Multi-file design choice not yet made,<br/>OR cross-cutting interface change?"}
    Q3 -->|YES| ARCH["Spawn architect FIRST<br/>plan then dispatch builders"]
    Q3 -->|NO| Q4{"Deliverable is prose for a human audience,<br/>NOT code?"}
    Q4 -->|"stakeholder memo, runbook, README"| DOC[Spawn documentarian]
    Q4 -->|"RAID, status, task hygiene"| PM[Spawn project-manager]
    Q4 -->|"partner profile, QBR, success plan"| PSM[Spawn partner-success-manager]
    Q4 -->|"wireframe, UX spec, a11y audit"| DSGN["Spawn designer<br/>before any frontend-coder"]
    Q4 -->|"agent prompt or skill authoring"| PE[Spawn prompt-engineer]
    Q4 -->|"needs external fact-finding"| DR[Spawn deep-researcher]
    Q4 -->|"NO, it is code"| Q5{What surface does the code touch?}
    Q5 -->|"UI or styling, client-side only"| FE[Spawn frontend-coder]
    Q5 -->|"API or DB schema, server-side only"| BE[Spawn backend-coder]
    Q5 -->|"both ends in one feature slice"| FS[Spawn fullstack-coder]
    Q5 -->|"pipelines, warehouse, ELT, dbt"| DE[Spawn data-engineer]
    BE --> POST{Code change ready for merge?}
    FE --> POST
    FS --> POST
    DE --> POST
    POST -->|"needs tests written or run"| QA[Spawn tester-qa]
    POST -->|"tests green, needs review"| CR[Spawn code-reviewer]
Rationale + tradeoffs

Rationale per leaf:

  • _DIRECT (no spawn)_ — spawning a specialist costs tokens, latency, and a context-handoff. A trivial Q&A or a 5-line one-file edit is cheaper for the Team Lead to handle in-session.
  • _security-reviewer_ — security gates everything else; if the request touches an auth/secret/PII surface, security review runs in parallel with (or before) the build, never after merge.
  • _architect_ — when the design isn't settled, a builder spawning without a plan produces rework. Architect costs one extra hop but saves N coder iterations.
  • _documentarian_ — stakeholder-facing prose. Polish, structure, no jargon. NOT for code comments.
  • _project-manager_ — RAID / status / task list. Internal hygiene, not stakeholder narrative.
  • _partner-success-manager_ — partner profiles, success plans, QBRs, health scores. Distinct from project-manager (which tracks the _work_); PSM tracks the _relationship_.
  • _designer_ — UX / wireframe / a11y. Always before frontend-coder on a new UI surface; the spec is the handoff.
  • _prompt-engineer_ — when the deliverable IS an agent file, skill file, or routing rule (this tree was prompt-engineering work).
  • _deep-researcher_ — when the answer requires verifying external facts (vendor pricing, regulation dates, framework attribution) the Team Lead can't confidently provide.
  • _frontend-coder / backend-coder / fullstack-coder_ — split by surface. Default to fullstack when a single feature slice touches both ends; only split into FE+BE when the work genuinely parallelizes.
  • _data-engineer_ — pipelines, warehouses, ELT, dbt models, data-quality. NOT application schema (that's architect → backend-coder); NOT Power BI semantic models (that's power-platform/power-bi-engineer).
  • _tester-qa_ — after the build, before review. Writes / runs the suite, proves the change behaves.
  • _code-reviewer_ — after tests are green. Reviewing a diff with no tests is reviewing the wrong thing.

Tradeoffs summary:

AgentSpawn cost (tokens / latency)When to spawnBlocks merge?
(none — Team Lead direct)0Trivial Q&A or ≤10-line single-file tweakNo
security-reviewerMediumAuth / secrets / PII / RLS / new external surfaceYES — must clear before merge
architectMediumMulti-file design not yet settled; cross-cutting interface changeNo (advisory) but unblocks builders
documentarianLow-MediumStakeholder prose, memos, runbooks, READMEsNo
project-managerLowRAID / status / task hygiene; weekly cadence; risk emergesNo
partner-success-managerLow-MediumPartner profile / QBR prep / health-score dip / 30-day silenceNo
designerMediumWireframe / UX flow / a11y audit before any UI buildNo (gates frontend-coder start)
prompt-engineerMediumAuthoring or revising an agent / skill / routing ruleNo
deep-researcherHigh (browsing + verification)External fact-finding the Team Lead can't confidently answerNo (advisory)
frontend-coderMediumUI / client-only changesNo
backend-coderMediumAPI / DB / server-only changesNo
fullstack-coderMedium-HighOne feature slice spans both ends, doesn't parallelize cleanlyNo
data-engineerMediumPipelines / warehouse / ELT / dbt / query perf / lineageNo
tester-qaMediumCode change exists, suite needs writing or runningYES — must clear before code-reviewer
code-reviewerMediumTests are green, diff is ready for human-quality reviewYES — final pre-merge gate

If the request matches multiple branches, the earliest-blocking gate wins: a UI feature that also touches auth spawns security-reviewer first (Q2 catches it before Q5), even though Q5 would otherwise route to frontend-coder.

---

ravenclaude-core · plugins/ravenclaude-core/knowledge/agent-routing.md

PA flow recovery — stuck / broken / off

power-platformLast verified: 2026-05-21

When this applies: one or more Power Automate flows in a Dataverse-backed solution are off, throwing 404 on `For_a_selected_row_V2`, or otherwise misbehaving after a solution import. **Traverse this tree top-to-bottom before selecting a method — do NOT pattern-match on keywords in the user's situation description.**

flowchart TD
    START[One or more PA flows broken/off/misnamed] --> Q1{Can you toggle ON from portal without error?}
    Q1 -->|YES| TOGGLE["Just toggle. Done.<br/>No import needed."]
    Q1 -->|NO| Q2{"Bulk toggle fails 0x80060467<br/>OR For_a_selected_row_V2/404?"}
    Q2 -->|YES, 1-5 flows| SURGICAL["SURGICAL TEMP SOLUTION<br/>~2 min"]
    Q2 -->|YES, 6+ flows OR multi-entity| FULL["FULL SOLUTION REIMPORT<br/>5-20 min"]
    Q2 -->|NO, flow self-off after activate| CONNREF["Connection-reference rebind<br/>portal: Connections, bind CR, retry"]
    SURGICAL --> CLEANUP["Delete temp BTCSIFlowFix solution<br/>after import succeeds"]
    FULL --> DIFFCHECK["git diff after portal pull<br/>before next session"]
Rationale + tradeoffs

Rationale per leaf:

  • *TOGGLE* — if the portal accepts the toggle, the flow definition is intact; only the trigger registration was lost. No reimport needed.
  • *SURGICAL* — preferred for narrow blast radius. Touches only the named flows; reversible by deleting the temp solution. Steps: (1) create temp BTCSIFlowFix solution via Web API, (2) AddSolutionComponent (type 29) for each affected flow only, (3) export → pac unpack → edit JSON/XML → pac pack → import, (4) delete temp solution.
  • *FULL* — only when 6+ flows are affected or flows span multiple entities. ⚠ Overwrites portal changes since last export; always git diff after portal pull before next session.
  • *CONNREF* — flow self-off-after-activate means a missing connection-reference binding in this environment. Reimport will NOT fix this; only portal-side rebinding does.
  • *CLEANUP* — temp solutions clutter the env's solution list and confuse later imports. Always delete the temp solution after the surgical fix succeeds.
  • *DIFFCHECK* — full reimport is the most-likely-to-cause-regression path; the git diff is the cheapest insurance.

Tradeoffs summary:

MethodTimeBlast radiusApproval gate?Use when
Portal togglesecondsNoneNoFlow just needs activation
Surgical temp solution~2 minNamed flows onlyNo1-5 broken/misnamed flows
Full solution reimport5-20 minOverwrites all components since last exportYES (confirm with user before triggering)6+ flows or confirmed auth corruption
Connection-reference rebindsecondsNoneNoFlow turns off immediately after activation

If the symptom matches multiple branches, the leaf with the smaller blast radius is the default. Escalate to the bigger blast radius only when the smaller one demonstrably failed.

---

power-platform · plugins/power-platform/knowledge/programmatic-flow-creation.md

Pipeline Architecture

power-platform
flowchart TD
    A[New ALM pipeline?] --> B{How many envs?<br/>How much ADO maturity?}
    B -->|2–3 envs, low ADO maturity| C[Power Platform Deployment Pipelines]
    B -->|4+ envs OR need approvals,<br/>gated tests, custom build steps| D[Custom Azure DevOps Pipelines]
    B -->|Need Power BI in same pipeline,<br/>or non-PP artifacts| D
    C --> E{Service principal<br/>configured?}
    D --> F{pac CLI installed<br/>on agent?}
    E -->|No| G[Set up app user per env first]
    E -->|Yes| H[Configure stages + deployment settings file]
    F -->|No| I[Add Power Platform Build Tools<br/>or install pac via PowerShell task]
    F -->|Yes| J[Multi-stage YAML:<br/>lint → build → import-to-build env<br/>→ checkin-managed → deploy w/ approvals]
    H --> K[Promote with deploymentSettings.json<br/>per stage for env vars + conn refs]
    J --> K
Rationale + tradeoffs

Rule of thumb: Deployment Pipelines if you can; Custom ADO when you can't. Deployment Pipelines is faster to stand up and has fewer moving parts. Custom ADO is what you need once you have approval gates, automated tests, Power BI in the same release, multiple solutions promoting together, or anything else that does not fit the linear DEV → TEST → PROD shape.

power-platform · plugins/power-platform/skills/alm-pipeline-design/SKILL.md

FP&A — Budget-vs-actual variance root-cause triage

financeLast verified: 2026-05-22

When this applies: a P&L, balance-sheet, or cash line is off plan by a material amount (per the engagement's stated threshold — typically the greater of $50K or 5%) and you are about to write commentary that names the cause. **Traverse this tree top-to-bottom before selecting a driver — do NOT pattern-match on the line label or on the first explanation a stakeholder offered.**

flowchart TD
    START[Material variance on a line item] --> Q1{"Was the underlying account reconciled and<br/>the subledger tied to the GL?"}
    Q1 -->|NO| RECON["Stop. Route to controller for recon first.<br/>Commentary on unreconciled accounts is noise."]
    Q1 -->|YES| Q2{"Does the variance reverse if you net<br/>the prior and current period together?"}
    Q2 -->|YES| TIMING["TIMING or RECLASS<br/>Variance is a cutoff or accrual-reversal artifact,<br/>not a real miss"]
    Q2 -->|NO| Q3{"Is there a one-time item in actuals or budget<br/>that the other side does not have?"}
    Q3 -->|YES| ONETIME["ONE-TIME or NON-RECURRING<br/>Isolate the item, restate the underlying run-rate"]
    Q3 -->|NO| Q4{"Is the line in a currency different from<br/>the reporting currency, or does it consolidate<br/>FX-denominated subs?"}
    Q4 -->|"YES, FX rate moved over 2pct"| FX["FX TRANSLATION<br/>Decompose into constant-currency variance<br/>and FX effect"]
    Q4 -->|NO, or FX immaterial| Q5{"Is the line revenue, COGS,<br/>or a unit-driven cost?"}
    Q5 -->|YES| PVM["PRICE or VOLUME or MIX<br/>Decompose with PVM bridge before<br/>naming a driver"]
    Q5 -->|NO| Q6{"Did a discrete decision change the run-rate<br/>this period - hire, contract, vendor switch?"}
    Q6 -->|YES| DECISION["DECISION-DRIVEN<br/>Name the decision, owner,<br/>and date in commentary"]
    Q6 -->|NO| FORECAST["FORECAST ERROR - last resort<br/>Name the assumption that broke<br/>and refresh the driver"]
Rationale + tradeoffs

Rationale per leaf:

  • _RECON_ — variance commentary on an unreconciled account describes bookkeeping noise, not business performance. Reconciliation is a precondition, not a parallel task.
  • _TIMING_ — if netting two periods makes the variance disappear, the actual was always going to land where budget said — it just landed in the wrong month. Naming this as "we missed" causes the next period's commentary to flip the other way and erodes credibility.
  • _ONE-TIME_ — a one-time gain or charge in either side of the comparison distorts the run-rate read. Isolate it, restate the underlying trend, and commentary should describe both ("$1.2M favorable, of which $900K is a one-time legal settlement; underlying $300K favorable").
  • _FX_ — if the line consolidates FX-denominated subs and the rate moved, part of the variance is mathematical translation, not operating performance. Constant-currency decomposition is the standard fix.
  • _PVM_ — revenue and unit-driven costs almost always have three drivers (price, volume, mix) moving simultaneously. Writing "revenue missed by $X" without the PVM split hides which lever to pull.
  • _DECISION_ — if a discrete decision (a hire, a contract signed, a vendor switch) drove the variance, the commentary is short and the owner is named. This is the cleanest leaf and the most actionable.
  • _FORECAST_ — only after the other branches are ruled out. "The forecast was wrong" is the right answer surprisingly rarely; when it is right, name the specific assumption that broke (e.g., "we assumed 4% churn, actual was 6.2%") so the forecast can be refreshed.

Tradeoffs summary:

LeafTime to confirmWhat it triggers downstreamApproval gate?Use when
RECONhourscontroller picks up; commentary deferredNo, but blocks commentarySubledger does not tie to GL or open recon items remain
TIMINGminutes (net two periods)reverse in next month's commentary; no remediationNoVariance disappears across periods
ONE-TIMEminutes (read the JE/contract)isolate in commentary; restate run-rateNoDiscrete non-recurring item present
FXhour (constant-currency build)call out the rate move; FX hedge review optionalNoMulti-currency consol with >2pct rate move
PVMhalf-day (build the bridge)sales / pricing / product owner each get a sliceNoRevenue, COGS, or unit-driven cost lines
DECISIONminutes (point to decision log)name owner + date in commentaryNoDiscrete decision changed run-rate
FORECASThours (review assumption deck)refresh the driver; update model assumptionsYES — model-owner sign-offAll other branches ruled out

If two leaves both fit (e.g., a one-time item AND an FX move), name both in commentary and split the variance — do not pick one and discard the other. The tree resolves the _first_ driver; bridges are additive.

---

finance · plugins/finance/knowledge/variance-root-cause-triage.md

Regulator finding — severity triage

regulatory-complianceLast verified: 2026-05-22

When this applies: a regulator has issued a written finding, communication, or enforcement-related document to the firm (or a subsidiary), and the next decision is _what severity tier this is_ and _which response playbook fires_. Do NOT use this tree for internal audit findings, second-line control-test findings, or self-identified issues raised by the firm itself — those use separate workflows.

flowchart TD
    START[Regulator written finding received] --> Q1{"Is the regulator the BMA<br/>or a Bermuda supervisor?"}
    Q1 -->|YES| BMA["BMA branch - route to<br/>bermuda-insurance-specialist<br/>for terminology mapping"]
    Q1 -->|"NO, US federal banking"| Q2{"Is the document a formal enforcement order<br/>consent order, C and D, civil money penalty?"}
    Q2 -->|YES| CONSENT["CONSENT ORDER path<br/>counsel-led, board-mandated<br/>public-disclosure analysis required"]
    Q2 -->|NO| Q3{"Does the finding use the word immediate<br/>or cite repeat-finding escalation?"}
    Q3 -->|YES| MRIA["MRIA path<br/>30-60 day response window<br/>interim controls within days<br/>board reporting required"]
    Q3 -->|NO| Q4{"Was the finding issued by the examiner<br/>vs self-identified by firm?"}
    Q4 -->|YES| MRA["MRA path<br/>timely corrective action<br/>typical 90-180 day plan<br/>management response required"]
    Q4 -->|NO| SII["Self-Identified Issue<br/>internal remediation plan<br/>regulator notification may still be required"]
Rationale + tradeoffs

Rationale per leaf:

  • _BMA_ — Bermuda Monetary Authority uses different vocabulary (supervisory letters, directions under the Insurance Act, enforcement notices). Mapping to the US MRA/MRIA tiers requires the Bermuda specialist; do not assume the US severity ladder applies.
  • _CONSENT ORDER_ — formal enforcement documents (consent orders, cease-and-desist, civil money penalties) are legal instruments. Counsel leads the response, board approves the response strategy, and securities-law disclosure analysis fires for public companies. This path is NOT a compliance-only workflow.
  • _MRIA_ — the Federal Reserve defines MRIAs as matters "of significant importance and urgency" requiring immediate action, with criteria including significant safety-and-soundness risk, significant noncompliance with laws/regs, or repeat criticisms that escalated due to prior inaction (SR 13-13/CA 13-10). The response window is compressed (30–60 days for the plan; interim controls within days of the exit conference) and board-level reporting is mandatory.
  • _MRA_ — Matters Requiring Attention require "timely and effective corrective action by bank management" (OCC) but do not pose an immediate risk. Typical plan windows are 90–180 days. Management response is required; board awareness is expected; board approval is not always mandatory but is best practice.
  • _SII_ — Self-Identified Issues are firm-originated and follow the firm's internal issue-management policy. Regulator notification may still be required depending on materiality, the regulator's expectations regime, and any pre-existing supervisory letters that require proactive disclosure.

If the symptom matches multiple branches, the leaf with the higher severity is the default. Escalate to the lower severity only when the higher one is demonstrably ruled out by the document's actual language and the examiner's stated intent. Misclassifying _down_ (treating an MRIA as an MRA) is the dominant failure mode this tree exists to prevent.

Tradeoffs summary:

TierResponse windowBoard involvementCounsel required?Public disclosure?Use when
Consent order / C&DPer order termsApproval requiredYESYES for public companiesFormal enforcement instrument issued
MRIA30–60 days plan; interim controls in daysReporting + approvalRecommendedCase-by-case, materiality test"Immediate" language, safety-and-soundness, or repeat finding
MRA90–180 days plan typicalAwareness + responseNot by defaultRarelyExaminer-issued, non-immediate
SIIPer firm policyPer firm policyNoPer firm policy + regulatorFirm self-identified before examiner did

---

regulatory-compliance · plugins/regulatory-compliance/knowledge/regulator-finding-severity-triage.md

CWV root-cause triage

web-designLast verified: 2026-05-22

When this applies: any CWV regression that needs diagnosis before fix-selection. **Traverse this tree top-to-bottom before picking a fix** — diagnosing the wrong vital wastes the budget.

flowchart TD
    START[CWV regression reported] --> Q1{"Which vital is failing?<br/>Check CrUX p75"}
    Q1 -->|LCP > 2.5s| LCP_Q{What's the LCP element?}
    Q1 -->|CLS > 0.1| CLS_Q{When does shift occur?}
    Q1 -->|INP > 200ms| INP_Q{Which interaction is slow?}

    LCP_Q -->|Image| LCP_IMG["Preload + fetchpriority + WebP/AVIF<br/>+ explicit width/height"]
    LCP_Q -->|Text + late web font| LCP_FONT["font-display:swap<br/>+ subset + preload"]
    LCP_Q -->|Render-blocking JS / CSS| LCP_JS["Defer JS + critical-CSS inline<br/>+ remove unused CSS"]
    LCP_Q -->|Server slow TTFB > 800ms| LCP_TTFB["CDN cache + server-render<br/>+ edge function if dynamic"]

    CLS_Q -->|Image / video / iframe| CLS_DIMS["Reserve space:<br/>width+height attrs OR aspect-ratio CSS"]
    CLS_Q -->|Late web font swap| CLS_FONT["Match metrics: size-adjust<br/>+ ascent/descent override"]
    CLS_Q -->|Ad / embed injected late| CLS_AD["Reserve container min-height<br/>+ lazy-load below the fold"]
    CLS_Q -->|Animation triggers reflow| CLS_ANIM["Use transform/opacity only<br/>NOT width/height/top/left"]

    INP_Q -->|Heavy JS on click handler| INP_JS["Split work with scheduler.yield<br/>or requestIdleCallback"]
    INP_Q -->|Synchronous third-party| INP_3P["Defer/async load<br/>or remove the script"]
    INP_Q -->|Large React re-render| INP_REACT["Memoize + virtualize lists<br/>+ React 18 concurrent features"]
    INP_Q -->|Slow paint after JS| INP_PAINT["Use will-change:transform<br/>OR composite-only properties"]
Rationale + tradeoffs

Rationale per leaf:

  • *LCP_IMG* — most common LCP cause. Preload + fetchpriority=high gets the bytes into the browser first; WebP/AVIF cuts bytes 30-50%; explicit dimensions prevent reflow that pushes LCP further out.
  • *LCP_FONT* — font-display:swap shows fallback immediately; the swap-in is a CLS risk but typically the LCP win is bigger. If CLS becomes an issue, use size-adjust to match metrics.
  • *LCP_JS* — render-blocking is the silent LCP killer. defer on non-critical JS, inline critical CSS, audit with Coverage tab in DevTools.
  • *LCP_TTFB* — if TTFB > 800ms, fix the server first. Static / CDN cache for marketing pages. Edge function for dynamic. SSR is fine; CSR is the LCP enemy.
  • *CLS_DIMS* — the single highest-impact CLS fix. Every <img>, <video>, <iframe> gets explicit width + height OR aspect-ratio.
  • *CLS_FONT* — size-adjust + ascent-override + descent-override match the fallback metrics to the web font so swap-in is invisible.
  • *CLS_AD* — late-injected ads or embeds shift everything below. Reserve container min-height; lazy-load if below the fold.
  • *CLS_ANIM* — animating width / height / top / left triggers reflow; animating transform / opacity is composited and doesn't shift layout.
  • *INP_JS* — long tasks block the main thread. scheduler.yield() (modern) or requestIdleCallback / setTimeout(fn, 0) chunks the work.
  • *INP_3P* — synchronous third-party scripts (chat widgets, A/B test SDKs) are common INP killers. Defer/async OR remove.
  • *INP_REACT* — large lists virtualize (React Virtuoso, TanStack Virtual); state updates that cascade memoize with useMemo/useCallback/React.memo.
  • *INP_PAINT* — slow paint after JS often means the layer isn't composited. will-change: transform hints the browser to promote.

Tradeoffs summary:

VitalDefault fixTime to fixRisk
LCP (image)Preload + fetchpriority + WebP/AVIF1-2 hoursLow — well-supported
LCP (font)font-display:swap30 minMedium — may cause CLS if metrics don't match
LCP (TTFB)CDN / static rendering4-8 hoursHigh — may require platform change
CLS (dimensions)width/height attributes everywhere2-4 hoursLow
CLS (font swap)size-adjust / ascent-override1-2 hoursLow
INP (heavy JS)scheduler.yield + chunking4-12 hoursMedium — refactor scope
INP (third-party)Remove or defer30 min — 4 hoursDepends on stakeholder pushback

Failure modes to avoid:

  • Diagnosing the wrong vital. If CrUX shows LCP > 2.5s but INP is fine, fix LCP first. Don't burn the budget on the wrong vital.
  • Treating Lighthouse lab data as field truth. Field (CrUX / RUM) at p75 is the standard target; lab data is a debugging tool, not a goal.
  • Optimizing for the median when p75 is what gets graded.
  • Fixing CLS by hiding content (visibility:hidden) — that just moves the problem; users still see broken layout.
web-design · plugins/web-design/skills/core-web-vitals-tuning.md

Partner health decline — play selection

edtech-partner-successLast verified: 2026-05-22

When this applies: the composite health score has dropped a band (green → yellow, yellow → red) OR an independent red-flag signal has fired (sponsor departure, escalated ticket, vendor-comparison signal, >30% WoW usage drop). The PSM is about to choose between recovery, renewal, expansion, executive-sponsor re-engagement, or do-nothing. **Traverse this tree top-to-bottom before selecting a play. Do NOT pattern-match on the partner's emotional tone or the score's color.**

flowchart TD
    START[Health declined OR red-flag fired] --> Q1{"Calendar dead zone<br/>or testing window?"}
    Q1 -->|YES| SUPPRESS["NO PLAY — suppress signal<br/>see k12-psm-operating-cadence"]
    Q1 -->|NO| Q2{"Rostering or SSO error rate<br/>elevated in last 14 days?"}
    Q2 -->|YES| IMPL["IMPLEMENTATION PLAY<br/>see district-implementation-failure-modes"]
    Q2 -->|NO| Q3{"Named sponsor or champion<br/>changed or silent 30-plus days?"}
    Q3 -->|YES| SPONSOR["EXECUTIVE-SPONSOR RE-ENGAGEMENT<br/>see executive-sponsor-mapping skill"]
    Q3 -->|NO| Q4{"Within 180 days of renewal<br/>AND value evidence thin?"}
    Q4 -->|YES| RECOVERY_THEN_RENEW["RECOVERY-AND-RENEW<br/>recovery-play-design then renewal-play-design"]
    Q4 -->|NO| Q5{"Adoption stage 1<br/>newly implemented?"}
    Q5 -->|YES| ADOPTION["ADOPTION-SEQUENCING PLAY<br/>do NOT push feature breadth in stage 1"]
    Q5 -->|NO| RECOVERY["GENERIC RECOVERY PLAY<br/>4-hypothesis diagnostic first"]
Rationale + tradeoffs

Rationale per leaf:

  • _SUPPRESS_ — the most common wrong-first-pick is _acting_ on a signal that the calendar would have suppressed anyway. K-12 December usage drops aren't churn signals; they're winter break. Running any play here trains the partner to view the PSM as out-of-touch with their operating reality. See k12-psm-operating-cadence.md and k12-adoption-arc-fall-spring-summer.md Phase 4.
  • _IMPL_ — rostering/SSO failure is the single most-common true root cause of an EdTech health drop and the one most-often misdiagnosed as commercial. If error rates are elevated, no other play works until the data layer is fixed. The PSM coordinates the fix, doesn't own it. See district-implementation-failure-modes.md and sis-sso-rostering-integration-patterns.md.
  • _SPONSOR_ — a missing or silent named champion is the most predictive single signal in many books. Renewal and expansion plays both require a live sponsor; running them without one is talking to an empty room. Re-engage the sponsor (or identify a successor) before any other play.
  • _RECOVERY_THEN_RENEW_ — within 180 days of renewal with thin value evidence, a pure renewal play will be a price negotiation the PSM loses. Run recovery first (value-evidence pack, 30/60/90 signal targets), then layer renewal. K-12 specifically: 180-day clock per renewal-pricing-conversations-edtech.md.
  • _ADOPTION_ — stage-1 partners (newly implemented) look red by health-score math because deep-feature adoption hasn't had time to develop. The right play is sequencing them through the early-adoption arc, not running recovery. Do NOT push feature breadth in stage 1.
  • _RECOVERY (generic)_ — only when the four earlier branches don't apply. Run the 4-hypothesis diagnostic from recovery-play-design.md (product fit / implementation / sponsorship / external pressure) before any remedy.

Tradeoffs summary:

PlayTime-to-first-signalPartner-relationship cost if wrongApproval gate?Use when
Suppress signal0 (no action)Low if right; high if you're wrong — silent churn riskNo — PSM internal onlyCalendar dead zone, testing window, known seasonal dip
Implementation play1-4 weeksLow — the partner is grateful for the fixSometimes (engineering capacity)Roster/SSO/train-the-trainer broken
Executive-sponsor re-engagement2-6 weeksMedium — re-introducing is awkward but recoverableNoSponsor changed, silent, or never engaged
Recovery-and-renew8-26 weeksHigh if mistimed — looks like a panic move at T-30Yes (success leadership)Within 180 days of renewal, value evidence thin
Adoption-sequencing4-12 weeksLow — feels like serviceNoStage-1 partner (newly implemented)
Generic recovery4-12 weeksMedium — burns goodwill if root cause matched an above branchNoNone of the above branches resolved

If the partner's situation matches multiple branches, the higher branch wins. SUPPRESS beats IMPL beats SPONSOR beats RECOVERY_THEN_RENEW beats ADOPTION beats generic RECOVERY. The ordering reflects "what would be most costly to skip past."

---

edtech-partner-success · plugins/edtech-partner-success/knowledge/partner-health-decline-which-play.md

Dashboard engagement — which Case?

data-platformLast verified: 2026-05-22

When this applies: any new dashboard engagement OR mid-engagement scope shift that might change the Case. **Traverse this tree top-to-bottom before recommending a stack** — do NOT pattern-match on keywords in the user's situation description.

flowchart TD
    START[New dashboard engagement] --> Q1{Portfolio for the consultant's own marketing site?}
    Q1 -->|YES| CASE_A["Case A — Portfolio<br/>Evidence.dev OSS<br/>Static deploy"]
    Q1 -->|NO| Q2{Client already has a BI tool — needs only data pipes?}
    Q2 -->|YES| CASE_D["Case D — Pipes only<br/>Airbyte + Postgres + dbt<br/>No dashboard framework"]
    Q2 -->|NO| Q3{One-off custom dashboard inside the client's app?}
    Q3 -->|YES| Q3a{M365-stack client?}
    Q3a -->|YES| CASE_B_PBI["Case B — Microsoft variant<br/>Power BI Embedded F2 ~$262/mo<br/>App-Owns-Data + DAX-role RLS"]
    Q3a -->|NO| CASE_B_OSS["Case B — OSS variant<br/>Superset or Metabase OSS<br/>VPS $20-40/mo + Postgres RLS + JWT embed"]
    Q3 -->|NO| Q4{Multi-tenant product to sell to many customers?}
    Q4 -->|YES| CASE_C["Case C — Productized SaaS<br/>Cube OSS + custom React<br/>Postgres RLS"]
    Q4 -->|NO| ESCAPE["None of A/B/C/D fit<br/>Escalate to ravenclaude-core/architect"]
Rationale + tradeoffs

Rationale per leaf:

  • *CASE_A* — single-tenant + version-controlled + public-facing means no embed-auth complexity. Evidence.dev OSS handles the SQL-fenced-block authoring pattern cleanly. $0 hosting via Vercel / Netlify static deploy.
  • *CASE_D* — when the client owns the BI tool, the dashboard build is out of scope. Stay in the pipes lane. Don't try to sell a dashboard the client doesn't need.
  • *CASE_B_PBI* — Microsoft-stack means Entra-ID-based RLS via DAX roles is the path of least resistance. F2 capacity is flat ~$262/mo PAYG (no per-viewer license). Coordinate with power-platform/power-bi-engineer on semantic-model + DAX-role design.
  • *CASE_B_OSS* — non-Microsoft client + 5-50 viewers means per-viewer pricing kills the math. Superset / Metabase OSS with Postgres RLS + JWT embed is the consulting-friendly default at $20-40/mo per-client VPS.
  • *CASE_C* — multi-tenant productized SaaS needs a semantic layer (Cube) to prevent customer-facing dashboards from shipping raw SQL. Custom React (Next.js + Tremor + Recharts + shadcn/ui) gives brand differentiation and viewer-scale economics.
  • *ESCAPE* — if the engagement genuinely doesn't fit A/B/C/D, the architect handles a custom plan. Examples: regulator-facing dashboard with audit-trail requirements; embedded-mobile-app dashboard; offline-first dashboard for field operations.

Tradeoffs summary:

CaseStackPer-month costMulti-tenant?Viewer ceiling
AEvidence.dev OSS + static deploy$0No (single-tenant)n/a — public
B (OSS)Superset/Metabase OSS + VPS + Postgres RLS$20-40/clientYes5-50/client
B (PBI)Power BI Embedded F2 + Fabric$262 PAYG / $156 reservedYes (Entra-ID RLS)Unlimited
CCube OSS + custom React + Postgres RLS$0 OSS + infra (~$50-200/mo at scale)Yes50-500+
DAirbyte + Postgres + dbt$20-40 (Airbyte Cloud) or self-hostClient-ownedn/a — client's BI tool

Failure modes to avoid:

  • Recommending Metabase Pro / Tableau Embedded / Sigma / Looker for Case B without flagging the per-viewer math (5-50 viewers × $400+/yr each kills SMB consulting margin)
  • Putting Case C on a raw-Postgres stack without a semantic layer (Cube). Customer-facing dashboards shipping raw SQL won't scale.
  • Recommending Case A's Evidence.dev for a multi-tenant Case B engagement (no embed-auth model in OSS Evidence)
  • Trying to retrofit Case C onto a Case B engagement just because the consultant might sell it to a second client someday — Case C earns its complexity only when there ARE multiple paying tenants
data-platform · plugins/data-platform/skills/stack-selection.md

The marketplace model

RavenClaude is a single private Claude Code plugin marketplace. The "product" of this repo is the contents of plugins/. Consumers run /plugin install <name>@ravenclaude from any Claude Code project to pull a plugin into their session.

Hierarchical dispatch (Team Lead → specialists)

  • The top-level Claude session is the Team Lead.
  • Specialists never spawn other specialists — only the Team Lead dispatches. Enforced by the guard-recursive-spawn hook.
  • Every specialist emits its report ending with a ---RESULT_START--- … ---RESULT_END--- JSON block (the Structured Output Protocol). The Team Lead parses the JSON to drive routing.
  • The spawn-team skill in ravenclaude-core is the canonical dispatch playbook. Its "Cross-plugin dispatch" section names which domain plugin to route into.

Plugin separation

  • ravenclaude-core stays domain-neutral — generic agents, dispatch playbook, gates, hooks.
  • Domain plugins extend core. They inherit the constitution and add their own specialists, skills, hooks, and templates.
  • A plugin's CLAUDE.md auto-loads when active in a consumer session.

Layout enforcement

A new file's path must match at least one glob in .repo-layout.json. Enforcement is in two layers: the enforce-layout hook fires PreToolUse on Write/Edit/MultiEdit; the validate-layout CI workflow runs on every PR. Path-scoped rule files were considered but they only load on Read, not on Write — see Claude Code issue #23478.

CI gates (validated by the gate-audit meta-test)

Each CI gate must prove bidirectionally that it fails on a known-bad input AND passes on a known-good input. scripts/audit-gates.sh enforces this — 21 assertions across 10 gates today. See docs/best-practices/ci-gate-audit.md.

KindPluginNameDescriptionPath