标签 开发工具 下的文章

很感谢一直支持我的朋友,虽然很久没发帖子,但是插件一直努力更新,今天有一些有意思的事情,于是想分享一下。

随时随地,随用随走是AI Anywhere的本心,智能体是必然的发展方向

前提

前段时间更新了内置MCP,包括(utools发布版本为1.11.10,测试版为1.11.14):

  • Web Search:获取互联网信息和网页内容
    • 网络搜索(DDG):通过关键词在互联网上搜索相关信息并返回摘要
    • 网页获取:抓取并解析指定 URL 网页的全文内容
  • 文件操作:对本地文件系统进行查找、读取和编辑
    • 文件定位:使用通配符模式快速查找匹配的文件路径
    • 内容检索:使用正则表达式在文件内容中搜索特定模式
    • 读取文件:从本地或远程路径读取文件内容(支持分段读取)
    • 写入文件:创建新文件或完全覆盖现有文件内容
    • 编辑文件:通过精确字符串替换来修改文件内容
  • 代码执行:在本地环境中运行 Python 代码和系统命令
    • 运行 Python 代码:直接执行提供的 Python 代码片段
    • 运行 Python 文件:执行本地存储的 .py 脚本文件
    • 解释器列表:扫描并列出系统中所有可用的 Python 解释器路径
    • 执行 Shell 命令:在 Windows 系统上执行各类命令行指令
  • 任务委派:处理复杂的多步骤任务
    • 子智能体(Sub-Agent):将复杂任务委派给具备特定工具权限的子 Agent 协同完成

很眼熟?因为照着claude code的功能模仿的,他目前是我见到的最优秀的智能体示例


事件经过

今天看到了qwen3-tts发布的消息,但是已经没有追着新模型本地部署测试的激情了,突然想到能不能试试我的智能体?于是便有了接下来的一幕:

系统提示词:空
模型:gemini-3-flash-preview
MCP工具:仅限于上述的内置MCP

提出要求-自动部署-告诉他取消用uv环境,使用配置好CUDA的p312环境,然后就部署好了?!

虽然anywhere可以分享会话文件给其他用户打开并继续聊天,但是因为命令行运行涉及到个人隐私,于是分享一下导出的html

See the Pen qwen3-tts-deployment by ComorebiC (@ComorebiC)
on CodePen.

整个过程我基本没怎么操心(除了偶尔运行时命令行报错,我原封不动发回去让他处理就行)。

虽然这是 Claude Code 的一个功能,但也是我用 Anywhere 从“划词翻译”、“OCR”、“辅助读论文”这些基础功能向更便捷更智能迈进的一大步(其实生活中也有些例子了,比如文件归档,我把目录告诉 AI,告诉它整理格式,它能自动分类、命名整理好,如开启chrome dev tool mcp,让它帮我爬取炎拳漫画的某些章节等等)。

未来我们也能自定义更多便捷的智能体,不仅仅是代码方面,还有办公、开发、个人兴趣、学习……超级期待!


如果有好的创意欢迎分享,我很乐意尝试,如果对插件有建议也欢迎分享!


📌 转载信息
转载时间: 2026/1/25 08:06:27

一直使用 vs code 开发 go,主要搞 web ,最近体验了一下 sublime-text ,发现这个曾经流行的开发工具对 GO 的支持很一般,插件还是很多年前的,是不是我不会配置,有没大神使用 ST 开发?

是什么?

开源版 Claude Cowor

Claude Cowor 目前只有 Max 用户才能使用

特性

  • 自主代理 - 像同事一样工作,而不只是聊天机器人
  • 任务规划 - 分析任务并制定执行计划
  • 进度更新 - 每一步都展示正在做什么
  • 安全可控 - 使用 OpenCode 内置的权限系统
  • 零依赖 - 只有一个 markdown 文件
  • 模型无关 - 使用你在 OpenCode 中配置的任何模型

前置要求

还没安装 OpenCode 的请移步:

安装

暂不支持 Windows,其他安装方式见官方文档
curl -fsSL https://raw.githubusercontent.com/Lucifer1H/open-cowork/main/install.sh | bash

使用示例

# 代码重构
/cowork 重构认证模块,提取验证逻辑

# 文件整理
/cowork 按功能重新组织 components 文件夹

# 生成文档
/cowork 分析代码库并生成完整的 API 文档

# Bug 调查
/cowork 找出登录间歇性失败的原因并修复

# 代码迁移
/cowork 将所有类组件转换为带 hooks 的函数式组件

PS: 本来昨天就发了,不知道是不是包含了小众软件链接,没有发出来,草稿里面也没了,今天重新发一下。


📌 转载信息
原作者: ageovb
转载时间: 2026/1/17 09:07:20

复制
curl -X 'POST' \
  'https://apis.shikangsi.com/api/v2/bilibili/detail' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "url": "https://www.bilibili.com/video/BV1Th411A7Yt/"
}'

url 支持长短链接
获取 B 站视频基础信息的 api1

因为要过风控和服务器性能原因,速度没有那么快。

分享下 window10 的包管理工具 winget ,类似 apt、brew

# 关键字搜索
winget find 输入法
# ID 安装,可以多个
winget install Tencent.WeType astral-sh.uv
# 检查更新
winget update
# 更新,可以多个
winget update Tencent.WeType astral-sh.uv
# 本地列表
winget list [可选关键字]
# 查看软件信息
winget show Tencent.WeType

注意默认会安装在系统盘

部分软件的小版本可能不是最新,取决于软件官方更新的速度吧

最好有魔法,部分电脑不知道为什么没有魔法不行,但我有的电脑却可以

最大的好处就是:不用到处找安装包了

我一般的小软件都优先在 winget 搜索安装

如:uv git volta 等工具

不想安装到系统盘的,也可以通过 winget 查找下载连接,手动安装到其他盘


📌 转载信息
原作者:
zhedream
转载时间:
2026/1/14 18:12:47

Coding agents(编码智能体) 已成为应用型 AI 中最活跃的领域之一,但许多团队在模型或服务商更迭时,仍不断重复构建脆弱的基础设施。那么,如何在生态不断变化的背景下保持快速迭代与高度韧性,并将更多精力投入到领域特定的工作流程和用户体验上?

作为行业内的动向标杆,OpenAI 的 Codex 提出了解决方法——“模型和 Harness(工具集)的共同构建”。最近,OpenAI 的架构师 Bill Chen 和 Brian Fioca 在演讲里一起详细介绍了该构建过程中克服的挑战,以及这个 Coding Agent 本身一些新兴的使用模式。基于该演讲视频,InfoQ 进行了部分删改。

核心观点如下:

  • 通过将模型与 Harness 一同开发,你能更好地理解它的行为,这也是 Codex 作为一个集成了模型和 Harness 的系统的优势所在。

  • 单纯在模型上构建包装器,忽视了基础设施层的整体价值。将精力集中在让产品脱颖而出的差异化功能上,才是这种模式的核心价值所在。

  • 未来将是关于庞大代码库和非标准库的时代,如何在闭源环境中工作,如何匹配现有模板和实践,模型将不断支持这些能力。

Coding Agent 的构成

首先,我们来谈谈 Coding Agent 的构成。其实非常简单,一个 Coding Agent 由三部分组成:用户界面、模型和 Harness。用户界面显而易见,可能是命令行工具,也可能是集成开发环境,或者是云端或后台 Agent。模型也很直白,比如我们最近发布的 GPT-5.1 系列模型或其他一些供应商的模型。至于 Harness,这是一个稍微复杂一点的部分,它直接与模型交互,最简化地说,可以将其看作是由一系列提示和工具组合而成的核心 Agent 循环,它为模型提供输入和输出。

Coding 领域是应用人工智能最活跃的前沿之一,而随着新模型的不断发布,我们面临的挑战也在增加。更为复杂的是,大家不得不不断调整 Agent 以适应新发布的模型。

接下来我们将聚焦于 Harness 的部分。Harness 是模型的接口层,它是模型与用户、代码之间进行交互的媒介。它包括了模型需要的所有组件,以便在多轮对话中进行工作,调用工具,并最终为你编写代码,解读用户的需求。对一些产品来说,Harness 可能是其中的关键部分。不过,构建一个高效的 Harness 并不是一件轻松的事。

那么,构建 Harness 过程中遇到的挑战有哪些呢?首先是 AV(音视频工具)问题。你可能会为 Agent 提供一个全新的、创新的工具,但它可能是模型之前从未见过的,它可能并不擅长使用这种工具。即使它曾经见过,你也需要花时间根据该模型的特点调整 Prompt。

新模型不断发布,延迟问题也是一个挑战。模型在处理某些问题时需要时间,那么,我们应该如何设计提示,避免延迟过长?如何在用户体验上展示模型思考的过程?它在思考时是否与用户沟通,还是我们需要总结其输出结果?此外,管理上下文窗口和数据压缩也是一大难题。另外,API 接口也在不断变化,现在我们有完成功能、响应功能,以及未来可能出现的其他功能,模型是否能熟练使用这些工具以便发挥最大的智能也是一个问题。

将模型适配到 Harness 中需要大量的 Prompt 设计。实际上,模型的训练方式会带来一些副作用。我喜欢这样理解:(Steerability = Intelligence + Habit)智能加上习惯。一方面,智能是指:模型擅长什么?熟悉哪些编程语言?在某些框架中,模型能把代码写得多好?另一方面,它又养成了哪些习惯来解决问题?我们在训练模型时,培养了它在规划解决方案、查找背景信息、思考问题后再动手写代码,并在最后测试工作的习惯。

理解这些习惯是成为一名优秀的 Prompt 工程师的关键。如果你没有按照模型熟悉的方式来指导它,可能会遇到问题。当我们发布 GPT-5 时,许多不习惯使用我们模型的人,尝试将其他模型的 Prompt 直接套用到我们的 Harness 中,结果发现我们的模型做的事情比其他模型要更为细致,导致了响应速度慢,效果不如预期。我们最终发现,如果让模型按照它习惯的方式进行工作,而不是过度引导,它的表现会更好。通过与模型的对话,我问它:“我喜欢这个解决方案,但它花了太长时间。下次你能做得更快吗?”模型回答说:“你让我去看所有的内容,其实我并不需要这样做,正是因为这个原因,才耗费了这么长时间。”

因此,通过将模型与 Harness 一同开发,你能更好地理解它的行为,这也是 Codex 作为一个集成了模型和 Harness 的系统的优势所在。

Codex 作为 Harness/Agent

Codex 被设计成一个适用于各种编程环境的 Agent,它可以作为 VS Code 插件、CLI 工具使用,甚至可以通过 VS Code 插件或手机上的 ChatGPT 在云端调用。它的功能非常基础:你可以通过提示将想法转化为可运行的代码,具备规划能力。它能在代码仓库中导航并编辑文件,执行命令和任务,你也可以从 Slack 或 GitHub 上调用它来审查 PR。

这意味着 Codex 的 Harness 需要能够完成许多复杂的任务:需要处理并行工具调用、线程合并等问题,还要考虑安全性,例如沙箱管理、提示语转发、权限设置、端口管理等。数据压缩和上下文优化的管理也非常复杂。何时触发压缩,何时重新注入数据,如何优化缓存,所有这些都是必须要解决的挑战。如果你要从零开始构建这些功能并保持其更新,工作量巨大。幸好,我们已经将这些功能集成到一个 Agent 系统中,它能安全地编写自己的工具来解决遇到的新问题。

这听起来比普通的 Coding Agent 强大多了,不是吗?但想想看,其实在浏览器和图形用户界面出现之前,我们操作计算机的方式不就是通过命令行界面写代码并将其串联起来吗?这意味着,如果你能将任务以命令行方式以及文件任务的形式表达出来,Codex 就能知道该如何执行。

举个例子,我喜欢使用 Codex 将我的桌面上的照片整理到一个文件夹里,这是一个非常简单的应用场景。但它还能做的不仅如此,它能够分析文件夹中大量的 CSV 文件,进行数据分析,这并不一定是 Coding 任务,只要能够通过命令行工具来完成,Codex 就能帮你做。现在我们可以看到,Codex 是如此强大和有趣。

用 Codex 构建自己的 Agent

如果你希望将 Codex 集成到自己的 Agent 中,该如何操作呢?如果你打算创建下一个 Coding 初创公司,一个关键的模式是:Harness 成为新的抽象层。这个模式的好处非常明显,你不再需要在每次模型升级时都优先优化提示语和工具。但这是不是意味着你仅仅是在构建一个包装器呢?不是。正如我所说,单纯在模型上构建包装器,忽视了基础设施层的整体价值。将精力集中在让产品脱颖而出的差异化功能上,才是这种模式的核心价值所在。

我们来看看一些我们与客户合作时所遇到的模式,这些模式实际上帮助他们成功构建了产品。Codex 是一个 SDK,你可以通过 TypeScript 库来调用它,也可以通过 Python 执行它。它还提供了一个 GitHub 动作,能够自动合并 PR 中的冲突,解决大家讨厌的合并问题。此外,你还可以将它添加到 AgentSDK 中,并为你的产品提供 MCP 连接器。这样,你就可以拥有一个 Agent 系统。

我喜欢说,我们从最初的聊天机器人开始,它们能与用户对话;然后我们为这些聊天机器人提供了使用的工具;如今,你可以为聊天机器人添加更多工具,使它能够自己生成尚未拥有的 Harness。现在,你可以构建一个企业级的软件,允许它为每个客户即时编写插件连接器,这曾是专业服务团队的工作。你可以获得完全可定制的软件,且它可以与自己对话。我曾为开发日创建了一个看板,它能够自动修复自己的 bug,非常有趣。

 

最后,你也可以像 Zed 一样,将 Codex 嵌入到一个层级中,为 IDE 提供接口,使其能够与用户互动并进行代码编辑。这样,Zed 就不必处理我们擅长的部分,而是可以专注于打造最好的代码编辑器。

我们的顶级合作伙伴,如 GitHub,已经利用这些模式取得了巨大成功。我们为 GitHub 创建了一个 SDK,允许他们直接与 Codex 集成。你也可以使用这个 SDK 将 Codex 作为你 CI/CD 管道的一部分,或者将它作为与自己 Agent 直接互动的工具。如果你想定制 Agent 层,完全可以这么做。举个例子,我们与 Cursor 团队紧密合作,他们将自己的 Harness 与我们开源的 Codex CLI 实现对接,成功地优化了系统性能,所有这些都是公开可用的,你可以克隆我们的代码库,随意使用。

Codex 的未来是什么样的呢?它还没有发布一年,尤其是在推出 Codex Max 之后,变化非常迅速。它目前是增长最快的模型,每周服务数十万亿个 token,这个数字从开发日以来翻了一番。我们可以合理假设,模型将变得更强大,它们能处理更长周期的任务,而且不需要监督。新模型的信任度将进一步提高,我相信这些模型已经能够处理比六个月前更复杂的工作,而且这种信任感将不断增长。

未来将是关于庞大代码库和非标准库的时代,如何在闭源环境中工作,如何匹配现有模板和实践,模型将不断支持这些能力。SDK 也将不断发展,以更好地支持这些模型的能力,使模型能够在执行任务的过程中不断学习,避免重复错误,并为写代码和使用终端解决问题的 Agent 提供更多支持,你将能够通过 SDK 在自己的产品中使用这一切。

那么,我们从中学到了什么呢?Harness 构建非常复杂,特别是在新的模型不断发布的背景下。我们已经为你在 Codex 里构建了一个集成的工具,你可以直接使用它,或者查看源代码自行改进。除 Coding 以外,通过它你还可以构建更多全新功能,而我们会处理确保你的计算机 Agent 具备最强的能力。同时,我们非常期待看到你们用它创造出的产品。

参考链接:

https://www.youtube.com/watch?v=wVl6ZjELpBk

为什么命令行越来越具有代理式功能

传统上,终端或 shell 是一种命令式工具,依赖于像lsgrepgit这样的预定义命令来执行特定指令。

 

然而,像Gemini CLIClaude CodeAutoGPT这样的代理性命令行工具的最新进展已经将这个简单的实用程序转变为一个更动态和智能的助手。

 

