# skills **Repository Path**: webthree/skills ## Basic Information - **Project Name**: skills - **Description**: AI 技能集合 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-30 - **Last Updated**: 2026-10-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Skills 前端组件与素材工作流相关的 Skill 集合。每个 Skill 一个目录,内含 `SKILL.md`(触发条件、规范、模板)与 `scripts/`、`assets/` 等配套资源;`SKILL.md` 的 frontmatter(`name` + `description`)决定它何时被触发,正文写规范、模板与验证流程。 ## 目录结构 ``` skills/ ├── LICENSE # 本仓库自研 skill 的 MIT 授权(署名见文件) ├── README.md ├── html-component/ # qy- 组件本体封装规范 │ └── SKILL.md ├── doc-demo-page/ # qy- 组件「文档 + 演示」页规范 │ ├── SKILL.md │ ├── assets/doc-demo-template.html # 九节结构骨架模板(含左侧章节导航,替换占位符) │ └── scripts/verify-demo-page.cjs # 演示页静态校验(E1–E7 / W1–W4) ├── python-style/ # Python 编码硬约束(入口 / 命名 / 注释 / 标注) │ ├── SKILL.md │ ├── assets/script-template.py # 合规脚本骨架(可真实运行,已通过自身校验) │ └── scripts/check_python_style.py # AST 静态校验器(E01–E90 / W14–W41,退出码判定) ├── asset-sourcing/ # 外部素材的取源与本地化(在线地址只作获取途径) │ └── SKILL.md ├── localize-demo-assets/ # 存量演示页去外网引用,资源收进仓库级 assets/ │ └── SKILL.md ├── blender-glb-export/ # Blender 工程 → GLB,含程序化材质烘焙 │ ├── SKILL.md │ └── scripts/bake_to_glb.py # 烘焙 + 导出一体化脚本(缺 UV 自动展、Cycles 自动切换还原) ├── bronya2-workpanel-dev/ # Bronya2 项目总规范(风格 / 架构 / 双栈约定) │ └── SKILL.md ├── bronya2-schema-version-migration/ # SQLite schema 版本号迁移流程 │ └── SKILL.md ├── bronya2-web-dualstack-run-and-verify/ # Web 双栈启动与路由 / CSS 验证 │ └── SKILL.md ├── bronya2-hover-action-list-rows/ # 悬停浮现操作按钮的紧凑列表行 │ └── SKILL.md ├── ponytail/ # 第三方收录:懒资深工程师模式 │ ├── SKILL.md │ └── LICENSE # 上游 MIT 原文,署名归原作者 ├── simplify-codebase/ # 第三方收录:偶发复杂度审计与收敛 │ ├── SKILL.md │ └── LICENSE # 上游 MIT 原文,署名归原作者 └── img2threejs/ # 第三方整包收录:参考图 → 程序化 Three.js 模型 ├── SKILL.md # 常驻路由:操作顺序 + 硬规则(上游逐字,未改写) ├── forge/ # 核心管线,234 个 .py,纯标准库、按 stage 分目录 ├── grimoire/ # 各门评分标准 / 逐门契约 / 脚本参考 ├── docs/ # 安装、插件、材质、集成、GLB 三条 prompt ├── scripts/ci/ # README 表格生成、docs 质量门 ├── integrations/glb_character_pipeline/ # 可选:GLB 角色管线(自带 pyproject / uv.lock) ├── bin/img2threejs.mjs # npm 安装器(把 skill 链进各 agent 宿主) └── LICENSE # 上游 Apache-2.0 全文,署名归原作者 ``` ## 项目内 Skills | 类别 | Skill | 一句话作用 | |---|---|---| | 组件 | [`html-component`](html-component/SKILL.md) | 生成 `qy-` 前缀的封装 JS 组件:默认 CSS/JS 文件分离(`qy-{name}.js` 走 AMD + `index.html`),也可单文件内联 IIFE。 | | 组件 | [`doc-demo-page`](doc-demo-page/SKILL.md) | 给 `qy-` 组件产出「文档 + 可运行演示」的 `index.html`:固定九节结构 + 长页左侧章节导航,配套静态校验脚本。 | | 素材 | [`asset-sourcing`](asset-sourcing/SKILL.md) | 新页面要用的库 / 图标 / 图片 / 视频 / 模型怎么取:在线地址只作获取途径,一律先下载到仓库级 `assets/` 再本地引用。 | | 素材 | [`localize-demo-assets`](localize-demo-assets/SKILL.md) | 存量演示页离线化:盘点仍在直连 CDN 的资源,收进同一套 `assets/` 并改写引用,做到运行时零外网。 | | 素材 | [`blender-glb-export`](blender-glb-export/SKILL.md) | `.blend` 导出 GLB:glTF 不认程序化节点材质,先用 `bake_to_glb.py` 烘成 BaseColor / Roughness / Normal 再导。 | | Python | [`python-style`](python-style/SKILL.md) | Python 脚本硬约束:`main()` 唯一入口、默认不引 argparse、命名可读 + Google 中文 docstring + 类型标注,附 AST 校验器。 | | bronya2 | [`bronya2-workpanel-dev`](bronya2-workpanel-dev/SKILL.md) | 该项目的总规范,动任何代码前先读:风格贴现有代码、双栈选型边界、渲染层禁止直连 Node API 一律走 `src/api/*`。 | | bronya2 | [`bronya2-schema-version-migration`](bronya2-schema-version-migration/SKILL.md) | 改 SQLite 表结构:只读体检版本号 → 幂等建表与判列迁移 → 注册进 `initDatabase()` → 只读验证,防静默失败。 | | bronya2 | [`bronya2-web-dualstack-run-and-verify`](bronya2-web-dualstack-run-and-verify/SKILL.md) | Web 联调:vite 与 Express 必须同起,先 `curl` 打 `/api` 再看 UI,截图不可用时改用 DOM 几何断言。 | | bronya2 | [`bronya2-hover-action-list-rows`](bronya2-hover-action-list-rows/SKILL.md) | 侧栏紧凑列表行:固定 `padding-right` 预留按钮位,按钮组绝对定位靠 opacity 显隐,hover 不抖动。 | 分工:`html-component` 管组件本体、`doc-demo-page` 管它的说明页;素材这条线是 `asset-sourcing`(从零取源)→ `localize-demo-assets`(存量改造)→ `blender-glb-export`(3D 导出);四个 bronya2 skill 里 `bronya2-workpanel-dev` 是总规范,其余三个各管一个横切场景并回指它。`blender-glb-export` 依赖已连接的 Blender MCP。 ## 第三方开源 Skills 两条收录路线,形态不同,别混着用: - **精简收录**(`ponytail`、`simplify-codebase`):上游是多文件技能包,本仓库只取主 `SKILL.md` 并精简改写(非逐字副本)。当方法论备忘够用;要完整能力请从上游安装。 - **整包收录**(`img2threejs`):上游整棵树**逐字落地**(仅排除 `.github/`),`forge/` 的脚本可直接跑,离线可用。 | Skill | 上游 | 一句话作用 | |---|---|---| | [`ponytail`](ponytail/SKILL.md) | [DietrichGebert/ponytail](https://github.com/DietrichGebert/ponytail) | 常驻「懒资深工程师」模式:自上而下止损——需要存在吗(YAGNI)→ 仓库已有同类实现 → 标准库 → 平台原生 → 已装依赖 → 能否一行,最后才是最小实现;修 bug 要求打根因。 | | [`simplify-codebase`](simplify-codebase/SKILL.md) | [tt-a1i/simplify-codebase](https://github.com/tt-a1i/simplify-codebase) | 偶发复杂度审计:Survey 只读产证据,Change 需授权才动代码;目标是减少「概念与义务」的数量,减行数只是佐证。删对外接口或兼容路径视为产品决策。 | | [`img2threejs`](img2threejs/SKILL.md) | [img2threejs/img2threejs](https://github.com/img2threejs/img2threejs) | 参考图 → **纯代码**程序化的 Three.js 模型:intake 探图 → pre-spec 质量契约 → sculpt spec → 逐 pass 生成(blockout→structure→form→material→lighting→interaction→optimization)→ 渲染截图与参考图逐 pass 对比自纠。产物是 TypeScript 的 `THREE.Group` 工厂,带 pivots / sockets / colliders,可直接动画;显式声明近似与不可见面,不伪造置信度。 | **第三方技能属外部代码,启用前建议先审阅其 `SKILL.md`。** `img2threejs` 的运行入口(在 `img2threejs/` 目录下;Python 3.10+ 即可,核心零依赖,`npx` 安装器另需 Node ≥ 18): ```bash cd img2threejs python forge/state.py init --state .img2threejs/state.json --reference <参考图> --profile generic --spec object-sculpt-spec.json python forge/next.py --state .img2threejs/state.json # 每轮先问「下一步跑什么」,别凭记忆续 ``` 内建 profile 只有 `generic`(硬表面物件)与 `character`(角色);`cs2`、`animated-character`、`environment` 等域插件由上游 `img2` harness 单独安装,本仓库不带。已知问题:Windows 下 `forge/tests` 有 1 个用例(`test_cli_replay_matches_the_frozen_oracle`)因 CRLF 行尾比对失败——1416 个用例其余全过,属上游可移植性问题(oracle 未按二进制模式比对),非本仓库引入。 ## 许可与出处 本仓库的授权分三层,请勿混同: - **根目录 [`LICENSE`](LICENSE)**:MIT,署名 `Copyright (c) 2026-present SystemLight`。**仅覆盖本项目自研的 skill**(除 `ponytail/`、`simplify-codebase/`、`img2threejs/` 三个第三方收录件之外的全部目录)。 - **`ponytail/` 与 `simplify-codebase/`**:第三方收录件,著作权与署名归**原作者**,按各自上游的 MIT 分发,许可全文已随目录保留在 `/LICENSE`。这两份上游 MIT 的署名与本仓库根 LICENSE 相互独立,再分发时需一并保留。 - **`img2threejs/`**:**Apache-2.0**,全文在 `img2threejs/LICENSE`,版权归上游作者。它比 MIT 多了几条硬义务:保留全部版权 / 专利 / 商标 / 归属声明(`README.md`、`assets/` 里的赞助商标志属归属声明),**改动过的文件须在其中标注已修改**,再分发须附许可全文;同时含明确的专利授权与商标不授权条款。 | 目录 | 上游仓库 | License | 抓取时的 HEAD commit | 本地形态 | |---|---|---|---|---| | `ponytail/` | [DietrichGebert/ponytail](https://github.com/DietrichGebert/ponytail) | MIT © 2026 DietrichGebert | `e3ba2aa6f1e6` (2026-09-14) | `SKILL.md` 为**压缩改写版**(上游是多文件 skill 包,此处压成单文件),非逐字副本 | | `simplify-codebase/` | [tt-a1i/simplify-codebase](https://github.com/tt-a1i/simplify-codebase) | MIT © 2026 simplify-codebase contributors | `5da55efcb52d` (2026-09-04) | 上游主 `SKILL.md` 为 96 行并带 `references/` 等附属文件,本地 81 行为**精简改写版** | | `img2threejs/` | [img2threejs/img2threejs](https://github.com/img2threejs/img2threejs) | Apache-2.0 © img2threejs contributors | `3e7099e1b7fe` (2026-10-27) | **整包逐字副本**(357 文件 / 5.6 MB),仅移除 `.github/`(上游 13 个 workflow 面向其自有仓库,会跟着本仓库 CI 跑起来);文件内容一律未改,故无需添「已修改」标注。唯一例外:`integrations/glb_character_pipeline/node/package-lock.json` 被上游自带 `.gitignore` 的 `package-lock.json` 规则挡住,入库需 `git add -f`(不影响使用,该管线走 `npm install` 而非 `npm ci`) | MIT 与 Apache-2.0 都是宽松协议:允许商用、修改与闭源再分发,不传染本仓库其余代码,也不要求你把自研 skill 开源;硬性义务就是上述「保留原作者许可全文与版权声明」(Apache-2.0 另加变更标注与专利/商标条款)。日后若从上游同步更新,请同步替换对应 `LICENSE` 并更新本表的 commit 号与本地形态描述。