Commit Graph

8 Commits

Author SHA1 Message Date
Mohamed Boudra
eb0d04904e Based on the changes, here's the commit message:
```
refactor: convert AgentManager to global singleton across sessions

Move AgentManager initialization from per-session to single global instance. Agents now persist across sessions, with sessions subscribing/unsubscribing to agent updates rather than creating/destroying agents.
```
2025-10-22 20:08:40 +02:00
Mohamed Boudra
ce07b54920 ```
refactor: improve UI polish with empty state, spacing, and remove status messages
```
2025-10-22 19:42:13 +02:00
Mohamed Boudra
8b9561b379 ```
feat: add realtime mode drift protection and improve voice UX
```
2025-10-22 19:06:59 +02:00
Mohamed Boudra
674977d6f8 feat: improve agent activity UI and fix status update propagation
**Agent Activity UI Improvements:**
- Create typed discriminated unions for SessionNotification updates
- Add AgentActivity component with specialized rendering for each update type
- Group consecutive text chunks into single messages (like main chat)
- Add collapsible tool call rendering with input/output details
- Add plan rendering with task status indicators
- Add fallback rendering for unknown activity types (badge + drawer)

**Agent Status Update Fix:**
- Fix agent killing not updating UI status
- Session now detects status change notifications and emits agent_status messages
- Agent manager delays agent deletion to allow status updates to propagate
- Frontend agent_status handler now receives proper updates

**Technical Details:**
- Created /packages/app/src/types/agent-activity.ts with typed session updates
- Created /packages/app/src/components/agent-activity.tsx with activity renderers
- Updated AgentStreamView to use grouped activities with useMemo
- Modified session.ts subscribeToAgent to emit agent_status on status changes
- Modified agent-manager.ts killAgent to delay deletion for status propagation

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2025-10-22 18:10:29 +02:00
Mohamed Boudra
e1e14b1473 feat: improve UI/UX with volume meter and refine input area styling
- Add VolumeMeter component for realtime audio visualization
- Refactor input area to show volume meter in realtime mode
- Update button styling and layout for cleaner interface
- Improve text input integration with better visual hierarchy
- Add volume state tracking to Speechmatics audio hook
- Add agent working directory validation on creation
- Update agent prompt with better orchestration guidelines

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2025-10-22 18:00:59 +02:00
Mohamed Boudra
32d4944c58 feat: migrate from NativeWind to react-native-unistyles and add Speechmatics audio
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-22 14:38:46 +02:00
Mohamed Boudra
37156b5b80 Prompt is too long 2025-10-22 10:51:17 +02:00
Mohamed Boudra
e646f410be Prompt is too long 2025-10-22 09:06:18 +02:00