KISS Sorcar: A Stupidly-Simple General-Purpose and Software Engineering AI Assistant

TL;DR

KISS Sorcar以五层架构和Git隔离实现长程代理,Terminal Bench 2.0达62.2%。

cs.SE 🟡 进阶级 2026-04-27 33 次浏览
Koushik Sen
软件工程代理 ReAct 长程任务 Git Worktree 多模型协作

核心发现

方法论

论文提出约2,900行的KISS Agent Framework,以五层组合架构处理不同职责:KISS Agent执行带预算追踪的ReAct循环;Relentless Agent用摘要跨上下文续接;Sorcar Agent提供Bash、Read、Edit、Write、浏览器和并行子代理;Chat Sorcar Agent持久化多轮历史;Worktree Sorcar Agent为每项任务创建Git分支与worktree。系统提示词编码测试、验证、简洁等工程原则。

关键结果

  • 在Terminal Bench 2.0上,Claude Opus 4.6驱动的KISS Sorcar总体通过率为62.2%,高于Claude Code的58%和Cursor Composer 2的61.7%。作者强调未针对该基准或特定模型调提示词。
  • 核心实现约2,924行:KISS、Relentless、Sorcar、Chat Sorcar和Worktree层分别为463、431、685、497和848行;系统支持504个模型、9类提供商及23个消息代理。
  • 论文未提供完整消融实验或统计显著性分析;主要证据来自Terminal Bench 2.0、四个月自举开发和工程功能展示,因此应谨慎解读相对优势。

研究意义

研究表明,可靠的软件工程代理不一定需要复杂的异步多智能体编排或轨迹压缩。通过预算控制、结构化续接、验证优先和Git隔离,系统直接回应有限上下文、单次错误扩散、死循环、低质量代码以及难以回滚等长期痛点。其本地优先、开源和自带密钥设计,也降低了企业和个人采用代理的隐私与供应商锁定成本。

技术贡献

技术贡献在于把五个单一职责层组合成可解释的代理栈。Relentless Agent在上下文或步数耗尽时生成按时间排序、含代码片段的摘要,并从新会话继续;set_model可在同一轨迹中迁移模型、保留历史和用量;Worktree层通过分支、锁和Git状态实现并发安全及崩溃恢复。实现强调工程机制而非新训练算法。

新颖性

新颖性主要是系统级整合,而非提出新的学习算法。相较通常偏重速度、单模型或单会话的Claude Code与Cursor,KISS Sorcar把多供应商切换、长任务续接、消息渠道、IDE/CLI/Web统一入口和逐任务Git隔离组合在一个约2,900行的开源框架中。

局限性

  • 评测仅报告Terminal Bench 2.0的总体通过率,缺少按任务类别、成本、延迟和方差的细分,也没有严格消融,因此无法确定五层设计各自带来的增益。
  • 摘要可能随多日任务增长而变得臃肿;作者尚未系统评估摘要规模。此外,工作树依赖Git前提,不满足条件时会退回直接执行,隔离保障随之减弱。

未来方向

未来应评估摘要随任务长度的可扩展性,开展逐层消融、成本—质量—延迟分析和更多基准测试,并研究更稳健的上下文压缩、并行编排、权限控制与安全沙箱。

AI 总览摘要

大型语言模型已经能够写代码、调用工具并理解软件架构,但在数小时甚至数日的工程任务中,有限上下文、一次错误导致全局失控、反复陷入死路、低质量“AI slop”以及难以审查和回滚的修改,仍阻碍实际部署。

KISS Sorcar以“尽可能简单”为设计原则,构建了约2,900行核心代码的五层代理框架。KISS Agent执行预算追踪的ReAct循环;Relentless Agent通过结构化摘要跨会话续接;Sorcar Agent加入Bash、Read、Edit、Write、Playwright浏览器和并行子代理;Chat Sorcar Agent保存最多10项关键历史;Worktree Sorcar Agent则为每项任务创建独立Git分支。模型可通过set_model在同一任务中动态切换,代码修改还可在容器中运行。

系统以本地守护进程同时提供VS Code扩展、CLI和Web/移动端,支持504个模型和23类消息代理。作者优先追求质量,要求模型运行linter、类型检查器和测试,而非盲目追求速度。使用Claude Opus 4.6时,Terminal Bench 2.0通过率为62.2%,超过Claude Code的58%和Cursor Composer 2的61.7%。不过,论文缺乏完整消融和成本分析,结果更像强有力的工程报告,而非已充分验证的科学定律。

深度分析

研究背景

代码代理从GitHub问题修复扩展到通用软件工程。代表性系统包括Claude Code、Cursor以及基于ReAct的研究代理;相关工作还包括Reflexion、GEPA、AlphaEvolve和OpenEvolve。它们展示了工具调用和自动修改代码的能力,但长程可靠性、上下文管理、回滚与审查仍未解决。

核心问题

代理必须在有限上下文和预算内完成多步骤任务;错误会污染后续推理,重复尝试可能形成死循环。直接改动用户工作树会增加风险,单一模型也难兼顾探索、实现和审查。问题本质是如何以低复杂度提供持续、可验证、可恢复的执行。

核心创新

  • ��五层单一职责架构,避免庞大抽象。•Relentless Agent用时间顺序摘要实现跨会话续接,而非复杂轨迹压缩。•set_model保留对话、工具模式和用量,实现多供应商协作。•Worktree按任务隔离分支,并以锁、Git配置和状态恢复支持并发与崩溃恢复。•统一VS Code、CLI、Web和本地端点。

方法详解

  • ��输入:用户目标、模型、工具和预算;KISS Agent运行原生函数调用ReAct循环,逐步统计token、美元成本和步数。•续接:达到阈值时调用finish(success,is_continue,summary),Relentless Agent创建新上下文并禁止重复已完成工作;异常时由独立摘要代理读取轨迹文件。•执行:Sorcar Agent调用Bash、Read、Edit、Write、Chromium/Playwright、Docker和并行子代理。•协作:set_model迁移历史和累计用量,支持“探索—实现—审查”。•隔离:Worktree为任务创建分支,合并时通过baseline和cherry-pick排除用户原有修改。

实验设计

主要评测使用Terminal Bench 2.0,以Claude Opus 4.6驱动KISS Sorcar,并与Claude Code和Cursor Composer 2比较总体通过率。论文报告62.2%、58%和61.7%,未针对基准调参。工程证据还包括四个月自举开发、代码规模统计和功能演示;没有完整的逐层消融、重复试验或延迟成本实验。

结果分析

KISS Sorcar取得62.2%通过率,较Claude Code高4.2个百分点,较Cursor高0.5个百分点。优势可能来自持续验证、上下文续接和隔离,而非更复杂的模型训练。504模型、9类提供商和多模型动态切换扩大了部署选择,但论文没有证明这些功能在基准中的独立贡献。

应用场景

个人开发者可在VS Code或CLI中让代理研究仓库、修改代码、运行测试并在独立分支中审查。团队可用本地端点、Docker和自带密钥处理敏感项目;研究者可用单提示驱动GEPA提示优化、算法优化或仓库优化。采用前仍需配置模型API、Git和权限策略。

局限与展望

系统依赖外部模型质量,复杂任务仍可能产生错误或摘要失真。长任务摘要规模、模型切换成本和并行子代理的真实收益未被充分量化。Terminal Bench单一总体指标不足以支持广泛结论;非Git目录只能直接执行,安全隔离减弱。后续需加入更严格基准、权限控制和可重复统计。

通俗解读 非专业人士也能看懂

把KISS Sorcar想成一个有总管、记录员、工人、秘书和保险箱的维修工厂。总管每做一步都看预算,并在完成时报告;记录员在当天结束时写下按顺序的工作日志,第二天的新班组照着日志继续,不必从头开始。工人可以打开网页、读写文件、运行检查,还能让几组工人同时调查不同问题。

秘书记住最近的重要订单,保险箱则给每个订单一间独立车间。工人弄坏东西时,主车间不会被碰到,老板可以查看差异、接受修改或丢弃整个订单。需要时,还能让便宜工人搜集资料,再请更强的工人实现和检查。

