Use when running, planning or speeding up a month-end (or quarter-end) close — building or reviewing the close checklist and calendar, reconciling a bank statement or sub-ledger to the general ledger, writing or reviewing flux (variance) explanations, or finding why the close takes too many days. Orders close tasks by dependency and finds the critical path, proves each reconciliation and ages what is left, and refuses to sign off material fluctuations explained with boilerplate.
76
96%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
The canonical home for this skill is month-end-close in alirezarezvani/claude-skills
Portability: 3 stdlib scripts, no network, no ERP connection. Export CSV or JSON; the scripts plan, prove and gate. Not accounting or audit advice. Thresholds and aging limits are your policy; the scripts make you state them.
A slow close is rarely slow everywhere. One chain of dependent tasks sets the close date, reconciliations "agree" without a proof, and flux review accepts "timing" as a reason. Each script attacks one of those.
# 1 - Calendar: dependency order, critical path, owners, reviewers, load.
python scripts/close_calendar_planner.py --plan close_plan.json
# 2 - Reconciliations: match, prove, age. One run per account.
python scripts/reconciliation_matcher.py --gl gl_cash.csv --source bank.csv \
--gl-balance 52708.60 --source-balance 47144.72 --as-of 2026-10-31 --preparer Sam --reviewer Lee
# 3 - Flux: every material change needs a quantified, evidenced explanation.
python scripts/flux_analyzer.py --input tb_compare.csv --pct 10 --abs 10000 --reviewer LeeStep 1 schedules each task as soon as its predecessors finish, then checks the plan against people: one person booked for 1.5 days on WD1 is a plan that will slip. Speed up the critical path, nothing else.
Step 2 matches by reference, then by amount within a date window. What is left is a reconciling item: in the GL only (timing) or in the source only (book a journal entry). The proof must close to zero. An unexplained difference that was already in the opening balances points back to last month's reconciliation; one that divides by 9 is flagged as a likely transposition.
Step 3 marks an account material when it passes your threshold rule, flips sign, or appears or disappears. Its explanation fails if it is missing, stock ("timing", "in line with expectations"), or has no number in it.
| Script | Role | Exit codes |
|---|---|---|
scripts/close_calendar_planner.py | Topological order, critical path, slack, WD deadlines, calendar dates, owner load, reviewer segregation | 0 · 2 at risk · 3 bad input or cycle · 4 blocked |
scripts/reconciliation_matcher.py | Two-pass matching, proof, aging buckets, journal entries needed, review check | 0 · 2 items · 3 · 4 unreconciled |
scripts/flux_analyzer.py | Materiality by your rule, sign flips, explanation lint, evidence check, self-review | 0 · 2 evidence · 3 · 4 incomplete |
All support --sample and --output json.
references/close_calendar_and_benchmarks.md — task order, critical path, days-to-close benchmarks and their caveats (6 sources)references/reconciliation_standards.md — what a reconciliation must contain, aging, segregation, review precision (6 sources)references/flux_analysis_and_materiality.md — expectations, thresholds, corroboration, materiality rules of thumb (6 sources)assets/close_plan.example.json, assets/gl_cash.example.csv, assets/bank_statement.example.csv, assets/flux_input.example.csv — input formatsassets/reconciliation_signoff.md — sign-off sheet with the evidence fields a reviewer fills inalirezarezvani/claude-skills
27cfcd0
Canonical home
since Oct 22, 2026
Also appears in
since Oct 22, 2026
since Oct 22, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.