Skip to content

Releases: ShindouMihou/branchline

Branchline 0.5.0 — Optional auto-approval and cleaner AI settings

Choose a tag to compare

@ShindouMihou ShindouMihou released this 28 Oct 05:30
v0.5.0
a4fcf83

Optional auto-approval and a calmer AI workspace.

Approve your way

  • Manual approval remains the default for existing and new installations.
  • Opt into selected actions or broader session approval for one AI connection. Selected actions include staging files, ordinary commits, explicit branch pushes, and pull request creation or title/description edits.
  • Choose the current repository, browse for another local repository, or explicitly cover all repositories for the selected connection.
  • Review the scope and duration before enabling a rule. Rules expire after 15, 30 or 60 minutes, or when Branchline quits. Pause all or remove a rule at any time.
  • Whole requests are authorized together. Unsupported or dynamic command syntax still asks for manual review under selected-action rules. Broad session approval can authorize destructive commands and scripts; repository scope is a starting context, not a sandbox.
  • Preserve execution checks, preview revalidation and audit receipts. Automatic approval is recorded separately from manual approval and never implies command success. MCP clients cannot create or widen rules.

Cleaner AI settings

  • Compact connection rows open focused connection settings, with the full setup row clickable and disconnect actions tucked into a menu.
  • A two-step Add rule flow separates action selection from scope review and explicit consent.
  • Content-sized settings and confirmation dialogs, consistent dropdown spacing, and readable dark dropdown options.
  • Clearer Desktop notifications wording and quieter descriptive text throughout.

Simpler skills setup

  • Install or update skills for all detected, supported AI clients with one action. Instruction reminders have their own install-for-all action.
  • Compact rows, subtle Installed badges, detected-client names and one collapsed details section replace per-client installation choices.
  • Preserve custom instruction content and conflicting files. Show conflicts for manual attention rather than overwriting them.
  • Connection onboarding uses the same all-client installation approach. Skills and reminders guide AI behavior; they grant no Git permissions.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks stay quiet unless an update is available. After updating, start a new AI session to load updated guidance.

For a fresh installation:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Branchline 0.4.12 — PR edit previews and leaner builds

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 20:46
v0.4.12
54f5360

Clearer pull request updates and a lighter release workflow.

Pull request edit previews

  • Recognize gh pr edit and show its PR number, URL or branch target, explicit repository, new title, requested base change, and description.
  • Render supplied --body-file - / -F - input as Markdown for a single literal GitHub command. Empty input is distinct from missing input.
  • Preserve exact whole-command approval. Shell chains, pipelines and redirects do not claim that the supplied input reaches the PR unchanged.
  • Keep large descriptions out of the structured Markdown preview above 64 KB; the full command input remains available for inspection.
  • Display only requested edit fields, without inventing a source-branch change or fetching the existing PR.

Consistent standard-input design

  • Replace the plain browser disclosure with an icon-led row matching the request cards.
  • Label recognized PR descriptions as Description input, with character count and access to the exact raw text.
  • Keep generic input escaped, readable, keyboard-accessible, and collapsed by default. Activity receipts continue to omit raw stdin.

Automatic build-cache cleanup

  • Clean generated Rust debug and compiler caches after successful release preparation, retaining the app bundle, release assets, source and toolchain.
  • Check matching release metadata and ZIP checksum before cleanup. Refuse linked cache paths, overlapping output folders, and active Rust builds.
  • Provide npm run release:cleanup to retry cleanup if another build prevented it.
  • Expect the next Rust build to take longer while caches regenerate.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks stay quiet unless an update is available.

For a fresh installation:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 219 Rust tests, 87 frontend tests, 8 release-manifest and cleanup checks, 11 offline installer checks, 8 MCP protocol cycles, and the production build. Cleanup was checked against a retained app and all five release assets without changing their bytes.

Branchline 0.4.11 — Stable previews and smoother diffs

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 20:22
v0.4.11
1d44093

More reliable approval previews, clearer review stops, and smoother diff scrolling.

Stable command previews

  • Use a deterministic parsing work budget instead of a wall-clock deadline, so system load does not change which commands appear.
  • Generate action cards and warnings from the same shell analysis.
  • Keep whole-command approval and preview revalidation intact.

