From finance
Author and validate the per-entity chart-of-accounts → statement-line mapping — the bespoke, judgment-laden asset that makes the close reusable per company and where mis-statements hide. Coverage-checked with statement_engine.py --lint-map. Used by `controller`.
How this skill is triggered — by the user, by Claude, or both
Slash command
/finance:author-coa-mappingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Purpose:** Build and validate the COA→statement-line mapping for a new entity. This is the genuinely reusable-per-company asset — the pivot engine is a commodity, but a *correct* mapping is bespoke and judgment-laden, and it is exactly where a misstatement hides. Treat authoring + validating the mapping as the deliverable, not an assumed input.
Purpose: Build and validate the COA→statement-line mapping for a new entity. This is the genuinely reusable-per-company asset — the pivot engine is a commodity, but a correct mapping is bespoke and judgment-laden, and it is exactly where a misstatement hides. Treat authoring + validating the mapping as the deliverable, not an assumed input.
A CSV, one row per GL account:
account,description,statement,section,line,normal_balance
statement ∈ IS | BSsection (IS) ∈ Revenue COGS OpEx OtherIncomeExpense Taxsection (BS) ∈ CurrentAssets NonCurrentAssets CurrentLiabilities NonCurrentLiabilities Equityline — the statement line label the account rolls intonormal_balance ∈ debit | credit (validation + documentation; presentation sign is derived from the section, which is what makes contra-accounts — e.g. accumulated depreciation — correct)--strict) on any unmapped account.OtherIncomeExpense, not OpEx or COGS; a mis-map here silently distorts gross profit and operating income while net income still ties (see the negative fixture).normal_balance; the engine signs them correctly from the section.python3 scripts/statement_engine.py \
--entity examples/meridian-robotics.json \
--coa <your-mapping>.csv \
--tb <your-trial-balance>.csv \
--lint-map
--lint-map reports unmapped accounts, invalid statement/section values, bad normal_balance, and duplicates. A clean lint is the pre-build gate for the whole close cycle. Start from ../produce-gaap-statements/examples/coa-mapping.csv as a worked template.
The mapping is the per-entity unit of reuse. Keep one mapping CSV per entity beside its entity profile; the same engines then run unchanged for every company.
npx claudepluginhub mcorbett51090/ravenclaude --plugin financeCreates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.