From orca-skills
Analyzes compliance gaps for frameworks like PCI DSS, SOC 2, CIS AWS: ranks failing controls by impact, quick wins, account/business unit breakdowns, remediation plans. Use for compliance status or failure queries.
npx claudepluginhub orcasecurity/orca-skills --plugin orca-skillsThis skill uses the workspace's default tool permissions.
Answers the question: **"Where are we failing, what's the fastest path to improve, and who owns the worst gaps?"**
Guides implementing defense-in-depth security architectures, compliance with SOC2/ISO27001/GDPR/HIPAA, threat modeling, risk assessments, incident response, and SDLC security embedding.
Provides senior GRC analyst expertise across 15 frameworks including NIST 800-53, FedRAMP, FISMA, CMMC, SOC 2, ISO 27001. Supports control lookups, cross-mapping, document review, audit prep, compliance workflows.
Tracks compliance status across SOC 2, ISO 27001, NIST, PCI, HIPAA frameworks. Monitors control implementation, identifies gaps, analyzes evidence folders and audit reports, generates dashboards and reports.
Share bugs, ideas, or general feedback.
Answers the question: "Where are we failing, what's the fastest path to improve, and who owns the worst gaps?"
Given a compliance framework (or all frameworks), analyzes failing controls ranked by blast radius, identifies quick wins (single-fix controls), breaks down gaps by account/business unit, and generates a prioritized remediation plan.
/orca-compliance-gap
/orca-compliance-gap PCI DSS
/orca-compliance-gap CIS AWS
/orca-compliance-gap SOC 2
Or natural language:
Parse user input to determine:
Query 1: All enabled frameworks with current scores
get_enabled_compliance_frameworks:
(no filters)
Query 2: Compliance trend over time
get_compliance_trend_over_time:
filters:
datetime_filter: 30
Query 3: Compliance by account
get_compliance_analysis_by_account_or_business_unit:
group_by: "accounts"
Query 4: Compliance by business unit
get_compliance_analysis_by_account_or_business_unit:
group_by: "business_units"
For the target framework (or the worst-scoring one if user said "all"), run in parallel:
Query 5: Failing control tests
get_compliance_framework_control_tests:
framework_id: <id>
filters:
status: "fail"
Query 6: Framework stats
get_compliance_framework_stats_for_asset:
framework_id: <id>
Query 7: Assets with most failures
get_framework_assets_with_failed_controls_count:
framework_id: <id>
Query 8: Account heatmap for this framework
get_compliance_framework_account_heatmap:
framework_id: <id>
A "quick win" is a failing control where:
Rank failing controls by:
Map failing controls to accounts to identify:
Build a prioritized remediation plan:
Phase 1: Quick Wins (days)
Phase 2: Systematic Fixes (weeks)
Phase 3: Architectural Changes (months)
CRITICAL: Never leave the user with just data. After EVERY output layer, suggest the next action and offer to generate remediation code.
After the dashboard and after every drill-down section:
When the user selects a format:
compliance-fix-<control-id>.<ext> (e.g., .tf, .yml, .sh)Format mapping:
| User says | Extension | Template |
|---|---|---|
| Terraform | .tf | HCL with provider + resource blocks |
| CloudFormation | .cfn.yaml | YAML template with Parameters/Resources |
| Ansible | .yml | Playbook with tasks |
| CLI | .sh | Shell script with cloud CLI commands |
| Instructions | inline | Numbered step-by-step console walkthrough |
| Pulumi | .ts | TypeScript Pulumi program |
| ARM/Bicep | .bicep | Bicep template |
═══════════════════════════════════════════════════════════════════
COMPLIANCE GAP ANALYSIS — <framework or "All Frameworks">
<date> | <account scope>
═══════════════════════════════════════════════════════════════════
POSTURE: <overall assessment — 1 line>
┌─────────────────────────────────────────────────────────────────┐
│ FRAMEWORKS <N> enabled │
│ AVG SCORE <X>% │
│ WORST <framework> at <X>% │
│ BEST <framework> at <X>% │
│ TREND (30d) <improving / stable / degrading> │
│ QUICK WINS <N> controls fixable with single changes │
│ WORST ACCOUNT <account> — <X>% avg score │
└─────────────────────────────────────────────────────────────────┘
FRAMEWORK SCORES:
Framework Score Trend Status
─────────────────────────────────────────────────────────
<framework> <X>% ↓ -N% ⚠ DROPPED
<framework> <X>% → 0% ✓ STABLE
<framework> <X>% ↑ +N% ✓ IMPROVING
...
TOP FAILING CONTROLS (highest impact):
[1] <control name> — failing on <N> assets, affects <M> frameworks
[2] <control name> — failing on <N> assets, affects <M> frameworks
[3] <control name> — failing on <N> assets, affects <M> frameworks
RECOMMENDED ACTION:
The fastest score improvement: fix <top control> — affects
<N> assets across <M> frameworks. I can generate the fix now.
What format? terraform | cloudformation | ansible | cli |
instructions | pulumi | arm/bicep
═══════════════════════════════════════════════════════════════════
Or drill down: controls | quick wins | accounts | trends |
remediation plan | <framework name> | full
═══════════════════════════════════════════════════════════════════
───────────────────────────────────────────────────────────────────
FAILING CONTROLS — <framework>
Score: <X>% (<P> pass, <F> fail of <T> total)
───────────────────────────────────────────────────────────────────
CRITICAL CONTROLS FAILING:
<control-id> <control name>
Assets failing: <N> | Frameworks: <list>
Fix: <1-line remediation summary>
<control-id> <control name>
...
HIGH CONTROLS FAILING:
...
MEDIUM CONTROLS FAILING:
...
FIX NOW:
Pick any control and I'll generate the remediation code.
Choose format: terraform | cloudformation | ansible | cli |
instructions | pulumi | arm/bicep
───────────────────────────────────────────────────────────────────
───────────────────────────────────────────────────────────────────
QUICK WINS — Highest ROI Fixes
───────────────────────────────────────────────────────────────────
[1] <control name>
Fix: <specific action>
Impact: passes control in <N> frameworks, <M> assets
Score boost: ~<X>% across <frameworks>
Effort: LOW (single config change)
[2] <control name>
...
[3] <control name>
...
ESTIMATED TOTAL IMPROVEMENT:
Fixing all <N> quick wins → +<X>% average score improvement
LET'S DO IT:
I'll generate fixes for all quick wins in one batch.
Choose format: terraform | cloudformation | ansible | cli |
instructions | pulumi | arm/bicep
───────────────────────────────────────────────────────────────────
───────────────────────────────────────────────────────────────────
COMPLIANCE BY ACCOUNT
───────────────────────────────────────────────────────────────────
Account Avg Score Worst Framework Failures
──────────────────────────────────────────────────────────────────
<account-1> <X>% <framework> <Y>% <N>
<account-2> <X>% <framework> <Y>% <N>
...
WORST ACCOUNT DEEP DIVE — <account>:
Framework Score Gap from Target
──────────────────────────────────────────
<framework> <X>% -<Y>% from 90%
...
Top failures in this account:
<control> — <N> assets
...
───────────────────────────────────────────────────────────────────
───────────────────────────────────────────────────────────────────
COMPLIANCE TRENDS — Last 30 Days
───────────────────────────────────────────────────────────────────
Date Avg Score Direction Notable Changes
──────────────────────────────────────────────────────
Apr 17 <X>% ─ <note>
Apr 10 <X>% ↓ -N% <note>
Apr 03 <X>% → 0% <note>
Mar 27 <X>% ↑ +N% <note>
FRAMEWORKS THAT DROPPED:
<framework>: <from>% → <to>% (<reason if detectable>)
FRAMEWORKS THAT IMPROVED:
<framework>: <from>% → <to>% (<what was fixed>)
───────────────────────────────────────────────────────────────────
───────────────────────────────────────────────────────────────────
REMEDIATION PLAN — Path to <target>% Compliance
───────────────────────────────────────────────────────────────────
PHASE 1: QUICK WINS (this week)
Expected improvement: +<X>%
[ ] <fix 1> — <N> assets, <M> frameworks
[ ] <fix 2> — <N> assets, <M> frameworks
[ ] <fix 3> — ...
PHASE 2: SYSTEMATIC FIXES (this month)
Expected improvement: +<X>%
[ ] <fix pattern> — <N> assets across <M> accounts
[ ] <fix pattern> — ...
PHASE 3: ARCHITECTURAL (this quarter)
Expected improvement: +<X>%
[ ] <change> — requires <team/resource>
[ ] <change> — ...
PROJECTED SCORES AFTER EACH PHASE:
Framework Current Phase 1 Phase 2 Phase 3
─────────────────────────────────────────────────────
<framework> <X>% <Y>% <Z>% <W>%
...
START NOW:
Tell me which phase to start with and your preferred format.
I'll generate implementation code for each fix in that phase.
Format: terraform | cloudformation | ansible | cli |
instructions | pulumi | arm/bicep
───────────────────────────────────────────────────────────────────
Show controls, account breakdown, and remediation plan for just that framework.
Show all sections in order.
⚠ No compliance frameworks enabled in Orca.
To get started, enable frameworks in:
Orca Console → Compliance → Framework Settings
Recommended starting set:
• CIS AWS/Azure/GCP Benchmarks
• SOC 2 Type II
• PCI DSS v4.0 (if processing payments)
• NIST 800-53 (government/regulated)
⚠ Framework "<input>" not found.
Available frameworks:
<list of enabled frameworks>
Try: /orca-compliance-gap <exact framework name>
✅ <framework> — 100% compliant!
All <N> controls passing across <M> assets.
Last failure resolved: <date>
Recommendation: Set up alerts for score regression.
| Tool | Purpose | Parameter |
|---|---|---|
get_enabled_compliance_frameworks | All framework scores | optional filters |
get_compliance_trend_over_time | Score history | filters.datetime_filter (7/14/30) |
get_compliance_analysis_by_account_or_business_unit | Account/BU breakdown | group_by ("accounts" or "business_units") |
get_compliance_framework_control_tests | Failing controls per framework | framework_id, optional filters |
get_compliance_framework_stats_for_asset | Per-framework detailed stats | framework_id |
get_framework_assets_with_failed_controls_count | Worst assets per framework | framework_id |
get_compliance_framework_account_heatmap | Account-level framework scores | framework_id |
| Tool | Purpose | When |
|---|---|---|
get_control_test_alerts | Alerts for a specific control | "controls" drill-down |
discovery_search | Find assets related to a control failure | When investigating specific gaps |
framework_id comes from get_enabled_compliance_frameworks responsefilters object can contain: datetime_filter, providers, accounts, framework_ids, business_unitsdatetime_filter values: 7, 14, 30 (days)group_by is an enum: "accounts" or "business_units"/orca-alert-triage for individual alert deep-dives from failing controls, /orca-impact-analysis for fix impact.