Freelance Operations skill for Codex

Quotes, contracts and invoices that get paid. Codex handles the admin side of a freelance practice: it calculates a floor rate from target income, costs and realistic billable utilisation, writes scoped quotes with deposits and milestone payments, checks contracts for change control, IP on payment and kill fees, keeps a sequential invoice ledger, and drafts escalating payment reminders for you to approve. Tax and legal questions are flagged for an accountant or lawyer.

Install

curl -fsSL codexskills.dev/install.sh \  | sh -s -- freelance-operations

Installs to ~/.agents/skills/freelance-operations/ for every project on this machine.

104-line POSIX script. No sudo, no telemetry. Read install.sh

Use it in Codex

Start a prompt with $freelance-operations, or pick it from /skills. You can also just describe the task: Codex reads the description below and loads the playbook when your request matches.

What Codex reads before loading it

Sets up the business side of freelancing and solo consulting - rate calculation from target income and billable utilisation, scoped quotes with fixed, time-and-materials or retainer pricing, contract essentials (deposit, payment terms, IP on payment, change requests, kill fee), invoice numbering and required fields, payment reminders, time tracking, simple pipeline and cash tracking, with tax items flagged for an accountant. Use when a freelancer or consultant asks to price a project, write a quote, set up invoicing, chase a late payment, handle scope creep, or organise their admin.

Use it when

  • Starting or tidying up a freelance or solo consulting business
  • Pricing a project or deciding between fixed fee and hourly
  • Setting up invoices, a ledger and a reminder routine
  • A client keeps adding work outside the agreed scope

Use something else when

How to check the result

The quote lists included and excluded items with milestone payments, the ledger numbering is sequential with no gaps, and every tax or legal question is marked for professional review.

The mistake it prevents

Starting work before a signed agreement and cleared deposit, then discovering the scope was never agreed.

~/.agents/skills/freelance-operations/SKILL.md

--- name: freelance-operations description: Sets up the business side of freelancing and solo consulting - rate calculation from target income and billable utilisation, scoped quotes with… license: MIT ---

A freelance practice runs well when every project starts with a written scope, a signed agreement and a deposit, time and expenses are recorded the same day, invoices go out on a fixed schedule with consistent numbering, and late payments are chased by a routine rather than by awkward ad-hoc emails. The goal is fewer surprises in cash, not more paperwork.

Tax, VAT/sales tax, business registration and contract enforceability depend on the country and status of the freelancer and client. Flag these for an accountant or lawyer; never state that a specific tax treatment applies. Sending quotes, invoices, reminders or contracts to clients is outward-facing: draft them and send only after the user confirms.

Setting a rate

Billable hours/year = working weeks x hours per week x billable utilisation
                    = 46 x 40 x 0.60 = 1,104 h
Required revenue    = target pre-tax income + annual business costs (software,
                      insurance, equipment, accountant, pension, benefits)
                    = 110,000 + 18,000 = 128,000
Minimum hourly rate = 128,000 / 1,104 = ~116 per hour
Day rate            = hourly x 8 (or the hours you actually bill per day)

Billable utilisation of 50-70% is typical once sales, admin and learning time are counted; new freelancers often assume 100% and underprice. Treat the result as a floor; market rate and the value delivered set the price above it.

Choosing a pricing model

ModelUse whenProtect with
Fixed fee per projectScope is clear, you have done similar workWritten deliverables, revision limit, change requests, milestone payments
Time and materials (hourly/daily)Scope unclear, ongoing changes, advisoryEstimate range, weekly time reports, optional not-to-exceed cap
RetainerOngoing availability or monthly workHours or deliverables included, rollover rule, overage rate, notice period
Value-basedLarge, measurable client benefitAgreed baseline and measure; strong scope definition

Quote template

# Quote <Q-2026-014> - <Client> - <Project> - valid until <date>
## Goal
<What the client wants to achieve, in their words.>
## Scope
Included: <deliverables with enough detail to test "done">
Not included: <obvious adjacent items, e.g. copywriting, hosting, content entry>
Revisions: <e.g. two rounds of revisions per deliverable>
## Timeline
<Milestones with dates or durations from deposit receipt; client inputs and their due dates>
## Price
| Milestone | Amount | Due |
|---|---|---|
| Deposit (non-refundable once work starts) | 40% | On signing |
| Design approved | 30% | On approval |
| Launch | 30% | On delivery |
Currency, taxes (stated separately where applicable), expenses policy.
## Terms
Subject to the attached agreement. Changes outside scope quoted separately before work starts.

