Kelly invoice sheet
Agent Skills by mr-kelly
npx -y skills add mr-kelly/skills --skill kelly-invoice-sheetAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Extract invoices, receipts, credit notes, statements, PDFs, images, docs, and spreadsheet-like invoice exports into a local reviewable table with field confidence, line items, approval decisions, and CSV/JSON export. Use when the user invokes /kelly-invoice-sheet or $kelly-invoice-sheet, asks for "Invoice转表格", invoice OCR, receipt-to-spreadsheet, invoice data extraction, bookkeeping import prep, or a Lido-style Extract Data workflow with a local App-in-Skill UI.
SKILL.md
5.5 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Kelly Invoice Sheet
Overview
Use this skill to turn invoice files or extracted invoice text into a structured batch that the user can review in a local spreadsheet-style UI. The skill owns extraction, reasoning, validation, and export; the app only reads/writes local handoff files and records human decisions.
Default interaction mode: App UI. Unless the user explicitly asks for chat-only handling, prepare or load a batch, start/reuse the local app with app/start.sh, and give the actual local URL.
App UI Screenshots
<table> <tr> <td width="33%"><img src="assets/screenshots/overview.webp" alt="Kelly Invoice Sheet spreadsheet extraction desk"></td> <td width="33%"><img src="assets/screenshots/detail.webp" alt="Kelly Invoice Sheet invoice detail review"></td> <td width="33%"><img src="assets/screenshots/extract-data.webp" alt="Kelly Invoice Sheet Extract Data upload modal"></td> </tr> <tr> <td><strong>Spreadsheet extraction desk</strong><br>Sheet-like invoice table with extracted rows, status filters, confidence flags, and human-attention counts.</td> <td><strong>Invoice detail review</strong><br>Editable invoice fields, line items, confidence notes, and approve/request-changes/block controls.</td> <td><strong>Extract Data upload</strong><br>Lido-style upload modal with local file, Google Drive, OneDrive, and email source options.</td> </tr> </table>Workflow
- Accept invoice source files or source text from the user. Supported workflow inputs include PDFs, images, Word docs, CSV/XLS/XLSX exports, OCR text, email attachments, and pasted invoice text.
- Extract invoice header fields, line items, totals, currency, dates, vendor identity, bill-to, payment terms, and source snippets. If OCR or document parsing needs another installed skill or tool, use it, then normalize the result into this skill's batch schema.
- Read
references/invoice-batch-schema.mdbefore writingapp/.data/current_batch.json. - Write a batch to
app/.data/current_batch.json, keeping stableidandrefvalues such asReview #1. - Run
node scripts/validate_ui_schema.ts app/.data/current_batch.json. - Launch or reuse the local app with
app/start.sh, then send the user to the printed URL. - After the user approves or edits rows, run
node scripts/export_decisions.tsto export approved invoices to CSV and JSON.
Use chat-only mode only when the user says "chat only", "no UI", "纯聊天", "不要打开 UI", or similar.
App Contract
Local handoff files:
app/.data/current_batch.json: current invoice extraction batch.app/.data/decisions.json: human review decisions, edits, and notes.app/.data/agent_tasks.json: queued revision tasks fromrequest_changesor@aicomments.app/.data/execution_report.json: latest export report.app/.data/agent.lock: temporary lock while the skill writes batch/report files.
Workflow statuses:
needs_review: extracted row needs human review.changes_requested: user asked the agent to revise extraction.approved: row is ready for export.done: row has been exported or intentionally completed.blocked: row cannot proceed without missing information or source correction.
Extraction Rules
- Preserve source values. Do not invent invoice numbers, dates, tax ids, vendors, totals, or payment instructions.
- Keep original currency. Do not convert currencies unless the user explicitly asks and provides rates.
- Treat money fields as high-risk: totals, tax, amount due, currency, and bank/payment hints should be reviewed when confidence is low.
- Use
field_confidenceandwarningsfor ambiguous OCR, cropped images, handwritten values, missing references, negative totals, credit notes, duplicate invoice numbers, or total/line-item mismatches. - Mark rows
blockedif required fields are missing: vendor name, invoice number, invoice date, currency, or total. - Never send invoice files to external services from the app. Any external OCR/API use belongs to the skill workflow and should be explicit.
Scripts
node scripts/generate_demo_batch.tsWrites a safe synthetic batch and onboarding marker for UI testing.node scripts/validate_ui_schema.ts [batch-path]Validates the invoice batch schema.node scripts/export_decisions.tsExports approved or human-revised invoices toexports/<batch-id>/invoices.csv,line_items.csv, andapproved_invoices.json, then writesexecution_report.json.
Local App
Start the UI:
skills/kelly-invoice-sheet/app/start.sh
The app uses local HTTP on 127.0.0.1, prefers ports 3000-4000, and stores private runtime state under ignored app/.data/.
Safety Defaults
- Treat invoice data as sensitive. Do not commit
app/.data/, source invoices, exports,config.local.json, or env files. - The app only edits local decision files. It does not upload invoices, import into accounting systems, send email, pay vendors, or mutate remote systems.
- Export only after explicit approval in the UI or chat.