login
Sign in to a workspace through the browser. Omit--subdomain and the CLI prompts for it.
~/.config/neetoinvoice/auth.json. See Authentication.
logout
Sign out of one workspace, or all of them.logout removes the only entry when exactly one is signed in, and errors when
several are.
whoami
List the signed-in accounts. The entry is marked(default) when exactly one is signed in.
--subdomain <name> to show just one.
doctor
Check authentication, API reachability, and version. Each check runs independently, so one failure does not hide the others.--subdomain as well; without it the authentication
check fails and the API check is skipped. doctor --subdomain <name> also works before you
sign in, which is a quick way to confirm a workspace is reachable.
version
Print the version, commit, and build date.--json for a machine-readable object:
update
Upgrade the CLI in place. The command detects how the binary was installed and runs the matching upgrade:brew update && brew upgrade for Homebrew, the PowerShell installer on
Windows, and the shell installer everywhere else. It prints the install method it detected
and the exact command it runs.
neetoinvoice completion <shell> and any setup command you use after upgrading so
they pick up the new commands.
commands
Emit the full command and flag catalog as JSON. This is the source of truth for what the installed binary supports, and it is what generates the commands overview.command, description, optional flags (with name, type, default,
description, and required), and subcommands. help, completion, and commands itself
are left out of the catalog.
setup
Write NeetoInvoice instructions into an AI coding assistant’s config. Every target exceptclaude writes into the current project directory, so run those from the repository you are
working in. See AI assistants.
The section-based targets keep the rest of the file and replace only the block between the
<!-- neetoinvoice:start --> and <!-- neetoinvoice:end --> markers, so re-running never
adds a duplicate.
Shell completion
neetoinvoice completion <shell> writes the completion script to disk and wires your shell
to load it on next start. No manual sourcing is needed.
Re-running refreshes both the script and the loader block in place, between the
# neetoinvoice completions and # end neetoinvoice completions markers, so it never
duplicates the block.
Re-run the completion install after every upgrade. The script on disk is generated from the
binary that wrote it, so commands added later will not be suggested until you refresh it.
--print to emit the raw script to standard output instead of installing it: