skill-calorie 0.2.5 → 0.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/SKILL.md CHANGED
@@ -25,7 +25,7 @@ calorie-cmd-read calorie.help.lookup --params '{"q":"看今日主页"}'
25
25
 
26
26
  ## 唯一出口(T11)
27
27
 
28
- - 二进制:`packages/skill-calorie/dist/cli/cmd_read.js`(bin `calorie-cmd-read`),纯 CLI 单轨,无面板/定时/外联动。
28
+ - 入口=本包 `bin` 声明的那条(`calorie-cmd-read`);**怎么调见下面「唯一出口:怎么跑」节**。纯 CLI 单轨,无面板/定时/外联动。
29
29
  - 运维定位(C1 #43):`skill-calorie-fetch`(`dist/fetch/cli.js`)仅运维(import/validate/dedupe/export/history/audit/catalog-verify),不承载业务读写;业务读写唯一出口仍为 `calorie-cmd-read`。
30
30
  - 契约:P9 冻结 argv+JSON+exit;缺 key exit 2、未知 key exit 3、取数/缺失 exit 4、envelope/渲染/落盘 exit 5、预检 exit 1。
31
31
  - stdout 纯净:成功只打 envelope JSON 一行;进度与错误一律 stderr;HTML 默认落 `<库目录>/<产物目录>/<中文command>_<YYYYMMDD>_<HHMMSS>[_N].html`(同秒冲突自动加 `_2`/`_3`)——`<库目录>`=配置文件 `~/.ilife/calorie.yaml` 的 `db.dir`,空串=数据目录 `~/.ilife/data/`;`<产物目录>`=同文件的 `html.dir`(默认 `calorie_html`)。落点回传在 envelope `data.output`(**恒绝对路径**,相对库目录/`--html` 亦按 cwd 归一后回传);`--html <路径>` 显式覆盖任意路径(**唯一落点参数**:老技能的 `--output` 别名已按 #245 删除,给了即 exit 2,与其余五家同形)。
@@ -549,14 +549,18 @@ calorie-cmd-read calorie.help.lookup --params '{"q":"看今日主页"}'
549
549
  - 路径类取值一律读配置文件 `~/.ilife/calorie.yaml`(**配置文件是唯一真相,环境变量不参与配置**):库目录=`db.dir`(空串=数据目录 `~/.ilife/data/`,首次读时自动建)、库文件名=`db.name`(默认 `calorie_data.db`)、产物目录=`html.dir`(默认 `calorie_html`)、照片目录=`photos.dir`(**空串=这一项还没配**:取数侧跳过「照片文件在不在」的校验、写侧直接阻断,不猜路径)、GIF 子目录=`photos.gifs`(默认 `gifs`)、训记五项=`xunji.*`、落地三项=`land.*`;`ILIFE_CONFIG_DIR` 设定且非空即整体接管配置目录。真实 DB 禁迁,测试 tmp 隔离;老家只读对照。取值面与环境项见 docs/env.md。
550
550
  - 出 scope(一期外):面板(二期单 MAP)、定时任务、本技能外联动(router+作息/备忘/训记仅只读对照,不落本包)。
551
551
 
552
- ## 公共安装器运行时(skills-cli 装完必读,#47)
553
-
554
- - 本仓库 `dist/` 不进 git:skills-cli 只把本目录(含本文件)装进 agent,不带可执行文件;“不走 npm”的只是 skill 发现这一步,运行时走 npm(`skill-calorie@0.2.5` 已发布)。
555
- - 取运行时二选一:`npm install -g skill-calorie@0.2.5`(一劳永逸),或免安装 `npx -p skill-calorie@0.2.5 calorie-cmd-read …`(每次现拉)。若 npm 报 EUNSUPPORTEDPROTOCOL(workspace:),说明已发布包待重发(发版流修,见 docs/public-installer-47.md「已发布包阻塞」),先用本仓构建产物验证链路。
556
- - HELP 现找→cmd_read→envelope→HTML 验证(隔离靠把**配置目录**指到临时目录:`ILIFE_CONFIG_DIR` 设定且非空即整体接管配置目录,配置里的 `db.dir` 再决定库与产物落哪;node>=22.13;完整口径见 docs/public-installer-47.md):
557
- ```sh
558
- cfg="$(mktemp -d)" && mkdir -p "$cfg/db" && printf 'db:\n dir: %s\n' "$cfg/db" > "$cfg/calorie.yaml"
559
- ILIFE_CONFIG_DIR="$cfg" calorie-cmd-read calorie.help.lookup --params '{"q":"看今日主页"}'
560
- ```
561
- - stdout/落盘契约与「唯一出口(T11)」节同源(成功只一行 envelope JSON;HTML 落点见 `data.output`)。
562
- - 版本钉死登记:本节版本硬编码现为 `@0.2.4`(已随 #44 发版流同步;历史登记见 docs/public-installer-47.md「版本钉死登记」)。
552
+ <!-- CALL-FORM-START -->
553
+
554
+ ## 唯一出口:怎么跑
555
+
556
+ 入口=本技能包 `package.json` `bin` 声明的那条:`dist/cli/cmd_read.js`。
557
+ `<技能基目录>`=加载本技能时给出的 `Base directory for this skill: <路径>` 那一行。
558
+
559
+ 1. 命令名解析得到时:`calorie-cmd-read <key> [--params '<json>']`。
560
+ 2. 解析不到时(`not recognized`/`command not found`)= PATH 上没有这条命令,下面这行照样跑得起来:
561
+ `node <技能基目录>/dist/cli/cmd_read.js <key> [--params '<json>']`
562
+ 3. 本目录里没有编译产物时:`npx -p skill-calorie calorie-cmd-read <key> [--params '<json>']`(上面第 2 行就够,不必再取一份)。
563
+
564
+ 换走法的信号只有一个:命令名解析不到。其余报错照 stderr 的报文原样交给用户。
565
+ <!-- CALL-FORM-END -->
566
+
@@ -1,5 +1,5 @@
1
1
  {
2
- "at": "2026-09-19T02:17:09.829Z",
2
+ "at": "2026-09-19T14:25:13.780Z",
3
3
  "noWake": [
4
4
  "calorie.view.label-precheck"
5
5
  ],
@@ -34,7 +34,8 @@ interface DocPageInput {
34
34
  /** ① 整页装配:区块 HTML + 标题三件套 → 完整文档(图表页多带图表 helpers)。
35
35
  * B线新路(给了 metaLeft):老A壳两行式=meta-bar(左参数一行+右页型徽章,**徽章由调用方给、
36
36
  * 不给即整颗不渲染**)+H1(人话短标题)+结论摘要行;沿用 B-01 类名(不碰类名根),补丁样式只用冻结 token。
37
- * 可打印位(`printable`,A线/B线共用)只加类名,不加样式、不碰 `extraCss`。 */
37
+ * 可打印位(`printable`,A线/B线共用)只加类名,不加样式、不碰 `extraCss`。
38
+ * 本件只决定「哪一版正文」与「这一页的补丁样式」;文档壳(doctype/槽位序/资产拼接/图表位)交骨架件。 */
38
39
  export declare function assembleDocPage(input: DocPageInput): string;
39
40
  /** ② 度量投影:stat-metrics 只收确定数字(冻结口径:null/undefined 不进投影)。 */
40
41
  export declare function metricsOf(obj: Record<string, number | null | undefined>): Record<string, number>;
@@ -1 +1 @@
1
- {"version":3,"file":"docPage.d.ts","sourceRoot":"","sources":["../../src/shared/docPage.ts"],"names":[],"mappings":"AAkBA;iCACiC;AACjC,UAAU,YAAY;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;0DAEsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;sEAEkE;IAClE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;qFAIiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AA8DD;;;uDAGuD;AACvD,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAmC3D;AAED,4DAA4D;AAC5D,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMhG"}
1
+ {"version":3,"file":"docPage.d.ts","sourceRoot":"","sources":["../../src/shared/docPage.ts"],"names":[],"mappings":"AAsBA;iCACiC;AACjC,UAAU,YAAY;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;0DAEsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;sEAEkE;IAClE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;qFAIiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AA8CD;;;;4DAI4D;AAC5D,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAkC3D;AAED,4DAA4D;AAC5D,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMhG"}
@@ -5,18 +5,23 @@
5
5
  * 同走这一份。此前这套模板与装配函数在 7 个 `*Docs.ts` 里各抄了一份,本次收成一份。
6
6
  *
7
7
  * 包裹约定(沿 #111–#113,不新增):内容 = `base-paint/blocks` 的区块;文档 = `fillTemplate`
8
- * 包裹(资产裸文本+填充器包裹);`sharedCss = buildStyleSheet().css + blocksCss()`,不走
9
- * `extraCss`;图表页另加 CHARTS-HELPERS + `buildChartsHelpersJs`,图表 CSS 由其运行时注入。
8
+ * 包裹(资产裸文本+填充器包裹);`sharedCss = buildStyleSheet().css + blocksCss()`;图表页另加
9
+ * CHARTS-HELPERS + `buildChartsHelpersJs`,图表 CSS 由其运行时注入。
10
+ * **#725 起「文档壳」那一圈(doctype/head 三槽位序/资产拼接/图表位)搬去公共层
11
+ * `base-paint/docShell` 的 `renderDocShell`**——本件只留页头语义(下面那些字段与 A/B 双路)
12
+ * + 自己的补丁样式(走 `extraCss`),拼好正文后交给骨架件;11 个字段与两条路一行未动。
10
13
  * 本文件不做取数、不装任何能力名,只按参数拼页;`fmt`/`DOC_VERSION`/`DOC_SKILL` 不进来
11
14
  * (它们是各页自己的口径,留给整包按域重排那张票)。
12
15
  *
13
16
  * 复制与提示(`promptCopyArea`/`dataCopyArea`/`copyArea`/`copyLog`/`notice`)住在同目录
14
17
  * `copyArea.ts`——#239 按「一个文件对外不多于五个」把那一组名字另立一件,本文件只留装配与投影。
15
18
  */
16
- import { blocksCss, renderPageShell } from 'base-paint/blocks';
17
- import { buildChartsHelpersJs, buildSharedHelpersJs, buildStyleSheet, fillTemplate, PAGE_UI_CLASS, PAGE_UI_VIEWPORT, pageShapeCss, pageUiCss } from 'base-paint';
18
- /** B线老A壳补丁 CSS(照抄老 combined_analysis.html 实测值;只用冻结 token 名+#ff9500 字面,不新增变量名)。 */
19
- const BLINE_CSS = '\n.meta-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}\n'
19
+ import { renderPageShell } from 'base-paint/blocks';
20
+ import { renderDocShell } from 'base-paint/docShell';
21
+ import { pageShapeCss, pageUiCss } from 'base-paint';
22
+ /** B线老A壳补丁 CSS(照抄老 combined_analysis.html 实测值;只用冻结 token 名+#ff9500 字面,不新增变量名)。
23
+ * **首字符不是换行**:它是 `extraCss` 的一段,段前那个换行由骨架件(`renderDocShell`)补。 */
24
+ const BLINE_CSS = '.meta-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}\n'
20
25
  + '.meta-bar .left{font-size:12px;color:var(--fg2)}\n'
21
26
  + '.type-badge{font-size:11px;padding:3px 10px;border-radius:6px;background:var(--soft);color:var(--fg2);font-weight:600;white-space:nowrap}\n'
22
27
  + '.ilife-block-page-shell-title{font-size:28px;line-height:1.25;font-weight:700;letter-spacing:-.02em;margin-bottom:4px;text-wrap:balance}\n'
@@ -60,26 +65,11 @@ function blineEsc(value) {
60
65
  return '&#39;';
61
66
  });
62
67
  }
63
- /** 整页模板(裸标记+CONTENT 槽;`wrap` 带 ilife-page 兼容既有 --html 断言)。
64
- * 标记不得预包裹:资产由 `fillTemplate` 按 `ASSET_WRAPPERS` 自己包。
65
- * `pageUi`(#525)只改两处、都在启用时才发生:viewport 串加 `viewport-fit=cover`
66
- * (`env(safe-area-inset-*)` 在 iOS 上不写它恒取 0)+版面根多一颗 `ilife-page-ui`;
67
- * 不给即老串老类,产出物逐字节不变。 */
68
- function docShell(docTitle, charts, pageUi) {
69
- const chartsSlot = charts ? '<!--CHARTS-HELPERS-->\n' : '';
70
- const viewport = pageUi ? PAGE_UI_VIEWPORT : 'width=device-width,initial-scale=1';
71
- const wrapClass = 'wrap ilife-page' + (pageUi ? ' ' + PAGE_UI_CLASS : '');
72
- return '<!doctype html>\n<html lang="zh-CN">\n<head>\n<meta charset="utf-8">\n'
73
- + '<meta name="viewport" content="' + viewport + '">\n'
74
- + '<title>' + docTitle + '</title>\n<!--SHARED-CSS-->\n</head>\n<body>\n'
75
- + '<div class="' + wrapClass + '">\n<!--CONTENT-->\n</div>\n<!--SHARED-HELPERS-->\n'
76
- + chartsSlot
77
- + '</body>\n</html>';
78
- }
79
68
  /** ① 整页装配:区块 HTML + 标题三件套 → 完整文档(图表页多带图表 helpers)。
80
69
  * B线新路(给了 metaLeft):老A壳两行式=meta-bar(左参数一行+右页型徽章,**徽章由调用方给、
81
70
  * 不给即整颗不渲染**)+H1(人话短标题)+结论摘要行;沿用 B-01 类名(不碰类名根),补丁样式只用冻结 token。
82
- * 可打印位(`printable`,A线/B线共用)只加类名,不加样式、不碰 `extraCss`。 */
71
+ * 可打印位(`printable`,A线/B线共用)只加类名,不加样式、不碰 `extraCss`。
72
+ * 本件只决定「哪一版正文」与「这一页的补丁样式」;文档壳(doctype/槽位序/资产拼接/图表位)交骨架件。 */
83
73
  export function assembleDocPage(input) {
84
74
  const charts = input.charts === true;
85
75
  const metaLeft = typeof input.metaLeft === 'string' ? screenEyebrow(input.metaLeft) : null;
@@ -88,13 +78,11 @@ export function assembleDocPage(input) {
88
78
  const printable = input.printable === true;
89
79
  /** 页面级移动端配方(#525):同上口径——只认真真值,不给/给假即老路(产出物逐字节不变)。 */
90
80
  const pageUi = input.pageUi === true;
91
- const assets = {
92
- sharedCssText: buildStyleSheet().css + '\n' + blocksCss() + (bline ? BLINE_CSS : '')
93
- + (pageUi ? '\n' + pageUiCss() + '\n' + pageShapeCss() : ''),
94
- sharedHelpersJs: buildSharedHelpersJs(),
95
- };
96
- if (charts)
97
- assets.chartsHelpersJs = buildChartsHelpersJs();
81
+ /** 补丁样式按段拼(骨架件负责段前那个换行):B线老A壳一段、页面级配方两段,都不启用即空串。 */
82
+ const extraCss = [
83
+ bline ? BLINE_CSS : '',
84
+ pageUi ? pageUiCss() + '\n' + pageShapeCss() : '',
85
+ ].filter((seg) => seg !== '').join('\n');
98
86
  if (bline) {
99
87
  const badge = typeof input.badge === 'string' && input.badge !== '' ? input.badge : null;
100
88
  const summary = typeof input.summary === 'string' && input.summary !== '' ? input.summary : undefined;
@@ -105,7 +93,7 @@ export function assembleDocPage(input) {
105
93
  + (summary === undefined ? '' : '<p class="sub">' + blineEsc(summary) + '</p>')
106
94
  + '<div class="ilife-block-page-shell-body">' + input.content + '</div>'
107
95
  + '</section>';
108
- return fillTemplate({ template: docShell(input.docTitle, charts, pageUi), assets, content: body }).html;
96
+ return renderDocShell({ docTitle: input.docTitle, bodyHtml: body, extraCss, charts, pageUi });
109
97
  }
110
98
  const eyebrow = typeof input.eyebrow === 'string' ? screenEyebrow(input.eyebrow) : null;
111
99
  const body = renderPageShell({
@@ -115,7 +103,7 @@ export function assembleDocPage(input) {
115
103
  content: input.content,
116
104
  printable,
117
105
  });
118
- return fillTemplate({ template: docShell(input.docTitle, charts, pageUi), assets, content: body }).html;
106
+ return renderDocShell({ docTitle: input.docTitle, bodyHtml: body, extraCss, charts, pageUi });
119
107
  }
120
108
  /** ② 度量投影:stat-metrics 只收确定数字(冻结口径:null/undefined 不进投影)。 */
121
109
  export function metricsOf(obj) {
@@ -1 +1 @@
1
- {"version":3,"file":"docPage.js","sourceRoot":"","sources":["../../src/shared/docPage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docPage.js","sourceRoot":"","sources":["../../src/shared/docPage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skill-calorie",
3
- "version": "0.2.5",
3
+ "version": "0.3.0",
4
4
  "description": "卡路里SKILL一期:DB schema与迁移收敛(T1 #20),零依赖",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",