Commit Graph

35 Commits

Author SHA1 Message Date
4588c89557 增加终端 2025-08-15 00:29:57 +08:00
96eb05856e 增加 opusplan 模式
Some checks are pending
Build Linux / Build Linux x86_64 (push) Waiting to run
Build Test / Build Test (${{ matrix.platform.name }}) (map[name:Linux os:ubuntu-latest rust-target:x86_64-unknown-linux-gnu]) (push) Waiting to run
Build Test / Build Test (${{ matrix.platform.name }}) (map[name:Windows os:windows-latest rust-target:x86_64-pc-windows-msvc]) (push) Waiting to run
Build Test / Build Test (${{ matrix.platform.name }}) (map[name:macOS os:macos-latest rust-target:x86_64-apple-darwin]) (push) Waiting to run
Build Test / Build Test Summary (push) Blocked by required conditions
2025-08-14 00:21:11 +08:00
780fd9dd35 删除无用内容 2025-08-13 22:28:47 +08:00
d7c34d54bd 修改文件监控逻辑以及UI 2025-08-13 22:04:18 +08:00
2faf07827d 修改文件监控逻辑 2025-08-13 21:25:41 +08:00
2e18805c47 删除无用 2025-08-13 11:21:05 +08:00
4943e48254 重构项目详情页面 2025-08-13 00:23:37 +08:00
b1cd9f9098 优化页面布局 2025-08-10 21:44:48 +08:00
68baf5f1e9 调整页面比例 2025-08-10 07:54:30 +08:00
3bf68960a1 git状态以及文化管理器优化 2025-08-09 18:01:59 +08:00
1f13548039 增加文件管理器,增加文件编辑 2025-08-09 13:44:52 +08:00
5e532ad83f 增加文件管理器 2025-08-09 13:22:54 +08:00
c5b72a9879 优化页面,国际化细节内容 2025-08-09 04:42:10 +08:00
f682dd7a5b 优化页面,国际化细节内容 2025-08-09 04:18:12 +08:00
Vivek R
5e4cbd415e feat(analytics): integrate comprehensive analytics tracking in ClaudeCodeSession
- Track prompt submissions with detailed metrics (length, complexity, attachments)
- Monitor session lifecycle (start, stop, duration, engagement)
- Record tool executions with performance and success metrics
- Track checkpoint creation and restoration events
- Implement enhanced session metrics including:
  - Time to first message
  - Average response time
  - Files created/modified/deleted count
  - Error frequency and recovery attempts
  - Token usage and code generation metrics
- Add session engagement scoring
- Monitor conversation abandonment patterns
- Track agent execution context when applicable

This provides deep insights into user interactions and session
quality for improving the AI coding experience.
2025-07-31 14:22:22 +05:30
Vivek R
f7e932ed79 feat: add analytics tracking to key components
- Track tab creation and closure events in TabManager
- Add session tracking (created, resumed, completed) in ClaudeCodeSession
- Track model selection changes in ClaudeCodeSession
- Monitor agent execution events (success/failure) in AgentExecution
- Include execution duration metrics for agents
- Use useTrackEvent hook for consistent event tracking
2025-07-30 19:45:00 +05:30
Vivek R
cee71343f5 feat: enhance project-specific slash commands management
- Add scopeFilter prop to SlashCommandsManager for filtering by scope
- Replace browser confirm() with proper delete confirmation dialog
- Fix slash_command_delete to handle project commands with project_path param
- Add Slash Commands tab to ProjectSettings as the default tab
- Add Commands button to ClaudeCodeSession for quick access
- Improve error handling and user feedback for delete operations
- Better UI text when showing project-specific commands only
2025-07-07 23:56:09 +05:30
Vivek R
4cd104b1dd refactor: Store pasted images in memory as base64 data URLs
- Remove save_clipboard_image and cleanup_temp_images backend commands
- Update FloatingPromptInput to store pasted images as data URLs in the prompt
- Update ImagePreview component to handle both file paths and data URLs
- Update extractImagePaths to properly handle quoted data URLs
- Update handleRemoveImage to handle data URL removal

This eliminates file system operations for pasted images and stores them directly
in the prompt as base64 data URLs (e.g., @"data:image/png;base64,...").
Images are now fully self-contained within the session without creating temp files.
2025-07-06 16:45:12 +05:30
Vivek R
2009601dd9 feat: Add clipboard image paste support and fix image previews in CC sessions
- Add save_clipboard_image and cleanup_temp_images commands in Rust backend
- Implement paste event handler in FloatingPromptInput to capture pasted images
- Save pasted images to .claude_temp/session_id/ directory
- Add automatic cleanup of temp images when session ends

- Fix image preview display for file paths containing spaces
- Update regex patterns to handle both quoted (@"path with spaces") and unquoted (@path) mentions
- Automatically wrap paths with spaces in quotes when inserting
- Update remove handler to properly handle both quoted and unquoted paths

Users can now paste images directly from clipboard (e.g., screenshots) and see proper previews for all image files regardless of filename format.
2025-07-06 16:35:41 +05:30
Vivek R
6b9393f4d3 feat: implement hooks system for project configuration
- Add HooksEditor component for managing project hooks
- Add ProjectSettings component for project-specific configurations
- Create hooksManager utility for hook operations
- Add hooks type definitions
- Update backend commands to support hooks functionality
- Integrate hooks into main app, agent execution, and Claude sessions
- Update API and utilities to handle hooks data
2025-07-06 15:19:34 +05:30
Mufeed VH
6ab32ea20f feat(ui): enhance loading spinner and update command configuration
- Increase rotating symbol size to 1.5rem for better visibility
- Remove inline size classes in favor of CSS-based sizing
- Add 'claude' command capability alongside 'claude-code' sidecar
- Remove deprecated externalBin configuration from tauri.conf.json
- Standardize rotating symbol styling across components

This improves the visual feedback for loading states and cleans up
the command execution configuration for better flexibility.
2025-07-04 17:58:52 +05:30
Mufeed VH
f1377833b3 feat(ui): enhance timeline sidebar with slide-in animation and responsive layout
- Add slide-in animation to timeline sidebar using framer-motion
- Implement responsive layout adjustments for main content area
- Add proper timeline header with close button
- Fix floating prompt input positioning to accommodate timeline
- Reorder CSS imports for proper style precedence
- Fix animation scaling issue in rotating symbol keyframes

The timeline now slides in from the right with a smooth spring animation
and properly adjusts the main content area width on larger screens.
2025-07-02 20:49:56 +05:30
Mufeed VH
2d73a38222 refactor: remove screenshot functionality and headless_chrome dependency
Remove the screenshot capture system and associated UI components to simplify the codebase.

- Remove screenshot.rs command module and related functionality
- Remove headless_chrome dependency from Cargo.toml
- Update Cargo.lock to reflect dependency changes
- Remove screenshot handlers and UI from WebviewPreview component
- Clean up screenshot-related API calls and imports
- Remove camera icon and capture controls from preview interface

This reduces bundle size and eliminates an underutilized feature.
2025-07-02 20:29:38 +05:30
Mufeed VH
b126288797 feat(ui): add prompt queuing system and improve session management
- Add prompt queue to handle multiple prompts when Claude is processing
- Improve session reconnection with better event listener management
- Fix race conditions in session initialization and cleanup
- Replace Loader2 with rotating symbol for consistent loading states
- Remove TokenCounter integration and loading-disabled input restrictions
- Enhance cancellation logic with proper state cleanup
- Update thinking mode phrase formatting in FloatingPromptInput
- Improve UI layout with better spacing and error positioning

This enables users to queue multiple prompts without waiting for the current
one to complete, providing a smoother interaction experience.
2025-07-02 19:49:00 +05:30
Mufeed VH
a7e17f16ec fix(agents): improve process termination with multi-layer kill strategy
Resolves #87 and #9 by implementing a robust three-tier process
termination approach:

1. ProcessRegistry kill - primary method using run_id tracking
2. ClaudeProcessState kill - fallback via stored process handle
3. System kill command - last resort using PID and OS commands

Key improvements:
- Enhanced logging throughout termination flow for better debugging
- Graceful fallback between termination methods
- Proper UI state management even when backend termination fails
- Track run_id in AgentExecution component for targeted process killing
- Comprehensive error handling with user-friendly feedback
- Consistent event emission for UI synchronization

