opencode使用心得

发布时间:2026/9/14 22:08:25

opencode使用心得 安装先装node再安装opencodesudo npm install -g opencode-ailatest命令行输入opencode即可打开TUI界面。要退出可CtrlC或CtrlD。设置大模型接入方舟code plan参考https://www.volcengine.com/docs/82379/2188958?langzh可以安装ark helper工具一键配置curl -fsSL https://lf3-static.bytednsdoc.com/obj/eden-cn/ylwslo-yrh/ljhwZthlaukjlkulzlp/install.sh | sudo sh顺带说一下doubao-code和doubao-pro的token耗起来飞快似乎它在思考过程中也会大量消耗token很容易触发5小时限制。用其deepseek模型还可以消耗没那么快响应速度也ok。也可以修改opencode配置文件linux下在~/.config/opencode/opencode.json里。比如新增deepseekV4的大模型deepseek-v4-flash:{name:deepseek-v4-flash,limit:{context:1024000,output:4096}},deepseek-v4-pro:{name:deepseek-v4-pro,limit:{context:1024000,output:4096}},使用初始化工程在开发工程的根目录打开opencode执行/init命令opencode会先扫描整个工程生成AGENTS.md帮助AI理解。切换模式opencode有两种模式build和plan通过TAB键切换。plan模式会为我们建立todo列表然后切换到build模式按todo列表进行开发。很好用的一个功能。切换主题/theme切换模型使用/models命令顺带说一下模型选择。GLM5.1比较昂贵、也比较慢核心代码或算法用GLM5.1写事务性、重复性的工作交给deepseek免费的trae用来写UT或简单的参数增删。不建议拿GLM5.1来写UT太浪费了。开发skill与AI协作过程中我们会写大量的prompt这其中有些promt是可以作为经验保存下来供下次复用的。这大概就是skill设计的初衷吧。一个SKILL.md样例--- name: multi-tables-join-checker description: 三表及以上关联检查 license: MIT compatibility: opencode --- ## What I do 检查LINQ的三表关联及AsNoTracking是否正确使用 ## When to use me 开发CRUD型的Service服务要书写LINQ时。 ## Instructions - 找出Service中使用了三表及以上关联的LINQ因三表及以上的关联查询可能有性能风险。搜索时不仅要搜索join关键字还要搜索Include和嵌套Select它们也算关联一张表。 - 排查Service中涉及DBContext的ToListAsync方法调用它之前必须使用AsNoTracking()方法若未使用请补充若已使用一个LINQ里只需一个AsNoTracking()多余的请清除。 ## Notes UT类以Tests结尾的类不用排查放到~/.config/opencode/skills/multi-tables-join-checker/SKILL.md下即可。开发完后重启opencode使用/skills命令应该就能找到该skill执行即可。与AI协作的经验我常用的两种协作方式一是AI完成核心代码即先在plan下制定整体方案人看过没问题切到build让AI完成所有代码最后人来检视并修改合入。二是人来搭建框架代码划分好类、定义好数据结构但类的方法体都空着只写了todo注释然后由AI补齐。第一种方式用于首次搭建第二种方式常用于代码重构。写todo注释让AI去处理也是让AI进行代码微调的好方法因为AI一般会去阅读todo的上下文了解这个todo的确切含义。其实等价与trae里选择某段代码让AI去处理。只不过opencode没界面编辑能力相当于用todo注释去替代。另外todo注释跟prompt一样应尽可能详细考虑全面因为这种情况下AI所知的上下文毕竟有限。
延伸阅读

更多相关文章

2026/9/13 11:35:46

AWS 公司名称怎么填?NiceCloud 帮你理清企业注册问题

很多企业第一次注册 AWS 时,真正卡住的往往不是技术配置,而是注册表单里的“公司名称”这一栏。大家会去搜“AWS 公司名怎么填”“AWS 注册公司名称”“AWS 企业注册”,其实想确认的无非是几个问题:到底填营业执照上的中文全称&am…

2026/9/2 22:16:39

AI未来的形态将呈现何种样貌?

一、当前格局总结 当前全球AI发展呈现“大同小异”的格局: 大模型军备竞赛:OpenAI、Google、Meta、百度、阿里等均以大规模语言模型(LLM)为核心,追求参数规模与多模态能力。应用层趋同:对话助手、代码生成、…

2026/9/14 22:05:37

Python Flask/Django构建汽修数字化管理系统实践

1. 项目背景与核心价值汽车维修保养行业正经历从传统纸质工单向数字化管理的转型浪潮。作为从业十年的全栈开发者,我亲历过数十家汽修门店因管理系统落后导致的客户流失、库存混乱问题。这套基于Python Flask/Django框架的系统,正是为解决以下行业痛点而…

2026/9/14 22:05:37

RAG项目构建流程

企业级 RAG 项目全流程复盘本文从项目目标、数据准备、知识入库、在线问答、Prompt 编排、质量评测到部署运维,完整梳理 此系统 的建设与运行流程。文档重点不是罗列框架,而是说明每一层解决的问题、模块之间如何协作,以及关键技术决策背后的…

2026/9/14 22:05:37

Android VSync机制与Choreographer工作原理详解

1. Android App请求VSync过程解析在Android图形系统中,VSync(垂直同步)信号是整个渲染流程的核心驱动力。当应用需要更新UI时,系统会通过VSync机制来协调各个组件的运作。让我们深入分析应用层请求VSync的具体过程。1.1 VSync基础…

2026/9/14 22:05:37

软件小工具 Toolkit

everything 文件搜索void image viewer 图片查看手心输入法 [发现sougou在某些情况下引起异常,比如远程时导致网络中断]beyond compare7-zip 压缩zotero 文献管理GetData 图片数据提取Altova XMLSpy xml格式化WinSCP FTP工具支持断点续传geek unistaller 卸载软件火…

2026/9/14 22:05:37

React Native鸿蒙跨平台表单开发实践

1. 项目概述在React Native鸿蒙跨平台开发中,表单处理是高频需求场景。最近我在一个健康管理应用中实现了新增食物的表单功能,核心采用TextInput组件构建输入界面,通过onChangeText实现状态管理,并在提交时进行数据完整性校验。这…

2026/9/14 22:00:37

OpenCV透视变换实战:从普通摄像头到上帝视角俯视图

很久没分享视觉方向的实战项目了,这次聊一个我最近一直在折腾的小东西,名字叫 gods-eye-view,翻译过来就是"上帝视角"。说白了,就是拿一个平视的普通摄像头,通过透视变换把它拍出来的画面硬生生"压&quo…

2026/9/14 2:17:50

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述:一台黑屏的拯救者Y7000,到底卡在哪一步? 联想拯救者Y7000系列笔记本,从2018年第一代搭载i5-8300H开始,到后来的i7-9750H、i7-10750H、i5-11400H,再到2023年款的R7-7840HS,它始终是学…

2026/9/14 0:03:22

KCF目标跟踪算法与OTB工程实现:毕业设计实战解析

简介:这是一份基于KCF核相关滤波算法、融合尺度池与抗遮挡处理的目标检测跟踪MATLAB完整源码,主要面向计算机相关专业准备毕业设计、课程设计或期末大作业的学生,也适合需要项目实战练习的初学者。源码在OTB数据集上完成验证,能够…

2026/9/14 0:03:22

语音情感识别实战:Keras实现LSTM、CNN、SVM与MLP多模型对比

简介:面向语音情感识别入门与进阶开发者,这份基于Keras的项目源码完整实现了LSTM、CNN、SVM、MLP四种模型,兼容Python3.8与Keras/TensorFlow2环境。压缩包内含49个文件,大小约70.31MB,主体包括Python脚本、yaml/json配…

2026/9/14 11:59:31

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/14 13:53:59

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/14 11:22:57

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码