{"id":43957508,"url":"https://github.com/op7418/codepilot","last_synced_at":"2026-04-15T19:00:45.489Z","repository":{"id":336864538,"uuid":"1151411061","full_name":"op7418/CodePilot","owner":"op7418","description":"A multi-model AI agent desktop client — connect any AI provider, extend with MCP \u0026 skills, control from your phone. Built with Electron + Next.js.","archived":false,"fork":false,"pushed_at":"2026-04-10T16:22:56.000Z","size":10183,"stargazers_count":5186,"open_issues_count":318,"forks_count":546,"subscribers_count":16,"default_branch":"main","last_synced_at":"2026-04-10T18:25:28.946Z","etag":null,"topics":["ai","anthropic","claude","claude-code","desktop-app","electron","gui","nextjs"],"latest_commit_sha":null,"homepage":"https://www.codepilot.sh/","language":"TypeScript","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/op7418.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-06T12:38:55.000Z","updated_at":"2026-04-10T16:23:02.000Z","dependencies_parsed_at":"2026-02-12T10:04:47.610Z","dependency_job_id":null,"html_url":"https://github.com/op7418/CodePilot","commit_stats":null,"previous_names":["op7418/codepilot"],"tags_count":101,"template":false,"template_full_name":null,"purl":"pkg:github/op7418/CodePilot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/op7418%2FCodePilot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/op7418%2FCodePilot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/op7418%2FCodePilot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/op7418%2FCodePilot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/op7418","download_url":"https://codeload.github.com/op7418/CodePilot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/op7418%2FCodePilot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31855432,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["ai","anthropic","claude","claude-code","desktop-app","electron","gui","nextjs"],"created_at":"2026-02-07T05:02:24.988Z","updated_at":"2026-04-15T19:00:45.483Z","avatar_url":"https://github.com/op7418.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"docs/icon-readme.png\" width=\"32\" height=\"32\" alt=\"CodePilot\" style=\"vertical-align: middle; margin-right: 8px;\" /\u003e CodePilot\n===\n\n**A multi-model AI agent desktop client** -- connect any AI provider, extend with MCP \u0026 skills, control from your phone, and let your assistant learn your workflow.\n\n[![GitHub release](https://img.shields.io/github/v/release/op7418/CodePilot)](https://github.com/op7418/CodePilot/releases)\n[![Downloads](https://img.shields.io/github/downloads/op7418/CodePilot/total)](https://github.com/op7418/CodePilot/releases)\n[![GitHub stars](https://img.shields.io/github/stars/op7418/CodePilot)](https://github.com/op7418/CodePilot/stargazers)\n[![Platform](https://img.shields.io/badge/platform-macOS%20%7C%20Windows%20%7C%20Linux-lightgrey)](https://github.com/op7418/CodePilot/releases)\n[![License](https://img.shields.io/badge/license-BSL--1.1-orange)](LICENSE)\n\n[中文文档](./README_CN.md) | [日本語](./README_JA.md)\n\n![CodePilot](https://github.com/user-attachments/assets/9750450a-9f6f-49ce-acd4-c623a4e24281)\n\n---\n\n[Download](#download) | [Quick Start](#quick-start) | [Documentation](#documentation) | [Contributing](#contributing) | [Community](#community)\n\n---\n\n## Download\n\n| Platform | Download | Architecture |\n|---|---|---|\n| macOS | [Apple Silicon (.dmg)](https://github.com/op7418/CodePilot/releases/latest) · [Intel (.dmg)](https://github.com/op7418/CodePilot/releases/latest) | arm64 / x64 |\n| Windows | [Installer (.exe)](https://github.com/op7418/CodePilot/releases/latest) | x64 + arm64 |\n| Linux | [AppImage](https://github.com/op7418/CodePilot/releases/latest) · [.deb](https://github.com/op7418/CodePilot/releases/latest) · [.rpm](https://github.com/op7418/CodePilot/releases/latest) | x64 + arm64 |\n\nOr visit the [Releases](https://github.com/op7418/CodePilot/releases) page for all versions.\n\n---\n\n## Why CodePilot\n\n### Multi-provider, one interface\n\nConnect to **17+ AI providers** out of the box. Switch providers and models mid-conversation without losing context.\n\n| Category | Providers |\n|---|---|\n| Direct API | Anthropic, OpenRouter |\n| Cloud platforms | AWS Bedrock, Google Vertex AI |\n| Chinese AI providers | Zhipu GLM (CN/Global), Kimi, Moonshot, MiniMax (CN/Global), Volcengine Ark (Doubao), Xiaomi MiMo, Aliyun Bailian (Qwen) |\n| Local \u0026 self-hosted | Ollama, LiteLLM |\n| Custom | Any Anthropic-compatible or OpenAI-compatible endpoint |\n| Media | Google Gemini (image generation) |\n\n### Beyond coding — a full AI agent\n\nCodePilot started as a coding tool but has grown into a **general-purpose AI agent desktop**:\n\n- **Assistant Workspace** — Persona files, persistent memory, onboarding flows, and daily check-ins. Your assistant learns your preferences and adapts over time.\n- **Generative UI** — AI can create interactive dashboards, charts, and visual widgets rendered live in-app.\n- **Remote Bridge** — Connect to Telegram, Feishu, Discord, QQ, and WeChat. Send messages from your phone, get responses on your desktop.\n- **MCP + Skills** — Add MCP servers (stdio / sse / http) with runtime monitoring. Define reusable skills or install from the skills.sh marketplace.\n- **Media Studio** — AI image generation with batch tasks, gallery, and tagging.\n- **Task Scheduler** — Schedule recurring tasks with cron expressions or intervals.\n\n### Built for daily use\n\n- Pause, resume, and **rewind sessions to any checkpoint**\n- **Split-screen** dual sessions side by side\n- Track **token usage and costs** with daily charts\n- Import Claude Code CLI session history\n- Dark / Light theme toggle\n- English + Chinese interface\n\n---\n\n## Quick Start\n\n### Path A: Download a release (most users)\n\n1. Download the installer for your platform from the [Download](#download) section above\n2. Launch CodePilot\n3. **Configure a Provider** in **Settings \u003e Providers** — add your API key for any supported provider\n4. Start a conversation\n\n\u003e **Note:** Installing the [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code/overview) (`npm install -g @anthropic-ai/claude-code`) unlocks additional capabilities like direct file editing, terminal commands, and git operations. It is recommended but not required for basic chat.\n\n### Path B: Build from source (developers)\n\n| Prerequisite | Minimum version |\n|---|---|\n| Node.js | 18+ |\n| npm | 9+ (ships with Node 18) |\n\n```bash\ngit clone https://github.com/op7418/CodePilot.git\ncd CodePilot\nnpm install\nnpm run dev              # browser mode at http://localhost:3000\n# -- or --\nnpm run electron:dev     # full desktop app\n```\n\n---\n\n## Core Capabilities\n\n### Conversation \u0026 Interaction\n\n| Capability | Details |\n|---|---|\n| Interaction modes | Code / Plan / Ask |\n| Reasoning effort | Low / Medium / High / Max + Thinking mode |\n| Permission control | Default / Full Access, per-action approval |\n| Session control | Pause, resume, rewind to checkpoint, archive |\n| Model switching | Change model mid-conversation |\n| Split screen | Side-by-side dual sessions |\n| Attachments | Files and images with multimodal vision support |\n| Slash commands | /help /clear /cost /compact /doctor /review and more |\n\n### Extensions \u0026 Integrations\n\n| Capability | Details |\n|---|---|\n| Providers | 17+ providers: Anthropic, OpenRouter, Bedrock, Vertex, Zhipu GLM, Kimi, Moonshot, MiniMax, Volcengine, MiMo, Bailian, Ollama, LiteLLM, custom endpoints |\n| MCP servers | stdio / sse / http, runtime status monitoring |\n| Skills | Custom / project / global skills, skills.sh marketplace |\n| Bridge | Telegram / Feishu / Discord / QQ / WeChat remote control |\n| CLI import | Import Claude Code CLI .jsonl session history |\n| Image generation | Gemini image gen, batch tasks, gallery |\n\n### Data \u0026 Workspace\n\n| Capability | Details |\n|---|---|\n| Assistant Workspace | Persona files (soul.md, user.md, claude.md, memory.md), onboarding, daily check-ins, persistent memory |\n| Generative UI | AI-created interactive dashboards and visual widgets |\n| File browser | Project file tree with syntax-highlighted preview |\n| Git panel | Status, branches, commits, worktree management |\n| Usage analytics | Token counts, cost estimates, daily usage charts |\n| Task scheduler | Cron-based and interval scheduling with persistence |\n| Local storage | SQLite (WAL mode), all data stays on your machine |\n| i18n | English + Chinese |\n| Themes | Dark / Light, one-click toggle |\n\n---\n\n## First Launch\n\n1. **Configure a Provider** — Go to **Settings \u003e Providers** and add credentials for the provider you want to use. CodePilot includes presets for all major providers — just pick one and enter your API key.\n2. **Create a conversation** — Pick a working directory, select a mode (Code / Plan / Ask), and choose a model.\n3. **Set up Assistant Workspace** (optional) — Go to **Settings \u003e Assistant**, choose a workspace directory, and enable Onboarding. CodePilot creates `soul.md`, `user.md`, `claude.md`, and `memory.md` at the workspace root.\n4. **Add MCP servers** (optional) — Go to the **MCP** page in the sidebar to add and manage MCP servers. Custom skills are managed on the separate **Skills** page.\n5. **Install Claude Code CLI** (optional) — For advanced features like file editing and terminal commands, install the CLI: `npm install -g @anthropic-ai/claude-code`\n\n---\n\n## Platform \u0026 Installation Notes\n\nmacOS builds are code-signed with a Developer ID certificate but not notarized, so Gatekeeper may still prompt on first launch. Windows and Linux builds are unsigned.\n\n\u003cdetails\u003e\n\u003csummary\u003emacOS: Gatekeeper warning on first launch\u003c/summary\u003e\n\n**Option 1** -- Right-click `CodePilot.app` in Finder \u003e Open \u003e confirm.\n\n**Option 2** -- System Settings \u003e Privacy \u0026 Security \u003e scroll to Security \u003e click Open Anyway.\n\n**Option 3** -- Run in Terminal:\n```bash\nxattr -cr /Applications/CodePilot.app\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eWindows: SmartScreen blocks the installer\u003c/summary\u003e\n\n**Option 1** -- Click \"More info\" on the SmartScreen dialog, then \"Run anyway\".\n\n**Option 2** -- Settings \u003e Apps \u003e Advanced app settings \u003e set App Install Control to allow apps from anywhere.\n\u003c/details\u003e\n\n---\n\n## Documentation\n\n📖 **Full documentation:** [English](https://www.codepilot.sh/docs) | [中文](https://www.codepilot.sh/zh/docs)\n\n**Getting started:**\n- [Quick Start](#quick-start) -- Download or build from source\n- [First Launch](#first-launch) -- Provider setup, workspace configuration\n- [Installation Guide](https://www.codepilot.sh/docs/installation) -- Detailed setup instructions\n\n**User guides:**\n- [Providers](https://www.codepilot.sh/docs/providers) -- Configuring AI providers and custom endpoints\n- [MCP Servers](https://www.codepilot.sh/docs/mcp) -- Adding and managing Model Context Protocol servers\n- [Skills](https://www.codepilot.sh/docs/skills) -- Custom skills, project skills, and the skills.sh marketplace\n- [Bridge](https://www.codepilot.sh/docs/bridge) -- Remote control via Telegram, Feishu, Discord, QQ, WeChat\n- [Assistant Workspace](https://www.codepilot.sh/docs/assistant-workspace) -- Persona files, onboarding, memory, daily check-ins\n- [FAQ](https://www.codepilot.sh/docs/faq) -- Common issues and solutions\n\n**Developer docs:**\n- [ARCHITECTURE.md](./ARCHITECTURE.md) -- Architecture, tech stack, directory structure, data flow\n- [docs/handover/](./docs/handover/) -- Design decisions and handover documents\n- [docs/exec-plans/](./docs/exec-plans/) -- Execution plans and tech debt tracker\n\n---\n\n## FAQ\n\n\u003cdetails\u003e\n\u003csummary\u003eDo I need the Claude Code CLI?\u003c/summary\u003e\n\nNo. You can use CodePilot with any supported provider (OpenRouter, Zhipu GLM, Volcengine, Ollama, etc.) without the Claude Code CLI. The CLI is only needed if you want Claude to directly edit files, run terminal commands, or use git operations on your machine. For chat and assistant features, just configure a provider and start a conversation.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eConfigured a Provider but no models appear\u003c/summary\u003e\n\nVerify the API key is valid and the endpoint is reachable. Some providers (Bedrock, Vertex) require additional environment variables or IAM configuration beyond the API key. Use the built-in diagnostics (**Settings \u003e Providers \u003e Run Diagnostics**) to check connectivity.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eWhat is the difference between \u003ccode\u003enpm run dev\u003c/code\u003e and \u003ccode\u003enpm run electron:dev\u003c/code\u003e?\u003c/summary\u003e\n\n`npm run dev` starts only the Next.js dev server -- you use CodePilot in your browser at `http://localhost:3000`. `npm run electron:dev` starts both Next.js and the Electron shell, giving you the full desktop app experience with native window controls.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eWhere are the Assistant Workspace files?\u003c/summary\u003e\n\nWhen you set up a workspace, CodePilot creates four Markdown files at the **workspace root directory**: `soul.md` (personality), `user.md` (user profile), `claude.md` (rules), and `memory.md` (long-term notes). State tracking (onboarding progress, check-in dates) is stored in the `.assistant/` subdirectory. Daily memories go to `memory/daily/`.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eBridge requires additional setup per platform\u003c/summary\u003e\n\nEach Bridge channel (Telegram, Feishu, Discord, QQ, WeChat) requires its own bot token or app credentials. Go to the **Bridge** page in the sidebar to configure channels. You will need to create a bot on the target platform first and provide the token to CodePilot.\n\u003c/details\u003e\n\n---\n\n## Community\n\n\u003cimg src=\"docs/wechat-group-qr.png\" width=\"240\" alt=\"WeChat Group QR Code\" /\u003e\n\nScan the QR code to join the WeChat user group for discussions, feedback, and updates.\n\n- [GitHub Issues](https://github.com/op7418/CodePilot/issues) -- Bug reports and feature requests\n- [GitHub Discussions](https://github.com/op7418/CodePilot/discussions) -- Questions and general discussion\n\n---\n\n## Contributing\n\n1. Fork the repository and create a feature branch\n2. `npm install` and `npm run electron:dev` to develop locally\n3. Run `npm run test` before opening a PR\n4. Submit a PR against `main` with a clear description\n\nKeep PRs focused -- one feature or fix per pull request.\n\n\u003cdetails\u003e\n\u003csummary\u003eDevelopment commands\u003c/summary\u003e\n\n```bash\nnpm run dev                    # Next.js dev server (browser)\nnpm run electron:dev           # Full Electron app (dev mode)\nnpm run build                  # Production build\nnpm run electron:build         # Build Electron distributable\nnpm run electron:pack:mac      # macOS DMG (arm64 + x64)\nnpm run electron:pack:win      # Windows NSIS installer\nnpm run electron:pack:linux    # Linux AppImage, deb, rpm\n```\n\n**CI/CD:** Pushing a `v*` tag triggers a full multi-platform build and creates a GitHub Release automatically.\n\n**Notes:**\n- Electron forks a Next.js standalone server on `127.0.0.1` with a random free port\n- Chat data is stored in `~/.codepilot/codepilot.db` (dev mode: `./data/`)\n- SQLite uses WAL mode for fast concurrent reads\n\u003c/details\u003e\n\n---\n\n## License\n\n[Business Source License 1.1 (BSL-1.1)](LICENSE)\n\n- **Personal / academic / non-profit use**: free and unrestricted\n- **Commercial use**: requires a separate license — contact [@op7418 on X](https://x.com/op7418)\n- **Change date**: 2029-03-16 — after which the code converts to Apache 2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fop7418%2Fcodepilot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fop7418%2Fcodepilot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fop7418%2Fcodepilot/lists"}