1860 Commits

Author SHA1 Message Date
Cody Seibert
a8a63f4bed Merge branch 'main' of github.com:webdevcody/automaker 2025-12-10 11:47:43 -05:00
Cody Seibert
5e418984ad feat(feature-list-protection): implement multi-layered protection strategy for feature list
- Removed the `FEATURE_LIST_PROTECTION.md` documentation file as the protection strategy has been fully implemented.
- Updated the `.automaker/feature_list.json` to an empty array to prevent accidental data loss.
- Enhanced the context management and prompt generation to include critical warnings and memory content for agents.
- Added validation, auto-backup, and access control mechanisms to safeguard the feature list from direct modifications.

These changes ensure robust protection against data loss and improve the overall safety of feature management within the application.
2025-12-10 11:24:07 -05:00
Kacper
9924187747 Merge pull request #2 from webdevcody/feat/extend-models-support
feat: Extend models support with AI profiles, Codex integration, and worktree isolation
2025-12-10 15:43:03 +01:00
Kacper
f1ace07b6c Merge remote-tracking branch 'origin/main' into feat/extend-models-support 2025-12-10 15:42:49 +01:00
Cody Seibert
a28d2f5cfe refactor(description-image-dropzone, app-store): update styling and enhance project history cycling logic
- Changed button styling in the DescriptionImageDropZone component to use primary color classes for better visual consistency.
- Improved project history cycling logic in the app store by filtering out invalid projects, ensuring smoother navigation through valid project history.

These changes enhance the user interface and improve the reliability of project navigation within the application.
2025-12-10 09:41:46 -05:00
Cody Seibert
3d6add5272 feat(agent-runner, session-management): enhance markdown formatting and session hotkey functionality
- Added a React library for proper markdown formatting in the Agent Runner, improving the display of session messages.
- Changed the hotkey for creating a new session from "W" to "N" to ensure consistency across new feature buttons.
- Updated the feature list to include new entries for these enhancements, along with a detailed implementation roadmap in the project specification.

These changes improve user experience by enhancing message readability and streamlining session management.
2025-12-10 09:20:00 -05:00
Kacper
09658dc383 Merge remote-tracking branch 'origin/main' into feat/extend-models-support 2025-12-10 15:08:54 +01:00
Kacper
d59fde5c95 feat(ui): add keyboard shortcuts for AI profiles navigation
- Add M shortcut to navigate to AI Profiles from sidebar
- Add N shortcut to create new profile in profiles view
- Display keyboard shortcut indicators in UI

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 15:04:38 +01:00
Kacper
02eeb1031e Merge remote-tracking branch 'origin/main' into feat/extend-models-support 2025-12-10 14:57:37 +01:00
Cody Seibert
1766357335 feat(sidebar, app-store): enhance project history management with dropdown menu
- Replaced project cycle buttons in the sidebar with a dropdown menu for improved UI and accessibility.
- Added a new `clearProjectHistory` action to the app store, allowing users to clear project history while retaining the current project.
- Updated the sidebar component to integrate the new dropdown menu, providing options to cycle through previous and next projects, as well as clear history.

These changes streamline project navigation and enhance user experience within the application.
2025-12-10 08:56:22 -05:00
Cody Seibert
72cc43d02f feat(feature-suggestions): implement feature suggestions and spec regeneration functionality
- Introduced a new `FeatureSuggestionsService` to analyze projects and generate feature suggestions based on the project structure and existing features.
- Added IPC handlers for generating and stopping feature suggestions, as well as checking their status.
- Implemented a `SpecRegenerationService` to create and regenerate application specifications based on user-defined project overviews and definitions.
- Enhanced the UI with a `FeatureSuggestionsDialog` for displaying generated suggestions and allowing users to import them into their project.
- Updated the sidebar and board view components to integrate feature suggestions and spec regeneration functionalities, improving project management capabilities.

These changes significantly enhance the application's ability to assist users in feature planning and specification management.
2025-12-10 08:51:33 -05:00
Kacper
e210d676c1 fix(profiles): enable drag-and-drop reordering for built-in profiles
Wrap built-in profiles section with DndContext and SortableContext
to allow reordering of pre-configured profiles, matching the behavior
available for custom profiles.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 14:46:45 +01:00
Kacper
fff8a6398f feat(ui): improve git diff panel with grouped file status display
Replace individual file status badges with grouped status summaries showing count and icon for each file type (modified, untracked, etc.). This improves UX when dealing with large changesets by reducing visual clutter.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 14:22:35 +01:00
Kacper
1ea18b779e feat(ui): add profiles-only mode to simplify model selection
Adds a new setting to show only AI profiles by default, hiding advanced
model tweaking options (Claude SDK, thinking levels, Codex) for a cleaner
UI. Users can toggle advanced options when needed via "Show Advanced" button.