这些代理式 CLI 工具允许用户用自然语言描述更高级的目标或任务,从而使简陋的 shell 栩栩如生。

 

它们可以规划步骤,利用各种工具完成不同任务(例如文件处理、代码执行和网络搜索),对输出进行推理,并充当辅助驾驶以帮助完成任务。

 

这显著减少了用户的心智负担,并最大限度地减少了多个工具之间的上下文切换。至关重要的是,用户通过批准或指导智能体的过程来保持控制权,确保自动化和用户监督之间的平衡。

 

在本文中,我们将探讨这些代理式工具的架构,对比不同的规划风格,如 ReAct 和计划-执行。

 

我们还将检查代理式工作流程的实际生命周期,从意图捕获到执行,并讨论可靠日常使用所需的关键安全护栏。

 

端到端代理式终端生命周期:一个提示,三个智能体

虽然人工智能在开发中的兴起通常与聊天界面(如 ChatGPT)和代理式 IDE(如Cursor)有关,但代理式 CLI 占据了一个独特的利基市场。基于 IDE 的智能体擅长于以丰富的视觉上下文为中心的代码任务,但它们通常局限于编辑器的窗口。

 

CLI 满足了开发人员管理基础设施和 git 工作流的需求:shell。这种无头的、可组合的特性允许它以 GUI 绑定代理无法做到的方式将工具和系统命令链接起来。然而,请注意,随着像 Gemini CLI 这样的智能体现在可以与 IDE(如 VSCode)集成以提供其建议的差异视图,这种区别正在变得模糊。

 

为了详细说明代理式终端工具的强大功能,让我们讨论一个运行示例。

 

这些标记文件封装了关于如何构建和测试 repo 的事实,以及文档和脚本的约定。他们基本上是代理的入职文件。例如,Gemini CLI 的文件名为“Gemini.md”。Claude Code 工具也使用了类似的约定。

 

考虑一个常见场景,开发人员需要用标准文档和自动化脚本启动一个新的存储库。与其手动创建每个文件并编写样板代码,代理式 CLI 可以从单个高级指令处理整个过程,从而确保一致性并节省宝贵的时间。

 

输入提示:

添加一个 CONTRIBUTING.md,一个 PULL_REQUEST_TEMPLATE.md,以及一个 scripts/smoke-check.sh,运行一个可配置的命令并在失败时退出非零;更新 README 以记录两者,并打开一个 PR。

 

清单 1:用户提示代码片段

 

为了理解这个指令是如何转化为行动的,我们将把代理式的工作流程分解为它的组成阶段。我们从意图捕获开始,其中智能体在项目的特定上下文中定位自己,然后转移到规划风格,对比不同模型架构其推理的方式。后续部分将详细说明执行实际工作的 Tool Execution 循环和防止自主事故的关键安全防护措施。最后,我们将看看结果如何呈现给用户,说明在不同的品牌名称下,大多数代理式工具共享一个共同的架构 DNA。

 

阶段 1:意图捕获和上下文形成

为了确保 LLM 的高质量提示,智能体首先收集所有必要的信息,然后进行规划或执行。这种方法包括几个步骤:将任务链接到当前工作目录,管理会话状态,并将每个项目的配置保存在 dotfolders(例如,./.gemini 和./.claude)。这种方法消除了重复使用标志进行重复任务的需要。

 

此外,指令还隐式地从各种位置获取。以下是 CLI 智能体除了用户的提示之外,从哪些主要信号源获取的一些:

 

特定于文件夹的上下文文件

这些是封装了有关你的存储库如何构建和测试以及你的文档和脚本约定的事实的 markdown 文件。它们本质上充当你智能体的入门文档。例如,Gemini CLI 的文件称为Gemini.md。Claude Code 工具也使用了类似的约定。

 

这是一个高性能的SaaS后端。* **核心原则:** 可读性优于聪明度。显式优于隐式。* **架构:** 六边形架构(端口和适配器)。* **安全性:** 零信任安全模型。所有输入必须通过Pydantic进行验证。* **语言:** Python 3.11+(需要严格类型)。* **框架:** FastAPI(异步默认)。* **数据库:** PostgreSQL(通过SQLAlchemy 2.0异步会话)。* **测试:** Pytest(覆盖率必须保持>90%)。
复制代码

 

清单 2:Gemini.md 示例

 

技能

早期智能体的一个主要限制是需要将所有指令塞进上下文窗口。Anthropic 的 Claude Code 引入了Skills的概念,它建立在上述 markdown 文件的想法之上,作为专业知识的模块化包(例如,PDF 操作、数据分析和 React 最佳实践),作为包含SKILL.md的文件夹存在。

 

这种包含使得渐进式披露成为可能:智能体最初只看到可用技能的名称/描述(消耗最少的词元)。然后,只有在用户的任务需要时,它才动态安装或读取完整的SKILL.md指令集。这种方法允许将智能体默认成为通才,但在需要时是专家。

 

代码库信号

CLI 可以扫描现有的scripts/.github/,并拾取像README.md这样的文件工件,如果你已经提供了这些文件。基于像 Python 这样的语言的典型约定,它还可以查看像pyproject.toml这样的工件以获得高级概览。

IDE 焦点

这是一个可选步骤,如果你连接到像 VSCode 或 Cursor 这样的代码编辑器,可以用来打开文件和选择。

 

阶段 2:规划风格

