Repository navigation
Releases: danted4/Code-Automata
Releases · danted4/Code-Automata
Release list
v2.2.4
Improvements
- Curved icon everywhere (squircle) — The app now uses the same curved-radius icon on all platforms.
build-dock-icon.jsgeneratescode-automata-dock.pngandcode-automata-dock-light.pngfrom the main icon (~22% rounded corners and zoom). This icon is used for the macOS app bundle (Finder, dock), dock/menu bar at runtime, Windows.ico, Linux PNGs, and fallback; the square icon is only an intermediate build step. - Next.js standalone build —
prepare-build.jsflattens nested.next/standalonewhen Next.js outputs a duplicated structure, so the packaged app always findsserver.jsin the expected location. - Node.js 18+ for packaged app — Main process prefers Node 18+ (required for Next.js 15), with nvm-aware ordering (newest first) and fallback to any installed version. Resolves correct binary when multiple Node versions exist.
- Server startup — Startup timeout increased to 45 seconds. On failure (node not found, wrong version, or timeout), the loading screen shows clear instructions to install Node 18+, add it to PATH, and restart the app.
- Release workflow — Manual "Run workflow" can accept a tag (e.g.
v2.2.4) to build and publish that release when tag push does not trigger. Note added that runs may appear 5–15 minutes after tag push.
Build & Release
- Icon pipeline — Single source
public/code-automata.png;build-mac-icons.jsproducescode-automata-dark.png(1024×1024);build-dock-icon.jsproduces the curvedcode-automata-dock.pngused for the app icon, Windows/Linux, and dock. All builds run the dock-icon step so the curved asset exists beforebuild-icons.js.public/**/*included in packaged app.
v2.2.3
New logo
- App and branding — New minimalist logo (flowchart-style icon: triangle, nodes, and arrow) used for the app icon, dock/taskbar, loading screen, and README. Single design used for both light and dark variants. Replaces previous logo assets.
Documentation
- Documentation and doc references updated across the repo for consistency.
New Features
- Multi-platform builds — Native builds for macOS (Intel & Apple Silicon), Linux (AppImage, deb, Flatpak), and Windows (NSIS, portable exe). Each platform builds on its own CI runner (no cross-compilation).
- Git worktrees — Complete worktree feature with sidebar integration. Per-task isolated worktrees in
.code-automata/worktrees/{taskId}with branchcode-automata/{taskId}. - 3 new themes — Additional theme options for the UI.
- App version display — Version number shown in the app UI.
- Custom prompts — Support for custom prompts with bug fixes.
Improvements
- Project path — Removed home-directory restriction. Any absolute path is now accepted (e.g.
D:\repos\projecton Windows,/mnt/projectson Linux). - Open in editor — "Open in Cursor/VS Code" now works when the project is outside the user's home directory.
projectPathis passed so worktrees under the project root are allowed. - CLI adapter order — Cursor CLI is first in the selection dropdown, followed by Amp, then Mock (dev mode only).
- Sidebar path display — Folder name displays correctly on Windows when paths use backslashes.
- README restructure — Three clear sections: Introduction, For Users (installation, platforms, assets), For Developers (build, scripts, docs). Table of contents with sub-headings.
- DMG/ZIP optimizations — Build output improvements for macOS disk images and archives.
- Platform-specific icons — Windows
.icoand Linux PNGs generated viabuild-icons.js. - Broken symlinks —
after-packhook removes broken symlinks in packagednode_modules(macOS, Linux, Windows). - Node resolution — Main process resolves Node binary from platform-specific paths (nvm, Volta, fnm, Homebrew, etc.).
- PATH augmentation — Packaged app merges common CLI paths into
process.env.PATHsoamp,agent,gh, etc. are discoverable.
Build & Release
- GitHub Actions — Platform-specific runners:
macos-15-intel(x64),macos-15(arm64),ubuntu-latest,windows-latest. - Code signing — Unset empty signing vars before build so electron-builder skips signing when secrets are not configured. See
docs/CODE_SIGNING.mdfor setup. - Checksums — SHA256 checksums generated and uploaded with release assets.
- Manual trigger —
workflow_dispatchfor dry-run builds without creating a release. - Changelog extraction — Release notes pulled from this file when present.
Bug Fixes
- Mock adapter — Clarified as available in dev mode only; packaged app exposes only Amp and Cursor.
- Git worktrees sidebar — E2E functionality fixes.
- Modal UI — Various fixes.
- Documentation — Updates to CODE_SIGNING, RELEASE, PACKAGED_APP, KANBAN_WORKFLOW, OVERVIEW.
Documentation
docs/CODE_SIGNING.md— macOS and Windows code signing setupdocs/RELEASE.md— Release process and GitHub Actionsdocs/PACKAGED_APP.md— Packaged app considerations (PATH, Node resolution, platforms)
v2.2.2-beta-1
Release v2.2.2-beta-1
v2.1.0
Release Notes ( v2.1.0 )
Features
Custom Prompts
- Plan Generation and Subtask Generation prompts are now user-editable in Settings.
- New prompt loader with placeholder replacement (
{{task.title}},{{task.description}}, etc.). - Default templates and system suffixes are defined in
src/lib/prompts/defaults.ts. - API route
GET/POST /api/promptsfor persisting custom prompts. - Settings page includes a "Custom Prompts" tab with editors for both prompt types.
Themes
- Three new themes: Retro, Ocean, Forest, Sunset (in addition to Dark and Light).
- WCAG contrast validation for theme color pairs.
- Theme integration tests and visual audit in e2e.
- Theme switcher in the sidebar for quick switching.
Kanban Workflow Restrictions
- Drag-and-drop restrictions on task cards:
- Cannot move from AI Review → In Progress
- Cannot move from Done → AI Review or In Progress
- Cannot move from Human Review → AI Review or In Progress
- In Progress and AI Review are treated as one-way states; use Planning/Replanning to redo work.
- Restrictions enforced in both the UI and the API (
PATCH /api/tasks/update).
Packaged App (DMG) Support
- Environment enhancement for packaged apps: PATH and env vars (
CURSOR_API_KEY,AMP_API_KEY) are loaded from the user's login shell. - Port range: If port 3000 is busy, the app tries 3001–3009 (extended to 3000–3049 in dev script).
NEXT_PUBLIC_APP_URLset before starting the Next.js server so internal callbacks hit the correct port.- New
docs/PACKAGED_APP.mddocuments packaged app considerations and checklist.
Kanban UX Improvements
- Task card messaging: More specific status messages during planning:
- "🤖 Generating questions..." when generating questions
- "🤖 Generating plan..." when generating plan
- "🤖 Generating subtasks..." when plan is approved and subtasks are being generated
- Auto-start AI Review: Dragging a task to "AI Review" automatically triggers the review agent when QA subtasks exist.
- Human Review modal: Separate loading states for Create MR, Open in Cursor, and Move to Done buttons (no more shared "Creating..." / "Opening..." on multiple buttons).
QA Subtask Handling
- Manual QA subtasks: Agents now write a single concise
.mdfile tomanual-qa-required/<subtask-id>.mdfor QA subtasks that require manual verification. - New
qa-subtask-prompt.tswithisManualQASubtaskandbuildQASubtaskPrompt. - Guideline in subtask generation: include "manual" in label/content for QA subtasks that need human verification.
Planning Artifacts Cleanup
- Planning artifacts (
implementation-plan.json,planning-questions.json) are cleaned from worktrees at transition points. - Cleanup runs after plan generation, before development, before AI review, before human review, and in related routes.
Bug Fixes
- Tailwind ESM:
tailwind.config.tsupdated to use ESMimportinstead of CommonJSrequirefortailwindcss-animate. - Port handling:
scripts/dev.jsextends port range to 3000–3049 and shows a clearer error when ports are in use. - Custom Prompts UI: "Reset to Default" and "Save" buttons in Settings use correct theme styling.
- Retry AI Review button:
task.updatedAtis set when transitioning to AI Review so the 15-second grace period for "Auto-starting QA…" works correctly. - Edit Task modal: Improved handling for blocked tasks and planning restart.
Documentation
- KANBAN_WORKFLOW.md: Step-by-step Kanban workflow guide with screenshots (00–12).
- PACKAGED_APP.md: Packaged app considerations, env handling, and feature checklist.
- README.md: Logo links to demo video; Release Assets section; links to new docs.
Infrastructure & DevEx
- Vitest: Unit tests for theme config and theme store.
- E2E: Theme integration and visual tests.
- Loading screen:
public/loading.htmlfor app startup. - Coming Soon: Placeholder pages for Agents, Tasks, GitHub, Worktrees, Memory.
File Summary
| Category | Files Changed |
|---|---|
| New docs | KANBAN_WORKFLOW.md, PACKAGED_APP.md |
| New components | coming-soon.tsx |
| New lib | prompts/loader.ts, prompts/defaults.ts, agents/qa-subtask-prompt.ts, agents/plan-generation.ts, worktree/cleanup.ts, themes/wcag-contrast.ts |
| New API | /api/prompts |
| Modified | board.tsx, task-card.tsx, human-review-modal.tsx, edit-task-modal.tsx, tasks/update route, start-development, start-planning, start-review, electron/main.js, scripts/dev.js |
Full Changelog: v2.0.1...v2.1.0
v2.0.1
Release Notes
v2.0.1
Electron / Desktop App
- Production build fix — Packaged app (DMG) now correctly detects production mode using
app.isPackagedinstead ofNODE_ENV, fixing the white screen on launch. - In-process Next.js server — Next.js runs inside the main Electron process instead of spawning a subprocess. Eliminates the extra "exec" icon in the Dock and permission prompts.
- Loading screen — Shows a branded loading animation while the app starts, instead of a blank window.
- Dynamic port selection — If port 3000 is in use, the app tries ports 3000–3009 and uses the first available one.
- Project persistence on reopen — When the window is closed (without quitting) and reopened from the Dock, the app reuses the same URL and preserves the selected project (no re-select prompt).
- ASAR packaging — Enabled
asar: truefor recommended packaging; app size reduced.
Build & Metadata
- package.json — Added
descriptionandauthor; build script now cleansdist-electronbefore building. - ESLint — Fixed unused variable in
task-card.tsxcatch block (error→_error).
Files Changed
electron/main.js— Production server logic, loading screen, port handling, window reopen behaviorpackage.json— Version 2.0.1, metadata, asar, build scriptpublic/loading.html— New loading screensrc/components/kanban/task-card.tsx— Lint fix
Full Changelog: v2.0.0...v2.0.1
v2.0.0
Release Notes
Review Locally
- Open in Cursor or VS Code — In the Human Review phase, you can open the task's worktree in Cursor or VS Code. The app detects which editors are installed and shows an IDE picker.
- IDE detection — Auto-detects Cursor (CLI or
/Applications/Cursor.app) and VS Code (CLI or/Applications/Visual Studio Code.app). Cursor is preferred when both are available. - Open in File Explorer — Opens the worktree folder in the system file manager (Finder, Explorer, etc.).
- Worktree path — Path is derived from project root +
.code-auto/worktrees/{taskId}. Success toast shows the path after opening. - Web fallback — When not running in Electron, Review Locally and Open in File Explorer are disabled with a "Use desktop app" message.
Planning & Development Workflow
- Task stays in planning until subtasks are ready — The task remains in the planning phase until dev + QA subtasks are generated and validated. It only moves to development once subtasks are successfully parsed.
- Fix-agent retry for plan JSON — If plan JSON parsing fails, a fix agent retries up to 2 times to repair the output before blocking the task.
- Fix-agent retry for subtask JSON — Same retry logic for subtask generation; up to 2 fix-agent attempts on parse/validation failure.
- Resume blocked tasks — For tasks blocked during plan generation (parse failure), the Edit Task modal shows a Resume button that re-parses the plan from logs and resumes the task.
Agent Prompts
- No file creation — All plan and subtask generation prompts now instruct agents: "Do NOT create or write any files in the workspace. Return only the JSON in your response." This prevents agents from creating
REVIEW_LOCALLY_*.jsonor similar files in the worktree.
Bug Fixes & UX
- No Start Review button flash — QA review auto-starts when dev completes. The Start Review button is no longer shown; the card shows "Auto-starting QA…" until the agent starts.
- Skip current button centered — The "Skip current" button in the task detail modal (in progress / QA) is now centered in the footer instead of aligned to the right.
Full Changelog: v1.0.2...v2.0.0
v1.0.0
What's Changed
Release Notes
Electron UI & Project Selection
Desktop App Experience
- Custom app icons — Code-Auto now displays custom icons in the macOS dock instead of the default Electron icon. Icons switch automatically between dark and light variants based on system theme.
- App branding — Application name set to "Code-Auto" for consistent identification in the dock and window title.
- Theme-aware dock icons — Dock icon updates dynamically when switching between light and dark mode.
Project Folder Selection
- Open Project on startup — On first launch (or when no project is selected), the app prompts you to choose a project directory. The selected path is persisted across sessions.
- Native folder picker — Uses the system’s native directory picker (via Electron IPC) for selecting project folders.
- Recent projects — Quick access to recently opened projects for faster switching between workspaces.
- Project-scoped operations — All tasks, worktrees, and agent logs are scoped to the selected project. The
X-Project-Pathheader is sent with API requests to ensure correct project context. - Open Project Gate — If you dismiss the project selection modal, it won’t reappear until the next session. You can still open a project anytime via the sidebar button.
Bug Fixes
Kanban Board & Task Loading
- Fixed greyed-out columns on startup — Added default CSS variables for all workflow phases so columns render correctly before data loads.
- Fixed task loading race conditions — Startup script now waits for the Next.js server and API to be ready before launching Electron. Task loading includes retry logic and
visibilitychangelisteners for more reliable loading. - Fixed API calls missing project context — All task-related
fetchcalls now useapiFetch, which sends theX-Project-Pathheader so the backend uses the correct project directory.
Blocked Task Editing
- Edit blocked tasks — Tasks that fail during planning (e.g., "Connection stalled") can now be edited and restarted. A new Edit Task modal lets you change the title, description, CLI tool, CLI configuration, and human review settings, then restart planning.
- Edit modal placement — Edit Task modal is rendered at the Kanban board level to avoid interference from drag-and-drop listeners on task cards.
- Form data persistence — Edit modal form fields no longer revert when the task store refreshes from polling; initialization runs only when the modal opens.
Modal & Button UX
- Fixed unresponsive Cancel/Close buttons — Cancel and Close (X) buttons in the Edit Task modal now work correctly. Added
type="button",stopPropagation, andonPointerDownhandlers to prevent event interception bydnd-kit. - Theme-aware buttons — Copy Logs, Cancel, and Close buttons in modals (planning logs, task detail, edit task, new task) now use theme-based CSS variables and adapt correctly to light/dark mode.
CLI Tools & Readiness UI
- Fixed CLI readiness layout shift — The CLI tool dropdown and readiness section (Amp/Cursor preflight) no longer cause layout jumps when loading. A wrapper reserves space for both from the first paint, and skeleton loaders are shown during adapter and readiness checks.
- Fixed Cursor model visibility — "composer-1" and "auto" models now appear in the Cursor model selection dropdown. Removed filtering that excluded these models and added them to fallback options.
Backend & API
- Fixed scope errors in start-development route —
taskPersistenceandprojectDirare now passed explicitly to helper functions (executeSubtasksSequentially,waitForSubtaskCompletion,startAIReviewAutomatically, etc.) instead of relying on closure scope.
Developer Experience
- ESLint & Prettier — Linting and formatting configured with ESLint 9 (flat config) and Prettier. Pre-commit hooks run lint-staged on staged files.
- TypeScript in pre-commit —
tsc --noEmitruns before commits to catch type errors early. - Scripts refactor —
startandbuildscripts updated for a desktop-first workflow.icon:buildruns beforestartto generate theme-aware dock icons.
Full Changelog: https://github.com/danted4/Code-Auto/commits/v1.0.0