agentsclimarketplace

Agent

Skill ChialiT/Simple-Invoice/Agent

Manage invoices using the local Simple Invoice app (FastAPI + SQLite). Use this skill whenever the user asks to create invoices, check status, find unpaid invoices, mark invoices as paid, or reconcile payment references against open invoices. Always use API endpoints and avoid direct database edits.From its SKILL.md

Install
npx -y skills add ChialiT/Simple-Invoice --skill Agent

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 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.

SKILL.md

3.3 KB, 803 tokens by cl100k_base, as published. Nobody here has run it

Simple Invoice Skill Template

This file is intentionally sanitized for open-source use. Before using in production, update all REQUIRED_UPDATE values.

Required Setup

  • REQUIRED_UPDATE::APP_BASE_URL (example: http://127.0.0.1:8080)
  • REQUIRED_UPDATE::PROJECT_ROOT (example: /path/to/Simple-Invoice)
  • REQUIRED_UPDATE::PRIMARY_OPERATOR_NAME (example: Finance Admin)
  • REQUIRED_UPDATE::NOTIFICATION_CHANNEL (example: Slack #finance or Telegram)

If these are unknown at runtime, agents should ask the user once and cache locally.

App Context

  • Entry point: app.py
  • Business logic: invoice_service.py
  • Templates: templates/
  • Database: invoices.db (SQLite)
  • PDFs: pdfs/INV-XXXX.pdf
  • Assets: Asset/full-logo.png, Asset/wise-quick-pay-qr-code.png (or env-configured paths)

API Reference

Base URL: REQUIRED_UPDATE::APP_BASE_URL

List invoices

GET /api/invoices
GET /api/invoices?status=Sent

Get a single invoice (with totals/tax breakdown)

GET /api/invoices/{id}

Mark invoice as paid

PATCH /api/invoices/{id}/paid
Content-Type: application/json
{"wise_ref": "TRANSFER-XXXX"}  # optional

List contacts

GET /api/contacts

Status summary

GET /api/summary

Tax Types

KeyLabel
zero_ratedZero-rated (0%)
gstGST (5%)
exemptExempt (0%)
out_of_scopeOut of Scope (0%)
gst_qst_qcGST/QST QC - 9.975 (14.975%)
qst_qcQST QC - 9.975 (9.975%)

Standard Agent Tasks

Check unpaid invoices

  1. Call GET /api/invoices?status=Sent
  2. Call GET /api/invoices?status=Overdue
  3. Report: invoice id, client, due date, total, currency

Reconcile payment reference

  1. Fetch open invoices (Sent)
  2. Compare incoming payment amount/reference with invoice total
  3. If matched, call PATCH /api/invoices/{id}/paid with wise_ref
  4. Send summary to REQUIRED_UPDATE::NOTIFICATION_CHANNEL

Verify app health

curl REQUIRED_UPDATE::APP_BASE_URL/api/summary

If unavailable, notify REQUIRED_UPDATE::PRIMARY_OPERATOR_NAME and suggest:

cd REQUIRED_UPDATE::PROJECT_ROOT
source venv/bin/activate
python app.py

Compute outstanding total

  1. Fetch GET /api/invoices?status=Sent
  2. Sum total by currency (do not mix currencies)
  3. Return grouped totals (e.g., USD, CAD, EUR)

Rules

  • Never write directly to invoices.db for normal operations.
  • Use API endpoints for all invoice state changes.
  • Treat cross-currency or partial-payment matches as manual review.
  • Keep secrets/payment/account details in .env, not in this file.
  • Do not hardcode private client names, bank numbers, or personal paths.

Optional Local Extensions

You can add organization-specific sections below, but keep them private:

  • Known clients mapping
  • Auto-match tolerance policy
  • Notification templates
  • Bookkeeping/export hooks

If you publish this repo, remove private sections before commit.

What ships with it: 1 file

3.6 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.