Skip to content

Releases: particlepro/particle-cli

0.2.0 - 2026-10-13

Choose a tag to compare

@marcel marcel released this 13 Oct 22:41

Release Notes

Added

  • particle docs reads the Particle documentation as markdown, with no key:
    particle docs lists every page, particle docs quickstart prints one, and
    particle docs errors/<error_code> explains an API error.
  • particle doctor checks that everything is ready (version, API, key,
    project, config, PATH, tab completion) and says how to fix what isn't.
    --json gives agents the same report.
  • particle guide prints a quick start for agents: how output, errors, names,
    and paging behave, and what to run first. particle with no terminal prints
    it too.
  • particle schema <command> shows what a command returns, from the live API
    spec and with no key: on a terminal, every field as a --jq path with its
    type; in a pipe or with --json, the JSON Schema.
  • particle completion install sets up tab completion for zsh, bash, or fish
    in one step (uninstall reverses it). Completions load on the first Tab, so
    shells start as fast as before, and they always match the installed version.
    The Homebrew formula now installs completions too, and particle doctor
    says when they aren't set up.
  • particle alert create takes --role (which speaker roles to watch),
    --language en,de, and --slack <connection>/<channel> (a channel id or
    #name). Every flag has help.
  • particle alert preview "Sam Altman" --speaker takes the same flags as
    alert create, waits for the result (--no-wait to skip), and shows the
    match count, a day-by-day bar, and the latest matches as a table
    (alert preview-result too). --days sets the window.
  • particle alert update takes create's flags too: WHO, --email,
    --webhook, --slack, --cadence, --role, --language,
    --relevant/--no-relevant, and --popular/--no-popular. The filter
    flags change the alert's current filters one at a time instead of
    replacing them all. An update with nothing to change is an error.
  • particle alert pause <id> and particle alert resume <id>.
  • -o tsv: rows with no header or quoting, for cut and while read.
    --columns in a pipe prints TSV instead of ignoring the flag, so
    particle podcast sponsors lennys --columns sponsor.name,ad_count | sort -t$'\t' -k2n
    works.
  • particle commands --json is complete enough to drive the CLI: it is built
    from the same command tree as --help, so it includes short flags, aliases,
    --no- forms, porcelain flags (--about, --speaker, --latest, …), which
    arguments take names (resolves), where each argument goes (in), usage
    lines that match --help, examples, and the shortcuts and built-ins
    (operation_id: null). Body fields are listed in args with in: "body".
  • particle feedback: report a bug (--bug), suggest an idea (--idea), or flag wrong data (--data <name|id|link>) straight to the Particle team.
    • --last attaches the previous command: its arguments, exit code, error code, and trace ids. Keys and your home directory are scrubbed.
    • On a terminal you see exactly what will be sent before it goes. Agents send right away, and particle guide invites them to.
    • Until the feedback service is live, you get a pre-filled GitHub issue to submit instead.
    • Unexpected errors now end with Report it: particle feedback --bug --last.
  • particle auth login signs you in through the browser: it shows a code,
    opens platform.particle.pro, and saves the key Particle issues for this CLI
    once you approve (signing up works too). Without a browser (SSH, an agent)
    it prints the link and code to open on any device, and waits.
    particle auth logout revokes that key. Use --paste or --with-token
    for a key you already have.
  • On a terminal, particle transcript <episode> starts by naming the episode
    (title · podcast · date).
  • particle episode feed --follow keeps polling (every 60 s, or --interval)
    and prints new episodes as they arrive.

Changed

  • Help speaks CLI instead of HTTP: descriptions name commands and flags
    (particle podcast search, --include via, --keyword-match,
    --no-current-only) where they used to say GET /v1/podcasts/search,
    include=via, and keyword_match. particle commands --json gets the same
    text.
  • particle mentions --help (and every noun with a default command) shows
    that command's flags and examples, not just the list of subcommands.
  • Built-ins (auth, config, completion, docs, …) no longer repeat ~40
    lines of output, paging, and global flags in their help; one line points to
    particle --help. resolve and api keep the flags they use.
  • particle --help groups the 25 resources by topic (podcasts, people and
    companies, mentions and charts, advertising, alerts), and wrapped
    descriptions stay in their column.
  • Flag help: date flags mention 30d, 6mo, and today; booleans that
    default to on say how to turn them off (--no-current-only), including
    request-body booleans; placeholders are words (<STANDING>, <ID>) instead
    of <GUEST_STANDING> and <VALUE>; --help shows defaults that only -h
    showed, and neither repeats one the text already states; --format is under
    Output and --project under Global options; and an argument that resolves
    names says so.
  • Relative dates of a day or more (--since 7d, 30d, 6mo, 1y) are sent
    as a UTC date instead of a timestamp to the second, so they hit the API's
    daily snapshots and caches: particle ads leaderboard --since 7d went from
    about 10 s to 0.2 s.
  • A server error that took 20 s or more is no longer retried, and no retry
    starts after 30 s in total, so a failing endpoint costs one slow attempt
    instead of three in a row.
  • -v no longer shows a price on failed calls; they aren't billed.
  • The same filter has the same flags on every command: -p/--podcast wherever
    there's --podcast-id, --since/--until wherever there's
    --published-after/--published-before (and on guest list for
    --appeared-since), -e/--episode, -k/--keyword, --entity, --company,
    --person, --publisher, --sponsor, --clip, --topic, --category for
    --category-slug, --lang, --occupation and --field. So particle episode list -p lennys --since 30d and particle mention timeseries -p lennys --entity sam-altman work like search and mentions always did.
  • particle webhooks works like particle webhook, and occupation search and
    field search like their list commands, as company search does.
  • The argument a command is about can be given without its flag:
    particle mention timeseries "Sam Altman", particle podcast mentions all-in "Sam Altman", particle sponsor list shopify, particle publisher list iheart, particle guest list altman, particle occupation list cardio,
    particle topic list technology, particle webhook create https://…,
    particle transcription create <episode>, particle episode archive-download 2026-09-01. The flags still work.
  • podcast lookup, episode lookup and entity lookup take identifiers and
    links as arguments, several at once or - for stdin. All-digit podcast
    identifiers are looked up as Apple ids, so particle podcast lookup 1627920305 finds Lenny's Podcast instead of nothing.
  • podcast mentions, mention timeseries and mention share-of-voice say
    "who should mentions be found for?" before calling the API when no one is
    named, instead of returning its 422.
  • Decimals in tables and cards are rounded to two places (three below 1), so a
    score reads 0.984 instead of 0.9843888878822328. Curated views can now
    show percentages (43.2%), clock positions (41:12, 0:03.250), sizes
    (1.2 MB), and signed changes (+3).
  • Tables for commands without a curated view now say what each row is about:
    particle ads leaderboard shows the sponsor, podcast related the
    podcast, and company competitors the company, instead of bare numbers or
    {…}. Columns that are the same on every row are left out, timestamps show
    as dates, and -o csv uses the same columns. When a table doesn't fit,
    numbers and the title stay readable and the rightmost columns are left out.
  • Cards never print {…}: lists of objects are small tables (particle stats, top sponsors, external links), and time series show their latest
    periods with a bar. A card is headed by the publisher, person, or company
    it's about, and long text such as bias reasoning is shown in full.
  • Podcast and episode lists name what each row is about: podcast related,
    recommended-guests, recommended-sponsors, sponsors, mentions,
    external-links, ratings, guests, rankings, rankings-history,
    podcast list, podcast topics, transcription list, and episode entities, related, expertise, ads, clips, segments, speakers,
    topics, feed, clip list and segment list. Before, many showed only
    scores and counts (SCORE BAND / 0.98 strong). Offsets read 44:54,
    ratings show stars and dates, and -o csv gets the same columns plus the
    wide ones. -o wide episode lists no longer squeeze titles for the slug.
  • Names resolve more carefully. A literal name match beats an alias hit, a
    match is never auto-accepted over one with far more coverage (Sam no
    longer means Samoa, Jensen no longer means a person no episode mentions),
    and a clear leader is accepted when every word matches (joe rogan, nvid).
    Candidates are listed by coverage, with literal matches first, and --first
    takes the top of that list.
  • A name with only lookalike matches now exits 4 (no company named "…",
    with suggestions) instead of 5. A single candidate reads "did you mean".
    Error JSON lists each candidate as {id, name, kind, episodes, match} with a
    short description, instead of the full record.
  • The resolution note on stderr is skipped when the input was already the
    slug, and keeps the episode count when the answer came from the cac...
Read more

0.1.1 - 2026-10-13

Choose a tag to compare

@marcel marcel released this 13 Oct 05:26

Release Notes

Added

  • particle guest appearances "Sam Altman": guest commands accept names, and
    appearances show the date, podcast, episode, and how long they spoke.

Changed

  • Commands no longer end with a request-count and cost footer, and the
    "Keep going?" paging prompt no longer mentions price. Prices are still in
    --help, -v, --dry-run, and particle commands.
  • mentions --role help explains that results are lines naming the person
    (for what they said, use particle transcript <episode> --speaker <name>),
    and the examples no longer suggest otherwise.
  • Releases are published from https://github.com/particlepro/particle-cli
    (formerly particle-cli-releases; old links redirect).

Install particle-cli 0.1.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/particlepro/particle-cli/releases/download/v0.1.1/particle-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/particlepro/particle-cli/releases/download/v0.1.1/particle-cli-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install particlepro/tap/particle

Download particle-cli 0.1.1

File Platform Checksum
particle-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
particle-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
particle-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
particle-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
particle-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
particle-cli-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

v0.1.0

Choose a tag to compare

@marcel marcel released this 13 Oct 04:33

Install particle-cli 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/particlepro/particle-cli-releases/releases/download/v0.1.0/particle-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/particlepro/particle-cli-releases/releases/download/v0.1.0/particle-cli-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install particlepro/tap/particle

Download particle-cli 0.1.0

File Platform Checksum
particle-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
particle-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
particle-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
particle-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
particle-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
particle-cli-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum