### Install Bun Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions for installing the Bun JavaScript runtime. Bun is used for managing frontend dependencies and running build scripts for the Gooey application. ```bash curl -fsSL https://bun.sh/install | bash ``` -------------------------------- ### Install Git Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions for installing Git, a version control system essential for cloning the Gooey repository. Includes commands for Ubuntu/Debian and macOS, and a link for Windows. ```bash # Ubuntu/Debian: sudo apt install git # macOS: brew install git # Windows: Download from https://git-scm.com ``` -------------------------------- ### Install Frontend Dependencies with Bun Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to install all necessary frontend dependencies for the Gooey application using Bun's package manager. ```bash bun install ``` -------------------------------- ### Install Rust using rustup Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions for installing the Rust programming language and its package manager, Cargo, using the official rustup tool. This is a prerequisite for building Gooey from source. ```bash curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh ``` -------------------------------- ### Run Gooey Development Server Source: https://github.com/getasterisk/gooey/blob/main/README.md Commands to start the development server for the Gooey application. This includes commands for running the full application with Tauri and for running the frontend separately. ```bash # Start development server bun run tauri dev # Run frontend only bun run dev ``` -------------------------------- ### Install Gooey with Cargo Source: https://github.com/getasterisk/gooey/blob/main/README.md This snippet shows how to build Gooey from source using Cargo, the Rust package manager. It assumes you have Rust and Cargo installed. ```bash cargo install --path . --locked ``` -------------------------------- ### Build Gooey for Development Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to start the Gooey application in development mode using Bun and Tauri, enabling hot reloading for faster iteration. ```bash bun run tauri dev ``` -------------------------------- ### Install macOS Development Tools Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions for installing essential development tools on macOS, including Xcode Command Line Tools and optional Homebrew packages like pkg-config. ```bash # Install Xcode Command Line Tools xcode-select --install # Install additional dependencies via Homebrew (optional) brew install pkg-config ``` -------------------------------- ### Install Linux System Dependencies for Gooey Source: https://github.com/getasterisk/gooey/blob/main/README.md A list of system packages required to build Gooey on Ubuntu/Debian-based Linux distributions. These include development libraries for web rendering, UI elements, and build tools. ```bash sudo apt update sudo apt install -y \ libwebkit2gtk-4.1-dev \ libgtk-3-dev \ libayatana-appindicator3-dev \ librsvg2-dev \ patchelf \ build-essential \ curl \ wget \ file \ libssl-dev \ libxdo-dev \ libsoup-3.0-dev \ libjavascriptcoregtk-4.1-dev ``` -------------------------------- ### Troubleshooting: Windows MSVC Not Found Source: https://github.com/getasterisk/gooey/blob/main/README.md Steps to resolve the 'MSVC not found' error on Windows, which requires installing the Microsoft Visual C++ Build Tools with C++ support. ```bash # Install Visual Studio Build Tools with C++ support # Restart your terminal after installation ``` -------------------------------- ### Gooey Usage: Managing Projects Source: https://github.com/getasterisk/gooey/blob/main/README.md This section describes the workflow for managing projects within the Gooey application. It outlines how to navigate to project views, see session details, and resume or start new sessions. ```text Projects → Select Project → View Sessions → Resume or Start New - Click on any project to view its sessions - Each session shows the first message and timestamp - Resume sessions directly or start new ones ``` -------------------------------- ### Troubleshooting: Claude Command Not Found Source: https://github.com/getasterisk/gooey/blob/main/README.md Guidance for resolving the 'claude command not found' error, ensuring the Claude Code CLI is installed and accessible in the system's PATH. ```bash # Ensure Claude Code CLI is installed and in your PATH # Test with claude --version ``` -------------------------------- ### Troubleshooting: Linux Webkit GTK Not Found Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions for fixing the 'webkit2gtk not found' error on Linux, usually by installing the necessary development packages or ensuring the correct version is specified. ```bash # Install the webkit2gtk development packages listed above # On newer Ubuntu versions, you might need libwebkit2gtk-4.0-dev ``` -------------------------------- ### Build Gooey for Production Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to create a production-ready build of the Gooey application using Bun and Tauri. The output executable location is specified for different operating systems. ```bash # Build the application bun run tauri build # The built executable will be in: # - Linux: src-tauri/target/release/ # - macOS: src-tauri/target/release/ # - Windows: src-tauri/target/release/ ``` -------------------------------- ### Verify Gooey Build Source: https://github.com/getasterisk/gooey/blob/main/README.md Instructions to verify the Gooey application after building. This involves running the compiled executable directly from the release target directory. ```bash # Run the built executable directly # Linux/macOS ./src-tauri/target/release/gooey # Windows ./src-tauri/target/release/gooey.exe ``` -------------------------------- ### Build Universal Binary for macOS Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to build a universal binary for macOS that runs on both Intel and Apple Silicon (M1/M2) architectures. ```bash bun run tauri build --target universal-apple-darwin ``` -------------------------------- ### Gooey Usage: Working with MCP Servers Source: https://github.com/getasterisk/gooey/blob/main/README.md This section outlines the steps for managing MCP servers in Gooey. It includes adding servers, configuring them, importing settings, and testing connections. ```text Menu → MCP Manager → Add Server → Configure - Add servers manually or via JSON - Import from Claude Desktop configuration - Test connections before using ``` -------------------------------- ### Gooey Development Commands Source: https://github.com/getasterisk/gooey/blob/main/README.md Essential commands for developing the Gooey application, including type checking, running Rust tests, and code formatting. ```bash # Type checking bunx tsc --noEmit # Run Rust tests cd src-tauri && cargo test # Format code cd src-tauri && cargo fmt ``` -------------------------------- ### Gooey Usage: Creating Agents Source: https://github.com/getasterisk/gooey/blob/main/README.md This section details the process of creating and configuring agents within Gooey. It covers agent design, model selection, permission settings, and task execution. ```text CC Agents → Create Agent → Configure → Execute 1. Design Your Agent: Set name, icon, and system prompt 2. Configure Model: Choose between available Claude models 3. Set Permissions: Configure file read/write and network access 4. Execute Tasks: Run your agent on any project ``` -------------------------------- ### Troubleshooting: Build Out of Memory Source: https://github.com/getasterisk/gooey/blob/main/README.md Tips for resolving build failures due to insufficient memory, such as reducing parallel build jobs or freeing up system resources. ```bash # Try building with fewer parallel jobs: cargo build -j 2 # Close other applications to free up RAM ``` -------------------------------- ### Clone Gooey Repository Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to clone the Gooey project repository from GitHub using Git and navigate into the project directory. ```bash git clone https://github.com/getAsterisk/gooey.git cd gooey ``` -------------------------------- ### Backend Coding Standards (Rust) Source: https://github.com/getasterisk/gooey/blob/main/CONTRIBUTING.md Outlines coding standards for the backend of the Gooey project using Rust. It mandates adherence to Rust conventions, use of `cargo fmt` and `cargo clippy`, explicit handling of `Result` types, and comprehensive documentation with `///` comments. ```Rust /// Processes a request and returns a Result. /// /// # Arguments /// /// * `input` - The input data for processing. /// /// # Returns /// /// A Result containing the processed data or an error. fn process_request(input: &str) -> Result> { if input.is_empty() { return Err("Input cannot be empty".into()); } // Simulate processing let processed_data = format!("Processed: {}", input); Ok(processed_data) } ``` -------------------------------- ### Build Gooey with Debug Flags Source: https://github.com/getasterisk/gooey/blob/main/README.md Command to build the Gooey application with debug flags enabled, which typically results in faster compilation times but larger binary sizes. ```bash bun run tauri build --debug ``` -------------------------------- ### Gooey Usage: Tracking Usage Source: https://github.com/getasterisk/gooey/blob/main/README.md This section explains how to monitor resource usage within Gooey. It covers viewing analytics by model, project, and date, exporting data, and setting up alerts. ```text Menu → Usage Dashboard → View Analytics - Monitor costs by model, project, and date - Export data for reports - Set up usage alerts (coming soon) ``` -------------------------------- ### Troubleshooting: Cargo Not Found Source: https://github.com/getasterisk/gooey/blob/main/README.md Guidance for resolving the 'cargo not found' error, which typically indicates that Rust or its binary path is not correctly configured in the system's environment variables. ```bash # Ensure Rust is installed and ~/.cargo/bin is in your PATH # Run source ~/.cargo/env or restart your terminal ``` -------------------------------- ### Running Claude with Permissions Skipped (Shell) Source: https://github.com/getasterisk/gooey/blob/main/src-tauri/tests/TESTS_COMPLETE.md This command demonstrates how to execute the Claude CLI with the `--dangerously-skip-permissions` flag. This flag is used in the test suite to allow direct execution of Claude commands without permission checks, facilitating integration testing. ```Shell claude --dangerously-skip-permissions "Read the file ./test.txt in the current directory and show its contents" ``` -------------------------------- ### Execute Real Claude Command (Rust) Source: https://github.com/getasterisk/gooey/blob/main/src-tauri/tests/TESTS_COMPLETE.md This Rust function executes a real Claude command with specified arguments and captures its output. It includes platform-aware timeout handling using `gtimeout` on macOS and `timeout` on Linux. The function returns a structured result containing stdout, stderr, exit code, and execution duration. ```Rust fn execute_claude_task(task: &str, timeout_seconds: u64) -> Result> { // Implementation details for executing Claude command with timeout // ... Ok(ClaudeExecutionResult { stdout: String::new(), stderr: String::new(), exit_code: 0, duration: std::time::Duration::new(0, 0) }) } ``` -------------------------------- ### Gooey Agent JSON Format Source: https://github.com/getasterisk/gooey/blob/main/cc_agents/README.md Defines the structure for exporting and importing Gooey agents. It includes versioning, export timestamp, and agent configuration details such as name, icon, model, system prompt, and default task. ```json { "version": 1, "exported_at": "2025-01-23T14:29:58.156063+00:00", "agent": { "name": "Your Agent Name", "icon": "bot", "model": "opus|sonnet|haiku", "system_prompt": "Your agent's instructions...", "default_task": "Default task description" } } ``` -------------------------------- ### Zustand Store Usage in React Component Source: https://github.com/getasterisk/gooey/blob/main/src/stores/README.md Demonstrates how to use a Zustand store (sessionStore) within a React component to fetch and display session data. It imports the store and uses its state and actions, including a useEffect hook to trigger data fetching on component mount. ```typescript import { useSessionStore } from '@/stores/sessionStore'; function MyComponent() { const { sessions, fetchSessions } = useSessionStore(); useEffect(() => { fetchSessions(); }, []); return
{sessions.length} sessions
; } ``` -------------------------------- ### Frontend Coding Standards (React/TypeScript) Source: https://github.com/getasterisk/gooey/blob/main/CONTRIBUTING.md Specifies coding standards for the frontend of the Gooey project, emphasizing TypeScript, functional components with hooks, Tailwind CSS for styling, and JSDoc comments for exported elements. ```TypeScript /** * Example of a functional component with hooks. */ function MyComponent(props: { message: string }) { const [count, setCount] = React.useState(0); return (

{props.message}

Count: {count}

); } ``` -------------------------------- ### Rust Test Suite Results Source: https://github.com/getasterisk/gooey/blob/main/src-tauri/tests/TESTS_TASK.md Displays the final status of the Gooey project's test suite, indicating that all tests have passed successfully. ```Rust test result: ok. 61 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.