技能质量审计_skills-audit

发布时间:2026/9/10 4:42:28

技能质量审计_skills-audit 以下为本文档的中文说明skills-audit 是一个用于审计和评估 LobeHub 生态系统中技能Skills质量的工具。LobeHub 是一个开源的 AI 助手平台支持丰富的插件和技能扩展机制开发者可以为其创建各种功能技能。该技能的核心功能是对已注册的技能进行全面的质量检查包括代码质量、文档完整性、安全性和兼容性等方面。使用场景包括在将新技能发布到 LobeHub 市场前进行质量审查、定期审计已有技能的运行状态和兼容性、评估技能是否符合社区标准和质量规范。核心特点包括自动检测技能的基本元数据完整性包括名称、描述、版本号、作者信息等必要字段的完整性检查技能配置文件是否符合 LobeHub 的 Schema 规范验证技能的 API 接口定义和参数设置是否正确包括输入输出的类型匹配评估技能的安全风险检测可能存在的注入漏洞、敏感信息泄露或不安全的默认配置生成结构化的审计报告标注问题等级严重、警告、建议并提供修复建议。该技能帮助维护 LobeHub 技能市场的整体质量水平。此外该技能还支持审计历史的追踪和趋势分析帮助团队持续监控技能质量的改进情况并提供与 LobeHub CI/CD 流水线的集成方案实现自动化质量门禁。Skills AuditPeriodic review of the project-local skill set under.agents/skills/. The goal is to catch drift before the catalog becomes confusing — too many skills, overlapping triggers, descriptions that no longer match the body, references to skills that were renamed/deleted.Recommended cadence:weekly, or after any week where 1 skill was added/renamed.Procedure1 — InventoryBuild a fresh census of all SKILL.md files. Do NOT trust any prior cached list.find.agents/skills-nameSKILL.md|wc-l# total countfind.agents/skills-nameSKILL.md-execwc-l{}\\;|sort-rn# by body lengthGroup by domain in a mental table (DB / state / UI / agent / testing / workflow / docs / etc.). Note new arrivals since last audit (git log --since1 week ago -- .agents/skills/).2 — Pull frontmatter for all skills# Extract name description for each SKILL.mdforfin.agents/skills/*/SKILL.md;doecho$(basename$(dirname $f))awk/^---$/{c; next} c1$f|head-20doneRead the description block of every skill. The body can stay unread unless step 4 flags it.3 — Detect overlap / redundancyFor each pair within the same domain, ask:Same description? → likely duplicate (one is probably a stale rename leftover, or a global-vs-local collision).Trigger keywords substantially overlap? → either merge, OR tighten one description so the model can choose unambiguously.One skill’s body says “see also: foo”? → confirmfoostill exists, AND confirm the cross-reference is still meaningful (the referenced skill may have absorbed the referrer’s concerns).Skill duplicates content fromAGENTS.md? → fold into AGENTS.md or slim the skill to just the delta.Common false positives (do NOT merge):db-migrationsvsdrizzle— distinct workflows (migration files vs schema authoring).microcopyvsi18n— content vs mechanics.agent-runtime-hooksvsagent-tracingvsagent-signal— different surfaces of the agent system.testingvslocal-testingvscli-backend-testing— different test types.4 — Description format consistencyApply thestandard template:{Topic key conventions or scope}. Use when {scenarios — verbs nouns}. Triggers on {code-symbols, natural phrases, 中文}.Skills withdisable-model-invocation: true(user-invoked only, slash commands) don’t needTriggers on— they’re never auto-routed.Flag descriptions that:❌ Have NOUse whenclause (model can’t decide when to load it).❌ Have NOTriggers onclause (and aren’tdisable-model-invocation).❌ Use weird formats (numbered lists(1)(2)(3),Triggers:colon instead ofTriggers on,MUST use when ...as opening word).❌ Are dramatically terse for a 200 line body, or dramatically verbose for a 60-line body.❌ Reference deleted/renamed skills.5 — Stale-skill checkFor narrow domain skills (e.g.response-compliance, one-off CLI workflows):# Confirm the referenced code surface still existsrg-lresponse-compliance|openresponsespackages/ src/# adjust per skillgitlog--since3 months ago-- .agents/skills/skill/SKILL.md# is it being maintained?If the underlying surface is gone and the skill hasn’t been edited in 3 months → flag for archival.6 — Cross-reference integrityAny skill body mentioning another skill by name:# Scan all skill bodies for skill-name referencesrg-o[a-z][a-z0-9-].agents/skills/*/SKILL.md|grep-v:\\s*$|sort-uFor each name extracted, confirm.agents/skills/name/SKILL.mdexists. Broken references happen after renames — fix them in the same audit pass.7 — Output reportProduce a markdown summary back to the user with the same structure as the original audit (this skill was created during one):## Inventory {count, domain breakdown} ## Recommendations ### High confidence - { action} — {reason} ### Medium confidence - {action} — {reason needs verification} ### Low confidence / no-op - {item considered but skipping because ...} ## Suggested order {table of actions with risk LOC estimate}End by asking the user which actions to apply — do NOT auto-apply unless the user passed--applyand even then confirm destructive deletes individually.Output rulesBe specific. “Skill X overlaps with Y” is useless without naming the overlapping triggers.Cite line numbers when flagging description / body issues.Don’t recommend merges unless the call sites would actually load the merged skill in the same context.Don’t recommend deletes for skills that haven’t been touched recently — “unused” can mean “stable”, not “dead”.What NOT to do❌ Don’t rename skill directories without checking for cross-references AND user memory entries that name the old slug.❌ Don’t normalize a description by removing trigger keywords just to fit the template — the keywords are the routing signal.❌ Don’t fold a heavy 200 line skill into another just because they share a domain — large skills get loaded selectively and merging makes everything load.❌ Don’t propose.agents/skills/INDEX.mdordomain-skillprefix renames unless the user explicitly asks — costs benefits for cosmetic reorgs.Related historyFirst audit:chore/skills-auditbranch (2026-05-25) — deletedsource-command-dedupe, renameddata-fetching→data-fetching-architecture, normalized 9 descriptions, created this skill.3e:[“,,,L41”,null,{“content”:“$42”,“frontMatter”:{“name”:“skills-audit”,“description”:“Audit .agents/skills SKILL.md files. Use for recurring checks of duplicate, overlapping, stale, inconsistent, or broken skills and merge/delete candidates.”,“disable-model-invocation”:true,“argument-hint”:“[–verbose | --apply]”}}]3f:[“KaTeX parse error: Expected }, got EOF at end of input: …,children:[[”,“div”,null,{“className”:“flex items-center justify-between border-b border-border bg-muted/30 px-4 py-2.5”,“children”:[[“KaTeX parse error: Expected }, got EOF at end of input: …,children:[”,“span”,null,{“className”:“truncate text-xs font-medium text-muted-foreground”,“children”:“同仓库更多 Skills”}]}],[“KaTeX parse error: Expected EOF, got } at position 88: …ldren:同仓库}]]}̲],[”,“div”,null,{“className”:“p-4 sm:p-5”,“children”:[[“,h2,null,id:related−skills−heading,className:text−2xlfont−semiboldtracking−normaltext−foreground,children:同仓库更多Skills],[,h2,null,{id:related-skills-heading,className:text-2xl font-semibold tracking-normal text-foreground,children:同仓库更多 Skills}],[,h2,null,id:related−skills−heading,className:text−2xlfont−semiboldtracking−normaltext−foreground,children:同仓库更多Skills],[”,“div”,null,{“className”:“mt-4 grid gap-3 sm:grid-cols-2”,“children”:[“L43,L43,L43,L44”,“L45,L45,L45,L46”,“L47,L47,L47,L48”]}]]}]]}]49:I[206516,[“/_next/static/chunks/051aanbhrv4br.js”,“/_next/static/chunks/0mizr60h7ayzt.js”,“/_next/static/chunks/0v9lm1dmbdoo-.js”,“/_next/static/chunks/0rxr1j1j3j-.r.js”,“/_next/static/chunks/02ftybezfvqjd.js”,“/_next/static/chunks/0.v9ksvnnj8ia.js”,“/_next/static/chunks/0bn6id96nx3k.js,“/_next/static/chunks/13ybnhn37c.tc.js”,“/_next/static/chunks/0_fnrdtruz8uf.js”,“/_next/static/chunks/0r6l15utt1mwb.js”,“/_next/static/chunks/0dm9a5into854.js”,/_next/static/chunks/07k6hqoibtcn.js”,“/next/static/chunks/0b4cao.4y…j.js”,“/_next/static/chunks/02i-n28z7kjd0.js”],“default”]
延伸阅读

