Commit Graph

12 Commits

Author SHA1 Message Date
2a2100bbb2 feat: Add source code viewer with Gitea integration
- Add /source page with file explorer and code viewer
- Connect to Gitea API for repository browsing
- Implement MCP tools: get_repo_info, list_repo_files, read_repo_file, search_repo_code
- Default to nucleo000/agent-ui repository
- Support branch switching and file search
2026-02-13 06:50:58 -06:00
97ef49aea4 feat: Add database explorer page with SQLite management
- Add /database page with table explorer, query executor and stats
- Implement MCP tools: list_tables, get_table_schema, get_table_data,
  get_database_stats, execute_query
- Add database API endpoints with security (SELECT only)
- Add database icon to toolbar
2026-02-13 06:43:52 -06:00
8a017db777 feat: Add multi-canvas system with project canvas support
- Add project_canvas and canvas_components tables for persistent canvas storage
- Add ProjectCanvas store with full CRUD operations
- Add ProjectCanvasPage for rendering saved canvas with components
- Add ProjectsPage for managing canvas list (create, clone, delete)
- Add HomePage that loads default canvas or falls back to dynamic canvas
- Add toolbar support for displaying canvas as pages with custom icons
- Add component usage validation to prevent deletion of components in use
- Add MCP tools for canvas management (list, create, update, delete, clone)
- Update router with /canvas/:id and /projects routes
- Update Toolbar to show dynamic canvas pages from database
2026-02-13 06:32:46 -06:00
2e64dceb1e feat: Add update_theme functionality with UI support
Backend:
- Add PUT /api/themes/:id endpoint for updating existing themes

Store:
- Add updateTheme method to theme store

MCP:
- Add update_theme tool to modify name, description, or save current variables

UI:
- Add edit button to ThemeListItem (custom themes only)
- Add edit modal with name and description fields
- Support editing from both desktop sidebar and mobile dropdown
2026-02-13 05:50:13 -06:00
d5518cb6d1 feat: Add additional theme management MCP tools
- list_themes: List all available themes (system + custom)
- switch_theme: Change active theme by name or ID
- set_default_theme: Set a theme as the default startup theme
- delete_theme: Remove custom themes (protects system themes)
- reset_theme: Discard unsaved changes
- export_theme: Export theme as JSON for backup/sharing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 05:44:16 -06:00
9d3aa6f2ff feat: Add save_theme MCP tool for persistent theme storage
- Add save_theme tool to save themes permanently to database
- Update set_theme_variable to track changes in store's previewTheme
- Enables full theme creation workflow via MCP tools

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 05:43:05 -06:00
acde6b37d6 feat: Add dynamic MCP tool registration per page
- webmcp.ts: Add tool tracking, unregisterTool(), clearAllTools()
- tools/canvasTools.ts: render_html, render_vue_component
- tools/componentTools.ts: save/load/list/delete_vue_component
- tools/themeTools.ts: get_design_tokens, get_active_theme, set_theme_variable, save_theme
- tools/globalTools.ts: get_current_page, navigate_to, list_available_tools
- toolRegistry.ts: Orchestrates tool registration per page
- App.vue: Initializes WebMCP once, watches route for tool changes
- Canvas.vue: Removed tool registration (now handled by registry)

Tools are now registered when entering a page and unregistered when leaving.
Refresh initializes tools correctly for the current page.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 05:42:17 -06:00
3c38b75040 feat: Add mobile responsive theme editor and documentation
- ThemesPage: Custom dropdown with theme cards for mobile
- ThemesPage: Collapsible variables section
- ThemePreview: Responsive grid and compact layout
- VariableEditor: Separate radius preview with border-radius
- ColorPicker: Mobile-friendly dropdown positioning
- README: Complete theme system documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 05:23:36 -06:00
b880038b07 feat: Add theme system with visual editor
- Backend: themes table and API endpoints (CRUD, export, design-tokens)
- Theme store with preview, apply, and persistence
- ThemesPage with collapsible variables editor and live preview
- Components: ColorPicker (HSL), VariableEditor, ThemePreview, ThemeListItem
- Integration: $theme helper for dynamic components, get_design_tokens MCP tool
- Navigation: /themes route with palette icon in toolbar

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 05:10:18 -06:00
d1c0f62fc3 refactor: Separate concerns and add components dropdown
- Add ComponentsDropdown.vue with save/load/delete functionality
- Create components store (Pinia) for state management
- Extract WebMCP initialization to services/webmcp.ts
- Extract MCP tools registration to services/canvasTools.ts
- Simplify Canvas.vue (~340 lines -> ~105 lines)
- Update App.vue header with components dropdown

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 04:33:55 -06:00
075e167389 feat: Add dynamic Vue 3 components system
- Add dynamicComponents.ts service (~300 lines)
  - CSS scoping with high specificity
  - Async setup support with Suspense
  - Event bus for inter-component communication
  - Shared Pinia store with main app
  - No app overhead (uses render + createVNode)

- Add MCP tools for Vue components
  - render_vue_component
  - save_vue_component
  - load_vue_component
  - list_vue_components
  - delete_vue_component

- Add SQLite table for component persistence
- Add TypeScript declarations for webmcp
- Configure Vite for runtime template compilation
- Add comprehensive README with documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 04:15:53 -06:00
52c93930e1 Initial commit - agent-ui project
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-13 03:10:06 -06:00