Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add personamanagmentlayer/pcl --skill finance-expertgit clone --depth 1 https://github.com/personamanagmentlayer/pclWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/personamanagmentlayer/pcl/finance-expert)<a href="https://agentmods.dev/skills/personamanagmentlayer/pcl/finance-expert"><img src="https://agentmods.dev/badge/skills/personamanagmentlayer/pcl/finance-expert/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/personamanagmentlayer/pcl/finance-expert"><img src="https://agentmods.dev/badge/skills/personamanagmentlayer/pcl/finance-expert.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector warn
SkillSpector: 3 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 171 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 173 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 373 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00286 | $0.07138 |
| Opus 5.5 | $0.00114 | $0.02855 |
| Sonnet 5.5 | $0.00057 | $0.01428 |
| Haiku 4.5 | $0.00029 | $0.00714 |
Grade A, and why
finance-expert scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 386 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Finance Expert
Money is not a number. A number can be recomputed; money is a claim, recorded at a point in time,
owed by someone to someone, in a currency, under an accounting policy, subject to a regulator, and
irreversible once it moves. Almost every serious defect in a financial system comes from having
modelled the number and not the claim: a float column, a balance that is a mutable row, a retry
that charges twice, a report that sums two currencies, a correction that overwrites history.
This skill encodes the model that survives contact with reality: an append-only, double-entry ledger is the source of truth; everything else — balances, reports, dashboards, KPIs — is derived from it and must be reproducible from it. Everything below follows from that.
Rule 0 — the ledger of record already exists
If the organisation already books money somewhere — a general ledger, an ERP, a PSP dashboard, the bank statement, even a spreadsheet the finance team closes each month — then that is the source of truth until a written decision says otherwise, and your system reconciles to it (M9). Do not introduce a second authoritative record. Two systems that both believe they hold the truth do not produce a discrepancy you can debug; they produce a monthly argument that no one can win.
Likewise, if an accounting policy exists (functional currency, rounding rule, revenue recognition treatment, close calendar, chart of accounts), it is decided. It belongs to the finance owner and the auditor, not to a code review. Extend it consistently; changing it is a costed proposal with a restatement plan, never a refactor.
1. Pick a mode
| Mode | Trigger | Output |
|---|---|---|
| DESIGN | A new system, product, flow or account that holds or moves money | Money model → chart of accounts and posting rules → flow state machines → controls → the spec artifact |
| REVIEW | "Check this", a PR touching amounts, a pre-launch check, an inherited system | Findings ranked by monetary blast radius, each with the failing case and the fix |
| OPERATE | Reconciliation, a period close, a break, "the numbers don't match", an incident on money | The break inventory with owners and ages, the correcting entries, the runbook change that stops the recurrence |
| ANALYZE | FP&A, unit economics, a valuation, a board or investor number, a pricing decision | A model with its assumptions isolated and sourced, plus the sensitivity that shows what actually drives the answer |
What ships with it
26 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/CHART-OF-ACCOUNTS.template.yaml 26 KB
- assets/FINANCIAL-SYSTEM-SPEC.template.md 31 KB
- assets/MONEY-CONTROLS.checklist.md 14 KB
- assets/POSTING-RULES.template.md 59 KB
- assets/RECONCILIATION-RUNBOOK.template.md 37 KB
- references/architecture-ops.md 72 KB
- references/banking-open-finance.md 80 KB
- references/compliance-regulatory.md 154 KB
- references/corporate-finance.md 70 KB
- references/ledger.md 69 KB
- references/markets-trading.md 84 KB
- references/money-arithmetic.md 73 KB
- references/payments.md 96 KB
- references/reconciliation-close.md 99 KB
- references/risk-fraud-aml.md 107 KB
- scripts/audit_ledger.py 74 KB runs code
- scripts/money_lint.py 68 KB runs code
- tests/fixtures/ledger_clean.csv 9.1 KB
- tests/fixtures/ledger_defective.csv 10 KB
- tests/fixtures/ledger_warnonly.json 3.8 KB
- tests/fixtures/lint_bad.py 4.8 KB runs code
- tests/fixtures/lint_bad.sql 1.8 KB
- tests/fixtures/lint_bad.ts 2.3 KB runs code
- tests/fixtures/lint_good.py 8.5 KB runs code
- tests/fixtures/lint_good.sql 8.4 KB
- tests/fixtures/lint_good.ts 13 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · -37 lines · +231 tokens per session 25049abfb71b
- 1mo ago Changed · +122 lines · +36 tokens per session 68304b9de32f
- 1mo ago First seen · 301 lines · 19 tokens per session scan A 30536ee4ef22
finance-expert is a skill published in the GitHub repository personamanagmentlayer/pcl (43 stars, last pushed 12d ago), licensed Apache-2.0. It adds 286 tokens to every session and 7,138 once invoked, about $0.0011 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
bookkeeping
Use when a small business needs audit-ready books — a chart of accounts, posting a transaction to the right account and side, clearing an uncategorized bank feed, cash vs accrual, or a ledger that won't tie to the bank. NOT interpreting the numbers — runway, burn, P&L cadence (that is finance-ops), NOT issuing…
payment-reconciliation-automation
Automate payment reconciliation across Stripe, PayPal, and bank accounts with exception handling, automated matching rules, and discrepancy alerting.
countbean-accounting
Rules for writing correct double-entry Beancount transactions when managing a Countbean cloud book — account naming, how to balance postings, categorisation, and safe ingestion. Use whenever recording, importing, or correcting financial data in a Countbean book.
bank-reconciliation
Match book entries against bank or credit card statements to find discrepancies, missing transactions, and duplicates. Uses exact, near, and batch matching with balance verification. Trigger on "reconcile bank statement", "match transactions", "bank balance doesn't match", "close the books".
splits
Use Splits with Bankr for onchain treasury operations: secure assets, process revenue, manage operating subaccounts, pay expenses, govern contracts, and maintain clean accounting books.
bukio-cli
Drive bukio-cli — agent-first double-entry bookkeeping for SMEs across eleven jurisdictions. Book invoices, archive the originals, keep the books balanced.