乐于分享
好东西不私藏

[开源]桌面客户端 AI 编程工具,零后端 Agent 在你本机运行工具循环

[开源]桌面客户端 AI 编程工具,零后端 Agent 在你本机运行工具循环

一飞开源,介绍创意、新奇、有趣、实用的开源/AI应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源/AI技术社区平台。致力于打造活力开源/AI社区,共建开源新生态!

一、开源项目简介

SeekCode

桌面客户端 · 本地 Agent · 由 DeepSeek-V4 驱动的 AI 编程工具

A desktop AI coding agent that runs locally on your machine — powered by DeepSeek-V4.

融合 Claude Code(结对编程)与 Codex(任务委派)思路,基于 Electron + Node + React/TypeScript 构建的桌面客户端 AI 编程工具。 Agent 在你本机运行工具循环,深度适配 DeepSeek-V4 的混合推理档位与前缀缓存特性。 集成 Agent 工具循环、本地代码索引检索、记忆系统、Skills / MCP 扩展、内置终端与编辑器——零后端,粘贴一个 API Key 即用。

二、开源协议

使用MIT开源协议

三、界面展示

四、功能概述

为什么选择 SeekCode?

SeekCode

云端 / 插件式 AI 编程工具

️ 形态

桌面客户端,Agent 在本机运行多步工具循环;文件树 / 终端 / 编辑器一体

多为网页 / 编辑器插件

️ 模型适配

深度适配 DeepSeek-V4:混合推理三档 + thinking 解耦 + 前缀缓存

通用接入,未针对单模型优化

成本

仅按 DeepSeek API 计费,实时透明展示花费 / 缓存命中 / 省下金额

订阅制 / 不透明计费

可扩展

内置

Skills / MCP / 扩展市场,按需安装

取决于平台

️ 代码理解

本地 BM25 索引 + 符号大纲(离线零依赖),可选语义向量混合召回

多依赖云端向量库

上手

粘贴一个 API Key 即用,零后端

需注册 / 登录 / 配置

一句话:想要一个跑在自己机器上、深度适配 DeepSeek-V4 的桌面 Agent 编程工具,SeekCode 就是为你准备的。

常见问题(FAQ)

Q:它和云端 / 插件式 AI 编程工具有什么不同? A:SeekCode 是桌面客户端,Agent 在你本机运行多步工具循环(读写文件、跑命令、检索代码),文件树 / 终端 / 编辑器一体;并针对 DeepSeek-V4 的混合推理与前缀缓存做了深度适配。

Q:需要自己搭后端吗? A:不需要。SeekCode 是纯桌面应用,零后端,只需一个 DeepSeek API Key。

Q:大型项目会不会把整个代码库塞进 prompt? A:不会。本地 BM25 索引 + 符号大纲只注入"代码地图",正文按需检索;项目较大时还会提示模型优先用 search_code 定位。

Q:支持哪些平台? A:Windows / macOS / Linux 均可构建打包。

Q:我的代码会上传吗? A:应用自身默认只与 DeepSeek 通信(你的提问与上下文),代码索引与识图均在本机完成。注意:你或 Agent 通过终端 / run_command 执行的命令(如 git push、npm publish)属于你主动发起的正常开发操作。

五、技术选型

快速开始

前置:Node.js ≥ 18

git clone https://github.com/kafkazhang/seek_code.gitcd seek_codenpm install        # 纯 JS 依赖,无需原生编译工具链npm run dev        # 启动开发模式(electron-vite)

首次启动会弹出配置框:

  1. 粘贴 DeepSeek API Key(默认接口 https://api.deepseek.com)
  2. 点「测试连接」确认可用 →「保存并开始」
  3. 点标题栏「打开项目文件夹…」选择一个本地项目
  4. 在底部输入框提问,例如:"梳理这个项目的整体结构"

开发与质量

npm run typecheck      # 类型检查(Node 端 + Web 端)npm run lint           # ESLint(扁平配置,覆盖主/渲染层)npm test               # Vitest 单元测试npm run format         # Prettier 格式化(可选,本地使用)

CI(.github/workflows/ci.yml)在 PR / 主分支推送时跑 typecheck + lint + test 作为质量门。

构建与打包

npm run build          # 编译主/预加载/渲染三端到 out/npm run package:win    # 打 Windows 安装包npm run package:mac    # macOS(支持 --x64 / --arm64)npm run package:linux  # Linux(AppImage)

项目结构

src/  main/        # 主进程(Node)    index.ts        应用入口、窗口与运行配置    config.ts       配置与 API Key(safeStorage 加密)    gateway.ts      DeepSeek 网关 + 缓存优先 Prompt + 成本核算 + FIM 补全    retry.ts        瞬时错误重试 / 指数退避(纯逻辑)    agent.ts        Agent 循环(流式 + 工具调用 + 权限闸门 + 上下文压缩)    subagents.ts    子代理编排(并发委派 + 审批上浮 + 进度事件)    tools.ts        文件/命令工具(限定项目目录内)    editing.ts      编辑纯逻辑:容错匹配/批量编辑/语法体检/glob/大纲(纯逻辑)    checks.ts       项目质量门探测(typecheck/lint/test,纯逻辑)    symbols.ts      符号导航:定义行识别/词边界引用(纯逻辑)    todos.ts        任务清单 todo_write(纯逻辑)    bgproc.ts       后台进程(run_background/bg_output/bg_kill)    webfetch.ts     受控联网读取(强制审批 + 信任出口注册)    htmltext.ts     HTML 转纯文本(纯逻辑)    cmdsafety.ts    命令安全分类(危险/自杀命令识别,纯逻辑)    codeindex.ts    本地代码索引:符号大纲 + BM25 检索(持久化/增量/监听)    hybrid.ts       混合召回纯逻辑:分块 / 余弦 / RRF 融合(纯逻辑)    vecindex.ts     语义向量索引(embedding 缓存 / 增量 / 混合检索入口)    git.ts          Git 面板(status/diff/stage/commit + AI 提交信息与评审)    gitparse.ts     git 输出解析(porcelain/log,纯逻辑)    memory.ts       记忆系统(SEEK.md / 全局)    skills.ts       技能:扫描 / 安装 / 更新 / 仓库发现    mcp.ts          MCP 客户端(stdio + Streamable HTTP)    marketplace.ts  扩展市场(内置目录 + 在线搜索安装)    tasks.ts        后台任务(并发自主 Agent + 队列 + 持久化)    terminal.ts     内置终端(流式、UTF-8、stdin 交互)    ocr.ts          本地 OCR 识图(tesseract.js)    sessions.ts     会话持久化    egress.ts       应用出口白名单 + 主进程受控 fetch(guardedFetch)    net.ts          渲染层出口白名单(webRequest 拦截)    ipc.ts          IPC 处理 + 项目文件树 + 审批往返  preload/     # 预加载(contextBridge 安全桥)  renderer/    # 渲染进程(React + TS):对话、编辑器、终端、文件树、市场、设置、成本仪表盘  shared/      # 主/渲染共享的类型与 IPC 常量

六、源码地址

开源项目地址:

https://github.com/kafkazhang/seek_code

访问一飞开源:https://code.exmay.com/