TaskStopTool:停止任务
发表于|更新于|Claude Code
|浏览量:
TaskStopTool:停止任务
它负责中断后台执行,不是删除任务记录
TaskStopTool 的目标很明确:
停止一个正在运行的后台任务。
这通常对应两类来源:
BashTool启动的后台 shellAgentTool启动的后台 agent
关键源码
1 | const result = await stopTask(id, { |
在此之前它会先校验:
- 任务存在
- 任务当前确实是
running
调用链
小结
TaskStopTool 给 Claude Code 的后台执行链补上了“中断”能力,这是正式任务系统不可缺的一环。
文章作者: xhj
文章链接: https://hzhzxfs.github.io/2026/07/10/33__TaskStopTool%EF%BC%9A%E5%81%9C%E6%AD%A2%E4%BB%BB%E5%8A%A1/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 xhj的博客!
相关推荐
2026-05-25
25-架构模式总结
第 25 篇:架构模式总结 — 可迁移到你自己项目的设计模式在过去 24 篇文章中,我们逐一拆解了 Claude Code 的每个子系统——从启动链路到对话循环,从工具系统到权限防线,从 Prompt Cache 到 MCP 协议。每篇都聚焦于”这个模块是怎么设计的“。 但工程师阅读源码的终极目的不是理解别人的代码,而是把好的设计用到自己的项目里。 本篇将切换视角:不再关注 Claude Code 特有的业务逻辑,而是提取那些跨项目可复用的架构模式。这 7 个模式覆盖了从编译期优化到运行时状态管理、从工具注册到安全防线的全栈设计决策。 模式 1:编译期 DCE — 同一份代码构建多版本问题你的产品需要从同一份代码库构建出多个版本——内部版/外部版、免费版/付费版、或者面向不同客户的定制版。传统做法是维护多个分支或在运行时用 if/else 判断,前者导致合并噩梦,后者让所有版本都包含所有代码。 Claude Code 的解法利用 Bun bundler 的 feature() 函数实现编译期 Dead Code Elimination(DCE)。关键技巧是将...
2026-03-21
troubleshooting
故障排除 修复 Claude Code 中的高 CPU 或内存使用、挂起、自动压缩抖动和搜索问题,并找到其他问题的正确页面。 本页涵盖 Claude Code 运行后的性能、稳定性和搜索问题。对于其他问题,请从与您遇到的问题相匹配的页面开始: 症状 转到 command not found、安装失败、PATH 问题、EACCES、TLS 错误 故障排除安装和登录 登录循环、OAuth 错误、403 Forbidden、”organization disabled”、Bedrock/Vertex/Foundry 凭据 故障排除安装和登录 设置未应用、hooks 未触发、MCP 服务器未加载 调试您的配置 API Error: 5xx、529 Overloaded、429、请求验证错误 错误参考 model not found 或 you may not have access to it 错误参考 VS Code 扩展未连接或未检测到 Claude VS Code 集成 JetBrains 插件或 IDE 未检测到 JetB...
2026-02-04
3.Why Use Skills 2 - Agent and Skills(从Agent角度思考Skills)
第三节:Why Use Skills 2 - Agent and Skills(从 Agent 角度思考 Skills)Agent and Skills - 从 Agent 角度思考 Skills1 Why Agent + Skills? 结合过去对 Agents 的理解 | How we used to think about agents 编码 Agent | Coding Agent 研究 Agent | Research Agent 营销 Agent | Marketing Agent 金融 Agent | Finance Agent 通用型 Agent:代码是通用接口 | General-Purpose Agent: Code is the universal interface 2 Skills 作为 Agent 的武器我们可以把 Skills 作为 Agent 的武器,从 Agent 的功能思考 Skill 的方向 2.1 简单脚手架 bash:命令行执行能力 filesystem:文件系统操作能力 2.2 稳定可靠所需要稳定可靠地完成工作,还需要: 上...
2026-04-07
claude-code-on-the-web
在网络上使用 Claude Code 配置云环境、设置脚本、网络访问和 Docker,在 Anthropic 的沙箱中运行。使用 --remote 和 --teleport 在网络和终端之间移动会话。 Claude Code on the web 处于研究预览阶段,适用于 Pro、Max 和 Team 用户,以及拥有高级席位或 Chat + Claude Code 席位的 Enterprise 用户。 Claude Code on the web 在 claude.ai/code 的 Anthropic 管理的云基础设施上运行任务。会话即使在关闭浏览器后也会持续,你可以从 Claude 移动应用监控它们。 初次使用 Claude Code on the web?从[入门](/zh-CN/web-quickstart)开始,连接你的 GitHub 账户并提交你的第一个任务。 本页涵盖: GitHub 身份验证选项:两种连接 GitHub 的方式 云环境:哪些配置会保留、安装了哪些工具以及如何配置环境 设置脚本和依赖管理 网络访问:级别、代理和默认允...
2026-06-24
NotebookEditTool:编辑 Notebook
NotebookEditTool:编辑 Notebook它为什么不是普通版 FileEditTool.ipynb 文件虽然本质上是 JSON,但语义上它不是普通文本文件,而是: 一组有顺序的 cell 混合了 code / markdown 带输出、元数据、语言信息 如果直接把 Notebook 当普通文本改,最容易出现两类问题: 结构被破坏,文件打不开 只想改一个 cell,却误伤整个 notebook 所以 Claude Code 给它单独做了 NotebookEditTool。 关键源码tools/NotebookEditTool/NotebookEditTool.ts: 1234567export const inputSchema = z.strictObject({ notebook_path: z.string(), cell_id: z.string().optional(), new_source: z.string(), cell_type: z.enum(['code', 'markdown&...
2026-07-04
EnterPlanModeTool:进入 Plan Mode
EnterPlanModeTool:进入 Plan Mode它的本质是状态切换,不是提示词切换EnterPlanModeTool 的作用不是“让模型多想一会儿”,而是把当前会话切到一种新的运行状态:plan。 这意味着系统会同时改变: 权限模式 会话目标 用户交互预期 所以它本质上是一个 运行时状态切换工具 。 关键源码tools/EnterPlanModeTool/EnterPlanModeTool.ts: 123import { handlePlanModeTransition } from '../../bootstrap/state.js'import { applyPermissionUpdate } from '../../utils/permissions/PermissionUpdate.js'import { prepareContextForPlanMode } from '../../utils/permissions/permissionSet...