CarbonDash is a professional macOS system dashboard prototype built with SwiftUI. It provides real-time system monitoring, advanced process analysis, and AI-powered development assistance.
- Real-time Monitoring: Interactive dashboards for CPU, Memory, and Network throughput.
- Process Management: High-load process identification and termination.
- Security & Networking: Listening port scanning and per-process network traffic sniffing.
- AI-Powered Assistance: Integrated local Qwen Code AI assistant for development tasks.
- Dev Ecosystem Integration: Automatic discovery of Python virtual environments and Git repositories.
CarbonDash is designed with a performance-first approach:
- Asynchronous Execution: All system command calls (
ps,lsof,nettop) are offloaded to background threads to ensure a smooth 60 FPS UI. - Reentrancy Protection: Sophisticated polling logic prevents task stacking and memory leaks.
- State Management: Centralized manager injection preserves state (like AI chat history) across different dashboard tabs.
- Dynamic Configuration: Persistence-backed environment scanning for flexibility across different machine setups.
- OS: macOS 13.0 or later.
- Development: Xcode 14+ (SwiftUI + Charts).
- System Utilities:
/bin/ps,/usr/sbin/lsof,/usr/bin/nettop,/usr/bin/git,/bin/kill.
- AI Assistant (Optional):
node@qwen-code/qwen-code(accessible viacli.js).
This repository is compatible with Swift Package Manager (SPM).
# Clone the repository
git clone https://github.com/huangruiran666/CarbonDash.git
cd CarbonDash
# Build the project
swift build
# Run tests
swift testNote: For full macOS App UI debugging, it is recommended to open the project in Xcode or import the Sources/ into your Xcode project.
CarbonDash uses GitHub Actions for automated building and testing on macOS runners. See .github/workflows/ci.yml for details.
- Performance: Unified system command orchestration with asynchronous patterns.
- Reliability: Improved AI subprocess lifecycle management and error visibility.
- UX: Added runtime dependency readiness indicators and "Stop Generation" support for AI tasks.
- Cleanliness: Integrated comprehensive
.gitignoreand resource cleanup on application exit.
- System command parsing may require updates for future macOS releases.
- AI assistant relies on a pre-configured local environment; automatic model downloading is not yet supported.
This project is licensed under the MIT License - see the LICENSE file for details.