当前位置: 首页 > article >正文

OpenClaw开源贡献:Qwen3.5-4B-Claude技能PR提交流程

OpenClaw开源贡献Qwen3.5-4B-Claude技能PR提交流程1. 为什么要为OpenClaw贡献技能去年冬天我在尝试用OpenClaw自动化处理技术文档时发现现有的技能库缺少对结构化推理任务的支持。当时我偶然在GitHub上看到了Qwen3.5-4B-Claude这个专门优化逻辑推理的模型萌生了将其封装成OpenClaw技能的想法。经过两周的业余时间折腾最终成功提交了第一个PR。开源贡献不只是技术高手的专利。OpenClaw社区特别适合开发者通过贡献技能来积累经验——每个技能都是独立模块不需要理解整个框架就能参与。更重要的是当你的技能被合并后会收到真实用户反馈这种成就感是闭门造车无法比拟的。2. 准备工作与环境搭建2.1 基础环境配置我建议在Linux或macOS下进行开发Windows用户可以使用WSL2。以下是经过验证的环境组合# 检查Node.js版本需要v18 node -v # 检查OpenClaw CLI版本 openclaw --version # 安装开发依赖 npm install -g typescript types/node2.2 获取Qwen3.5-4B-Claude镜像在星图平台找到对应镜像后我选择了GGUF格式的q4量化版本它在我的M1 MacBook上运行流畅# 下载模型文件约2.4GB wget https://mirror.example.com/qwen3.5-4b-claude.gguf # 使用llama.cpp运行测试 ./main -m qwen3.5-4b-claude.gguf -p 请用三步分析这个问题踩坑记录最初我直接用了FP16版本发现内存占用高达8GB。后来改用q4量化版推理速度虽然降低约15%但内存占用降至3GB以内更适合普通开发者设备。3. 技能开发全流程3.1 Fork官方技能仓库访问 OpenClaw Skills官方仓库点击Fork按钮创建个人副本克隆到本地git clone https://github.com/你的账号/skills.git cd skills git remote add upstream https://github.com/openclaw/skills.git3.2 创建技能骨架OpenClaw提供了脚手架工具我在项目根目录执行npx clawhub create qwen-reasoner这会生成标准目录结构qwen-reasoner/ ├── package.json ├── src/ │ ├── index.ts │ └── types.d.ts ├── test/ │ └── index.test.ts └── README.md3.3 核心代码实现在src/index.ts中我主要实现了三个关键功能// 模型初始化 const initModel async (ctx: SkillContext) { const modelPath ctx.config.get(modelPath); return new GGUFModel({ modelPath, maxTokens: 4096, temperature: 0.7 }); }; // 结构化推理处理器 const processReasoning async (input: string) { const prompt 请按以下步骤分析问题 1. 核心问题识别 2. 关键因素分解 3. 分步解决方案 问题${input}; return await model.generate(prompt); }; // 技能注册 export default new SkillBuilder() .name(qwen-reasoner) .description(基于Qwen3.5-4B-Claude的结构化推理技能) .register(async (ctx) { ctx.onMessage(async (msg) { return await processReasoning(msg.content); }); });特别注意技能必须包含完整的类型定义这是PR被合并的硬性要求。我在types.d.ts中明确定义了所有接口。4. 本地测试与验证4.1 单元测试编写良好的测试覆盖率能大幅提升PR通过率。我使用Jest编写了以下测试用例describe(qwen-reasoner, () { let skill: SkillInstance; beforeAll(async () { skill await loadSkill(path.join(__dirname, ../../)); }); it(应返回结构化响应, async () { const res await skill.process(如何提高代码质量); expect(res).toMatch(/1\./); expect(res).toMatch(/2\./); expect(res).toMatch(/3\./); }); });4.2 集成到OpenClaw测试在本地OpenClaw安装开发版技能openclaw skills link /path/to/qwen-reasoner修改~/.openclaw/openclaw.json添加模型配置models: { providers: { local-gguf: { baseUrl: http://localhost:18789, models: [{ id: qwen3.5-4b-claude, path: /path/to/model.gguf }] } } }通过Web界面发送测试指令分析如何学习Rust语言5. 提交PR的注意事项5.1 代码规范检查OpenClaw团队特别关注以下几点所有异步操作必须有错误处理配置文件需有schema验证不允许硬编码敏感信息必须包含完整的TypeScript类型定义我使用以下工具链确保代码质量# 类型检查 tsc --noEmit # 代码格式化 prettier --write . # ESLint检查 eslint src/**/*.ts5.2 PR描述撰写技巧好的PR描述应该包含解决的问题现有技能库缺少结构化推理能力实现方案基于Qwen3.5-4B-Claude模型封装测试方法单元测试覆盖人工验证案例兼容性说明支持GGUF格式的量化模型反面案例我第一个PR被要求修改就是因为缺少性能基准数据。后来补充了在不同量化等级下的推理速度对比表格量化等级内存占用推理速度(tokens/s)q42.8GB24.5q53.2GB26.1q85.1GB28.36. 参与社区协作的建议通过三次PR提交经历我总结出这些经验从小功能开始我的第一个合并PR只是添加了模型配置文件示例善用讨论区在GitHub Discussions描述提案后再编码避免方向偏差关注CI反馈OpenClaw的GitHub Actions会详细检查代码规范要耐心查看日志保持分支清洁每个功能使用独立分支定期rebase上游代码最让我惊喜的是第二次PR合并后有海外用户通过Discord联系我提出了多语言支持的改进建议。这种即时反馈的体验是在公司内部开发中很难获得的。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

OpenClaw开源贡献:Qwen3.5-4B-Claude技能PR提交流程

OpenClaw开源贡献:Qwen3.5-4B-Claude技能PR提交流程 1. 为什么要为OpenClaw贡献技能 去年冬天,我在尝试用OpenClaw自动化处理技术文档时,发现现有的技能库缺少对结构化推理任务的支持。当时我偶然在GitHub上看到了Qwen3.5-4B-Claude这个专门…...

Logisim实战:8位可控加减法电路设计与溢出检测

1. 从零开始理解8位可控加减法电路 第一次接触数字电路设计的朋友可能会觉得"8位可控加减法电路"听起来很高深,其实它的核心原理就像我们小时候用的算盘。想象一下,你有一个8档的算盘,每档只能表示0或1(对应算珠的上或下…...

计算机基础:从半导体到CPU指令执行全解析

1. 从半导体到逻辑门:计算机的物理基础 计算机的核心部件CPU本质上是由无数微小开关组成的精密电路,而这些开关的物理基础就是半导体材料。半导体之所以被称为"半导体",是因为它的导电性介于导体和绝缘体之间。这种特性使得我们可以…...

foobar2000 DUI界面深度解析:foobox-cn技术架构与实战配置完整指南

foobar2000 DUI界面深度解析:foobox-cn技术架构与实战配置完整指南 【免费下载链接】foobox-cn DUI 配置 for foobar2000 项目地址: https://gitcode.com/GitHub_Trending/fo/foobox-cn foobox-cn是针对foobar2000播放器开发的现代化DUI(默认用户…...

如何永久保存微信聊天记录?WeChatMsg完整备份方案详解

如何永久保存微信聊天记录?WeChatMsg完整备份方案详解 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeCha…...

ROS2时间处理避坑指南:从rclcpp::Time到header.stamp的5种转换方法

ROS2时间处理避坑指南:从rclcpp::Time到header.stamp的5种转换方法 在ROS2开发中,时间戳处理看似简单却暗藏玄机。许多开发者在将rclcpp::Time转换为header.stamp时踩过坑——从版本兼容性问题到精度丢失,再到线程安全陷阱。本文将带您深入理…...

HarmonyOS6 半年磨一剑 - RcCheckbox 实战下篇:问卷调查表单与参数使用指南

文章目录前言一、场景:问卷调查表单1.1 需求分析1.2 数据结构设计1.3 表单校验联动1.4 第三题:计数器与数量限制的配合1.5 结果页与状态重置1.6 三道题的样式差异化对比1.7 完整代码二、参数使用频率参考2.1 高频参数(必须掌握)2.…...

HarmonyOS6 半年磨一剑 - RcCheckbox 组件事件体系与交互逻辑

文章目录前言一、点击处理链1.1 核心点击处理函数1.2 两个点击入口二、三事件分层设计2.1 三个事件的对比2.2 事件使用示例三、labelDisabled 局部禁止机制3.1 设计意图3.2 适用场景四、RcCheckboxGroup 的数量限制拦截4.1 min/max 拦截机制4.2 数量限制示例总结前言 一个看似…...

AI绘画辅助:OpenClaw+ollama-QwQ-32B批量处理Stable Diffusion提示词

AI绘画辅助:OpenClawollama-QwQ-32B批量处理Stable Diffusion提示词 1. 为什么需要AI绘画工作流优化 作为一个经常使用Stable Diffusion进行创作的数字艺术家,我一直在寻找提升工作效率的方法。最让我头疼的不是模型本身,而是如何将脑海中的…...

别再只用DoDragDrop了!手把手教你用WPF实现一个能拖拽合并数据的自定义控件(附完整源码)

WPF高级拖拽交互实战:从原生API局限到自定义控件设计 在构建现代桌面应用时,流畅自然的拖拽交互往往能极大提升用户体验。WPF虽然提供了基础的DoDragDrop API,但当我们需要实现复杂场景如卡片合并、动态数据交换时,原生方案就显得…...

ESP32 RMT实现MilesTag 2激光对抗协议

1. milesTag库概述:基于ESP32 RMT外设的MilesTag 2协议激光对抗系统实现milesTag是一个专为Arduino平台设计的轻量级嵌入式库,其核心目标是为开发者提供一套可复用、高精度、低CPU开销的MilesTag 2协议实现方案,用于构建高性能激光对抗&#…...

突破B站字幕壁垒:BiliBiliCCSubtitle全流程解决方案

突破B站字幕壁垒:BiliBiliCCSubtitle全流程解决方案 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 副标题:解决跨平台字幕迁移难题 - 本地…...

ESP8266轻量级按钮状态MQTT同步库

1. 项目概述BartOS-button-online是为 BartOS 物联网操作系统设计的轻量级按钮状态在线同步库,专用于资源受限的 ESP8266 平台(如 ESP-01、NodeMCU),并兼容 Arduino Core for ESP8266 开发环境。该库不提供独立的 UI 或 Web 服务&…...

Sentinel-1 SAR数据预处理后,如何在QGIS里做地表变化监测?一个完整案例

Sentinel-1 SAR数据在QGIS中的地表变化监测实战指南 当你在SNAP中完成了Sentinel-1 SAR数据的预处理,获得了地理编码后的后向散射系数图,这只是整个分析流程的开始。真正的挑战在于如何将这些数据转化为可操作的地表变化信息。本文将带你深入探索从预处理…...

西门子1200水处理程序全解析

西门子1200水处理程序 包含1200PLC通讯点表,CAD原理图,操作说明。 触摸屏包含了组态画面,操作画面,参数设置画面,报警记录等。 V16以上可以打开最近在搞西门子1200的水处理程序项目,今天来和大家分享一下其…...

Jimeng LoRA企业落地案例:设计公司LoRA训练-测试-选型一体化流程

Jimeng LoRA企业落地案例:设计公司LoRA训练-测试-选型一体化流程 1. 项目简介 今天给大家分享一个特别实用的企业级AI应用案例——如何为设计公司搭建一套完整的LoRA模型训练、测试和选型流程。这个项目基于Jimeng(即梦)系列LoRA模型&#…...

M2LOrder模型LSTM原理浅析与实战:时序情感分析入门

M2LOrder模型LSTM原理浅析与实战:时序情感分析入门 你是不是经常看到一些智能客服或者社交平台,能分析出一段对话里用户情绪的变化?比如,用户一开始有点生气,聊着聊着又缓和了,最后还挺满意。这种对“情绪…...

AI绘画效率翻倍:WuliArt Qwen-Image Turbo极速生成实战测评

AI绘画效率翻倍:WuliArt Qwen-Image Turbo极速生成实战测评 1. 极速AI绘画新体验 作为一名长期使用各类AI绘画工具的技术爱好者,我一直在寻找一个能在个人电脑上流畅运行的高效文生图解决方案。直到最近体验了WuliArt Qwen-Image Turbo,这款…...

万物识别镜像在内容安全场景的应用:SpringBoot集成与效果展示

万物识别镜像在内容安全场景的应用:SpringBoot集成与效果展示 1. 万物识别镜像技术解析 万物识别-中文-通用领域镜像基于cv_resnest101_general_recognition算法构建,是一个强大的视觉识别工具。这个镜像最突出的特点是能够识别超过5万类日常物体&…...

LLM驱动的AI Agent故事生成与叙事能力

LLM驱动的AI Agent故事生成与叙事能力 关键词:LLM(大语言模型)、AI Agent、故事生成、叙事能力、自然语言处理 摘要:本文聚焦于LLM驱动的AI Agent在故事生成与叙事能力方面的技术。首先介绍了研究背景,包括目的、预期读者、文档结构和相关术语。接着阐述了核心概念,如LLM…...

2026上位机开发技术栈全景:C#、Qt、Python谁才是你的最优解?

引言:上位机开发的黄金时代与技术抉择 在2026年的工业4.0浪潮中,上位机(Upper Computer)作为工业自动化系统的“大脑中枢”,正以前所未有的深度融入智能制造、能源管理、医疗设备和物联网(IoT)生…...

单片机开源项目精选:从按键处理到物联网平台

1. 单片机开源项目精选:从按键处理到物联网平台 在嵌入式开发领域,GitHub上有大量高质量的开源项目可以加速我们的开发进程。这些项目往往由一线工程师开发维护,经过实际项目验证,比商业库更贴近开发者真实需求。今天我将分享几个…...

Vita3K终极指南:在PC上完美运行PSVita游戏的完整教程

Vita3K终极指南:在PC上完美运行PSVita游戏的完整教程 【免费下载链接】Vita3K Experimental PlayStation Vita emulator 项目地址: https://gitcode.com/gh_mirrors/vi/Vita3K 想在电脑上重温PSVita经典游戏吗?Vita3K模拟器为你打开了一扇通往掌机…...

嵌入式系统内存泄漏防护与实战解决方案

1. 内存泄漏的危害与现状分析在嵌入式系统开发中,内存泄漏堪称"隐形杀手"。我经历过一个真实案例:某通信设备在现网运行三个月后频繁重启,最终定位是某个看似无害的日志处理函数每次调用泄漏512字节内存。这个案例让我深刻认识到&a…...

B+W 模块 BWU1664

BW (BihlWiedemann) BWU1664 是一款 ASi-3 专用模拟量输入模块,专为连接 Leuze ODSL 30 系列长距离激光测距传感器 设计,直接将测距数据接入 ASi 总线。一、核心定位系列:ASi-3 专用模拟量从站模块功能:2 路专用输入,直…...

BURSTER 8645-5005 扭矩传感器

BURSTER 8645-5005(德国波斯特)是一款非接触式、磁致伸缩原理、高精度动态旋转扭矩传感器,量程 5 N・m,内置放大器,专为连续旋转工况下的动态扭矩测量设计一、型号与量程型号:BURSTER 8645-5005系列&#x…...

RAG检索增强生成技术及应用

首先,是什么? RAG是模型生成回答前从指定知识库中精准抓取信息,再结合这些依据去生成内容,回答问题(给一个学霸配备一个随身图书馆,方便随时查阅) 核心就是:知识库(存资料…...

Kubernetes与Istio服务网格最佳实践

Kubernetes与Istio服务网格最佳实践 1. Istio服务网格核心概念 1.1 什么是服务网格 服务网格是一种专门用于处理服务间通信的基础设施层,它负责在现代云原生应用的复杂服务拓扑中可靠地传递请求。 1.2 Istio架构组件 控制平面:包含Pilot、Galley、Citade…...

茉莉花插件:如何用3分钟完成中文文献元数据智能抓取与PDF大纲生成

茉莉花插件:如何用3分钟完成中文文献元数据智能抓取与PDF大纲生成 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 茉莉…...

深入剖析PHP 7.4.21开发服务器源码泄露漏洞及其复现过程

1. PHP开发服务器源码泄露漏洞初探 最近在测试PHP 7.4.21开发服务器时,我发现一个挺有意思的漏洞——源码可以直接被读取。这可不是闹着玩的,想象一下你的网站源代码像裸奔一样暴露在外,数据库配置、加密逻辑全都一览无余。这个漏洞影响所有P…...