# AI agents welcome.

> Your AI agent can run your Nyrut from the terminal: create and send invoices, mark them paid, tell you who owes you and what VAT is due. With your account and the same rules as the web app.

Claude Code, Codex or whichever agent you use can run your Nyrut from the terminal: create and send invoices, record payments, tell you who owes you and what's due this quarter. With your account, your data and the same rules as the web app.

```
npm install -g nyrut
nyrut login
```

## your agent, in the terminal

> Invoice Estudio Norte for October: 12 hours of web design at €60. Show it to me and, if it looks right, send it.

```
$ nyrut invoice new --client "estudio norte" --line "Web design, October; 12; 60"
Draft 2026-018 · Estudio Norte · €720.00 + VAT 151.20 − IRPF 108.00 = €763.20
$ nyrut invoice send 2026-018 --yes
Sent to administracion@estudionorte.es
```

Done: invoice 2026-018, €763.20, is in Estudio Norte's inbox. It's due on 17 November; I can check then whether it's been paid.

## Your agent does in Nyrut what you would.

- **Invoice**: Creates the invoice with its line items, with the VAT and withholding that apply given where the client is. It stays a draft until it's sent. `nyrut invoice new --line "…"`
- **Send it**: To the client's email, or to whoever you say. It shows who and how much first, because sending can't be undone. `nyrut invoice send 2026-018`
- **Record payments**: Marks an invoice paid, on the date the money arrived. `nyrut invoice pay 2026-014`
- **Tell you who owes you**: Overdue first, and how much of what you're owed is late. `nyrut invoices --status overdue`
- **Share it**: The invoice's public link, to paste wherever you like. `nyrut invoice link 2026-018`
- **Review clients and expenses**: Your clients with what each still owes, and the expenses you've recorded. `nyrut clients · nyrut expenses`
- **Check the quarter**: Spain's 303 and 130, estimated with the same maths as the web app. To check against, not to file. `nyrut summary`

What it can't do from the terminal yet: record expenses (in the web app a receipt photo does it for you) or make the PDF. For those, `nyrut invoice open` opens the invoice in your browser.

## Ask in your own words

The agent turns it into commands, reads the data as JSON and tells you the result.

- Tell me who owes me money, since when and how much in total. Most urgent first.
- Invoice Bodegas Sur the same as last month, dated today, and leave it as a draft for me to check.
- How much VAT will I owe this quarter? And if 2026-014 gets paid before the 30th?
- Make me a table of what I've invoiced each client this year, highest first.
- Mark 2026-011 as paid: the money arrived yesterday.

## With a safety net.

- **You sign in, in your browser**: `nyrut login` sends you to the web app, where you're already signed in, and asks before handing the session to the terminal. A link alone is never enough.
- **New invoices are drafts**: Nothing leaves the terminal already issued: sending is a separate step, and the command shows who and how much before it does.
- **It's your session**: What the agent does, you do: same invoices, same rules, and everything shows up in the web app. Ask it to show you an invoice before sending it.
- **Sign out whenever you like**: The session is stored only on your machine, readable only by you. `nyrut logout` removes it.

## What if the agent is you?

The terminal is for people too: what's pending with the urgent on top, each invoice drawn in its own language, and nothing in your scripts' way.

- Every listing comes out as JSON with `--json`: no colour, no padding, no headers.
- Colour never carries meaning: it reads the same through `| cat` or under `NO_COLOR`.
- A mistyped option is an error, not a list of everything: `--stauts=paid` doesn't fly.
- Animation stops by itself when nobody's watching: no TTY, piped, or in CI.

## And the website, in Markdown

If your agent reads the website to understand Nyrut, every page has a Markdown version: add `.md` to the address or ask for it with `Accept: text/markdown`. And `llms.txt` sums up what Nyrut is and where everything lives.

[llms.txt](https://www.nyrut.com/llms.txt) · [This page, in Markdown](https://www.nyrut.com/en/agents.md)

## Start in a minute.

1. Install the CLI: `npm install -g nyrut`
2. Sign in with your account: `nyrut login`
3. Tell your agent: `nyrut --help`

“Use the Nyrut CLI (`nyrut --help`) to handle my invoices. Show me before sending anything.”

## Every command

Each one with `--help`. Options and examples in the full reference.

- [`nyrut invoices [options]`](https://www.nyrut.com/cli#invoices): List invoices, most urgent first
- [`nyrut invoice <number>`](https://www.nyrut.com/cli#invoice): Draw one invoice
- [`nyrut invoice new [options]`](https://www.nyrut.com/cli#invoice-new): Create an invoice
- [`nyrut invoice send <number> [options]`](https://www.nyrut.com/cli#invoice-send): Email the invoice to the client
- [`nyrut invoice pay <number> [options]`](https://www.nyrut.com/cli#invoice-pay): Mark an invoice paid
- [`nyrut invoice link <number>`](https://www.nyrut.com/cli#invoice-link): Public link to share the invoice
- [`nyrut invoice open <number>`](https://www.nyrut.com/cli#invoice-open): Open the invoice in the browser
- [`nyrut clients`](https://www.nyrut.com/cli#clients): Your clients and what each still owes
- [`nyrut issuers`](https://www.nyrut.com/cli#issuers): Your issuing entities
- [`nyrut expenses [options]`](https://www.nyrut.com/cli#expenses): Expenses you have recorded
- [`nyrut summary [options]`](https://www.nyrut.com/cli#summary): VAT by quarter, for one issuer
- [`nyrut login`](https://www.nyrut.com/cli#login): Sign in through your browser
- [`nyrut logout`](https://www.nyrut.com/cli#logout): Forget the session on this machine
- [`nyrut whoami`](https://www.nyrut.com/cli#whoami): Who you are signed in as

[Full reference](https://www.nyrut.com/cli.md)

## Let someone else do it.

Your Nyrut account is the same on the web, on your phone and in the terminal. Ten days free, no card. [Start free](https://www.nyrut.com/login?alta=1)
