Commit Graph

43 Commits

Author SHA1 Message Date
Mohamed Boudra
545fad1b71 chore: update Claude Agent SDK to 0.1.75 for Opus 4.5
Updated @anthropic-ai/claude-agent-sdk from 0.1.74 to 0.1.75.
This version includes Opus 4.5 model (claude-opus-4-5-20251101).

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 17:03:56 +00:00
Mohamed Boudra
f06170fcee feat: upgrade codex-sdk to 0.76.0 and claude-agent-sdk to 0.1.74
Upgrade packages to access latest model catalogs:
- @openai/codex-sdk: 0.58.0 → 0.76.0
- @anthropic-ai/claude-agent-sdk: 0.1.37 → 0.1.74

New models available after upgrade:
- Claude: Added Opus 4.5 and Haiku 4.5 to catalog
- Codex: Added gpt-5.2, gpt-5.2-codex, and gpt-5.1-codex variants

Updated patch file for new codex-sdk version.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-20 13:10:57 +07:00
Mohamed Boudra
fa1d7dd295 feat: migrate to real Zustand store (Phase 2) 2025-12-02 09:55:59 +00:00
Mohamed Boudra
08dc2ed937 feat(app): add zustand store for session state management 2025-11-27 21:36:03 +01:00
Mohamed Boudra
59967aad87 chore: land multi-daemon rollout 2025-11-26 08:47:49 +00:00
Mohamed Boudra
4ab79b1a50 feat: add multi-daemon support with session routing and connection management
Introduce DaemonRegistry and DaemonConnections contexts for managing multiple server connections. Add session directory for aggregating agents across daemons, with automatic routing based on agent/server context.

Key changes:
- Add daemon profile management (add/edit/remove/set default)
- Implement connection state tracking with reconnection and exponential backoff
- Create useAggregatedAgents hook for unified agent list across daemons
- Add useDaemonSession and useDaemonRequest hooks for daemon-scoped operations
- Update agent routes to include serverId for proper session routing
- Add connection health indicators on home screen and settings
- Persist session snapshots per daemon for faster hydration on reconnect
- Guard screens gracefully when target daemon is offline
- Add React Query for consistent loading/error state management

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 08:25:02 +01:00
Mohamed Boudra
95bacf8fc7 feat: add git branch/worktree setup, message queueing, file explorer improvements, and server restart 2025-11-22 23:20:42 +01:00
Mohamed Boudra
b046dae799 refactor: rebrand project from voice-dev to paseo across all packages and configs 2025-11-15 20:45:09 +01:00
Mohamed Boudra
ddd10f0566 test: move stream harness into vitest 2025-11-15 15:26:49 +01:00
Mohamed Boudra
1d9f6a0df3 feat: render tool call outputs 2025-11-15 12:22:14 +01:00
Mohamed Boudra
8cf808b14d refactor(agent): consolidate agent system into unified AgentManager with provider-based architecture
Replace separate ACP and agent-types modules with unified AgentManager using provider pattern. Migrate Claude and Codex implementations to provider-specific clients. Streamline session-agent integration, remove old ACP notification types, and introduce agent timeline events. Delete obsolete documentation and test files. Add AgentRegistry for persistence and agent-stream-based communication pattern.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-15 02:06:09 +01:00
Mohamed Boudra
b2c89df7c7 refactor(file-explorer): add deep linking, path navigation, diff preview, and Codex session persistence 2025-11-14 19:02:54 +01:00
Mohamed Boudra
30686df548 chore: update expo-clipboard to v8 and fix typos in documentation 2025-11-07 09:50:27 +01:00
Mohamed Boudra
a118fd3315 refactor(agent): add wait_for_agent tool and simplify prompt sending API 2025-11-03 11:47:15 +01:00
Mohamed Boudra
c4bb10d3c9 feat: add voice note recording overlay with transcription feedback and worktree support 2025-10-26 13:48:14 +01:00
Mohamed Boudra
7d1ef63c8f chore(deps): upgrade claude-code-acp to v0.8.4 and optimize image upload implementation 2025-10-26 09:07:41 +01:00
Mohamed Boudra
a3224175ee feat: add image upload support to agent chat with attachment preview 2025-10-26 07:35:06 +01:00
Mohamed Boudra
c277f3fd7c chore: add claude-code-acp dependency to root package and update agent state 2025-10-25 20:50:12 +02:00
Mohamed Boudra
64d1518a6f Prompt is too long 2025-10-25 15:14:44 +02:00
Mohamed Boudra
8d93eeb5c5 feat: switch to local claude-code-acp package and remove screen transition animations 2025-10-24 18:10:12 +02:00
Mohamed Boudra
dd4fa90c5a fix: resolve session resumption issue by storing Claude's internal session ID
- Add discriminated union for agent options with proper type (claude)
- Store Claude's internal session ID separately from ACP session ID
- Use Zod schema validation for persisted agents
- Use correct session ID when resuming agents (Claude ID for Claude agents)
- Update to @boudra/claude-code-acp@0.8.1 which extracts Claude session ID
2025-10-24 17:09:37 +02:00
Mohamed Boudra
3483bd9afd fix: improve realtime controls layout and add agent status bar
- Change realtime controls to horizontal layout with fixed height (88px)
- Add orientation prop to VolumeMeter for horizontal/vertical modes
- Create AgentStatusBar component showing mode badge and agent status
- Add agent persistence system for managing agent state across restarts
- Fix bottom sheet dismiss handling to clear state properly
- Remove debug timer from realtime controls

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 11:17:05 +02:00
Mohamed Boudra
e7306ab495 fix: update expo-two-way-audio dependency to @boudra/expo-two-way-audio 2025-10-23 20:03:57 +02:00
Mohamed Boudra
542707ecdd feat: add bottom sheet modal for agent creation UI 2025-10-23 11:53:38 +02:00
Mohamed Boudra
de5aba4186 docs: update tmux commands formatting and add Android screenshot instructions 2025-10-22 16:50:07 +02:00
Mohamed Boudra
89641a18e7 feat: refactor app structure and components for improved organization and functionality
- Moved components and hooks into a new directory structure under `src/app` for better organization.
- Updated the main entry point to use `index.ts` and adjusted routing accordingly.
- Introduced new components such as `ActiveProcesses`, `AgentStreamView`, and `ConnectionStatus` to enhance the app's functionality.
- Removed deprecated components and hooks to streamline the codebase.
- Updated styles to align with the new theme structure and ensure consistency across the app.

This refactor aims to improve maintainability and scalability of the application.
2025-10-22 15:48:53 +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
Mohamed Boudra
8235d8d1b1 feat: add expo-build-properties plugin to set minSdkVersion 26
Using expo-build-properties plugin for proper minSdk configuration.
Required for react-native-vad which needs Android O (API 26) or higher.

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-21 22:19:12 +02:00
Mohamed Boudra
ca43aae534 feat: initialize voice-mobile React Native app with NativeWind v5
- Created new Expo app with SDK 54+ and Expo Router
- Installed and configured NativeWind v5 for Tailwind styling
- Upgraded voice-assistant to React 19 for consistency
- Kept voice-mobile outside workspace to avoid Metro bundler conflicts
- Disabled React Compiler experimental feature for stability

Setup includes:
- postcss.config.mjs with Tailwind PostCSS plugin
- global.css with Tailwind and NativeWind imports
- metro.config.js with NativeWind wrapper
- lightningcss pinned to 1.30.1 for stability

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-21 15:24:44 +02:00
Mohamed Boudra
4f2c2fc14a feat: add conversation management, persistence, and mobile app spec
Major enhancements to voice assistant with conversation persistence
and mobile app planning:

- Add conversation management with multiple active conversations
- Implement conversation persistence (save/load from disk)
- Add conversation selector UI for switching between conversations
- Enhance agent prompt with per-conversation tmux sessions
- Add mobile app technical specification (React Native + Expo)
- Improve UI with active processes view and agent stream
- Add ACP (Agent Control Protocol) server implementation

