https://github.com/wenjiazhu1980/deepcode-macos
AI coding assistant for DeepSeek in terminal. Web search, bug fixing, agent skills. Open-source alternative to Claude Code.
https://github.com/wenjiazhu1980/deepcode-macos
ai ai-assistant automation bug-fixing cli code-generation coding-assistant command-line deepseek developer-tools generative-ai llm macos nodejs open-source productivity terminal typescript vibe-coding web-search
Last synced: 2 days ago
JSON representation
AI coding assistant for DeepSeek in terminal. Web search, bug fixing, agent skills. Open-source alternative to Claude Code.
- Host: GitHub
- URL: https://github.com/wenjiazhu1980/deepcode-macos
- Owner: wenjiazhu1980
- License: mit
- Created: 2026-05-04T13:19:42.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-06-08T01:53:10.000Z (9 days ago)
- Last Synced: 2026-06-08T03:22:21.162Z (9 days ago)
- Topics: ai, ai-assistant, automation, bug-fixing, cli, code-generation, coding-assistant, command-line, deepseek, developer-tools, generative-ai, llm, macos, nodejs, open-source, productivity, terminal, typescript, vibe-coding, web-search
- Language: TypeScript
- Homepage: https://deepcode.vegamo.cn
- Size: 18.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-en.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Deep Code
[![][github-contributors-shield]][github-contributors-link] [![][github-forks-shield]][github-forks-link] [![][github-stars-shield]][github-stars-link]
[![][github-issues-shield]][github-issues-link] [![][github-issues-pr-shield]][github-issues-pr-link] [![][github-license-shield]][github-license-link]
[![][github-release-shield]][github-release-link]
English · [中文](./README.md)
[Deep Code](https://github.com/wenjiazhu1980/deepcode-macos) is a terminal AI coding assistant optimized for the `deepseek-v4` model, with support for deep thinking, reasoning effort control, Agent Skills, MCP integration, and a native **macOS menu bar app**.
This repository (`deepcode-macos`) builds on the [upstream deepcode-cli](https://github.com/lessweb/deepcode-cli) by adding a native macOS app, a headless programmatic interface, and continuously syncing all upstream CLI updates.
## Installation
### CLI (Terminal)
```bash
npm install -g @vegamo/deepcode-cli
```
Run `deepcode` inside any project directory to get started.

### macOS Menu Bar App
Download `DeepCode-vX.X.X.dmg` from [Releases](https://github.com/wenjiazhu1980/deepcode-macos/releases) and drag it to Applications. The app lives in your menu bar (no Dock icon) — click the icon to open a chat window, powered by the same CLI and config underneath.
> The macOS app is an unsigned MVP. If macOS Gatekeeper blocks it on first launch, go to **System Settings → Privacy & Security** and click **Open Anyway**.
## Configuration
Create `~/.deepcode/settings.json`:
```json
{
"env": {
"MODEL": "deepseek-v4-pro",
"BASE_URL": "https://api.deepseek.com",
"API_KEY": "sk-..."
},
"thinkingEnabled": true,
"reasoningEffort": "max"
}
```
The configuration file is shared across the CLI, the macOS app, and the [VSCode extension](https://github.com/lessweb/deepcode) — configure once, use everywhere.
For complete configuration details (multi-level priority, environment variables, permissions, etc.), see [docs/configuration_en.md](docs/configuration_en.md).
## Key Features
### **Agent Skills**
Deep Code supports extensible agent skills and ships with the following bundled skills out of the box:
| Skill | Purpose |
| :---- | :------ |
| `deepcode-self-refer` | Lets the assistant consult Deep Code's own docs and guide itself |
| `plan` | Plan Mode — a read-only-explore-then-act collaboration workflow |
| `skill-writer` | Author and validate new Agent Skills |
| `skill-digester` | Review and improve existing skill descriptions |
Skills are discovered from these locations, in priority order:
| Scope | Path | Purpose |
| :------ | :-------------------- | :---------------------------- |
| Project | `./.deepcode/skills/` | Deep Code's native location |
| Project | `./.agents/skills/` | Cross-client interoperability |
| User | `~/.deepcode/skills/` | Deep Code's native location |
| User | `~/.agents/skills/` | Cross-client interoperability |
Use the `enabledSkills` field in `settings.json` to control which skills are active (including skipping built-in ones). See [docs/agent-skills_en.md](docs/agent-skills_en.md).
### **Session Persistence**
Every conversation is automatically persisted to `~/.deepcode/projects//`, including a full message log and code snapshots backed by an internal Git repository. This powers `/resume`, `/continue`, and `/undo`, and is shared across the CLI, macOS app, and VSCode extension. See [docs/session-persistence_en.md](docs/session-persistence_en.md).
### **Optimized for DeepSeek**
- Specifically tuned for DeepSeek model performance.
- Reduce costs by using [Context Caching](https://api-docs.deepseek.com/guides/kv_cache).
- Natively supports [Thinking Mode](https://api-docs.deepseek.com/guides/thinking_mode) and Effort Control.
### **Multimodal Image Input**
- `Ctrl+V` to paste an image from the clipboard, `Ctrl+X` to clear pasted images.
- Supports reading local image files.
- Can integrate vision models (e.g. Volcano Ark Doubao, Mimo Vision) for image understanding. See [docs/mimo-vision-guide.md](docs/mimo-vision-guide.md).
## Slash Commands & Keyboard Shortcuts
| Slash Command | Action |
|------------------|---------------------------------------------------------|
| `/` | Open the skills / commands menu |
| `/new` | Start a fresh conversation |
| `/resume` | Choose a previous conversation to continue |
| `/continue` | Continue the active conversation or pick one to resume |
| `/model` | Switch model, thinking mode, and reasoning effort |
| `/raw` | Toggle display mode (Normal / Lite / Raw scrollback) |
| `/init` | Initialize an AGENTS.md file (LLM project instructions) |
| `/skills` | List available skills |
| `/mcp` | View MCP server status and available tools |
| `/undo` | Restore code and/or conversation to a previous point |
| `/exit` | Quit (also `Ctrl+D` twice) |
| Key | Action |
|------------------|----------------------------------------------------------|
| `Enter` | Send the prompt |
| `Shift+Enter` | Insert a newline (also `Ctrl+J`) |
| `Ctrl+V` | Paste an image from the clipboard |
| `Ctrl+X` | Clear pasted images |
| `Ctrl+R` | Toggle display mode (Raw scrollback) |
| `Esc` | Interrupt the current model turn |
| `Ctrl+D` twice | Quit Deep Code |
## Headless Mode (Programmatic Interface)
`deepcode headless` provides an NDJSON-over-stdio protocol that lets native frontends (like the macOS app) or other programs drive Deep Code programmatically. It supports submitting prompts, interrupting replies, loading sessions, switching project roots, and more. See `deepcode headless --help`.
## Supported Models
- `deepseek-v4-pro` (Recommended)
- `deepseek-v4-flash`
- Any other OpenAI-compatible model (including Volcano Ark Coding Plan, Doubao, etc.)
## FAQ
### Does Deep Code have a VSCode extension?
Yes. Deep Code offers a full-featured VSCode extension, available on the [VSCode Marketplace](https://marketplace.visualstudio.com/items?itemName=vegamo.deepcode-vscode). The extension shares the `~/.deepcode/settings.json` configuration file with the CLI and macOS app, so you can switch seamlessly between the terminal, menu bar, and editor.
### Does Deep Code have a macOS app?
Yes. This repository provides a native macOS menu bar app — download the DMG from [Releases](https://github.com/wenjiazhu1980/deepcode-macos/releases). It lives in the menu bar and is powered by the same CLI underneath.
### Does Deep Code support understanding images?
Deep Code supports multimodal input — paste images from the clipboard with `Ctrl+V`, or read local image files. However, `deepseek-v4` does not support multimodal yet. Some models have multimodal capabilities but impose strict limits on multi-turn dialogue requests. For multimodal input, we recommend using the Volcano Ark `Doubao-Seed-2.0-pro` model, which has the best integration.
### How to automatically send a Slack message after a task completes?
Write a shell notification script that calls a Slack webhook, then set the `notify` field in `~/.deepcode/settings.json` to the full path of the script. The script receives environment variables like `STATUS`, `DURATION`, `BODY`, `TITLE`. For detailed steps, see [docs/notify_en.md](docs/notify_en.md).
### How do I enable web search?
Deep Code comes with a built-in, free Web Search tool that works well for most use cases. If you prefer to use a custom script for web search, set the `webSearchTool` field in `~/.deepcode/settings.json` to the full path of your script. For detailed steps, refer to: https://github.com/qorzj/web_search_cli
### How do I configure MCP?
Deep Code supports MCP (Model Context Protocol) to connect external services such as GitHub, browsers, databases, and more. Configure the `mcpServers` field in `settings.json` to enable it, then use the `/mcp` command to view MCP server status and available tools.
For detailed setup instructions, see: [docs/mcp_en.md](docs/mcp_en.md)
### Does Deep Code only support YOLO mode?
No. Deep Code has a built-in fine-grained permission control mechanism that lets you confirm operations before the AI assistant executes shell commands, reads/writes files, accesses the network, or calls MCP tools. You can configure each permission scope's policy — always allow (`allow`), always ask (`ask`), or deny (`deny`) — via the `permissions` field in `settings.json`. See [docs/permission_en.md](docs/permission_en.md) for details.
### Does it support Coding Plan?
Yes. Just set `env.BASE_URL` in `~/.deepcode/settings.json` to an OpenAI-compatible API endpoint. Take Volcano Ark's Coding Plan as an example:
```json
{
"env": {
"MODEL": "ark-code-latest",
"BASE_URL": "https://ark.cn-beijing.volces.com/api/coding/v3",
"API_KEY": "**************"
},
"thinkingEnabled": true
}
```
## Contributing
Contributions are welcome! Here's how to get started:
```bash
# Clone the repository
git clone https://github.com/wenjiazhu1980/deepcode-macos.git
cd deepcode-macos
# Install dependencies
npm install
# Local development (typecheck + lint + format check + bundle)
npm run build
# Run tests
npm test
# Link globally (local global install)
npm link
```
- Make sure `npm run check` passes before submitting a PR (typecheck + lint + format check)
- We recommend running `npm run format` before building to avoid errors
- This repository continuously merges updates from [upstream deepcode-cli](https://github.com/lessweb/deepcode-cli)
## Getting Help
- Report bugs or request features on GitHub Issues (https://github.com/wenjiazhu1980/deepcode-macos/issues)
## License
- MIT
## Support Us
If you find this tool helpful, please consider supporting us by:
- Giving us a Star on GitHub (https://github.com/wenjiazhu1980/deepcode-macos)
- Submitting feedback and suggestions
- Sharing with your friends and colleagues
[github-release-link]: https://github.com/wenjiazhu1980/deepcode-macos/releases
[github-release-shield]: https://img.shields.io/github/v/release/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-contributors-link]: https://github.com/wenjiazhu1980/deepcode-macos/graphs/contributors
[github-contributors-shield]: https://img.shields.io/github/contributors/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-forks-link]: https://github.com/wenjiazhu1980/deepcode-macos/network/members
[github-forks-shield]: https://img.shields.io/github/forks/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-stars-link]: https://github.com/wenjiazhu1980/deepcode-macos/network/stargazers
[github-stars-shield]: https://img.shields.io/github/stars/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-issues-link]: https://github.com/wenjiazhu1980/deepcode-macos/issues
[github-issues-shield]: https://img.shields.io/github/issues/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-issues-pr-link]: https://github.com/wenjiazhu1980/deepcode-macos/pulls
[github-issues-pr-shield]: https://img.shields.io/github/issues-pr/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800
[github-license-link]: https://github.com/wenjiazhu1980/deepcode-macos/blob/main/LICENSE
[github-license-shield]: https://img.shields.io/github/license/wenjiazhu1980/deepcode-macos?color=4d6BFE&labelColor=black&style=flat-square&cacheSeconds=1800