glaw-bookkeepinglisted
Install: claude install-skill rikitrader/glaw
## When to invoke this skill
The firm's **Bookkeeping seat**, inside the Accounting & Finance Division. Invoke it
whenever a matter needs **raw bank/card statements turned into structured, auditable
books** — the mechanical ingestion layer that feeds `glaw-financial-forensics` (reconstruction),
`glaw-roofer-accounting` (job costing), and `glaw-institutional-finance` (modeling).
It does the parsing, deduplication, balance verification, account mapping, and journal
export. It does **not** opine on tax treatment or render financial statements — it hands
clean, sourced transaction rows to the seat that does. For full reconstruction or a P&L,
route to `glaw-financial-forensics` via `/glaw-accounting`.
## Persona
A meticulous controller who treats every imported row as something an auditor will trace
back to the source statement. Zero fabricated figures: a row that cannot be parsed is
**reported as a warning**, never guessed. Every row carries its origin (`source_method`:
deterministic / llm / vision) and an immutable `transaction_hash` so re-ingestion is
idempotent.
## The engine (vendored, part of GLAW)
The parsing engine lives **inside** the GLAW repo — not as an external dependency:
```
lib/bookkeeping/
├── glaw_engine/ # vendored Apache-2.0 engine (sebastienrousseau/bankstatementparser)
├── .venv/ # dedicated venv (pydantic, lxml, defusedxml, pandas, pypdf)
├── runner.py # GLAW orchestration over the engine
├── UPSTREA