- Added showProfilesOnly setting in app store and settings view
- Modified board-view dialogs to conditionally hide advanced options
- Added toggle buttons to temporarily show advanced options in both
  add and edit feature modals
- Enhanced settings view with proper icons and descriptions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 14:13:13 +01:00
Kacper
55b8e6858e feat(types): resolve TypeScript errors and enhance project analysis features
- Fixed TypeScript errors across the codebase, including updates to various files for improved type safety.
- Introduced new `FileTreeNode` and `ProjectAnalysis` interfaces to support project analysis functionality.
- Added `Badge` component for UI consistency and improved visual representation.
- Enhanced `useElectronAgent` and `electron` API with additional methods for project management.
- Updated `AnalysisView` to utilize new types and improve type annotations for better clarity.

These changes contribute to a more robust and type-safe codebase, facilitating future development and analysis capabilities.
2025-12-10 13:56:33 +01:00
Kacper
7ab2aaaa23 feat(worktree): enhance worktree management and git diff functionality
- Integrated git worktree isolation for feature execution, allowing agents to work in isolated branches.
- Added GitDiffPanel component to visualize changes in both worktree and main project contexts.
- Updated AutoModeService and IPC handlers to support worktree settings.
- Implemented Git API for non-worktree operations, enabling file diff retrieval for the main project.
- Enhanced UI components to reflect worktree settings and improve user experience.

These changes provide a more robust and flexible environment for feature development and testing.
2025-12-10 13:41:52 +01:00
Kacper
02b3275460 Merge branch 'feat/worktree-system' into feat/extend-models-support 2025-12-10 13:20:14 +01:00
Kacper
d809ddcc7f Merge branch 'feature/176536627888-implement-profile-view-and-in-the-sideba' into feat/worktree-system 2025-12-10 13:14:08 +01:00
Kacper
6970578536 feat(profiles): implement AI profile management system
Add new profiles view component with sidebar integration and state management for AI provider profiles. Users can now create and manage custom AI profiles for different tasks (e.g., heavy-task with Claude Opus, debugging with Codex).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 13:09:20 +01:00
Kacper
1210dbb8ef feat(kanban): add tooltips to kanban cards and improve layout
- Add @radix-ui/react-tooltip dependency
- Implement tooltip component for better UX
- Add tooltips to branch badges with full branch names
- Convert revert button to icon-only with tooltip
- Improve button layout and spacing in waiting_approval cards
- Update feature statuses and add new profile feature

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 13:08:26 +01:00
Kacper
a78b6763de feat(core): implement git worktree checkpoint system
Add comprehensive worktree management system to enable task isolation and rollback capabilities. This allows users to revert agent changes if they don't satisfy requirements or break functionality.

Key components:
- New WorktreeManager service for branch and worktree operations
- GitDiffPanel component for visualizing changes
- Enhanced UI components with worktree integration
- Auto-mode service enhancements for worktree workflow

Modified files: worktree-manager.js, git-diff-panel.tsx, main.js, preload.js, feature-loader.js, agent-output-modal.tsx, board-view.tsx, kanban-card.tsx, electron.ts, app-store.ts, electron.d.ts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 12:28:13 +01:00
Kacper
364adeb151 refactor(kanban): enhance layout and overflow handling in KanbanCard component
- Updated CardHeader to use a block layout and added conditional padding for better spacing.
- Modified title and description elements to handle overflow, ensuring text remains within bounds.
- Improved agent info panel layout with flex-wrap for better responsiveness.
- Enhanced summary section with overflow handling and consistent spacing for a cleaner UI.

These changes improve the overall presentation and usability of the KanbanCard component.
2025-12-10 12:06:36 +01:00
Kacper
c8f87d0dbb fix(kanban): persist image previews when switching tabs in Add Feature modal
Lifts image preview state up to parent components to prevent loss of preview
thumbnails when switching between tabs. Added previewMap/onPreviewMapChange
props to DescriptionImageDropZone for parent-controlled state management.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 11:38:27 +01:00
Kacper
18604078a6 feat(mcp): implement MCP server integration for Codex CLI
- Added a new CodexConfigManager to manage TOML configuration for MCP server settings.
- Introduced MCP server IPC handlers in main.js to facilitate feature status updates.
- Enhanced CodexExecutor and FeatureExecutor to configure and utilize MCP server settings.
- Created a standalone MCP server script for JSON-RPC communication with Codex CLI.
- Updated model-provider to pass MCP server configuration to the executor.

