Skip to content

Releases: rizwanreza/smartly-cli

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 07 Aug 22:07

Tell your shell what you mean. smartly 0.1.2 turns a plain
English sentence into one executable shell command.

Install

go install github.com/rizwanreza/smartly-cli/cmd/smartly@v0.1.2

Or download a binary below (macOS and Linux, amd64 and arm64 — verify
with checksums.txt).

Docs: https://rizwanreza.github.io/smartly-cli/

The macOS binaries are now signed and notarized.

brew install rizwanreza/tap/smartly

What changed

Signed with an Apple Developer ID, notarized by Apple. Both macOS
builds (arm64 and amd64) are signed with a hardened runtime and
registered with Apple's notary service, so Gatekeeper runs them without
complaint. The --no-quarantine flag and the
xattr -d com.apple.quarantine workaround are no longer needed — if you
installed an earlier version with either, a plain brew upgrade is
enough to leave them behind.

Nothing else changed: same commands, same config, same behavior.

Worth knowing

  • Auto-run is still the default, including for destructive commands. Put
    --dry-run on your first few requests, or run smartly onboard and
    pick a confirmation mode.
  • Linux binaries are unaffected — they were never quarantined.

Full diff: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 07 Aug 21:49

Tell your shell what you mean. smartly 0.1.1 turns a plain
English sentence into one executable shell command.

Install

go install github.com/rizwanreza/smartly-cli/cmd/smartly@v0.1.1

Or download a binary below (macOS and Linux, amd64 and arm64 — verify
with checksums.txt).

Docs: https://rizwanreza.github.io/smartly-cli/

Changelog

Documentation and site

  • e06430f docs: Homebrew install is live, with the Gatekeeper workaround

Everything else

  • 2c71602 chore: make every release read like an announcement
  • 9292736 chore: publish the cask via deploy key; wire Apple notarization

Full diff: v0.1.0...v0.1.1

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 07 Aug 21:22

Tell your shell what you mean. smartly 0.1.0 turns a plain
English sentence into one executable shell command.

Install

go install github.com/rizwanreza/smartly-cli/cmd/smartly@v0.1.0

Or download a binary below (macOS and Linux, amd64 and arm64 — verify
with checksums.txt).

Docs: https://rizwanreza.github.io/smartly-cli/

The first public release of smartly.

$ smartly delete all my branches that are already merged into main
→ git branch --merged main | grep -vE '^\*| main$' | xargs git branch -d

What's in it

Four LLM backends behind one interface. anthropic and openai use
API keys; claude-cli and codex-cli shell out to your already-logged-in
claude/codex CLI session instead — no separate key, no separate bill.
The openai provider accepts any OpenAI-compatible endpoint via
base_url (Fireworks, vLLM, LM Studio, Azure OpenAI).

Three execution modes. auto runs the generated command immediately
(the default — deliberately). confirm always asks. confirm-destructive
asks only when a local static classifier thinks the command changes
something — ls runs straight through, rm -rf stops and explains
itself, and anything the classifier doesn't recognize also asks, on the
principle that a seatbelt that silently passes what it doesn't recognize
is worse than no seatbelt. --confirm, -y, and --dry-run override
per invocation.

It knows where it is. By default smartly sends a capped directory
listing and your git branch/status/worktrees, so "all my merged branches"
resolves against your actual repository. It also generates commands for
your OS — sed -i '' on macOS, sed -i on Linux.

Interactive onboarding. smartly onboard walks through every setting
with a keyboard-driven flow: it detects which providers are actually
available, never asks for an API key (it checks the environment and
prints the export line if missing), requires a second confirmation before
enabling shell-history context, and writes nothing until you approve the
final config.

Shell integration. eval "$(smartly init zsh)" (or bash) makes
generated cd and export commands affect the shell you're typing in —
a subprocess can't do that on its own.

An honest audit trail. Every request and outcome is appended to a
JSONL history log, including the classifier's risk verdict for every
command — so even in auto mode you can go back and see exactly what ran
without asking.

Worth knowing

  • Auto-run is the default, including for destructive commands. Put
    --dry-run on your first few requests, or run smartly onboard and
    pick a confirmation mode.
  • The destructive-command classifier is a best-effort seatbelt, not a
    sandbox — false negatives are possible by construction.
  • Windows/PowerShell isn't supported yet.