skill-forge-hub 1.1.0 → 1.2.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.
Files changed (107) hide show
  1. package/CHANGELOG.en.md +10 -0
  2. package/CHANGELOG.md +10 -0
  3. package/README.en.md +3 -1
  4. package/README.md +3 -1
  5. package/SKILLS_CATALOG.md +119 -0
  6. package/annual-report/SKILL.md +3 -3
  7. package/annual-report/resources/reference.html +2 -2
  8. package/annual-report/resources/skillforge-guide.html +1 -0
  9. package/annual-report/resources/skillforge-guide.txt +1 -0
  10. package/annual-report/user-config.md +1 -1
  11. package/article-to-html/SKILL.md +1 -1
  12. package/article-to-html/resources/skillforge-guide.html +1 -0
  13. package/article-to-html/resources/skillforge-guide.txt +1 -0
  14. package/article-to-html/user-config.md +1 -1
  15. package/cli.js +54 -14
  16. package/commit-heatmap/SKILL.md +2 -2
  17. package/commit-heatmap/resources/skillforge-guide.html +1 -0
  18. package/commit-heatmap/resources/skillforge-guide.txt +1 -0
  19. package/commit-heatmap/user-config.md +1 -1
  20. package/daily-report/SKILL.md +2 -2
  21. package/daily-report/resources/skillforge-guide.html +1 -0
  22. package/daily-report/resources/skillforge-guide.txt +1 -0
  23. package/daily-report/user-config.md +1 -1
  24. package/data-prepper/SKILL.md +2 -2
  25. package/data-prepper/resources/skillforge-guide.html +1 -0
  26. package/data-prepper/resources/skillforge-guide.txt +1 -0
  27. package/data-prepper/user-config.md +1 -1
  28. package/decision-log/SKILL.md +2 -2
  29. package/decision-log/resources/skillforge-guide.html +1 -0
  30. package/decision-log/resources/skillforge-guide.txt +1 -0
  31. package/decision-log/user-config.md +1 -1
  32. package/deck-stage/SKILL.md +3 -10
  33. package/deck-stage/resources/skillforge-guide.html +1 -0
  34. package/deck-stage/resources/skillforge-guide.txt +1 -0
  35. package/docs/articles/ai-daily-report-correct-pose.md +39 -0
  36. package/docs/articles/ai-prompt-management-skill-pouch.md +37 -0
  37. package/docs/directory-submission.md +106 -0
  38. package/docs/install.en.md +3 -3
  39. package/docs/install.md +3 -3
  40. package/docs/usage-examples.en.md +1 -1
  41. package/docs/usage-examples.md +1 -1
  42. package/magic-deck/SKILL.md +4 -5
  43. package/magic-deck/resources/skillforge-guide.html +1 -0
  44. package/magic-deck/resources/skillforge-guide.txt +1 -0
  45. package/magic-deck/user-config.md +1 -1
  46. package/meeting-minutes/SKILL.md +1 -1
  47. package/meeting-minutes/resources/skillforge-guide.html +1 -0
  48. package/meeting-minutes/resources/skillforge-guide.txt +1 -0
  49. package/meeting-minutes/user-config.md +1 -1
  50. package/meta-forge/SKILL.md +2 -2
  51. package/meta-forge/resources/skillforge-guide.html +1 -0
  52. package/meta-forge/resources/skillforge-guide.txt +1 -0
  53. package/meta-forge/user-config.md +1 -1
  54. package/monthly-report/SKILL.md +1 -1
  55. package/monthly-report/resources/skillforge-guide.html +1 -0
  56. package/monthly-report/resources/skillforge-guide.txt +1 -0
  57. package/monthly-report/user-config.md +1 -1
  58. package/one-pager/SKILL.md +20 -8
  59. package/one-pager/resources/design-process.md +117 -0
  60. package/one-pager/resources/generate.md +19 -7
  61. package/one-pager/resources/html-rules.md +55 -10
  62. package/one-pager/resources/reference.html +1192 -111
  63. package/one-pager/resources/skillforge-guide.html +1 -0
  64. package/one-pager/resources/skillforge-guide.txt +1 -0
  65. package/one-pager/resources/usage-guide.md +18 -4
  66. package/one-pager/resources/user-template-example.html +63 -0
  67. package/one-pager/user-config.md +7 -4
  68. package/package.json +3 -2
  69. package/prompt-pouch/SKILL.md +4 -15
  70. package/prompt-pouch/resources/reference.html +180 -42
  71. package/prompt-pouch/resources/skillforge-guide.html +1 -0
  72. package/prompt-pouch/resources/skillforge-guide.txt +1 -0
  73. package/prompt-pouch/resources/usage-guide.md +3 -3
  74. package/quarterly-report/SKILL.md +1 -1
  75. package/quarterly-report/resources/skillforge-guide.html +1 -0
  76. package/quarterly-report/resources/skillforge-guide.txt +1 -0
  77. package/quarterly-report/user-config.md +1 -1
  78. package/release-notes/SKILL.md +2 -2
  79. package/release-notes/resources/skillforge-guide.html +1 -0
  80. package/release-notes/resources/skillforge-guide.txt +1 -0
  81. package/release-notes/user-config.md +1 -1
  82. package/skill-doctor/SKILL.md +2 -2
  83. package/skill-doctor/resources/skillforge-guide.html +1 -0
  84. package/skill-doctor/resources/skillforge-guide.txt +1 -0
  85. package/skill-doctor/user-config.md +1 -1
  86. package/spec-doc2spec/SKILL.md +3 -9
  87. package/spec-doc2spec/resources/skillforge-guide.html +1 -0
  88. package/spec-doc2spec/resources/skillforge-guide.txt +1 -0
  89. package/spec-doc2spec/user-config.md +1 -1
  90. package/spec-spec2doc/SKILL.md +3 -12
  91. package/spec-spec2doc/resources/skillforge-guide.html +1 -0
  92. package/spec-spec2doc/resources/skillforge-guide.txt +1 -0
  93. package/spec-spec2doc/user-config.md +1 -1
  94. package/team-report-collector/SKILL.md +2 -2
  95. package/team-report-collector/resources/skillforge-guide.html +1 -0
  96. package/team-report-collector/resources/skillforge-guide.txt +1 -0
  97. package/team-report-collector/user-config.md +1 -1
  98. package/template/SKILL.md +2 -2
  99. package/template/user-config.md +1 -1
  100. package/twin-docs/SKILL.md +2 -2
  101. package/twin-docs/resources/skillforge-guide.html +1 -0
  102. package/twin-docs/resources/skillforge-guide.txt +1 -0
  103. package/twin-docs/user-config.md +1 -1
  104. package/weekly-report/SKILL.md +2 -2
  105. package/weekly-report/resources/skillforge-guide.html +1 -0
  106. package/weekly-report/resources/skillforge-guide.txt +1 -0
  107. package/weekly-report/user-config.md +1 -1
