# Month End Close Accelerator

> Runs the close checklist against a target close date via a bundled calculator that tracks genuinely blocked tasks (not just late ones) and folds account reconciliation in as a close step, flagging any unreconciled variance over a stated materiality threshold. Use whenever the user is running or reviewing the month-end close, wants to speed up a close that consistently slips, or has reconciliation treated as a separate exercise disconnected from the close checklist it should be gating.

- Skill: `natan-mohart/month-end-close-accelerator` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add natan-mohart/month-end-close-accelerator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/natan-mohart/month-end-close-accelerator/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Natan-Mohart (https://skillmd.com/u/natan-mohart)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/natan-mohart/month-end-close-accelerator

---


# Month-End Close Accelerator

## When to use
Use whenever the month-end close needs to run faster or more predictably, especially when the close consistently slips past its target date, or when account reconciliation is being tracked as a separate, disconnected exercise instead of a step that actually gates close completion.

## What it does
Tracks the close checklist against a target close day via a bundled calculator, flags tasks that are genuinely blocked by an incomplete predecessor (not just tasks that are behind schedule with no real blocker), and folds account reconciliation into the same close view — flagging any account with an unreconciled variance over a stated materiality threshold as a close blocker in its own right.

## Method
1. **Build the close checklist as a real dependency chain**, not a flat list of tasks with due dates. Name which tasks genuinely can't start until another finishes (accruals can't post until revenue cutoff is reviewed) versus tasks that just happen to be scheduled around the same time.
2. **Set a target close day** (day 3, day 5) and assign every task a due day and an owner.
3. **Include reconciliation as close tasks, not a separate process** — the materiality threshold and the accounts to reconcile are part of the same checklist that gates whether close is actually done.
4. **Run the bundled calculator** (`scripts/close_tracker.py`) to get the task status table, a list of genuinely blocked tasks (a task that's not done AND whose named predecessor also isn't done, not simply anything running late), and the reconciliation exception list.
5. **Resolve blocked tasks first**, since they're structurally preventing progress — a late task with no real blocker just needs attention, but a blocked task needs its predecessor resolved before anything else about it matters.
6. **Treat every reconciliation exception over the materiality threshold as a close blocker**, not a footnote to review later — an unreconciled account over threshold means the numbers going into the close aren't yet trustworthy.
7. **After each cycle, track which tasks or reconciliations caused the close to slip** and feed that back into next month's checklist — a close process that doesn't improve cycle over cycle isn't actually being accelerated, just repeated.

## Inputs
- Close checklist tasks with owner, due day, status, and any real predecessor dependency
- Target close day
- Accounts requiring reconciliation with GL and bank/sub-ledger balances
- Materiality threshold for reconciliation exceptions
- Config saved as JSON matching the format documented at the top of `scripts/close_tracker.py`

## Output format
Task checklist with status; explicit list of genuinely blocked tasks (task and its incomplete predecessor); reconciliation table with GL balance, bank/sub-ledger balance, variance, and exception flag for anything over materiality threshold.

## Example
A close checklist shows "accrual entries posted" as in-progress and behind schedule. The calculator checks its stated predecessor, "revenue cutoff review", and finds it's already done, so this task is not genuinely blocked, it's simply running late and needs direct attention rather than waiting on someone else. Separately, the cash reconciliation shows a $22,300 variance against a $5,000 materiality threshold, correctly flagged as a close-blocking exception requiring resolution before the close can be called complete.

## Common pitfalls
- Flagging every late task as "blocked" regardless of whether its actual predecessor is finished, which misdirects attention toward waiting instead of acting.
- Treating reconciliation as a separate process from the close checklist, letting an unreconciled account slip through as if the close were complete.
- Never tracking which tasks caused delays cycle over cycle, so the close never actually gets faster.

