全球本地部署开发者们一起,打造一个真正属于开源社区的 Coding Agent 了

4 月 27 日
 KaiWuBOSS

同志们,是时候打造一把真正属于开源社区的 Coding Agent 了!

现状:我们被大厂“喂屎”,还要自己擦屁股

我写过 kaiwu(一个本地模型部署器),结果发现——用 Local LLM 做开发的朋友,多得超出想象

大家不断提需求:上下文压缩、Think 模式开关、联网搜索、工具调用……

可这些根本不是 Ollama 或 LM Studio 的事
它们只负责把模型跑起来,至于“怎么让模型变聪明”——那是 Cursor 、Codex 、Hermes 的事。

但大厂们在干嘛?

它们不会花精力优化本地小模型。
因为本地跑得爽,谁还买它们的 API ?

更别提那堵墙了——
国内网络时断时续,任务跑到一半断连,体验像吃苍蝇。
想用 Claude ?得找中转、买注水账号、被收割、还被鄙视。

但墙能拦住资本,拦不住人民。
国际共产主义精神,就体现在一行行开源代码里。


痛点:我们每天都被这六把刀捅

1. 上下文太短,压缩就“失忆”

2. 网络像一堵墙,墙内外都是屎

3. 本地模型连工具都不会用

4. 小模型本身能力就那样,但 API 还不让用

5. 明明本地运行,却是个没记忆的钢铁废料

6. 多模态?视频图片?不存在的

部署难、速度慢、硬件要求高这些,我之前的 kaiwu + LM + Turbo 能解决。
今天我们不聊这些,就聊怎么让 8B 模型跑出 Opus 的体验


我的革命思路:不用 CC 的依赖强 LLM 串行,改用 LLM 做 Gate + 确定性专家的 MOE 架构

核心理念
LLM 只负责当“接线员”,真正干活的是确定性专家——
不依赖模型“啥都懂”,而是让模型只做一件极小、极明确的事。

原理一:Agentless 流水线( ICSE 2025 最佳证明)

不让 LLM 瞎决策,用固定流程 → SWE-bench 上通过率最高,成本最低

我设计的流程( KWCode ): 用户输入 └─► Gate (毫秒级分类) └─► Locator (精确定位文件/函数) └─► Generator (只改该改的地方) └─► Verifier (语法 + pytest ,失败重试)

小模型只需要在小窗口里做一件事——失误率暴跌,错误可被当场抓住

原理二:BM25 + AST 调用图定位(专治“隐藏依赖”)

论文 CodeCompass 发现一个反常识事实:
context 越大的模型,反而越容易漏掉架构上关键但语义上遥远的文件——这叫“导航悖论”。

实验数据( FastAPI 真实项目):

任务类型 BM25 图遍历
有明确关键词 100%
可通过 import 链找到 ~85% ~85%
完全无关键词的隐藏依赖 76.2% 99.4% 🚀

我们的实现

  1. BM25 秒级召回 top-20
  2. AST 调用图展开 2 跳(向上找调用者,向下找被调用者)
  3. 发现那些“名字和 bug 无关但实际是根因”的魔鬼函数

技术栈:tree-sitter + rank-bm25 + SQLite
零依赖、零 embedding 、零 Docker
支持:Python · JS · TS · Java · Go · Rust

原理三:专家飞轮——你的工具越用越强,大厂永远追不上

来自 EE-MCP (NeurIPS 2025) + WLBS 行为图。

预置 12 个专家(通用 7 个 + 中国场景 5 个)。
然后开始飞轮

3 个月后,你的专属专家池——
Cursor 和 Hermes 永远追不上,因为它们无状态,而你有永久记忆

专家可以导出、分享形成我们的社区数据资源。

原理四:失败自动搜索——墙内用 Bing ,墙外用 DDG

Verifier 连挂 2 次 → 自动触发搜索:

零 API key ,零配置,装完即用。
想更隐私?自己部署 SearXNG ,数据不出网。


功能一览(不是为了炫技,是为了解决你的每一天的痛)

