Commit Graph

122 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
8095a3aef7 Fix keyboard shortcuts: add comments for duplicate keys and increase maxLength for special characters
Co-authored-by: GTheMachine <156854865+GTheMachine@users.noreply.github.com>
2025-12-10 19:32:28 +01:00
copilot-swe-agent[bot]
857f46f86a Update remaining components to use customizable keyboard shortcuts
Co-authored-by: GTheMachine <156854865+GTheMachine@users.noreply.github.com>
2025-12-10 19:32:28 +01:00
copilot-swe-agent[bot]
3a45970280 Add keyboard shortcuts customization UI to settings view
Co-authored-by: GTheMachine <156854865+GTheMachine@users.noreply.github.com>
2025-12-10 19:32:21 +01:00
copilot-swe-agent[bot]
e5095c7911 Add keyboard shortcuts store and update components to use customizable shortcuts
Co-authored-by: GTheMachine <156854865+GTheMachine@users.noreply.github.com>
2025-12-10 19:32:13 +01:00
copilot-swe-agent[bot]
13f68cba4c Initial plan 2025-12-10 19:31:31 +01:00
Web Dev Cody
e86ef96a5f Enhance README with setup instructions
Added detailed setup instructions for the project, including cloning the repository, installing dependencies, running setup commands, and starting the development server.
2025-12-10 13:24:48 -05:00
Kacper
6c56c1564c Merge branch 'main' of https://github.com/webdevcody/automaker
# Conflicts:
#	app/src/app/page.tsx
2025-12-10 19:18:17 +01:00
Kacper
3bd28d3084 feat(setup): implement setup wizard for CLI tools configuration
- Added a new SetupView component to guide users through the installation and authentication of Claude and Codex CLIs.
- Integrated IPC handlers for checking CLI status, installing, and authenticating both CLIs.
- Enhanced the app store to manage setup state, including first run detection and progress tracking.
- Updated the main application view to redirect to the setup wizard on first run.
- Improved user experience by providing clear instructions and feedback during the setup process.

These changes streamline the initial configuration of CLI tools, ensuring users can easily set up their development environment.
2025-12-10 19:15:29 +01:00
Kacper
2afb5ced90 feat(cli-refresh): add refresh buttons for CLI detection in settings view 2025-12-10 19:07:13 +01:00
Cody Seibert
f9ba1c260a feat(ui): add per-project themes and fix scrolling/styling issues
- Add per-project theme support with theme selector in sidebar
- Fix file diffs scrolling in agent output modal with proper overflow handling
- Improve cursor styling across all interactive elements (buttons, tabs, checkboxes)
- Enhance hotkey styling to use consistent theme colors
- Fix Kanban board flash/refresh issues with React.memo optimizations
- Update tab component for better theme integration with proper active states

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 12:56:24 -05:00
Cody Seibert
9251411da9 docs: add security disclaimer and improve README structure
Created comprehensive DISCLAIMER.md with security warnings about AI tooling risks and sandboxing recommendations. Updated README.md with project overview, security disclaimer section, and complete features list with emojis. Also improved git-diff-panel layout with better scrolling behavior.

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 12:39:19 -05:00
Cody Seibert
adfa92fce2 fix(modal): autofocus description field on add feature modal open
- Add autoFocus prop to DescriptionImageDropZone component
- Enable autoFocus in board-view for add feature modal
- Ensure description textarea gets focus instead of prompt tab
- Also improve scrollbar visibility in git diff panels

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 12:33:19 -05:00
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