NEWCloud agents are live.See how

The Fredrin CLI

Every command names the resource it acts on. All output is JSON, because the primary caller is an agent rather than a person reading a terminal.

Last updated View as Markdown

The grammar

Text
fredrin <noun> <verb> [options]

Both a noun and a verb are required, always. There are no flat verbs, because fredrin start is ambiguous the moment a second resource can be started.

Inside a ticket's worktree the wrapper is ./.fredrin/fredrin, and it already knows which ticket it is.

Tickets

Terminal
fredrin tickets list [project]
fredrin tickets get <id|identifier>
fredrin tickets create '{"title":"…","description":"…"}'
fredrin tickets context <id>
fredrin tickets attach <id> <file>

tickets context is the interesting one: it returns the relevance-scoped project memory for a ticket, the concepts and decisions it actually touches, rather than the most recent N documents.

Creating a ticket accepts dependsOn, and the response echoes a per-reference result. A bad reference is skipped rather than fatal, so check the echo instead of assuming the edges landed.

Goals

Terminal
fredrin goals list
fredrin goals create
fredrin goals assign <goal> <ticket>
fredrin goals ask <goal>

Notes

Terminal
fredrin notes list
fredrin notes read <name>
fredrin notes write <name>
fredrin notes create|rename|move|delete

These reach the project's own notebook, not files in your repository. "Read my roadmap note" means this, not a grep.

Connectors

Terminal
fredrin connectors list
fredrin connectors metrics
fredrin connectors revenue
fredrin connectors deploys
fredrin connectors uptime
fredrin connectors health

Read live third-party data through the connection that already exists. Do not mint your own provider keys. See connectors.

Terminals, servers and sessions

Terminal
fredrin terminals new|list|read|send|split|layout|close
fredrin servers start|stop|list
fredrin sessions list|send|reap

These drive the desktop app's own panes, which is what lets an agent start your dev server, read its output, and act on it.

Browser

Terminal
fredrin browser navigate|click|type|upload|screenshot|text|console|eval

Drive a real browser to verify a change. Screenshots stay on disk unless you explicitly attach them to a ticket, which is the privacy gate working as designed.

Output

Everything is JSON. Pipe it into jq, or let an agent parse it. Nothing prints a human-formatted table that a script would then have to unpick.

Next steps