更多相关文章

2026/9/7 0:53:24

CANN启航营提交规范详解:从Fork到PR的完整流程

CANN启航营提交规范详解:从Fork到PR的完整流程 【免费下载链接】cann-launch-camp 用户可借助此项目规范管理 CANN 开源社区启航营高校活动的课程作业、课设、毕设等实践作品,其核心功能是统一标准化目录层级与提交规范,保障作品提交规整、可…

2026/9/6 15:22:05

内置工具开发_builtin-tool

以下为本文档的中文说明 LobeHub内置工具包构建指南,专门用于开发和集成LobeHub平台中可被代理调用的工具。该技能定义了内置工具的五大核心组件:Manifest与类型定义(为LLM提供工具规范和系统提示)、ExecutionRuntime执行运行时&a…

2026/9/10 18:08:58

多AI编程Agent难管理?T3 Code统一控制台让并行开发可控可回放

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/10 18:08:58

灰色预测GM(1,1)实战:小样本时序建模与Python工程实现

简介:本资源是一套面向数据分析初学者与Python实践者的灰色预测模型入门级代码实现包,聚焦小样本、含噪、非平稳时间序列的短期趋势预测问题,适用于科研建模、课程设计及工程预研场景。压缩包共6个文件,含5个Python脚本&#xff0…