These changes enable seamless integration of the MCP server with Codex CLI, improving feature management and execution capabilities.
2025-12-10 10:56:47 +01:00
Kacper
379e5fc727 feat(settings): add navigation entries for Claude and Codex sections
Added Claude and Codex navigation items to sidebar and implemented
scroll-to functionality with proper id attributes and scroll margins.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 10:37:51 +01:00
Kacper
03f473e7c2 feat(auth): improve authentication error handling for Claude SDK
- Enhanced error messages in FeatureExecutor and ClaudeProvider to provide clearer guidance on missing authentication.
- Added checks for Claude CLI installation status to inform users if they need to authenticate via CLI or set environment variables.
- Improved fallback error messages to ensure users receive relevant instructions regardless of the authentication method.

These changes enhance user experience by providing more informative feedback regarding authentication issues.
2025-12-10 10:36:40 +01:00
Kacper
ba4cde7328 Merge main into feat/extend-models-support
Resolved conflicts:
- feature_list.json: Merged all features from both branches
- feature-loader.js: Included both model/thinkingLevel and error fields
- board-view.tsx: Merged model/thinkingLevel and error fields, kept currentProject check
- settings-view.tsx: Merged CLI status checks with navigation/scroll code
- app-store.ts: Included both model/thinkingLevel and error fields in Feature interface

Fixed linting errors in settings-view.tsx
2025-12-10 10:25:13 +01:00
Cody Seibert
e9a4dd0319 feat(sidebar, settings): enhance project management and UI navigation
- Removed trash functionality from the sidebar component, including the associated button and event handlers.
- Added a new "Danger Zone" section in the settings view for project deletion, featuring a confirmation dialog.
- Implemented smooth scrolling and active section highlighting in the settings sidebar for improved navigation.
- Updated various UI elements for better consistency and responsiveness.

These changes streamline project management and enhance user experience within the application.
2025-12-09 23:07:40 -05:00
Cody Seibert
6c7f39c9f7 Merge branch 'main' of github.com:webdevcody/automaker 2025-12-09 22:48:59 -05:00
Cody Seibert
229df2ee29 feat(icon): update application icon and references
- Changed application icon from `icon_gold.png` to `logo.png` across package.json, main.js, and relevant components.
- Updated image source paths in Sidebar and WelcomeView components to reflect the new logo file.

This update standardizes the icon used throughout the application, enhancing visual consistency.
2025-12-09 22:48:58 -05:00
Web Dev Cody
368e293bde Merge pull request #1 from webdevcody/trachcan-option
feat(sidebar): implement trash functionality for project management
2025-12-09 22:48:01 -05:00
SuperComboGamer
d014a0ba4f feat(sidebar): implement trash functionality for project management
- Added a new `trashItem` method in the Electron API to move projects to the system trash.
- Enhanced the sidebar component to include a trash button and manage trashed projects.
- Implemented functionality to restore and permanently delete projects from the trash.
- Updated the application state to track trashed projects and provide user feedback through toast notifications.

This update significantly improves project management by allowing users to easily manage deleted projects without permanent loss.
2025-12-09 22:37:04 -05:00
Kacper
4b55390a01 fix(agent-context-parser): update model version strings for consistency
- Updated the model version strings for Sonnet and Haiku to reflect the correct versions (Sonnet 4.5 and Haiku 4.5).
- Ensured consistency in model naming conventions within the formatModelName function.

This change improves clarity and accuracy in model representation.
2025-12-10 04:25:48 +01:00
Kacper
179eef6685 feat(electron): enhance feature execution with async prompt handling and authentication checks
- Updated the FeatureExecutor to wrap content blocks in an async generator for multimodal prompt compatibility.
- Added authentication checks in the ClaudeProvider to ensure proper API key or token availability, including loading from local CLI config.
- Improved error handling for missing authentication, providing clear console messages for user guidance.

This update enhances the robustness of feature execution and ensures proper authentication management for the Claude SDK.
2025-12-10 04:22:59 +01:00
Cody Seibert
39043b8958 feat(auto-mode): enhance error handling and feature status updates
- Improved error handling in AutoModeService to log errors and update feature status to "waiting_approval" when an error occurs during feature execution.
- Added error message writing to the context file for better debugging.
- Updated FeatureLoader to include an optional error message parameter when updating feature status.
- Enhanced prompt generation to include detailed context about attached images for better user guidance during feature implementation.
- Modified KanbanCard component to visually indicate features with errors, improving user awareness of issues.