Clearer review messages

  • Explain the actual preview differences when approval stops: new or changed warnings, branch changes, file selections, PR descriptions, and execution context.
  • Retain the explanation in the request and activity record instead of claiming the repository changed for every mismatch.
  • Nothing executes from a stale request; ask the AI for a fresh request to review the changes.

Smoother diff scrolling

  • Contain sideways gestures and edge momentum inside the diff instead of letting the outer app move.
  • Batch wheel updates once per animation frame and avoid repeated layout measurements during gestures.
  • Preserve independent split-side scrolling, unified scrolling, native scrollbars, and vertical movement.
  • Rebind AI review scroll controls after measuring their updated dimensions, and clean up pending work when panels are replaced.

PR body-file support

  • Show Markdown PR descriptions from gh pr create --body-file PATH, --body-file=PATH, and -F PATH.
  • Support absolute temporary-file paths after shell guards, while retaining safe handling of relative paths.
  • Read bounded regular UTF-8 files up to 64 KB; reject symbolic links and special files. Explain missing or unavailable descriptions.
  • Recheck the current description at approval. It remains a file snapshot: earlier commands or later edits can change what GitHub CLI eventually reads.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks stay quiet unless an update is available.

For a fresh installation:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 212 Rust tests, 83 frontend tests, a 1,000-row browser diff with 150 contained scroll gestures, 8 MCP protocol cycles, 11 offline installer checks, 2 release-manifest checks, and the production build.

Branchline 0.4.10 — Git/GitHub-only guidance and a cleaner Changes toolbar

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 20:06
v0.4.10
68b8531

Keep Branchline approvals focused on Git and GitHub, with a cleaner Changes toolbar.

Git/GitHub-only approval guidance

  • Scope managed skills, injected Codex/Claude reminders, MCP initialization instructions, tool descriptions, and capabilities explicitly to consequential Git/GitHub effects.
  • Route unrelated services such as Convex, databases, deployments, and cloud administration through their normal tools and permissions, even for remote or sensitive operations.
  • Classify scripts and aliases by their effects. Inspect or clarify unknown commands instead of using Branchline as a general approval fallback.
  • Preserve direct execution for read-only queries, safe local Git work, and disposable isolated fixture tests.
  • Preserve whole-command approval for Git/GitHub workflows. Clarify user-supplied chains mixing gated Git/GitHub actions with unrelated service mutations before splitting or changing them.
  • Update previously installed, unchanged managed skills and opted-in instruction blocks automatically. Customized or unowned content is preserved.

These are agent-routing instructions. The shell executor does not statically sandbox arbitrary scripts or independently verify all effects.

Cleaner Stash changes placement

  • Move Stash changes into the file-filter row as a compact archive button.
  • Remove the extra toolbar row, align control heights, and keep an accessible name and tooltip.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks remain quiet unless an update is available. Restart existing AI sessions and reconnect their MCP connection after updating to load the new guidance and tool descriptions.

For a fresh installation:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 205 Rust tests, 78 frontend tests, 8 MCP protocol cycles, 11 offline installer checks, 2 release-manifest checks, skill validation, and the production build.

Branchline 0.4.9 — Stash management and focused approvals

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 19:51
v0.4.9
085230a

Save work for later, review your stashes, and keep AI approvals focused on consequential Git actions.

Stash management

  • Save all changes, selected files, or only unstaged changes while keeping staged work ready to commit, including partially staged files.
  • Opt in to new, untracked files. Ignored files stay excluded.
  • Browse stashes by name, branch and date; review saved changes and staging with syntax-highlighted diffs and supported image previews.
  • Apply or Pop with an optional staging restore. Pop removes a stash only after a successful restore; conflicts keep the stash available.
  • Confirm deletion and retain local recovery references. Detect stale files, branch changes and shifted stash selections before acting.
  • Capture both sides of selected-file renames without saving unrelated staged work.

