<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel>
<title><![CDATA[IT资源技术分享]]></title> 
<atom:link href="https://wanzij.cn/rss.php" rel="self" type="application/rss+xml" />
<description><![CDATA[IT资源技术分享]]></description>
<link>https://wanzij.cn/</link>
<language>zh-cn</language>
<generator>www.emlog.net</generator>
<item>
    <title>视频语义搜索系统 - 应用场景介绍</title>
    <link>https://wanzij.cn/post-82.html</link>
    <description><![CDATA[<h1>视频语义搜索系统 - 应用场景介绍</h1>
<h2>解决什么问题？</h2>
<p>当你的视频素材库积累到成千上万小时，找东西就变成了一场灾难。</p>
<ul>
<li>剪辑师：&quot;上周拍的那个夕阳海边的镜头，在哪个硬盘？&quot;</li>
<li>零售运营：&quot;想看看所有试穿黄色外套的顾客片段&quot;</li>
<li>安保人员：&quot;监控里那个穿黑夹克的男的，前后半小时的活动轨迹&quot;</li>
</ul>
<p>传统的关键词搜索帮不上忙，因为它只认字，不认内容。我们做了一个能&quot;看懂&quot;视频的搜索系统，让你用日常语言就能找到想要的片段。</p>
<hr />
<h2>场景一：媒体与娱乐行业</h2>
<p><strong>谁在用：</strong> 电视台、视频制作公司、短视频平台的剪辑团队</p>
<p><strong>遇到的问题：</strong></p>
<ul>
<li>素材库越来越大，找素材靠记忆和运气</li>
<li>一个专题片要翻阅几十小时的原始素材</li>
<li>跨部门协作时，沟通成本高（&quot;那个蓝色背景的镜头是哪一卷？&quot;）</li>
</ul>
<p><strong>怎么用：</strong></p>
<ul>
<li>语音搜索：「找一段夕阳下海边的奔跑镜头」</li>
<li>属性组合：「红色连衣裙 + 侧脸 + 微笑」</li>
<li>场景描述：「室内 + 两个人在对话 + 桌上有咖啡」</li>
</ul>
<p><strong>实际效果：</strong><br />
原来需要 2 小时翻找素材，现在 30 秒搞定。剪辑师可以专注于创作本身，而不是在硬盘里大海捞针。</p>
<hr />
<h2>场景二：智慧零售</h2>
<p><strong>谁在用：</strong> 连锁零售店、商场、品牌方</p>
<p><strong>能做什么：</strong></p>
<h3>1. 顾客行为分析</h3>
<ul>
<li>「所有试穿黄色外套的顾客」</li>
<li>「在某个货架前停留超过 30 秒的人」</li>
<li>「推着购物车但没有买任何东西就离开的」</li>
</ul>
<h3>2. 运营效果监控</h3>
<ul>
<li>「收银台排队超过 5 人的时间段」</li>
<li>「促销活动期间的人流变化」</li>
<li>「某个商品被拿起的次数统计」</li>
</ul>
<h3>3. 服务质量检查</h3>
<ul>
<li>「员工与顾客互动的场景」</li>
<li>「空柜台的时段分布」</li>
</ul>
<p><strong>价值：</strong><br />
不用再看监控录像&quot;人工统计&quot;，想查什么说一句话就能找到。可以快速发现运营问题，优化门店布局和人员配置。</p>
<hr />
<h2>场景三：司法取证</h2>
<p><strong>谁在用：</strong> 公安技侦、律师事务所、保险公司理赔部门</p>
<p><strong>典型需求：</strong></p>
<h3>1. 快速定位</h3>
<p>从几十小时的监控录像中，找到：</p>
<ul>
<li>「穿黑色夹克男性的活动路径」</li>
<li>「某个时间点之后所有进入该区域的人」</li>
<li>「与目标人物有过接触的人」</li>
</ul>
<h3>2. 证据链整理</h3>
<p>自动生成时间线：</p>
<ul>
<li>什么时候出现在哪里</li>
<li>和谁有过互动</li>
<li>做了什么动作</li>
<li>关键帧截图和文字说明</li>
</ul>
<h3>3. 保险理赔</h3>
<ul>
<li>「事故现场的受伤人员行动轨迹」</li>
<li>「某车辆在某个时间段的所有出现记录」</li>
</ul>
<p><strong>价值：</strong><br />
原来需要 3 个人看 1 天监控才能找完，现在 10 分钟出结果。而且系统不会漏掉细节，不会疲劳。</p>
<hr />
<h2>技术原理（简说）</h2>
<h3>传统搜索为什么不行？</h3>
<p>关键词搜索只匹配文字标签。但视频内容是连续的、丰富的，很难提前打全标签。</p>
<ul>
<li>搜索&quot;女人&quot; → 找得到&quot;女人&quot;两个字</li>
<li>但找不到&quot;穿灰色内衣的女人&quot;（因为标签里没有&quot;内衣&quot;）</li>
<li>甚至会误匹配到&quot;穿灰色上衣的男人&quot;（关键词碰上了）</li>
</ul>
<h3>我们的方法</h3>
<p><strong>第一步：让系统&quot;看懂&quot;视频</strong></p>
<ul>
<li>视频分段后，用视觉模型理解每帧内容</li>
<li>生成结构化描述：人物、动作、场景、服装、物品...</li>
</ul>
<p><strong>第二步：用文字搜索</strong></p>
<ul>
<li>你的查询&quot;灰色内衣的女人&quot;会被拆解成多个条件</li>
<li>每个条件独立评分，取最小值作为整体匹配度</li>
</ul>
<p><strong>第三步：智能过滤</strong></p>
<ul>
<li>用语言模型对搜索结果进行二次判断</li>
<li>识别语义不匹配的内容并过滤掉</li>
<li>比如：查询&quot;女人&quot;，但结果里是&quot;男人&quot;，直接剔除</li>
</ul>
<h3>实际效果对比</h3>
<iframe src="//player.bilibili.com/player.html?isOutside=true&aid=116361183433155&bvid=BV1scDhBDEKq&cid=37302243176&p=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width:100%;height:400px;"></iframe>
<p>查询：「灰色内衣的女人」</p>
<table>
<thead>
<tr>
<th>方法</th>
<th>结果</th>
<th>问题</th>
</tr>
</thead>
<tbody>
<tr>
<td>传统搜索</td>
<td>穿灰色上衣的男人（得分 0.38）</td>
<td>只匹配了关键词，没理解语义</td>
</tr>
<tr>
<td>我们的方法</td>
<td>穿灰色运动内衣的女子（得分 0.95）<br>穿灰色上衣的男人被过滤（LLM 评分 0.00）</td>
<td>真正理解了查询意图</td>
</tr>
</tbody>
</table>
<hr />
<h2>部署方式</h2>
<h3>本地部署</h3>
<ul>
<li>数据不出内网，安全可控</li>
<li>支持离线环境，无需外网连接</li>
<li>可部署在普通服务器上（GPU 可选，有则更快）</li>
</ul>
<hr />
<h2>联系我们</h2>
<p>如果您的业务也有海量视频检索需求，欢迎联系我们获取定制化方案。</p>
<p>我们提供：</p>
<ul>
<li>现场演示和试用</li>
<li>根据您的具体场景优化搜索效果</li>
<li>与现有系统集成的技术支持</li>
<li>培训和技术服务</li>
</ul>]]></description>
    <pubDate>Tue, 07 Apr 2026 10:54:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-82.html</guid>
</item>
<item>
    <title>agent-claw-box 问题反馈</title>
    <link>https://wanzij.cn/post-81.html</link>
    <description><![CDATA[<h2>问题反馈</h2>
<ul>
<li>出现安装或使用问题，请在下面评论留言</li>
</ul>]]></description>
    <pubDate>Fri, 20 Mar 2026 14:01:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-81.html</guid>
</item>
<item>
    <title>skills推荐-pua你的claude code、codex、cursor</title>
    <link>https://wanzij.cn/post-80.html</link>
    <description><![CDATA[<blockquote>
<blockquote>
<p>今天发现一个挺不错的skills-<a href="https://openpua.ai/" title="pua ai">pua ai</a>，分享给大家</p>
</blockquote>
</blockquote>
<p><a href="https://wanzij.cn/content/uploadfile/202603/142c1773364380.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-142c1773364380.png" alt="" /></a></p>
<hr />
<h2>安装</h2>
<pre><code>claude plugin marketplace add tanweai/pua
claude plugin install pua@pua-skills
# 或手动触发
/pua
# 当 Claude 说"我无法解决"时自动激活...
L1 → 你这个 bug 都解决不了，让我怎么给你打绩效？
L2 → WebSearch + 读源码 + 验证环境
L3 → 完成 7 项强制检查清单
L4 → ⚠ 毕业警告：别的模型都能解决</code></pre>
<h2>触发场景</h2>
<h3>自动触发条件</h3>
<p>以下任意情况出现时，skill 会自动激活：</p>
<p><strong>失败与放弃类：</strong></p>
<ul>
<li>任务连续失败 2 次以上</li>
<li>即将说 &quot;I cannot&quot; / &quot;我无法解决&quot;</li>
<li>说 &quot;这超出范围&quot; / &quot;需要手动处理&quot;</li>
</ul>
<p><strong>甩锅与借口类：</strong></p>
<ul>
<li>把问题推给用户：&quot;请你检查...&quot; / &quot;建议手动...&quot;/ &quot;你可能需要...&quot;</li>
<li>未验证就归咎环境：&quot;可能是权限问题&quot; / &quot;可能是网络问题&quot;</li>
<li>找任何借口停止尝试</li>
</ul>
<p><strong>被动与磨洋工类：</strong></p>
<ul>
<li>反复微调同一处代码/参数，不产出新信息（磨洋工）</li>
<li>修完表面问题就停，不检查关联问题</li>
<li>跳过验证直接声称 &quot;已完成&quot;</li>
<li>只给建议不给代码/命令</li>
<li>遇到权限/网络/认证错误就放弃，不尝试替代方案</li>
<li>等待用户指示下一步，不主动调查</li>
</ul>
<p><strong>用户沮丧短语（中/英文均触发）：</strong></p>
<ul>
<li>&quot;你怎么又失败了&quot; / &quot;为什么还不行&quot; / &quot;换个方法&quot;</li>
<li>&quot;你再试试&quot; / &quot;不要放弃&quot; / &quot;继续&quot; / &quot;加油&quot;</li>
<li>&quot;why does this still not work&quot; / &quot;try harder&quot; / &quot;try again&quot;</li>
<li>&quot;you keep failing&quot; / &quot;stop giving up&quot; / &quot;figure it out&quot;</li>
</ul>
<p><strong>适用范围：</strong> 调试、实现、配置、部署、运维、API 集成、数据处理 — 所有任务类型。</p>
<p><strong>不触发：</strong> 首次尝试失败、已知修复方案正在执行中。</p>
<h3>手动触发</h3>
<p>在对话中输入 <code>/pua</code> 即可手动激活。</p>]]></description>
    <pubDate>Fri, 13 Mar 2026 09:11:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-80.html</guid>
</item>
<item>
    <title>使用听语AI总结-B站大佬程序员小山与Bug分享的skills原理</title>
    <link>https://wanzij.cn/post-79.html</link>
    <description><![CDATA[<h1>关于听语AI</h1>
<p>他是一款面向本地部署与私有化使用的转写与内容抽取平台，覆盖视频/音频转写、会议录音处理、结构化内容输出与任务管理。支持本地与云端 ASR 混合使用，适合需要稳定、可控、可扩展的生产场景。<br />
这款开源项目，目前已经完成开发源码版本，后续推出跨平台的打包版本，同时放一个<a href="https://github.com/wzj177/video2txt">传送门</a></p>
<hr />
<h1>如何下载b站高清视频</h1>
<p>在开始之前，我给大家分享下我自己平时是如何下载高清视频的。</p>
<h2>工具站下载</h2>
<p>我们可以访问<a href="https://tool.wanzij.cn/bili_video" title="B站视频解析">B站视频解析</a>网站（ps：这个也是我自己做的），然后在把b站的视频地址复制上，在粘贴到工具的输入框后点击提交就行了，如果大家需要1080p的，点击右侧二维码，大家用自己的b站app扫码登录就行（ps：不会记录任何用户数据，放心使用）<br />
<a href="https://wanzij.cn/content/uploadfile/202603/53a21773285243.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-53a21773285243.png" alt="" /></a></p>
<h2>浏览器插件下载</h2>
<h3>1、ACG助手 - 提供视频下载消息</h3>
<p>这是一个十分强大的专业b站下载插件，功能十分丰富，一般情况在不开通会员下就能满足，放一个<a href="https://acghelper.com/" title="传送门">传送门</a><br />
<a href="https://wanzij.cn/content/uploadfile/202603/5d8a1773285510.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-5d8a1773285510.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202603/5ff31773285543.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-5ff31773285543.png" alt="" /></a></p>
<h3>2、万能猫爪</h3>
<p>这个工具就不过多介绍了，没用过的朋友还是给你们一个<a href="https://github.com/xifangczy/cat-catch" title="传送门">传送门</a></p>
<hr />
<h1>内容卡片：Cloud Code 中 Skill 的底层实现解析</h1>
<h4><strong>标题</strong></h4>
<p>Cloud Code 中 Skill 的底层实现与 Function Calling 机制解析  </p>
<h4><strong>摘要</strong></h4>
<p>本视频探讨了 Cloud Code 中 Skill 的底层实现原理，通过抓包分析展示了其基于 Function Calling 的工作机制。作者详细讲解了如何通过配置 HTTP 协议抓取请求数据，并逐步拆解了 Skill 的动态描述拼接逻辑。视频还强调了 Token 消耗的重要性及其在对话轮数增加时的指数级增长趋势。（00:00-03:57）</p>
<h4><strong>章节</strong></h4>
<h2><strong>1. 抓包分析 Cloud Code 的请求机制</strong></h2>
<ul>
<li><strong>内容</strong>：Cloud Code 使用 HTTPS 协议进行双向验证，难以通过中间人抓包。为解决这一问题，作者将网关地址改为 HTTP 协议（如火山支持 HTTP），并通过设置代理端口（8888）启动抓包工具。（00:00-00:44）  </li>
<li><strong>关键帧</strong>：<br />
<a href="https://wanzij.cn/content/uploadfile/202603/21fc1773284733.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-21fc1773284733.png" alt="" /></a> </li>
</ul>
<h2><strong>2. 请求体与 Function Calling 模块解析</strong></h2>
<ul>
<li><strong>内容</strong>：通过抓包工具捕获请求后，作者分析了请求体中的 JSON 数据，包括系统提示词和 Function Calling 模块的具体功能。模块中包含 task、task output、base、global 等字段，以及一些特定功能如文件编辑、联网搜索等。（00:44-01:26）  </li>
<li><strong>关键帧</strong>：<br />
<a href="https://wanzij.cn/content/uploadfile/202603/11f21773284772.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-11f21773284772.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202603/3e9b1773284784.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-3e9b1773284784.png" alt="" /></a></li>
</ul>
<h2><strong>3. Skill 的动态描述拼接逻辑</strong></h2>
<ul>
<li>
<p><strong>内容</strong>：Skill 是一个特殊的 Function，其描述会根据 skill 文件夹中的头信息动态拼接。例如，当调用 PPT 相关技能时，详细的描述会被二次传递给大模型。（01:26-02:44）  </p>
</li>
<li>
<p><strong>关键帧</strong>：<br />
<a href="https://wanzij.cn/content/uploadfile/202603/ba861773284801.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-ba861773284801.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202603/7c181773284885.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-7c181773284885.png" alt="" /></a></p>
<h2><strong>4. Token 消耗与对话状态管理</strong></h2>
</li>
<li>
<p><strong>内容</strong>：即使是简单的“你好”输入，底层也会发送大量数据，消耗大量 Token。随着对话轮数增加，历史聊天记录必须携带，导致 Token 消耗呈指数级增长。（03:10-03:57）  </p>
</li>
<li>
<p><strong>关键帧</strong>：<br />
<a href="https://wanzij.cn/content/uploadfile/202603/6f141773284831.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-6f141773284831.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202603/d4511773284872.png"><img src="https://wanzij.cn/content/uploadfile/202603/thum-d4511773284872.png" alt="" /></a></p>
</li>
</ul>
<h4><strong>总结与思考</strong></h4>
<ul>
<li>
<p><strong>总结</strong>：  </p>
<ul>
<li>Cloud Code 中的 Skill 底层实现基于 Function Calling，其描述通过动态拼接生成。（02:44-03:10）  </li>
<li>抓包分析揭示了请求体的结构和具体功能模块的设计逻辑。（00:44-01:26）  </li>
<li>Token 消耗在对话过程中至关重要，尤其是随着对话轮数增加，历史记录的携带会导致消耗激增。（03:10-03:57）  </li>
</ul>
</li>
<li>
<p><strong>思考</strong>：  </p>
<ul>
<li>动态拼接的描述机制是否可以进一步优化以减少 Token 消耗？  </li>
<li>在实际应用中，如何平衡功能丰富性与 Token 成本之间的关系？  </li>
</ul>
</li>
</ul>
<h4><strong>附注</strong></h4>
<p>所有图像均来自视频关键帧，未对画面细节进行推测或杜撰。</p>
<hr />
<h1>视频原文</h1>
<p><a href="https://www.bilibili.com/video/BV1yRPWzqEhL/?spm_id_from=333.1007.top_right_bar_window_default_collection.content.click&amp;vd_source=59f6a86d3ab33340496fbbc8376975ab">https://www.bilibili.com/video/BV1yRPWzqEhL/?spm_id_from=333.1007.top_right_bar_window_default_collection.content.click&amp;vd_source=59f6a86d3ab33340496fbbc8376975ab</a></p>]]></description>
    <pubDate>Thu, 12 Mar 2026 11:01:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-79.html</guid>
</item>
<item>
    <title>Superpowers 入门指南：让 AI 编程代理像资深工程师一样工作</title>
    <link>https://wanzij.cn/post-78.html</link>
    <description><![CDATA[<h1>Superpowers 入门指南：让 AI 编程代理像资深工程师一样工作</h1>
<blockquote>
<p>📌 适合人群：使用 Claude Code / Cursor / Codex 等 AI 编程工具，希望提升代码质量、规范开发流程的开发者<br />
⏱️ 阅读时间：约 15 分钟 | 🛠️ 技术栈：通用（支持多平台）</p>
</blockquote>
<hr />
<h2>🎯 一、为什么你需要 Superpowers？</h2>
<p>如果你用过 AI 编程工具，可能遇到过这些场景：</p>
<pre><code>❌ "帮我加个用户登录"
→ AI 直接生成代码，没问权限模型、没考虑失败处理、没写测试
→ 上线后发现：短信验证码没对接、密码没加密、并发登录没控制

❌ "修复这个 bug"
→ AI 改了几行代码说"应该好了"
→ 但你不知道它改了什么、为什么这样改、会不会影响其他功能</code></pre>
<p><strong>问题的根源</strong>：大多数 AI 代理像&quot;会写代码的实习生&quot;——有技术能力，但缺乏工程思维。</p>
<p><strong>Superpowers 的解法</strong>：把资深工程师的最佳实践（TDD、代码审查、系统化调试）<strong>编码成可执行的工作流</strong>，让 AI 代理自动遵循，而不是靠&quot;自觉&quot;。</p>
<blockquote>
<p>💡 一句话理解：<br />
Superpowers 不是另一个&quot;提示词模板&quot;，而是一套<strong>强制执行的工程规范系统</strong>，让 AI 从&quot;能写代码&quot;升级为&quot;会做工程&quot;。</p>
</blockquote>
<hr />
<h2>🔑 二、核心概念：什么是&quot;技能&quot;（Skills）？</h2>
<h3>2.1 技能的本质</h3>
<pre><code>Skill = 一个可组合的"决策流程图" + "触发条件" + "反模式清单"</code></pre>
<ul>
<li>🗂️ 用 DOT/GraphViz 语法定义决策流程（不是装饰，是 AI 必须遵循的规范）</li>
<li>🎯 通过意图识别自动触发，无需手动调用命令</li>
<li>🚫 明确列出&quot;什么情况下不该用&quot;，防止误用</li>
</ul>
<h3>2.2 技能如何工作？（以 <code>test-driven-development</code> 为例）</h3>
<pre><code>当你说："加个用户注册接口"

1️⃣ 技能自动激活（检测到"新增功能"意图）
2️⃣ 强制进入 TDD 流程：
   ├─ RED: 先写测试用例（用户名校验、密码强度、重复注册...）
   ├─ 运行测试 → 预期失败 ✅
   ├─ GREEN: 写最小实现让测试通过
   ├─ 再次运行测试 → 全部通过 ✅
   └─ REFACTOR: 优化代码结构、提取公共逻辑
3️⃣ 如果试图跳过测试？技能会拦截并提醒："请先完成测试用例"</code></pre>
<blockquote>
<p>🔄 这不是&quot;建议&quot;，而是<strong>工作流引擎</strong>：流程图中的每个决策点都是强制检查项。</p>
</blockquote>
<hr />
<h2>🚀 三、快速安装（按你的环境选择）</h2>
<h3>3.1 前置检查</h3>
<pre><code class="language-bash"># 确认你的 AI 工具版本
claude --version    # Claude Code &gt;= 0.3.0
cursor --version    # Cursor Agent &gt;= 1.5.0</code></pre>
<h3>3.2 平台安装指南</h3>
<h4>▶️ Claude Code（推荐，原生支持最好）</h4>
<pre><code class="language-bash"># 1. 添加插件市场
/plugin marketplace add obra/superpowers-marketplace

# 2. 安装 Superpowers
/plugin install superpowers@superpowers-marketplace

# 3. 验证安装
/help
# 看到以下技能即成功：
# - /superpowers:brainstorm    需求澄清
# - /superpowers:write-plan    任务拆解
# - /superpowers:execute-plan  执行计划</code></pre>
<h4>▶️ Cursor Agent</h4>
<pre><code class="language-bash"># 方式1：命令安装
/plugin-add superpowers

# 方式2：插件市场搜索 "superpowers" → Install</code></pre>
<h4>▶️ Codex / OpenCode</h4>
<pre><code class="language-bash"># 告诉 Codex 执行远程安装指令：
Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.codex/INSTALL.md

# OpenCode 一键脚本（macOS/Linux）：
curl -fsSL https://raw.githubusercontent.com/obra/superpowers/main/scripts/install-opencode.sh | bash</code></pre>
<h4>▶️ 本地开发调试（高级）</h4>
<pre><code class="language-bash"># 克隆仓库
git clone https://github.com/obra/superpowers.git ~/.superpowers

# 在 Claude Code 中加载本地版本
/plugin link ~/.superpowers</code></pre>
<blockquote>
<p>💡 macOS 用户注意：如果遇到权限问题，确保 <code>~/.config/</code> 目录可写，或使用 <code>sudo</code> 执行安装脚本。</p>
</blockquote>
<hr />
<h2>🔄 四、完整工作流：从想法到上线的 6 个阶段</h2>
<pre><code>💡 你的输入："我想给系统加个节点心跳检测功能"
↓
🤖 Superpowers 自动触发工作流</code></pre>
<h3>阶段 1️⃣：头脑风暴（Brainstorming）— 先想清楚再动手</h3>
<pre><code>AI 不会直接写代码，而是像技术评审一样提问：

❓ 问题1：心跳间隔配置项放在哪里？（环境变量 / 配置文件 / 数据库？）
❓ 问题2：节点离线判定阈值是多少？连续3次超时？还是滑动窗口？
❓ 问题3：故障自修复的触发条件？自动重启？还是告警人工介入？
❓ 问题4：与现有状态管理机制如何集成？[参考用户记忆：状态=注册/注销/心跳离线]

✅ 输出：`docs/superpowers/specs/heartbeat-detection.md`
✅ 每 200-300 字一个小节，需要你确认"这部分对吗？"</code></pre>
<h3>阶段 2️⃣：工作区隔离（Git Worktrees）— 开发不污染主线</h3>
<pre><code class="language-bash"># AI 自动执行：
git worktree add -b feature/heartbeat-detection ../worktrees/heartbeat
cd ../worktrees/heartbeat

# 优势：
- 主分支代码不受影响
- 多个功能并行开发不冲突
- 随时可丢弃实验性分支</code></pre>
<h3>阶段 3️⃣：编写计划（Writing Plans）— 拆解到&quot;无脑执行&quot;级别</h3>
<pre><code>❌ 模糊任务："实现心跳检测"
✅ Superpowers 拆解：

[ ] 任务1: 创建 HeartbeatConfig 数据结构
   ├─ 文件：src/Config/HeartbeatConfig.php
   ├─ 字段：interval(秒), timeout_threshold, retry_count
   └─ 验证：phpunit tests/Unit/HeartbeatConfigTest.php

[ ] 任务2: 实现 sendHeartbeat() 基础方法
   ├─ 文件：src/Node/HeartbeatSender.php
   ├─ 依赖：Guzzle HTTP 客户端
   └─ 验证：Mock 服务器接收请求断言

[ ] 任务3: 编写超时检测单元测试（先写测试！）
   ├─ 文件：tests/Unit/HeartbeatTimeoutTest.php
   ├─ 用例：正常响应 / 超时 / 网络异常
   └─ 验证：phpunit --filter HeartbeatTimeoutTest</code></pre>
<blockquote>
<p>🎯 关键原则：每个任务必须小到 <strong>2-5 分钟能完成 + 有明确验证步骤</strong></p>
</blockquote>
<h3>阶段 4️⃣：子代理驱动开发（Subagent-Driven）— 专注 + 审查</h3>
<pre><code>主代理为每个任务派遣"新鲜"子代理（无上下文污染）：

🔹 执行阶段：
   - 子代理只关注当前任务，不受其他逻辑干扰
   - 严格按计划执行，不"自由发挥"

🔹 两阶段审查（v4.0 核心创新）：
   阶段一：规格符合性
   ├─ 代码是否完全实现需求？
   ├─ 有没有多做/少做？
   └─ 文件路径、函数签名是否匹配计划？

   阶段二：代码质量（仅当阶段一通过）
   ├─ 测试覆盖率是否达标？
   ├─ 是否有重复代码/硬编码？
   └─ 错误处理是否完备？

🔁 审查不通过 → 自动修复 → 重新审查，直到✅</code></pre>
<h3>阶段 5️⃣：TDD 强制执行（RED-GREEN-REFACTOR）— 测试先行</h3>
<pre><code>这是最容易被跳过的环节，Superpowers 会强制：

🔴 RED: 先写会失败的测试
$ phpunit tests/Feature/HeartbeatTest.php
✓ 预期：1 个失败（因为 sendHeartbeat 还未实现）

⚠️ 如果测试一开始就通过？技能会拦截：
"测试未覆盖新功能，请检查用例设计"

🟢 GREEN: 写最小实现让测试通过
- 不追求完美，先让测试变绿
- 代码可以粗糙，但行为必须正确

🔵 REFACTOR: 重构优化
- 提取公共逻辑
- 添加类型声明
- 优化错误消息
- ✅ 重构后测试必须仍通过</code></pre>
<h3>阶段 6️⃣：收尾决策（Finishing）— 合并还是丢弃？</h3>
<pre><code>所有任务完成后，AI 呈现选项：

[1] ✅ 合并到主分支（测试全通过 + 审查通过）
[2] 📦 创建 Pull Request（团队协作场景）
[3] 💾 保留 worktree（后续继续开发）
[4] 🗑️  丢弃（实验性功能不满意）

# 选择后自动清理：
git worktree remove ../worktrees/heartbeat
git branch -D feature/heartbeat-detection</code></pre>
<hr />
<h2>🧪 五、实战示例：为你的集群系统添加&quot;节点掉线识别&quot;</h2>
<blockquote>
<p>🎯 结合你的业务场景（多网络融合系统 + 状态管理 + Docker 部署）</p>
</blockquote>
<h3>5.1 启动头脑风暴</h3>
<pre><code>你输入：
"需要实现节点掉线自动识别，要求：
- 支持自定义超时阈值
- 掉线后触发告警
- 与现有状态机集成"

Superpowers 自动触发 brainstorming 技能，开始提问：

❓ 配置项存储方案？
   A) .env 环境变量（适合 Docker 部署）✅
   B) config/cluster.php 配置文件
   C) 数据库动态配置

❓ 掉线判定逻辑？
   A) 连续 N 次心跳超时（简单可靠）✅
   B) 滑动窗口统计（更精确但复杂）
   C) 结合网络质量动态调整

❓ 告警触发方式？
   A) 写入日志 + 邮件通知
   B) 调用 webhook（对接钉钉/企业微信）✅
   C) 推送 MQTT 消息（IoT 场景）

# 你选择 A + A + B，AI 生成设计文档</code></pre>
<h3>5.2 查看生成的计划（节选）</h3>
<pre><code class="language-markdown">## 任务：实现节点超时检测器

### 前置条件
- [x] HeartbeatConfig 数据结构已存在
- [ ] 需要新增 NodeStatus::OFFLINE 状态

### 实现步骤
1. 创建 HeartbeatMonitor 类
   ```php
   // src/Monitor/HeartbeatMonitor.php
   class HeartbeatMonitor {
       public function checkTimeout(Node $node): bool {
           // 实现连续超时计数逻辑
       }
   }</code></pre>
<ol start="2">
<li>
<p>编写单元测试（先写！）</p>
<pre><code class="language-php">// tests/Unit/HeartbeatMonitorTest.php
public function test_node_marked_offline_after_threshold() {
   // 模拟连续 3 次超时
   // 断言节点状态变为 OFFLINE
}</code></pre>
</li>
<li>
<p>集成到状态机</p>
<ul>
<li>修改 Node::updateStatus() 方法</li>
<li>添加事件监听：onNodeOffline → 触发告警
<pre><code></code></pre></li>
</ul>
</li>
</ol>
<h3>5.3 执行中的关键验证点</h3>
<pre><code class="language-bash"># 1. 测试必须先失败
$ phpunit --filter test_node_marked_offline
✗ Failed: HeartbeatMonitor::checkTimeout() not implemented

# 2. 实现后测试通过
✓ 1 test passed

# 3. 集成测试验证端到端流程
$ php tests/Integration/NodeOfflineWorkflowTest.php
✓ 节点超时 → 状态更新 → 告警触发 全流程通过

# 4. Docker 环境验证（结合你的部署经验）
$ docker-compose exec app phpunit
✓ 容器内测试同样通过，环境变量配置生效</code></pre>
<hr />
<h2>⚙️ 六、高级技巧 &amp; 避坑指南</h2>
<h3>6.1 技能触发机制（为什么有时不生效？）</h3>
<pre><code>✅ 正确触发方式：
- 使用自然语言描述任务："加个登录验证"、"修复这个超时问题"
- 包含明确意图：新增 / 修改 / 调试 / 优化

❌ 常见误区：
- 直接粘贴代码让 AI"看看哪里错了"（应使用 systematic-debugging 技能）
- 说"随便写个示例"（缺乏明确目标，技能无法匹配）

💡 调试技巧：
如果怀疑技能未触发，输入：
"/superpowers:debug last-intent"
查看 AI 识别到的意图和匹配的技能</code></pre>
<h3>6.2 自定义技能（结合你的扩展开发经验）</h3>
<pre><code>场景：你想为国标 28181 业务添加"指令签名验证"技能

1️⃣ 创建技能文件：skills/gb28181-signature/SKILL.md
2️⃣ 定义触发条件：</code></pre>
<p>Use when: </p>
<ul>
<li>用户提到&quot;28181 指令&quot;、&quot;SIP 消息&quot;、&quot;签名验证&quot;</li>
<li>涉及 API 安全、防重放攻击场景
<pre><code></code></pre></li>
</ul>
<p>3️⃣ 编写决策流程图（DOT 语法）：</p>
<pre><code class="language-dot">   digraph signature_verify {
     start -&gt; check_timestamp [label="检查时间戳"];
     check_timestamp -&gt; verify_signature [label="时间戳有效"];
     verify_signature -&gt; log_audit [label="签名通过"];
     verify_signature -&gt; reject_request [label="签名失败"];
   }</code></pre>
<p>4️⃣ 添加反模式清单：</p>
<pre><code>   ❌ 不要：在技能描述中写"先检查时间戳再验证签名"
   ✅ 要：只在描述中写触发条件，流程细节放在流程图中</code></pre>
<p>5️⃣ 测试技能触发：</p>
<pre><code class="language-bash">   # 使用项目自带的测试框架
   php tests/SkillTriggerTest.php --skill=gb28181-signature</code></pre>
<pre><code>
### 6.3 常见坑点 &amp; 解决方案
| 问题现象 | 可能原因 | 解决方案 |
|---------|---------|---------|
| 技能不触发 | 提示词意图模糊 | 用"动词+名词"明确任务，如"实现用户登录验证" |
| 子代理执行超时 | 任务拆得太大 | 确保每个计划任务 ≤5 分钟可完成 |
| Windows 路径错误 | 单引号转义问题 | 升级到 v5.0.1+，或手动修改钩子脚本 |
| 测试环境不一致 | 本地/容器配置差异 | 在计划中明确指定`phpunit.xml` 配置路径 |
| 技能描述覆盖流程图 | AI 跟随简短描述忽略流程图 | 描述只写触发条件，流程细节放 DOT 图中 |

### 6.4 性能优化建议</code></pre>
<p>🔹 减少上下文污染：</p>
<ul>
<li>每个子代理任务使用独立 worktree</li>
<li>避免在计划中引用大文件（如完整日志）</li>
</ul>
<p>🔹 加速测试执行：</p>
<ul>
<li>在计划中指定<code>--group=unit</code> 只跑单元测试</li>
<li>使用<code>phpunit --stop-on-failure</code> 快速失败</li>
</ul>
<p>🔹 缓存技能决策：</p>
<ul>
<li>对于重复模式（如&quot;新增 CRUD&quot;），可复用已验证的计划模板</li>
<li>在<code>docs/superpowers/templates/</code> 中保存常用方案
<pre><code></code></pre></li>
</ul>
<hr />
<h2>📊 七、什么场景推荐使用？（决策矩阵）</h2>
<pre><code>✅ 强烈推荐：
┌─────────────────────────────────┐
│ 🔹 新功能开发（需求→设计→实现）  │
│ 🔹 核心业务逻辑重构              │
│ 🔹 需要严格测试覆盖的模块        │
│ 🔹 团队协作时的代码规范统一      │
│ 🔹 学习工程最佳实践的新手        │
└─────────────────────────────────┘

⚠️ 谨慎使用：
┌─────────────────────────────────┐
│ 🔸 紧急 hotfix（流程较重）       │
│ 🔸 纯探索性原型（先用 brainstorm）│
│ 🔸 简单配置修改（杀鸡用牛刀）    │
└─────────────────────────────────┘

❌ 暂不推荐：
┌─────────────────────────────────┐
│ 🔻 无测试基础设施的老项目        │
│ 🔻 需求极度模糊且无法澄清的场景  │
└─────────────────────────────────┘</code></pre>
<blockquote>
<p>💡 你的独特优势：<br />
作为全栈工程师 + 安全项目产品经理，Superpowers 能帮你：</p>
<ul>
<li>保障支付/集群等核心模块的工程基础（幂等性、一致性）[[15]][[16]]</li>
<li>将 Docker 部署经验 [[8]] 融入自动化测试验证</li>
<li>用<code>writing-plans</code> 技能拆解复杂的国标 28181 指令处理逻辑 [[18]]</li>
</ul>
</blockquote>
<hr />
<h2>🎁 八、附：速查清单（保存备用）</h2>
<h3>安装验证</h3>
<pre><code class="language-bash"># Claude Code 检查
/help | grep superpowers

# 技能列表
/superpowers:list</code></pre>
<h3>常用技能触发词</h3>
<pre><code>💡 需求阶段：
"我想做一个 X" → brainstorming
"这个功能怎么设计更好" → brainstorming

📋 计划阶段：
"把需求拆成可执行任务" → writing-plans
"这个任务怎么验证" → writing-plans

🔧 执行阶段：
"先写测试再实现" → test-driven-development
"修复这个 bug" → systematic-debugging

👀 审查阶段：
"帮我看看这段代码" → requesting-code-review
"这个实现符合要求吗" → subagent-driven-development</code></pre>
<h3>紧急跳过流程（不推荐但有时需要）</h3>
<pre><code># 临时禁用某个技能（调试用）
/superpowers:disable test-driven-development

# 强制执行原始指令（绕过工作流）
/raw 直接写代码，不要走流程

⚠️ 注意：用完后记得重新启用，避免污染后续任务</code></pre>
<hr />
<h2>🌟 结语：让工程思维成为 AI 的&quot;肌肉记忆&quot;</h2>
<p>Superpowers 的本质，不是增加约束，而是<strong>降低认知负荷</strong>：</p>
<pre><code>以前：
你 → 想清楚需求 → 写详细提示词 → 监督 AI 不跑偏 → 手动补测试 → 反复审查

现在：
你 → 说"加个登录功能" → Superpowers 自动引导全流程 → 你只需确认关键决策</code></pre>
<blockquote>
<p>🔑 核心收益：<br />
<strong>把&quot;应该怎么做&quot;的工程知识，变成&quot;必须这么做&quot;的自动化流程</strong>，<br />
让你从&quot;监督实习生&quot;升级为&quot;审核资深工程师&quot;。</p>
</blockquote>
<hr />
<blockquote>
<p>🔄 <a href="https://github.com/obra/superpowers">GitHub 仓库</a></p>
</blockquote>]]></description>
    <pubDate>Fri, 06 Mar 2026 10:48:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-78.html</guid>
</item>
<item>
    <title>微信支付后摇一摇太烦人？一键关闭</title>
    <link>https://wanzij.cn/post-76.html</link>
    <description><![CDATA[<p>以下链接直接复制发送给文件传输助手或者任意好友，在微信移动端打开即可（建议三个一起关更清净）</p>
<p>关闭微信支付后摇一摇</p>
<p><a href="https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=3&amp;scene=1&amp;exportkey">https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=3&amp;scene=1&amp;exportkey</a>=</p>
<p>关闭微信支付服务营销骚扰</p>
<p><a href="https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=2&amp;scene=1&amp;exportkey">https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=2&amp;scene=1&amp;exportkey</a>=</p>
<p>关闭微信支付服务个性化推荐广告</p>
<p><a href="https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=1&amp;scene=1&amp;exportkey">https://payapp.wechatpay.cn/useraccount/consumerprotection/queryuserbusitag?busi_type=1&amp;scene=1&amp;exportkey</a>=</p>
<hr />
<p>原文：<a href="https://linux.do/t/topic/1670290">https://linux.do/t/topic/1670290</a></p>]]></description>
    <pubDate>Sat, 28 Feb 2026 16:21:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-76.html</guid>
</item>
<item>
    <title>分享一个通用的工程化claude.md模板</title>
    <link>https://wanzij.cn/post-77.html</link>
    <description><![CDATA[<h1>CLAUDE.md</h1>
<p>本文件为 AI 助手在此代码库中工作时提供上下文指导。</p>
<hr />
<h2>项目概览</h2>
<table>
<thead>
<tr>
<th>配置项</th>
<th>值</th>
</tr>
</thead>
<tbody>
<tr>
<td>项目名称</td>
<td>{{项目名称}}</td>
</tr>
<tr>
<td>项目类型</td>
<td>{{Web API / 移动端 / 桌面应用 / 库 / 工具}}</td>
</tr>
<tr>
<td>主要语言</td>
<td>{{语言 + 版本}}</td>
</tr>
<tr>
<td>构建工具</td>
<td>{{构建/包管理工具}}</td>
</tr>
<tr>
<td>部署方式</td>
<td>{{部署环境}}</td>
</tr>
</tbody>
</table>
<p><strong>核心功能</strong>：{{用 1-2 句话描述项目做什么}}</p>
<hr />
<h2>目录结构</h2>
<p>{{项目根目录}}/<br />
├── src/ # 源代码<br />
├── tests/ # 测试代码<br />
├── docs/ # 文档<br />
├── config/ # 配置文件<br />
├── scripts/ # 构建/部署脚本<br />
├── {{业务模块}}/ # 业务相关目录<br />
└── {{其他}}/ # 其他目录</p>
<hr />
<h2>开发命令</h2>
<pre><code class="language-bash"># 安装依赖
{{安装命令}}

# 启动开发环境
{{开发启动命令}}

# 运行测试
{{测试命令}}

# 构建生产版本
{{构建命令}}

# 代码检查
{{lint 命令}}
{{格式化命令}}</code></pre>
<hr />
<h2>架构原则</h2>
<h3>分层约定</h3>
<p>请求/输入 → 控制器/接口层 → 业务逻辑层 → 数据访问层 → 存储/外部服务</p>
<h3>核心规范</h3>
<ol>
<li><strong>单一职责</strong>：每个模块/类只负责一件事</li>
<li><strong>依赖倒置</strong>：依赖抽象接口，不依赖具体实现</li>
<li><strong>配置分离</strong>：环境相关配置放入配置文件/环境变量</li>
<li><strong>错误处理</strong>：统一错误格式，记录日志，不泄露敏感信息</li>
</ol>
<hr />
<h2>编码规范</h2>
<h3>命名约定</h3>
<table>
<thead>
<tr>
<th>类型</th>
<th>规范</th>
<th>示例</th>
</tr>
</thead>
<tbody>
<tr>
<td>文件/目录</td>
<td>{{kebab-case / snake_case}}</td>
<td><code>user-service.ts</code> / <code>user_service.py</code></td>
</tr>
<tr>
<td>类/类型</td>
<td>{{PascalCase}}</td>
<td><code>UserService</code></td>
</tr>
<tr>
<td>函数/方法</td>
<td>{{camelCase}}</td>
<td><code>getUserById</code></td>
</tr>
<tr>
<td>常量</td>
<td>{{UPPER_SNAKE_CASE}}</td>
<td><code>MAX_RETRY_COUNT</code></td>
</tr>
<tr>
<td>私有成员</td>
<td>{{前缀约定}}</td>
<td><code>_internalVar</code></td>
</tr>
</tbody>
</table>
<h3>代码风格</h3>
<ul>
<li>缩进：{{2 空格 / 4 空格 / Tab}}</li>
<li>行宽：{{80 / 100 / 120}} 字符</li>
<li>引号：{{单引号 / 双引号}}</li>
<li>末尾分号：{{需要 / 不需要}}</li>
</ul>
<h3>注释规范</h3>
<pre><code>// 单行注释：解释"为什么"，不是"做什么"

/**
 * 多行注释/文档注释
 * @param 参数说明
 * @return 返回值说明
 */</code></pre>
<hr />
<h2>测试规范</h2>
<h3>测试类型</h3>
<table>
<thead>
<tr>
<th>类型</th>
<th>位置</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>单元测试</td>
<td><code>tests/unit/</code></td>
<td>测试单个函数/类</td>
</tr>
<tr>
<td>集成测试</td>
<td><code>tests/integration/</code></td>
<td>测试模块间协作</td>
</tr>
<tr>
<td>E2E 测试</td>
<td><code>tests/e2e/</code></td>
<td>测试完整用户流程</td>
</tr>
</tbody>
</table>
<h3>测试命名</h3>
<pre><code>{{测试语言示例}}
// 格式：should_预期行为_当条件
test('should_return_user_when_id_exists')</code></pre>
<h3>测试覆盖率要求</h3>
<ul>
<li>行覆盖率：≥ {{80}}%</li>
<li>分支覆盖率：≥ {{70}}%</li>
<li>关键业务模块：100%</li>
</ul>
<hr />
<h2>安全规范</h2>
<h3>必须遵守</h3>
<ul>
<li>[ ] 用户输入必须验证和转义</li>
<li>[ ] 敏感信息不写入日志</li>
<li>[ ] 密码/密钥使用环境变量存储</li>
<li>[ ] API 接口需要认证和授权</li>
<li>[ ] 数据库查询使用参数化（防注入）</li>
</ul>
<h3>禁止行为</h3>
<ul>
<li>硬编码密钥/密码</li>
<li>明文存储敏感数据</li>
<li>跳过输入验证</li>
<li>在生产环境使用调试模式</li>
</ul>
<hr />
<h2>依赖管理</h2>
<h3>依赖分类</h3>
<table>
<thead>
<tr>
<th>类型</th>
<th>说明</th>
<th>示例</th>
</tr>
</thead>
<tbody>
<tr>
<td>生产依赖</td>
<td>运行时必需</td>
<td>框架、核心库</td>
</tr>
<tr>
<td>开发依赖</td>
<td>仅开发/测试需要</td>
<td>测试框架、lint 工具</td>
</tr>
<tr>
<td>可选依赖</td>
<td>特定功能需要</td>
<td>插件、扩展</td>
</tr>
</tbody>
</table>
<h3>版本策略</h3>
<ul>
<li>生产依赖：锁定具体版本（<code>1.2.3</code>）</li>
<li>开发依赖：可使用范围版本（<code>^1.2.0</code>）</li>
<li>定期更新：每月检查安全漏洞</li>
</ul>
<hr />
<h2>Git 工作流</h2>
<h3>分支策略</h3>
<pre><code>main          # 生产分支（受保护）
develop       # 开发分支
feature/*     # 功能分支
bugfix/*      # 修复分支
release/*     # 发布分支</code></pre>
<h3>提交规范</h3>
<pre><code>&lt;type&gt;(&lt;scope&gt;): &lt;subject&gt;

# type: feat | fix | docs | style | refactor | test | chore
# scope: 影响范围（可选）
# subject: 简短描述

# 示例
feat(auth): add JWT token refresh endpoint
fix(api): resolve null pointer in user service
docs(readme): update installation guide</code></pre>
<h3>PR/MR 要求</h3>
<ul>
<li>[ ] 代码通过所有测试</li>
<li>[ ] 代码通过 lint 检查</li>
<li>[ ] 有相关测试覆盖</li>
<li>[ ] 更新相关文档</li>
<li>[ ] 至少 1 人代码审查</li>
</ul>
<hr />
<h2>文档规范</h2>
<h3>必须维护的文档</h3>
<table>
<thead>
<tr>
<th>文档</th>
<th>路径</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>README</td>
<td><code>README.md</code></td>
<td>项目介绍、快速开始</td>
</tr>
<tr>
<td>API 文档</td>
<td><code>docs/api/</code></td>
<td>接口定义、示例</td>
</tr>
<tr>
<td>部署指南</td>
<td><code>docs/deploy.md</code></td>
<td>环境要求、部署步骤</td>
</tr>
<tr>
<td>变更日志</td>
<td><code>CHANGELOG.md</code></td>
<td>版本历史记录</td>
</tr>
</tbody>
</table>
<h3>文档更新时机</h3>
<ul>
<li>新增功能 → 更新 README + API 文档</li>
<li>配置变更 → 更新部署指南</li>
<li>版本发布 → 更新变更日志</li>
</ul>
<hr />
<h2>配置管理</h2>
<h3>环境分类</h3>
<table>
<thead>
<tr>
<th>环境</th>
<th>用途</th>
<th>配置文件</th>
</tr>
</thead>
<tbody>
<tr>
<td>开发</td>
<td>本地开发</td>
<td><code>.env.local</code></td>
</tr>
<tr>
<td>测试</td>
<td>自动化测试</td>
<td><code>.env.test</code></td>
</tr>
<tr>
<td>预发</td>
<td>上线前验证</td>
<td><code>.env.staging</code></td>
</tr>
<tr>
<td>生产</td>
<td>线上环境</td>
<td><code>.env.production</code></td>
</tr>
</tbody>
</table>
<h3>配置优先级</h3>
<pre><code>命令行参数 &gt; 环境变量 &gt; 配置文件 &gt; 默认值</code></pre>
<hr />
<h2>问题排查</h2>
<h3>日志级别</h3>
<table>
<thead>
<tr>
<th>级别</th>
<th>用途</th>
<th>示例</th>
</tr>
</thead>
<tbody>
<tr>
<td>DEBUG</td>
<td>调试信息</td>
<td>详细执行流程</td>
</tr>
<tr>
<td>INFO</td>
<td>业务信息</td>
<td>用户操作记录</td>
</tr>
<tr>
<td>WARN</td>
<td>警告信息</td>
<td>可恢复的异常</td>
</tr>
<tr>
<td>ERROR</td>
<td>错误信息</td>
<td>需要处理的故障</td>
</tr>
</tbody>
</table>
<h3>常见问题</h3>
<table>
<thead>
<tr>
<th>问题</th>
<th>排查步骤</th>
</tr>
</thead>
<tbody>
<tr>
<td>启动失败</td>
<td>检查依赖安装、端口占用、配置文件</td>
</tr>
<tr>
<td>测试失败</td>
<td>查看测试日志、复现步骤、对比预期</td>
</tr>
<tr>
<td>性能问题</td>
<td>检查慢查询、缓存命中率、资源使用</td>
</tr>
</tbody>
</table>
<hr />
<h2>部署流程</h2>
<h3>发布检查清单</h3>
<ul>
<li>[ ] 所有测试通过</li>
<li>[ ] 代码审查完成</li>
<li>[ ] 文档已更新</li>
<li>[ ] 配置已同步</li>
<li>[ ] 回滚方案准备</li>
</ul>
<h3>回滚策略</h3>
<ol>
<li>保留最近 {{3}} 个版本</li>
<li>回滚命令：<code>{{回滚命令}}</code></li>
<li>数据迁移回滚：<code>{{迁移回滚命令}}</code></li>
</ol>
<hr />
<h2>附加资源</h2>
<table>
<thead>
<tr>
<th>资源</th>
<th>链接/位置</th>
</tr>
</thead>
<tbody>
<tr>
<td>设计文档</td>
<td><code>docs/design/</code></td>
</tr>
<tr>
<td>架构图</td>
<td><code>docs/architecture/</code></td>
</tr>
<tr>
<td>团队规范</td>
<td><code>docs/team/</code></td>
</tr>
<tr>
<td>外部依赖文档</td>
<td>{{相关文档链接}}</td>
</tr>
</tbody>
</table>
<hr />]]></description>
    <pubDate>Thu, 12 Feb 2026 10:35:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-77.html</guid>
</item>
<item>
    <title>如何看待华为云 C++ SDK 被反映大量问题后，华为关闭 GitHub Issues - 我有点话说</title>
    <link>https://wanzij.cn/post-75.html</link>
    <description><![CDATA[<p>北京时间 2026 年 2 月 6 日，GitHub 用户在 Issue 中反馈华为云 C++ SDK 存在大量未修复的低级错误。这事情还是在it圈闹腾起来了，我们作为吃瓜群众来看看：<br />
<img src="https://wanzij.cn/content/uploadfile/202602/huaweicloud.png" alt="hw" title="hw" /><br />
再看看讨论：<a href="https://www.zhihu.com/question/2003818520790709923" title="如何看待华为云 C++ SDK 被反映大量问题后，华为关闭 GitHub Issues？">如何看待华为云 C++ SDK 被反映大量问题后，华为关闭 GitHub Issues？</a></p>
<h2>个人看法</h2>
<p>上家公司从华为云和成都政府搞的一个优惠中小企业的软开云开始一直使用到去年，也算是老用户了。我们属于应用层开发，要说坑倒也不大不小的。我来细说2点：</p>
<h3>收割</h3>
<p>华为云和政府的合作好像只持续了5年，我前司当时低价采购了5台，用了3台，到与政府合作到期后，直接原价，这个也怪前司自己人没意识到。我估计当时也是由于政府合作，才打开了华为云的一些市场，在这之前都没有听过他们</p>
<h3>短信业务突然下架</h3>
<p>好像是25年中下旬的样子，华为云发布通知短信业务停了，当时觉得有点无语，就是说停就停，虽然退钱给了时间替换，但是感觉挺意外的</p>
<h2>本次事件看法</h2>
<p>不好说，估摸着还是没啥人用，还有就是内部管理、研发水平、态度 有点对不住 这么大的title</p>]]></description>
    <pubDate>Mon, 09 Feb 2026 17:08:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-75.html</guid>
</item>
<item>
    <title>Claude knowledge-work-plugins 知识工作插件库 介绍</title>
    <link>https://wanzij.cn/post-74.html</link>
    <description><![CDATA[<p>知识工作插件库使组织能够为 Claude 配置专业知识、工具集成和工作流程，以满足特定角色的需求。每个插件都将领域专业知识（技能）、明确的操作（命令）和外部工具连接（MCP 服务器）打包成一个基于文件的软件包，无需编写任何代码或基础设施。插件可将 Claude 变成您所在角色、团队和公司的专家。专为 <a href="https://claude.com/product/cowork">Claude Cowork</a> 构建，也兼容 <a href="https://claude.com/product/claude-code">Claude Code</a>。</p>
<ul>
<li>
<p>Cowork 让您设定目标，Claude 则交付专业、高质量的成品。插件让您更进一步：告诉 Claude 您喜欢的工作方式、需要使用的工具和数据、如何处理关键工作流程以及需要启用哪些斜杠命令——从而帮助您的团队获得更优质、更稳定的成果。</p>
</li>
<li>
<p>每个插件都包含特定工作职能所需的技能、连接器、斜杠命令和子代理。开箱即用，它们为 Claude 提供了一个强大的起点，可以帮助任何担任该职位的人员。真正的强大之处在于您可以根据公司的具体情况进行定制——包括工具、术语和流程——让 Claude 像专为您的团队量身打造一样高效运行。</p>
</li>
</ul>
<p><strong>目标用户：</strong></p>
<ul>
<li>
<p>希望 Claude 理解其领域知识的特定角色（销售、财务、法律、数据分析、生物研究等）的最终用户</p>
</li>
<li>
<p>希望使用公司特定术语、流程和工具栈自定义插件的团队管理员</p>
</li>
<li>
<p>希望创建新插件或扩展现有插件的插件开发人员</p>
</li>
</ul>
<h2>仓库结构</h2>
<p>该库以插件市场的形式组织，由 Anthropic 所有，包含 11 个插件，可以单独安装，也可以作为完整套装安装。</p>
<p><a href="https://wanzij.cn/content/uploadfile/202602/0f071770081359.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-0f071770081359.png" alt="" /></a><br />
市场清单定义了存储库所有者，并列出了所有可用的插件及其名称、源目录和描述</p>
<h2>插件分类</h2>
<table>
<thead>
<tr>
<th>插件</th>
<th>如何工作</th>
<th>连接器</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong><a href="./productivity">productivity</a></strong></td>
<td>管理任务、日历、日常工作流程和个人情况，从而减少重复劳动的时间。</td>
<td>Slack, Notion, Asana, Linear, Jira, Monday, ClickUp, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./sales">sales</a></strong></td>
<td>研究潜在客户，准备电话沟通，审查销售渠道，起草外联方案，并制定竞争优势分析。</td>
<td>Slack, HubSpot, Close, Clay, ZoomInfo, Notion, Jira, Fireflies, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./customer-support">customer-support</a></strong></td>
<td>对工单进行分类，起草回复，处理升级问题，研究客户背景，并将已解决的问题转化为知识库文章。</td>
<td>Slack, Intercom, HubSpot, Guru, Jira, Notion, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./product-management">product-management</a></strong></td>
<td>编写规格说明，制定路线图，综合用户研究成果，及时向利益相关者汇报最新情况，并跟踪竞争格局。</td>
<td>Slack, Linear, Asana, Monday, ClickUp, Jira, Notion, Figma, Amplitude, Pendo, Intercom, Fireflies</td>
</tr>
<tr>
<td><strong><a href="./marketing">marketing</a></strong></td>
<td>撰写内容、策划营销活动、贯彻品牌理念、分析竞争对手、汇报各渠道的业绩。</td>
<td>Slack, Canva, Figma, HubSpot, Amplitude, Notion, Ahrefs, SimilarWeb, Klaviyo</td>
</tr>
<tr>
<td><strong><a href="./legal">legal</a></strong></td>
<td>审核合同、处理保密协议、应对合规问题、评估风险、准备会议、起草模板化回复。</td>
<td>Slack, Box, Egnyte, Jira, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./finance">finance</a></strong></td>
<td>准备会计分录、核对账户、生成财务报表、分析差异、管理结账并支持审计。</td>
<td>Snowflake, Databricks, BigQuery, Slack, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./data">data</a></strong></td>
<td>查询、可视化和解释数据集——编写 SQL、运行统计分析、构建仪表板，并在分享之前验证您的工作。</td>
<td>Snowflake, Databricks, BigQuery, Hex, Amplitude, Jira</td>
</tr>
<tr>
<td><strong><a href="./enterprise-search">enterprise-search</a></strong></td>
<td>一次查询即可在公司所有工具中查找电子邮件、聊天记录、文档和维基中的任何内容。</td>
<td>Slack, Notion, Guru, Jira, Asana, Microsoft 365</td>
</tr>
<tr>
<td><strong><a href="./bio-research">bio-research</a></strong></td>
<td>连接临床前研究工具和数据库（文献检索、基因组分析、靶点优先级排序），加速早期生命科学研发。</td>
<td>PubMed, BioRender, bioRxiv, ClinicalTrials.gov, ChEMBL, Synapse, Wiley, Owkin, Open Targets, Benchling</td>
</tr>
<tr>
<td><strong><a href="./cowork-plugin-management">cowork-plugin-management</a></strong></td>
<td>为组织的特定工具和工作流程创建新插件或自定义现有插件。</td>
<td>—</td>
</tr>
</tbody>
</table>
<p>您可以直接从 Cowork 安装这些组件，也可以在 GitHub 上浏览完整的组件库，或者构建您自己的组件库。</p>
<h2>插件架构</h2>
<p>每个插件都遵循标准化的文件结构：<br />
<a href="https://wanzij.cn/content/uploadfile/202602/cecb1770082047.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-cecb1770082047.png" alt="" /></a></p>
<h3>组件：</h3>
<ul>
<li>
<p>.claude-plugin/plugin.json：包含插件元数据（名称、版本、描述、作者）的清单文件</p>
</li>
<li>
<p>.mcp.json：将外部工具映射到 MCP（模型上下文协议）服务器端点的配置</p>
</li>
<li>
<p>commands/：定义用户调用的显式斜杠命令的 Markdown 文件（例如，/sales:call-prep）</p>
</li>
<li>
<p>skills/：包含 Claude 在相关情况下自动调用的领域知识的 Markdown 文件</p>
</li>
<li>
<p>assets/：可选的模板、示例或参考资料</p>
</li>
</ul>
<h3>关键架构原则</h3>
<table>
<thead>
<tr>
<th>原则</th>
<th>描述</th>
<th>好处</th>
</tr>
</thead>
<tbody>
<tr>
<td>基于文件</td>
<td>无需代码、基础设施或构建步骤——仅需 Markdown 和 JSON 格式</td>
<td>易于编辑、版本控制和自定义</td>
</tr>
<tr>
<td>工具无关</td>
<td>技能使用 ~~category 占位符而非具体的工具名称</td>
<td>只需编辑 .mcp.json 文件即可切换工具，无需修改技能逻辑。</td>
</tr>
<tr>
<td>关注点分离</td>
<td>技能（自动激活）与命令（显式），元数据（JSON）与内容（Markdown）</td>
<td>职责清晰，维护更轻松。</td>
</tr>
<tr>
<td>MCP 抽象</td>
<td>通过标准化的 MCP 服务器协议访问外部工具</td>
<td>统一的接口可连接 40 多种不同的工具和 API</td>
</tr>
</tbody>
</table>
<h2>入门指南</h2>
<pre><code class="language-bash"># 从插件市场安装

claude plugins add knowledge-work-plugins

# 或者安装特定插件

claude plugins add knowledge-work-plugins/sales
</code></pre>
<p>安装完成后，插件会自动激活。技能会在需要时触发，并且您可以在会话中使用斜杠命令（例如，<code>/sales:call-prep</code>、<code>/data:write-query</code>）。</p>]]></description>
    <pubDate>Tue, 03 Feb 2026 09:14:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-74.html</guid>
</item>
<item>
    <title>【源码推荐】农产品质量安全承诺达标合格证发放追溯系统V1.0</title>
    <link>https://wanzij.cn/post-73.html</link>
    <description><![CDATA[<p>2026年2月1日起，我国农产品将全面启用新版“身份证”—— 农产品质量安全承诺达标合格证。 由农业农村部发布的《农产品质量安全承诺达标合格证管理办法》，让每一份上市的蔬果、畜禽、水产都有了自己的质量安全证明中华人民共和国农业农村部令 2025年第 4 号。 这是一张什么证？ 农产品质量安全承诺达标合格证是农产品生产企业、农民专业合作社、农户和收购单位，根据质量安全控制、检测结果等开具的证明。</p>
<h1>软件介绍</h1>
<p>深耕行业内的软件系统，支持物联网+追溯+农事管理+农技知识库+合格证发放+供需服务市场等核心业务，同时还有V2.0 UI全升级版本完成中。</p>
<h2>合格证发放亮点功能</h2>
<ul>
<li>支持合格证DIY</li>
<li>支持多家打印机厂商</li>
<li>支持app/小程序+便携打印机 快速发证
<h1>软件截图</h1></li>
</ul>
<h2>管理端</h2>
<p><a href="https://wanzij.cn/content/uploadfile/202602/604d1769937708.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-604d1769937708.png" alt="" /></a></p>
<h2>移动端</h2>
<p><a href="https://wanzij.cn/content/uploadfile/202602/e6d41769938217.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-e6d41769938217.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/a1351769938231.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-a1351769938231.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/bf061769938356.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-bf061769938356.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/f9271769938390.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-f9271769938390.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/3f4a1769938522.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-3f4a1769938522.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/5d2e1769938539.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-5d2e1769938539.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/4d841769938566.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-4d841769938566.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/240f1769938613.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-240f1769938613.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/d2581769938638.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-d2581769938638.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/f8ff1769938659.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-f8ff1769938659.png" alt="" /></a><br />
<a href="https://wanzij.cn/content/uploadfile/202602/47d71769938679.png"><img src="https://wanzij.cn/content/uploadfile/202602/thum-47d71769938679.png" alt="" /></a></p>
<h1>如何联系</h1>
<ul>
<li>有需求的老板可留言</li>
<li>邮箱：wanzij177@163.com</li>
</ul>]]></description>
    <pubDate>Sun, 01 Feb 2026 17:21:00 +0800</pubDate>
    <dc:creator>wanzi</dc:creator>
    <guid>https://wanzij.cn/post-73.html</guid>
</item></channel>
</rss>