加载上下文后,每个工具开始其控制循环:

 

  • Gemini(ReAct风格)思考,调用工具,观察并重复,这非常适合发现缺失的文件夹或策略。这种迭代方法允许 Gemini 适应新信息并动态调整其策略,使其适用于需要灵活解决问题和探索的任务。

  • Claude(计划和执行)提出一个你可以批准的清单,然后逐步执行计划,并带有策略钩子。这种方法提供了更高程度的控制和透明度,因为用户可以在执行前审查和修改计划,确保遵守特定的策略或偏好。

  • Auto-GPT 发出思考加上每个周期运行器执行的 JSON 命令。这种结构化输出便于自动化和与其他系统集成,因为 JSON 格式提供了智能体意图和行动的清晰且机器可读的表示。

 

以下示例说明了不同智能体如何处理这个规划阶段。Claude 提供了一个人类可读的清单供用户审批,而 Auto-GPT 生成了专为自动执行而设计的 JSON 输出。

 

Claude——计划预览

计划:创建脚本/smoke-check.sh (POSIX sh;从env读取CMD;失败时退出非零)创建CONTRIBUTING.md(如何在本地进行冒烟检查)创建.github/PULL_REQUEST_TEMPLATE.md(检查清单包括冒烟检查)更新README.md,添加scripts/和PR模板说明运行冒烟检查运行smoke-check;提交;打开PR批准吗?[是/否]
复制代码

 

清单 3:Claude 计划审查代码示例

 

Auto-GPT——带有思考和命令的显式 JSON

