agentleFS
Slava-codeSlava-code/slava-stack/.claude/skills/financial-summary/SKILL.md

financial-summary

Skill0 starsChanged 29 days agoMITView on GitHub

Write a persisted cash-flow summary for a period to finances/summaries/. Use when the user says: summarize finances for May, monthly cash flow, spending breakdown for a period. For a one-off lookup just read the ledger and answer.

The file

We split this skill into the rules it gives an agent

1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Resolve the format: default format below, unless the user specified an override ("group by account", "board-update format", "only …

    line 18

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/financial-summary

Generates a formatted, persisted cash-flow summary for a period from finances/ledger.csv. On-demand only — summaries are never auto-generated on transaction writes.

Read first (T2): finances/README.md — the ledger schema and category vocab.

When NOT to use: a one-off question ("what did we spend on cloud last month?") doesn't need this skill — read finances/ledger.csv and answer in chat. This skill is for a persisted, formatted period summary.

Procedure

  1. Acquire runs/.lock (this writes a file).
  2. Resolve the period from args: a month (2026-05), quarter (2026-Q2), a date range, or relative ("last month"). Resolve relatives against today's date.
  3. Resolve the format: default format below, unless the user specified an override ("group by account", "board-update format", "only SaaS/cloud", etc.).
  4. Read finances/ledger.csv, filter rows to the period (date in range).
  5. Compute (exclude direction: transfer from in/out totals — report transfers separately):
    • Total in, total out, net for the period.
    • Per-category breakdown (outflow by category; inflow by category), sorted by amount.
    • Top counterparties by total spend.
    • Pending vs cleared split (how much is unconfirmed by a statement).
    • Notable items — largest individual transactions; anything flagged.
  6. Write finances/summaries/<period>.md with frontmatter:
    ---
    type: finance-summary
    title: "Cash-flow summary — <period>"
    period: "<period>"
    description: "<one-line: net / in / out for the period>"
    date_found: <today>
    status: reviewed
    ---
    Body = the computed sections above, in the chosen format. Note the row count and the as-of date (summaries are point-in-time; the ledger keeps changing).
  7. Regenerate + lint: python3 scripts/rebuild-indexes.py finances/ then python3 scripts/kb-lint.py finances/summaries/<period>.md.
  8. Commit + push. Prefix finance: — e.g. finance: summary 2026-05. Push immediately.
  9. Release the lock.

Default format

# Cash-flow summary — <period>

**Net: <±$X>**  ·  In: $<in>  ·  Out: $<out>  ·  (Transfers: $<t>)

## Outflow by category
- <category> — $<amount>  (<n> txns)
...

## Inflow by category
- <category> — $<amount>  (<n> txns)
...

## Top counterparties (out)
- <counterparty> — $<amount>

## Status
- Cleared: $<x>  ·  Pending: $<y>

## Notable
- <largest / flagged items>

_As of <date>, <N> transactions in period. Source: finances/ledger.csv._

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.