Skip to content

Releases: danted4/Code-Automata

v2.2.4

Choose a tag to compare

@github-actions github-actions released this 04 Feb 18:09
45a0b6d

Improvements

  • Curved icon everywhere (squircle) — The app now uses the same curved-radius icon on all platforms. build-dock-icon.js generates code-automata-dock.png and code-automata-dock-light.png from 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.js flattens nested .next/standalone when Next.js outputs a duplicated structure, so the packaged app always finds server.js in 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.js produces code-automata-dark.png (1024×1024); build-dock-icon.js produces the curved code-automata-dock.png used for the app icon, Windows/Linux, and dock. All builds run the dock-icon step so the curved asset exists before build-icons.js. public/**/* included in packaged app.

v2.2.3

Choose a tag to compare

@github-actions github-actions released this 04 Feb 15:26
645e0db

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 branch code-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\project on Windows, /mnt/projects on Linux).
  • Open in editor — "Open in Cursor/VS Code" now works when the project is outside the user's home directory. projectPath is 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 .ico and Linux PNGs generated via build-icons.js.
  • Broken symlinks — after-pack hook removes broken symlinks in packaged node_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.PATH so amp, 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.md for setup.
  • Checksums — SHA256 checksums generated and uploaded with release assets.
  • Manual trigger — workflow_dispatch for 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 setup
  • docs/RELEASE.md — Release process and GitHub Actions
  • docs/PACKAGED_APP.md — Packaged app considerations (PATH, Node resolution, platforms)

v2.2.2-beta-1

v2.2.2-beta-1 Pre-release
Pre-release

Choose a tag to compare

@danted4 danted4 released this 02 Feb 18:49

Release v2.2.2-beta-1

v2.1.0

Choose a tag to compare

@danted4 danted4 released this 01 Feb 08:07
d258f40

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/prompts for 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_URL set before starting the Next.js server so internal callbacks hit the correct port.
  • New docs/PACKAGED_APP.md documents 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 .md file to manual-qa-required/<subtask-id>.md for QA subtasks that require manual verification.
  • New qa-subtask-prompt.ts with isManualQASubtask and buildQASubtaskPrompt.
  • 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.ts updated to use ESM import instead of CommonJS require for tailwindcss-animate.
  • Port handling: scripts/dev.js extends 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.updatedAt is 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.html for 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

Choose a tag to compare

@danted4 danted4 released this 31 Jan 12:30
dbb4a0c

Release Notes

v2.0.1

Electron / Desktop App

  • Production build fix — Packaged app (DMG) now correctly detects production mode using app.isPackaged instead of NODE_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: true for recommended packaging; app size reduced.

Build & Metadata

  • package.json — Added description and author; build script now cleans dist-electron before building.
  • ESLint — Fixed unused variable in task-card.tsx catch block (error → _error).

Files Changed

  • electron/main.js — Production server logic, loading screen, port handling, window reopen behavior
  • package.json — Version 2.0.1, metadata, asar, build script
  • public/loading.html — New loading screen
  • src/components/kanban/task-card.tsx — Lint fix

Full Changelog: v2.0.0...v2.0.1

v2.0.0

Choose a tag to compare

@danted4 danted4 released this 31 Jan 06:43
c27ab8d

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_*.json or 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

Choose a tag to compare

@danted4 danted4 released this 30 Jan 19:49

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-Path header 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 visibilitychange listeners for more reliable loading.
  • Fixed API calls missing project context — All task-related fetch calls now use apiFetch, which sends the X-Project-Path header 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, and onPointerDown handlers to prevent event interception by dnd-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 — taskPersistence and projectDir are 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 --noEmit runs before commits to catch type errors early.
  • Scripts refactor — start and build scripts updated for a desktop-first workflow. icon:build runs before start to generate theme-aware dock icons.

Full Changelog: https://github.com/danted4/Code-Auto/commits/v1.0.0