{"id":50308398,"url":"https://github.com/guyoung/boxagnts","last_synced_at":"2026-05-28T18:30:36.695Z","repository":{"id":358406002,"uuid":"1240738459","full_name":"guyoung/boxagnts","owner":"guyoung","description":"BoxAgents is an open-source, Rust-based AI Agent ToolBox offering an ultimate out-of-the-box experience. With WebAssembly sandbox, it balances security and flexibility, letting users effortlessly tackle complex tasks as an efficient, trustworthy personal AI assistant.","archived":false,"fork":false,"pushed_at":"2026-05-27T04:59:44.000Z","size":14310,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-27T06:23:46.676Z","etag":null,"topics":["agent","ai","rust","vue","vuetify","wasm","wasmtime","webassembly","webassembly-component"],"latest_commit_sha":null,"homepage":"https://github.com/guyoung/boxagnts","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guyoung.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-16T14:04:18.000Z","updated_at":"2026-05-27T04:45:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/guyoung/boxagnts","commit_stats":null,"previous_names":["guyoung/boxagnts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/guyoung/boxagnts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guyoung%2Fboxagnts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guyoung%2Fboxagnts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guyoung%2Fboxagnts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guyoung%2Fboxagnts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guyoung","download_url":"https://codeload.github.com/guyoung/boxagnts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guyoung%2Fboxagnts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33622066,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","ai","rust","vue","vuetify","wasm","wasmtime","webassembly","webassembly-component"],"created_at":"2026-05-28T18:30:25.608Z","updated_at":"2026-05-28T18:30:36.654Z","avatar_url":"https://github.com/guyoung.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BoxAgnts\n\n[English](README.md) | [中文](README.zh.md)\n\nBoxAgnts is an open-source AI Agent ToolBox built with Rust, dedicated to delivering an ultimate out-of-the-box experience. Leveraging WebAssembly sandbox, it provides a runtime environment that balances security and flexibility, helping users effortlessly tackle a wide range of complex tasks and thus becoming an efficient and trustworthy personal AI assistant.\n\n## Core Architecture\n\n### 🎯 AI Agent Tool**Box**\n\nBoxAgnts is a fully-featured AI Agent toolkit providing:\n\n- **Multi-model support**: Compatible with major AI model providers including OpenAI, Anthropic, CodeX, Google, Deepseek, MiniMax, OpenCode\n- **Tool system**: Built-in file operations, web access, code execution, and many other tools\n- **Skill system**: Create specialized AI skills through simple configuration\n\n### 🛡️ WebAssembly Sand**Box**\n\nBuild a secure runtime environment using WebAssembly technology:\n\n- **Isolated execution**: All custom tools and skills run in a WASM sandbox\n- **Security control**: Fine-grained permission management and network access control\n- **Cross-platform**: Compile once, run everywhere\n- **High performance**: Based on Wasmtime runtime, near-native performance\n\n### ✨ Out of the **Box**\n\nOut-of-the-box experience:\n\n- **Zero-configuration startup**: Download and run, no complex configuration\n- **Web interface**: Built-in beautiful Dashboard for visual management of all features\n- **Built-in extensions**: Pre-configured with commonly used tools and skills, ready to use\n- **Quick start**: Simple API and intuitive workflow\n\n## Key Features\n\n### 🤖 AI Chat and Agents\n- Chat with multiple AI models\n- Create and manage custom Agents\n- Save and manage chat history\n- Support for streaming responses\n\n### 🔧 Tool Execution\n- File read/write and editing\n- Shell command execution\n- Web content scraping\n- Code review and analysis\n\n### 📦 Skill System\n- Quickly create specialized skills\n- Skill combination and reuse\n- Built-in skills including code review, weather query, front-end component generation, etc.\n\n### ⏰ Automatic Tasks Cron\n- Create and manage scheduled tasks\n- Support for standard Cron expressions\n- Task execution logs and status tracking\n- Flexible task configuration and triggering methods\n\n### 🌐 Web Service\n- Custom website deployment\n- Static file serving\n- API endpoint management\n\n## Quick Start\n\n### Download Executable\n\nDownload the latest compressed package from the [Releases](https://github.com/guyoung/boxagnts/releases) page, extract and run.\n\n### Start Service\n\n```bash\n# Start service\nboxagnts\n\n# Specify workspace directory\nboxagnts --workspace-dir /path/to/workspace\n\n# Specify port\nboxagnts --workspace-dir /path/to/workspace --port 30002\n```\n\n\u003e Suggestion: BoxAgnts supports multiple workspaces, each with its own configuration file and data directory. It is recommended not to run in the default directory, but to specify a workspace directory or workspace-dir.\n\nCommand line arguments:\n\n```bash\nBoxAgnts is an open-source AI Agent ToolBox built with Rust.\n\nUsage: boxagnts [OPTIONS]\n\nOptions:\n      --port \u003cPORT\u003e          Port to run the web server on [default: 30001]\n      --host \u003cHOST\u003e          Host to bind to (0.0.0.0 for all interfaces) [default: 127.0.0.1]\n      --workspace-dir \u003cDIR\u003e  Set workspace dir, default current dir\n      --app-dir \u003cDIR\u003e        Set app dir, default Boxagnts executable file dir\n      --admin-user \u003cUSERNAME\u003e  Set admin username\n      --admin-pass \u003cPASSWORD\u003e  Set admin password\n  -h, --help                 Print help\n  -V, --version              Print version\n```\n\n### Access Dashboard\n\nOpen your browser and visit `http://127.0.0.1:30001`\n\n### Configure Model\n\nAdd AI models and API Keys in the settings page\n\n## Project Structure and Source Code Compilation\n\nThis project is developed based on [claurst](https://github.com/Kuberwastaken/claurst) project code\n\n### Directory Structure\n\n```\nboxagnts/\n├── boxagnts/                 # Rust backend core code\n│   ├── api/                 # AI model API (multi-provider support)\n│   ├── core/                # Core types, constants, and basic functions\n│   ├── gateway/             # API gateway (includes Cron task scheduling)\n│   ├── mcp/                 # MCP protocol implementation (optional)\n│   ├── server/              # Web server and Dashboard interface\n│   ├── tools/               # Tool system and built-in tools\n│   ├── tools-manager/       # Tool manager\n│   ├── query/               # Query orchestration\n│   ├── wasm-sandbox/        # WebAssembly sandbox runtime\n│   ├── wasm-tools/          # WASM tool wrappers\n│   └── workspace/           # Workspace and configuration management\n├── boxagnts-dashboard-web/  # Vue 3 frontend source code\n│   ├── src/\n│   │   ├── api/            # API interface wrappers\n│   │   ├── components/     # Vue components\n│   │   ├── composables/    # Composables\n│   │   ├── stores/         # Pinia state management\n│   │   ├── views/          # Page components\n│   │   └── router/         # Router configuration\n│   └── package.json        # Frontend dependencies\n├── app/                     # Application resources\n│   ├── dashboard-web/      # Compiled web interface static assets\n│   └── extensions/         # Extensions (tools/skills)\n└── Cargo.toml              # Rust workspace configuration\n```\n\n### Backend Code Analysis\n\nThe backend is developed in Rust using Tokio async runtime. The main modules are:\n\n- **api/**: Wraps APIs from multiple AI providers including OpenAI, Anthropic, Google, Azure, Bedrock, providing unified interface calling and message format conversion\n- **core/**: Defines core data types, constants, error handling, and system prompts\n- **gateway/**: API gateway layer, handles HTTP requests, includes Cron task scheduling system (cron/ subdirectory), supporting scheduled task creation, management, and execution\n- **server/**: Web server, providing Dashboard REST API and WebSocket support\n- **tools/**: Tool system, implements execution framework for built-in tools and skills\n- **wasm-sandbox/**: WebAssembly sandbox based on Wasmtime, implementing secure code execution environment\n- **workspace/**: Workspace management, handles configuration, authentication, and history storage\n\n### Frontend Code Analysis\n\nThe frontend uses Vue 3 + TypeScript + Vuetify technology stack:\n\n- Uses **Pinia** for state management (stores/ directory)\n- Uses **Vue Router** for routing management (router/ directory)\n- Main pages: Chat, Agents, Cron tasks, Files, Skills, Tools, Sites, Settings, etc.\n- Supports Markdown rendering, code editor (CodeMirror), charts (Chart.js), etc.\n- Communicates with backend via REST API and WebSocket\n\n### Source Code Compilation Method\n\n#### Environment Requirements\n\n- Rust 1.75+ (Install: https://www.rust-lang.org/tools/install)\n- Node.js 18+ (Install: https://nodejs.org/)\n- npm or pnpm\n\n#### Compile Backend\n\n```bash\n# Enter project root directory\ncd boxagnts-pub\n\n# Compile Debug version\ncargo build\n\n# Compile Release version (optimize for size and performance)\ncargo build --release\n\n# Compiled executable is located at target/release/boxagnts\n```\n\n#### Compile Frontend\n\n```bash\n# Enter frontend directory\ncd boxagnts-dashboard-web\n\n# Install dependencies\nnpm install\n\n# Start development mode (hot reload)\nnpm run dev\n\n# Compile production version\nnpm run build\n\n# Compiled static files will be output to app/dashboard-web/\n```\n\n#### Complete Build Process\n\n```bash\n# 1. Compile frontend\ncd boxagnts-dashboard-web\nnpm install\nnpm run build\n\n# 2. Compile backend\ncd ..\ncargo build --release\n\n# 3. Run\n./target/release/boxagnts\n```\n\n## License\n\n[MIT](LICENSE)\n\n\n---\n\n**Repository**: [https://github.com/guyoung/boxagnts](https://github.com/guyoung/boxagnts)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguyoung%2Fboxagnts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguyoung%2Fboxagnts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguyoung%2Fboxagnts/lists"}