Every agent. One desk. A calm macOS workspace for Claude Code, Codex and friends. Projects, terminals, files, git and chat in one window, and the right account for every project. Download for macOS · Website · Report an issue The screenshot follows your GitHub theme. Switch between light and dark to see both. Runs the agents you already use Desk runs the command-line tools you already have installed and signed in. It never stores or sends your tokens. Highlights Make it yours Desk opens in Electric: Midnight #02070A, Electric Blue #0297DE and a touch of Cantaloupe #FC734D, with serif headings, pill buttons and an animated pixel-wave backdrop on Home. The four pixel themes are Electric, Electric Light, Ember and Aurora. Turn the animation off from the sidebar or Settings ▸ Appearance. It always stays still when Reduce motion is on. From Terminal: curl -fL https://github.com/s-nish/desk/releases/latest/download/Desk.dmg -o ~/Downloads/Desk.dmg && open ~/Downloads/Desk.dmg Or by hand: download Desk.dmg from the latest release. Then drag Desk to Applications, and install and sign in to the agents you use, such as claude or codex. Desk picks them up on launch. Desk isn't notarized yet. If you downloaded it in a browser, macOS asks on first launch: open System Settings ▸ Privacy & Security and choose Open Anyway. The Terminal command above skips that prompt. The release is built for Apple silicon. On an Intel Mac, build from source. How accounts work An account is a config folder. Desk sets the right folder for every terminal and chat it opens. Desk finds existing folders on launch. Add account creates a new folder and runs the tool's own sign-in inside it. To show which email is signed in, Desk reads that one field locally: oauthAccount.emailAddress from .claude.json, and only the email claim from Codex's auth.json. Important Pull requests are untrusted code. When you check out or review someone else's pull request, Desk asks first and marks the worktree untrusted. Agents there start without the branch's own settings, hooks and MCP servers (--setting-sources user --strict-mcp-config), in plan mode for Claude Code and a read-only sandbox for Codex. Shortcuts Drop folders on the window to add projects. Drop files on a terminal to paste their paths. Workspace Home appears whenever nothing is open: every project as a card with one-click Claude Code, Codex and Shell sessions, plus recent conversations. Recovery restores open files, unsaved buffers, tab selection and split layout. Changed files on disk show a conflict before overwrite. Terminal tabs restore as restart cards. Tab order: drag tabs to reorder, or focus one and use ⌥ ⇧ ← / →. Esc cancels a drag. Split panes: click a pane to target it, drag the divider or use its arrow keys to resize. Source control covers the repository root, including when the project is a subfolder. Unsaved editor buffers are not included in commits. Project search respects ignore files and skips binary files and build folders. Replace previews every change and skips dirty buffers. Terminal 12 original palettes plus 6 neutral ones, individual colour overrides and smooth scrolling. Text contrast is corrected to 7:1 where xterm supports it. 20,000 lines of history. Incoming output never moves you to the bottom; use Latest output or ⇧ End to return. Eight file colour themes: Match Desk, VS Code Dark, GitHub Dark, Dracula, Nord, GitHub Light, Solarized Light and Monochrome. Syntax highlighting follows filenames, with lazy-loaded support for many languages. Appearance 24 themes, or match your system. Comfortable or compact spacing, panel visibility and optional account colours. Preferences are saved on this Mac. Requires Rust (rustup) and Node 20+. npm install npm run tauri dev # live-reloading dev build npm run tauri build # release Desk.app and .dmg in src-tauri/target/release/bundle cd src-tauri && cargo test # backend tests App state is saved to ~/Library/Application Support/Desk/state.json. npm run build npm run test:backend npm run dev -- --host 127.0.0.1 --port 1421 # In another terminal (uses an installed Chrome, isolated data, mocked IPC): npm run test:ui npm run test:appearance Set CHROME_PATH to use a different Chrome, or DESK_TEST_URL for a different dev-server address. The UI smoke test covers restoration, split panes, search and replace, Git controls, the command palette and quit-time persistence. Appearance checks cover theme contrast, system theme changes, terminal palettes, scrollback and alternate-screen navigation. Claude, Codex, Gemini, Cursor, Grok, OpenCode and GitHub are trademarks of their owners. Desk is independent and not affiliated with them. Logos from Lobe Icons (MIT).
AI NEWS JOURNAL
Hacker News Show HNAI NEWS / JOURNAL
Show HN: Desk - Open-source macOS workspace for CLI coding agents
Article URL: https://github.com/s-nish/desk Comments URL: https://news.ycombinator.com/item?id=50430522 Points: 1 # Comments: 0
翻訳サービスが停止中のため原文を表示しています。