Skip to content

jarvisluk/Gocus

Repository files navigation

Gocus

Stable release Stable downloads Latest downloads Develop downloads

Download statistics count GitHub Release asset downloads only. Website clicks, repository clones, and updater checks are not included.

Gocus is a compact desktop Git companion that sits beside your editor and keeps the current repository, branch, worktrees, changed files, and recent commits visible without opening a full Git client.

It is designed for quick orientation: check what changed, search recent history, jump into another app, or start a safe branch, checkout, or merge action from the side panel.

Download

Download Gocus · View GitHub Releases · Open develop prerelease

Use the official website for the latest macOS and Windows builds. Use the develop releases only when you want an internal validation build from the develop channel.

Project links:

The screenshot below shows Gocus at its normal floating-panel size.

Gocus repository overview

What Gocus Helps With

  • See the active repository, folder path, and current branch at a glance.
  • Switch between all commits, the current branch, or a selected branch view.
  • Search commits by title, message, hash, author, branch, parent, or worktree text.
  • Keep linked worktrees visible, including cleanup hints for worktrees that are safe to remove.
  • Review changed files and open the repository or selected files in your preferred app.
  • Start branch, checkout, and merge actions from commit rows with confirmation before Git changes are made.
  • Tune appearance, refresh behavior, launch settings, update behavior, and external app shortcuts.

Get Started

  1. Download the macOS or Windows build from the official website.
  2. On macOS, unzip the app and move Gocus.app into /Applications.
  3. On Windows, install Git for Windows. Then download Gocus-...-win-... .zip, extract it, and run Gocus.exe.
  4. Click Open folder and choose a local Git repository.
  5. Pin the floating panel if you want it to stay above your editor.

If macOS blocks the app on first launch, open it from Finder with Control-click -> Open so Gatekeeper can confirm the app. If Windows SmartScreen warns on an unsigned Windows build, choose More info and run it only if you trust the source.

Codex Plugin (Preview)

Gocus also ships as a Codex plugin with a side-panel-friendly Git session launcher. From the native canvas you can start focused conflict-resolution, scoped commit, safe worktree-cleanup, or custom Git sessions with the current repository and branch already attached. Read-only repository tools supply the context, while the resulting agent turn performs any approved changes under normal Codex permissions. The plugin runs without Electron or the Gocus desktop app; the current MVP requires Codex, Git, and Node.js on the machine.

Install the plugin from the repository marketplace:

codex plugin marketplace add jarvisluk/Gocus --ref main
codex plugin add gocus@gocus

For a reproducible version, replace main with a release tag such as plugin-v0.1.0. Plugin releases use their own version and tag sequence; they do not create desktop GitHub Releases. See docs/release.md for the release flow.

Read The Panel

The header shows the selected repository, path, current branch, pin state, refresh action, and collapse button.

The view selector controls which commits are shown:

  • All shows the full local history returned by the app.
  • Current focuses on the currently checked-out branch.
  • Branch lets you choose a specific branch from the branch menu.

The worktree card shows the current worktree first. Open the worktree menu to inspect linked worktrees and cleanup status. Worktrees that are already merged, patch-equivalent, or prunable are marked as safe cleanup candidates.

Work With Commits

Use the commit list as a compact timeline:

  • Click a commit to select it and reveal available actions.
  • Use the search button beside the commit count to filter history.
  • Press Enter in search to select the first matching commit.
  • Press Escape to close search or return from nested settings pages.
  • Use commit row actions to create a branch, check out a commit or ref, or merge into the selected target branch.

Gocus opens confirmation dialogs for Git-changing actions. It also keeps merge behavior explicit, so you can choose whether merges should create merge commits in Settings.

Review Current Changes

The footer changed-files button shows how many files changed right now. Open it to inspect the changed-file list, then open the repository or a file in an enabled external app such as VS Code, Explorer/Finder, Terminal, Cursor, or Xcode.

Use the external-app picker in the footer to choose the default target for workspace actions.

Settings

Open Settings from the footer gear.

Settings are organized by task:

  • App controls automatic update checks and automatic update installation.
  • Appearance controls theme mode, light/dark presets, density, and font.
  • Graph controls commit graph line style.
  • Behavior controls auto refresh, launch at login, tray/menu bar icon, no-fast-forward merge behavior, and prompt language.
  • Workspace controls which external apps appear in open-in menus.

Tips

  • Keep Gocus pinned while working through a branch or review.
  • Use Refresh Git status after running Git commands outside the app.
  • Use worktree cleanup labels as a review aid before removing old worktrees.
  • If a branch action is unavailable, check whether that branch is already checked out in another worktree.

Run From Source

For local development:

npm install
npm run dev

npm run dev starts the Electron desktop app. To debug the Codex MCP App in a browser with the production MCP server, run:

npm run dev:mcp-app

The MCP App opens the directory where the npm command was started. Use the development toolbar to enter another absolute path or choose a folder with the system folder picker. You can also set the initial folder or port explicitly:

npm run dev:mcp-app -- /path/to/repository
GOCUS_REPO_DIR=/path/to/repository GOCUS_MCP_APP_PORT=43873 npm run dev:mcp-app

The development host watches the plugin, shared Git graph, and relevant Desktop styles, then rebuilds and reloads the canvas. Its settings are isolated under .cache/mcp-app/ unless GOCUS_CONFIG_PATH is provided.

Run the local quality gate before handing off changes:

npm run verify

This runs dependency audit, secret scan, lint, unit checks, UI smoke checks, and the production build.

Build and verify the independently installable Codex plugin:

npm run plugin:verify

Build the web bundle:

npm run build

Package a local macOS build:

npm run package:mac

Package a local Windows portable build from Windows:

npm run package:win

Package the full Windows installer/update set from Windows for internal candidate builds:

npm run package:win:release

Release details live in docs/release.md.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages