RobSpct

C2invoice — Productivity skill for Claude Code

Productivity community

Turn Claude Code session logs into invoices: active working time, cost, margin and billing per job.

How to install C2invoice

This entry records only its repository, not the path inside it, so there is no exact command to give. Open RobSpct/c2invoice and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What C2invoice does

Turn Claude Code session logs into invoices: active working time, cost, margin and billing per job. Local, zero dependencies.

Alternatives in Productivity

  • Costs — Show cost breakdown by provider and workflow for the current session 2.8k ★
  • 🤝 Contributing To Agent Skills — First of all, thank you for taking the time to contribute 1.7k ★
  • Swarm Worker — You are a swarm worker agent for the {{tentacleName}} tentacle 1.4k ★

README

c2invoice

**Turn Claude Code usage into an invoice.**

Local time tracking, cost analysis and invoicing for freelancers who work with Claude Code. It reads the session logs, reconstructs actual working time, and produces an invoice PDF. No cloud, no account, no telemetry.

![Node](https://img.shields.io/badge/node-%3E%3D22.5-brightgreen) ![License](https://img.shields.io/badge/license-AGPL--3.0-blue) ![Dependencies](https://img.shields.io/badge/dependencies-none-brightgreen)

Token counters tell you what you consumed. `c2invoice` answers the question a freelancer actually has: *what can I bill for this, and what's left after costs?*

It reads Claude Code's session logs after they are written — no hooks, no wrapper, no interference with running sessions, and **it costs you zero extra tokens**. Everything runs locally on `127.0.0.1`; nothing is uploaded anywhere.

session logs → active working time → hourly value → margin → invoice PDF

What it looks like

Two cost figures sit side by side on purpose. **API equivalent** is what the same usage would have cost at API list prices — a reference, not a bill. **Subscription cost** is what you actually paid for the period shown in the tile: your plan price, spread over the months it covers. The gap between them is usually large, and it is the reason the margin never uses the list price.

![Overview: API equivalent at list price next to the subscription cost actually paid, active hours, spend over time and split by model](docs/overview.png)

Per job — the margin bar is scaled against your target margin, so "above or below what I aimed for" is readable at a glance:

![Job detail: token split, work value, contribution margin and margin with a bar scaled against the target](docs/jobs.png)

Where the tokens actually went — MCP servers and skills as ranked bars. Open a server to see its individual tools, drawn at the same scale as their parent. Every bar is a share of the same total, not cost on top of it; this view