skill-home 0.1.0 → 0.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.
- package/SKILL.md +165 -0
- package/dist/cli/cmd_read.js +65 -13
- package/dist/cli/cmd_read.js.map +1 -1
- package/dist/help/helpAssets.d.ts +38 -0
- package/dist/help/helpAssets.d.ts.map +1 -0
- package/dist/help/helpAssets.js +1122 -0
- package/dist/help/helpAssets.js.map +1 -0
- package/dist/help/helpFile.d.ts +62 -0
- package/dist/help/helpFile.d.ts.map +1 -0
- package/dist/help/helpFile.js +219 -0
- package/dist/help/helpFile.js.map +1 -0
- package/dist/help/index.d.ts +3 -0
- package/dist/help/index.d.ts.map +1 -1
- package/dist/help/index.js +6 -0
- package/dist/help/index.js.map +1 -1
- package/dist/help/manifest.d.ts +23 -0
- package/dist/help/manifest.d.ts.map +1 -0
- package/dist/help/manifest.js +23 -0
- package/dist/help/manifest.js.map +1 -0
- package/dist/help/output.d.ts +12 -0
- package/dist/help/output.d.ts.map +1 -0
- package/dist/help/output.js +65 -0
- package/dist/help/output.js.map +1 -0
- package/package.json +9 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpAssets.js","sourceRoot":"","sources":["../../src/help/helpAssets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { HelpGroupAsset } from './helpAssets.js';
|
|
2
|
+
/** 页面级取值(老件逐字):技能名/文档标题——标题自带技能名 ⇒ `composeDocTitle` 走「原样」支。 */
|
|
3
|
+
declare const HELP_FILE_SKILL_NAME: "\u5C45\u5BB6\u7BA1\u5BB6";
|
|
4
|
+
declare const HELP_FILE_TITLE: "\u5C45\u5BB6\u7BA1\u5BB6 \u00B7 \u4F7F\u7528\u624B\u518C(HELP)";
|
|
5
|
+
/** 技能数据世代(照老 `scenarios.yaml` 的 `version: '2.0'`;**不是** npm 包 `skill-home@0.1.0`)。 */
|
|
6
|
+
declare const HELP_FILE_VERSION: "2.0";
|
|
7
|
+
/** 联系作者三项(老 `help_center.py:31-35`;`url` 为真时模板渲染成 `<a>`)。 */
|
|
8
|
+
interface HomeHelpContact {
|
|
9
|
+
readonly items: readonly {
|
|
10
|
+
readonly label: string;
|
|
11
|
+
readonly value: string;
|
|
12
|
+
readonly url?: true;
|
|
13
|
+
}[];
|
|
14
|
+
readonly copy_all: true;
|
|
15
|
+
}
|
|
16
|
+
/** 透传信息块(模板契约 `{id,title,html}`;居家两块 `id` 与 8 个一级分组零碰撞 ⇒ 不上页,见件头)。 */
|
|
17
|
+
interface HomeHelpMetaBlock {
|
|
18
|
+
readonly id: string;
|
|
19
|
+
readonly title: string;
|
|
20
|
+
readonly html: string;
|
|
21
|
+
}
|
|
22
|
+
/** 首次使用横幅(照 bill 五键 + 显隐开关 `hidden`;`closable: true` ⇒ 模板会画 ✕)。 */
|
|
23
|
+
interface HomeHelpInitBanner {
|
|
24
|
+
readonly title: string;
|
|
25
|
+
readonly subtitle: string;
|
|
26
|
+
readonly button_text: string;
|
|
27
|
+
readonly prompt: string;
|
|
28
|
+
readonly closable: true;
|
|
29
|
+
readonly hidden: boolean;
|
|
30
|
+
}
|
|
31
|
+
/** `buildHomeHelpFileData` 的选项(**不对外开出口**:需要它的是票 7 的出口层/用例)。
|
|
32
|
+
* `dbPath`/`fileExists` 为什么必须由调用方给:见件头「只读页不建库」。
|
|
33
|
+
* `fileExists` 与 `existsSync` 参数同形(`no side effect` 的只读判据)。 */
|
|
34
|
+
interface HomeHelpFileOptions {
|
|
35
|
+
/** DB **文件**路径(调用方从 `SKILLS_DB_PATH` 解析后传入;缺位/为空 ⇒ 横幅照显)。
|
|
36
|
+
* ⚠️ 不要传 `resolveDbPath()` 的返回值——那一步会 `mkdirSync`。 */
|
|
37
|
+
readonly dbPath?: string;
|
|
38
|
+
/** 库文件存在判据(可注入;缺省 `existsSync`;抛异常一律当「不存在」)。 */
|
|
39
|
+
readonly fileExists?: (p: string) => boolean;
|
|
40
|
+
}
|
|
41
|
+
/** 全量 HELP JSON(5 必需键 + 三块可选键中的 `meta_blocks`/`version`/`init_banner`;
|
|
42
|
+
* 共享 help 模板运行时契约的超集)。
|
|
43
|
+
*
|
|
44
|
+
* `init_banner` **键常在**、显隐只走 `hidden`;`recommendations` **不传**(老居家页面无此段)。
|
|
45
|
+
* 返回类型**内联**、不另开导出(照 chef `:153-161`;本文件导出面按铁律五收到 2 个函数)。 */
|
|
46
|
+
export declare function buildHomeHelpFileData(now: Date, opts?: HomeHelpFileOptions): {
|
|
47
|
+
readonly skill_name: typeof HELP_FILE_SKILL_NAME;
|
|
48
|
+
readonly title: typeof HELP_FILE_TITLE;
|
|
49
|
+
readonly subtitle: string;
|
|
50
|
+
readonly contact: HomeHelpContact;
|
|
51
|
+
readonly groups: readonly HelpGroupAsset[];
|
|
52
|
+
readonly meta_blocks: readonly HomeHelpMetaBlock[];
|
|
53
|
+
readonly version: typeof HELP_FILE_VERSION;
|
|
54
|
+
readonly init_banner: HomeHelpInitBanner;
|
|
55
|
+
};
|
|
56
|
+
/** 全量 HELP JSON → 全页 HTML(模板唯一实现=共享层 `base-paint/help-shell`;空分组抛 `missing-data`)。
|
|
57
|
+
*
|
|
58
|
+
* `HelpShellData`(`base-render/src/helpShell.ts`)只声明 5 键、运行时**全量透传**;本件产出的载荷是它的
|
|
59
|
+
* **超集**,在这一处收窄类型,**不改公共层**(照 chef `:206-209`/schedule `:179-182`)。 */
|
|
60
|
+
export declare function renderHomeHelpHtml(data: ReturnType<typeof buildHomeHelpFileData>): string;
|
|
61
|
+
export {};
|
|
62
|
+
//# sourceMappingURL=helpFile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpFile.d.ts","sourceRoot":"","sources":["../../src/help/helpFile.ts"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAItD,gEAAgE;AAChE,QAAA,MAAM,oBAAoB,EAAG,0BAAe,CAAC;AAC7C,QAAA,MAAM,eAAe,EAAG,gEAA4B,CAAC;AACrD,sFAAsF;AACtF,QAAA,MAAM,iBAAiB,EAAG,KAAc,CAAC;AAMzC,6DAA6D;AAC7D,UAAU,eAAe;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAA;KAAE,EAAE,CAAC;IACnG,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;CACzB;AAYD,sEAAsE;AACtE,UAAU,iBAAiB;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,mEAAmE;AACnE,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED;;gEAEgE;AAChE,UAAU,mBAAmB;IAC3B;2DACuD;IACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C;AAsHD;;;;8DAI8D;AAC9D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,GAAE,mBAAwB,GAAG;IAChF,QAAQ,CAAC,UAAU,EAAE,OAAO,oBAAoB,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,OAAO,eAAe,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,OAAO,iBAAiB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAC1C,CAsBA;AAED;;;wEAGwE;AACxE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,GAAG,MAAM,CAGzF"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/** #189 · 居家管家 HELP 的**渲染接线**:内容资产(#188 的 `helpAssets.ts`)+ 页面级派生 →
|
|
2
|
+
* 通用 help 模板(`base-paint/help-shell` 的 `renderHelpShellHtml`)全页 HTML。
|
|
3
|
+
*
|
|
4
|
+
* 走 **A 路**(与 bill/calorie/memo/chef/schedule 五家同路),**不自持页面副本**:模板源恒在
|
|
5
|
+
* `packages/base-render/assets/help-template.html`(不进本包 `files`);要改渲染规则得改源再跑
|
|
6
|
+
* `pnpm --filter base-paint gen:help-shell`。
|
|
7
|
+
*
|
|
8
|
+
* ## 本件只有两个出口、都零 IO
|
|
9
|
+
*
|
|
10
|
+
* - `buildHomeHelpFileData(now, opts)`:**纯函数、零 IO**(`now` 显式传入 ⇒ 同一 `now` 两次调用逐字节一致);
|
|
11
|
+
* - `renderHomeHelpHtml(data)`:全页 HTML(模板唯一实现=共享层)。
|
|
12
|
+
*
|
|
13
|
+
* 落盘/落点值属**票 7**(`src/help/output.ts` + `manifest.ts`),本件不碰。
|
|
14
|
+
*
|
|
15
|
+
* ## 页面级五项与三块可选怎么取(照 `t186-template-contract.md` §二 的取值表)
|
|
16
|
+
*
|
|
17
|
+
* - `skill_name`/`title`/`version`:老 `help_center.py` 的逐字取值(本件常量,票 7 的 `manifest.ts`
|
|
18
|
+
* 再收落点值,两处都不写第二份**文案**以外的副本);
|
|
19
|
+
* - `subtitle`:本件派生(计数**全是数出来的**,见下「计数口径」);
|
|
20
|
+
* - `contact`:老 `help_center.py:31-35` 三项(邮箱/GitHub/Issues,后两项 `url:true` + `copy_all:true`);
|
|
21
|
+
* - `groups`:资产直转(只读引用不 clone)+ **过滤 `deprecated` 分组**(见下);
|
|
22
|
+
* - `meta_blocks`/`version`/`init_banner` 三块照传;**`recommendations` 不传**
|
|
23
|
+
* (老居家 HELP 全页没有「其他技能」段)。
|
|
24
|
+
*
|
|
25
|
+
* ⚠️ `subtitle`/`meta_blocks` 在 A 路**读完不渲染**(只进 `help-data` 的 JSON 段):`subtitle` 照传是因为
|
|
26
|
+
* 老实物有这一行、且 `meta_blocks[0].html` 要用它(**一处算、两处用**)。验产物时别去页面上找这两项。
|
|
27
|
+
*
|
|
28
|
+
* ## 计数口径(用户 2026-09-11 确认 + 裁决 §15)
|
|
29
|
+
*
|
|
30
|
+
* 骨架 9 域/73 场景里,`link` 域(3 场景)标了 `deprecated: true`=登记位 ⇒ **渲染侧不许列出**。
|
|
31
|
+
* 故本件先过滤、再由**过滤后**的分组派生页头计数:**8 功能域 · 70 场景**(不写死 73、也不写死 70);
|
|
32
|
+
* 同时把「骨架 73 条,联动 3 条已停用不列」这一行落进 `meta_blocks[0].html`——A 路的载荷里**只有这一处**
|
|
33
|
+
* 装得下说明文字(`meta_blocks` 是页面外消费的透传位),本件不另造第四个键。
|
|
34
|
+
*
|
|
35
|
+
* ## 只读页不建库(票面第 2 条)
|
|
36
|
+
*
|
|
37
|
+
* 初始化状态=**库文件存在**(照老家 `help_center.py:38-49`),判据是**调用方传入的 `dbPath`**
|
|
38
|
+
* + 可注入的 exists 判据(`opts.fileExists`,缺省 `node:fs` 的 `existsSync`)——便于测试钉死两个分支。
|
|
39
|
+
* 1. **绝不建库、绝不建目录**:不调 `openHomeDb`(会跑 DDL),也不走 `src/fetch/paths.ts:20-23`
|
|
40
|
+
* 的 `resolveDbPath()`(它自带 `mkdirSync` ⇒ 「判一下」就把目录建出来);
|
|
41
|
+
* 2. **`dbPath` 缺位/为空**、或判据抛异常 ⇒ 一律当**未初始化**(横幅照显:误显的代价小于误藏,fail-open)。
|
|
42
|
+
* 横幅**键常在**、显隐只切 `hidden`(模板判 `!INIT_BANNER.hidden`),载荷形状不随状态变。
|
|
43
|
+
*
|
|
44
|
+
* ## 路由字段:**不需要**
|
|
45
|
+
*
|
|
46
|
+
* 共享层 `spec/help.ts` 的场景 schema(`additionalProperties: false`)只有 id/title/wake_word/status/
|
|
47
|
+
* prompt_template/types/editable_fields 七键,没有指向命令的字段;五家兄弟的装配层同样不传路由字段。
|
|
48
|
+
* 居家「短语 → 命令」的路由另有其位:`src/help/lookup.ts` 的 `buildHelpLookup()`(速查信封),与页面无关。
|
|
49
|
+
*/
|
|
50
|
+
import { existsSync } from 'node:fs';
|
|
51
|
+
import { renderHelpShellHtml } from 'base-paint/help-shell';
|
|
52
|
+
import { HELP_GROUPS } from './helpAssets.js';
|
|
53
|
+
import { WAKE_TABLE } from '../policy/index.js';
|
|
54
|
+
import { HomeRenderError } from '../render/errors.js';
|
|
55
|
+
/** 页面级取值(老件逐字):技能名/文档标题——标题自带技能名 ⇒ `composeDocTitle` 走「原样」支。 */
|
|
56
|
+
const HELP_FILE_SKILL_NAME = '居家管家';
|
|
57
|
+
const HELP_FILE_TITLE = '居家管家 · 使用手册(HELP)';
|
|
58
|
+
/** 技能数据世代(照老 `scenarios.yaml` 的 `version: '2.0'`;**不是** npm 包 `skill-home@0.1.0`)。 */
|
|
59
|
+
const HELP_FILE_VERSION = '2.0';
|
|
60
|
+
/** 首次使用横幅的 `prompt` 取自该场景的 `prompt_template`(单源,不抄第二份文案)。 */
|
|
61
|
+
const HELP_INIT_SCENE_ID = 'first_use';
|
|
62
|
+
/** HELP 自身的触发短语由口径层派生(照记账 `wake-assets.ts:984-986` 的同一式;居家实得 3 条)。 */
|
|
63
|
+
const HELP_WAKE_KEY = 'home.help.lookup';
|
|
64
|
+
const HOME_HELP_CONTACT = Object.freeze({
|
|
65
|
+
items: Object.freeze([
|
|
66
|
+
Object.freeze({ label: '邮箱', value: '975559549@qq.com' }),
|
|
67
|
+
Object.freeze({ label: 'GitHub', value: 'https://github.com/FeatherHunter/SKILLS', url: true }),
|
|
68
|
+
Object.freeze({ label: 'Issues', value: 'https://github.com/FeatherHunter/SKILLS/issues', url: true }),
|
|
69
|
+
]),
|
|
70
|
+
copy_all: true,
|
|
71
|
+
});
|
|
72
|
+
/** 坏载荷一律抛本包渲染层错误(`code` 取既有码,不新增错误类、不改既有导出面;照 chef/schedule 的取舍)。 */
|
|
73
|
+
function fail(message) {
|
|
74
|
+
throw new HomeRenderError('HOME_BAD_PAYLOAD', message);
|
|
75
|
+
}
|
|
76
|
+
/** 老 `%Y-%m-%d %H:%M` 等价物(本地时区、零填充;非法 Date 即坏参,不返空串)。 */
|
|
77
|
+
function formatHelpMinute(now) {
|
|
78
|
+
if (!(now instanceof Date) || Number.isNaN(now.getTime())) {
|
|
79
|
+
fail('HELP 更新时间须为有效 Date(缺失阻断,不返空串)。');
|
|
80
|
+
}
|
|
81
|
+
const p = (n) => String(n).padStart(2, '0');
|
|
82
|
+
return String(now.getFullYear()) + '-' + p(now.getMonth() + 1) + '-' + p(now.getDate())
|
|
83
|
+
+ ' ' + p(now.getHours()) + ':' + p(now.getMinutes());
|
|
84
|
+
}
|
|
85
|
+
/** 资产 → **要上页的分组**:只读引用、不 clone;`deprecated` 登记位一律剔除(票面定死的验收项)。 */
|
|
86
|
+
function listedGroups() {
|
|
87
|
+
if (!Array.isArray(HELP_GROUPS) || HELP_GROUPS.length === 0) {
|
|
88
|
+
fail('HELP 内容资产为空(HELP_GROUPS 无域,不返空页)。');
|
|
89
|
+
}
|
|
90
|
+
const listed = HELP_GROUPS.filter((g) => g.deprecated !== true);
|
|
91
|
+
if (listed.length === 0)
|
|
92
|
+
fail('HELP 过滤 deprecated 后无剩余分组(不返空页)。');
|
|
93
|
+
return listed;
|
|
94
|
+
}
|
|
95
|
+
/** 生成物的形状是机器保证的,异常即真故障(不静默降级成空页)。 */
|
|
96
|
+
function assertGroupsUsable(groups) {
|
|
97
|
+
for (const g of groups) {
|
|
98
|
+
if (!Array.isArray(g.subgroups) || g.subgroups.length === 0) {
|
|
99
|
+
fail('HELP 分组无子功能(' + g.id + ' 的 subgroups 为空)。');
|
|
100
|
+
}
|
|
101
|
+
for (const sg of g.subgroups) {
|
|
102
|
+
if (!Array.isArray(sg.scenes) || sg.scenes.length === 0) {
|
|
103
|
+
fail('HELP 子功能无场景(' + sg.id + ' 的 scenes 为空,契约 scenes[] 非空)。');
|
|
104
|
+
}
|
|
105
|
+
for (const s of sg.scenes) {
|
|
106
|
+
if (typeof s.prompt_template !== 'string' || s.prompt_template.length === 0) {
|
|
107
|
+
fail('HELP 场景缺 prompt(' + s.id + ')。');
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/** 场景条数:**数出来的**(改资产即跟变,不写死 73/70)。 */
|
|
114
|
+
function countScenes(groups) {
|
|
115
|
+
return groups.reduce((n, g) => n + g.subgroups.reduce((m, sg) => m + sg.scenes.length, 0), 0);
|
|
116
|
+
}
|
|
117
|
+
/** 骨架场景总数:含 `deprecated` 登记位——只用来与「实际列出」比出那一行口径文案。 */
|
|
118
|
+
function skeletonSceneTotal() {
|
|
119
|
+
return HELP_GROUPS.reduce((n, g) => n + g.subgroups.reduce((m, sg) => m + sg.scenes.length, 0), 0);
|
|
120
|
+
}
|
|
121
|
+
/** 首次使用横幅 `prompt` 的单源:按 id 在**上页分组**里找该场景(找不到即抛,不静默降级掉横幅)。 */
|
|
122
|
+
function initPromptFrom(groups) {
|
|
123
|
+
for (const g of groups) {
|
|
124
|
+
for (const sg of g.subgroups) {
|
|
125
|
+
for (const s of sg.scenes) {
|
|
126
|
+
if (s.id === HELP_INIT_SCENE_ID) {
|
|
127
|
+
if (typeof s.prompt_template !== 'string' || s.prompt_template.length === 0) {
|
|
128
|
+
fail('HELP 首次使用横幅缺 prompt:场景 ' + HELP_INIT_SCENE_ID + ' 的 prompt_template 为空。');
|
|
129
|
+
}
|
|
130
|
+
return s.prompt_template;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return fail('HELP 首次使用横幅缺 prompt:内容资产无场景 ' + HELP_INIT_SCENE_ID + '。');
|
|
136
|
+
}
|
|
137
|
+
/** 页头摘要行(老 `help_center.py:111` 同一通式):计数**全部派生**(域数/场景数),版本取数据世代。 */
|
|
138
|
+
function deriveSubtitleLine(now, groups) {
|
|
139
|
+
return String(groups.length) + ' 功能域 · ' + String(countScenes(groups)) + ' 场景 · 版本 '
|
|
140
|
+
+ HELP_FILE_VERSION + ' · 更新于 ' + formatHelpMinute(now);
|
|
141
|
+
}
|
|
142
|
+
/** 计数口径那一行:只在「骨架比实际列出多」时出现(同数即无话可说,别往页面上写废话)。 */
|
|
143
|
+
function countNoteLine(groups) {
|
|
144
|
+
const listed = countScenes(groups);
|
|
145
|
+
const skeleton = skeletonSceneTotal();
|
|
146
|
+
if (skeleton <= listed)
|
|
147
|
+
return '';
|
|
148
|
+
return '骨架 ' + String(skeleton) + ' 条,联动 ' + String(skeleton - listed) + ' 条已停用不列';
|
|
149
|
+
}
|
|
150
|
+
/** 两块透传信息块:汇总(=`subtitle` 那一份字符串,**一处算、两处用**)+ HELP 唤醒词(口径层派生)。 */
|
|
151
|
+
function buildMetaBlocks(subtitleLine, groups) {
|
|
152
|
+
if (subtitleLine.length === 0)
|
|
153
|
+
fail('HELP 汇总块缺摘要行(subtitle 不许为空)。');
|
|
154
|
+
const note = countNoteLine(groups);
|
|
155
|
+
const wakeWords = WAKE_TABLE.filter((e) => e.key === HELP_WAKE_KEY).map((e) => e.phrase);
|
|
156
|
+
if (wakeWords.length === 0)
|
|
157
|
+
fail('HELP 唤醒词块为空:口径层 WAKE_TABLE 无 ' + HELP_WAKE_KEY + ' 条目。');
|
|
158
|
+
return Object.freeze([
|
|
159
|
+
Object.freeze({
|
|
160
|
+
id: 'help_summary',
|
|
161
|
+
title: 'HELP 汇总',
|
|
162
|
+
html: '<p>' + subtitleLine + '</p>' + (note === '' ? '' : '<p>' + note + '</p>'),
|
|
163
|
+
}),
|
|
164
|
+
Object.freeze({
|
|
165
|
+
id: 'help_wake_words',
|
|
166
|
+
title: 'HELP 唤醒词',
|
|
167
|
+
html: '<p>' + wakeWords.join(' / ') + '</p>',
|
|
168
|
+
}),
|
|
169
|
+
]);
|
|
170
|
+
}
|
|
171
|
+
/** 已初始化?=传入的库文件存在;无判据/坏判据/抛异常一律 `false`=横幅照显(fail-open,见件头)。 */
|
|
172
|
+
function initializedFrom(dbPath, fileExists) {
|
|
173
|
+
if (typeof dbPath !== 'string' || dbPath === '')
|
|
174
|
+
return false;
|
|
175
|
+
const probe = fileExists ?? existsSync;
|
|
176
|
+
try {
|
|
177
|
+
return probe(dbPath) === true;
|
|
178
|
+
}
|
|
179
|
+
catch {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
/** 全量 HELP JSON(5 必需键 + 三块可选键中的 `meta_blocks`/`version`/`init_banner`;
|
|
184
|
+
* 共享 help 模板运行时契约的超集)。
|
|
185
|
+
*
|
|
186
|
+
* `init_banner` **键常在**、显隐只走 `hidden`;`recommendations` **不传**(老居家页面无此段)。
|
|
187
|
+
* 返回类型**内联**、不另开导出(照 chef `:153-161`;本文件导出面按铁律五收到 2 个函数)。 */
|
|
188
|
+
export function buildHomeHelpFileData(now, opts = {}) {
|
|
189
|
+
const groups = listedGroups();
|
|
190
|
+
assertGroupsUsable(groups);
|
|
191
|
+
// `now` 非法在这里就炸,不把坏时间带进载荷。
|
|
192
|
+
const subtitle = deriveSubtitleLine(now, groups);
|
|
193
|
+
return Object.freeze({
|
|
194
|
+
skill_name: HELP_FILE_SKILL_NAME,
|
|
195
|
+
title: HELP_FILE_TITLE,
|
|
196
|
+
subtitle,
|
|
197
|
+
contact: HOME_HELP_CONTACT,
|
|
198
|
+
groups,
|
|
199
|
+
meta_blocks: buildMetaBlocks(subtitle, groups),
|
|
200
|
+
version: HELP_FILE_VERSION,
|
|
201
|
+
init_banner: Object.freeze({
|
|
202
|
+
title: '🚀 第一次用居家管家?',
|
|
203
|
+
subtitle: '从「首次使用」开始 — 检测环境、确认数据目录、建库、验证读写,全程零决策。完成初始化后,本区域将不再出现。',
|
|
204
|
+
button_text: '📋 复制初始化 prompt',
|
|
205
|
+
prompt: initPromptFrom(groups),
|
|
206
|
+
closable: true,
|
|
207
|
+
hidden: initializedFrom(opts.dbPath, opts.fileExists),
|
|
208
|
+
}),
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
/** 全量 HELP JSON → 全页 HTML(模板唯一实现=共享层 `base-paint/help-shell`;空分组抛 `missing-data`)。
|
|
212
|
+
*
|
|
213
|
+
* `HelpShellData`(`base-render/src/helpShell.ts`)只声明 5 键、运行时**全量透传**;本件产出的载荷是它的
|
|
214
|
+
* **超集**,在这一处收窄类型,**不改公共层**(照 chef `:206-209`/schedule `:179-182`)。 */
|
|
215
|
+
export function renderHomeHelpHtml(data) {
|
|
216
|
+
const payload = data;
|
|
217
|
+
return renderHelpShellHtml(payload);
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=helpFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpFile.js","sourceRoot":"","sources":["../../src/help/helpFile.ts"],"names":[],"mappings":"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"}
|
package/dist/help/index.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
export { buildHelpLookup, lookupHelp } from './lookup.js';
|
|
2
2
|
export type { HelpHit } from './lookup.js';
|
|
3
|
+
export { buildHomeHelpFileData, renderHomeHelpHtml } from './helpFile.js';
|
|
4
|
+
export { deliverHomeHelp } from './output.js';
|
|
5
|
+
export type { HomeHtmlDelivery } from './output.js';
|
|
3
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/help/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/help/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC1D,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/help/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC1D,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAG1E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/help/index.js
CHANGED
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
export { buildHelpLookup, lookupHelp } from './lookup.js';
|
|
2
|
+
// #189 渲染接线:两个函数(造数据/出 HTML)。名字带 Home 前缀,与 `src/render/index.ts` 的
|
|
3
|
+
// 导出零重名(包入口 `src/index.ts` 是 `export *`,重名会被 ESM 静默丢掉)。
|
|
4
|
+
export { buildHomeHelpFileData, renderHomeHelpHtml } from './helpFile.js';
|
|
5
|
+
// #190 落盘接线:唯一落盘点(薄封装,机制在共用件 `base-paint/save-html`)。落点值住 `manifest.ts`,
|
|
6
|
+
// 出口层直接取用;这里只转发落盘那一件,不转发常量(导出面按铁律五收小)。
|
|
7
|
+
export { deliverHomeHelp } from './output.js';
|
|
2
8
|
//# sourceMappingURL=index.js.map
|
package/dist/help/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/help/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/help/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE1D,mEAAmE;AACnE,wDAAwD;AACxD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC1E,yEAAyE;AACzE,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** #190 · 居家管家 HELP 产物的**三个落点值**(零逻辑、零 IO;导出面按铁律五只出值,不出函数)。
|
|
2
|
+
*
|
|
3
|
+
* 三个值=调用者能给的最小信息:① 落点子目录名;② HELP 文件名主体;③ 速查支文件名主体。
|
|
4
|
+
* 出口层(`src/cli/cmd_read.ts`)拿它拼出共用件 `base-paint/save-html` 要的 `{dir, stem}`,
|
|
5
|
+
* 再交给 `src/help/output.ts` 那次调用——本件不碰 IO、不认 `SKILLS_DB_PATH`。
|
|
6
|
+
*
|
|
7
|
+
* ⚠️ **时间戳通式(`YYYYMMDD_HHMMSS`)/同秒 `_N` 递补/独占写(`wx` + `EEXIST`)/复用窗口/
|
|
8
|
+
* 绝对路径回执一概不在这里**:`#237` 起唯一定义地是共用件 `saveHtmlFile`
|
|
9
|
+
* (`packages/base-render/src/output/saveHtml.ts`,账单/卡路里/大厨/作息/备忘五家在用)。
|
|
10
|
+
* 写在这里就是同一件事的第二份定义(铁律二)——账单旧版的 `nextExclusiveCandidate`/
|
|
11
|
+
* `writeFileExclusiveWithRetry` 已经搬进共用件,**不许抄回来**。
|
|
12
|
+
*
|
|
13
|
+
* 老件对应物:老 `help_center.py` 的
|
|
14
|
+
* `<SKILLS_DB_PATH>/home_manager_html/居家管家_HELP_<YYYYMMDD_HHMMSS>.html`(目录名逐字保留,无 `help/` 子层)。
|
|
15
|
+
*/
|
|
16
|
+
/** 落点子目录名:产物=`<SKILLS_DB_PATH>/home_manager_html/…`(老家目录名逐字)。 */
|
|
17
|
+
export declare const HELP_HTML_DIR_NAME: "home_manager_html";
|
|
18
|
+
/** HELP 文件名主体:产物=`居家管家_HELP_<YYYYMMDD_HHMMSS>[_N].html`(老通式逐字;递补起步值走共用件缺省)。 */
|
|
19
|
+
export declare const HELP_FILE_STEM: "\u5C45\u5BB6\u7BA1\u5BB6_HELP";
|
|
20
|
+
/** 速查支的文件名主体:与 HELP 文件**分名**(照 #139 判法——别让用户按一个名字打开到另一个东西)。
|
|
21
|
+
* 老家只有 HELP 一支、无老名可循;取名照样板图 #143(账单的 `饼干记账_速查表`/卡路里的 `卡路里_速查台`)同一后缀。 */
|
|
22
|
+
export declare const LOOKUP_FILE_STEM: "\u5C45\u5BB6\u7BA1\u5BB6_\u901F\u67E5\u8868";
|
|
23
|
+
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/help/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,EAAG,mBAA4B,CAAC;AAE/D,+EAA+E;AAC/E,eAAO,MAAM,cAAc,EAAG,+BAAoB,CAAC;AAEnD;yEACyE;AACzE,eAAO,MAAM,gBAAgB,EAAG,6CAAmB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** #190 · 居家管家 HELP 产物的**三个落点值**(零逻辑、零 IO;导出面按铁律五只出值,不出函数)。
|
|
2
|
+
*
|
|
3
|
+
* 三个值=调用者能给的最小信息:① 落点子目录名;② HELP 文件名主体;③ 速查支文件名主体。
|
|
4
|
+
* 出口层(`src/cli/cmd_read.ts`)拿它拼出共用件 `base-paint/save-html` 要的 `{dir, stem}`,
|
|
5
|
+
* 再交给 `src/help/output.ts` 那次调用——本件不碰 IO、不认 `SKILLS_DB_PATH`。
|
|
6
|
+
*
|
|
7
|
+
* ⚠️ **时间戳通式(`YYYYMMDD_HHMMSS`)/同秒 `_N` 递补/独占写(`wx` + `EEXIST`)/复用窗口/
|
|
8
|
+
* 绝对路径回执一概不在这里**:`#237` 起唯一定义地是共用件 `saveHtmlFile`
|
|
9
|
+
* (`packages/base-render/src/output/saveHtml.ts`,账单/卡路里/大厨/作息/备忘五家在用)。
|
|
10
|
+
* 写在这里就是同一件事的第二份定义(铁律二)——账单旧版的 `nextExclusiveCandidate`/
|
|
11
|
+
* `writeFileExclusiveWithRetry` 已经搬进共用件,**不许抄回来**。
|
|
12
|
+
*
|
|
13
|
+
* 老件对应物:老 `help_center.py` 的
|
|
14
|
+
* `<SKILLS_DB_PATH>/home_manager_html/居家管家_HELP_<YYYYMMDD_HHMMSS>.html`(目录名逐字保留,无 `help/` 子层)。
|
|
15
|
+
*/
|
|
16
|
+
/** 落点子目录名:产物=`<SKILLS_DB_PATH>/home_manager_html/…`(老家目录名逐字)。 */
|
|
17
|
+
export const HELP_HTML_DIR_NAME = 'home_manager_html';
|
|
18
|
+
/** HELP 文件名主体:产物=`居家管家_HELP_<YYYYMMDD_HHMMSS>[_N].html`(老通式逐字;递补起步值走共用件缺省)。 */
|
|
19
|
+
export const HELP_FILE_STEM = '居家管家_HELP';
|
|
20
|
+
/** 速查支的文件名主体:与 HELP 文件**分名**(照 #139 判法——别让用户按一个名字打开到另一个东西)。
|
|
21
|
+
* 老家只有 HELP 一支、无老名可循;取名照样板图 #143(账单的 `饼干记账_速查表`/卡路里的 `卡路里_速查台`)同一后缀。 */
|
|
22
|
+
export const LOOKUP_FILE_STEM = '居家管家_速查表';
|
|
23
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/help/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,iEAAiE;AACjE,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAA4B,CAAC;AAE/D,+EAA+E;AAC/E,MAAM,CAAC,MAAM,cAAc,GAAG,WAAoB,CAAC;AAEnD;yEACyE;AACzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAmB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type HtmlReceipt } from 'base-paint/save-html';
|
|
2
|
+
/** 交付结果(`file` 态唯一;`path` 必为**绝对路径**)。=共用件回执的形状,别名指向它,不另立第二份定义。 */
|
|
3
|
+
export type HomeHtmlDelivery = HtmlReceipt;
|
|
4
|
+
/** 交付一次 HELP HTML(**本包唯一落盘点**):见件头两态与「不静默降级」的取舍。 */
|
|
5
|
+
export declare function deliverHomeHelp(input: {
|
|
6
|
+
readonly explicit?: string;
|
|
7
|
+
readonly targetDir?: string;
|
|
8
|
+
readonly stem?: string;
|
|
9
|
+
readonly html: string;
|
|
10
|
+
readonly reuseMs?: number;
|
|
11
|
+
}): HomeHtmlDelivery;
|
|
12
|
+
//# sourceMappingURL=output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/help/output.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGtE,mEAAmE;AACnE,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAW3C,oDAAoD;AACpD,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,gBAAgB,CA4BnB"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/** #190 · 居家管家 HELP 产物的**唯一落盘点**:`deliverHomeHelp({explicit, targetDir, stem, html, reuseMs})`
|
|
2
|
+
* → `{mode, path, bytes}`(=共用件回执;`path` 恒**绝对路径**,`bytes` 恒**实际落盘**字节数)。
|
|
3
|
+
*
|
|
4
|
+
* 命名通式/时间戳/同秒递补/独占写/复用窗口**一概不由本件自持**:全部调共用件
|
|
5
|
+
* `base-paint/save-html` 的 `saveHtmlFile`(`#237` 起五家在用)。账单旧版的
|
|
6
|
+
* `nextExclusiveCandidate`/`writeFileExclusiveWithRetry` 已搬进共用件——抄回来就是铁律二禁止的
|
|
7
|
+
* 「同一件事两份实现」。本件是**薄封装**:只做「出口裁决 + 缺落点报错 + 写失败口径」三件事。
|
|
8
|
+
*
|
|
9
|
+
* 两态(语义照 bill `src/output.ts:33-37`/schedule `src/help/output.ts:48-57`):
|
|
10
|
+
* - `explicit`(用户逐字指定的落点)→ **覆盖写**(共用件 `onExists:'overwrite'` + `file`:逐字落点、
|
|
11
|
+
* 不带时间戳、不递补、不吃复用窗口);
|
|
12
|
+
* - `targetDir` + `stem`(缺省落点)→ **独占创建 + 递补**(共用件缺省 `succession`);
|
|
13
|
+
* 给了 `reuseMs`(>0)改走**复用窗口**:窗口内已有同一主体的一份就回它,不新建不改写;
|
|
14
|
+
* `reuseMs = 0` ⇒ 每次都落一份新的(共用件 `byAge:0` 是「永不命中」的严格区间,见 `saveHtml.ts:294-301`);
|
|
15
|
+
* - 两者都给时 `explicit` 优先(用户指定胜过缺省落点)。
|
|
16
|
+
* ⚠️ 时间戳只在共用件里算**一次**:调用方给「目录 + 主体」,**不**把带戳的初候选路径传进来
|
|
17
|
+
* (否则共用件会再拼一次时间戳,落出 `<主体>_<stamp>_<stamp>.html`)。
|
|
18
|
+
*
|
|
19
|
+
* 写失败**不静默降级**(票面:缺省交付物=明确拿到文件,写不进去就是真失败):一律抛本包既有渲染层
|
|
20
|
+
* 错误类 `HomeRenderError`,`code` 取该类型已有的「体积/落盘门」那一条 `HOME_HTML_TOO_LARGE`
|
|
21
|
+
* (不新增错误类、不改既有导出面;照 schedule 的同一取舍),由出口 `cmd_read.ts` 走 **exit 5** + stderr 回执。
|
|
22
|
+
*/
|
|
23
|
+
import { basename, dirname, join, resolve } from 'node:path';
|
|
24
|
+
import { saveHtmlFile } from 'base-paint/save-html';
|
|
25
|
+
import { HomeRenderError } from '../render/errors.js';
|
|
26
|
+
/** 落盘失败一律抛本包渲染层错误(`code` 保留原始系统错的信息,不把失败伪装成成功)。 */
|
|
27
|
+
function writeFailed(path, e) {
|
|
28
|
+
if (e instanceof HomeRenderError)
|
|
29
|
+
throw e;
|
|
30
|
+
const code = e?.code;
|
|
31
|
+
const detail = e?.message ?? String(e);
|
|
32
|
+
throw new HomeRenderError('HOME_HTML_TOO_LARGE', '[skill-home] HELP 落盘失败:' + path + '(' + (code ? code + ':' : '') + detail + ')');
|
|
33
|
+
}
|
|
34
|
+
/** 交付一次 HELP HTML(**本包唯一落盘点**):见件头两态与「不静默降级」的取舍。 */
|
|
35
|
+
export function deliverHomeHelp(input) {
|
|
36
|
+
if (typeof input.html !== 'string' || input.html.length === 0) {
|
|
37
|
+
throw new HomeRenderError('HOME_BAD_PAYLOAD', '[skill-home] deliverHomeHelp 缺 HTML 正文(缺失阻断,不写空页)。');
|
|
38
|
+
}
|
|
39
|
+
if (input.explicit !== undefined && input.explicit.length > 0) {
|
|
40
|
+
const written = resolve(input.explicit);
|
|
41
|
+
try {
|
|
42
|
+
return saveHtmlFile({
|
|
43
|
+
dir: dirname(written), file: basename(written), html: input.html, onExists: 'overwrite',
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
catch (e) {
|
|
47
|
+
writeFailed(written, e);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (input.targetDir === undefined || input.targetDir.length === 0 || input.stem === undefined) {
|
|
51
|
+
throw new HomeRenderError('HOME_BAD_PAYLOAD', '[skill-home] deliverHomeHelp 缺落点(`explicit` 与「`targetDir` + `stem`」至少给一组)');
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
return saveHtmlFile({
|
|
55
|
+
dir: input.targetDir,
|
|
56
|
+
stem: input.stem,
|
|
57
|
+
html: input.html,
|
|
58
|
+
...(input.reuseMs === undefined ? {} : { onExists: { reuse: { byAge: input.reuseMs } } }),
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
catch (e) {
|
|
62
|
+
writeFailed(join(input.targetDir, input.stem), e);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/help/output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAoB,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAKtD,mDAAmD;AACnD,SAAS,WAAW,CAAC,IAAY,EAAE,CAAU;IAC3C,IAAI,CAAC,YAAY,eAAe;QAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAI,CAAuC,EAAE,IAAI,CAAC;IAC5D,MAAM,MAAM,GAAI,CAAuB,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAC7C,yBAAyB,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC;AACtF,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,eAAe,CAAC,KAM/B;IACC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,eAAe,CAAC,kBAAkB,EAAE,oDAAoD,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC;YACH,OAAO,YAAY,CAAC;gBAClB,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW;aACxF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9F,MAAM,IAAI,eAAe,CAAC,kBAAkB,EAC1C,2EAA2E,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,CAAC;QACH,OAAO,YAAY,CAAC;YAClB,GAAG,EAAE,KAAK,CAAC,SAAS;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC;SAC1F,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "skill-home",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "居家管家SKILL一期:取数+口径+渲染+出口(21 联动 key+cmd_read+SKILL+HELP+parity),依 link-core",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -10,23 +10,28 @@
|
|
|
10
10
|
"./fetch": "./dist/fetch/index.js",
|
|
11
11
|
"./policy": "./dist/policy/index.js",
|
|
12
12
|
"./render": "./dist/render/index.js",
|
|
13
|
-
"./cli": "./dist/cli/cmd_read.js"
|
|
13
|
+
"./cli": "./dist/cli/cmd_read.js",
|
|
14
|
+
"./package.json": "./package.json"
|
|
14
15
|
},
|
|
15
16
|
"files": [
|
|
16
17
|
"dist",
|
|
18
|
+
"SKILL.md",
|
|
17
19
|
"templates/*.html"
|
|
18
20
|
],
|
|
19
21
|
"bin": {
|
|
20
22
|
"home-cmd-read": "./dist/cli/cmd_read.js"
|
|
21
23
|
},
|
|
22
24
|
"dependencies": {
|
|
23
|
-
"base-link-core": "
|
|
25
|
+
"base-link-core": "^0.3.0",
|
|
26
|
+
"base-paint": "^0.3.0"
|
|
24
27
|
},
|
|
25
28
|
"engines": {
|
|
26
29
|
"node": ">=22.13"
|
|
27
30
|
},
|
|
28
31
|
"scripts": {
|
|
29
32
|
"build": "tsc -b && node scripts/build-help.mjs",
|
|
30
|
-
"test": "node --test ../../test/scaffold.test.mjs"
|
|
33
|
+
"test": "node --test test/help-assets.test.mjs test/help-delivery-190.test.mjs ../../test/scaffold.test.mjs",
|
|
34
|
+
"gen:help-assets": "node scripts/gen-help-assets.mjs",
|
|
35
|
+
"gen:help-assets:check": "node scripts/gen-help-assets.mjs --check"
|
|
31
36
|
}
|
|
32
37
|
}
|