curated
v0.1.1
Published
Curated from your terminal or any agent: sign in with a device code, create lists, capture items.
Readme
curated
Curated from your terminal, or from any agent that can run a command.
This package is not published yet. From a repository checkout, build it and run the generated entry point directly:
pnpm --filter ./packages/cli build
node packages/cli/dist/cli.js loginThat prints a short code and a link, opens your browser, and waits. Press
Allow once and the CLI stores a token in ~/.curated/config.json. After
linking the package locally, the remaining commands are:
curated list create "Best ramen in Tokyo" --json
# Copy the exact slug from that response; never reconstruct or guess it.
curated add https://tabelog.com/en/tokyo/... --list <returned-slug> --note "Worth the queue"
curated lists
curated show <returned-slug>
curated search ramenAdd --json to any command for machine-readable output (agents should).
curated show <returned-slug> --format markdown prints the list ready to paste
into a chat or a doc.
Reading and buying other people's lists
curated find "quiet hotels portugal" # published lists, with prices
curated show <returned-slug> # free or already bought → the items
curated buy <returned-slug> --pay # paid → pay now, then the items
curated library # everything you have access toUse the exact slug returned by find; do not infer it from the list title.
show on a paid list you don't have prints the price, a preview, and the
payment link (exit code 2). buy prints the link; buy --pay hands it to the
Stripe Link agent wallet (npx @stripe/link-cli mpp pay …), which answers the
server's HTTP 402 Machine Payments Protocol challenge with a card credential
and prints the paid response: the list. One-time lists are yours for good;
monthly lists grant a 30-day pass per payment (--renew to extend a live one).
Signed out? curated buy <slug> --email [email protected] --pay buys as a guest;
the account is created for that email once payment lands.
How sign-in works
The CLI uses the OAuth 2.1 Device Authorization Grant (RFC 8628) against
Curated's authorization server with the public client id curated-cli. No
redirect URI has to be hosted, so it works from SSH sessions, containers, and
agent sandboxes. Tokens are the same 30-day access / 1-year refresh pair every
other Curated integration gets, and they show up (and can be revoked) under
Connect AI in the web app.
Point it at a different API with CURATED_API_URL=http://localhost:3000.
Relocate the config file with CURATED_CONFIG_DIR.
Publishing (maintainers)
This is the only public package in the monorepo. From the repo root:
pnpm --filter curated build
pnpm --filter curated publish --access publicprepublishOnly runs the build, so dist/ is always fresh. Bump version
in package.json first.