这套工厂不靠神奇的新机器,而靠清楚分工、记账、复核和隔离。论文显示它在Terminal Bench 2.0通过62.2%,但仍需要更多订单和更严格统计,才能证明每个岗位都确实有用。

简单解释 像给14岁少年讲一样

想象你在做一个超大型游戏地图,AI是你的队友。普通队友可能写一会儿就忘了前面的计划,犯一次错后一直重复,甚至直接把你的存档改坏。KISS Sorcar像一个更有组织的团队:一个队友负责一步步行动和记分,另一个把进度写成日志,保证换班后能继续。

还有队友专门读文件、改代码、打开网页和跑测试;不同队友可以同时调查不同线索。你也能让快但普通的模型先搜索,再换成强模型审查。每个任务都在自己的Git分支里,就像复制一个存档来实验,失败了不会毁掉原来的世界。

它同时能在VS Code、命令行和网页上工作。作者用Claude Opus 4.6测试,在Terminal Bench 2.0拿到62.2%,比Claude Code的58%和Cursor的61.7%高。但这不是“永不犯错”的机器人:它仍可能理解错要求,日志也可能越来越长,所以还需要更多测试。

术语表

ReAct(推理—行动)

让模型交替思考、调用工具并根据结果继续行动的执行方式。KISS Agent用它完成多步任务。

核心KISS Agent循环。

Relentless Agent(持续代理)

在上下文或步数用尽后生成进度摘要,并开启新会话继续任务。摘要包含时间顺序和代码片段。

解决有限上下文。

Git worktree(Git工作树)

同一仓库的独立工作目录,可绑定不同分支。论文用它隔离每项代理任务。

Worktree Sorcar层。

MCP(模型上下文协议)

连接模型与外部工具或服务的标准化协议。Sorcar可发现和管理MCP服务器。

工具扩展机制。

GEPA

用于提示词优化的研究方法,可通过反馈改进提示。论文支持其单提示驱动,但系统提示词实际由人工调优。

AI发现与提示优化。

Terminal Bench 2.0

评测软件工程代理解决终端任务的基准。论文报告KISS Sorcar总体通过率62.2%。

主要实验基准。

开放问题 这项研究留下的未解疑问

  • 1 五层架构各自贡献多少尚不清楚;需要严格消融、不同模型重复实验和置信区间。
  • 2 摘要在多日任务中是否会膨胀、遗漏关键状态或传播错误,论文只提供经验判断,缺少规模化测量。
  • 3 62.2%的通过率未同时报告token成本、运行时间和人工审查负担,质量优势的实际经济性仍待验证。

应用场景

近期应用

隔离式代码维护

开发者在VS Code或CLI中提交修复目标,Sorcar在独立Git worktree修改、运行linter、类型检查和测试;用户只需审查差异后合并。前提是项目可用Git并配置模型API。

多模型代码审查

先用Gemini 2.5 Flash等快速模型搜索仓库,再用Claude Opus 4.7实现,最后用gpt-4o复核并生成回归测试。set_model保留同一会话历史和预算记录。

远期愿景

本地优先的软件工程平台

未来可将代理接入企业代码库、Slack、Gmail和部署系统,形成可审计的自动研究、开发和运维流水线。关键障碍是权限、安全、成本控制以及跨任务结果的可靠评估。

原文摘要

Large language models can generate code and call tools fluently, yet deploying them as practical assistants for long-horizon software engineering and AI-discovery tasks still exposes persistent gaps: finite context windows, a single mistake that can derail entire sessions, agents that get stuck in dead ends, AI slop, and generated changes that are difficult to review or revert. We present KISS Sorcar, an open-source general-purpose AI agent for long-horizon tasks and AI discovery that doubles as an integrated development environment (IDE). It is built on top of the KISS Agent Framework, a stupidly-simple AI agent framework of roughly 2,900 lines of code for the core agents. The framework addresses the gaps above through a structured system prompt and a five-layer agent hierarchy in which each layer adds exactly one concern: budget-tracked ReAct execution, automatic continuation across sub-sessions via summarization, coding and browser tools with parallel sub-agents, persistent multi-turn chat with history recall, and git worktree isolation so every task runs on its own branch. Engineering principles are encoded in the agent's system prompt.

cs.SE