Skip to content

Releases: choru-k/bex

Bex 0.10.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 07:45

Bex 0.10.0 makes Fix & Send the single correction workflow. Focused-field capture, standalone corrections, reopened History entries, and Claude Code, Codex, and OMP requests now share one review, disclosure, editing, and delivery path instead of splitting behavior across Fix & Send and Quick Check.

Changed

  • Pressing ⇧⌘P now opens Fix & Send for every manual correction. Supported editable fields are captured and revalidated; unsupported, empty, secure, or inaccessible targets fall back to a standalone copy workflow instead of stopping at a dead end.
  • The separate Quick Check window, menu route, shortcut, and duplicated implementation are removed. History entries reopen in standalone Fix & Send, and an in-progress draft must be explicitly kept or replaced.
  • Writing Style selection now happens before a correction is sent. The consent screen names the frozen style guidance together with the exact masked payload, destination, provider, and model.
  • Standalone Fix & Send owns draft restoration and Korean/English Look Up. Look Up results can still be saved deliberately to Study, while target-bound and integration sessions cannot retain unrelated standalone drafts.
  • Correction History now has one explicit local-storage choice for successful standalone, focused-field, and integration corrections. A legacy Disabled choice remains disabled; a legacy Quick Check opt-in is asked again before the broader history scope is enabled.
  • Settings now separates correction, Ask, and background-agent model choices while keeping a correction model as the default for jobs without an override.
  • Expression alternatives remain unranked, keyboard-selectable, and reusable by both correction sources. Chosen alternatives feed Study; accumulated correction evidence continues to inform the writer-level profile.
  • Privacy, empty-state, accessibility, and menu copy now describe the consolidated workflow and its actual delivery behavior.

Fixed

  • A canceled dictionary lookup can no longer clear or overwrite a newer lookup for the same term.
  • Deleting a saved draft now cancels and awaits any pending debounced write, so the draft cannot reappear.
  • Replacing an active Fix & Send draft waits for the old session to close before opening the requested History draft.
  • Global shortcut capture failures reliably open the standalone composer.
  • Protected technical spans, correction history writes, and Writing Style guidance stay frozen to the approved outbound request across asynchronous checks.

Required action

None. If you previously enabled Quick Check history, Bex will ask once before enabling the broader Correction History scope. The retired Quick Check command is replaced by Fix & Send (⇧⌘P).

Full changelog: v0.9.1...v0.10.0

Bex 0.9.1

Choose a tag to compare

@github-actions github-actions released this 14 Aug 04:19

Bex 0.9.1 fixes the menu-bar Study popover when a full 20-card session is due.

Fixed

  • The progress row now keeps one dash per card while shrinking the dashes to the space available in the 320pt popover header.
  • A 20-card row previously requested 476pt of width, which shifted and clipped the card, answer field, commands, and footer. The popover now remains fully visible and centered.
  • Short sessions keep the original larger progress dashes.

Required action

None.

Full changelog: v0.9.0...v0.9.1

Bex 0.9.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 03:49

Bex 0.9.0 redesigns the everyday correction-and-study loop around one fast review card and one Learn surface. Quick Check and Fix & Send now teach from the same corrected text without slowing or taking over the delivery path.

What changed

One review card everywhere

  • Quick Check and Fix & Send now share the same editable final message, one-line redline, unranked expression alternatives, ask thread, and collapsed Details section. Quick Check ends with Copy Correction; Fix & Send keeps its destination-specific delivery actions.
  • The final-message editor grows with its content from a three-line floor to 60% of the panel, then scrolls, instead of leaving short messages inside a large fixed box.
  • Expression alternatives can be picked with ⌘1 through ⌘9. Each host now states the correct skip action: ⏎ copies from Quick Check, while ⌘⏎ sends from Fix & Send.
  • Alternatives remain unranked and are never auto-applied. A deliberate pick creates a Study card without changing the correction.

Faster study flow

  • Bex now uses one primary window with Learn, Quick Check, History, Writing Styles, and Settings. Learn includes Deck, Suggestions, and Progress views; the menu-bar hub can answer the next due card in place, and a focused takeover mode removes navigation while drilling.
  • The post-send micro-drill is click-to-arm and never steals focus. One send earns one card; after answering, ⏎ or Esc closes it, while ⌥⏎ explicitly continues when more cards are due.
  • Keep/Toss no longer asks for judgment on every review. Toss appears only on first exposure and remains available from the card menu with ⌘⌫.
  • Correction, owner-picked, and ask-thread cards now use distinct source tints. First-run and zero-due states point to real data-generating actions instead of showing dead ends.