Mobile spec details:
- React Native with Expo SDK 54+
- NativeWind v5 for styling
- Share Zod schemas/types from server
- Android in-call experience (InCallManager)
- Direct WebSocket connection via Tailscale
- Same audio quality as web prototype

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

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2025-10-21 14:50:07 +02:00
Mohamed Boudra
13b5fab456 ```
chore: configure VAD assets and update Playwright MCP settings

- Add vite-plugin-static-copy to bundle VAD WASM files
- Configure VAD with adjusted speech detection thresholds
- Switch Playwright MCP to omit image responses
- Fix WebSocket abort controller handling for interruptions
- Add WebFetch permission for VAD documentation
```
2025-10-20 12:47:09 +02:00
Mohamed Boudra
14230c681f feat: add realtime voice mode, artifact presentation, and Playwright MCP integration 2025-10-20 11:19:16 +02:00
Mohamed Boudra
0bfda11c1f feat: add Playwright MCP integration and TTS improvements
- Integrate Playwright MCP for browser automation capabilities
- Add TTS manager for improved audio synthesis management
- Add ToolCallCard UI component for better tool call visualization
- Upgrade Vite to v7.1.10 for improved build performance
- Add lucide-react for icon components
- Add dotenv for environment variable management
- Update agent prompt and orchestrator for enhanced interactions
- Improve audio playback and voice controls in UI

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 23:23:32 +02:00
Mohamed Boudra
c3049b8fa0 Prompt is too long 2025-10-19 16:23:13 +02:00
Mohamed Boudra
40b199e329 Based on the git diff showing extensive package-lock.json changes and modifications to the agent system prompt and configuration, here's the commit message:
```
feat: add AI SDK dependencies and refine agent voice interaction config

- Add @ai-sdk packages for enhanced AI capabilities
- Install Deepgram SDK, livekit-client, and werift for voice/WebRTC
- Expand agent system prompt with multi-tool workflows and Claude Code interaction patterns
- Adjust VAD timing (1.2s silence threshold) and turn detection for better voice UX
- Switch TTS to inworld/inworld-tts-1 with Olivia voice
- Configure interruption timing (0.2s detection, no word requirement)
- Add comprehensive guidelines for conversational responses vs structured output
- Document plan mode triggers and Claude response type handling

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

Co-Authored-By: Claude <noreply@anthropic.com>
```
2025-10-19 15:41:42 +02:00
Mohamed Boudra
b70c0cfc73 Based on the git changes, this is a major migration from OpenAI's Realtime API to LiveKit for voice infrastructure. Here's the commit message:
```
feat: migrate from OpenAI Realtime API to LiveKit for voice infrastructure

Replace direct OpenAI Realtime API WebRTC connection with LiveKit Cloud
infrastructure. Add LiveKit agent package with OpenAI and Silero plugins
for voice-to-voice conversations. Update web client to use LiveKit React
components and session token authentication. Maintain backward
compatibility for OpenAI event types during transition.

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

Co-Authored-By: Claude <noreply@anthropic.com>
```

This commit message:
- Uses `feat:` type since this is a new feature/major change
- Describes the main change (migration from OpenAI to LiveKit)
- Provides context in the body about what was added/changed
- Mentions backward compatibility consideration
- Includes the Claude Code attribution as requested
2025-10-14 11:54:17 +02:00
Mohamed Boudra
0eedb4ddd0 ```
chore: update package-lock.json with additional Tailwind CSS Oxide platform binaries
```
2025-10-13 15:02:10 +02:00
Mohamed Boudra
0789bdc8c6 Remove unnecessary platform-specific Tailwind CSS Oxide dependencies 2025-10-13 15:00:10 +02:00
Mohamed Boudra
255501f68a Add Tailwind CSS Oxide dependency to root package 2025-10-13 14:54:44 +02:00
Mohamed Boudra
31b7dea2a7 Update package-lock.json to reflect project rename to voice-dev 2025-10-13 14:52:37 +02:00
Mohamed Boudra
cd3413982a Add explicit lightningcss dependency for Vercel build 2025-10-13 14:18:15 +02:00