Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,3 +63,4 @@ jobs:
QUILL_NOTARY_KEY: ${{ secrets.QUILL_NOTARY_KEY }}
QUILL_NOTARY_KEY_ID: ${{ secrets.QUILL_NOTARY_KEY_ID }}
QUILL_NOTARY_ISSUER: ${{ secrets.QUILL_NOTARY_ISSUER }}
HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.HOMEBREW_TAP_GITHUB_TOKEN }}
31 changes: 31 additions & 0 deletions .goreleaser.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -136,3 +136,34 @@ notarize:
key_id: "{{.Env.QUILL_NOTARY_KEY_ID}}"
key: "{{.Env.QUILL_NOTARY_KEY}}"
wait: true
brews:
- name: shelltime
ids:
- mt-common
- mac
repository:
owner: shelltime
name: homebrew-tap
token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
directory: Formula
homepage: "https://shelltime.xyz"
description: "Track and analyze your shell usage - ShellTime CLI"
license: "MIT"
commit_author:
name: shelltime-bot
email: bot@shelltime.xyz
install: |
bin.install "shelltime"
bin.install "shelltime-daemon"
test: |
system "#{bin}/shelltime", "--version"
caveats: |
To get started with ShellTime, run:
shelltime init

Or set up manually:
shelltime auth
shelltime hooks install
shelltime daemon install

For more info, visit https://shelltime.xyz
Comment on lines +160 to +169
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The shelltime init and shelltime daemon install commands mentioned in the caveats will fail for users who install via Homebrew.

The current implementation of commandDaemonInstall in commands/daemon.install.go (lines 54-58) explicitly checks for the daemon binary at ~/.shelltime/bin/shelltime-daemon. However, Homebrew installs binaries to the system PATH (e.g., /usr/local/bin or /opt/homebrew/bin).

When a Homebrew user runs these commands, they will receive an error message directing them to use the curl installation script, which defeats the purpose of the Homebrew distribution. You should update the CLI logic to look for shelltime-daemon in the system PATH as a fallback before checking the local directory.

Comment on lines +139 to +169
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 README not updated with Homebrew install method, violating AGENTS.md documentation rule

AGENTS.md mandates: "When command behavior, setup flow, config formats, or integrations change, update the docs in the same change." This PR adds Homebrew tap as a new installation method via .goreleaser.yaml but does not update README.md to mention it. The README Install section (README.md:10-14) only shows the curl method. Users discovering the tap would have no documentation of brew install shelltime/tap/shelltime as an install option.

Prompt for agents
AGENTS.md requires that when the setup flow changes, README.md must be updated in the same change. This PR adds a Homebrew tap (shelltime/homebrew-tap) via the new brews section in .goreleaser.yaml, but the Install section in README.md (around lines 10-14) only documents the curl-based install. Add a Homebrew install option to README.md, e.g.:

## Install

brew install shelltime/tap/shelltime

Or via curl:

curl -sSL https://shelltime.xyz/i | bash

Adjust the exact tap/formula name to match the repository owner (shelltime) and formula name (shelltime) configured in .goreleaser.yaml lines 140-147.
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Loading