skill-forge-hub 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.en.md +18 -0
- package/CHANGELOG.md +18 -0
- package/README.en.md +3 -1
- package/README.md +3 -1
- package/SKILLS_CATALOG.md +119 -0
- package/annual-report/SKILL.md +3 -3
- package/annual-report/resources/reference.html +2 -2
- package/annual-report/resources/skillforge-guide.html +1 -0
- package/annual-report/resources/skillforge-guide.txt +1 -0
- package/annual-report/user-config.md +1 -1
- package/article-to-html/SKILL.md +1 -1
- package/article-to-html/resources/skillforge-guide.html +1 -0
- package/article-to-html/resources/skillforge-guide.txt +1 -0
- package/article-to-html/user-config.md +1 -1
- package/cli.js +54 -14
- package/commit-heatmap/SKILL.md +2 -2
- package/commit-heatmap/resources/skillforge-guide.html +1 -0
- package/commit-heatmap/resources/skillforge-guide.txt +1 -0
- package/commit-heatmap/user-config.md +1 -1
- package/daily-report/SKILL.md +2 -2
- package/daily-report/resources/skillforge-guide.html +1 -0
- package/daily-report/resources/skillforge-guide.txt +1 -0
- package/daily-report/user-config.md +1 -1
- package/data-prepper/SKILL.md +2 -2
- package/data-prepper/resources/skillforge-guide.html +1 -0
- package/data-prepper/resources/skillforge-guide.txt +1 -0
- package/data-prepper/user-config.md +1 -1
- package/decision-log/SKILL.md +2 -2
- package/decision-log/resources/skillforge-guide.html +1 -0
- package/decision-log/resources/skillforge-guide.txt +1 -0
- package/decision-log/user-config.md +1 -1
- package/deck-stage/SKILL.md +3 -10
- package/deck-stage/resources/skillforge-guide.html +1 -0
- package/deck-stage/resources/skillforge-guide.txt +1 -0
- package/docs/articles/ai-daily-report-correct-pose.md +39 -0
- package/docs/articles/ai-prompt-management-skill-pouch.md +37 -0
- package/docs/articles/csdn-skillforge-21-skills.md +89 -0
- package/docs/directory-submission.md +106 -0
- package/docs/install.en.md +3 -3
- package/docs/install.md +3 -3
- package/docs/usage-examples.en.md +1 -1
- package/docs/usage-examples.md +1 -1
- package/magic-deck/SKILL.md +4 -5
- package/magic-deck/resources/skillforge-guide.html +1 -0
- package/magic-deck/resources/skillforge-guide.txt +1 -0
- package/magic-deck/user-config.md +1 -1
- package/meeting-minutes/SKILL.md +1 -1
- package/meeting-minutes/resources/skillforge-guide.html +1 -0
- package/meeting-minutes/resources/skillforge-guide.txt +1 -0
- package/meeting-minutes/user-config.md +1 -1
- package/meta-forge/SKILL.md +2 -2
- package/meta-forge/resources/skillforge-guide.html +1 -0
- package/meta-forge/resources/skillforge-guide.txt +1 -0
- package/meta-forge/user-config.md +1 -1
- package/monthly-report/SKILL.md +1 -1
- package/monthly-report/resources/skillforge-guide.html +1 -0
- package/monthly-report/resources/skillforge-guide.txt +1 -0
- package/monthly-report/user-config.md +1 -1
- package/one-pager/SKILL.md +20 -8
- package/one-pager/resources/design-process.md +117 -0
- package/one-pager/resources/generate.md +19 -7
- package/one-pager/resources/html-rules.md +55 -10
- package/one-pager/resources/reference.html +1192 -111
- package/one-pager/resources/skillforge-guide.html +1 -0
- package/one-pager/resources/skillforge-guide.txt +1 -0
- package/one-pager/resources/usage-guide.md +18 -4
- package/one-pager/resources/user-template-example.html +63 -0
- package/one-pager/user-config.md +7 -4
- package/package.json +3 -2
- package/prompt-pouch/SKILL.md +4 -15
- package/prompt-pouch/resources/reference.html +388 -126
- package/prompt-pouch/resources/skillforge-guide.html +1 -0
- package/prompt-pouch/resources/skillforge-guide.txt +1 -0
- package/prompt-pouch/resources/usage-guide.md +4 -3
- package/quarterly-report/SKILL.md +1 -1
- package/quarterly-report/resources/skillforge-guide.html +1 -0
- package/quarterly-report/resources/skillforge-guide.txt +1 -0
- package/quarterly-report/user-config.md +1 -1
- package/release-notes/SKILL.md +2 -2
- package/release-notes/resources/skillforge-guide.html +1 -0
- package/release-notes/resources/skillforge-guide.txt +1 -0
- package/release-notes/user-config.md +1 -1
- package/skill-doctor/SKILL.md +2 -2
- package/skill-doctor/resources/skillforge-guide.html +1 -0
- package/skill-doctor/resources/skillforge-guide.txt +1 -0
- package/skill-doctor/user-config.md +1 -1
- package/spec-doc2spec/SKILL.md +3 -9
- package/spec-doc2spec/resources/skillforge-guide.html +1 -0
- package/spec-doc2spec/resources/skillforge-guide.txt +1 -0
- package/spec-doc2spec/user-config.md +1 -1
- package/spec-spec2doc/SKILL.md +3 -12
- package/spec-spec2doc/resources/skillforge-guide.html +1 -0
- package/spec-spec2doc/resources/skillforge-guide.txt +1 -0
- package/spec-spec2doc/user-config.md +1 -1
- package/team-report-collector/SKILL.md +2 -2
- package/team-report-collector/resources/skillforge-guide.html +1 -0
- package/team-report-collector/resources/skillforge-guide.txt +1 -0
- package/team-report-collector/user-config.md +1 -1
- package/template/SKILL.md +2 -2
- package/template/user-config.md +1 -1
- package/twin-docs/SKILL.md +2 -2
- package/twin-docs/resources/skillforge-guide.html +1 -0
- package/twin-docs/resources/skillforge-guide.txt +1 -0
- package/twin-docs/user-config.md +1 -1
- package/weekly-report/SKILL.md +2 -2
- package/weekly-report/resources/skillforge-guide.html +1 -0
- package/weekly-report/resources/skillforge-guide.txt +1 -0
- package/weekly-report/user-config.md +1 -1
package/CHANGELOG.en.md
CHANGED
|
@@ -4,6 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
Version history of the SkillForge npm package `skill-forge-hub` (command name `skill-forge`).
|
|
6
6
|
|
|
7
|
+
## 1.3.0 (2026-11-12)
|
|
8
|
+
|
|
9
|
+
**prompt-pouch native dialogs eliminated: unified in-page confirm dialog in three modes**
|
|
10
|
+
|
|
11
|
+
- New cfMask unified dialog (confirm / alert / prompt modes) with Promise-based uiConfirm / uiAlert / uiPrompt; all 11 native window.confirm / alert / prompt calls absorbed — delete prompt/group, quick tag add, overwrite import, restore backup (corrupt notices x2 + overwrite confirm), auto-backup authorization (dual-semantics "Authorize directory" / "Not now"), change backup directory — zero native white dialogs left
|
|
12
|
+
- Dialog styling matches the page: reuses the .modal-mask overlay system (frosted glass + pop-in animation), adopts the five theme variables (warm gold / tech blue / IDEA dark / IDEA light / mint auto-recolor); destructive actions (delete / overwrite / restore) get a red-tinted confirm button; Esc / mask click cancel, prompt mode submits on Enter with default value prefilled
|
|
13
|
+
- Version stamp prompt-pouch@9 -> @10; usage-guide gains a "unified confirm dialog" entry
|
|
14
|
+
|
|
15
|
+
## 1.2.0 (2026-11-12)
|
|
16
|
+
|
|
17
|
+
**Chinese-style poster octet + collapsible dual docks + directory-visibility trio**
|
|
18
|
+
|
|
19
|
+
- one-pager gains the Chinese-style school (inkwash / red-gold palace / blue-green landscape, style-native fixed palettes by charter) plus the scenario-specific watermark memo template (follows theme tokens): 28 → 32 layout templates, seven schools × 25 color themes = 800 combos (one-pager@2 → @10); theme dock trio upgrade — dots 14 → 18px, hover shows a theme-name tooltip, the handle always displays "Theme · current name"
|
|
20
|
+
- one-pager template dock / theme dock collapsible: folded into capsule handles by default so they never block the poster (handles show the current template / theme name in real time); click to expand, auto-collapse after selection
|
|
21
|
+
- prompt-pouch sort dropdown rebuilt as a self-drawn component (the dialog adopts the five-theme variables, dropdown options rendered with the unified theme) + sort-arrow edge fix (custom arrow with proper margin)
|
|
22
|
+
- Directory-visibility trio: new SKILLS_CATALOG.md (per-skill bilingual standalone profiles for all 21 skills, ready to excerpt for skills.sh / awesome-claude-skills submissions and article citations); both READMEs fix the one-pager drift (8 templates × 10 themes / 80 combos → 32 templates in seven schools × 25 themes / 800 combos) + documentation navigation links the catalog / articles / submission kit; new docs/articles/ with two hands-on articles (managing prompts with AI skill packs, the right way to write daily reports with AI); new docs/directory-submission.md submission kit (awesome-claude-skills PR material & steps / skills.sh publishing guide / gh login guide)
|
|
23
|
+
- skillforge-guide (root page + the 21 skills' bundled txt/html copies) gains a document-entry row in the cheat sheet: SKILLS_CATALOG.md / docs/articles/ / docs/directory-submission.md
|
|
24
|
+
|
|
7
25
|
## 1.1.0 (2026-11-12)
|
|
8
26
|
|
|
9
27
|
**Harvest season: 8 new skills (13 → 21, seven categories) + built-in usage guide + theme system alignment**
|
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
SkillForge(技能锻造坊)npm 包 `skill-forge-hub`(命令名 `skill-forge`)版本变更记录。
|
|
6
6
|
|
|
7
|
+
## 1.3.0(2026-11-12)
|
|
8
|
+
|
|
9
|
+
**prompt-pouch 原生弹框清零:页内统一确认弹框三形态**
|
|
10
|
+
|
|
11
|
+
- 新增 cfMask 统一确认弹框(确认 / 提示 / 输入三形态),Promise 化 uiConfirm / uiAlert / uiPrompt;11 处原生 window.confirm / alert / prompt 全部收编——删除提示词/分组、标签快捷加、覆盖导入、恢复备份(损坏提示 ×2 + 覆盖确认)、自动备份授权(「授权目录」/「暂不」双语义)、更换备份目录,浏览器原生白底弹框清零
|
|
12
|
+
- 弹框风格与页面同源:复用 .modal-mask 遮罩体系(毛玻璃 + 弹入动画),吃五主题变量(暖棕金 / 深蓝科技 / IDEA 黑亮 / IDEA 白亮 / 薄荷绿自动换色);危险操作(删除/覆盖/恢复)确认键红调按钮;Esc / 遮罩点击均可取消,prompt 形态 Enter 提交、默认值回填
|
|
13
|
+
- 版本戳 prompt-pouch@9 → @10;usage-guide 补充「统一确认弹框」说明条目
|
|
14
|
+
|
|
15
|
+
## 1.2.0(2026-11-12)
|
|
16
|
+
|
|
17
|
+
**海报国风八式 + 双坞折叠 + 目录能见度三件套**
|
|
18
|
+
|
|
19
|
+
- one-pager 国风雅韵组三套(水墨 / 红金宫廷 / 青绿山水,风格本体固定色相特许)+ 场景专用水印公文一套(跟随主题令牌):28 → 32 套布局模板,七组流派 × 25 套配色主题 = 800 种版式(one-pager@2 → @10);主题坞升级三件套——色点 14 → 18px、hover 弹出主题名浮签、把手常显「主题 · 当前主题名」
|
|
20
|
+
- one-pager 模板坞 / 主题坞折叠展开:默认折叠成胶囊把手不遮主体(把手实时显示当前模板名 / 主题名),点把手展开、选中自动收起
|
|
21
|
+
- prompt-pouch 排序下拉改自绘组件(弹框吃五主题变量,下拉选项与弹框统一主题渲染)+ 排序箭头贴边修复(自定义箭头留出边距)
|
|
22
|
+
- 目录能见度三件套:新增 SKILLS_CATALOG.md(21 技能逐条中英双语独立简介,供 skills.sh / awesome-claude-skills 等目录收录与文章引用时整段摘录);README 双版 one-pager 漂移修复(8 套×10 主题 80 种 → 32 套七组×25 主题 800 种)+ 文档导航挂 CATALOG / 文章 / 素材包;新增 docs/articles/ 两篇实操文章(用 AI 技能包管提示词、AI 写日报的正确姿势);新增 docs/directory-submission.md 目录收录素材包(awesome-claude-skills PR 素材与步骤 / skills.sh 发布指引 / gh 登录指引)
|
|
23
|
+
- skillforge-guide(根引导页 + 21 技能内置 txt/html 双版)通用小抄补文档入口行:SKILLS_CATALOG.md / docs/articles/ / docs/directory-submission.md
|
|
24
|
+
|
|
7
25
|
## 1.1.0(2026-11-12)
|
|
8
26
|
|
|
9
27
|
**技能丰收季 8 连发:13 技能扩至 21 技能七分类 + 内置使用指引 + 主题体系对齐**
|
package/README.en.md
CHANGED
|
@@ -69,7 +69,7 @@ Skills are grouped by "what they ultimately produce" — one skill belongs to ex
|
|
|
69
69
|
| team-report-collector | Report showcase | [team-report-collector/](team-report-collector/) | Team daily-report collector: three intake paths (verbal / file batch / page export) into reports.json as the single source of truth + a single-file offline collection HTML (form filling + localStorage draft + JSON export/import + five-theme skinning) + a date-grouped summary md |
|
|
70
70
|
| article-to-html | Document mounting | [article-to-html/](article-to-html/) | Word / Markdown / plain text → polished standalone HTML (Source Han Sans SC + Roboto, both free for commercial use; charts redrawn with HTML/CSS), per-chapter screenshots (Retina 2x); a ready-made HTML file can be captured directly or beautified first |
|
|
71
71
|
| twin-docs | Document mounting | [twin-docs/](twin-docs/) | Chinese documents translated & synced into English versions (or reverse): glossary consistency, title hierarchy / tables / code blocks / links matched item by item, two-way sync checks for drift |
|
|
72
|
-
| one-pager | Document mounting | [one-pager/](one-pager/) | A theme or one-line idea → one-page HTML poster (big
|
|
72
|
+
| one-pager | Document mounting | [one-pager/](one-pager/) | A theme or one-line idea → one-page HTML poster (big title + quote + key-point blocks, one-screen vertical, print-friendly) + optional PNG capture; 32 layout templates (seven stylistic schools: modernism / editorial / data-business / art schools / Chinese-style / avant-garde / scenario-specific) × 25 color themes switchable on the fly (800 combos) |
|
|
73
73
|
| spec-doc2spec | Engineering efficiency | [spec-doc2spec/](spec-doc2spec/) | Word / Markdown requirement docs → structured requirement slices (thin entry + resources volumes); auto-detects Pandoc and guides cross-platform installation when missing |
|
|
74
74
|
| spec-spec2doc | Engineering efficiency | [spec-spec2doc/](spec-spec2doc/) | Markdown specs → Word / PDF deliverables; auto-detects Pandoc and guides cross-platform installation when missing; dual PDF paths (xelatex / Chrome print fallback) |
|
|
75
75
|
| release-notes | Engineering efficiency | [release-notes/](release-notes/) | git commits between two version tags → bilingual release notes + CHANGELOG entry (categorized summary + user-perspective rewrite + commit stats) + pre-publish npm self-check list |
|
|
@@ -103,6 +103,8 @@ After installation, just say "write a daily report", "write a weekly report", "w
|
|
|
103
103
|
| [docs/architecture.en.md](docs/architecture.en.md) | Architecture & conventions: directory layout, skill anatomy (thin entry + resources), the eight mechanisms, splitting conventions, general principles. Chinese version [docs/architecture.md](docs/architecture.md) |
|
|
104
104
|
| [docs/usage-examples.en.md](docs/usage-examples.en.md) | Skill usage scenario examples: daily-report / prompt-pouch / both PPT forms / meeting-minutes, full chain from install to reforge. Chinese version [docs/usage-examples.md](docs/usage-examples.md) |
|
|
105
105
|
| [skillforge-guide](https://windfallsheng.github.io/SkillForge/) | Built-in usage guide (txt + html in every skill's resources/): ask the AI 'how to use skillforge' and it reads the guide and opens the styled page; live hosted guide at the GitHub Pages public URL (permanent) |
|
|
106
|
+
| [SKILLS_CATALOG.md](SKILLS_CATALOG.md) | Per-skill bilingual catalog: a standalone citable profile for each of the 21 skills, ready to excerpt for skills.sh / awesome-claude-skills directory submissions and article citations |
|
|
107
|
+
| [docs/articles/](docs/articles/) | Hands-on articles: prompt management with AI skill packs, the right way to write daily reports with AI; [docs/directory-submission.md](docs/directory-submission.md) directory submission kit (awesome-claude-skills PR material & steps / skills.sh publishing guide / gh login guide) |
|
|
106
108
|
| [CHANGELOG.en.md](CHANGELOG.en.md) | Version changelog. Chinese version [CHANGELOG.md](CHANGELOG.md) |
|
|
107
109
|
|
|
108
110
|
## License
|
package/README.md
CHANGED
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
| team-report-collector | 报表汇演 | [team-report-collector/](team-report-collector/) | 团队成员日报收集台:口述 / 文件批量 / 页面导出三种方式收日报 → reports.json 数据真相源 + 单文件离线收集台 HTML(表单填写 + localStorage 草稿 + 导出导入 JSON + 五主题换肤)+ 按日期分组汇总 md |
|
|
70
70
|
| article-to-html | 文档装裱 | [article-to-html/](article-to-html/) | Word / Markdown / 纯文本 → 精美独立 HTML(思源黑体 + Roboto 商用免费字体,图表 HTML/CSS 重绘),逐章截图(Retina 2x);现成 HTML 可直接截图或先美化 |
|
|
71
71
|
| twin-docs | 文档装裱 | [twin-docs/](twin-docs/) | 中文文档翻译并同步为英文版(或反向):术语表一致性对齐、标题层级 / 表格 / 代码块 / 链接逐项对应、双向同步检查出差 |
|
|
72
|
-
| one-pager | 文档装裱 | [one-pager/](one-pager/) | 主题 / 一句话想法 → 一页纸 HTML
|
|
72
|
+
| one-pager | 文档装裱 | [one-pager/](one-pager/) | 主题 / 一句话想法 → 一页纸 HTML 海报(大标题 + 金句 + 要点块,纵向一屏、打印友好)+ 可选 PNG 截图;32 套布局模板(现代主义/编辑出版/数据商务/艺术流派/国风雅韵/先锋实验/场景专用七组流派)× 25 套配色主题随点随切(800 种版式) |
|
|
73
73
|
| spec-doc2spec | 工程提效 | [spec-doc2spec/](spec-doc2spec/) | Word / Markdown 需求文档转结构化需求切片(薄入口 + resources 分册);自动检测 Pandoc,未装引导跨系统安装 |
|
|
74
74
|
| spec-spec2doc | 工程提效 | [spec-spec2doc/](spec-spec2doc/) | Markdown 规格导出为 Word / PDF 交付文档;自动检测 Pandoc,未装引导跨系统安装;PDF 双路径(xelatex / Chrome 打印兜底) |
|
|
75
75
|
| release-notes | 工程提效 | [release-notes/](release-notes/) | git 两个版本标签之间提交 → 中英双语发版说明 + CHANGELOG 条目(分类归纳 + 用户视角改写 + 提交统计)+ npm 发布前自检清单 |
|
|
@@ -103,6 +103,8 @@ skill-forge update # 升级已安装技能(配置版本感知,
|
|
|
103
103
|
| [docs/architecture.md](docs/architecture.md) | 架构与规范:目录结构、技能形态(薄入口 + resources)、八大机制、拆分规范、通用原则。英文版 [docs/architecture.en.md](docs/architecture.en.md) |
|
|
104
104
|
| [docs/usage-examples.md](docs/usage-examples.md) | 技能使用场景示例:日报 / 锦囊 / PPT 两形态 / 会议纪要的安装到回炉全链路。英文版 [docs/usage-examples.en.md](docs/usage-examples.en.md) |
|
|
105
105
|
| [skillforge-guide](https://windfallsheng.github.io/SkillForge/) | 内置使用指引(每个技能 resources/ 均含 txt + html 双版):对 AI 说「skillforge 怎么用」即朗读指引并打开排版页;在线引导页见 GitHub Pages 公网地址(长期有效) |
|
|
106
|
+
| [SKILLS_CATALOG.md](SKILLS_CATALOG.md) | 技能目录简介册:21 技能逐条中英双语独立简介(每技能一段可直接摘录),供 skills.sh / awesome-claude-skills 等目录收录与文章引用时锚点链接 |
|
|
107
|
+
| [docs/articles/](docs/articles/) | 实操文章:《用 AI 技能包管提示词》《AI 写日报的正确姿势》;[docs/directory-submission.md](docs/directory-submission.md) 目录收录素材包(awesome-claude-skills PR 素材与步骤 / skills.sh 发布指引 / gh 登录指引) |
|
|
106
108
|
| [CHANGELOG.md](CHANGELOG.md) | 版本变更记录。英文版 [CHANGELOG.en.md](CHANGELOG.en.md) |
|
|
107
109
|
|
|
108
110
|
## 许可证
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# SkillForge 技能目录简介册 · Skills Catalog
|
|
2
|
+
|
|
3
|
+
> 本文件供技能目录收录引用(skills.sh / awesome-claude-skills 等):每个技能一段**独立可引用**的双语简介,目录维护者可直接整段摘录;提交 PR 或发布时请引用本文件对应锚点(如 `SKILLS_CATALOG.md#daily-report`)。
|
|
4
|
+
> Each section is a self-contained, citable profile for directory submissions (skills.sh, awesome-claude-skills, etc.). Link to anchors like `SKILLS_CATALOG.md#daily-report` when submitting.
|
|
5
|
+
|
|
6
|
+
**仓库一览**:21 个可复用 Agent 技能(SKILL.md 为入口,一次生成,跨宿主迁移),覆盖报表汇报、文档装裱、工程提效、演示汇演、数据整备、沟通协作、技能自造七类。全部离线可用、零外部依赖、配置抽离(user-config.md,升级不覆盖)。
|
|
7
|
+
**Repository at a glance**: 21 reusable agent skills (SKILL.md as entry point, generated once, portable across hosts), covering reporting, document beautification, engineering efficiency, presentations, data preparation, collaboration, and meta-skill crafting. Fully offline, zero external dependencies, user config isolated in user-config.md.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 报表汇演 · Reporting
|
|
12
|
+
|
|
13
|
+
### daily-report 日报 / Daily Report
|
|
14
|
+
一句话总结当天工作 → 结构化日报(任务进度 / 明日计划 / 风险阻塞点),适配 12 行业(内置职业词典),支持自然语言日期(今天/昨天/上周三)、多日批量、自定义模板;一段文字、文件、图片或口头补充皆可成稿。
|
|
15
|
+
Turns a one-line summary into a structured daily report (progress / tomorrow's plan / risks & blockers) adapted to 12 industries via a built-in professional glossary. Natural-language dates, multi-day batch generation, custom templates; accepts text, files, images, or spoken notes.
|
|
16
|
+
|
|
17
|
+
### weekly-report 周报 / Weekly Report
|
|
18
|
+
本周结论先行 + 任务进度 / 下周计划 / 风险阻塞点三节,1D=8H 工时口径;周结束日可配置(默认周五),自然语言周定位(本周/上周/10月第2周),12 行业词典与自定义模板。
|
|
19
|
+
Conclusion-first weekly report with progress / next-week plan / risks sections. Configurable week end (default Friday), natural-language week selection, industry glossary and custom templates.
|
|
20
|
+
|
|
21
|
+
### monthly-report 月报 / Monthly Report
|
|
22
|
+
四段式月报(月度概览 / 关键成果 / 问题与改进 / 下月计划),开发类用户可聚合当月 git 提交;12 行业词典、自定义模板、自然语言月份定位。
|
|
23
|
+
Four-section monthly report (overview / key results / issues & improvements / next-month plan); aggregates the month's git commits for developers; industry glossary, custom templates.
|
|
24
|
+
|
|
25
|
+
### quarterly-report 季报 / Quarterly Report
|
|
26
|
+
四段式季度总结,核心数据卡带环比 + 同比双基准,概览附 Q1-Q4 走势图,成果段按 M1/M2/M3 时间线;12 行业词典、自定义模板。
|
|
27
|
+
Four-section quarterly summary with MoM + YoY data cards, Q1-Q4 trend chart, month-by-month timeline; industry glossary, custom templates.
|
|
28
|
+
|
|
29
|
+
### annual-report 年报 / Annual Report
|
|
30
|
+
五段式年度总结(年度概览 / 核心成果与里程碑 / 经验与成长 / 不足与反思 / 新年展望与规划),开发类用户可聚合 git 全年提交;12 行业词典、自定义模板。
|
|
31
|
+
Five-section annual review (overview / milestones / growth / reflection / outlook); aggregates a full year of git commits; industry glossary, custom templates.
|
|
32
|
+
|
|
33
|
+
### team-report-collector 团队日报收集台 / Team Report Collector
|
|
34
|
+
团队成员日报收集台:口述 / 文件批量 / 页面导出三种方式收日报 → reports.json 数据真相源 + 单文件离线收集台 HTML(表单填写 + localStorage 草稿 + 导入导出 + 五主题换肤)+ 按日期分组汇总 md。
|
|
35
|
+
Collects team members' daily reports via dictation, batch files, or page export into a single-file offline HTML console (forms, drafts, JSON import/export, 5 themes) with date-grouped markdown digests.
|
|
36
|
+
|
|
37
|
+
## 文档装裱 · Document Beautification
|
|
38
|
+
|
|
39
|
+
### article-to-html 文档装裱 / Article to HTML
|
|
40
|
+
Word / Markdown / 纯文本 → 精美独立 HTML(思源黑体 + Roboto 商用免费字体,图表 HTML/CSS 重绘不嵌图),逐章截图(Retina 2x);现成 HTML 可直接截图或先美化。
|
|
41
|
+
Converts Word / Markdown / plain text into a polished standalone HTML page (free commercial fonts, charts redrawn in HTML/CSS), with per-chapter Retina screenshots; existing HTML can be screenshot or restyled directly.
|
|
42
|
+
|
|
43
|
+
### twin-docs 孪生文档 / Twin Docs
|
|
44
|
+
中文文档翻译并同步为英文版(或反向):术语表一致性对齐、标题层级 / 表格 / 代码块 / 链接逐项对应、双向同步检查出差。
|
|
45
|
+
Translates Chinese docs into English twins (or reverse) with a glossary for term consistency, structural parity for headings/tables/code/links, and bidirectional drift checks.
|
|
46
|
+
|
|
47
|
+
### one-pager 一页纸海报 / One-Pager Poster
|
|
48
|
+
主题 / 一句话想法 → 一页纸 HTML 海报(大标题 + 金句 + 要点块,纵向一屏、打印友好)+ 可选 PNG 截图;32 套布局模板 × 25 套配色主题随点随切(800 种版式),七组流派分类(含国风雅韵:水墨 / 红金宫廷 / 青绿山水),「专业设计」走七步引导。
|
|
49
|
+
Turns a topic into a one-screen HTML poster (title + quote + points) with optional PNG export; 32 layout templates × 25 color themes (800 combinations) across seven style schools including Chinese-ink, palace-red, and blue-green landscape styles; a 7-step guided design mode for design requests.
|
|
50
|
+
|
|
51
|
+
## 工程提效 · Engineering Efficiency
|
|
52
|
+
|
|
53
|
+
### spec-doc2spec 文档转规格 / Doc to Spec
|
|
54
|
+
Word / Markdown 需求文档 → 结构化需求切片(薄入口 + resources 分册);自动检测 Pandoc,未装引导跨系统安装;Pandoc 机械转换 + AI 校对防错。
|
|
55
|
+
Slices Word / Markdown requirement documents into structured requirement units; auto-detects Pandoc with cross-platform install guidance; Pandoc does mechanical conversion, AI does proofreading.
|
|
56
|
+
|
|
57
|
+
### spec-spec2doc 规格转文档 / Spec to Doc
|
|
58
|
+
Markdown 规格 → Word / PDF 交付文档;自动检测 Pandoc,未装引导跨系统安装;PDF 双路径(xelatex / Chrome 打印兜底)。
|
|
59
|
+
Exports Markdown specs to Word / PDF deliverables; Pandoc auto-detection; dual-path PDF (xelatex / Chrome print fallback).
|
|
60
|
+
|
|
61
|
+
### release-notes 发版说明 / Release Notes
|
|
62
|
+
git 两标签之间提交 → 中英双语发版说明 + CHANGELOG 条目(分类归纳 + 用户视角改写 + 提交统计)+ npm 发布前自检清单。
|
|
63
|
+
Generates bilingual release notes and CHANGELOG entries from git commits between two tags (categorized, user-perspective rewrite, commit stats) plus a pre-publish npm checklist.
|
|
64
|
+
|
|
65
|
+
## 演示汇演 · Presentations
|
|
66
|
+
|
|
67
|
+
### magic-deck 魔法幻灯 / Magic Deck
|
|
68
|
+
内容 → 单文件 HTML 幻灯(16:9 舞台 + 播放引擎 + 十六套版式模板 + 十七套主题 + 领域成套模板 21 套 + 图表动画五式 + 动画库 + 全屏放映纯净模式):自动播放 / 循环 / 间隔、键盘热键、页内连接、逐页 PNG 截图与主体复制。
|
|
69
|
+
Turns content into a single-file HTML slideshow (16:9 stage, playback engine, 16 layouts, 17 themes, 21 domain template packs, chart animations, clean fullscreen mode) with autoplay, hotkeys, in-page links, per-slide PNG export.
|
|
70
|
+
|
|
71
|
+
### deck-stage 登台文稿 / Deck Stage
|
|
72
|
+
报告 / 素材 → 专业 .pptx 登台文稿:三问交互(素材 → 页骨架表 → 成片方式),常规页原生可编辑(数据卡 / 时间线 / 柱图 / 饼图 / 折线),封面与结尾页 HTML 截图保真,每页可带演讲备注;视觉与报表同源五主题。
|
|
73
|
+
Builds a professional .pptx deck from reports or raw material through a three-question flow; regular pages natively editable (data cards, timeline, bar/pie/line charts), cover and closing pages rendered as HTML screenshots, per-page speaker notes.
|
|
74
|
+
|
|
75
|
+
## 数据整备 · Data Preparation
|
|
76
|
+
|
|
77
|
+
### data-prepper 数据整备 / Data Prepper
|
|
78
|
+
Excel / CSV / JSON 散装数据 → 结构化数据:格式探测 → 清洗(清洗项明示、逐条留痕、不猜不编)→ JSON/CSV 落盘 → 数据概览报告(字段画像 / 分布 / 异常值 / 清洗清单)。
|
|
79
|
+
Cleans scattered Excel / CSV / JSON into structured data: format detection, transparent step-by-step cleaning (no guessing), JSON/CSV output, and an overview report (field profiles, distributions, outliers, cleaning log).
|
|
80
|
+
|
|
81
|
+
### commit-heatmap 提交热力图 / Commit Heatmap
|
|
82
|
+
git 近一年提交 → GitHub 风格提交热力图 HTML(53 周 × 7 天格子五档深浅 + 总提交数 / 最长连续天数 / 活跃占比 / 最活跃日统计卡),离线零依赖、三主题切换。
|
|
83
|
+
Renders a GitHub-style commit heatmap (53×7 grid, five intensity levels, stats cards for total commits, longest streak, activity ratio, busiest day) from a year of git history; offline, zero dependencies, three themes.
|
|
84
|
+
|
|
85
|
+
## 沟通协作 · Communication & Collaboration
|
|
86
|
+
|
|
87
|
+
### meeting-minutes 会议纪要 / Meeting Minutes
|
|
88
|
+
多源材料 → 会议纪要(五段式:会议信息 / 会议结论 / 议题讨论 / 决议与行动项 / 下次会议):行动项带负责人与截止时间(汇报链源头,可被日报 / 周报 / 月报 / 季报引用);内置 12 类会议类型词典,支持自定义模板。
|
|
89
|
+
Generates five-section meeting minutes (info / conclusions / discussions / resolutions & action items / next meeting) with owners and deadlines on action items that feed into daily/weekly/monthly reports; 12 meeting-type glossaries, custom templates.
|
|
90
|
+
|
|
91
|
+
### prompt-pouch 锦囊 / Prompt Pouch
|
|
92
|
+
提示词本地管理台:生成并维护本地 HTML 管理页面(分组侧栏 / 搜索 / 拖拽与按钮排序 / 收藏 / {变量}插值 / 一键复制 / 标签全交互 / 导入导出 JSON 备份),数据存 data/prompts.json、页面与数据分离,双笔协作(页面直写 + AI 代笔)。
|
|
93
|
+
A local prompt management console: groups, search, drag-and-drop sorting, favorites, {variable} interpolation, one-click copy, full tag interactions, JSON import/export backups; data stored separately from the page for dual-hand collaboration.
|
|
94
|
+
|
|
95
|
+
### decision-log 决策日志 / Decision Log
|
|
96
|
+
重要决策四元组日志(结论 / 取舍权衡 / 被否方案 / 适用与失效条件):按主题聚合落盘、INDEX 索引、随时检索复盘。
|
|
97
|
+
Logs important decisions as four-tuples (conclusion / trade-offs / rejected alternatives / applicability & expiry conditions), aggregated by topic with an index for retrieval and review.
|
|
98
|
+
|
|
99
|
+
## 技能自造 · Meta Skills
|
|
100
|
+
|
|
101
|
+
### meta-forge 元锻炉 / Meta Forge
|
|
102
|
+
元技能:从需求出发锻造完整技能包(薄入口 SKILL.md + resources 拆分 + user-config),自动植入八大机制(CONFIG_VERSION 钥匙 / user-config 抽离 / reference 双轨 / 自检纪律 / preserve 保护清单 / 多文件隔离 / 零侵权脱敏离线 / 产物升级回炉),入仓库时自动登记分类表与发布清单。
|
|
103
|
+
The meta-skill that forges new skills: generates a complete skill package (thin SKILL.md entry + resources split + user-config) with eight mechanisms auto-implanted (config versioning, config extraction, reference dual-track, self-check discipline, preserve lists, multi-file isolation, zero-infringement offline discipline, artifact upgrade path).
|
|
104
|
+
|
|
105
|
+
### skill-doctor 技能体检 / Skill Doctor
|
|
106
|
+
技能体检:对技能目录跑静态检查(frontmatter 与目录名一致 / 资源引用可达 / 配置版本 / 占位符残留 / HTML 技能字体脱敏与多文件隔离与版本戳),三段式体检报告带文件行级定位。
|
|
107
|
+
A static health check for skill directories: frontmatter-name consistency, reachable resource references, config versions, leftover placeholders, HTML skill font sanitization and multi-file isolation; reports issues with file-and-line locations.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 安装 · Installation
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
npm i -g skill-forge-hub # global CLI
|
|
115
|
+
skill-forge ls # list all skills
|
|
116
|
+
skill-forge init # interactive pick & install to your agent's skill dir
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
Or copy any skill folder directly into your agent's skills directory — each skill is self-contained.
|
package/annual-report/SKILL.md
CHANGED
|
@@ -27,7 +27,7 @@ disable-model-invocation: false
|
|
|
27
27
|
|
|
28
28
|
## ⚙️ 配置与自定义模板
|
|
29
29
|
|
|
30
|
-
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(DISK/FORMATS/DIR/OPEN_HTML/THEME/TEMPLATE/ROLE/CONFIRM/CONFIG_VERSION/DATA_SOURCES)与自定义模板都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.md
|
|
30
|
+
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(DISK/FORMATS/DIR/OPEN_HTML/THEME/TEMPLATE/ROLE/CONFIRM/CONFIG_VERSION/DATA_SOURCES)与自定义模板都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.upstream.md` 对照文件,可按需手动合并新配置点。
|
|
31
31
|
|
|
32
32
|
- **THEME**:html 页面主题,tech 深蓝科技(默认)/ biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变;生成时写 `<html data-theme="THEME值">` 定默认,页面右下角换肤坞随点随换(localStorage 记忆(键按页内嵌唯一 ID 隔离、多份产物互不串台、改名/移动目录记忆不丢(生成时头部写 `<meta name="annual-id" content="<UUID>">`,每次 crypto.randomUUID() 生成标准 UUID v4(8-4-4-4-12 十六进制,禁止手写变体、禁止沿用占位与旧值);落盘写文件前顺扫落盘目录下本技能命名的 html,读各文件 id meta 查重,撞号重掷至不重复))、?shot 截图模式与打印隐藏)
|
|
33
33
|
- **DATA_SOURCES 意图路由**:用户说「把这些 git 地址 / 目录配置到这个 skill」「数据源加一下」「以后数据从 XX 仓库取」→ 默认指配置到 `user-config.md` 的 `DATA_SOURCES` 数据源清单(不是 SKILL.md、不是 disk-and-html.md);「git 地址」给的是 URL 或本地仓库路径、目录给的是本地路径都写进 DATA_SOURCES。用户话术只指向某个特定数据源(如「只算这个仓库」)→ 当次生效,不写配置。意图仍有歧义(如分不清「数据收集配置」与「落盘目录配置」)→ 一句话与用户确认后写入,不猜
|
|
@@ -36,7 +36,7 @@ disable-model-invocation: false
|
|
|
36
36
|
|
|
37
37
|
本 skill 当前配置版本为 `3`(对应 user-config.md 中的 `CONFIG_VERSION`)。执行时若发现 user-config.md 的 CONFIG_VERSION 与本节声明的当前版本不一致:
|
|
38
38
|
|
|
39
|
-
1. 先将旧 user-config.md 备份为 `user-config.md
|
|
39
|
+
1. 先将旧 user-config.md 备份为 `user-config.bak-<时间戳>.md`(同目录,绝不删除旧值)
|
|
40
40
|
2. 按本节「配置升级规则」迁移字段:新增字段补默认值、改名字段按映射改写、删除字段的值保留在备份中并在对话提示用户手动确认
|
|
41
41
|
3. 更新 CONFIG_VERSION 为当前版本
|
|
42
42
|
4. 对话中明确告知用户「检测到配置版本从 X 升级到 Y,旧配置已备份至 <路径>」
|
|
@@ -53,7 +53,7 @@ disable-model-invocation: false
|
|
|
53
53
|
|
|
54
54
|
## 产物升级(回炉)
|
|
55
55
|
|
|
56
|
-
生成 HTML 时头部写版本戳 `<meta name="sf-template" content="annual-report@
|
|
56
|
+
生成 HTML 时头部写版本戳 `<meta name="sf-template" content="annual-report@3">`(模板升级时递增 @N 并同步 reference.html 与本文档)。用户说「升级旧产物/回炉旧页面/旧年报换新样式」时:扫落盘目录下本技能命名的 html,读版本戳筛出旧版(无版本戳或缺少 `<meta name="annual-id">` 稳定 ID 的产物视为 v0 最旧版,一并进清单) → 列清单(文件/旧版本/手改状态——旧 html 正文与同目录 md 正文对比,不一致视为可能手改过)→ AskUserQuestion 选全部或部分 → 逐份升级:浅升级(仅 CSS/JS 变化)对旧页替换 `<style>` 块与交互脚本、正文内容原样保留;深升级(DOM 结构变化)从同目录 md 底稿按当前 reference.html 重建,先备份旧版 `.bak-时间戳` → 报告三段式:✅ 已升级清单 / ⚠️ 手改保留说明 / 🟡 失败项原因。模板改动分级:业务改动(板块/段落/标题体系)、数据格式改动(字段/存储结构)、页面改动(样式/布局/交互)任一发生即模板升级,版本戳 +1 并同步 reference.html 与本文档;纯措辞润色不 bump。每次生成 HTML 时顺扫落盘目录读版本戳:发现旧版产物主动告知「技能模板已升级至 vN,检测到 X 份旧版年报(vN-1 或无版本戳的历史产物),说『把我旧年报都升级成新样式』即可一键升级」,不让用户背触发语。
|
|
57
57
|
|
|
58
58
|
## 🔧 报修处理流程(用户报页面问题时)
|
|
59
59
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
-
<meta name="sf-template" content="annual-report@
|
|
6
|
+
<meta name="sf-template" content="annual-report@3">
|
|
7
7
|
<meta name="annual-id" content="REF-ANNUAL-0000">
|
|
8
8
|
<title>2026 研发年度总结</title>
|
|
9
9
|
<style>
|
|
@@ -93,7 +93,7 @@ body{
|
|
|
93
93
|
padding:34px 28px 26px;text-align:center;margin-bottom:18px;
|
|
94
94
|
box-shadow:var(--card-shadow);
|
|
95
95
|
background-image:repeating-linear-gradient(180deg, rgba(255,255,255,.012) 0 1px, transparent 1px 8px)}
|
|
96
|
-
.header-card h1{font-size:26px;letter-spacing:2px;margin-bottom:8px;
|
|
96
|
+
.header-card h1{font-size:26px;font-weight:900;letter-spacing:2px;margin-bottom:8px;
|
|
97
97
|
background:var(--title-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
|
|
98
98
|
animation:titleGlow 3s ease-in-out infinite}
|
|
99
99
|
@keyframes titleGlow{0%,100%{text-shadow:0 0 8px var(--glow),0 0 22px var(--glow-soft)}50%{text-shadow:0 0 14px var(--glow),0 0 34px var(--glow-soft)}}
|
|
@@ -361,6 +361,7 @@ footer{text-align:center;font-size:10px;color:var(--muted);letter-spacing:1px;pa
|
|
|
361
361
|
<tr><td>查全部命令</td><td><span class="cmd-in">skill-forge --help</span></td></tr>
|
|
362
362
|
<tr><td>问单个技能用法</td><td>直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出</td></tr>
|
|
363
363
|
<tr><td>问 SkillForge 本身</td><td>问「skillforge 怎么用」,AI 朗读本指引并打开排版页</td></tr>
|
|
364
|
+
<tr><td>查技能双语简介 / 实操文章</td><td><span class="cmd-in">SKILLS_CATALOG.md</span>(21 技能逐条中英简介)/ <span class="cmd-in">docs/articles/</span>(实操文章)/ <span class="cmd-in">docs/directory-submission.md</span>(目录收录素材)</td></tr>
|
|
364
365
|
</table>
|
|
365
366
|
<div class="faq">
|
|
366
367
|
<div class="faq-title">常见问题</div>
|
|
@@ -122,6 +122,7 @@ skill-forge init --skills daily-report,weekly-report --yes
|
|
|
122
122
|
| 查全部命令 | skill-forge --help |
|
|
123
123
|
| 问单个技能用法 | 直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出 |
|
|
124
124
|
| 问 SkillForge 本身 | 问「skillforge 怎么用」,AI 朗读本指引并打开排版页 |
|
|
125
|
+
| 查技能双语简介 / 实操文章 | SKILLS_CATALOG.md(21 技能逐条中英简介)/ docs/articles/(实操文章)/ docs/directory-submission.md(目录收录素材) |
|
|
125
126
|
|
|
126
127
|
## 六、常见问题
|
|
127
128
|
|
package/article-to-html/SKILL.md
CHANGED
|
@@ -18,7 +18,7 @@ Turn any Word/Markdown/plain-text article into a standalone styled HTML page and
|
|
|
18
18
|
## 配置版本机制(升级保护)
|
|
19
19
|
|
|
20
20
|
本 skill 当前配置版本为 `2`(对应 user-config.md 中的 `CONFIG_VERSION`)。执行时若发现 user-config.md 的 CONFIG_VERSION 与本节声明不一致:
|
|
21
|
-
1. 将旧 user-config.md 备份为 `user-config.md
|
|
21
|
+
1. 将旧 user-config.md 备份为 `user-config.bak-<时间戳>.md`
|
|
22
22
|
2. 保留用户全部自定义字段,按本节「当前版本变更记录」逐项改写旧字段
|
|
23
23
|
3. 更新 CONFIG_VERSION 为当前版本
|
|
24
24
|
4. 对话中明确告知用户「检测到配置版本从 X 升级到 Y,旧配置已备份至 <路径>」
|
|
@@ -361,6 +361,7 @@ footer{text-align:center;font-size:10px;color:var(--muted);letter-spacing:1px;pa
|
|
|
361
361
|
<tr><td>查全部命令</td><td><span class="cmd-in">skill-forge --help</span></td></tr>
|
|
362
362
|
<tr><td>问单个技能用法</td><td>直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出</td></tr>
|
|
363
363
|
<tr><td>问 SkillForge 本身</td><td>问「skillforge 怎么用」,AI 朗读本指引并打开排版页</td></tr>
|
|
364
|
+
<tr><td>查技能双语简介 / 实操文章</td><td><span class="cmd-in">SKILLS_CATALOG.md</span>(21 技能逐条中英简介)/ <span class="cmd-in">docs/articles/</span>(实操文章)/ <span class="cmd-in">docs/directory-submission.md</span>(目录收录素材)</td></tr>
|
|
364
365
|
</table>
|
|
365
366
|
<div class="faq">
|
|
366
367
|
<div class="faq-title">常见问题</div>
|
|
@@ -122,6 +122,7 @@ skill-forge init --skills daily-report,weekly-report --yes
|
|
|
122
122
|
| 查全部命令 | skill-forge --help |
|
|
123
123
|
| 问单个技能用法 | 直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出 |
|
|
124
124
|
| 问 SkillForge 本身 | 问「skillforge 怎么用」,AI 朗读本指引并打开排版页 |
|
|
125
|
+
| 查技能双语简介 / 实操文章 | SKILLS_CATALOG.md(21 技能逐条中英简介)/ docs/articles/(实操文章)/ docs/directory-submission.md(目录收录素材) |
|
|
125
126
|
|
|
126
127
|
## 六、常见问题
|
|
127
128
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> 你的个人配置全放在这里。skill-forge 升级技能时官方只更新 SKILL.md、design-system.md 与 resources/scripts,
|
|
4
4
|
> 本文件始终保留你的版本——页面主题色默认值放心改。
|
|
5
|
-
> 官方升级若带来新配置点,会另存 `user-config.md
|
|
5
|
+
> 官方升级若带来新配置点,会另存 `user-config.upstream.md` 对照文件到同目录,
|
|
6
6
|
> 你按需查看并手动合并新配置点到本文件。
|
|
7
7
|
|
|
8
8
|
## ⚙️ 默认配置(用户可手动修改;临时口头要求永远优先)
|
package/cli.js
CHANGED
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*
|
|
6
6
|
* skill-forge ls 列出全部技能(分类 + 名称 + 说明)
|
|
7
7
|
* skill-forge init 交互式挑选技能,装进 AI 助手的技能目录
|
|
8
|
-
* skill-forge update
|
|
8
|
+
* skill-forge update 升级已安装技能(无参数时列出已装清单:a=全部 / 编号
|
|
9
|
+
* 挑部分升级;配置版本感知:官方配置结构变化时
|
|
9
10
|
* 先备份你的配置,再询问覆盖/保留/稍后处理)
|
|
10
11
|
*
|
|
11
12
|
* 零依赖,Node >= 14。
|
|
@@ -162,17 +163,18 @@ function copyDir(src, dest, preserve, hits, upstreams, genUpstream, rel, files)
|
|
|
162
163
|
files.push(r);
|
|
163
164
|
if (preserve.has(entry.toLowerCase()) && fs.existsSync(d)) {
|
|
164
165
|
hits.push(d);
|
|
165
|
-
// 配置演进:官方版与本地版内容不同时,另存 .upstream
|
|
166
|
+
// 配置演进:官方版与本地版内容不同时,另存 user-config.upstream.md 对照文件(.md 结尾双击即开),供用户手动合并新配置点
|
|
166
167
|
const sData = fs.readFileSync(s, "utf8");
|
|
167
168
|
const dData = fs.readFileSync(d, "utf8");
|
|
168
169
|
if (sData !== dData) {
|
|
169
170
|
if (genUpstream !== false) {
|
|
170
|
-
|
|
171
|
-
|
|
171
|
+
const upFile = d.replace(/\.md$/i, "") + ".upstream.md"; // 保留 .md 结尾,双击即开
|
|
172
|
+
fs.writeFileSync(upFile, sData);
|
|
173
|
+
upstreams.push(upFile);
|
|
172
174
|
}
|
|
173
175
|
} else {
|
|
174
176
|
// 内容已一致(用户已手动合并或本就相同),旧对照文件已无意义
|
|
175
|
-
try { fs.unlinkSync(d + ".upstream"); } catch (e) {}
|
|
177
|
+
try { fs.unlinkSync(d.replace(/\.md$/i, "") + ".upstream.md"); } catch (e) {}
|
|
176
178
|
}
|
|
177
179
|
}
|
|
178
180
|
else fs.copyFileSync(s, d);
|
|
@@ -187,7 +189,7 @@ function pruneDir(src, dest, preserve, manifest, rel) {
|
|
|
187
189
|
for (const entry of fs.readdirSync(dest)) {
|
|
188
190
|
const lower = entry.toLowerCase();
|
|
189
191
|
if (COPY_EXCLUDE.has(lower)) continue;
|
|
190
|
-
if (lower === "node_modules" || lower === MANIFEST_FILE || lower.
|
|
192
|
+
if (lower === "node_modules" || lower === MANIFEST_FILE || lower.includes(".upstream") || lower.includes(".bak-")) continue;
|
|
191
193
|
if (preserve.has(lower)) continue; // 用户文件永不删除
|
|
192
194
|
const d = path.join(dest, entry);
|
|
193
195
|
const s = path.join(src, entry);
|
|
@@ -296,6 +298,32 @@ async function selectSkillsInteractive(skills, target) {
|
|
|
296
298
|
return chosen;
|
|
297
299
|
}
|
|
298
300
|
|
|
301
|
+
// 交互挑选已安装技能:a=全部升级 / 编号挑选(逗号分隔,如 1,3)/ q=退出
|
|
302
|
+
async function selectInstalledInteractive(installed) {
|
|
303
|
+
let text = "\n已安装技能(a=全部升级;编号挑选,逗号分隔,如 1,3;q=退出):\n\n";
|
|
304
|
+
installed.forEach((s, i) => {
|
|
305
|
+
text += ` [${i + 1}] ${s.name.padEnd(16)}${shortDesc(s.description)}\n`;
|
|
306
|
+
});
|
|
307
|
+
text += `\n共 ${installed.length} 件已安装技能\n`;
|
|
308
|
+
console.log(text);
|
|
309
|
+
const ans = await ask("你的选择:");
|
|
310
|
+
if (/^q$/i.test(ans)) return [];
|
|
311
|
+
if (/^a$/i.test(ans)) return installed; // 全部升级
|
|
312
|
+
const chosen = [];
|
|
313
|
+
for (const part of ans.split(/[,,\s]+/)) {
|
|
314
|
+
if (!part) continue;
|
|
315
|
+
const i = parseInt(part, 10);
|
|
316
|
+
if (!isNaN(i) && i >= 1 && i <= installed.length && !chosen.includes(installed[i - 1])) {
|
|
317
|
+
chosen.push(installed[i - 1]);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
if (chosen.length === 0) {
|
|
321
|
+
console.log("未识别任何编号,已取消。");
|
|
322
|
+
return [];
|
|
323
|
+
}
|
|
324
|
+
return chosen;
|
|
325
|
+
}
|
|
326
|
+
|
|
299
327
|
// 解析目标技能目录(--target 优先,否则自动探测;失败返回 null)
|
|
300
328
|
async function resolveTarget(argv, cmd) {
|
|
301
329
|
if (argv.target) return expandHome(argv.target);
|
|
@@ -333,26 +361,26 @@ async function upgradeSkill(src, dest, argv, existed) {
|
|
|
333
361
|
const officialVer = parseUserConfigVersion(officialCfg);
|
|
334
362
|
const localVer = parseUserConfigVersion(localCfg);
|
|
335
363
|
if (officialVer > localVer) {
|
|
336
|
-
bakFile = localCfg + ".bak-" + stamp();
|
|
364
|
+
bakFile = localCfg.replace(/\.md$/i, "") + ".bak-" + stamp() + ".md"; // 保留 .md 结尾,双击即开
|
|
337
365
|
fs.copyFileSync(localCfg, bakFile);
|
|
338
366
|
console.log(`\n⚠️ ${path.basename(dest)} 配置结构升级:官方 v${officialVer} > 你的 v${localVer}`);
|
|
339
367
|
console.log(` 已备份你的配置:${path.basename(bakFile)}`);
|
|
340
368
|
if (process.stdin.isTTY && !argv.yes) {
|
|
341
369
|
console.log(" [1] 官方覆盖 —— 用官方新配置替换(旧配置在备份中,随时找回)");
|
|
342
|
-
console.log(" [2] 保留我的 —— 不覆盖,官方新配置另存 .upstream 对照(默认)");
|
|
370
|
+
console.log(" [2] 保留我的 —— 不覆盖,官方新配置另存 user-config.upstream.md 对照(默认)");
|
|
343
371
|
console.log(" [3] 稍后处理 —— 本次只升级技能文件,不生成对照文件,配置改天自己合并");
|
|
344
372
|
const ans = await ask(" 你的选择(回车默认 2):");
|
|
345
373
|
if (ans === "1") mode = "official";
|
|
346
374
|
else if (ans === "3") mode = "later";
|
|
347
375
|
} else {
|
|
348
|
-
console.log(" 非交互/--yes:默认保留你的配置,官方新版另存 .upstream 对照");
|
|
376
|
+
console.log(" 非交互/--yes:默认保留你的配置,官方新版另存 user-config.upstream.md 对照");
|
|
349
377
|
}
|
|
350
378
|
}
|
|
351
379
|
}
|
|
352
380
|
|
|
353
381
|
if (mode === "official") {
|
|
354
382
|
fs.unlinkSync(localCfg); // 备份已做,移除后 copyDir 正常覆盖
|
|
355
|
-
try { fs.unlinkSync(localCfg + ".upstream"); } catch (e) {} // 旧对照已无意义,清理
|
|
383
|
+
try { fs.unlinkSync(localCfg.replace(/\.md$/i, "") + ".upstream.md"); } catch (e) {} // 旧对照已无意义,清理
|
|
356
384
|
}
|
|
357
385
|
const preserve = loadPreserveSet(src);
|
|
358
386
|
const manifest = loadManifest(dest);
|
|
@@ -515,8 +543,19 @@ async function cmdUpdate(argv) {
|
|
|
515
543
|
return;
|
|
516
544
|
}
|
|
517
545
|
|
|
546
|
+
// 2.5 无 --skills 且交互环境:列出已装清单,a=全部 / 编号挑部分升级
|
|
547
|
+
let picked = false;
|
|
548
|
+
if (!argv.skills && !argv.yes && process.stdin.isTTY) {
|
|
549
|
+
installed = await selectInstalledInteractive(installed);
|
|
550
|
+
if (installed.length === 0) {
|
|
551
|
+
console.log("已取消。");
|
|
552
|
+
return;
|
|
553
|
+
}
|
|
554
|
+
picked = true; // 清单选定即确认,不再重复询问
|
|
555
|
+
}
|
|
556
|
+
|
|
518
557
|
// 3. 确认
|
|
519
|
-
if (!argv.yes) {
|
|
558
|
+
if (!argv.yes && !picked) {
|
|
520
559
|
console.log(`\n将升级 ${installed.length} 件技能:`);
|
|
521
560
|
installed.forEach((s) => console.log(` - ${s.name}`));
|
|
522
561
|
if (process.stdin.isTTY) {
|
|
@@ -546,8 +585,9 @@ function printHelp() {
|
|
|
546
585
|
用法:
|
|
547
586
|
skill-forge ls 列出全部技能(分类 + 名称 + 说明)
|
|
548
587
|
skill-forge init 列清单交互挑选:a=全部安装 / 编号挑选(已装标 ★,确认时可跳过已装)
|
|
549
|
-
skill-forge update
|
|
588
|
+
skill-forge update 升级已安装技能(无参数时列出已装清单:a=全部 / 编号挑部分升级)
|
|
550
589
|
skill-forge update --skills a,b 只升级指定技能(未安装的提示跳过)
|
|
590
|
+
skill-forge update --yes 跳过清单与确认,直接升级全部已装技能(脚本友好)
|
|
551
591
|
skill-forge init --target <目录> 指定技能目录(默认自动探测常见助手目录)
|
|
552
592
|
skill-forge init --skills a,b 跳过选择,直接安装/升级指定技能(适合脚本与单件补装)
|
|
553
593
|
skill-forge init --yes 跳过确认,直接安装
|
|
@@ -556,8 +596,8 @@ function printHelp() {
|
|
|
556
596
|
升级保护(init/update 均生效):
|
|
557
597
|
· 目标目录已存在的 user-config.md(及技能 .preserve 清单声明的文件)不会被覆盖
|
|
558
598
|
· 官方 user-config.md 的 CONFIG_VERSION 高于你的本地版本(配置结构变化)时:
|
|
559
|
-
先备份你的配置为 user-config.md.
|
|
560
|
-
[1] 官方覆盖(备份在侧,随时找回)/ [2] 保留我的 + 官方版另存 .upstream 对照(默认)
|
|
599
|
+
先备份你的配置为 user-config.bak-<时间戳>.md(保留 .md 结尾,双击即开),再询问三选一——
|
|
600
|
+
[1] 官方覆盖(备份在侧,随时找回)/ [2] 保留我的 + 官方版另存 user-config.upstream.md 对照(默认)
|
|
561
601
|
[3] 稍后处理(不生成对照文件);--yes 或非交互时默认 [2]
|
|
562
602
|
· 升级按 .installed-manifest 安装清单同步官方文件增删:只清理清单内官方已删除的文件,
|
|
563
603
|
用户自建文件不动;旧版本安装无清单时跳过清理,升级后补写
|
package/commit-heatmap/SKILL.md
CHANGED
|
@@ -21,7 +21,7 @@ disable-model-invocation: false
|
|
|
21
21
|
|
|
22
22
|
## ⚙️ 配置与自定义
|
|
23
23
|
|
|
24
|
-
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(REPO/DAYS/DIR/OPEN_HTML/THEME/EXCLUDE)都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.md
|
|
24
|
+
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(REPO/DAYS/DIR/OPEN_HTML/THEME/EXCLUDE)都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.upstream.md` 对照文件,可按需手动合并新配置点。
|
|
25
25
|
|
|
26
26
|
- **THEME**:页面主题,github 经典绿(默认)/ dark 深夜绿 / amber 琥珀金;生成时写 `<html data-theme="THEME值">` 定默认,页面右下角换肤坞随点随换(localStorage 记忆,键按页内嵌唯一 ID 隔离、多份产物互不串台、改名/移动目录记忆不丢;生成时头部写 `<meta name="heat-id" content="<UUID>">`,每次 crypto.randomUUID() 生成标准 UUID v4(8-4-4-4-12 十六进制,禁止手写变体、禁止沿用占位与旧值);落盘写文件前顺扫落盘目录下本技能命名的 html,读各文件 id meta 查重,撞号重掷至不重复)
|
|
27
27
|
|
|
@@ -29,7 +29,7 @@ disable-model-invocation: false
|
|
|
29
29
|
|
|
30
30
|
本 skill 当前配置版本为 `1`(对应 user-config.md 中的 `CONFIG_VERSION`)。执行时若发现 user-config.md 的 CONFIG_VERSION 与本节声明不一致:
|
|
31
31
|
|
|
32
|
-
1. 先将旧 user-config.md 备份为 `user-config.md
|
|
32
|
+
1. 先将旧 user-config.md 备份为 `user-config.bak-<时间戳>.md`(同目录,绝不删除旧值)
|
|
33
33
|
2. 按本节「配置升级规则」迁移字段:新增字段补默认值、改名字段按映射改写、删除字段的值保留在备份中并在对话提示用户手动确认
|
|
34
34
|
3. 更新 CONFIG_VERSION 为当前版本
|
|
35
35
|
4. 对话中明确告知用户「检测到配置版本从 X 升级到 Y,旧配置已备份至 <路径>」
|
|
@@ -361,6 +361,7 @@ footer{text-align:center;font-size:10px;color:var(--muted);letter-spacing:1px;pa
|
|
|
361
361
|
<tr><td>查全部命令</td><td><span class="cmd-in">skill-forge --help</span></td></tr>
|
|
362
362
|
<tr><td>问单个技能用法</td><td>直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出</td></tr>
|
|
363
363
|
<tr><td>问 SkillForge 本身</td><td>问「skillforge 怎么用」,AI 朗读本指引并打开排版页</td></tr>
|
|
364
|
+
<tr><td>查技能双语简介 / 实操文章</td><td><span class="cmd-in">SKILLS_CATALOG.md</span>(21 技能逐条中英简介)/ <span class="cmd-in">docs/articles/</span>(实操文章)/ <span class="cmd-in">docs/directory-submission.md</span>(目录收录素材)</td></tr>
|
|
364
365
|
</table>
|
|
365
366
|
<div class="faq">
|
|
366
367
|
<div class="faq-title">常见问题</div>
|
|
@@ -122,6 +122,7 @@ skill-forge init --skills daily-report,weekly-report --yes
|
|
|
122
122
|
| 查全部命令 | skill-forge --help |
|
|
123
123
|
| 问单个技能用法 | 直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出 |
|
|
124
124
|
| 问 SkillForge 本身 | 问「skillforge 怎么用」,AI 朗读本指引并打开排版页 |
|
|
125
|
+
| 查技能双语简介 / 实操文章 | SKILLS_CATALOG.md(21 技能逐条中英简介)/ docs/articles/(实操文章)/ docs/directory-submission.md(目录收录素材) |
|
|
125
126
|
|
|
126
127
|
## 六、常见问题
|
|
127
128
|
|
package/daily-report/SKILL.md
CHANGED
|
@@ -27,7 +27,7 @@ disable-model-invocation: false
|
|
|
27
27
|
|
|
28
28
|
## ⚙️ 配置与自定义模板
|
|
29
29
|
|
|
30
|
-
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(DISK/FORMATS/DIR/OPEN_HTML/THEME/TEMPLATE/ROLE/CONFIRM/CONFIG_VERSION/DATA_SOURCES)与自定义模板都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.md
|
|
30
|
+
**执行本 skill 前必须先 Read 同目录 `user-config.md`**:默认配置(DISK/FORMATS/DIR/OPEN_HTML/THEME/TEMPLATE/ROLE/CONFIRM/CONFIG_VERSION/DATA_SOURCES)与自定义模板都在该文件中,以它为准。升级技能时 user-config.md 不会被覆盖,你的修改永久保留;官方更新配置时另存 `user-config.upstream.md` 对照文件,可按需手动合并新配置点。
|
|
31
31
|
|
|
32
32
|
- **THEME**:html 页面主题,tech 深蓝科技(默认)/ biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变;生成时写 `<html data-theme="THEME值">` 定默认,页面右下角换肤坞随点随换(localStorage 记忆(键按页内嵌唯一 ID 隔离、多份产物互不串台、改名/移动目录记忆不丢(生成时头部写 `<meta name="daily-id" content="<UUID>">`,每次 crypto.randomUUID() 生成标准 UUID v4(8-4-4-4-12 十六进制,禁止手写变体、禁止沿用占位与旧值);落盘写文件前顺扫落盘目录下本技能命名的 html,读各文件 id meta 查重,撞号重掷至不重复))、?shot 截图模式与打印隐藏)
|
|
33
33
|
- **DATA_SOURCES 意图路由**:用户说「把这些 git 地址 / 目录配置到这个 skill」「数据源加一下」「以后数据从 XX 仓库取」→ 默认指配置到 `user-config.md` 的 `DATA_SOURCES` 数据源清单(不是 SKILL.md、不是 disk-and-html.md);「git 地址」给的是 URL 或本地仓库路径、目录给的是本地路径都写进 DATA_SOURCES。用户话术只指向某个特定数据源(如「只算这个仓库」)→ 当次生效,不写配置。意图仍有歧义(如分不清「数据收集配置」与「落盘目录配置」)→ 一句话与用户确认后写入,不猜
|
|
@@ -36,7 +36,7 @@ disable-model-invocation: false
|
|
|
36
36
|
|
|
37
37
|
本 skill 当前配置版本为 `3`(对应 user-config.md 中的 `CONFIG_VERSION`)。执行时若发现 user-config.md 的 CONFIG_VERSION 与本节声明的当前版本不一致:
|
|
38
38
|
|
|
39
|
-
1. 先将旧 user-config.md 备份为 `user-config.md
|
|
39
|
+
1. 先将旧 user-config.md 备份为 `user-config.bak-<时间戳>.md`(同目录,绝不删除旧值)
|
|
40
40
|
2. 按本节「配置升级规则」迁移字段:新增字段补默认值、改名字段按映射改写、删除字段的值保留在备份中并在对话提示用户手动确认
|
|
41
41
|
3. 更新 CONFIG_VERSION 为当前版本
|
|
42
42
|
4. 对话中明确告知用户「检测到配置版本从 X 升级到 Y,旧配置已备份至 <路径>」
|
|
@@ -361,6 +361,7 @@ footer{text-align:center;font-size:10px;color:var(--muted);letter-spacing:1px;pa
|
|
|
361
361
|
<tr><td>查全部命令</td><td><span class="cmd-in">skill-forge --help</span></td></tr>
|
|
362
362
|
<tr><td>问单个技能用法</td><td>直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出</td></tr>
|
|
363
363
|
<tr><td>问 SkillForge 本身</td><td>问「skillforge 怎么用」,AI 朗读本指引并打开排版页</td></tr>
|
|
364
|
+
<tr><td>查技能双语简介 / 实操文章</td><td><span class="cmd-in">SKILLS_CATALOG.md</span>(21 技能逐条中英简介)/ <span class="cmd-in">docs/articles/</span>(实操文章)/ <span class="cmd-in">docs/directory-submission.md</span>(目录收录素材)</td></tr>
|
|
364
365
|
</table>
|
|
365
366
|
<div class="faq">
|
|
366
367
|
<div class="faq-title">常见问题</div>
|
|
@@ -122,6 +122,7 @@ skill-forge init --skills daily-report,weekly-report --yes
|
|
|
122
122
|
| 查全部命令 | skill-forge --help |
|
|
123
123
|
| 问单个技能用法 | 直接问「XX 技能怎么用」,AI 会读该技能的使用说明输出 |
|
|
124
124
|
| 问 SkillForge 本身 | 问「skillforge 怎么用」,AI 朗读本指引并打开排版页 |
|
|
125
|
+
| 查技能双语简介 / 实操文章 | SKILLS_CATALOG.md(21 技能逐条中英简介)/ docs/articles/(实操文章)/ docs/directory-submission.md(目录收录素材) |
|
|
125
126
|
|
|
126
127
|
## 六、常见问题
|
|
127
128
|
|