logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

169、【Agent】【OpenCode】TuiThreadCmd(workspace&worker路径)

本文分析了TuiThreadCmd中关于workspace切换和worker路径查找的设计。首先解释了workspace的作用:在多租户系统中,通过setWorkspace建立服务端过滤上下文,确保RPC连接只接收指定workspace的事件,避免客户端被无关数据淹没。接着剖析了worker路径查找机制,这是一个多环境兼容加载器,按照优先级依次检查:1)构建时注入的常量路径;2)构建产物目录下的J

文章图片
#人工智能
171、【Agent】【OpenCode】TuiThreadCmd(入口命令)

本文分析了TuiThreadCmd入口命令的设计,重点解读了两种输入处理机制和yargs CLI参数解析。核心内容包括:1. 智能合并管道输入与参数输入的input()函数,通过process.stdin.isTTY判断数据来源并按Unix约定优先处理管道数据;2. 使用yargs定义的位置参数[project],作为可选项目路径参数,支持opencode ./path或默认当前目录启动。文章通过

文章图片
#人工智能
160、【Agent】【OpenCode】TuiThreadCmd(箭头函数声明)

本文分析了TypeScript中函数类型定义的语法,重点解读了fetch函数的类型声明(input: RequestInfo | URL, init?: RequestInit) => Promise<Response>。文章详细讲解了联合类型|的用法,拆解了函数类型各部分的含义,并特别区分了类型定义中的=>(编译后消失的类型描述)与实现中的=>(实际创建函数的箭头语法)。通过编译结果、语法位置和

文章图片
#人工智能
153、【Agent】【OpenCode】启动分析(completion)

本文分析了OpenCode CLI工具的自动补全机制实现原理。通过Yargs框架的.completion()方法,OpenCode注册了一个隐藏的completion子命令,用于生成Shell补全脚本。当用户安装该脚本后,输入opencode <TAB>时,Shell会递归调用opencode --get-yargs-completions获取候选词列表,实现命令补全功能。文章详细拆解了补全脚本的

文章图片
#人工智能
136、【Agent】【OpenCode】项目配置(链式调用)

本文分析了OpenCode项目中的链式调用配置模式,重点解释了yargs库的配置方法。文章首先介绍了scriptName()、wrap()等基础配置项的作用,随后深入剖析了链式调用的实现原理——每个方法返回this以支持连续调用。通过Builder模式示例对比了链式与非链式写法差异,指出链式调用的声明式优势。最后列举了CLI构建、DOM操作等典型应用场景,强调链式调用本质是通过return thi

文章图片
#人工智能
135、【Agent】【OpenCode】项目配置(分隔符)

本文深入解析了命令行工具中--分隔符的设计原理与应用场景。通过OpenCode项目的yargs配置实例,阐述了populate--: true的作用:将--后的参数存入argv["--"]数组而非作为当前命令选项解析。文章对比了有无分隔符时opencode run --help的差异,指出该机制能有效解决多级命令间的参数歧义问题,并以git log和bun run为例说明其在参数透传中的关键作用。

文章图片
#人工智能
99、【Agent】【OpenCode】task 工具提示词(Slash command)(一)

本文分析了AI系统中的Slash Command(斜杠命令)与Bash命令的区别与联动关系。Slash Command是封装复杂提示词的高级快捷指令(如/review),用于触发AI特定工作流;而Bash命令(如git status)是直接操控操作系统的原生指令。二者通过!前缀实现联动——Slash Command可内嵌Bash命令(如/commit-push-pr包含!git add步骤),形成

文章图片
#人工智能
112、【Agent】【OpenCode】Skill 工具提示词

本文分析了OpenCode项目中的Skill工具设计特点。该工具用于加载特定领域技能,但目前运行时环境无可用技能(list.length=0)。核心机制包括:1)触发条件需AI精准匹配任务特征;2)按需加载设计,通过Skill.fmt(list, {verbose: false})仅展示技能简略清单,调用工具后才会注入详细指令(含XML/HTML标签块),有效节约Token;3)参数name为必填

文章图片
#人工智能
112、【Agent】【OpenCode】Skill 工具提示词

本文分析了OpenCode项目中的Skill工具设计特点。该工具用于加载特定领域技能,但目前运行时环境无可用技能(list.length=0)。核心机制包括:1)触发条件需AI精准匹配任务特征;2)按需加载设计,通过Skill.fmt(list, {verbose: false})仅展示技能简略清单,调用工具后才会注入详细指令(含XML/HTML标签块),有效节约Token;3)参数name为必填

文章图片
#人工智能
110、【Agent】【OpenCode】todowrite 工具提示词(示例)(四)

本文分析了OpenCode项目中TodoWrite工具的两个"不适用"示例。在"Hello World"案例中,AI直接输出单行代码,推理显示该任务满足单一、琐碎、单步特性,无需任务管理;在"git status解释"案例中,AI识别到这是纯知识查询请求,属于信息获取而非工程执行,因此直接调用知识库回答而非启动工具。两个案例共同体现了AI对任务性质的精准判断能力,能够区分简单任务与复杂工程需求,避

文章图片
#人工智能
    共 88 条
  • 1
  • 2
  • 3
  • 9
  • 请选择