Skip to content

Repository files navigation

PinkCode

PinkCode - Grok Desktop GUI

Effortless Parallel Tasks & Crystal-Clear Usage Visuals.

Screenshot · Features · Installation · Development · Architecture

Run multiple Grok Build tasks side by side, follow every task in a readable live timeline, and see where your credits and tokens go. PinkCode turns Grok Build's CLI workflow into a visual desktop workspace while keeping grok itself in charge: it connects over ACP (Agent Client Protocol) via stdio and does not run a separate agent loop.

Tauri 2 · React 19 · TypeScript · Rust

Screenshot

PinkCode — parallel tasks, live Timeline, usage, workspace

Features

PinkCode is centered on two things that are difficult to manage from a terminal alone: keeping several agent tasks moving at once and understanding their activity and cost at a glance.

FocusWhat PinkCode makes easier
Parallel tasksWork across multiple Grok Build sessions from one task board. Create, switch, prompt, and stop tasks independently; each task connects to grok over ACP when you first send a message. Existing sessions are loaded from ~/.grok (%USERPROFILE%\.grok on Windows).
Clear task activityRead user messages, agent responses, thoughts, tool calls, shell output, plans, and events in one live timeline. Subagent and background-task cards update live; attach/reconnect refills running work via ACP list APIs. Reconnect restores history from updates.jsonl.
Usage visualsSee weekly Grok credit usage with a per-product breakdown, a 7-day token-usage series from session logs, and live turn tokens/cost while a turn is running.

The rest of the interface keeps those parallel workflows practical:

AreaBehavior
File changesReview agent file hunks from hunk_records.jsonl.
Workspace & GitBrowse the project tree, preview text and images, and manage Git: branch status (ahead/behind), staged/unstaged lists, inline file diffs, per-hunk stage/unstage, and commit.
Modes & plansShift+Tab-style cycle aligned with Grok Build: Normal → Plan → Auto → Always-approve. Plan is orthogonal to permission mode; free-text send becomes /plan …. When the agent exits plan mode, review and choose Approve, Request changes, or Quit.
ModelSwitch the session model mid-task over ACP session/set_model.
PermissionsDefault (ask), Accept edits, Auto (classified by Grok), Bypass permissions, Don't ask. Per-task prefs in ~/.pinkcode/task_prefs.json. Handles tool permission, file writes, plan approval, and ask-user questions; the task list surfaces Needs input when a reverse-request is open.
UpdatesCheck GitHub Releases automatically on startup and optionally install an update in one click.

Installation

1. Install Grok Build

PinkCode requires the Grok Build CLI.

Windows (PowerShell):

irm https://x.ai/cli/install.ps1 | iex

macOS / Linux / WSL:

curl -fsSL https://x.ai/cli/install.sh | bash

By default, Grok stores its data under ~/.grok on macOS/Linux and %USERPROFILE%\.grok on Windows. Set GROK_HOME to use another location.

2. Install PinkCode

Download a prebuilt installer from GitHub Releases:

  • Windows x64: NSIS installer
  • macOS: Apple Silicon and Intel builds
  • Linux: build from source; CI installers are not available yet

Development

Prerequisites

macOSWindows 11Linux
Node24+24+24+
Ruststablestable (x86_64-pc-windows-msvc)stable
PlatformXcode CLTMSVC Build Tools + WebView2webkit2gtk (Tauri prerequisites)
Grok Buildinstalledinstalledinstalled

Windows toolchain (once):

winget install Microsoft.VisualStudio.2022.BuildTools --override "--wait --passive --norestart --add Microsoft.VisualStudio.Workload.VCTools --includeRecommended"
powershell -ExecutionPolicy Bypass -File scripts/windows-setup.ps1

Build and run

npm ci
npm run tauri:dev # development
npm run tauri:build # local installer under src-tauri/target/release/bundle/
npm run check # frontend + Rust (fmt/clippy/test) — same as CI

Env (optional)

VariableMeaning
GROK_BINPath to grok / grok.exe
GROK_HOMEGrok data root (default ~/.grok)

Architecture

UI (React 19 + TypeScript)
|-- invoke() --> Tauri commands
| sessions, agent lifecycle, permissions,
| billing, workspace FS, git status / hunk apply
|-- listen() <-- Tauri events
agent-* | sessions-changed
|
|-- AgentManager — N x `grok agent stdio` (ACP) + host permission gate
|-- Session index — FS watcher on ~/.grok/sessions (cards, hunks, stats)
|-- Billing — HTTP calls to Grok billing API (OIDC auth via ~/.grok/auth.json)

PinkCode communicates with Grok Build over ACP (JSON-RPC over stdio): prompts, session/set_mode, session/set_model, usage/recap extensions, and lifecycle notifications. The host-side permission gate intercepts reverse RPCs (session/request_permission, fs/write_text_file, x.ai/exit_plan_mode, x.ai/ask_user_question) and applies the configured risk policy before allowing or denying agent actions.

License

Copyright (c) 2026 3xian.

Licensed under the Apache License 2.0.

About

Desktop GUI for Grok Build: multi-session task board, live timeline, workspace browser, permission management, and usage dashboard.

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages