Commit Graph

44 Commits

Author SHA1 Message Date
Kacper
215ae87950 refactor(settings): extract settings navigation to component
- Create components/settings-navigation.tsx
- Move side navigation JSX to new component
- Update settings-view.tsx to use SettingsNavigation component
- Remove unused cn utility import
- Reduce settings-view.tsx by ~30 lines
- Improve component modularity and reusability

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:54:09 +01:00
Kacper
f71d6da37d refactor(settings): extract delete project dialog to component
- Create components/delete-project-dialog.tsx
- Move delete project confirmation dialog JSX to new component
- Update settings-view.tsx to use DeleteProjectDialog component
- Remove unused Trash2, Folder icon imports
- Remove unused Dialog component imports
- Reduce settings-view.tsx by ~50 lines
- Improve component modularity and testability

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:52:18 +01:00
Kacper
d8f55f26db refactor(settings): extract keyboard map dialog to component
- Create components/keyboard-map-dialog.tsx
- Move keyboard shortcut map dialog JSX to new component
- Update settings-view.tsx to use KeyboardMapDialog component
- Remove unused Keyboard icon import
- Remove unused KeyboardMap and ShortcutReferencePanel imports
- Remove unused useSetupStore import and destructuring
- Reduce settings-view.tsx by ~30 lines
- Improve component modularity and reusability

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:50:38 +01:00
Kacper
8010a03a7c refactor(settings): extract navigation config to separate file
- Create config/navigation.ts with NAV_ITEMS and NavigationItem type
- Remove NAV_ITEMS constant from settings-view.tsx
- Update use-scroll-tracking.ts to import NavigationItem type
- Remove unused icon imports from settings-view.tsx
- Improve code organization and maintainability
- Reduce settings-view.tsx by ~10 lines

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:48:18 +01:00
Kacper
60fc043b1e refactor(settings): extract scroll tracking into custom hook
- Create hooks/use-scroll-tracking.ts for scroll-based navigation
- Move scroll position tracking logic and useEffect to hook
- Move scrollToSection callback to hook
- Update settings-view.tsx to use new useScrollTracking hook
- Remove useState, useEffect, useRef, useCallback imports (no longer needed)
- Reduce settings-view.tsx by ~60 lines
- Improve code organization and testability

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:46:42 +01:00
Kacper
6bbcc36409 refactor(settings): extract CLI status into custom hook
- Create hooks/use-cli-status.ts to manage all CLI status logic
- Move Claude and Codex CLI status state management to hook
- Move CLI checking useEffect and refresh handlers to hook
- Update settings-view.tsx to use new useCliStatus hook
- Reduce settings-view.tsx by ~130 lines
- Improve testability by isolating CLI status logic

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-11 00:44:41 +01:00
Kacper
45bd2c64b9 refactor(settings): move remaining sections into folders
- Move feature-defaults-section.tsx into feature-defaults/
- Move keyboard-shortcuts-section.tsx into keyboard-shortcuts/
- Move kanban-display-section.tsx into kanban-display/
- Move danger-zone-section.tsx into danger-zone/
- Update settings-view.tsx to import from new locations
- Update type imports in kanban-display and danger-zone to ../types
- All TypeScript diagnostics passing
- Git preserves file history with rename detection
2025-12-11 00:34:11 +01:00
Kacper
2afb5a7645 refactor(settings): split CLI status into separate components
- Split cli-status-section.tsx into two separate files:
  - claude-cli-status.tsx (ClaudeCliStatus component)
  - codex-cli-status.tsx (CodexCliStatus component)
- Move both components into cli-status/ folder
- Update settings-view.tsx to import from new locations
- Update type imports to use ../types
- All TypeScript diagnostics passing
- Improves modularity and follows one-component-per-file pattern
2025-12-11 00:32:03 +01:00
Kacper
7e3819da4b refactor(settings): reorganize appearance section into folder
- Move appearance-section.tsx into appearance/ folder
- Move theme-options.ts into appearance/config/
- Update import paths in appearance-section.tsx
- Update settings-view.tsx to import from new location
- All TypeScript diagnostics passing
- Follows api-keys folder pattern
2025-12-11 00:29:06 +01:00
Kacper
da78bed47d refactor(settings): reorganize api-keys section into folder
- Move api-keys-section.tsx into api-keys/ folder
- Move child components (api-key-field, authentication-status-display, security-notice) into api-keys/
- Move custom hook (use-api-key-management) into api-keys/hooks/
- Move config (api-provider-config) into api-keys/config/
- Update import paths in use-api-key-management.ts
- Update settings-view.tsx to import from new location
- All TypeScript diagnostics passing
- Improves code organization and maintainability
2025-12-11 00:24:18 +01:00
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
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]
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
Kacper
2afb5ced90 feat(cli-refresh): add refresh buttons for CLI detection in settings view 2025-12-10 19:07:13 +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
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
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
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
Kacper
89c5a1688f Merge branch 'main' into feat/extend-models-support 2025-12-10 03:56:36 +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
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
Kacper
dcaf96aad3 feat(cli): implement Claude CLI detection and model selection for features
- Added a new service to detect the installation status of Claude Code CLI, providing users with installation recommendations and commands.
- Integrated CLI detection into the SettingsView to inform users about the CLI status and its benefits for ultrathink tasks.
- Enhanced feature creation and editing dialogs to allow users to select from multiple models (Haiku, Sonnet, Opus) and specify thinking levels (None, Low, Medium, High, Ultrathink).
- Updated the feature executor to utilize the selected model and thinking configuration during task execution, improving flexibility and performance.

This update enhances user experience by providing clearer options for model selection and ensuring optimal performance with the Claude CLI.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 00:58:50 +01:00
Cody Seibert
6f3bf2f6b6 feat: add new themes and improve UI components
- Introduced multiple new themes: retro, dracula, nord, monokai, tokyonight, solarized, gruvbox, catppuccin, onedark, and synthwave.
- Updated global CSS to support new themes and added custom variants for theme-specific styles.
- Enhanced layout and sidebar components with improved styling and responsiveness.
- Refactored button and slider components for better visual consistency and added an animated outline variant.
- Improved various views (e.g., settings, welcome, context) with updated styles and better user experience.

This update enhances the overall aesthetic and usability of the application, providing users with more customization options.
2025-12-09 18:51:06 -05:00
Kacper
a2d27b94bc feat(kanban): enhance Kanban card detail level settings
- Introduced a new feature to control the level of detail displayed on Kanban cards, allowing users to choose between minimal, standard, and detailed views.
- Updated the SettingsView to include buttons for selecting the desired detail level, with corresponding descriptions for each option.
- Integrated the new detail level setting into the KanbanCard component to conditionally render information based on user preferences.

This enhancement improves user experience by providing customizable visibility of feature information on Kanban cards.

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2025-12-10 00:02:24 +01:00
Kacper
000cae6737 Fix settings view scrolling by adding overflow-hidden to container
The settings view was not allowing scrolling because the outer container
lacked overflow-hidden. This prevented the inner overflow-y-auto content
area from properly constraining its height and enabling scroll behavior.

Added overflow-hidden to the settings view container to match the pattern
used in other views like board-view.tsx.

Also added utility functions for settings navigation and scroll testing.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 19:36:18 +01:00
Cody Seibert
9392422d35 Implement initial project structure and features for Automaker application, including environment setup, auto mode services, and session management. Update port configurations to 3007 and add new UI components for enhanced user interaction. 2025-12-08 21:11:00 -05:00
Cody Seibert
3c8e786f29 initial commit 2025-12-07 16:43:26 -05:00