35ce257
chore(legal): @lloydzhou has signed the CLA
Charm created
35ce257
chore(legal): @lloydzhou has signed the CLA
Charm created
c9afdb1
chore(legal): @vorticalbox has signed the CLA
Charm created
efbf6bf
v0.64.0
Andrey Nering created
bc48334
chore(deps): update fantasy and catwalk
Andrey Nering created
aeb529c
chore(legal): @georgeglarson has signed the CLA
Charm created
86bb805
fix(tools/job_kill): use longer job_kill desc to improve reliability (#2747)
Christian Rocha created
4d16e96
fix(app): replace single events channel with pubsub.Broker for fan-out (#2663)
Fixes the SSE multi-consumer bug where multiple clients sharing the same workspace received only a fraction of events (competing-consumer semantics on a plain channel). Each caller to Events()/SubscribeEvents() now gets its own dedicated channel via Broker.Subscribe(ctx). 💘 Generated with Crush Assisted-by: AWS Claude Sonnet 4.6 via Crush <crush@charm.land>
Tai Groot created
c84ca2d
refactor(hooks): move matcher compilation into the runner
The runner now compiles its own matchers, so a config round-trip can't silently strip them. Hooks with an invalid matcher are dropped with a warning instead of quietly matching everything.
Christian Rocha created
38a846d
fix(hooks): recompile matchers after config reload
A hook with a matcher like "^bash$" was firing on every tool call after any config write, because the compiled regex was dropped when the config reloaded. Recompile on reload so filtering keeps working.
Christian Rocha created
b07664e
chore: auto-update files
Charm created
81fbaca
chore(hyper): update endpoint to new one
Andrey Nering created
cfcffd2
fix(styles): fix some regressions where colors were incorrect
Christian Rocha created
09a1120
fix(ui): notification width and text truncation
Prior to this fix, notifications in the footer would not span the width of the window, and text truncation would often happen prematurely.
Christian Rocha created
9c4a316
chore(ui,styles): color edits and copyedits for the oAuth view
Christian Rocha created
8ebab21
chore(styles): clean up theme definitions
Christian Rocha created
64c47cb
fix(ui): restore 'update available' notification
Christian Rocha created
066fb5a
fix: remove unused build (#2734)
Bruno Krugel created
2be2024
fix(hyper): re-auth at selection time to ensure provider availability
Christian Rocha created
a4488ca
feat(ui): switch to hyper theme when provider hyper is chosen
Christian Rocha created
9d4653e
chore(styles): use hypercrush theme when hyper is selected
Christian Rocha created
e29353f
v0.63.0
Andrey Nering created
1495028
chore(deps): update fantasy and catwalk
Andrey Nering created
1948ca7
fix(ui/hooks): restore hook styling
Christian Rocha created
5dacf9e
docs(hooks): document new embedded shell model
Specifically, we describe the embedded-shell contract, Windows behavior, permissive shebang fallback, guaranteed CRUSH/AGENT env markers, and timeout hard-return semantics.
Christian Rocha created
3b3f992
feat(hooks): propagate CRUSH/AGENT env vars to builtin shell
Share CRUSH=1/AGENT=crush/AI_AGENT=crush between the bash tool's Shell and the hook runner so the two surfaces can't drift.
Christian Rocha created
22d6f44
feat(hooks): run via shell.Run instead of sh -c
Christian Rocha created
af002dc
fix(shell): ctx-aware jq builtin
This in necessary so hook timeouts can now interrupt long-running filters and large stdin reads for the builtin jq tool.
Christian Rocha created
2e8e536
feat(shell): shebang/binary/in-process dispatch handler
Christian Rocha created
f6ef43e
refactor(shell): extract stateless run entrypoint
This is necessary for sharing the builtin shell with hooks.
Christian Rocha created
ead1c28
chore(deps): bump goreleaser/goreleaser-action in the all group (#2728)
dependabot[bot] created
b0b9842
chore(deps): bump the all group with 6 updates (#2729)
dependabot[bot] created
e5611c3
docs(hooks): improve hook documentation
Christian Rocha created
b9fdf72
chore(hooks,skills): update crush-hooks skill per recent changes
Christian Rocha created
3cda50f
fix(ui): fix dialog box shift when session rename is active
Christian Rocha created
755f6fa
chore(ui): theme prep
Christian Rocha created
f686999
chore: auto-update files
Charm created
dc003bf
feat: PreToolUse hook (#2598)
Christian Rocha created
a7546ad
chore(tests): regression test for (lack of) disabled skills in the ui
Christian Rocha created
7a6149d
fix(ui): don't show disabled skills
Bruno Krugel created
fa13c7f
v0.62.1
Andrey Nering created
8ab740f
test: re-record vcr cassettes
Andrey Nering created
37daf0f
chore(deps): update fantasy and catwalk
Andrey Nering created
e5d95aa
fix(hyper): fix re-authorization flow not triggering on certain conditions (#2703)
We attempt to refresh tokens in two scenarios: * Pro-actively, when we expiration date passed before a request * Reactively, when we try a request but a 401 was returned The error / event handling that shows a dialog asking the user to re-authenticate is dependent on code that runs for the second scenario. This means that the dialog might not show on the first scenario, if refreshing the token fails. If refreshing a token fails, continue with the previous token. Let it fail and the 401 will trigger a re-authorization dialog. I caught this because I was switching between local vs. prod Hyper a lot.
Andrey Nering created
e5b5a40
Merge pull request #2692 from charmbracelet/hypercrush
chore(styles): overhaul style definitions
Christian Rocha created
81daa26
fix(styles): use semantic names in styles + drop deadcode
Christian Rocha created
4f3a308
chore(ui): formal hypercrush type treatment
Christian Rocha created
511916a
fix(ui): logo and grad arguments from earlier refactor
Christian Rocha created
7cbb1db
chore(ui): use Lip Gloss for color blends
Christian Rocha created
15f20e6
chore(ui): add new letterforms: h, y, p, e, with alts
Christian Rocha created
549f717
fix(agent): implement OnRetry logging with structured retry fields (#2700)
iceymoss created