claudeers.

🔓 unclaimed — this page was auto-generated from GitHub. Are you the creator?

Claim this page →
// Automation & Workflows

open-vibe-island

The open-source alternative to vibe-island, designed for heavy code agent users, supporting cc/codex/opencode, terminal/ghostty/cmux/kaku/iterm. 开源的vibe-isla…

// Automation & Workflows[ cli ][ api ][ desktop ][ claude ]#claude#agent#claudecode#code-island#codeisland#codex#gemini-cli#island#automationGPL-3.0$open-sourceupdated 12 days ago
Actively maintained
100/100
last commit 10 days ago
last release 10 days ago
releases 48
open issues 66
// install
git clone https://github.com/Octane0411/open-vibe-island

Open Island - agents in your menu bar

Open Island

Why pay for a closed-source app just to monitor your coding agents?
Open-source, local-first, native macOS companion for AI coding agents.

中文 | English

Download · Quick Start · Roadmap · Contributing

Open Island in action


What is Open Island?

Open Island sits in your Mac's notch (or top bar) and gives you a real-time control surface for your AI coding agents — session status, permission approvals, and instant jump-back to the right terminal. All without leaving your flow.

Think of it as an open-source Vibe Islandfree, local-first, and you own every bit of it.

You don't need to pay for a product you can vibe, since you are a vibe coder.

Why Open Island?

  • Open source — GPL v3, fork it, mod it, ship your own version
  • Local-first — No server, no telemetry, no account. Everything runs on your Mac
  • Native macOS — SwiftUI + AppKit, not an Electron wrapper
  • Multi-agent — One surface for Claude Code, Codex, Cursor, Gemini CLI, OpenCode, and more
  • Multi-terminal — Jump back to the exact terminal/IDE session in one click

Supported Agents & Terminals

10 agents: Claude Code, Codex, Cursor, Gemini CLI, Kimi CLI, OpenCode, Qoder, Qwen Code, Factory, CodeBuddy

15+ terminals & IDEs: Terminal.app, Ghostty, iTerm2, WezTerm, Zellij, tmux, cmux, Kaku, VS Code, Cursor, Windsurf, Trae, JetBrains IDEs (IDEA, WebStorm, PyCharm, GoLand, CLion, RubyMine, PhpStorm, Rider, RustRover)

Full compatibility table

Code Agents

AgentStatusDescription
Claude CodeSupportedHook integration, JSONL session discovery, status line bridge, usage tracking
Codex (CLI)SupportedHook integration (SessionStart, UserPromptSubmit, Stop by default; PreToolUse/PostToolUse parseable but not default), usage tracking
Codex Desktop AppSupportedHook integration + app-server JSON-RPC connection for real-time thread/turn lifecycle. Precise conversation jump via codex://threads/<id> deep-link
OpenCodeSupportedJS plugin integration, permission/question flows, process detection
QoderSupportedClaude Code fork — same hook format, config at ~/.qoder/settings.json
Qwen CodeSupportedClaude Code fork — same hook format, config at ~/.qwen/settings.json
FactorySupportedClaude Code fork — same hook format, config at ~/.factory/settings.json
CodeBuddySupportedClaude Code fork — same hook format, config at ~/.codebuddy/settings.json
CursorSupportedHook integration via ~/.cursor/hooks.json, session tracking, workspace jump-back
Gemini CLISupportedHook integration via ~/.gemini/settings.json, session tracking, fire-and-forget events
Kimi CLISupportedHook integration via ~/.kimi/config.toml [[hooks]], session tracking, permission flow (reuses Claude payload)

Terminals & IDEs

Terminal / IDESupport LevelDescription
Terminal.appFullJump-back with TTY targeting
GhosttyFullJump-back with ID matching
cmuxFullJump-back via Unix socket API
KakuFullJump-back via CLI pane targeting
WezTermFullJump-back via CLI pane targeting
iTerm2FullJump-back with session ID / TTY matching
tmux (multiplexer)FullJump-back with session/window/pane targeting
ZellijFullJump-back via CLI pane/tab targeting
VS CodeWorkspaceActivate workspace via code CLI
CursorWorkspaceActivate workspace via cursor CLI
WindsurfWorkspaceActivate workspace via windsurf CLI
TraeWorkspaceActivate workspace via trae CLI
JetBrains IDEsWorkspaceIDEA, WebStorm, PyCharm, GoLand, CLion, RubyMine, PhpStorm, Rider, RustRover
WarpFullPrecision tab jump via SQLite pane lookup + AX menu click