@@ -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,22 +2,36 @@
2
2
 
3
3
  ## 能做什么
4
4
 
5
- 把一个主题或一句话想法变成一页纸 HTML 海报:大标题渐变字 + 金句 + 要点块(3-5 条)+ 页脚,纵向一屏排版、打印友好,可顺带截出 PNG 图片,适合分享、发群、贴文档。
5
+ 把一个主题或一句话想法变成一页纸 HTML 海报:大标题 + 金句 + 要点块(3-5 条)+ 页脚,纵向一屏排版、打印友好,可顺带截出 PNG 图片,适合分享、发群、贴文档。内置 **32 套布局模板 × 25 套配色主题 = 800 种版式**(七组流派分类:现代主义/编辑出版/数据商务/艺术流派/国风雅韵/先锋实验/场景专用,含瑞士/包豪斯/蒙德里安/波普/欧普/新艺术/水墨/红金宫廷/青绿山水/酸性/故障/蒸汽波/赛博等设计史与先锋版式,配色含莫兰迪/装饰艺术/波普/酸性荧光/赛博霓虹等业内专业主题),页面顶部模板坞 + 右下角主题坞随手换,两坞默认折叠成小胶囊不遮正文,点开选完自动收起,换完自动记住。
6
6
 
7
7
  ## 怎么用
8
8
 
9
9
  1. 说「**做张海报**」+ 主题(如「做一张『AI 改变工作』的海报」)
10
10
  2. 我提炼草稿(标题/金句/要点)→ 你确认或改口 → 生成
11
- 3. 产出:`posters/poster-<主题>.html` + `.md` 底稿 + `.png` 截图(SHOT 开启时),自动打开浏览器,落盘后报路径
11
+ 3. 产出:`posters/<主题>/` 目录内三件套——`poster.html` + `poster.md` 底稿 + `poster.png` 截图(SHOT 开启时),自动打开浏览器,落盘后报路径
12
+
13
+ ## 页面内切换(生成后随时可换)
14
+
15
+ - **模板坞**(页面顶部,默认折叠成「模板 · 当前模板」小胶囊,点一下展开):三十二标签按七组流派分组——现代主义(经典 / 极简 / 瑞士 / 视窗)· 编辑出版(杂志 / 编辑刊 / 大字报 / 报纸)· 数据商务(数据 / 栅格 / 时间线 / 巨幕)· 艺术流派(包豪斯 / 蒙德里安 / 孟菲斯 / 展览 / 波普 / 欧普 / 新艺术)· 国风雅韵(水墨 / 宫廷 / 青绿)· 先锋实验(粗野 / 酸性 / 故障 / 蒸汽波 / 赛博)· 场景专用(学术 / 招聘 / 邀请 / 通知 / 水印),三十二套布局骨架随点随换,选完自动收起;若你放了用户模板,还会出现「我的模板」分组
16
+ - **主题坞**(右下角,默认折叠成「色点 · 主题名」小胶囊,点一下展开):二十五色点 5×5(色点放大,hover 悬浮弹出主题名)——深蓝科技 / 浅色商务 / IDEA 黑亮 / IDEA 白亮 / 温暖渐变 / 水墨国风 / 翡翠绿 / 玫瑰金 / 午夜金 / 霓虹紫 / 瑞士红黑 / 包豪斯三原色 / 孟菲斯撞色 / 莫兰迪 / 北欧 / 装饰艺术 / 黑白电影 / 经典蓝 / 波普 / 复古胶片 / 珊瑚橙 / 酸性荧光 / 赛博霓虹 / 奶油纸 / 学术蓝,随点随换,选完自动收起
17
+ - 模板与主题可任意组合(如「杂志 + 温暖渐变」),选择会记忆,下次打开同一份海报仍是上次的样式;两坞折叠后只剩右上、右下两枚小胶囊,正文一览无余
12
18
 
