The login flow now falls back to OAuth client credentials flow when
the admin PAT token is not available. This allows login.html to work
even when Zitadel PAT generation hasn't been configured yet.
- Added get_oauth_token() helper function
- Login now tries PAT first, then OAuth client credentials
- Includes proper Zitadel scope for API access
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add ConfigWatcher for monitoring ~/data/*.gbai/*.gbot/config.csv
- Skip DriveMonitor for default bot (managed via ConfigWatcher)
- Fix model routing hierarchy: session → bot → default
- Fix ConfigWatcher to handle local embedded (llm-server=true)
- Add notify dependency for file system watching
- Add data/ to .gitignore (contains API keys)
- Update package.json for botui
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>