Other Features

FeatureDescription
Notch / top-bar overlayNotch area on notch Macs, top-center bar on others
SettingsHook install/uninstall, usage dashboard
Notification modeAuto-height panel for permission requests and session events
Notification soundsConfigurable system sounds, mute toggle
i18nEnglish, Simplified Chinese
Session discoveryAuto-discover from local transcripts, persist across launches
Auto-updateSparkle-based automatic updates
Signed & notarizedDMG packaging with Apple notarization

Quick Start

Option 1: Download

Grab the latest DMG from GitHub Releases — signed and notarized, ready to run.

Option 2: Homebrew

brew install --cask open-island

Upgrade later with brew upgrade --cask open-island.

Option 3: Build from source

git clone https://github.com/Octane0411/open-vibe-island.git
cd open-vibe-island
open Package.swift   # Opens in Xcode — hit Run

On first launch, Open Island auto-discovers your active agent sessions and starts the live bridge. Hook installation is managed from the Settings window inside the app.

Requirements: macOS 14+, Swift 6.2, Xcode

How It Works

Agent (Claude Code / Codex / Cursor / ...)
  ↓ hook event
OpenIslandHooks CLI (stdin → Unix socket)
  ↓ JSON envelope
BridgeServer (in-app)
  ↓ state update
Notch overlay UI ← you see it here
  ↓ click
Jump back → correct terminal / IDE

Hooks fail open — if Open Island isn't running, your agents continue unaffected.

Architecture details

Four targets in one Swift package:

TargetRole
OpenIslandAppSwiftUI + AppKit shell — menu bar, overlay panel, settings
OpenIslandCoreShared library — models, bridge transport (Unix socket IPC), hooks, session persistence
OpenIslandHooksLightweight CLI invoked by agent hooks, forwards payloads via Unix socket
OpenIslandSetupInstaller CLI for managing ~/.codex/config.toml and hook entries

See docs/architecture.md for the full system design.

Community

Join us on Discord for discussion, feedback, and faster issue resolution:

We welcome issues, pull requests, and new maintainers. See CONTRIBUTING.md to get started.

WeChat group (for Chinese-speaking users) WeChat group QR code

Report a Bug via Your Code Agent

Copy this prompt into your agent (Claude Code, Codex, etc.) to auto-generate a well-structured issue:

Click to expand
I'm having an issue with Open Island (https://github.com/Octane0411/open-vibe-island).

Please help me file a GitHub issue. Do the following:

1. Collect my environment info:
   - Run `sw_vers` to get macOS version
   - Run `swift --version` to get Swift version
   - Check if Open Island is running: `ps aux | grep -i "open.island\|OpenIslandApp" | grep -v grep`
   - Get the app version: `defaults read ~/Applications/Open\ Island\ Dev.app/Contents/Info.plist CFBundleShortVersionString 2>/dev/null || echo "unknown"`
   - Check which terminal I'm using

2. Ask me to describe:
   - What I expected to happen
   - What actually happened
   - Steps to reproduce

3. Create the issue on GitHub using `gh issue create` with this format:
   - Title: concise summary
   - Body with sections: **Environment**, **Description**, **Steps to Reproduce**, **Expected vs Actual Behavior**
   - Add label "bug" if applicable

Repository: Octane0411/open-vibe-island

Star History

Star History Chart

Contributors

open-vibe-island

Agent Parts

This section is written for agents.

The open-source macOS companion for terminal-native AI coding.

Open Island puts a lightweight control surface in your notch or top bar so you can keep an eye on live coding agents, follow session progress, and jump back to the right terminal without breaking flow.

Why This Product Exists

AI coding is becoming part of the daily development loop, but the surrounding control layer still too often means handing your machine over to a closed-source paid app.

Open Island takes the opposite approach:

  • Open source
  • Local first, no server dependency
  • Native macOS (SwiftUI + AppKit)
  • Built to support the terminal workflow, not replace it

Who It Is For

Developers who already live in the terminal and want a better way to work with coding agents on macOS without losing context.