13
19
  ## 可改配置(user-config.md)
14
20
 
15
- - `THEME`:tech 深蓝科技 / biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变
21
+ - `TEMPLATE`:默认布局模板(classic 经典舞台 / minimal 极简留白 / swiss 瑞士国际 / window 视窗 / magazine 杂志社论 / editorial 编辑刊 / typo 大字报 / newspaper 报纸新闻 / dashboard 数据仪表 / grid 卡片栅格 / timeline 时间叙事 / hero 巨幕大字 / bauhaus 包豪斯 / mondrian 蒙德里安 / memphis 孟菲斯 / exhibit 展览 / popart 波普艺术 / opart 欧普艺术 / artnouveau 新艺术 / brutalist 新粗野 / acid 酸性设计 / glitch 故障艺术 / vaporwave 蒸汽波 / cyber 赛博霓虹 / academic 学术会议 / recruit 招聘 / invitation 邀请函 / notice 通知公告 / inkwash 水墨 / palace 红金宫廷 / landscape 青绿山水 / watermark 水印公文)
22
+ - `THEME`:默认主题(tech 深蓝科技 / biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变 / ink 水墨国风 / jade 翡翠绿 / rose 玫瑰金 / midnight 午夜金 / violet 霓虹紫 / swiss 瑞士红黑 / bauhaus 包豪斯三原色 / memphis 孟菲斯撞色 / morandi 莫兰迪 / nordic 北欧 / artdeco 装饰艺术 / noir 黑白电影 / classicblue 经典蓝 / pop 波普 / retro 复古胶片 / coral 珊瑚橙 / acid 酸性荧光 / cyber 赛博霓虹 / cream 奶油纸 / academic 学术蓝)
16
23
  - `ASPECT`:截图纵横比(3:4 竖版 / 1:1 方版 / 16:9 横版)
17
24
  - `SHOT`:是否顺带截 PNG
18
- - `DIR`:落盘目录(默认 posters/)
25
+ - `TPL_DIR`:你的专属模板库目录,默认与海报库根目录平级(如 `posters/` 旁的 `user-templates/`),所有海报产物共用;也可写绝对路径自定义;把你的模板文件放进去,以后生成海报时模板坞自动出现「我的模板」分组
26
+ - `DIR`:海报库根目录(默认 posters/,可写绝对路径);每张海报一个 slug 子目录,三件套成组互不混杂
27
+
28
+ ## 用户模板库(DIY 专属模板)
29
+
30
+ 1. 把 `resources/user-template-example.html` 复制到 TPL_DIR 目录,改名后照三段式注释改(META 元信息 / CSS 样式 / FN 渲染函数),颜色一律用主题令牌,25 套主题都能套
31
+ 2. 下次生成海报时自动内嵌,模板坞「我的模板」分组随点随换,和官方模板一样会被记住
19
32
 
20
33
  ## 使用提示
21
34
 
22
35
  - 海报页面无滚动条、一屏展示,长内容会自动缩放
23
36
  - 打印即所得:Ctrl/Cmd+P 可直接打印成纸质海报
