parallel-code
Run Claude Code, Codex, and Gemini side by side — each in its own git worktree
File Explorer
Download Latest Version (.zip)- ci.yml
- release.yml
- FUNDING.yml
- commit-msg
- pre-commit
- pre-push
- electron-security.yml
- filesystem-safety.yml
- ipc-auth.yml
- extensions.json
- 128x128.png
- 128x128@2x.png
- entitlements.mac.plist
- icon-rounded.svg
- icon-squared.svg
- icon.icns
- icon.ico
- icon.png
- icon.svg
- logo-preview.html
- logo-text-squared.svg
- logo-text.svg
- Dockerfile
- architecture-overview.html
- keybindings.test.ts
- agents.test.ts
- agents.ts
- ask-code-minimax.test.ts
- ask-code-minimax.ts
- ask-code.ts
- channel-manifest.json
- channels.ts
- coverage.test.ts
- coverage.ts
- docker-config.test.ts
- env-file.test.ts
- env-file.ts
- eslint-quality-findings.test.ts
- eslint-quality-findings.ts
- git-adoption.integration.test.ts
- git-exclude.ts
- git-helpers.test.ts
- git-symlink-excludes.test.ts
- git-worktree.test.ts
- git.test.ts
- git.ts
- keybindings.ts
- persistence.ts
- plans.ts
- pr-checks.test.ts
- pr-checks.ts
- pty.test.ts
- pty.ts
- register-mcp.test.ts
- register.test.ts
- register.ts
- request-registry.test.ts
- request-registry.ts
- shared-types.ts
- steps.test.ts
- steps.ts
- system-fonts.ts
- tasks.ts
- trace.ts
- updater.ts
- validate.ts
- worktree-cleanup.test.ts
- worktree-cleanup.ts
- worktree-node-modules.test.ts
- worktree-node-modules.ts
- agent-args.test.ts
- agent-args.ts
- agent-frame-fixtures.ts
- atomic.test.ts
- atomic.ts
- client.ts
- config.test.ts
- config.ts
- coordinator-real-agents.integration.test.ts
- coordinator-real-pty.integration.test.ts
- coordinator-sequence.test.ts
- coordinator-test-harness.ts
- coordinator.test.ts
- coordinator.ts
- diff-format.test.ts
- diff-format.ts
- docker.integration.test.ts
- mcp-tool-list.test.ts
- mcp-tool-list.ts
- preamble.test.ts
- preamble.ts
- prompt-detect.test.ts
- prompt-detect.ts
- replay-cache.ts
- server.test.ts
- server.ts
- sub-task-preamble.ts
- types.ts
- validation.test.ts
- validation.ts
- coordinator-scoping.test.ts
- notes-route.test.ts
- pairing.test.ts
- protocol.ts
- ring-buffer.ts
- server-helpers.test.ts
- server-ws.test.ts
- server.ts
- prompt-detect.ts
- install-script.test.ts
- log.test.ts
- log.ts
- main.ts
- preload-allowlist.test.ts
- preload.cjs
- tsconfig.json
- user-shell.test.ts
- user-shell.ts
- vite.config.electron.test.ts
- vite.config.electron.ts
- ai-arena-mode.png
- best-video.gif
- diff-dialog-code-comments.png
- diff-dialog-plain.png
- islands-focus-view-l.png
- islands-focus-view-l2.png
- islands-focus-view.png
- islands-overview.png
- islands-plan-review.png
- longer-video.gif
- minimal-focus-view.png
- minimal-overview.png
- parallel-tasks.png
- showcase.mp4
- status-dot-tooltip-example.png
- workbench-focus-view.png
- workbench-overview.png
- check-coordinator-run.mjs
- check-coordinator-run.test.mjs
- fake-agent.mjs
- fix-node-pty-spawn-helper.mjs
- test-semgrep-filesystem-safety.mjs
- arena-battle.css
- arena-config.css
- arena-countdown.css
- arena-history.css
- arena-results.css
- arena-shared.css
- ArenaOverlay.tsx
- BattleScreen.tsx
- CommitDialog.tsx
- ConfigScreen.tsx
- CountdownScreen.tsx
- HistoryScreen.tsx
- merge.ts
- persistence.ts
- ResultsScreen.tsx
- store.ts
- types.ts
- utils.ts
- logo.svg
- AgentEnvFileEditor.tsx
- AgentSelector.tsx
- AskCodeCard.tsx
- autofire-tick.ts
- BranchCombobox.tsx
- BranchPrefixField.tsx
- ChangedFilesList.client.test.tsx
- ChangedFilesList.test.ts
- ChangedFilesList.tsx
- CloseTaskDialog.test.ts
- CloseTaskDialog.tsx
- CommitFilesPopover.tsx
- CommitNavBar.tsx
- CommitTreeOverlay.tsx
- CommitTreeView.tsx
- ConfirmDialog.tsx
- ConnectPhoneModal.test.ts
- ConnectPhoneModal.tsx
- CustomAgentEditor.tsx
- CustomThemeDialog.tsx
- dev-quality-finding-fixture.ts
- Dialog.tsx
- DiffViewerDialog.tsx
- EditableText.tsx
- EditProjectDialog.tsx
- extracted-components.test.ts
- FocusModeTaskIndicators.tsx
- HelpDialog.tsx
- HoldToQuit.tsx
- IconButton.tsx
- icons.tsx
- ImportWorktreesDialog.test.ts
- ImportWorktreesDialog.tsx
- InfoBar.tsx
- InlineInput.tsx
- merge-readiness.ts
- MergeDialog.tsx
- MergeReadinessPanel.test.ts
- MergeReadinessPanel.tsx
- NewTaskDialog.test.ts
- NewTaskDialog.tsx
- NewTaskPlaceholder.tsx
- PlanViewerDialog.tsx
- project-remove-confirmation.test.ts
- project-remove-confirmation.ts
- ProjectSelect.client.test.tsx
- ProjectSelect.tsx
- prompt-autosend-readiness.test.ts
- prompt-autosend-readiness.ts
- prompt-control.test.ts
- prompt-control.ts
- prompt-draft.test.ts
- prompt-draft.ts
- prompt-verify.test.ts
- prompt-verify.ts
- PromptInput.test.ts
- PromptInput.tsx
- PushDialog.tsx
- quality-finding-colors.ts
- QualityFindingCard.tsx
- QualityFindingSidebarItem.tsx
- RemoveProjectConfirm.tsx
- ResizablePanel.tsx
- review-navigation.test.ts
- review-navigation.ts
- review-types.ts
- ReviewCommentCard.tsx
- ReviewProvider.client.test.tsx
- ReviewProvider.test.ts
- ReviewProvider.tsx
- ReviewSidebar.test.ts
- ReviewSidebar.tsx
- ReviewSidebarPanel.tsx
- scrollCoordinatorIntoView.ts
- ScrollingDiffView.tsx
- SegmentedButtons.tsx
- SettingsDialog.tsx
- Sidebar.tsx
- SidebarFooter.tsx
- StatusDot.test.ts
- StatusDot.tsx
- SubTaskStrip.tsx
- SymlinkDirPicker.tsx
- task-commit-polling.test.ts
- task-commit-polling.ts
- TaskAITerminal.tsx
- TaskBranchAdoptionBanner.tsx
- TaskBranchInfoBar.test.ts
- TaskBranchInfoBar.tsx
- TaskChangedFilesSection.tsx
- TaskClosingOverlay.tsx
- TaskCurrentStateLine.test.ts
- TaskCurrentStateLine.tsx
- TaskNotesBody.tsx
- TaskPanel.tsx
- TaskShellSection.tsx
- TaskStepsSection.tsx
- TaskTitleBar.tsx
- TerminalBookmarks.tsx
- TerminalPanel.tsx
- TerminalSearchOverlay.tsx
- TerminalView.tsx
- TilingLayout.tsx
- UpdateButton.tsx
- WindowTitleBar.tsx
- types.ts
- defaults.test.ts
- format.test.ts
- resolve.test.ts
- defaults.ts
- format.ts
- index.ts
- match.ts
- presets.ts
- resolve.ts
- types.ts
- agent-args.test.ts
- agent-args.ts
- badgeStyle.ts
- bookmarks.ts
- branch-divergence.test.ts
- branch-divergence.ts
- branch-filter.test.ts
- branch-filter.ts
- branch-name.ts
- clean-task-name.test.ts
- clean-task-name.ts
- close-decision.test.ts
- close-decision.ts
- controlStyle.ts
- coordinator-limits.test.ts
- coordinator-limits.ts
- copy-text.test.ts
- copy-text.ts
- coverage-comparison.test.ts
- coverage-comparison.ts
- custom-theme-contrast.test.ts
- custom-theme.test.ts
- custom-theme.ts
- date.ts
- dialog-scroll.ts
- dialog-stack.test.ts
- dialog-stack.ts
- dialog.test.ts
- dialog.ts
- diff-context-gaps.test.ts
- diff-context-gaps.ts
- diff-review-lifecycle.test.ts
- diff-review-lifecycle.ts
- diff-selection.ts
- docker.test.ts
- docker.ts
- dragReorder.ts
- eslint-quality-findings.ts
- file-tree.ts
- focus-registration.ts
- focus-restore.ts
- focus-trap.ts
- fonts.ts
- fontScale.ts
- github-url.ts
- hold-to-quit.test.ts
- hold-to-quit.ts
- ipc.ts
- log.test.ts
- log.ts
- look.test.ts
- look.ts
- marked-shiki.ts
- monaco-theme.ts
- monaco-workers.ts
- os-appearance.ts
- path.test.ts
- path.ts
- plan-selection.ts
- platform.ts
- quality-findings.test.ts
- quality-findings.ts
- reduced-motion-styles.test.ts
- reducedMotion.test.ts
- reducedMotion.ts
- review-eviction.test.ts
- review-eviction.ts
- shell.ts
- shiki-highlighter.ts
- shortcuts.test.ts
- shortcuts.ts
- status-colors.ts
- symlink-candidates.ts
- task-current-state.test.ts
- task-current-state.ts
- terminalConstants.ts
- terminalDrop.test.ts
- terminalDrop.ts
- terminalFitManager.ts
- terminalInputPending.test.ts
- terminalInputPending.ts
- terminalLinks.test.ts
- terminalLinks.ts
- theme.test.ts
- theme.ts
- unified-diff-parser.test.ts
- unified-diff-parser.ts
- wheelZoom.ts
- window.ts
- apple-touch-icon.png
- icon-192.png
- icon-512.png
- icon-maskable-512.png
- icon.svg
- manifest.webmanifest
- AgentDetail.tsx
- AgentList.tsx
- api.ts
- App.tsx
- attention.test.ts
- attention.ts
- auth.test.ts
- auth.ts
- ConnectScreen.tsx
- index.html
- index.tsx
- NewTaskScreen.tsx
- PairScreen.tsx
- vite.config.ts
- ws.ts
- agent-select.ts
- agents.test.ts
- agents.ts
- appearance-mode.test.ts
- autosave.test.ts
- autosave.ts
- close-target.test.ts
- close-target.ts
- completion.ts
- coordinator-preamble.test.ts
- coordinator-preamble.ts
- core.test.ts
- core.ts
- desktopNotifications.test.ts
- desktopNotifications.ts
- focus.test.ts
- focus.ts
- focused-panel.ts
- keybindings.ts
- landing.ts
- mcpStatus.ts
- navigation.test.ts
- navigation.ts
- notification.ts
- notifications.test.ts
- persistence.test.ts
- persistence.ts
- pr-checks.test.ts
- pr-checks.ts
- project-cleanup.ts
- projects.test.ts
- projects.ts
- remote.ts
- remoteStatusSync.ts
- remoteTaskHandler.test.ts
- remoteTaskHandler.ts
- sidebar-attention.test.ts
- sidebar-attention.ts
- sidebar-order.test.ts
- sidebar-order.ts
- store.ts
- task-branch.ts
- tasks.test.ts
- tasks.ts
- taskStatus-git-refresh.test.ts
- taskStatus.test.ts
- taskStatus.ts
- terminals.ts
- test-helpers.test.ts
- test-helpers.ts
- types.ts
- ui.test.ts
- ui.ts
- updates.ts
- App.tsx
- focus-visible-styles.test.ts
- index.tsx
- keybinding-migration-notice.test.ts
- styles.css
- vite-env.d.ts
- .dependency-cruiser.cjs
- .gitignore
- .gitleaks.toml
- .npmrc
- .prettierignore
- .prettierrc
- CLAUDE.md
- eslint.config.js
- index.html
- install.sh
- knip.config.ts
- LICENSE
- package-lock.json
- package.json
- PRIVACY.md
- README.md
- tsconfig.json
- vitest.client.config.ts
- vitest.config.ts
# Installation Guide
1. Get the code
git clone https://github.com/johannesjo/parallel-code
Downloads the entire project code from GitHub to your computer.
cd parallel-code
Moves into the project folder you just downloaded.
2. Docker
Easy RecommendedPrerequisites
- Git Needed to download the project code from GitHub.
- Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker build -f docker/Dockerfile -t parallel-code .
Builds a runnable image based on the Dockerfile.
docker run -p 8080:80 parallel-code
Runs the built image as an actual container.
Run docker compose ps to check the containers are Up. If the README mentions a port, open http://localhost:PORT in your browser.
3. Node.js
EasyPrerequisites
npm install
Downloads and installs the libraries listed in package.json.
npm run dev
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
Pulled directly from this repo's README.
// repository documentation
Was this content helpful?
(0 ratings)