This ensures agents can be properly stopped without requiring
application restart, addressing the core issue where STOP
requests were ignored and processes continued running.
2025-07-02 18:17:05 +05:30
Mufeed VH
e8c54d7fad feat: implement resumable Claude sessions with background execution (#93)
This comprehensive update adds support for resumable Claude Code sessions that can run in the background and be resumed later. Key improvements include:

Backend enhancements:
- Enhanced ProcessRegistry to track both agent runs and Claude sessions
- Added new Tauri commands: list_running_claude_sessions, get_claude_session_output
- Improved Claude process management with proper session ID extraction and lifecycle handling
- Enhanced cancellation logic with registry-based process killing and fallback mechanisms
- Added live output capture and storage for session persistence

Frontend improvements:
- New RunningClaudeSessions component to display and manage active sessions
- Added streaming state management and session tracking in App component
- Implemented navigation protection when Claude is actively streaming
- Enhanced ClaudeCodeSession component with streaming callbacks and session management

Configuration updates:
- Updated .gitignore to exclude documentation files (AGENTS.md, CLAUDE.md, *_TASK.md)

This feature enables users to start Claude sessions, navigate away while Claude continues processing, and resume sessions later from the Projects view, significantly improving the user experience for long-running AI interactions.
2025-07-02 18:07:14 +05:30
Mufeed VH
0a70ac0146 feat(ui): enhance message rendering with thinking widget and session improvements
- Add ThinkingWidget component for displaying AI reasoning content in collapsible interface
- Improve session initialization by removing redundant event listener and enhancing ID extraction
- Enhance StreamMessage component to handle diverse content structures and thinking content
- Add comprehensive debug logging for better message structure understanding
- Fix cost display logic to handle both cost_usd and total_cost_usd fields
- Refactor user message rendering to support both nested and direct content structures
2025-06-25 04:37:16 +05:30
Mufeed VH
97290e5665 feat(core): implement session isolation for agent and claude executions
- Add run_id/session_id based event isolation for concurrent executions
- Enhance process registry with graceful shutdown and fallback kill methods
- Implement session-specific event listeners in React components
- Add proper process cleanup with timeout handling
- Support both isolated and backward-compatible event emissions
- Improve error handling and logging for process management

This change prevents event crosstalk between multiple concurrent agent/claude sessions
running simultaneously, ensuring proper isolation and user experience.
2025-06-25 02:14:18 +05:30
Mufeed VH
5d69b449be refactor(ui): improve message visibility filtering and optimize bundle
- Refactor message filtering logic across AgentExecution, ClaudeCodeSession, SessionOutputViewer, and StreamMessage components to better handle visibility of user messages with tool results
- Replace inefficient every() loop with for-loop for better performance when checking message content visibility
- Add renderedSomething tracking in StreamMessage to prevent rendering empty components
- Optimize SessionOutputViewer with useMemo for displayableMessages filtering
- Remove unused GitHub API response fields (url, html_url, git_url) in Rust agents command
- Add Vite build configuration with manual code splitting for better bundle optimization
- Remove TypeScript expect-error comment for process global variable

These changes improve UI performance by reducing unnecessary re-renders and bundle size through better code splitting.
2025-06-25 00:52:07 +05:30
Mufeed VH
0c732633e7 fix: resolve TypeScript and Rust build errors and warnings
- Fixed TypeScript errors in ClaudeCodeSession.tsx:
  - Removed unused imports (Square, PreviewPromptDialog, etc.)
  - Removed unused handleOpenPreview function
  - Fixed unused detectedUrl state variable
- Fixed TypeScript error in StreamMessage.tsx:
  - Removed unused useMemo import
- Fixed TypeScript errors in ToolWidgets.tsx:
  - Prefixed unused result props with underscore in multiple widgets
- Fixed Rust warnings:
  - Removed unused imports in commands modules
  - Prefixed unused variables with underscore
  - Added #[allow(dead_code)] for API methods intended for future use

Closes #31
Closes #23
Closes #21
Closes #22
2025-06-24 00:19:52 +05:30
Vivek R
c52c29ebad feat: non-collapsible widgets with tool call/result mapping 2025-06-23 23:25:25 +05:30
Vivek R
3dc741fd6b feat: add ability to stop Claude execution mid-way using loading icon as cancel button 2025-06-23 14:52:02 +05:30
Mufeed VH
1bb265beef perf: implement virtual scrolling for message lists
- Replace static rendering with @tanstack/react-virtual
- Optimize rendering for long conversation histories
- Maintain smooth auto-scroll behavior
- Integrate with enhanced message system from upstream

Significantly improves performance when handling extensive
agent execution outputs and long Claude sessions.
2025-06-23 00:30:31 +05:30
Vivek R
9a4158c649 feat: implement tool call/result mapping with collapsible UI 2025-06-22 22:39:53 +05:30
Mufeed VH
8e76d016d4 init: push source 2025-06-19 19:24:01 +05:30