carbon-report

Solid

Display CO2 emissions report for Claude Code sessions

Data & Documents 151 stars 15 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 87/100

Stars 20%
73
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

Run the following bash script exactly as written and present the output to the user. Do not paraphrase or reformat the results. ```bash #!/usr/bin/env bash # Force C locale: comma-decimal locales (de_DE, fr_FR) make awk mis-parse # "431.7045" as 431 and print "431,0" instead of "431.7" export LC_ALL=C DB_PATH="${CLAUDE_CARBON_DB:-${CLAUDE_CONFIG_DIR:-$HOME/.claude}/claude-carbon/carbon.db}" if [ ! -f "$DB_PATH" ]; then echo "Database not found. Run setup.sh first:" echo " bash ${CLAUDE_CARBON_DIR:-$HOME/code/claude-carbon}/scripts/setup.sh" exit 1 fi CURRENT_YEAR="$(date +%Y)" TODAY="$(date +%Y-%m-%d)" # Ensure the excluded column exists on pre-existing DBs (idempotent). # Excluded sessions (non-Anthropic models, e.g. local models) are left out of all aggregates. sqlite3 "$DB_PATH" "ALTER TABLE sessions ADD COLUMN excluded INTEGER DEFAULT 0;" 2>/dev/null || true NOT_EXCLUDED="COALESCE(excluded, 0) = 0" # --- Aggregates --- TODAY_CO2="$(sqlite3 "$DB_PATH" "SELECT COALESCE(SUM(co2_grams), 0) FROM sessions WHERE ${NOT_EXCLUDED} AND started_at LIKE '${TODAY}%';" | awk '{printf "%.1f", $1}')" TODAY_SESSIONS="$(sqlite3 "$DB_PATH" "SELECT COUNT(*) FROM sessions WHERE ${NOT_EXCLUDED} AND started_at LIKE '${TODAY}%';")" YEAR_CO2="$(sqlite3 "$DB_PATH" "SELECT COALESCE(SUM(co2_grams), 0) FROM sessions WHERE ${NOT_EXCLUDED} AND started_at LIKE '${CURRENT_YEAR}%';" | awk '{printf "%.1f", $1}')" YEAR_SESSIONS="$(sqlite3 "$DB_PATH" "SELECT COUNT(*) FROM sessions WHERE ${NOT_E...

Details

Author
gwittebolle
Repository
gwittebolle/claude-carbon
Created
3 months ago
Last Updated
yesterday
Language
Shell
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category