More focused AI approvals

  • Run read-only queries, builds, isolated fixture tests and safe local operations directly.
  • Keep Branchline approval for commits in real repositories, pushes, PR/GitHub changes, destructive actions, history rewrites, and authentication/security or publication-destination changes.
  • Preserve whole-command approval for chains containing a gated action, and keep waiting for the actual result. A timeout never grants approval.
  • Update previously installed, unchanged managed skills and opted-in instruction blocks automatically. Customized or unowned instructions are preserved.

Preview regression coverage

  • Verify that guarded release chains keep their Stage, Commit, Push and Release cards, even after shell checks and substitutions. The current syntax parser handles this case; older installed apps need the update.

Clearer Changes sections

  • Make the entire Staged and Unstaged heading clickable to collapse or expand its files.
  • Keep the chevron, file count and accessibility state consistent, preserve keyboard focus, and retain collapsed state during refreshes.

Stash renaming, ignored-file inclusion, and saving changes inside submodules remain outside this workspace's current support.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks remain quiet unless an update is available. Restart existing AI sessions to load updated guidance.

For a fresh installation:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 205 Rust tests, 78 frontend tests, 11 offline installer checks, 2 release-manifest checks, and the production build.

Branchline 0.4.8 — Live command output and clearer previews

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 17:03
v0.4.8
c9c2300

Follow approved commands as they run, and review Git actions clearly even when a request starts with checks or setup commands.

Live command output

  • Show live standard output and diagnostics in the native request and Activity views, with a scrollable console that preserves your position while you read.
  • Keep the latest 128 KiB per stream for up to eight recent commands in app memory. Closing Branchline or clearing the associated activity removes this console history.
  • Keep console text out of MCP responses, persisted receipts, exports, and Copy for AI. Command output may contain sensitive information; it is visible only in the native app session.
  • Explain when no console output is available. Programs may buffer output or redirect it to log files; Branchline does not rewrite the approved command to intercept those files.

Clearer command previews

  • Use a pinned shell syntax parser to preserve recognizable Git and GitHub arguments after preparation commands, checks, environment assignments, and redirects.
  • Recognize supported literal env, command, and sh -c wrappers. Mark conditional bodies, pipelines, and nested shell actions as possible actions rather than guaranteed execution.
  • Add dedicated stash save/restore, rebase, and reset cards, including stash messages, untracked-file inclusion, literal rebase references, and reset modes.
  • Keep dynamic messages and destinations explicitly unresolved. Never evaluate substitutions or infer file contents from the wrong repository or directory.
  • Keep original failures distinct from later recovery requests. A successful recovery does not change the earlier request's recorded result.

Approval still covers the entire unchanged command. Structured cards describe requested arguments; arbitrary shell effects are not independently verified. Unsupported or runtime-dependent details remain visible as unknowns alongside the exact command.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks remain quiet unless an update is available.

For a fresh installation, or versions through 0.4.2:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 191 Rust tests, 73 frontend tests, the production build, and generated quoting/command-chain regressions. Publication also checks the offline installer and release manifest.

Branchline 0.4.7 — Native request alerts and reliable focus

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 15:11
v0.4.7
66b9ddc

Get a native alert when an AI request needs your review, and bring the right Branchline window forward reliably.

Improvements

  • Send a generic native OS notification for each new AI review request. Notification text contains no commands, repository names, paths, or source content.
  • Open the matching request and repository window when a notification is clicked. Clicking a notification never approves or executes a command.
  • Add a separate Native notifications control in Connections, enabled by default. Keep the existing auto-focus preference independent and preserve its saved value.
  • Reactivate hidden macOS apps, restore minimized windows, and focus the matching repository window when automatic review opening is enabled.
  • Remove the global ten-second focus throttle so closely spaced requests are not skipped. Repeated submissions of the same review remain silent.
  • Allow an explicit native notification click to reopen a dismissed review, including when the request was previously shown.
  • Allow background startup for notification-only configurations while still requiring an enabled connector and an authorized connection.

Notifications never grant approval. OS notification permissions and Focus/Do Not Disturb settings still control banner delivery. Review requests remain available in Branchline even when banners are suppressed.

Update

Choose Branchline → Check for Updates…, then Install & restart. Automatic checks remain quiet unless an update is available.

