Ships an installable Claude Code plugin (/plugin marketplace add erp-mafia/accounted) that bundles the MCP connection (OAuth, zero-key) with seven short workflow skills following the Swedish bookkeeping rhythm: start, bookkeep, check, month-close, vat, payroll, year-end. Wrappers are deliberately thin: they ground in the agent briefing and Accounted:// resources, load server-side workflow skills and regulatory atoms via gnubok_load_skill at need, and stage every write for user approval. No knowledge is duplicated into the plugin. A vitest cross-checks every skill slug, atom id, resource URI, and tool name the wrappers reference against the MCP server source, so a server rename fails CI instead of a user's chat session. Assessment and follow-ups in dev_docs/claude_plugin.md (local, dev_docs is unpublished by design). Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2.2 KiB
2.2 KiB
name, description, argument-hint
| name | description | argument-hint | |
|---|---|---|---|
| bookkeep | Clear the bookkeeping inbox, categorize bank transactions and receipts into correct vouchers. Use when the user says "bokfor", "bokfora", "book this", "categorize my transactions", "osorterade transaktioner", "kvitton", or wants daily bookkeeping done. |
|
Bookkeep
Work through unbooked bank transactions and receipts and stage correct vouchers. This is the highest-frequency flow; accuracy comes from the company's own history, not from guessing.
Flow
- If not already done this session, call
gnubok_get_agent_briefing(accounting method changes how income is booked: faktureringsmetoden credits 1510 via invoices, kontantmetoden books on payment). - Find what is unbooked: start from
Accounted://attention, then discover the listing and categorization tools withgnubok_search_tools(for example "uncategorized transactions", "categorize", "upload receipt"). - For each item, decide the posting in this order of authority:
- Explicit mapping rules the company has configured.
- Observed history in
Accounted://ledger/context: how THIS company booked this counterparty before (dominant account, VAT treatment, frequency as evidence). Prefer these over textbook answers, but frequency is not permission to auto-post. - Only then general knowledge, and for VAT treatment always load it:
gnubok_load_skill("horizontal/swedish-vat")for deductibility edge cases (representation caps, EU trade, reverse charge). Never answer Swedish VAT from memory.
- Stage the categorizations, grouped by counterparty so the user can approve in coherent batches. Present each preview with account, VAT treatment, and why. Approve only what the user confirms, via
gnubok_approve_pending_operation. - If a tool response carries
period_statuslocked or closed, stop that item and explain; never work around a period lock. - Finish with a short summary in the user's language: booked, skipped and why, what remains, and the next relevant deadline.
Rules
- Evidence over guesses: ledger context and mapping rules outrank general knowledge.
- Every write stages a pending operation; the user approves before anything is booked.
- Amounts are SEK with ore precision; never round away balance.