These changes significantly enhance the robustness of the auto mode feature and improve the user experience by providing clearer feedback on feature execution status.
2025-12-09 22:06:52 -05:00
Kacper
3934ba65da fix(electron): correct IPC handler closure in main.js
- Fixed the closure of the IPC handler in main.js to ensure proper function execution.
2025-12-10 03:58:03 +01:00
Kacper
89c5a1688f Merge branch 'main' into feat/extend-models-support 2025-12-10 03:56:36 +01:00
Kacper
cfaadba3dc fix(kanban): resolve hardcoded model display in cards
- Fix model string validation in feature executor
- Remove hardcoded opus 4.5 references
- Update kanban card to show actual selected model
- Clean up completed feature contexts
- Standardize feature list with model/thinking fields

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 03:50:17 +01:00
Kacper
cd7d4ab138 feat(ui): improve modal UX and model management
- Increase dialog max-width to 2xl for better content display
- Add tabbed interface to feature modal (prompt/model/testing)
- Streamline model selection with compact button layout
- Remove unused OpenAI O3/O4 models from registry
- Add model string validation and fallback logic
- Add "Uncategorized" category support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 03:27:11 +01:00
Cody Seibert
7b760090e4 feat(automaker): enhance feature management and UI components
- Updated `.gitignore` to include agent context files and user-uploaded images for better organization.
- Added "Uncategorized" category to `categories.json` for improved feature classification.
- Populated `feature_list.json` with new features, including detailed descriptions and image attachments for better context.
- Changed application icon to `icon_gold.png` for a refreshed look.
- Enhanced `AutoModeService` to support max concurrency and periodic checks, improving feature execution management.
- Updated image handling in `DescriptionImageDropZone` to save images in the project directory.
- Improved UI components with better styling and responsiveness, including drag-and-drop functionality for project management.

This update significantly enhances the feature management process and user experience within the application.
2025-12-09 21:23:09 -05:00
Kacper
1a5a828d45 Merge remote-tracking branch 'origin/main' into feat/extend-models-support
# Conflicts:
#	.automaker/feature_list.json
#	app/src/components/views/board-view.tsx
#	app/src/components/views/kanban-column.tsx
#	app/src/components/views/settings-view.tsx
2025-12-10 03:03:07 +01:00
Kacper
6d130ca2b5 feat: add Codex CLI detection and model management APIs
- Implemented IPC handlers for checking Codex CLI installation status, retrieving available models, and checking provider statuses.
- Enhanced the SettingsView to include OpenAI API key management and connection testing.
- Updated the feature executor to support multiple model providers (Claude and Codex), allowing for improved flexibility in feature execution.
- Introduced utility functions to determine model types and support for thinking controls.

This update enhances the application's capabilities by integrating Codex CLI support and improving model management, providing users with a more robust experience.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2025-12-10 03:00:15 +01:00
Cody Seibert
ac5b562f7a feat(protection): implement multi-layered protection for feature_list.json
Introduces a comprehensive strategy to safeguard the feature_list.json file from accidental modifications. Key enhancements include:

1. **Prompt-Level Warnings**: Added explicit warnings in agent prompts to prevent direct modifications.
2. **Dedicated MCP Tool**: Implemented the UpdateFeatureStatus tool for safe feature updates.
3. **File-Level Validation & Auto-Backup**: Added validation checks and automatic backups before modifications to prevent data loss.
4. **Tool Access Control**: Restricted agent access to critical tools, ensuring only the designated MCP tool can modify the feature list.

This update significantly reduces the risk of catastrophic data loss and ensures a robust feature management process.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2025-12-09 19:47:10 -05:00
Cody Seibert
7cee3bbd9f chore(automaker): finalize agent context documentation
Completes agent execution log documentation for commit workflow
and feature management processes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-09 19:32:00 -05:00
Cody Seibert
aba19a9695 docs(automaker): update agent context logs
Updates agent execution context logs with commit workflow steps
for feature status updates and project dropdown toggle implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-09 19:31:49 -05:00
Cody Seibert
6d4112b098 chore(features): update project dropdown toggle feature status
Updates feature status from waiting_approval to verified for the P key
toggle functionality. The feature allows pressing P to open/close the
project picker dropdown with proper keyboard event handling.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-09 19:31:35 -05:00
Cody Seibert
560438727c feat(sidebar): add P key toggle for project dropdown
Fixed P key behavior to toggle the project dropdown on/off. Added keyboard handler to detect P key when dropdown is open and close it. Also enhanced theme system with action button colors and improved Kanban card styling consistency.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-09 19:28:23 -05:00
Kacper
e260eafcb9 Merge remote-tracking branch 'origin/main' into feat/extend-models-support 2025-12-10 01:15:14 +01:00
Cody Seibert
5853653c00 refactor(kanban): standardize column width and remove masonry layout
- Remove double-width styling from In Progress column
- Replace masonry 2-column layout with simple vertical stacking
- All Kanban columns now use uniform w-72 width
- Fix Settings view theme consistency with proper CSS variables
- Add action button color variables to theme system

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-09 19:13:09 -05:00
Cody Seibert
8a01c1e167 Merge branch 'main' of github.com:webdevcody/automaker 2025-12-09 19:00:21 -05:00