Models, profile, and background learning

  • Models can be selected per job, so correction, ask, background, and writing-profile work can use different models without moving the correction path.
  • The writing profile is visible and editable.
  • The background agent has an explicit switch, source availability, outbound approval, and a last-run receipt. Unsupported session sources stay visibly off rather than being read implicitly.

Privacy and correctness

  • Outbound consent renders masked spans as labeled, locked chips and keeps masking limits explicit.
  • Fix & Send disables smart dashes, smart quotes, and text replacement so technical text such as --dry-run remains literal and maskable.

Fixes and release confidence

  • Fixed drill takeover layouts that could hide the exit bar or progress, oversized default windows, malformed card-pile geometry, and an invisible ⌘/ target.
  • Scrolling checks now use window geometry rather than unreliable accessibility hit-testing.
  • Updated UI fixtures and screenshot baselines to assert that expression alternatives render in Quick Check, and recorded the redesign decisions and shipped behavior for future changes.

Required action

None.

Full changelog: v0.8.7...v0.9.0

v0.8.7

Choose a tag to compare

@github-actions github-actions released this 08 Aug 08:45

Full Changelog: v0.8.6...v0.8.7

v0.8.6

Choose a tag to compare

@github-actions github-actions released this 08 Aug 08:17

Full Changelog: v0.8.5...v0.8.6

v0.8.5

Choose a tag to compare

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

Full Changelog: v0.8.4...v0.8.5

v0.8.4

Choose a tag to compare

@github-actions github-actions released this 07 Aug 08:19

Full Changelog: v0.8.3...v0.8.4

v0.8.3

Choose a tag to compare

@github-actions github-actions released this 07 Aug 08:04

Full Changelog: v0.8.2...v0.8.3

v0.8.2

Choose a tag to compare

@github-actions github-actions released this 07 Aug 04:38

A tuning fix to the level profile Bex keeps about your English. Nothing you need to do.

What changed

The profile now aims at gaps you will actually be shown. Bex builds a short profile of your English in the background and passes it to the corrector so it can tell a typo from a real gap. The first profiles named articles and plurals among the top gaps — accurate, but wasted: those are exactly the categories Bex corrects silently and never explains. A third of the profile was spent describing something you would never be taught, and it worked against the rule telling the corrector to stay quiet about them.

Corrections that are only articles, plurals, or capitalization are now removed before the profile is built, so it is drawn only from gaps that reach you: verb tense and form, subject-verb agreement, prepositions, word order, and natural word pairings.

This changes nothing about what Bex corrects. Articles, plurals, capitalization, and punctuation are still fixed in every correction, exactly as before — they are simply no longer used to describe your level.

Required action

None. No new permissions, no integration re-approval, no migration. Your Study cards, review progress, and correction history are untouched.

Your profile refreshes on its own once a day, so the improvement appears with the next refresh rather than immediately. If you would rather not wait, deleting ~/Library/Application Support/Bex/LearningLog/writer-level.json makes Bex rebuild it at the next launch; nothing else depends on that file.

Full Changelog: v0.8.1...v0.8.2

v0.8.1

Choose a tag to compare

@github-actions github-actions released this 07 Aug 04:08

Bex now asks OpenAI Codex for its faster service tier, so checks come back sooner. One toggle, one behaviour change worth knowing about.

What changed

Codex checks are faster. A new Fast responses toggle sits beside the model and effort pickers in Settings → Model & Effort, visible when OpenAI Codex is your provider. It asks OpenAI for the priority service tier, which serves the same model at the same reasoning effort — just sooner.

Measured across 163 corrections taken from real usage, run twice:

before after
typical check 9.9s 8.3s
slowest 10% 16.7s 13.5s

What Bex actually corrects is unchanged — correction completeness, which mistakes it explains, and the alternatives it offers all measured the same within noise. That is the expected result rather than a disappointing one: the tier changes how quickly the model is served, not how it thinks.

Please check this

Fast responses is ON after you update, without being asked. Answering while you are still typing is the point of Quick Check, so it is the default — but OpenAI bills the priority tier as increased usage against your ChatGPT account, and Bex may run dozens of checks a day through Prompt Gate.

If your ChatGPT quota is tight, turn it off in Settings → Model & Effort → Fast responses. Turning it off restores exactly the previous behaviour: Bex then sends no tier at all and your account stays on whatever tier it already had.

This only affects the OpenAI Codex provider. API-key providers (OpenAI, Claude, Gemini) and local Ollama are untouched.

Everything else

No other required action. No new permissions, no integration re-approval, no migration. Your Study cards, review progress, and correction history are untouched.

Full Changelog: v0.8.0...v0.8.1