3 FinOps agents: 2 for Brazilian financial regulatory compliance (BACEN, RFB, Open Banking), 1 for infrastructure cost estimation when onboarding customers. Supports any regulatory template via open intake system.
The ring-finops-team plugin provides 3 specialized FinOps agents: 2 for Brazilian financial compliance and 1 for infrastructure cost estimation. Use them via Task tool with subagent_type:.
Remember: Follow the ORCHESTRATOR principle from ring:using-ring. Dispatch agents to handle regulatory complexity; don't implement compliance manually.
ring:infrastructure-cost-estimator (v5.0)
Architecture: Skill Orchestrates → Agent Calculates
SKILL gathers ALL data (including environment selection + Helm configs) → Agent calculates per-environment breakdown
How it works:
Backup Policy Differences:
| Environment | Retention | Snapshots | PITR | Cost Impact |
|---|---|---|---|---|
| Homolog | 1-7 days | Automated only | No | ~Free (within AWS limits) |
| Production | 7-35 days | Daily + weekly | Yes | R$ 38-580/month (TPS-based) |
Products Available:
| Product | Selection | Sharing | Chart |
|---|---|---|---|
| Access Manager | ALWAYS | ALWAYS SHARED | charts/plugin-access-manager |
| Midaz Core | Customer choice | Per-customer | charts/midaz |
| Reporter | Customer choice | Per-customer | charts/reporter |
Data source: [email protected]:LerianStudio/helm.git
Sharing Model Definitions:
Per-Component Sharing Model:
| Component | Sharing | Isolation | Customers | Cost/Customer |
|-----------|---------|-----------|-----------|---------------|
| EKS Cluster | SHARED | Namespace per customer | 5 | R$ 414 (÷5) |
| PostgreSQL | DEDICATED | Own RDS instance | 1 | R$ 1,490 (full) |
| Valkey | SHARED | Key prefix per customer | 5 | R$ 130 (÷5) |
Output (7 sections):
Example dispatch (with per-component sharing + backup config):
Task tool:
subagent_type: "ring:infrastructure-cost-estimator"
prompt: |
Calculate infrastructure costs and profitability.
ALL DATA PROVIDED (do not ask questions):
Infrastructure:
- Repo: /path/to/repo
- Helm Source: LerianStudio/helm
- TPS: 100
- Total Customers on Platform: 5
Actual Resource Configurations (READ from LerianStudio/helm):
| Service | CPU Request | Memory Request | HPA | Source |
|---------|-------------|----------------|-----|--------|
| onboarding | 1500m | 512Mi | 2-5 | midaz |
| transaction | 2000m | 512Mi | 3-9 | midaz |
| auth | 500m | 256Mi | 3-9 | access-manager |
| ... | ... | ... | ... | ... |
Component Sharing Model:
| Component | Sharing | Customers |
|-----------|---------|-----------|
| EKS Cluster | SHARED | 5 |
| PostgreSQL | DEDICATED | 1 |
| Valkey | SHARED | 5 |
| DocumentDB | SHARED | 5 |
| RabbitMQ | SHARED | 5 |
Backup Configuration:
| Environment | Retention | Snapshots | PITR | Expected Cost |
|-------------|-----------|-----------|------|---------------|
| Homolog | 1-7 days | Automated only | No | ~Free |
| Production | 7 days | Daily (7) | Yes | R$ 38-175/month |
Billing Model:
- Billing Unit: transaction
- Price per Unit: R$ 0.10
- Expected Volume: 1,000,000/month
Skill: ring:infrastructure-cost-estimation - Reads LerianStudio/helm at runtime, orchestrates data collection.
ring:finops-analyzer
Specializations:
Use When:
Output: Compliance analysis, field mappings, validation rules
Example dispatch:
Task tool:
subagent_type: "ring:finops-analyzer"
prompt: "Analyze BACEN COSIF requirements for corporate account reporting"
ring:finops-automation
Specializations:
Use When:
Output: Complete .tpl template files, ready for Reporter platform
Example dispatch:
Task tool:
subagent_type: "ring:finops-automation"
prompt: "Generate BACEN COSIF template from analyzed requirements"
The workflow supports any regulatory template — not just the pre-defined list. For unknown templates, provide the official spec (URL/XSD/PDF) and Gate 1 will extract fields, suggest mappings, and auto-save the dictionary.
Purpose: Select or define the template. For pre-defined templates with dictionary → fast path. For new templates → provide spec.
Supports:
Agent: ring:finops-analyzer Purpose: Understand requirements, map fields, save dictionary
New in this version:
Output: compliance analysis + dictionary saved + registry updated
Agent: ring:finops-analyzer (again) Purpose: Validate mappings, test transformations, accounting checks Output: validated specification document
Agent: ring:finops-automation Purpose: Generate executable .tpl templates from validated specifications Output: complete .tpl + .tpl.docs files for Reporter platform
Purpose: Validate generated template in the Reporter dev environment
Triggered when: reporter_dev_url configured in Setup AND user opts in
Output: Confirmed render or feedback for Gate 3 correction
Purpose: Open PR to LerianStudio/ring to share the new template with the community Triggered when: new template was created AND user wants to contribute Includes: dictionary YAML + updated registry.yaml + .tpl file Commit: signed with user's own GitHub token (never agent credentials) Output: PR URL
Canonical field reference: finops-team/docs/regulatory/templates/DATA_SOURCES.md
| Need | Agent | Use Case |
|---|---|---|
| Is this deal profitable? | ring:infrastructure-cost-estimator | Calculate revenue - cost = profit |
| Shared vs dedicated costs | ring:infrastructure-cost-estimator | Per-component cost attribution |
| Infrastructure breakdown | ring:infrastructure-cost-estimator | Detailed component costs by category |
| Break-even analysis | ring:infrastructure-cost-estimator | Minimum volume to cover costs |
| Regulatory analysis | ring:finops-analyzer | Analyze BACEN/RFB specs, identify fields |
| Mapping validation | ring:finops-analyzer | Confirm correctness, validate |
| Template generation | ring:finops-automation | Create .tpl files, finalize |
If you need both analysis and template generation, dispatch sequentially (analyze first, then automate):
Workflow:
Step 1: Dispatch ring:finops-analyzer
└─ Returns: compliance analysis
Step 2: Dispatch ring:finops-automation
└─ Returns: .tpl templates
Note: These must run sequentially because automation depends on analysis.
Remember:
"I need BACEN compliance. Let me dispatch ring:finops-analyzer to understand requirements, then ring:finops-automation to generate templates."
"I'll manually read BACEN documentation and write templates myself."
Generated .tpl files integrate directly with Reporter platform:
Agents (3):
Skills (7):
Note: If agents are unavailable, check if ring-finops-team is enabled in .claude-plugin/marketplace.json.
MUST classify FinOps issues using these severity levels:
| Severity | Definition | Examples | Action |
|---|---|---|---|
| CRITICAL | BLOCKS regulatory submission OR cost estimation invalid | - Mandatory regulatory field unmapped<br>- Cost calculation produces negative values<br>- Agent unavailable for required gate<br>- Compliance violation detected | HARD BLOCK - Cannot proceed |
| HIGH | REQUIRES resolution for accurate output | - LOW confidence mappings > 20%<br>- Cost attribution model incorrect<br>- Template syntax errors<br>- Profitability calculation wrong | MUST resolve before completion |
| MEDIUM | SHOULD fix for optimal results | - Optional fields skipped<br>- Minor cost estimation assumptions<br>- Documentation incomplete<br>- Suboptimal template structure | SHOULD fix - document if deferred |
| LOW | Minor improvements possible | - Report formatting<br>- Additional breakdown detail<br>- Documentation enhancements | OPTIONAL - note in output |
You MUST distinguish between decisions you CAN make vs those requiring escalation.
| Decision Type | Examples | Action |
|---|---|---|
| Can Decide | Agent selection, cost calculation methodology, template format | Proceed with dispatch |
| MUST Escalate | Agent unavailable, required input missing, ambiguous requirements | STOP and ask for clarification |
| CANNOT Override | Regulatory field requirements, cost accuracy standards, gate sequencing | HARD BLOCK - Must follow process |
HARD GATES (STOP immediately):
NON-NEGOTIABLE requirements (no exceptions, no user override):
| Requirement | Why NON-NEGOTIABLE | Verification |
|---|---|---|
| Agent-Based Execution | Manual compliance work bypasses validation | Used Task tool with subagent_type |
| Sequential Gates for Regulatory | Gate dependencies require order | Gates run 1→2→3 |
| Accurate Cost Attribution | Wrong costs = wrong business decisions | Sharing model applied correctly |
| 100% Mandatory Field Coverage | Regulatory submissions require ALL fields | All mandatory fields mapped |
User CANNOT:
| User Says | Your Response |
|---|---|
| "Just estimate costs without reading Helm charts" | "I CANNOT produce accurate estimates without actual resource configurations. MUST read LerianStudio/helm for current CPU/memory values." |
| "Skip Gate 2, we trust Gate 1 analysis" | "I CANNOT skip Gate 2. Validation is MANDATORY to verify mappings before template generation. Gate 1 analysis ≠ Gate 2 validation." |
| "Assume all components shared for simplicity" | "I CANNOT assume sharing model. MUST ask for each component (PostgreSQL, DocumentDB, Valkey, etc.) - cost attribution depends on it." |
| "Regulatory template looks right, skip testing" | "I CANNOT skip testing. MUST validate with sample data per Gate 2 requirements. Visual inspection ≠ validated correctness." |
| "Use last month's cost estimates" | "I CANNOT reuse old estimates without verification. Helm configs change, pricing updates, requirements evolve. MUST recalculate." |
| Rationalization | Why It's WRONG | Required Action |
|---|---|---|
| "Cost estimation is straightforward, skip Helm read" | Actual values differ from defaults. Assumptions lead to budget overruns | Read actual Helm chart configs |
| "Gate 2 is redundant after good Gate 1 analysis" | Analysis ≠ validation. Gate 2 catches what Gate 1 missed | Run all gates sequentially |
| "All components are obviously shared" | Each component has different isolation requirements. Assumptions wrong | Ask per-component sharing model |
| "Manual template is faster than agent" | Manual bypasses validation layers. Agents apply systematic checks | Use finops-automation agent |
| "Previous estimate still valid" | Configurations change. Old estimates drift from reality | Recalculate with current data |
| "Only need critical regulatory fields" | BACEN/RFB require 100% mandatory coverage. Partial = rejected | Map ALL mandatory fields |
MUST skip FinOps agents only when ALL conditions are true:
| Condition | Verification Required |
|---|---|
| 1. Non-Brazilian regulations | Confirm regulatory authority is NOT BACEN/RFB |
| 2. Non-AWS infrastructure | Confirm target is NOT AWS (adapt pricing formulas) |
| 3. One-time simple calculation | Direct math without component attribution |
| 4. Existing valid estimate | Previous estimate < 30 days AND no config changes |
Signs You MUST Use FinOps Agents:
Dispatch based on your need: