← Back to Skills Marketplace
kleberbaum

Invoice

by kleberbaum · GitHub ↗ · v1.1.0
linux ⚠ suspicious
620
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install netsnek-invoice
Description
Creates and manages invoices as JSON files on GitHub with sequential numbering, preview, and upload.
Usage Guidance
This skill is internally consistent with its purpose, but before installing: 1) Use a fine-grained GitHub token limited to the single invoice repository (avoid broad repo/org tokens). 2) Ensure INVOICE_REPO is set to the intended private repo (the scripts will create/update files there and assume branch 'main'). 3) Be aware invoice previews contain sensitive data (IBAN, addresses) which will be displayed in the assistant's messages — test with a throwaway/private repo first. 4) Confirm your environment is Linux and has the specified binaries. If you need the skill to only read data.json automatically, verify the agent uses get-invoices.sh/get file calls to fetch it (SKILL.md mentions it but does not add an automated fetch helper).
Capability Analysis
Type: OpenClaw Skill Name: netsnek-invoice Version: 1.1.0 The skill's `SKILL.md` instructions create a prompt injection vulnerability that could lead to arbitrary command execution (RCE). Specifically, the instruction for the AI agent to 'RUN: `./scripts/get-invoices.sh RE 2026 6007`' where `6007` is derived from user input (e.g., '/rechnung 6007') means a malicious user could inject shell metacharacters (e.g., '6007; rm -rf /') into the `NUMBER` argument. If the OpenClaw agent concatenates this user input directly into the shell command string before execution, it would result in RCE. While the individual shell scripts are generally well-written and use arguments safely within quoted strings (e.g., for `curl` URLs), the vulnerability lies in the agent's interpretation and execution of the `RUN:` instruction with user-controlled parameters.
Capability Assessment
Purpose & Capability
Name/description, required env vars (GITHUB_TOKEN, INVOICE_REPO), and required binaries (curl, python3, base64) match the implemented behavior: listing, previewing, numbering, and pushing invoice JSON files to GitHub via the API.
Instruction Scope
SKILL.md explicitly requires executing included scripts (get-next-number.sh, calc-preview.sh, push-invoice.sh). Those scripts operate only against the GitHub API and local JSON input. The doc says sender data is loaded from data.json or previous invoices but does not include an explicit helper that always fetches data.json — the assistant would need to call the provided get-invoices/get file flow to retrieve it. Also the preview output contains invoice sensitive data (bank/IBAN), which is expected but worth noting.
Install Mechanism
No install spec; this is instruction + script-only. Nothing is downloaded from external arbitrary URLs or written to system locations during install. Risk surface is limited to executing the included scripts at runtime.
Credentials
Requested env vars (GITHUB_TOKEN and INVOICE_REPO) are necessary for the GitHub operations. Caveat: the token must be scoped appropriately — a PAT with broad repo/org permissions could be misused if INVOICE_REPO is misconfigured. README recommends a fine-grained PAT scoped to a single repo, which is the correct practice.
Persistence & Privilege
Skill is not always-on and is user-invocable. claw.json requests network and exec permissions (expected for this functionality). The skill does not modify other skills or system-wide settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install netsnek-invoice
  3. After installation, invoke the skill by name or use /netsnek-invoice
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.1.0
Invoice and offer management with calc-preview.sh for accurate Telegram previews. No LLM math needed. Supports discounts, German formatting, sequential numbering.
Metadata
Slug netsnek-invoice
Version 1.1.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Invoice?

Creates and manages invoices as JSON files on GitHub with sequential numbering, preview, and upload. It is an AI Agent Skill for Claude Code / OpenClaw, with 620 downloads so far.

How do I install Invoice?

Run "/install netsnek-invoice" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Invoice free?

Yes, Invoice is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Invoice support?

Invoice is cross-platform and runs anywhere OpenClaw / Claude Code is available (linux).

Who created Invoice?

It is built and maintained by kleberbaum (@kleberbaum); the current version is v1.1.0.

💬 Comments