Agent Integrations

  • Codex CLI — Hook-based integration. The Codex CLI managed installer installs SessionStart, UserPromptSubmit, and Stop by default to keep the terminal workflow low-noise. Open Island can parse richer Codex hook events such as PreToolUse and PostToolUse when configured manually, but those events are not part of the default managed installation. Codex file edits may use internal apply-patch paths, so file-edit approval should not be treated as guaranteed PreToolUse coverage. Reads 5-hour and 7-day account usage windows from local rollout files. Install/uninstall managed hooks from the Settings window or CLI.

  • Codex Desktop App — Detected via __CFBundleIdentifier; hook sessions tagged as isCodexAppSession so they follow desktop-app liveness (tied to NSWorkspace.shared.runningApplications rather than the CLI subprocess that exits after each turn). In addition to hooks, Open Island launches its own codex app-server subprocess and speaks JSON-RPC over stdio to receive live thread/started, turn/started, turn/completed, and thread/closed notifications. Clicking a session opens the exact conversation via the codex://threads/<id> URL scheme.

  • Claude Code — Hook-based integration via ~/.claude/settings.json. Discovers sessions from ~/.claude/projects/ JSONL transcripts. Persists and restores sessions across app launches. Managed status line bridge with opt-in installation. Reads cached 5-hour and 7-day usage windows.

  • OpenCode — JS plugin integration via ~/.config/opencode/plugins/. Plugin auto-installed on first launch. Receives session lifecycle, tool use, permission, and question events. Permission approval and question answering flows supported. Process detection via ps.

  • Qoder — Claude Code fork. Same hook format and events via ~/.qoder/settings.json. Use --source qoder with the hooks binary.

  • Qwen Code — Claude Code fork. Same hook format and events via ~/.qwen/settings.json. Use --source qwen with the hooks binary.

  • Factory — Claude Code fork. Same hook format and events via ~/.factory/settings.json. Use --source factory with the hooks binary.

  • CodeBuddy — Claude Code fork. Same hook format and events via ~/.codebuddy/settings.json. Use --source codebuddy with the hooks binary.

  • Cursor — Hook-based integration via ~/.cursor/hooks.json. Receives beforeSubmitPrompt, beforeShellExecution, beforeMCPExecution, beforeReadFile, afterFileEdit, and stop events. Session persistence across app launches. Workspace jump-back via cursor -r. Use --source cursor with the hooks binary.

  • Gemini CLI — Hook-based integration via ~/.gemini/settings.json. Receives SessionStart, PreToolUse, PostToolUse, Stop, and UserPromptSubmit events. Fire-and-forget (no block/deny). Use --source gemini with the hooks binary.

  • Kimi CLI — Hook-based integration via ~/.kimi/config.toml [[hooks]] array (Moonshot AI). Kimi's hook payload is byte-compatible with Claude Code, so Open Island reuses the Claude decode path and adds a dedicated TOML installer. Subscribes to SessionStart, UserPromptSubmit, Stop, Notification, PreToolUse, and PostToolUse. Requires the Kimi CLI Hooks Beta. Use --source kimi with the hooks binary. Manage installation from the Settings window, or via CLI:

    swift run OpenIslandSetup installKimi    # write [[hooks]] entries into ~/.kimi/config.toml
    swift run OpenIslandSetup statusKimi     # report whether managed hooks are present
    swift run OpenIslandSetup uninstallKimi  # remove managed entries, preserve user-authored [[hooks]]
    

Terminal Support

  • Terminal.app, Ghostty, cmux, Kaku, WezTerm, iTerm2, and Zellij — Full jump-back support with session attachment matching (cmux via Unix socket API, Kaku/WezTerm/Zellij via CLI pane targeting, iTerm2 via AppleScript session/TTY probe)
  • VS Code, VS Code Insiders, Cursor, Windsurf, Trae — Workspace-level jump via respective CLI (code -r, cursor -r, etc.)
  • JetBrains IDEs (IntelliJ IDEA, WebStorm, PyCharm, GoLand, CLion, RubyMine, PhpStorm, Rider, RustRover) — Workspace-level jump via IDE CLI launcher
  • Warp — Precision tab jump via SQLite pane lookup, pid-based sibling-tab disambiguation, and AX menu click

