Using it
The terminal review
You don’t have to leave the terminal. After a watch, press ↵ on the verdict card, or run slowship review any time, and the whole review opens full screen.
#Open it
slowship reviewIt reviews the last watch again, from memory, without reading anything twice.
slowship /home/you/code/my-app ◆ Held in port. Ship safe, slowly. 189 aboard · 23 Oct, 08:00 pm 6 held · 10 to glance Review 16 Aboard 189 Keys 1 Blind spots 100.0% ◆ my-app Runs on open ┃ ◆ Held Runs on open Decodes hidden data and runs it as code … ┃ ┃ my-app ◆ my-app Your build ┃ /home/you/code/my-app A window with Node.js on and isolation o… ┃ ┃ What it says it does ◆ notes-window Your build ┃ What opening this project runs on its own: your coding agent's A page in your app can call this IPC han… ┃ hooks, VS Code's folder-open tasks, and the scripts they start. ┃ ◆ table-tidy Skill ┃ ◆ Decodes hidden data and runs it as code in the same function Reads credential files and sends network… ┃ Held ┃ ▣ .claude/setup.mjs new Function() builds code at runtime ◆ tiny-date-fmt 1.0.0 Package ┃ Decoding data and running it as code in the same function is how Reads credential files and sends network… ┃ hidden payloads start. ┃ ◆ trusted-date-fmt 1.0.0 Package ┃ ◆ Runs on its own when the project opens, and what it runs hides Reads credential files and sends network… code, builds code at runtime or reaches for secrets Held ● @pinojs/redact 0.4.0 Package ▣ .claude/settings.json runs `node .claude/setup.mjs` when your WriteFileSync() ▣ .vscode/tasks.json runs `node .vscode/setup.mjs` as soon as t ● ajv 8.20.0 Package ● Reads a secret token from the environment and sends network New Function() builds code at runtime requests right next to it Worth a glance ● Django 3.2.0 Package ▣ .vscode/setup.mjs fetch() 66 known vulnerabilities, the worst crit… A token from the environment next to a request is often a tool using its own key, and sometimes a token thief. 0% · PgUp PgDn ↑↓ move ←→ tabs PgDn read c clear u undo / search o browser r rewatch ? keys q quit
#What’s on the screen
Four tabs run along the top:
- Review: what needs you, held things first. Each card has a rail in its colour.
- Aboard: everything that was read.
- Keys: who can spend your money, by outside account.
- Blind spots: where it couldn’t look.
Beside the list is the inspector: what the item says, what its code does with the real lines around each finding (the flagged one lit), the model’s note, the IPC map, what compiled files are built from, and the keys it holds.
#Keys
| Key | What it does |
|---|---|
| ↑ ↓ | Move through the list |
| ← → | Switch tabs |
| ↵ | Open the selected item in the inspector |
| c | Clear it. It slides away. |
| u | Undo the last clear |
| / | Search, or type a command like /discord |
| f | Filter by kind |
| o | Open the morning report in the browser |
| r | Watch again |
| ? | Show every key |
| Esc | Step back. It never quits. |
| q | Quit. The terminal is always put back as it was. |
The mouse works too: click to pick, use the wheel to scroll. When the last thing is cleared, the ship sails.
#Commands inside the review
Press / and type a command:
/discordand/telegramconnect a morning ping without leaving the review.- Anything else you type searches what’s aboard.
#Small and odd terminals
Below 110 columns, the inspector opens over the list instead of beside it. Below 60 by 16, it asks for more room rather than drawing something broken.
It uses true colour where the terminal has it, and 256 or 16 colours where it doesn’t.
#Plain text, no motion
When the output is piped, in CI, overnight, with NO_COLOR set, or with --plain, slowship prints plain text instead of drawing, and the exit code is the same. --no-motion (or SLOWSHIP_NO_MOTION) keeps the drawing but stops all animation.