Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

test

Extract and categorize expenses from receipts or statements, map to GL codes, check compliance with policies, and flag anomalies for review.

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 22 · 0 current installs · 0 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Pending
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The stated purpose (OCR, GL mapping, policy checks, anomaly detection) matches the content of SKILL.md and the two reference docs present, but the skill does not declare any required binaries, packages, or credentials. The instructions explicitly call out tesseract, pdfplumber, and Python scripts (e.g., scripts/parse_receipt.py) and integrations (QBO, Claude vision) that would legitimately require binaries, libraries, or API keys; none are listed in the skill metadata. That mismatch suggests the skill is incomplete or expects external capabilities/environment the user may not realize will be required.
!
Instruction Scope
SKILL.md directs the agent to run local OCR (tesseract), use pdfplumber, invoke local Python scripts (scripts/parse_receipt.py, categorize()), and optionally use an external vision model ('Claude vision') for complex receipts. However, the skill bundle contains no code files or the referenced helper scripts, and some referenced prompt/rate files (references/ocr-prompt.md, references/irs-rates.md) are mentioned but not present. The instructions also assume access to folders of receipts and bank CSV/OFX files. While these behaviors are consistent with the stated purpose, the missing artifacts and lack of specificity about when data is sent to external services (vision API) are concerning because they leave the agent broad discretion and potential for unintended data exposure.
Install Mechanism
This is an instruction-only skill (no install spec), which is low-risk from an installer standpoint. However, the instructions reference external binaries and Python scripts without declaring them or providing installation steps. That omission is not inherently malicious, but it is an incoherence: a consumer must know to install tesseract, pdfplumber, and any Python helpers or provide credentials for external APIs. The lack of an install spec increases the chance of deployment mistakes.
!
Credentials
The skill declares no required environment variables or primary credential, yet describes integrations (qbo-automation to push to QBO, optional Vision API/Claude for OCR, crypto-tax-agent) that would normally require API keys/credentials. Not declaring the need for those credentials is a proportionality/clarity problem: a user could inadvertently grant broad access to account/vision credentials to other components when wiring this up. There are no explicit requests for secrets in the SKILL.md, but the skill's operations logically need them and the instructions don't explain how credentials should be provided or protected.
Persistence & Privilege
Flags indicate the skill is not always-included and autonomous model invocation is allowed (the platform default). There is no attempt to modify other skills or system-wide settings. Persistence/privilege levels appear normal.
What to consider before installing
This skill reads and categorizes receipts and makes sense functionally, but it is incomplete and ambiguous in ways that could cause accidental data exposure or deployment errors. Before installing or using it: (1) ask the author for the missing helper scripts (e.g., scripts/parse_receipt.py, categorize implementations) and any referenced prompt/rates files; (2) confirm installation steps and required local binaries (tesseract, pdfplumber, Python libs) and whether a containerized environment is expected; (3) verify where OCR runs — local tesseract versus an external vision API — because sending receipt images to an external vision service can leak sensitive financial/personal data and requires explicit API credentials and privacy review; (4) confirm how QBO (and any other integrations like crypto-tax-agent) credentials are provided and scoped, and ensure least-privilege API keys are used; (5) request explicit guidance for handling PII (card digits, tax IDs) and retention/secure deletion of receipt images; and (6) do not grant global credentials or wire this into production financial systems until you have the missing files and a clear credential handling plan. These issues are likely engineering/clarity problems rather than evidence of intentional maliciousness, but they are material and should be resolved first.

Like a lobster shell, security has layers — review code before you run it.

Current versionv0.0.0-probe
Download zip
latestvk970742jp2188h6jyn8jqzdw39830qdw

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Expense Categorization

Receipt OCR, GL mapping, policy compliance, and anomaly detection for business expenses.

Workflow

1. Receipt Extraction (OCR)

Use tesseract (local) or Vision API for image receipts; pdfplumber for PDF receipts.