UI & Display

  • Notch overlay — On Macs with a built-in notch, the island sits in the notch area; on external displays or non-notch Macs, it falls back to a compact top-center bar
  • Settings — Hook install/uninstall, Codex/Claude usage dashboard, General, Display, Sound, Shortcuts, Lab (advanced), About
  • Notification mode — Auto-height notification panel for permission requests and session events
  • Notification sounds — Configurable system sounds (default: Bottle) with mute toggle
  • i18n — English and Simplified Chinese

Session Management

  • Live session visibility with expandable detail rows
  • Session state reducer (SessionState.apply) as single source of truth
  • Automatic session discovery from local transcript files and cache
  • Process discovery via ps/lsof for active agent matching

Architecture

Four targets in one Swift package:

TargetRole
OpenIslandAppSwiftUI + AppKit shell — menu bar, overlay panel, settings
OpenIslandCoreShared library — models, bridge transport (Unix socket IPC), hooks, session persistence
OpenIslandHooksLightweight CLI invoked by agent hooks, forwards payloads via Unix socket
OpenIslandSetupInstaller CLI for managing ~/.codex/config.toml and hook entries

Quick Start (Agent)

Build and run locally:

open Package.swift

Build a local .app bundle:

zsh scripts/package-app.sh

That script creates output/package/Open Island.app and output/package/Open Island.zip. Pass OPEN_ISLAND_SIGN_IDENTITY to sign the bundle. See docs/packaging.md for the full path, including notarization.

Connect Codex

Open the package in Xcode to run the macOS app target. On launch, the app restores its local cache, scans recent ~/.codex/sessions/**/rollout-*.jsonl files for existing Codex sessions, and starts the live bridge for new hook events.

The Settings window shows live Codex hook install status from ~/.codex, and can install or uninstall managed hook entries directly. Installs copy the helper into ~/Library/Application Support/OpenIsland/bin/OpenIslandHooks so repo renames do not break existing hooks.

swift build -c release --product OpenIslandHooks
swift run OpenIslandSetup install
swift run OpenIslandSetup status
swift run OpenIslandSetup uninstall

Connect Claude Code

Claude usage setup is available from the app's Settings window and remains opt-in. The bridge writes a managed statusLine.command to ~/.open-island/bin/open-island-statusline, caches rate_limits into /tmp/open-island-rl.json, and refuses to overwrite an existing custom status line automatically.

Repository Map

  • Start with docs/index.md for the current doc map.
  • Read docs/quality.md for the quality baseline and verification approach.
  • Read docs/hooks.md for all supported hook events, payload fields, and directive response formats.
  • Run scripts/harness.sh for automated checks (docs validation, tests, build).

Requirements

  • macOS 14+
  • Swift 6.2
  • Xcode (for the app target)

License

GPL v3

// compatibility

Platformscli, api, desktop
Operating systems
AI compatibilityclaude
LicenseGPL-3.0
Pricingopen-source
LanguageSwift

// faq

What is open-vibe-island?

The open-source alternative to vibe-island, designed for heavy code agent users, supporting cc/codex/opencode, terminal/ghostty/cmux/kaku/iterm. 开源的vibe-island替代品,为重度code agent用户设计,支持cc/codex/opencode, terminal/ghostty/cmux/kaku/iterm. It is open-source on GitHub.

Is open-vibe-island free to use?

open-vibe-island is open-source under the GPL-3.0 license, so it is free to use.

What category does open-vibe-island belong to?

open-vibe-island is listed under automation in the Claudeers registry of Claude-compatible tools.

0 views
1,550 stars
unclaimed
updated 12 days ago

// embed badge

open-vibe-island on Claudeers
[![Claudeers](https://claudeers.com/api/badge/open-vibe-island.svg)](https://claudeers.com/open-vibe-island)

// retro hit counter

open-vibe-island hit counter
[![Hits](https://claudeers.com/api/counter/open-vibe-island.svg)](https://claudeers.com/open-vibe-island)

// reviews

// guestbook

0/500

// related in Automation & Workflows

🔓

The agent that grows with you

// automationNousResearch/Python211,605MIT[ claude ]
🔓

The API to search, scrape, and interact with the web at scale. 🔥

// automationfirecrawl/TypeScript143,720AGPL-3.0[ claude ]
🔓

🌐 Make websites accessible for AI agents. Automate tasks online with ease.

// automationbrowser-use/Python103,709MIT[ claude ]
🔓

An open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message…

// automationbytedance/Python76,016MIT[ claude ]

// built by

→ see how open-vibe-island connects across the ecosystem