2026/9/10 18:08:57

OpenCV凸缺陷+余弦定理实现五类手势识别

简介:这是一套面向计算机专业本科生的Python毕业设计实战资源,聚焦基于OpenCV的手势识别系统开发,适用于课程设计、毕设选题及图像处理入门实践。项目采用凸包与凸缺陷检测(cv2.convexHull cv2.convexityDefects)核心…

2026/9/10 18:08:57

核心JAR包设计:Spring Boot自动配置与模块化实践

接手这个项目的第三周,我终于撑不住把JSCM-CORE.jar的文档推倒重写了。原因很简单:之前的文档只写“有什么类”,但完全没讲清楚“为什么这么设计”——团队新人每次集成都要来问我一遍,而我每次都要从“你先把 Spring Boot 的自动…

2026/9/10 18:08:57

AI Agent如何接管Vivado进行FPGA开发

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/10 18:03:56

Unity编辑器点击物体Hierarchy不高亮?重置布局一分钟搞定

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/10 16:39:38

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/10 11:16:38

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/10 0:00:55

目录对比去重实战:用哈希算法精准清理重复文件

我电脑里现在还有一块换了三次机的“数据墓地”硬盘,里面存着2016年以前所有旧笔记本的完整备份。平时不觉得有什么,直到前阵子想把它整理归档,发现同一个安装包、同一批照片、同一份论文草稿,在几个不同的备份目录里反复出现。更…

2026/9/10 0:00:55

Leaflet离线地图完整Demo合集:内网部署与坐标纠偏实战

简介:这是一份面向Web GIS开发者的LeafLet离线地图示例合集,帮助开发者快速掌握离线地图从搭建到交互的完整流程。压缩包共723个文件,大小14.06MB,以319个js脚本、175个html页面和29个css样式文件为主体,配合png/svg图…

2026/9/10 0:00:55

MATLAB读取Rinex 3.02观测文件:多系统GNSS数据解析实战

简介:基于MATLAB开发的Rinex3.02版观测文件(o文件)读取代码包,面向卫星定位导航方向的学习者与研究人员,用于解决新版观测文件的数据解析、历元提取与时间转换问题。压缩包共4个文件,包含两个m脚本、一个19…

2026/9/10 12:32:02

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

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

2026/9/10 15:19:50

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

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

2026/9/10 15:49:53

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

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

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

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

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