模块 做了什么
代码定位 BM25 + AST 调用图,99.4% 命中隐藏依赖
代码修改 只改 patch ,不重写全文,精确匹配
验证重试 语法 + pytest ,失败回滚,失败 2 次开搜索
项目记忆 PROJECT.md / EXPERT.md / PATTERN.md 三层分离,按需 BM25 注入
专家系统 12 预置 + 飞轮自生成 + 可分享安装
中国本地化 自动切 ModelScope / 清华镜像 / Bing 搜索 / Windows 原生

我们和“它们”的不一样

场景 其他工具 KWCode (我们)
Windows 逼你装 WSL2 cmd / PowerShell 原生跑
模型下载 HuggingFace 被墙 自动切 ModelScope
pip 安装 PyPI 慢死 自动切 清华/阿里镜像
搜索增强 DDG 被墙 自动切 Bing 中文版
推荐模型 GPT / Claude (要钱/要梯子) DeepSeek · Qwen · GLM(国产免费)

同志们,这不是一个人的战斗

我只有一台 5060 8G 显存 16G 内存小破电脑,硬盘还时好时坏,花钱买 api 一个月三四千。 我想要人人为龙时代,而不是 api 独大时代。 所以我想打造 一个真正属于开源社区、不依赖大厂 API 、不被墙、让 8B 模型也能干翻 Opus 的 Coding Agent 。

我们有论文支撑,有原型代码,有满腔怒火和热血。
现在还缺你——
缺每一个受够了被收割、被歧视、被网络暴力的开发者。

GitHub 仓库近期开放,代码完全开源。
你可以:

国际共产主义精神,从一行开源代码开始。
让大厂去卖 token 吧,我们有自己的工具了。


行动号召

👉 有没有更好的思路和路径,上述只是我个人研究
👉 后续在本链接发布 github ,欢迎 fork 继续深挖

不要让资本定义“可能”与“不可能”。
我们说了算。 或许很快,8B 模型真能跑赢 OPUS ,所有人都能拥有独属于自己的智能体

要不要先建个群,算了 我社恐 不会维护,有事咱们这个链接聊把

2842 次点击
所在节点    Local LLM
29 条回复
KaiWuBOSS
4 月 27 日
回过头来看 这个帖子怎么写得这么煽动。。。
其实我就是一个人能力不够想找专家帮忙一起写这个项目,我已经有个 MVP
这两天把稳定性跑跑就能发仓库了。
greyfreedom
4 月 27 日
支持大佬
WispZhan
4 月 27 日
链接呢? 如果是 Rust + TS/Bun.sh 愿意贡献一份力。 我也只有一个小破电脑,AMD 5700X + AMD 6900XT
KaiWuBOSS
4 月 27 日
@WispZhan A 卡老师很牛的,我之前只弄过 N 卡,请问现在模型有适配 A 卡好的么?
listenerri
4 月 27 日
点赞但不看好
KaiWuBOSS
4 月 27 日
@listenerri 不好做是么?还是实用性不强?
coefu
4 月 27 日
@KaiWuBOSS #6 不比 10 年前的开源了。如果只是单体 application ,熟悉个把高级语言,也能参与。但是你这个是一个解决方案,里面涉及到的技能和知识点,不是 web 体系,有门槛的。你指望这些普通前后端围墙里的人,主动免费突破自己的知识壁垒,这是妄想。

而且你要做的这个事情,本身 top 厂商 也没有完全解决。还在演化迭代中,随着模型本身能力的进化,harness 都快要成过去时了。虽然,我不看好 LLM 这波,但是我自己也有使用的需求,我也持续关注。但是,变化太快了,你可以这么理解,agentic 本身的鲁棒性 一般,方法论迭代,时好时坏,benchmark 甚至都不能作为完整的验证依据。

这也是为什么市面上,迟迟没有人做。我 2024 年夏天的时候,langchain 就摸了一遍,去年开春的时候,llama.cpp 也摸了一遍,我这个摸,都是直接看源码的,当然,这是个人习惯,我看源码和看小说没什么区别。我为什么没做,因为,我看的太多了。我试图给 llama.cpp 找 异构多机多卡的分布式并行推理 的解决方案,想了几个月,并且还花点钱组了一个 10G 网络,但是最终,我发现是徒劳的。