“thoughts”: {"text“: ”创建冒烟检查,文档,模板;更新README;运行脚本;提交/PR”},"command":{"name":"write_file","args":{"path":"scripts/smoke-check.sh","content":"#!/bin/sh\n: \"${CMD:=echo ok}\" \n$CMD || { echo \"smoke failed\" >&2; exit 1; }\necho \"ok\""}}}
复制代码

 

清单 4:Auto-GPT 审查代码示例

 

阶段 3:工具调用

在此阶段,智能体使用其库中的工具根据其任务提出更改建议。例如,这可能涉及使用文件编辑工具在 IDE 中显示差异。

 

工具已经从专有实现发展为开放标准:模型上下文协议(Model Context Protocol,MCP)。在 Anthropic、谷歌和其他组织的支持下,MCP 就像 AI 应用程序的 USB-C 端口。而不是硬编码集成每个数据库或 API,(例如,用于 PostgreSQL、Slack 或 GitHub 的服务)。CLI 智能体在启动时自动发现这些资源,允许单个智能体在一个无缝的工作流程中查询你的生产数据库,阅读你的线性票证,并编辑代码。

 

示例冒烟脚本的 Diff

*** scripts/smoke-check.sh ++set -eu +# CMD可以被覆盖:CMD="make test" ./scripts/smoke-check.sh +: "${CMD:=printf ok}" +$CMD >/dev/null 2>&1 || { echo "smoke failed" >&2; exit 1; } +echo "ok"
复制代码

 

清单 5:冒烟脚本 diff 示例

 

Claude 的钩子是一种明确策略的干净方式——限制写入路径、自动 chmod 脚本、在写入后运行 lint/tests——而不需要将其塞入提示中。Gemini 通过扩展和 MCP 获得类似的杠杆作用:不同的旋钮,类似的结果。

 

阶段 4:人为干预的安全和护栏

你保留了对冒险行为的控制。Gemini 在执行写入或具有副作用的 shell 命令之前需要你的批准。Claude 提供了确认和钩子,允许你阻止违反策略的写操作,或者在继续之前自动运行检查。Auto-GPT 暂停是/否确认,除非启用连续模式。为了进行探索,激活一个容器化的沙箱来隔离文件系统和进程。

 

阶段 5:执行和迭代:真正完成工作的循环

创建文件后,智能体执行脚本并根据结果进行调整。例如,如果缺少scripts目录,Gemini 将创建它并再次尝试操作。如果脚本缺乏可执行权限,Claude 的集成钩子会自动应用chmod +x命令。

 

脚本在观察、推理和操作的连续循环中执行。这个循环不断重复,直到本地执行成功并完成文档。

 

阶段 6:渲染结果和停止条件

CLI 提供了一个清晰的、语法高亮显示的工具调用和文件差异视图。用户可以在编辑器中打开这些差异,手动进行调整,或者指示智能体进行适当的更改。批量批准是最有效的,例如在单个批准之前一起审查所有脚本和文档。

 

在一次成功的冒烟检查之后,通过批准的差异,智能体将创建一个新的分支,提交更改,并打开一个 PR 草案。

 

如何在你的工作流程中利用代理式 CLI

以下是一些实用技巧,帮助你在工作流程中充分利用这些工具:

 

  • 将上下文文件视为构建资产

 

将 GEMINI.md 和 CLAUDE.md 文件与你的 README 文件一起维护。这些文件应该简洁且专注于特定细节,包括构建和测试程序、配置位置、任何特定于存储库的问题以及安全编辑的目录。你甚至可以使用智能体生成初始草稿。将这些文件视为为代理式编程环境的方式,而不是另一个需要持续监督的提示。

 

  • 积极地限定范围

 

将智能体指向实际重要的文件夹(例如 services/payments/,而不是整个单体仓库)并传递明确的 @file 提示以指向热点。更紧凑的范围意味着更紧凑的差异,更少的创造性幻觉和更快的迭代。如果任务确实跨越多个包,请在提示中列举它们,以防止智能体进行详尽的扫描。

 

  • 使用沙箱避免对环境的意外更改

 

Gemini CLI 提供了一个沙箱模式,用于 shell/file 工具的临时、容器化执行。这保护了你的主机系统,限制对挂载的工作目录的写入,并控制网络访问。它非常适合无风险的探索,但不会消除对破坏性命令的审批提示,不能编辑已安装的秘密,也不能防止模型建议有风险的操作。你仍然是最终的仲裁者。

 

Claude Code 通常在容器化开发环境(Dev Container/Docker)中运行,或使用插件/钩子将 shell/file 操作通过容器化运行器路由。这提供了类似的隔离(写入限制在挂载路径,控制环境,确定性工具链)。然而,这种隔离并不具有回溯性;如果允许,它不会阻止对挂载的秘密或暴露路径的意外写入。使用钩子来强制执行路径限制,并在写入最终确定之前自动运行测试/lint。

 

Auto-GPT 没有专门的沙箱模式标志,但强烈建议在 Docker 容器中运行它。这确保了其文件系统操作与你的主机操作系统隔离,防止对你主要环境的任何意外更改。

 

  • 使用符合你需求的工具

 

Gemini CLI 非常适合深入集成到谷歌生态系统中的用户。它作为一个通用工具,擅长于发现繁重的任务,包括代码编辑、文档更新、小的 shell 操作(如列出目录和移动文件)、快速网络研究以及探索性的解决问题。它的 ReAct 循环促进了自然的探索和迭代工作。

 

Claude Code 最适合需要具体计划和强大编码能力的任务。这包括多文件重构、通过钩子执行策略、Git 原生工作流程(分支、变基、冲突解决)和透明的护栏。

 

GitHub Copilot CLI旨在为快速、存储库感知的自然语言到 shell 辅助提供支持。它非常适合生成一次性命令、搭建测试、搜索代码以及起草提交和拉取请求,所有这些都不会破坏现有的 GitHub 工作流程。

 

其他工具包括AiderOpen Interpreter和本地优先 CLI。当你需要对实现有更大的控制权,并且有高度特定的需求,如紧密的 Git 人机工程学、本地 LLM 或不受限制的 shell 环境时,可以考虑这些选项。这些工具对于喜欢较少护栏和更快修改工具本身的经验丰富的用户来说非常有用,特别是对于较小的存储库。

 

  • 像工程师一样提示,不要写论文

 

好的提示主要是关于清晰的合同,而不是华丽的散文。使用包含以下详细信息的四部分提示。从一个高层次的目标开始,用一句话陈述你的意图。

 

定义约束,包括范围(例如,“仅 services/billing”)、风格(“POSIX sh; no bashisms”)和安全协议(“写入前询问”)。确定所需的工件,指定预期的结果(例如,文件、测试、README/PR 文本)。

 

确定检查,概述将如何衡量成功(例如,测试命令、验收标准)。

 

  • 像任何其他自动化一样进行仪表化

 

为了优化智能体性能,监控关键指标,如 PR 周期时间、智能体生成的差异大小、需要返工的 PR 百分比以及智能体编辑后不稳定测试的频率等。

 

这些指标作为反馈,不仅用于智能体的整体有效性,还用于你自己的运维合同。

 

接下来是什么

 

代理式 CLI 正在从简单的 shell 助手演变为将你的工作工具、操作系统和云基础设施统一起来的连接组织。以下是截至本文撰写时的一些新兴趋势:

 

  1. IDE 和操作系统正在融合成统一的 Agent Surfaces。像Windsurf和 Cursor 这样的工具允许智能体在终端、编辑器和运行过程中共享上下文,而不是作为孤立的聊天窗口运行。Windows 也在其体验中注入了大语言模型驱动的交互

  2. 智能体正在从响应式 CLI 转变为持久的后台服务。这些守护进程智能体不是等待输入,而是主动监控日志文件和本地服务器,仅在出现错误时介入修复计划。虽然这些工具(如 GitHub PR 上的 Copilot)仍处于起步阶段,它们的洞察力尚浅,但随着正确的集成,它们将不断改进。

  3. 扩展正在成为代理能力的 App Store。随着 CLI 智能体的技能扩展等创新,我们正在开发新一代的 App Store,让用户可以将适当的能力插入到他们的智能体中。这也模糊了通用智能体和专业智能体之间的区别,因为专业智能体只是一个拥有正确知识和工具的强大通用智能体。

 

https://www.infoq.com/articles/agentic-terminal-cli-agents/

你是不是经常遇到 codex 长时间运行但是完全不知道它是活着还是死了,薛定谔的猫状态发生了,你想手动停掉,又告诉自己,也许它还在运行呢,也许再等等? 平白耽误了时间,这个月 tokens 又花不完啦,中了 openai 控流的奸计。

好了,现在有了一个 Codex_Stuck 小插件,通过巧妙的(实际上笨拙的)设计,让你的终端时时展示 cx 状态,尤其是是否 stuck. 废话不多说,上链接:

点它!安它!星它!

这其实是为了给 ccb 和 cca 打造的监测器,后面会集成到 ccb 中,当然独立使用完全无问题啦。

另外 ccb 更新到 3.0 版本啦: 只能说强到没朋友,快去试试吧:


📌 转载信息
转载时间:
2026/1/10 19:19:37

1. 点击 JetBraisns 右上角的 3 个点
2. 然后选择 config acp agent
3. 会在编辑其中打开一个 acp.json
4. 将 opencode 的配置写进去

{ "agent_servers": { "OpenCode": { "command": "/absolute/path/bin/opencode", "args": ["acp"] } } } 

5. 注意 command 要换成你自己的
6. 由于我使用的 windows 并且我使用 npm i -g opencode-ai 安装 opencode , 佬有可以在 shell 使用这两个命令查看
$root = (npm root -g)
Get-ChildItem $root -Recurse -Filter opencode.exe -ErrorAction SilentlyContinue | Select-Object -First 5 FullName
将 exe 的路径写入 command

7. 然后就可以使用了,也可以使用中转站的模型


📌 转载信息
原作者:
Bink
转载时间:
2026/1/8 12:22:01

具体什么使用发布的不确定,今天看到在左侧菜单栏多了一个项,点开一看就是这个。
MCP Registry

以后估计会越来越多,类似与看 Repo 那样看 MCP Server。不过目前只支持 VS Code 的导入。没有其他家的合集那么便捷安装到对应其他工具。


📌 转载信息
原作者:
capgrey
转载时间:
2025/12/30 16:09:50

[bsgit user="wusimpl"]AntigravityQuotaWatcher[/bsgit]

功能展示

![Antigravity IDE 模型配额监控器插件 [开源](支持 Win/Mac 系统) 1](https://xiaohack.oss-cn-zhangjiakou.aliyuncs.com/typecho/2025/11/2947478344.png!mark)
![Antigravity IDE 模型配额监控器插件 [开源](支持 Win/Mac 系统) 2](https://xiaohack.oss-cn-zhangjiakou.aliyuncs.com/typecho/2025/11/3305152143.png!mark)

使用方法

下载插件,安装,重启,Over(github README 有详细方法)

可配置项

可配置项

插件原理

Antigravity 通过内建的本地语言服务器通信获取数据,插件就是拿到这些端点,然后请求获取数据然后解析。开发过程的难点是获取 crsf token,最后在 AI 的帮助下还是很轻松地拿到了。

几点说明

Gemini Low 和 High 共用一个配额
Claude 和 Claude Thinking 共用一个配额
GPT-OSS 单独一个配额
所以你们在插件里面看到的公用一个配额的模型剩余用量是一样的,Google 也是偷懒…
配额更新默认每 30s 刷新一次,可以在配置里面修改。

Antigravity 目前还只能算半成品,复杂一点的项目出错概率不小,需要等 Google 慢慢迭代修复,或者训练专门针对 code agent 的模型。不过胜在免费,拿来小修小改,做点 Code Review 之类的问题还是不大。

Jetbrains家的KeyGen网上有很多,直接百度一下就能搜出来。
主要是ReSharper有联网验证,而且是.NET平台的软件,不能像Java一样用--javaagent直接进行注入。
这里给一个用Visual Studio拓展来解决的思路。

using HarmonyLib;
using System;

namespace ReSharperCrack
{
    [HarmonyPatch]
    internal static class Patches
    {
        static Patches()
        {
            try
            {
                var harmonyVersion = typeof(Harmony).Assembly.GetName().Version?.ToString() ?? "unknown";
                Logger.Log($"Patch loaded. Start. Harmony={harmonyVersion}, AppDomain={AppDomain.CurrentDomain.FriendlyName}");
            }
            catch (Exception ex)
            {
                Logger.Log($"Patch static ctor exception: {ex}");
            }
        }

        [HarmonyPatch("JetBrains.Application.License2.UserLicenses.UserLicenseViewSubmodel", "AddLicense")]
        [HarmonyPrefix]
        internal static bool AddLicense_Prefix(ref bool validateLicenseKey)
        {
            try
            {
                Logger.Log($"AddLicense_Prefix called. validateLicenseKey(before)={validateLicenseKey}");
                validateLicenseKey = false;
                Logger.Log($"AddLicense_Prefix finished. validateLicenseKey(after)={validateLicenseKey}");
                return true;
            }
            catch (Exception ex)
            {
                Logger.Log($"AddLicense_Prefix exception: {ex}");
                // be conservative: let original run if our prefix fails
                return true;
            }
        }

        [HarmonyPatch("JetBrains.Application.License2.NewLicenses.UserLicenseService", "VerifyCertificate")]
        [HarmonyPostfix]
        internal static void VerifyCertificate_Postfix(ref object __result)
        {
            try
            {
                Logger.Log($"VerifyCertificate_Postfix called. __result(before)={(__result == null ? "<null>" : __result + " (" + __result.GetType().FullName + ")")}");

                if ((int)__result != 0)
                {
                    __result = 0;
                }

                Logger.Log($"VerifyCertificate_Postfix finished. __result(after)={(__result == null ? "<null>" : __result + " (" + __result.GetType().FullName + ")")}");
            }
            catch (Exception ex)
            {
                Logger.Log($"VerifyCertificate_Postfix exception: {ex}");
            }
        }
    }
}

以及入口类:

/*...*/
[PackageRegistration(UseManagedResourcesOnly = true, AllowsBackgroundLoading = true)]
[Guid(ReSharperCrackPackage.PackageGuidString)]
[ProvideAutoLoad(UIContextGuids80.NoSolution, PackageAutoLoadFlags.BackgroundLoad)]
public sealed class ReSharperCrackPackage : AsyncPackage
{
    protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress<ServiceProgressData> progress)
    {
        // 在这里加载LibHarmony的Hook
    }
}
/*...*/

编译成vsix拓展,装载在Visual Studio上。

接着,使用License Key激活就可以了。

ReSharper稳定破解

WSL 安装和配置指南
本文档介绍如何在 Windows 11 上安装和配置 WSL (Windows Subsystem for Linux),以及安装开发工具。

1. 启用 Windows 功能

1.1打开 Windows 功能设置

  1. 按 Win + R 打开运行窗口
  2. 输入 optionalfeatures 或 控制面板\程序\启用或关闭 Windows 功能
  3. 点击确定
    打开 Windows 功能设置

1.2 启用必要功能
启用必要功能
在"启用或关闭 Windows 功能"窗口中,勾选以下选项:

  • 适用于 Linux 的 Windows 子系统 (WSL)
  • 虚拟机平台 (如果可用)

[bsmessage type="common" color="red" title="注意"]Windows 11 可能只显示部分选项,这是正常的。[/bsmessage]
勾选后点击确定,系统可能需要重启。

2. 设置 WSL 版本和安装 Linux

2.1 设置 WSL 默认版本
打开 PowerShell 或命令提示符(管理员权限),执行:

# 设置默认版本为 WSL2
wsl --set-default-version 2

2.2 查看可用的 Linux 发行版

# 查看可用的 Linux 发行版
wsl --list --online

2.3 安装 Linux 发行版
选择一个发行版进行安装(推荐 Debian 或 Ubuntu):

# 安装 Debian
wsl --install -d Debian
# 或者安装 Ubuntu
wsl --install -d Ubuntu

3. 用户配置

3.1 创建普通用户
如果首次进入发行版后是 root 用户,需要创建普通用户:

# 创建新用户(替换 your_username 为你的用户名)
adduser your_username
# 将用户添加到 sudo 组
usermod -aG sudo your_username

3.2 设置默认用户
编辑 WSL 配置文件:

sudo vim /etc/wsl.conf

在 /etc/wsl.conf 中添加以下内容:

[user]
default=your_username

保存后,在 Windows 中重启 WSL:

wsl --shutdown

4. 替换镜像源(加速下载)

4.1 备份原配置文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

4.2 编辑源列表

sudo nano /etc/apt/sources.list

4.3 替换为国内镜像源
对于 Debian,将内容替换为:

deb https://mirrors.aliyun.com/debian/ trixie main
deb-src https://mirrors.aliyun.com/debian/ trixie main

对于 Ubuntu,可使用:

#deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
#deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse

4.4 更新软件包

sudo apt update
sudo apt upgrade -y

4.5 测试网络(可选)

sudo apt install apache2 -y

5. Claude Code 安装

5.1 安装 Node.js

# 下载并安装 Node.js LTS 版本(Ubuntu/Debian)
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo bash -
sudo apt-get install -y nodejs

5.2 验证安装

node --version
npm --version

5.3 安装 Claude Code

npm install -g @anthropic-ai/claude-code

5.4 设置环境变量

# 临时设置环境变量(当前会话有效)
export ANTHROPIC_AUTH_TOKEN=sk-你的token
export ANTHROPIC_BASE_URL=https://anyrouter.top

5.5 永久保存环境变量

echo 'export ANTHROPIC_AUTH_TOKEN=sk-你的token' >> ~/.bashrc
echo 'export ANTHROPIC_BASE_URL=https://anyrouter.top' >> ~/.bashrc
source ~/.bashrc

5.6 使用 Claude Code

# 验证安装
claude --version
# 进入项目目录使用
cd your-project
claude

6. OpenAI Codex 安装

6.1 安装 Codex

npm i -g @openai/codex

6.2 创建配置目录

mkdir -p ~/.codex

6.3 创建配置文件

cat > ~/.codex/config.toml << 'EOF'
model = "gpt-5-codex"
model_provider = "anyrouter"
preferred_auth_method = "apikey"
[model_providers.anyrouter]
name = "Any Router"
base_url = "https://anyrouter.top/v1"
wire_api = "responses"
EOF

6.4 创建认证文件

cat > ~/.codex/auth.json << 'EOF'
{
"OPENAI_API_KEY": "你的KEY"
}
EOF

6.5 使用 Codex

# 验证安装
codex --version
# 进入项目目录使用
cd your-project
codex

7. 常用 WSL 命令

7.1 查看和管理发行版

# 查看已安装的发行版
wsl --list --verbose
# 停止 WSL
wsl --shutdown
# 设置默认发行版
wsl --set-default Ubuntu

7.2 导出/导入发行版(备份或迁移)

# 导出发行版
wsl --export Ubuntu ubuntu_backup.tar
# 导入发行版
wsl --import Ubuntu C:\wsl\ubuntu C:\wsl\ubuntu_backup.tar

7.3 其他常用命令

# 卸载发行版
wsl --unregister Ubuntu
# 查看 WSL 版本
wsl --version
# 进入指定发行版
wsl -d Debian

参考资料

本文档参考了以下资源:

常见问题

Q: WSL 启动失败怎么办?
A: 尝试以下步骤:

  1. 确认已启用 “适用于 Linux 的 Windows 子系统” 和 “虚拟机平台”
  2. 检查 BIOS 是否启用了虚拟化技术 (Intel VT-x 或 AMD-V)
  3. 运行 wsl --shutdown 后重新启动

Q: 如何更新 WSL?
A: 在 PowerShell 中运行:

wsl --update

Q: 如何在 Windows 和 WSL 之间访问文件?
A:

  1. 在 WSL 中访问 Windows 文件:/mnt/c/Users/YourName/
  2. 在 Windows 中访问 WSL 文件:\wsl$\Ubuntu\home\username\