weekly-aeoncard

Renders a weekly token-consumption recap from a CSV ledger as a shareable SVG card.

714|255|Updated Mar 4, 2026
One-click install
npx skills add https://github.com/aaronjmars/aeon --skill weekly-aeoncard
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: weekly-aeoncard
Source: https://github.com/aaronjmars/aeon/tree/main/skills/weekly-aeoncard
Command: npx skills add https://github.com/aaronjmars/aeon --skill weekly-aeoncard

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires cairosvg.

What problem does it solve?

It turns a raw token-usage ledger (memory/token-usage.csv) into a one-glance visual recap, so an operator can see weekly and all-time token consumption, run counts, and top skills without manually aggregating CSV rows.

Core Features & Use Cases

  • Deterministic SVG card rendering: A pure-stdlib Python script aggregates the ledger and renders a self-contained 1200x630 SVG card with weekly totals, all-time totals, top-skill bars, and cache-read percentage.
  • Multi-artifact output: One run also writes a Markdown report, a dashboard JSON spec, an optional PNG raster (via cairosvg or rsvg-convert), and appends a run log entry.
  • Notification delivery: Sends the recap through ./notify with an inline PNG photo on Telegram when available, degrading to a text recap plus SVG link otherwise; supports dry-run mode and custom windows up to 90 days.
  • Use Case: An operator running an autonomous agent instance wants a weekly consumption summary to share; the skill reads the instance's own ledger, renders the card, commits the artifacts, and posts the recap to Telegram.

Quick Start

Run the weekly-aeoncard skill with an empty variable to render this week's token-consumption card from memory/token-usage.csv and send the recap notification.

Frequently Asked Questions about weekly-aeoncard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate a weekly token usage report from a CSV file?

Run the render_card.py script with --csv pointing to your token-usage ledger, plus --today, --window-days, and output paths. It aggregates rows within the window, computes totals and top skills, and writes an SVG card, Markdown report, and JSON summary in one call.

How to convert an SVG card to PNG in Python?

The script tries cairosvg first, calling svg2png with the rendered SVG bytes at 1200x630. If cairosvg is unavailable, it falls back to the rsvg-convert CLI from librsvg2-bin; if neither exists, the SVG remains the canonical image and the run still succeeds.

Can I change the weekly window to 30 days?

Yes, pass an integer as the skill variable to override the default 7-day window, for example 14 or 30. Values are capped at 90 days, and non-numeric input falls back to the default.

What happens if the token usage CSV is missing or empty?

The skill checks the ledger before rendering and exits cleanly with a skip notification when the file is absent or has no data rows. The renderer itself exits with code 3 and prints a JSON error when no usable rows exist.

Does the skill send data to external services?

No network calls are made by the renderer; all numbers are measured locally from the CSV ledger. The only outbound traffic is the final Telegram notification via ./notify, which sends either a photo or text message.