Contract essentials

Use a written agreement for every engagement, even small ones. Check that it covers (and have a lawyer review the template once, not per project):

  • Parties, project, scope reference (quote or SOW attached)
  • Fees, deposit, payment terms (for example 14 days), currency, late-payment terms where local law allows them
  • Change requests: written, priced, approved before work
  • Client responsibilities and deadlines for feedback and materials; what happens if they are late (timeline shifts, pause fee)
  • IP: ownership or licence transfers on full payment; your right to reuse pre-existing tools and to show the work in a portfolio (or not)
  • Confidentiality
  • Cancellation / kill fee: work done to date plus a percentage of remaining fee
  • Limitation of liability (often capped at fees paid) and no guarantee of results the freelancer cannot control
  • Independent contractor status; you control how and when the work is done (classification depends on reality and local law, not only the contract)
  • Governing law and dispute process

For reviewing a contract a client sends, use contract-review-checklist.

Invoicing

Required content differs by country (and VAT-registered businesses have stricter rules); confirm with an accountant. Commonly needed:

  • Unique sequential invoice number (for example 2026-0042; never reuse or skip silently)
  • Issue date and due date; supply date or period
  • Your legal name, address, tax/VAT ID where registered; client’s legal name and address (and their VAT ID for B2B cross-border invoices where required)
  • Line items with quantity, rate and amount; subtotal, tax lines, total, currency
  • Payment instructions and reference; late-payment terms if used
  • Purchase order number if the client uses POs (missing PO numbers are a top cause of delayed payment at larger clients)

Generating PDFs from data is covered by invoice-generation. Keep invoices in a ledger:

invoice_no,client,issued,due,amount,currency,status,paid_on,notes
2026-0041,Acme Ltd,2026-10-01,2026-10-15,4800.00,EUR,paid,2026-10-14,
2026-0042,Northwind,2026-10-05,2026-10-19,2400.00,EUR,overdue,,PO 7781

Payment reminders

TimingMessage tone
3 days before dueFriendly heads-up with the invoice attached
Due date + 1 dayPolite reminder, ask whether anything is blocking payment
+ 7 daysFirm reminder; reference payment terms; ask for a payment date
+ 14 daysFinal notice; state next steps per contract (pause work, late fees where allowed)
+ 30 daysPhone call; then formal demand or collections/small claims after advice

Draft each reminder for the user to approve; never send automatically. Pause new work for clients with significantly overdue invoices, as the contract allows.

Time and scope tracking

  • Record time daily against client and project with a short description; weekly summaries for T&M and retainer clients.
  • Compare hours spent against the fixed-fee estimate at each milestone; at 80% of budget with significant work left, raise it with the client before going over.
  • Log every out-of-scope request as a change request with an estimate, even if you decide to do it free; it makes the value visible and avoids precedent creep.

Monthly admin routine

  • Send invoices for completed milestones and the month’s T&M or retainer
  • Review the ledger: overdue invoices and reminders due
  • Reconcile bank deposits against invoices
  • Put aside the tax percentage your accountant recommends into a separate account
  • Update pipeline: leads, quotes out, expected start dates, expected revenue next 3 months
  • File receipts for expenses
  • Check capacity versus pipeline; raise rates for new clients if consistently full

Gotchas

  • Starting work before the deposit clears and the agreement is signed.
  • Unlimited revisions, or “small tweaks” with no definition.
  • Quoting from the client’s budget instead of from scope and rate.
  • Invoicing irregularly, so cash arrives unpredictably and late payers go unnoticed.
  • Not separating tax money from operating cash.
  • Accepting client payment terms of 60-90 days without pricing in the financing cost.

Output

Rate calculation, quote, contract checklist with gaps, invoice ledger and template fields, reminder drafts, and a list of items for the accountant or lawyer.

What the zip contains

SKILL.md plus the interface file below. Nothing runs on install.

agents/openai.yamlgenerated from this page

Gives the Codex app a display name, a one-line description and a starter prompt for this skill.

interface:
  display_name: "Freelance Operations"
  short_description: "Quotes, contracts and invoices that get paid"
  default_prompt: "$freelance-operations Work out what hourly and day rate I need as a freelance designer to earn 90k a year"

About this skill

Written and maintained by the Codex Skills editors to the same editorial standard as every skill here: a selective description, a real workflow, known pitfalls and a way to verify the work. First published , last updated . MIT licensed. Something wrong or out of date? Tell us.

esc