Commit Graph

121 Commits

Author SHA1 Message Date
Kacper
d5d6cdf80f refactor(auth): enhance authentication detection and status handling
- Improved the CodexCliDetector to provide detailed logging and better error handling when reading the authentication file.
- Updated the authentication method determination in the settings and setup views to prioritize CLI-based methods over traditional API key methods.
- Expanded the CodexAuthStatus interface to include new authentication methods, ensuring accurate representation of the authentication state.
- Enhanced UI feedback in the settings view to reflect the new authentication methods, improving user experience.
2025-12-10 23:35:09 +01:00
Kacper
6086d22a44 refactor(settings-view): streamline authentication status handling
- Removed unused state variables related to shortcut editing in the settings view.
- Updated authentication status handling for Claude and Codex to use more precise type definitions, improving type safety and clarity.
- Enhanced the ElectronAPI and SetupAPI interfaces to include optional properties for stored OAuth and API keys, ensuring better alignment with the runtime API responses.
2025-12-10 23:19:09 +01:00
Kacper
8a6309ccc9 Merge origin/main: resolve import conflict in settings-view.tsx 2025-12-10 23:16:55 +01:00
Kacper
0d462ba080 fix(settings-view): adjust padding and remove unused dialog footer
- Updated padding in the settings view for better layout consistency.
- Removed the unused dialog footer containing the close button to streamline the interface.
2025-12-10 23:16:16 +01:00
Kacper
a6da65e318 feat(keyboard): introduce visual keyboard map and shortcut customization
- Added a new `KeyboardMap` component for a visual representation of keyboard shortcuts, allowing users to easily customize their shortcuts with single-modifier support.
- Integrated `ShortcutReferencePanel` for editing shortcuts directly within the settings view.
- Updated the settings view to include a button for opening the keyboard map dialog, enhancing user experience in managing keyboard shortcuts.
- Refactored keyboard shortcut handling to support modifier keys and improve shortcut parsing and formatting.
2025-12-10 22:54:29 +01:00
Kacper
344651a981 refactor(markdown): update styling for theme adaptability
- Enhanced the Markdown component to support theme-aware styling, ensuring proper rendering across all predefined themes.
- Updated typography and color classes for headings, paragraphs, lists, code blocks, strong text, links, blockquotes, and horizontal rules to align with the new theme structure.
2025-12-10 21:56:56 +01:00
trueheads
1176050b03 Added status fetch to auth system in api-settings menu. Works after testing 2025-12-10 14:01:16 -06:00
Web Dev Cody
38a609593b Merge pull request #7 from AutoMaker-Org/various-improvements
Various improvements
2025-12-10 14:40:53 -05:00
Cody Seibert
9c90d617c3 Merge branch 'main' into various-improvements 2025-12-10 14:39:07 -05:00
Ben
7bb014970b Merge branch 'main' into feature/auth-setup-settings-menu 2025-12-10 13:37:40 -06:00
Cody Seibert
c502fbc57a feat(backup): add backup.json for feature tracking and status updates
- Introduced a new `backup.json` file to track feature statuses, descriptions, and summaries for better project management.
- Updated `.automaker/feature_list.json` to reflect verified statuses for several features, ensuring accurate representation of progress.
- Enhanced `memory.md` with details on drag-and-drop functionality for features in `waiting_approval` status.
- Improved auto mode service to allow running tasks to complete when auto mode is stopped, enhancing user experience.
2025-12-10 14:29:05 -05:00
trueheads
aa0b88009c Added Authentication Status Settings to API Keys Tab in Settings 2025-12-10 13:09:24 -06:00
copilot-swe-agent[bot]
1edb7f6b62 Add missing RotateCcw import in settings view
Co-authored-by: GTheMachine <156854865+GTheMachine@users.noreply.github.com>
2025-12-10 19:32:37 +01:00
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
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
Cody Seibert
d83eb86f22 docs: enhance README with detailed setup instructions and security warnings
- Added a comprehensive "Getting Started" section with step-by-step instructions for cloning the repository, installing dependencies, and running the development server.
- Included a warning about the visibility of the Claude Code setup token during streaming or screen sharing.
- Maintained the existing security disclaimer while improving overall README structure for better clarity.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2025-12-10 13:23:58 -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
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
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