比如,联网的问题,searxng ,如果你深度使用过就知道,就是个玩具(一则是它整合结果的算法,二则是 search 能识别有时候返回不相干结果)。不用钱买 search api ,都是玩具。
记忆这块,本身学界也没有什么好方案,论文出了一大堆,吹的比实际都好。至于 a ,o ,厂的技术,基本上都是人力财力堆出来的。开源完全无法媲美。

kvcache 的问题,在 gram 有限的开源环境中不可能解决,这是 0 day 原始问题,不是工程技术的问题,是原始架构的问题。唯一的方法,就是堆 gram 。

context 问题,和 kvcache 如出一辙。

有限 gram 的开源异构环境,没有通用解。
scyuns
4 月 28 日
不是咋贡献呀 我们整一个本土化 codex 吗
ayasealter570
4 月 28 日
吓我一跳,我以后后面要一转中转站广告了。。
defunct9
4 月 28 日
没有用啊,没有模型,没法用。皮之不存,毛将焉附?
940i3s34v4F1HW41
4 月 28 日
你手里没有真东西,最后就变成其他人薅你的中转额度
whereicg
4 月 28 日
寇可往,我亦可往
tuomasi
4 月 28 日
硬盘坏了怎么办
osilinka
4 月 28 日
支持
SHIINASAMA
4 月 28 日
开源方案不少了吧,可以 fork 一个 vibe 魔改,也可以自己 vibe 一个
GeruzoniAnsasu
4 月 28 日
/go/aislop


> 后续在本链接发布


你自己看了不会觉得不妥么?
给你看我收藏的第一个这种帖子: https://study.congcong.us/t/561958
KaiWuBOSS
4 月 28 日
@coefu 非常感谢让我认识到了不足,我现在的做法是 1 、追平 CC ,cursor 和 hermes ,他们的基础功能都实现,我觉得这个不难,毕竟大部分都开源。实现也没有技术难度。2 、在他们基础上,对小 B 模型进行辅助,比如上下文插入记忆实现无限压缩、比如限制他重复废话,比如尝试通过让他搜索互联网拿到现成答案去解决他无法解决的问题等。3 、增加一些优化本地模型或者本土化的功能,比如网络被墙、工具调用问题。4 、最后蒸馏一些好的代码规范。确实如您所说,我没办法突破,但我做的本身只是一个整合,把市面上能对本地部署有优化的内容和功能整合到这个项目中。
KaiWuBOSS
4 月 28 日
@GeruzoniAnsasu 不好意思 我才搞 vibe 不太明白这里面的忌讳,这样做不合适么?我怕我现在仓库发早了,用户一看功能残缺没兴趣继续了。
KaiWuBOSS
4 月 28 日
@scyuns 嗯 可以这么说 本土化 且对开源模型专项优化的 codex 或者 cc 或者 hermess
KaiWuBOSS
4 月 28 日
@coefu 尤其我对你刚说 search 的问题我也遇到,我的技术方案是:
Query 生成:一次 LLM 调用,把中文任务描述转成英文搜索 query 。这是中文 query 在技术搜索上效果明显差于英文。
SearXNG:主搜索引擎,本地 Docker 部署,JSON API 调用。SearXNG 内部聚合了几十个搜索源,它做路由。自动启动容器、自动配置 JSON 格式。DDG 库( duckduckgo-search )作为 fallback ,SearXNG 不可用时接管。
质量过滤:域名白名单( github/stackoverflow/docs.python.org 等)优先排序,黑名单( csdn/baidu/zhihu 等)直接过滤。最多取 3 条 URL 进入下一步。
页面抓取:trafilatura 提取正文,失败时降级到 httpx+简单 HTML 去标签。天气类网站有反爬限制,SearXNG 返回的 snippet 对这类查询已经够用,不必强求全文。
压缩注入:提取的正文截断到 800 字,注入 Generator 的 prompt 。
但实际使用的时候,体验没有 cc 好,老师能给个更好思路么?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1208904

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX