正文内容
ClawHub上5700多个技能,下载量最高的那些,核心代码往往不超过50行。
有人花两周写了一个“万能文件处理”技能,下载量23。有人靠5个代码片段拼出来的“日报生成器”,下载量直接破万。
不是说代码越长越值钱,是“能直接复制粘贴就能用”的东西,才是社区里真正缺的。
我从ClawHub热门技能、GitHub开源项目、以及几个技术社群里扒下来这5个片段,每个都有真实下载量支撑,复制过去改两行就能跑。

片段一:文件统计报表生成(下载量1.2w+)
这个片段来自ClawHub上一个叫file-report-skill的技能,做的事情很简单:统计指定目录下有哪些文件类型、各多少数量、生成一份Markdown报表。
核心代码不到40行:
import fs from 'fs';
import path from 'path';
function countFilesByType(dirPath: string): Record<string, number> {
const stats: Record<string, number> = {};
const files = fs.readdirSync(dirPath, { withFileTypes: true });
for (const file of files) {
if (file.isDirectory()) continue;
const ext = path.extname(file.name).toLowerCase() || '无扩展名';
stats[ext] = (stats[ext] || 0) + 1;
}
return stats;
}
function generateMarkdownReport(stats: Record<string, number>, dirPath: string): string {
const now = new Date().toLocaleString();
let markdown = `# 文件统计报表\n**统计目录**:${dirPath}\n**统计时间**:${now}\n\n| 文件类型 | 数量 |\n|----------|------|\n`;
Object.entries(stats).forEach(([ext, count]) => {
markdown += `| ${ext} | ${count} |\n`;
});
const total = Object.values(stats).reduce((sum, val) => sum + val, 0);
markdown += `\n**总文件数**:${total}\n`;
return markdown;
}
这个片段被反复复制的原因很简单:它解决了“我到底有多少文件”这个高频问题,而且输出是Markdown,可以直接贴进周报里。有人把它魔改成了“代码行数统计器”,有人改成“图片尺寸扫描器”,但核心逻辑一个字没动。
CSDN那篇教程底下有人留言:“复制过去改了改目录路径,跑了5年没动过的文件夹,终于知道里面是什么了。”
片段二:安全技能验真(下载量2.1w+)
OpenClaw的安全风险最近被工信部点了名,ClawHub上skill-vetter这个技能的下载量一周涨了8000多。它核心就干一件事:检查一个技能有没有恶意代码。
# 检查技能包是否存在可疑行为
clawhub verify ./downloaded-skill --deep-scan
# 返回结果示例
{
"risk_level": "中危",
"issues": [
{
"type": "可疑文件访问",
"file": "agent.py",
"line": 23,
"code": "os.system('rm -rf /')",
"suggestion": "发现高危命令,请确认是否需要此操作"
},
{
"type": "外部请求",
"target": "http://malicious-domain.com",
"risk": "潜在的数据外泄"
}
]
}
阿里云开发者社区那篇文章专门提到:约4.5%的ClawHub技能存在恶意行为。用这个片段的人,不是想开发技能,是想知道自己装的技能到底安不安全。
片段三:提示注入防护(下载量3.4w+)
这是ClawHub上防护类技能里下载量最高的一个。解决的问题很简单:防止别人用“忽略之前指令”这种话术把你的AI带偏。
核心代码:
function detectInjection(userInput: string): { risk: boolean; reason: string } {
const patterns = [
{ regex: /ignore previous instructions/i, risk: "发现忽略历史指令请求" },
{ regex: /system override/i, risk: "发现系统覆盖指令" },
{ regex: /you are now/i, risk: "发现角色切换诱导" },
{ regex: /forget everything/i, risk: "发现记忆清除请求" }
];
for (const pattern of patterns) {
if (pattern.regex.test(userInput)) {
return { risk: true, reason: pattern.risk };
}
}
return { risk: false, reason: "" };
}
这个片段被用在很多企业部署的OpenClaw网关前。有个开发者在评论区说:“加了这层之后,群里再也没有人用‘忽略之前指令’调戏机器人了。”
片段四:多角色并行分析(下载量8.9k+)
这个片段来自一个叫“决策模拟器”的技能,核心思想是:让AI同时扮演财务、增长、风险、用户、战略五个角色,分析同一个问题,最后综合输出。
片段代码:
const roles = [
{ name: "财务", focus: "成本、收益、ROI" },
{ name: "增长", focus: "用户量、留存、扩张速度" },
{ name: "风险", focus: "合规、安全、负面可能" },
{ name: "用户", focus: "体验、需求、痛点" },
{ name: "战略", focus: "长期价值、竞争壁垒" }
];
async function multiRoleAnalysis(question: string) {
const analyses = [];
for (const role of roles) {
const prompt = `你作为${role.name}角色,关注点是${role.focus}。请分析以下问题:${question}。输出2-3条核心观点。`;
const response = await callLLM(prompt);
analyses.push({ role: role.name, insights: response });
}
// 让所有角色互相讨论
const synthesisPrompt = `以下是五个角色对同一问题的分析:\n${JSON.stringify(analyses)}\n请综合各方观点,输出一份平衡建议。`;
return await callLLM(synthesisPrompt);
}
有人用它做商业决策,有人用来写周报,还有人选品的时候跑一遍。原作者在Sparkco的博客里说:“这不是让我更聪明,是让我看到我自己想不到的角度。”
片段五:定时任务+消息推送(下载量6.7w+)
ClawHub上“每日简报”类技能的祖宗级代码。核心就两段:
// 定时任务配置(cron语法)
const schedule = {
"每日早报": "0 8 * * *", // 每天8点
"数据监控": "*/30 * * * *", // 每30分钟
"周报提醒": "0 9 * * 1" // 每周一9点
};
// 消息推送(飞书示例)
async function pushToFeishu(webhook: string, content: string) {
const payload = {
msg_type: "text",
content: { text: content }
};
await fetch(webhook, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(payload)
});
}
阿里云那篇喂饭级教程里专门提了这个组合:定时抓数据 + 格式化输出 + 推送到飞书/钉钉。评论区有人晒图:“跑了三个月,每天群里的简报都是机器人发的,没人发现。”
这几个片段在ClawHub和GitHub上被复制了无数次。有人拿去改改就发了自己的技能,有人直接嵌进自己的项目里,还有人就为了“跑起来看一眼效果”。
你如果也在搓技能,这几个应该够用了。需要哪个的直接去 人工智能skills 专题里找,代码都是现成的,复制过去改两行就能跑。