- Add GET /api/claude/sessions/{session_id}/builder API for structure view
- Load builder session tags and snippets by Claude session ID
- Implement structure view in dashboard: shows tag selections and snippet details
- Add LoadSettings to persist LLM config changes across restarts
- Settings are now loaded from database on startup
Co-Authored-By: Claude <noreply@anthropic.com>
- Use data-project attribute instead of index for project identification
- Fix toggleProject to use nextElementSibling for content panel
- Highlight selected session without re-rendering tree
- Add selected-session CSS class
Co-Authored-By: Claude <noreply@anthropic.com>
- Add clean URL routing: /dashboard -> dashboard.html, /settings -> settings.html
- Add EnsurePromptsTable for dev environments where prompts table may not exist
- Fix nav links to use clean URLs instead of .html paths
Co-Authored-By: Claude <noreply@anthropic.com>
- Go module with standard library + gorilla/sessions + mysql driver
- Config: env-based configuration with .env file support
- Database: MySQL connection with auto-migration for 6 tables
- Seed data: 12 system tags with options, 8 system snippets
- Auth: session cookie middleware
- Handlers: auth, tags, snippets, builder, claude, dashboard, suggestions, settings
- LLM: OpenAI-compatible client with 30s timeout
- Docker: Dockerfile + docker-compose.yml
- .env.example with all configuration options
Co-Authored-By: Claude <noreply@anthropic.com>
Add section 3.2.4 to define how system-injected XML tags (ide_opened_file,
system-reminder, gitStatus, etc.) in prompts should be rendered: collapsible
blocks with tag name shown, click to expand/collapse. List previews skip
XML tags and extract user-input text only.
Co-Authored-By: Claude <noreply@anthropic.com>