通过实际操作产品验证交付内容,记录用户可查看的证据,并发布验收报告。可检查已有验证计划或创建检查项,选择合适的操作界面,并使用 `lh` CLI 发布结果。
- 实际检查更改后的产品行为
- 收集截图或其他验证证据
- 编写验证计划和报告
维护 `packages/alint` 中由模型判断的代码规则,依据真实代码校准误报、分类检测结果,并根据拉取请求数据决定警告何时升级为错误,同时检查令牌用量。
Maintain LobeHub's model-backed alint rule set in packages/alint: author a rule, calibrate its false positives against real source, decide its severity (warn vs error) from real PR data, and track its token cost. Use for adding or narrowing an alint rule, classifying findings as true/false positives, promoting or demoting a rule, or running the weekly rule-set review.
实测评分 未实测
查看安装方法此技能用于维护 packages/alint 中由模型判断的代码检查规则,处理 ESLint 无法表达的判断。它指导使用真实代码和审查意见制定规则,再把检测结果归类为正确命中或误报。反复出现的误报应写入排除条件和测试样例。新规则从警告级别开始,只有在真实拉取请求的结果中确认没有误报后,才可升级为错误级别。资料也说明如何将检测过多的规则移至审计检查,以及查看每次运行的令牌用量。
团队要引入自定义代码质量规则,或减少现有规则的误报时,可以使用此技能。维护者也可据此设定警告升级为错误的标准,并定期检查规则准确度和运行成本。
编辑规则前应先阅读 packages/alint/README.md。校准需要 .alint/config.toml,以及 ALINT_API_KEY 或 DEEPSEEK_API_KEY。每次编辑规则后都要清除缓存,并使用 alint 专用命令,而不是 bun run i18n。
本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。
AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。
不计入评分。 由 AI(OpenAI Codex)于 2026年10月26日 评估。仅供参考,安装前请同时查看原文。
安装前可以查看交给 AI 代理的指令内容。
packages/alint holds the model-backed lint rules for the judgement calls ESLint cannot
express — semantic rules such as "fan-out over a runtime-sized list needs pMap" or "a
secondary button is not primary". Each rule is a prompt that runs per file through
alint and is cached by file content.
This skill owns the lifecycle of that rule set: how a rule is written, how its false
positives are removed, when it earns error, and what it costs. It does not own the
rules themselves (they live in packages/alint/rules) and it does not restate the reading
contract — that is packages/alint/README.md. Read that file once before editing a rule.
Everything below is one cycle. An ad-hoc task runs the phase it needs; the weekly review runs the incremental phases on a schedule.
| Phase | What it does | Reference |
|---|---|---|
| A · Collect the standard | Pull the owner's recent review rejections, read them, keep the part that recurs and one file decides | calibration.md |
| B · Author the rule | rule.alint.toml: what to report, where to anchor, and an explicit "do not report" list | rule-authoring.md |
| C · Calibrate | Scan → sample → classify TP/FP → write the recurring FP patterns back as carve-outs → cold-run fixtures | calibration.md |
| D · Map the problems | Cluster findings across rules by file/area; that is the cleanup backlog | calibration.md |
| E · Promote | Read the rule's findings on real PRs; warn → error only at zero false positives | promotion.md |
| F · Account for the cost | Token usage per run; cache invalidation is the cost driver | cost.md |
These are the calls that are easy to get wrong. They are not suggestions.
no-node-in-browser kept only the "does this npm package need Node at runtime" half and
handed the import-path half to ESLint.good-*
fixture, so the exemption stays true.[[config.group]] files, never includeFiles inside a rule. includeFiles
only filters reports, so every file still runs (double the jobs) and the rule becomes
uncacheable.error is a promotion, not a starting point. A new rule starts at warn, and is
promoted only after its findings have been read on real PRs and measured at zero false
positives. Fixture groups stay warn so a rule PR never fails on its own bad-* fixtures.alint.audit.toml
(bun run alint:audit). test-the-exit-not-the-entry was deleted for producing 92% of all
findings and drowning the sharper rules.A calibration run fails expensively when the setup is not real. Check these in order; do not interpret a skipped suite as a pass.
.alint/config.toml exists (gitignored; bun run alint:setup, needs ALINT_API_KEY or
DEEPSEEK_API_KEY). Without it the fixture suite skips rather than fails — silence is
not a pass.bun run alint plugin install has run, and is re-run after adding a rule or a
packages/<pkg>/alint/rules directory. A missing lock entry exits 2 with no JSON.node_modules resolves
@lobechat/* to the main checkout, so rule reads and type-checks lie..alintcache after every rule edit while calibrating. The local cache is keyed
by file content, so an edited rule otherwise replays the previous rule's findings.packages/alint/rules/<name>/rule.alint.toml (repo-wide, plugin prefix
lobehub). A rule about one package lives in packages/<pkg>/alint/rules under its own
prefix (e.g. hetero) and is registered in the matching [[config.group]].packages/alint/fixtures/<name>/ (mirrored next to a package-level rule):
bad-* with // alint-expect on the line above the anchor line (JSX children use
{/* alint-expect */}), and one good-* per carve-out.alint.config.toml (the PR check) and alint.audit.toml (the bulk
audit). Everything a repo-wide group needs is files, ignores, plugins, rules.bun run check --alint (changed lines by default; explicit paths lint whole
files), bun run alint --dirty, bun run alint:audit..agents/scripts/check/alint.ts (the --alint selector),
packages/alint/report.ts (the ALint check run, its annotations, one PR summary comment
with marker <!-- alint-summary -->, and a usage line), and the ALint & Test Desktop App
job in .github/workflows/test.yml. The check is not required, so a red check informs
rather than blocks.scripts/: collect-rejections.ts,
sample-findings.ts, pull-alint-runs.ts, cost-report.ts.acceptance (the rejection loop this rule set is fed by), ux (the design values the
ui-* rules encode), react / compose-atoms / data-fetching-architecture (the sources
of the engineering rules), pr (how a rule PR is opened and stacked on its base).
还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
通过实际操作产品验证交付内容,记录用户可查看的证据,并发布验收报告。可检查已有验证计划或创建检查项,选择合适的操作界面,并使用 `lh` CLI 发布结果。
本技能指导在 LobeHub 中接入 AI 模型提供商,涵盖运行时、模型信息、设置、品牌展示、文档和验收,并帮助判断新增模型是否需要新的提供商集成。
本技能指导如何用服务器端环境变量设置用户偏好默认值,涵盖变量校验、服务器配置、写入用户状态,以及更新 `.env.example` 和自托管文档。
说明如何在智能体执行步骤、工具调用、人工审批、上下文压缩和子智能体调用时注册钩子。钩子可观察事件、模拟本地工具结果,也可通过 Webhook 按配置策略允许或拒绝工具调用。
此技能用于为智能体设计事件驱动的后台工作流,划分来源、信号、动作和策略的职责,并处理异步交接、去重、执行范围、完成记录与运行观测。
本技能在 macOS 桌面聊天应用中测试机器人频道:打开应用、进入频道或联系人、发送消息、等待回复并截图。支持 Discord、Slack、Telegram、微信、飞书和 QQ;iMessage 使用 BlueBubbles 桥接。