For a fresh installation, or versions through 0.4.2:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies. macOS may request folder access again after installing a rebuilt preview.

Includes a live hidden-window review check and confirmation that macOS receives notifications. Publication is gated on the full Rust, frontend, offline installer, and release-manifest checks.

Branchline 0.4.6 — Clearer command-chain previews

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 14:03
v0.4.6
e4d461d

Keep useful approval details visible when a command chain starts with dynamic checks.

Fixed

  • A shell substitution in a preflight check no longer hides structured previews for every later action in a safely separated command chain.
  • Show later literal stage, commit, push, pull-request, and release arguments while keeping unresolved checks grouped under exact-command review.
  • Keep primary-branch warnings visible for a later literal push to main or master, even when an earlier check contains a shell substitution.
  • Treat later working-directory state, current branch and file contents as unknown after an unresolved expression. Message and notes files are not read from an uncertain context.
  • Keep commands nested inside substitutions, comments, and quoted strings out of the action list. Ambiguous compound syntax continues to use exact-command review.

Previewing never executes substitutions or changes the command. Approval still covers the whole unchanged command, and execution records the actual process result.

Update

Choose Branchline → Check for Updates… and select Install & restart. Automatic checks remain quiet unless an update is available.

For a fresh installation, or versions through 0.4.2:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. The default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 173 Rust tests and the existing 68 frontend, 11 installer, and two release-manifest checks. Includes a regression for the release workflow that exposed this issue.

Branchline 0.4.5 — AI reminders and smoother diff scrolling

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 13:52
v0.4.5
8b1d4b2

Help your AI remember to use Branchline, and scroll through long source lines comfortably.

Improvements

  • Add an optional global instruction reminder during AI Skills setup and connector onboarding for detected default Codex and Claude Code profiles.
  • Preview the exact reminder and destination before installation. Managed sections use clear start/end markers, preserve surrounding instructions, and include local backups and confirmed removal.
  • Update previously opted-in, unchanged reminders when Branchline starts. Edited, unowned, or malformed sections stay untouched; removed sections are not silently restored.
  • Keep reminder instructions focused on whole-command review, waiting for the actual result, and treating timeouts as pending rather than approval.
  • Restore horizontal trackpad scrolling in whole-file previews. Split diffs also support horizontal gestures over either version in AI request reviews.

Instruction reminders guide the AI; they do not restrict separate terminal access. No global instructions are added until you opt in. Custom Codex profiles and profiles with AGENTS.override.md require manual integration.

Update

Choose Branchline → Check for Updates… in an updater-enabled version and select Install & restart. Automatic checks stay quiet unless an update is available; installation is always your choice.

For a fresh installation, or versions through 0.4.2:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 167 Rust tests, 68 frontend tests, 11 offline installer checks, two release-manifest checks, and a browser check of horizontal scrolling.

Branchline 0.4.4 — Quieter update checks

Choose a tag to compare

@ShindouMihou ShindouMihou released this 27 Oct 13:19

Update checks now stay out of your way unless a new version is available.

Improvements

  • Open the updater prompt only when an update is available. Checking, up-to-date results, and connection errors no longer open an updater modal.
  • Show a brief nonmodal result for manual checks. Automatic checks remain quiet.
  • Keep the automatic-check switch and manual check action directly in Appearance → App updates.
  • Handle delayed and cross-window check results without opening stale prompts.

Signed downloads and explicit Install & restart behavior remain unchanged. Automatic checks do not install updates.

Update

If you already use 0.4.3, choose Branchline → Check for Updates… and install this release inside the app.

For 0.4.2 or earlier, install an updater-enabled version once using the download below or the installer:

curl -fsSL https://raw.githubusercontent.com/ShindouMihou/branchline/main/scripts/install.sh | bash

Quit Branchline before running the installer. Its default destination is ~/Applications/Branchline.app.

Apple Silicon macOS 12 or later. This preview is ad-hoc signed and is not notarized; normal macOS security policy applies.

Validated with 158 Rust tests, 63 frontend tests, 11 offline installer checks, two release-manifest checks, and eight packaged MCP protocol checks.