Costs

by Pedro-Jose-da-Rocha-Mendonca

skill

View cost dashboard and spending analytics (project)

Skill Details

Repository Files

1 file in this skill directory


name: costs description: View cost dashboard and spending analytics (project)

Cost Dashboard Skill

Display Devflow cost tracking and spending analytics by reading session data directly.

Usage

/costs [options]

Options

Option Description
--period day Show today's costs only
--period week Show this week's costs
--period month Show this month's costs (default)
--history N Show last N sessions
--story KEY Filter by story key

Prompt

You are displaying the Devflow cost dashboard.

Arguments: $ARGUMENTS

Step 1: Read Configuration

Read the configuration file:

  • Path: tooling/.automation/costs/config.json

This contains:

  • budget_dev: Development budget (USD)
  • subscription_plan: Current plan (free/pro)
  • subscription_token_limit: Monthly token limit
  • subscription_billing_period_days: Days in billing period
  • display_currencies: Currencies to show
  • currency_rates: Exchange rates

Step 2: Find Session Files

Find all session files:

  • Path pattern: tooling/.automation/costs/sessions/*.json

Step 3: Read and Aggregate Session Data

For each session file, extract:

  • session_id: Session identifier
  • start_time / end_time: Timestamps
  • story_key: Associated story (if any)
  • entries[]: Array of cost entries with model, input_tokens, output_tokens, cost_usd
  • totals: Aggregated totals for the session

Identify the most recent session as the "current session".

Step 4: Calculate Metrics

Calculate:

  1. Current session tokens/cost: From the most recent session
  2. Cumulative tokens: Sum of all tokens across ALL sessions this billing period
  3. Cumulative cost: Sum of all cost_usd across ALL sessions
  4. Cost by model: Group costs by model (opus, sonnet, haiku)
  5. Cost by story: Group costs by story_key
  6. Budget usage: (cumulative_cost / budget_dev) * 100
  7. Subscription usage: (cumulative_tokens / subscription_token_limit) * 100
  8. Average cost per session: cumulative_cost / session_count
  9. Average tokens per session: cumulative_tokens / session_count
  10. Input/output ratio: total_input_tokens / total_output_tokens
  11. Days remaining: Calculate from billing period start
  12. Projected monthly cost: (cumulative_cost / days_elapsed) * 30
  13. Projected token usage: (cumulative_tokens / days_elapsed) * 30

Step 5: Apply Filters

Based on $ARGUMENTS:

  • --period day: Filter sessions from today only
  • --period week: Filter sessions from last 7 days
  • --period month: Filter sessions from last 30 days (default)
  • --history N: Show only last N sessions
  • --story KEY: Filter sessions matching story_key

Step 6: Format Output

Display the dashboard using this format:

=================================================================
                    DEVFLOW COST DASHBOARD
=================================================================
Plan: [plan] | Tokens: [cumulative]/[limit] ([%]%) | [days] days left
This Session: $[current_cost] | Cumulative: $[total_cost]
=================================================================

PERIOD: [period]                        SESSIONS: [count]

--- TOKEN USAGE ---------------------------------------------
                   This Session         Cumulative
Input:             [current_in]         [total_in]
Output:            [current_out]        [total_out]
Total:             [current_total]      [total_total]

I/O Ratio:         [ratio]:1 (higher = more input-heavy conversations)

--- COST BY MODEL -------------------------------------------
[model]            $[cost]  ([%]%)  [bar]

--- COST BY STORY -------------------------------------------
[story-key]        $[cost]  ([%]%)
(no story)         $[cost]  ([%]%)

--- BUDGET STATUS -------------------------------------------
Spent:     $[total]  /  $[budget]  ([%]%)
[================================--------------------] [%]%

[WARNING] if > 75%: "Approaching budget limit!"
[CRITICAL] if > 90%: "Near budget limit - consider pausing"

--- PROJECTIONS (based on current usage rate) ---------------
Monthly token projection:    [projected] / [limit] ([%]%)
Monthly cost projection:     $[projected_cost]
Avg cost per session:        $[avg_cost]
Avg tokens per session:      [avg_tokens]

--- RECENT SESSIONS -----------------------------------------
[session_id]  [date]  [tokens]  $[cost]  [story or "-"]
[session_id]  [date]  [tokens]  $[cost]  [story or "-"]
[session_id]  [date]  [tokens]  $[cost]  [story or "-"]
(show last 5 sessions)

--- CURRENCIES ----------------------------------------------
$[USD] | E[EUR] | L[GBP] | R$[BRL]
=================================================================

Budget Warnings

Display warnings based on config thresholds:

  • If budget usage > warning_percent (75%): Show [WARNING]
  • If budget usage > critical_percent (90%): Show [CRITICAL]
  • If subscription usage > 80%: Show token limit warning

Notes

  • Format large numbers with K/M suffixes (e.g., 1.5K, 2.3M)
  • Round costs to 2 decimal places
  • Show percentages to 1 decimal place
  • Use text-based progress bars with = and - characters
  • Current session = most recent session file by timestamp
  • Cumulative = sum of ALL sessions in the billing period
  • If no sessions found, display a message indicating no cost data available
  • Calculate days remaining: billing_period_days - days since first session of period

Related Skills

Attack Tree Construction

Build comprehensive attack trees to visualize threat paths. Use when mapping attack scenarios, identifying defense gaps, or communicating security risks to stakeholders.

skill

Grafana Dashboards

Create and manage production Grafana dashboards for real-time visualization of system and application metrics. Use when building monitoring dashboards, visualizing metrics, or creating operational observability interfaces.

skill

Matplotlib

Foundational plotting library. Create line plots, scatter, bar, histograms, heatmaps, 3D, subplots, export PNG/PDF/SVG, for scientific visualization and publication figures.

skill

Scientific Visualization

Create publication figures with matplotlib/seaborn/plotly. Multi-panel layouts, error bars, significance markers, colorblind-safe, export PDF/EPS/TIFF, for journal-ready scientific plots.

skill

Seaborn

Statistical visualization. Scatter, box, violin, heatmaps, pair plots, regression, correlation matrices, KDE, faceted plots, for exploratory analysis and publication figures.

skill

Shap

Model interpretability and explainability using SHAP (SHapley Additive exPlanations). Use this skill when explaining machine learning model predictions, computing feature importance, generating SHAP plots (waterfall, beeswarm, bar, scatter, force, heatmap), debugging models, analyzing model bias or fairness, comparing models, or implementing explainable AI. Works with tree-based models (XGBoost, LightGBM, Random Forest), deep learning (TensorFlow, PyTorch), linear models, and any black-box model

skill

Pydeseq2

Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.

skill

Query Writing

For writing and executing SQL queries - from simple single-table queries to complex multi-table JOINs and aggregations

skill

Pydeseq2

Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.

skill

Scientific Visualization

Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestrates matplotlib/seaborn/plotly with publication styles. For quick exploration use seaborn or plotly directly.

skill

Skill Information

Category:Skill
Last Updated:12/30/2025