pinbox pin writes a pin straight from your shell. Reach for it when you want to try
pinbox before wiring up the toolbar, or when the thing that needs changing is in the code
rather than on a page.
Because there is no browser, a terminal pin records nothing about one — no viewport, no
screenshot, no element rectangle. It carries only what is true: your text, whatever place
you named, your git identity, and the branch and commit the hub stamps on every pin.
Usage
Arguments
string
required
What needs to change, in your words. Quote it — it is one argument, not several.
Options
path[:line]
Anchor to a source location (recorded repo-relative). The path must exist. It is stored
relative to the repo root, so the anchor still resolves on another machine.
:line is
optional.url
The web surface this pin is about. Must be an absolute
http or https URL.string
CSS selector on that surface. Requires
--url — a selector with no page is not a
target.boolean
Machine output: the
{"ok":true,"data":…} envelope.Examples
The new pin id goes to stdout. The confirmation goes to stderr, so2>/dev/null leaves
you with just the id.
JSON
data is the created pin. Note what is absent: no env.viewport, no target.rect.
Absent, not zeroed.
Errors
A
--file that points at nothing is rejected before the pin is created. An agent sent to
a path that does not exist is worse off than one with no anchor at all.
Next: read it back with
pinbox show, find it again with
pinbox list, or close it out with
pinbox resolve.