37
+ - 换模板不会丢内容:同一份数据在三十二套布局间流转,挑最喜欢的那版截图分享即可
@@ -0,0 +1,63 @@
1
+ <!-- ==============================================================
2
+ one-pager 用户模板文件(放在 TPL_DIR 目录下,默认与海报库根目录平级的 user-templates/)
3
+
4
+ ▍三个区块,缺一不可:
5
+
6
+ 1) TPL_META —— 模板元信息:
7
+ name 英文 slug(唯一标识,禁止与官方 16 个重名:classic/minimal/
8
+ magazine/hero/timeline/grid/dashboard/brutalist/swiss/bauhaus/
9
+ mondrian/editorial/typo/memphis/exhibit/window)
10
+ label 中文显示名(模板坞按钮文案,≤5 字为佳)
11
+ 2) TPL_CSS —— 模板样式:选择器一律以 .tpl-{name} 开头;颜色只准用
12
+ 13 个主题令牌(--bg/--bg2/--panel/--panel-solid/--text/--muted/--accent/
13
+ --accent2/--border/--glow/--glow-soft/--title-grad/--tag-bg),
14
+ 禁止写死色值,这样 21 套主题套上去都成立
15
+ 3) TPL_FN —— 渲染函数:TPL['{name}'] = function(){ return 'HTML 字符串' }
16
+ 可复用 helper:esc() 转义 / N(i) 双位序号 / F 页脚常量 / DATA 六字段
17
+ (DATA.tag 徽章 / DATA.title 标题 / DATA.quote 金句 / DATA.points 要点 /
18
+ DATA.footnote 页脚注 / DATA.kpi 仪表值);要入场动画的元素加 class="anim"
19
+
20
+ ▍生成海报时,AI 会把三个区块分别内嵌进 reference.html 副本:
21
+ CSS → <style> 模板区末尾;FN → TPL 对象闭合后;按钮 + 分组标 → 模板坞;
22
+ name → TPLS 数组。本文件是片段包,不是海报,无需打开预览。
23
+
24
+ 复制本文件改名后照葫芦画瓢即可 DIY 专属模板。
25
+ ============================================================== -->
26
+ <!--TPL_META
27
+ name: certificate
28
+ label: 荣誉证书
29
+ -->
30
+ <!--TPL_CSS_BEGIN-->
31
+ .tpl-cert{display:flex;flex-direction:column;justify-content:center;align-items:center;width:min(84%,1100px);height:100%;text-align:center}
32
+ .tpl-cert .frame{position:relative;width:100%;border:3px double var(--accent);background:var(--panel);padding:6vh 4vw 4vh;display:flex;flex-direction:column;align-items:center}
33
+ .tpl-cert .corner{position:absolute;width:28px;height:28px;border:3px solid var(--accent)}
34
+ .tpl-cert .c1{top:-3px;left:-3px;border-right:none;border-bottom:none}
35
+ .tpl-cert .c2{top:-3px;right:-3px;border-left:none;border-bottom:none}
36
+ .tpl-cert .c3{bottom:-3px;left:-3px;border-right:none;border-top:none}
37
+ .tpl-cert .c4{bottom:-3px;right:-3px;border-left:none;border-top:none}
38
+ .tpl-cert .badge{display:inline-block;font-size:12px;letter-spacing:6px;font-weight:700;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:6px 22px;margin-bottom:3.5vh}
39
+ .tpl-cert h1{font-family:Georgia,'Songti SC','SimSun',serif;font-size:clamp(38px,5vw,66px);font-weight:700;color:var(--text);margin-bottom:2vh;line-height:1.3}
40
+ .tpl-cert .quote{font-size:16px;font-style:italic;color:var(--muted);margin-bottom:4vh;max-width:70%}
41
+ .tpl-cert ul.points{list-style:none;display:flex;justify-content:center;gap:3vw;flex-wrap:wrap;margin-bottom:5vh}
42
+ .tpl-cert ul.points li{font-size:15px;color:var(--text);line-height:1.7;border-bottom:1px solid var(--border);padding-bottom:8px;min-width:150px}
43
+ .tpl-cert ul.points .num{color:var(--accent);font-weight:800;margin-right:8px}
44
+ .tpl-cert .seal{position:absolute;right:9%;bottom:11%;width:94px;height:94px;border:3px solid var(--accent2);border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(-12deg);opacity:.88}
45
+ .tpl-cert .seal span{font-size:13px;font-weight:900;color:var(--accent2);letter-spacing:3px;line-height:1.6}
46
+ .tpl-cert footer{margin-top:auto;width:100%;font-size:11px;letter-spacing:3px;color:var(--muted);display:flex;justify-content:space-between}
47
+ <!--TPL_CSS_END-->
48
+ <!--TPL_FN_BEGIN-->
49
+ TPL['certificate'] = function(){
50
+ var lis = DATA.points.map(function(p,i){ return '<li class="anim"><span class="num">'+N(i)+'</span>'+esc(p.t)+'</li>'; }).join('');
51
+ return '<div class="tpl-cert">'
52
+ + '<div class="frame anim">'
53
+ + '<span class="corner c1"></span><span class="corner c2"></span><span class="corner c3"></span><span class="corner c4"></span>'
54
+ + '<div class="badge anim">'+esc(DATA.tag)+'</div>'
55
+ + '<h1 class="anim">'+esc(DATA.title)+'</h1>'
56
+ + '<div class="quote anim">'+esc(DATA.quote)+'</div>'
57
+ + '<ul class="points anim">'+lis+'</ul>'
58
+ + '<div class="seal anim"><span>'+esc(DATA.tag)+'<br>特此证明</span></div>'
59
+ + '<footer class="anim"><span>'+F+'</span><span>'+esc(DATA.footnote||'')+'</span></footer>'
60
+ + '</div>'
61
+ + '</div>';
62
+ };
63
+ <!--TPL_FN_END-->
@@ -1,11 +1,14 @@
1
1
  # user-config.md(本文件不会被 skill 升级覆盖,你的修改永久保留)
2
- # 官方配置更新时,另存 user-config.md.upstream 对照文件,可手动合并新配置点
2
+ # 官方配置更新时,另存 user-config.upstream.md 对照文件,可手动合并新配置点
3
3
 