Key fields to extract:

  • Vendor name, date, total amount, line items
  • Payment method (last 4 digits if visible)
  • Tax amount (HST/GST/sales tax)
  • Tips/gratuity (separate from subtotal)
# Tesseract OCR on receipt image
tesseract receipt.jpg stdout --psm 4 | python3 scripts/parse_receipt.py

# Or use Claude vision directly for complex layouts

For complex or handwritten receipts → use vision model with prompt in references/ocr-prompt.md.

2. GL Code Mapping

Map extracted expense category to chart of accounts. See references/gl-mapping.md for:

  • Standard QBO GL codes for common expense types
  • IRS-aligned categories (meals 50%, travel, home office, etc.)
  • Crypto/DeFi expense categories

Matching logic:

  1. Exact vendor name match (known vendor list)
  2. MCC code match (credit card transactions)
  3. Keyword match on description/line items
  4. Fallback: prompt user to select category

3. Policy Compliance Check

Apply policy rules before approval routing. See references/policy-rules.md for standard rules.

Core checks:

  • Per diem limits: Meals >$75 require itemized receipt; travel per diem by city
  • Receipt threshold: Receipt required for any expense ≥$25 (IRS standard)
  • Time limit: Receipts must be submitted within 30/60/90 days (configurable)
  • Duplicate detection: Same vendor + amount ± $1 within 7 days = flag
  • Split transactions: Same vendor, sequential dates, amounts just below approval threshold = flag

4. Anomaly Detection

Flag for human review:

  • Amount > 2× historical average for that vendor/category
  • Weekend or holiday transactions (especially travel/entertainment)
  • Round-number amounts (potential personal purchase)
  • Vendor in restricted list (casinos, adult entertainment, competitors)
  • Missing required fields (date, vendor, business purpose)
  • Out-of-state purchases for office supply categories

5. Output Format

{
  "receipt_id": "REC-20260315-001",
  "vendor": "Delta Air Lines",
  "date": "2026-03-15",
  "amount": 487.50,
  "currency": "USD",
  "gl_code": "6200",
  "category": "Travel - Air",
  "policy_status": "approved",
  "flags": [],
  "confidence": 0.94,
  "requires_review": false,
  "notes": "Business purpose required for reimbursement"
}

Batch Processing

For expense report batches:

# Process folder of receipts
import glob
receipts = glob.glob("receipts/*.{jpg,png,pdf}")
results = [categorize(r) for r in receipts]

# Summary stats
flagged = [r for r in results if r["requires_review"]]
total = sum(r["amount"] for r in results)
by_category = group_by(results, "category")

Output batch summary as CSV or feed directly to QBO via qbo-automation skill.

Common Patterns

Credit card statement import:

  1. Parse CSV/OFX from bank
  2. Match known vendors → auto-categorize
  3. Unknown vendors → ML classification or prompt
  4. Export mapped transactions to QBO

Expense report approval routing:

  • Auto-approve: policy-compliant, under $250, no flags
  • Manager approval: $250–$2,500 or single flag
  • Finance review: >$2,500, multiple flags, or restricted category

Mileage reimbursement:

  • Extract start/end locations + business purpose
  • Calculate at current IRS rate (check references/irs-rates.md)
  • Map to GL 6210 (Auto/Mileage)

Integration Points

  • qbo-automation: Push categorized transactions directly to QBO
  • crypto-tax-agent: Route DeFi/crypto expenses for cost basis tracking
  • kpi-alert-system: Trigger alerts when department spend exceeds budget
  • invoice-automation: Cross-reference receipts with vendor invoices

Negative Boundaries

  • Not for PTIN-backed tax work — categorization ≠ tax advice; defer to licensed preparer
  • Not for payroll — employee expense reimbursement != payroll processing
  • Not a real-time feed — batch review with human sign-off before posting to GL
  • Not for legal contracts — use contract-review-agent for vendor agreements
  • Confidence <0.7 → always route to human review, never auto-post

Files

3 total
Select a file
Select a file to preview.

Comments

Loading comments…