@ohmylike/pool
v0.1.10
Published
Capture-first CLI for saving and revisiting AI agent practices
Readme
@ohmylike/pool
Capture-first CLI for saving and revisiting AI agent practices.
The published CLI writes through the Pool API and does not connect to Turso or libSQL directly.
Run
npx @ohmylike/pool --helpSetup
Set POOL_API_KEY. The API URL is fixed to https://api.usepool.app/v1.
export POOL_API_KEY="pool_xxx"Optional local config:
~/.pool/config.json{
"apiKey": "pool_xxx",
"apiUrl": "https://api.usepool.app/v1"
}Environment variables override the config file.
Inspect the current setup with redacted secrets by default:
npx @ohmylike/pool config --resolved --format text
npx @ohmylike/pool config --resolved --format jsonPass --show-secrets only when you explicitly need the raw values.
Core Commands
npx @ohmylike/pool capture add --text "Split agent roles by task"
npx @ohmylike/pool capture add --text "Split agent roles by task" -q
npx @ohmylike/pool capture add --url "https://martinfowler.com/articles/exploring-gen-ai/harness-engineering.html"
npx @ohmylike/pool capture add --url "https://note.com/example/n/n123abc456def"
npx @ohmylike/pool capture add --url "https://note.com/example/n/npaid123abc456" --browser-session note-main
npx @ohmylike/pool capture add --url "https://www.nikkei.com/article/DGXZQOUC302OF0Q6A330C2000000/" --browser-session nikkei-main --no-save --format json
npx @ohmylike/pool capture add --url "https://x.com/example/status/123"
npx @ohmylike/pool capture list -q --limit 3
npx @ohmylike/pool capture list --format json
npx @ohmylike/pool idea list --limit 5 --format json
npx @ohmylike/pool idea show --id idea_xxx --format json
npx @ohmylike/pool draft create --from cap_xxx -q
npx @ohmylike/pool draft create --from cap_xxx --format json
npx @ohmylike/pool draft show --id drf_xxx --format json
npx @ohmylike/pool db schema --output schema.json --format json
npx @ohmylike/pool db export --output backup.json --format json
npx @ohmylike/pool db import backup.json --format json
npx @ohmylike/pool x-bookmark state --format json
npx @ohmylike/pool x-bookmark run --format json
npx @ohmylike/pool config --resolved --format text
npx @ohmylike/pool doctor --format jsonUse npx @ohmylike/pool config --resolved --format text to inspect the config file path and resolved values.
Use npx @ohmylike/pool --help for the rest.
Authenticated browser capture uses the generic browser session surface:
{
"browserSessionRoot": "/Users/you/.pool/browser-sessions",
"browserDefaultSession": "note-main",
"browserBootstrap": "auto",
"browserExecutablePath": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
}The matching environment variables are POOL_BROWSER_SESSION_ROOT, POOL_BROWSER_DEFAULT_SESSION, POOL_BROWSER_BOOTSTRAP, and POOL_BROWSER_EXECUTABLE_PATH.
Use capture add --no-save when you want to inspect the locally fetched article body without saving it through the API. This is useful for validating authenticated browser sessions against paywalled pages such as Nikkei. The command still requires that your local browser session is already allowed to access that article.
Quiet Mode
Use --quiet / -q when you need a strict stdout contract for scripting:
CAPTURE_ID=$(npx @ohmylike/pool capture add --text "Split agent roles by task" -q)
npx @ohmylike/pool capture list -q --limit 3
DRAFT_ID=$(npx @ohmylike/pool draft create --from "$CAPTURE_ID" -q)capture add and draft create print only the created ID to stdout.
capture list -q prints newline-delimited capture IDs and moves pagination hints to stderr.
An empty capture list -q prints nothing and exits successfully.
--quiet only works with text output and cannot be combined with --format json or --dry-run.
Scheduler Automation
When the scheduler runs inside a checked-out Pool workspace, prefer the repo-local automation script:
pnpm output:bundle:automation -- --slot morning
pnpm output:bundle:automation -- --slot afternoonIf the scheduler does not have a repo checkout and can only fetch the published package, the scheduler-oriented output bundle command is intentionally kept off the top-level help, but it is callable directly:
bunx @ohmylike/pool output bundle --slot morning --format json
bunx @ohmylike/pool output bundle --slot afternoon --format jsonThe current Claude Core remote scheduler registration pins the published package and enables the env proxy:
NODE_OPTIONS=--use-env-proxy npx -y @ohmylike/[email protected] output bundle --slot morning --format jsonThe published CLI --slot path persists an output_bundle snapshot in the API database and returns JSON with id, status, scheduled_for, and bundle counts. It does not write a local file unless --output /path/to/file.md is provided. Use pool output bundle list --slot morning --format json to list persisted snapshots and pool output bundle show --id outb_xxx --format json to read one. Use pool output bundle observe --id outb_xxx --lane personal_x --outcome used_after_edit ... to record lane review results, and pool output bundle review-summary --days 7 --format json to get the rolling weekly summary. The published CLI path still requires the same API auth setup described above; without POOL_API_KEY or equivalent scheduler-side config, the command exits with Unauthorized. Pass --force to overwrite an explicitly requested --output file.