4
4
  ```yaml
5
- CONFIG_VERSION: 1 # 配置结构版本,skill 升级迁移依据
5
+ CONFIG_VERSION: 4 # 配置结构版本,skill 升级迁移依据
6
6
 
7
- THEME: tech # 海报主题:tech 深蓝科技 / biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变
8
- DIR: auto # 落盘目录:auto = 当前工作目录 posters/;也可写绝对路径
7
+ TEMPLATE: classic # 海报模板(六组流派共 28 套):现代主义 classic 经典舞台 / minimal 极简留白 / swiss 瑞士国际 / window 视窗;编辑出版 magazine 杂志社论 / editorial 编辑刊 / typo 大字报 / newspaper 报纸新闻;数据商务 dashboard 数据仪表 / grid 卡片栅格 / timeline 时间叙事 / hero 巨幕大字;艺术流派 bauhaus 包豪斯 / mondrian 蒙德里安 / memphis 孟菲斯 / exhibit 展览 / popart 波普艺术 / opart 欧普艺术 / artnouveau 新艺术;先锋实验 brutalist 新粗野 / acid 酸性设计 / glitch 故障艺术 / vaporwave 蒸汽波 / cyber 赛博霓虹;场景专用 academic 学术会议 / recruit 招聘 / invitation 邀请函 / notice 通知公告
8
+ THEME: tech # 海报主题(25 套):tech 深蓝科技 / biz 浅色商务 / mono IDEA 黑亮 / light IDEA 白亮 / warm 温暖渐变 / ink 水墨国风 / jade 翡翠绿 / rose 玫瑰金 / midnight 午夜金 / violet 霓虹紫 / swiss 瑞士红黑 / bauhaus 包豪斯三原色 / memphis 孟菲斯撞色 / morandi 莫兰迪 / nordic 北欧 / artdeco 装饰艺术 / noir 黑白电影 / classicblue 经典蓝 / pop 波普 / retro 复古胶片 / coral 珊瑚橙 / acid 酸性荧光 / cyber 赛博霓虹 / cream 奶油纸 / academic 学术蓝
9
+ TPL_DIR: auto # 用户模板库目录(所有海报产物公用的模板库,升级不覆盖):auto = 与海报库根目录平级的 user-templates/(DIR 为 auto 时即当前工作目录下,DIR 写绝对路径时即其父目录下);也可写绝对路径;模板文件格式见 resources/user-template-example.html
10
+ DIR: auto # 海报库根目录:auto = 当前工作目录 posters/;也可写绝对路径;每张海报一个 slug 子目录(poster.html / poster.md / poster.png 三件套)
9
11
  OPEN_HTML: true # 落盘后是否自动打开海报 html
10
12
  SHOT: true # 是否顺带用 ?shot 截一张 PNG(与 html 同名)
11
13
  ASPECT: 3:4 # 截图纵横比:3:4 竖版海报(默认)/ 1:1 方版 / 16:9 横版
14
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skill-forge-hub",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "SkillForge (技能锻造坊) — a curated collection of AI craft skills. Install once, then pick skills interactively: daily/weekly/monthly/quarterly/annual reports, meeting minutes, article-to-HTML, magic-deck slides, deck-stage PPTX, prompt-pouch manager, Pandoc doc converters, meta-forge.",
5
5
  "bin": {
6
6
  "skill-forge": "cli.js"
@@ -34,7 +34,8 @@
34
34
  "CHANGELOG.md",
35
35
  "LICENSE",
36
36
  "README.en.md",
37
- "CHANGELOG.en.md"
37
+ "CHANGELOG.en.md",
38
+ "SKILLS_CATALOG.md"
38
39
  ],
39
40
  "keywords": [
40
41
  "skillforge",
@@ -1,17 +1,6 @@
1
1
  ---
2
2
  name: prompt-pouch
3
- description: >
4
- 锦囊(prompt-pouch)提示词管理 Skill:生成并维护一个本地 HTML 提示词管理页面(锦囊管理台),
5
- 暖棕金/深蓝科技/IDEA 黑亮/IDEA 白亮/薄荷绿五套主题(右下角换肤坞随时切换,THEME 配置可设默认),页面披四层科技氛围(网格/星点/扫描线/光带,与日报/周报/年报同源、卡片带细纹),功能为分组侧栏(带计数徽章)+ 搜索(关键词高亮)+ 卡片网格 + 四种排序(最新添加默认/最近使用/使用频率/手动,
6
- 拖拽与 ▲▼ 自动切手动)+ 分组条拖拽排序 + 标签交互(点击过滤/悬停删/快捷加)+ 导入导出 JSON 备份 + 使用统计 + 收藏星标 + {变量} 插值填充面板 + 一键复制 + 卡片「👁 详情」弹窗
7
- (全文滚动查看 / 复制 / 修改 / 创建修改时间线);数据存 <DIR>/data/prompts.json(DATA_DIR 可配),
8
- 页面与数据严格分离,双笔协作(页面经授权目录直写,AI 代笔维护)。三类任务:①初始化——目标目录无页面时确认目录(默认用户配置 DIR)
9
- 并生成 prompt-pouch.html(样式真相源为 resources/reference.html,原样复制)与 data/prompts.json
10
- (默认示例五组:写作输出/沟通协作/规划执行/复盘成长/提问艺术,每条带 createdAt;页面另内置同款示例种子 DEFAULT_POUCH,prompts.json 读不到时兜底展示);②维护——用户说「把这段话/这段对话/这个文件/XX 加进锦囊、存成提示词、收藏这句话」或口述增删改提示词与分组、调整排序、导入导出备份、
11
- 切换收藏,读写 prompts.json(UTF-8、2 空格缩进),用户刷新页面即见;③打开——用户说「打开锦囊」时
12
- 起本地服务并按平台打开浏览器访问管理页面。
13
- 数据通过 HTTP 方式访问(file:// 直开会回退浏览器缓存快照,需提示用户起本地服务)。
14
- 当用户问「锦囊怎么用/使用说明」时输出 resources/usage-guide.md 内容,不执行任何文件操作。
3
+ description: 锦囊(prompt-pouch)提示词管理 Skill:生成并维护一个本地 HTML 提示词管理页面(锦囊管理台), 暖棕金/深蓝科技/IDEA 黑亮/IDEA 白亮/薄荷绿五套主题(右下角换肤坞随时切换,THEME 配置可设默认),页面披四层科技氛围(网格/星点/扫描线/光带,与日报/周报/年报同源、卡片带细纹),功能为分组侧栏(带计数徽章)+ 搜索(关键词高亮)+ 卡片网格 + 四种排序(最新添加默认/最近使用/使用频率/手动, 拖拽与 ▲▼ 自动切手动)+ 分组条拖拽排序 + 标签交互(点击过滤/悬停删/快捷加)+ 导入导出 JSON 备份 + 使用统计 + 收藏星标 + {变量} 插值填充面板 + 一键复制 + 卡片「👁 详情」弹窗 (全文滚动查看 / 复制 / 修改 / 创建修改时间线);数据存 <DIR>/data/prompts.json(DATA_DIR 可配), 页面与数据严格分离,双笔协作(页面经授权目录直写,AI 代笔维护)。三类任务:①初始化——目标目录无页面时确认目录(默认用户配置 DIR) 并生成 prompt-pouch.html(样式真相源为 resources/reference.html,原样复制)与 data/prompts.json (默认示例五组:写作输出/沟通协作/规划执行/复盘成长/提问艺术,每条带 createdAt;页面另内置同款示例种子 DEFAULT_POUCH,prompts.json 读不到时兜底展示);②维护——用户说「把这段话/这段对话/这个文件/XX 加进锦囊、存成提示词、收藏这句话」或口述增删改提示词与分组、调整排序、导入导出备份、 切换收藏,读写 prompts.json(UTF-8、2 空格缩进),用户刷新页面即见;③打开——用户说「打开锦囊」时 起本地服务并按平台打开浏览器访问管理页面。 数据通过 HTTP 方式访问(file:// 直开会回退浏览器缓存快照,需提示用户起本地服务)。 当用户问「锦囊怎么用/使用说明」时输出 resources/usage-guide.md 内容,不执行任何文件操作。
15
4
  allowed-tools: ["Bash", "Read", "Write", "Edit"]
16
5
  disable-model-invocation: false
17
6
  ---
@@ -44,7 +33,7 @@ disable-model-invocation: false
44
33
  - **目录确认**:用户未提目录 → 用配置 `DIR`;`CONFIRM: true` 时先 AskUserQuestion 确认(选项:用默认目录 / 换目录);用户已说「放到 XX 目录」→ 直接用该目录(本次会话有效,不改配置文件)
45
34
  - 复制 `resources/reference.html` → `<DIR>/prompt-pouch.html`(原样复制,不修改任何样式与脚本;仅两处例外:①html 根标签 `data-theme` 属性值设为配置 `THEME`——reference 默认 "gold",仅当配置非 gold 时替换该属性值;②head 中 `<meta name="pouch-id" content="...">` 的 content 替换为本次用 crypto.randomUUID() 新生成的全局唯一 ID——标准 UUID v4(十六进制 8-4-4-4-12 节,禁止手写变体、禁止沿用 reference 的占位 ID REF-POUCH-0000、禁止两份锦囊共用同一 ID;复制文件副本=同一身份共享数据);落盘写文件前顺扫 <DIR> 下已有 html 的 pouch-id meta 查重,撞号重掷至不重复)
46
35
  - 创建 `<DIR>/<DATA_DIR>/` 与 `<DIR>/<BACKUP_DIR>/` 子目录(配置为空串则跳过、平铺根目录);生成 `<DIR>/<DATA_DIR>/prompts.json`:`INIT_DATA: example` 时写入「各职业通用」示例五组(写作输出/沟通协作/规划执行/复盘成长/提问艺术,每组 3 条,标题与正文按下方「## 默认示例数据」清单写,**每条必带 createdAt 当前时间(YYYY-MM-DD HH:mm:ss,写到时分秒)**);`empty` 时写空结构(version + 空 groups/prompts)
47
- - 收尾提示启动方式:`cd <DIR> && python3 -m http.server <PORT>`(Windows 无 python3 时 `py -m http.server`),浏览器访问 `http://localhost:<PORT>/prompt-pouch.html`(HTTP 才能读 prompts.json;file:// 直开回退缓存快照)
36
+ - 收尾提示启动方式:`cd <DIR> && python3 -m http.server <PORT>`(Windows 无 python3 时 `py -m http.server`),浏览器访问 `http://localhost:<PORT>/prompt-pouch.html`(HTTP 自动读 prompts.json;file:// 直开浏览器会拦截文件读取——已授权目录则刷新自动直读 data/prompts.json,权限需重新确认时点徽标「🔓 恢复数据」一键续权,读不到则回退本地快照/镜像,推荐 HTTP 打开)
48
37
  2. **维护**(页面已存在时):读 `<DIR>/<DATA_DIR>/prompts.json` → 按用户意图修改 → 写回(UTF-8、2 空格缩进、保留 version 字段)→ 提醒用户刷新页面
49
38
  - **落盘确认**:写回前展示将要落盘的内容(新增/修改的标题、分组、正文摘要,一句话说清改了什么),等用户确认后落盘;用户明确说「直接存/不用确认」则跳过(本次会话有效);写回前重读最新文件合并;落盘完成后对话报告产物位置:页面文件 `<DIR>/prompt-pouch.html`、数据文件 `<DIR>/<DATA_DIR>/prompts.json`、滚动备份目录 `<DIR>/<BACKUP_DIR>/`
50
39
  - **分类交互**:用户说「添加 XX」但未说分组 → 先按现有分组语义智能匹配(如内容讲周报 → 建议「写作输出 ✍️」并说明理由),匹配到则默认归入、用户可改口换组;匹配不到 → AskUserQuestion 列出全部现有分组(加「新建分组」选项)让用户选;用户指定的分组不存在 → 明确告知该分组不存在,并问是否新建(新建则补 groups 条目:id 16 位数字主键(雪花规则见 data-format.md)、name 中文、icon 一个 emoji)
@@ -79,7 +68,7 @@ disable-model-invocation: false
79
68
 
80
69
  ## 产物升级(回炉)
81
70
 
82
- 生成/初始化页面时头部写版本戳 `<meta name="sf-template" content="prompt-pouch@2">`(模板升级时递增 @N 并同步 reference.html 与本文档)。用户说「升级旧锦囊/回炉旧页面/旧锦囊换新样式」时:扫 `<DIR>` 下 `prompt-pouch.html` 读版本戳筛出旧版(无版本戳或缺少 `<meta name="pouch-id">` 稳定 ID 的产物视为 v0 最旧版,一并进清单)→ 列清单(文件/旧版本/有无用户数据)→ AskUserQuestion 选全部或部分 → 逐份升级:浅升级(仅 CSS/JS 变化)对旧页替换 `<style>` 块与交互脚本;深升级(DOM 结构变化)从 reference.html 重建,**必须沿用原页 pouch-id meta 值**(IndexedDB 用户数据按 pouch-id 命名空间存取,换 ID = 数据失联,重建后原收藏/分组照旧读回),`<DIR>/<DATA_DIR>/prompts.json` 数据文件一概不动,先备份旧页 `.bak-时间戳` → 报告三段式:✅ 已升级清单 / ⚠️ 手改保留说明 / 🟡 失败项原因。模板改动分级:业务改动(板块/段落/标题体系)、数据格式改动(字段/存储结构)、页面改动(样式/布局/交互)任一发生即模板升级,版本戳 +1 并同步 reference.html 与本文档;纯措辞润色不 bump。每次生成/初始化新锦囊时顺扫 `<DIR>` 读版本戳:发现旧版产物主动告知「技能模板已升级至 vN,检测到 X 份旧版锦囊,说『把我旧锦囊都升级成新样式』即可一键升级」,不让用户背触发语。
71
+ 生成/初始化页面时头部写版本戳 `<meta name="sf-template" content="prompt-pouch@9">`(模板升级时递增 @N 并同步 reference.html 与本文档)。用户说「升级旧锦囊/回炉旧页面/旧锦囊换新样式」时:扫 `<DIR>` 下 `prompt-pouch.html` 读版本戳筛出旧版(无版本戳或缺少 `<meta name="pouch-id">` 稳定 ID 的产物视为 v0 最旧版,一并进清单)→ 列清单(文件/旧版本/有无用户数据)→ AskUserQuestion 选全部或部分 → 逐份升级:浅升级(仅 CSS/JS 变化)对旧页替换 `<style>` 块与交互脚本;深升级(DOM 结构变化)从 reference.html 重建,**必须沿用原页 pouch-id meta 值**(IndexedDB 用户数据按 pouch-id 命名空间存取,换 ID = 数据失联,重建后原收藏/分组照旧读回),`<DIR>/<DATA_DIR>/prompts.json` 数据文件一概不动,先备份旧页 `.bak-时间戳` → 报告三段式:✅ 已升级清单 / ⚠️ 手改保留说明 / 🟡 失败项原因。模板改动分级:业务改动(板块/段落/标题体系)、数据格式改动(字段/存储结构)、页面改动(样式/布局/交互)任一发生即模板升级,版本戳 +1 并同步 reference.html 与本文档;纯措辞润色不 bump。每次生成/初始化新锦囊时顺扫 `<DIR>` 读版本戳:发现旧版产物主动告知「技能模板已升级至 vN,检测到 X 份旧版锦囊,说『把我旧锦囊都升级成新样式』即可一键升级」,不让用户背触发语。
83
72
 
84
73
  ## ⚙️ 配置与自定义主题
85
74
 
@@ -87,7 +76,7 @@ disable-model-invocation: false
87
76
 
88
77
  **THEME 主题机制**:页面内置五套主题——gold 暖棕金(默认)/ tech 深蓝科技 / mono IDEA 黑亮(JetBrains New UI Dark 官方色系,编辑区 #1e1f22 + 面板 #2b2d30)/ light IDEA 白亮(IntelliJ Light 官方色系)/ mint 薄荷绿。初始化复制 reference.html 后,将 html 根标签 `data-theme` 属性值设为配置 `THEME`(仅此一处修改);页面右下角「换肤坞」色点可随时切换主题,选择经浏览器 localStorage 持久(key: pouch:<pouch-id>-theme,按页内嵌唯一 ID 命名空间隔离、多份锦囊互不串台、改名/移动目录记忆不丢),刷新后保持;localStorage 优先级高于根标签 data-theme。已初始化的页面改配置 THEME 不追溯——用户手动换过主题即以其选择为准。
89
78
 
90
- **配置版本机制(升级保护)**:user-config.md 头部 `CONFIG_VERSION` 标识结构版本,本 skill 当前要求版本为 4;配置结构如有变化必须同步更新此版本号与迁移说明。升级 skill 后若发现新版本结构(如 v2 新增 THEME 字段)而用户配置是旧版:先备份旧配置为 `user-config.md.bak-时间戳`,将旧值迁移进新结构(保留用户已有 DIR/PORT/INIT_DATA/CONFIRM,缺失字段补默认值),更新 CONFIG_VERSION,最后用一句话告知用户配置已升级、旧文件备份在哪。v4 特例:用户配置 DATA_DIR: cache(v3 旧默认、非用户显式自定义)→ 目录改名 cache→data(先复制 .bak-时间戳)并同步更新配置值;用户显式自定义过其它目录名则尊重其选择不动。 **无法迁移项处理**(值域失效 / 语义漂移 / 数据不兼容):三绝不——绝不静默(无法迁移项停下问,不猜值)、绝不丢失(旧值永远在备份)、一次说清(升级报告三段式:⚠️ 版本与备份路径 / ✅ 已自动迁移 / 🟡 无法迁移项逐条附原因+影响+建议替代);随后 AskUserQuestion 三选项(A 用建议值 / B 用户给新值 / C 保持旧配置——不更新 CONFIG_VERSION,每次执行再提醒);报告必附回滚一句话;数据文件(prompts.json)迁移前先复制 .bak-时间戳,能映射则映射、不能则写兼容层(旧 id 兼容保留即范例)或留备份提示手动整理
79
+ **配置版本机制(升级保护)**:user-config.md 头部 `CONFIG_VERSION` 标识结构版本,本 skill 当前要求版本为 4;配置结构如有变化必须同步更新此版本号与迁移说明。升级 skill 后若发现新版本结构(如 v2 新增 THEME 字段)而用户配置是旧版:先备份旧配置为 `user-config.bak-时间戳.md`,将旧值迁移进新结构(保留用户已有 DIR/PORT/INIT_DATA/CONFIRM,缺失字段补默认值),更新 CONFIG_VERSION,最后用一句话告知用户配置已升级、旧文件备份在哪。v4 特例:用户配置 DATA_DIR: cache(v3 旧默认、非用户显式自定义)→ 目录改名 cache→data(先复制 .bak-时间戳)并同步更新配置值;用户显式自定义过其它目录名则尊重其选择不动。 **无法迁移项处理**(值域失效 / 语义漂移 / 数据不兼容):三绝不——绝不静默(无法迁移项停下问,不猜值)、绝不丢失(旧值永远在备份)、一次说清(升级报告三段式:⚠️ 版本与备份路径 / ✅ 已自动迁移 / 🟡 无法迁移项逐条附原因+影响+建议替代);随后 AskUserQuestion 三选项(A 用建议值 / B 用户给新值 / C 保持旧配置——不更新 CONFIG_VERSION,每次执行再提醒);报告必附回滚一句话;数据文件(prompts.json)迁移前先复制 .bak-时间戳,能映射则映射、不能则写兼容层(旧 id 兼容保留即范例)或留备份提示手动整理
91
80
 
92
81
  ## 核心约束
93
82