c456-cli 0.6.0 → 0.7.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/README.md CHANGED
@@ -35,30 +35,16 @@ npx c456-cli --help
35
35
  bunx c456-cli --help
36
36
  ```
37
37
 
38
- ### Agent 技能(`c456 skills install`)
38
+ ### Agent 技能(`c456 skill install`)
39
39
 
40
- 已全局安装 **c456-cli** 且本机可用 **`npx`** 后,在**目标项目根**执行:
40
+ 已全局安装 **c456-cli** 且本机可用 **`npx`** 后,在目标项目根执行 `c456 skill install`。交互终端下为多选(含 **取消安装**);传技能 id 或加 **`--with-wiki`** 则不经菜单。常用参数:**`-C`**、**`-g`**、**`-a`**、**`--copy`**(与 `skills add` 一致)。私人知识库三件套见 [private-knowledge-base.md §3](./docs/private-knowledge-base.md)。
41
41
 
42
42
  ```bash
43
- c456 skills install
43
+ c456 skill install
44
+ c456 skill install c456-signal-product-vs c456-signal-researcher
45
+ c456 skill install --with-wiki
44
46
  ```
45
47
 
46
- 封装 **`npx skills add`** 从网络拉取技能。**`c456-cli` 始终会安装**;在交互终端下会弹出**多选菜单**(固定可选项 **karpathy-wiki**;其余来自本包随 npm 发布的 **`skills/`** 目录下的 **`c456-*`** 技能清单)。也可显式指定技能 id(免菜单),例如:
47
-
48
- ```bash
49
- c456 skills install c456-signal-product-vs c456-signal-researcher
50
- ```
51
-
52
- **`--with-wiki`** 会依次装 **karpathy-wiki**、**c456-llm-wiki** 与 **c456-cli**,适合私人知识库一条命令装齐(见 [private-knowledge-base.md §3](./docs/private-knowledge-base.md))。
53
-
54
- 常用参数(透传给 `skills add`):
55
-
56
- - **`--with-wiki`**:私人知识库三件套(不经菜单)
57
- - **`-C, --cwd <path>`**:在哪个目录下解析「项目级」安装(默认当前目录;具体路径由 skills CLI 决定)
58
- - **`-g, --global`**:用户级技能目录
59
- - **`-a, --agent`**:目标 Agent(如 `cursor`、`claude-code` 等),默认 `cursor`;与 `skills add` 一致
60
- - **`--copy`**:复制文件而非 symlink
61
-
62
48
  ## 配置
63
49
 
64
50
  ### API Key
package/dist/index.js CHANGED
@@ -11031,7 +11031,7 @@ import { Command as Command13 } from "commander";
11031
11031
  // package.json
11032
11032
  var package_default = {
11033
11033
  name: "c456-cli",
11034
- version: "0.6.0",
11034
+ version: "0.7.0",
11035
11035
  description: "C456 CLI - \u5185\u5BB9\u5F55\u5165\u4E0E\u6574\u7406\u5DE5\u5177",
11036
11036
  type: "module",
11037
11037
  bin: {
@@ -15594,45 +15594,55 @@ async function installSkillSet(idSet, base) {
15594
15594
  async function promptInteractiveSelection(bundled) {
15595
15595
  if (!input.isTTY || !output.isTTY) {
15596
15596
  console.error(
15597
- "\u63D0\u793A\uFF1A\u5F53\u524D\u975E\u4EA4\u4E92\u7EC8\u7AEF\uFF0C\u672A\u5C55\u793A\u83DC\u5355\uFF1B\u4EC5\u5B89\u88C5 c456-cli\u3002\u8BF7\u663E\u5F0F\u6307\u5B9A\uFF1Ac456 skills install <\u6280\u80FDid> \u2026"
15597
+ "\u63D0\u793A\uFF1A\u975E\u4EA4\u4E92\u7EC8\u7AEF\u672A\u5C55\u793A\u83DC\u5355\uFF0C\u4EC5\u5B89\u88C5 c456-cli\u3002\u8BF7\u663E\u5F0F\u6307\u5B9A\uFF1Ac456 skill install <\u6280\u80FDid> \u2026"
15598
15598
  );
15599
15599
  return /* @__PURE__ */ new Set([MANDATORY_SKILL_ID]);
15600
15600
  }
15601
+ const CANCEL_VALUE = "__cancel__";
15601
15602
  const choices = [
15602
15603
  {
15603
15604
  name: "c456-cli\uFF08\u5FC5\u9009\uFF09",
15604
15605
  value: MANDATORY_SKILL_ID,
15605
15606
  checked: true,
15606
- description: "C456 \u7EC8\u7AEF\u547D\u4EE4\u4E0E HTTP API \u7684 Agent \u8BF4\u660E\uFF1B\u8BF7\u52FF\u53D6\u6D88\u52FE\u9009"
15607
+ description: "\u7EC8\u7AEF\u4E0E HTTP API \u8BF4\u660E"
15607
15608
  },
15608
15609
  {
15609
15610
  name: "karpathy-wiki\uFF08\u53EF\u9009\uFF09",
15610
15611
  value: KARPATHY_SKILL_ID,
15611
- description: "Karpathy / \u5361\u5E15\u897F\u5F0F LLM Wiki \u7684 raw\u3001wiki \u7B49\u76EE\u5F55\u7EA6\u5B9A\uFF1B\u6765\u6E90 baklib-tools/skills"
15612
+ description: "LLM Wiki \u76EE\u5F55\u7EA6\u5B9A\uFF08baklib-tools/skills\uFF09"
15612
15613
  },
15613
15614
  ...bundled.map((b) => ({
15614
15615
  name: b.id,
15615
15616
  value: b.id,
15616
15617
  description: b.title || void 0
15617
- }))
15618
+ })),
15619
+ {
15620
+ name: "\u53D6\u6D88\u5B89\u88C5",
15621
+ value: CANCEL_VALUE
15622
+ }
15618
15623
  ];
15619
15624
  try {
15620
15625
  const picked = await esm_default2({
15621
- message: "\u5C06\u8981\u901A\u8FC7 npx skills \u5199\u5165\u672C\u673A Agent \u7684\u6280\u80FD",
15626
+ message: "\u9009\u62E9\u8981\u5B89\u88C5\u7684\u6280\u80FD",
15622
15627
  pageSize: 14,
15623
15628
  loop: true,
15624
15629
  required: false,
15625
15630
  validate: (selection) => {
15626
15631
  const ids = new Set(selection.map((c) => c.value));
15632
+ if (ids.has(CANCEL_VALUE)) return true;
15627
15633
  if (!ids.has(MANDATORY_SKILL_ID)) {
15628
- return "c456-cli \u4E3A\u5FC5\u9009\uFF1A\u8BF7\u7528\u7A7A\u683C\u5C06\u8BE5\u884C\u52FE\u4E0A\u540E\u518D\u56DE\u8F66";
15634
+ return "\u8BF7\u52FE\u9009 c456-cli\uFF0C\u6216\u52FE\u9009\u300C\u53D6\u6D88\u5B89\u88C5\u300D";
15629
15635
  }
15630
15636
  return true;
15631
15637
  },
15632
- instructions: "\uFF08\u2191\u2193 \u79FB\u52A8\uFF1B\u7A7A\u683C \u52FE\u9009/\u53D6\u6D88\uFF1B\u56DE\u8F66 \u786E\u8BA4\u3002c456-cli \u52FF\u53D6\u6D88\u52FE\u9009\uFF1B\u672A\u52FE\u9009\u7684\u5305\u4E0D\u4F1A\u6267\u884C npx\u3002\uFF09",
15638
+ instructions: "\u2191\u2193 \u79FB\u52A8\uFF0C\u7A7A\u683C \u52FE\u9009\uFF0C\u56DE\u8F66 \u786E\u8BA4",
15633
15639
  shortcuts: { all: null, invert: null },
15634
15640
  choices
15635
15641
  });
15642
+ if (picked.includes(CANCEL_VALUE)) {
15643
+ console.error("\n\u5DF2\u53D6\u6D88\u5B89\u88C5\u3002");
15644
+ process.exit(0);
15645
+ }
15636
15646
  return /* @__PURE__ */ new Set([MANDATORY_SKILL_ID, ...picked]);
15637
15647
  } catch (e) {
15638
15648
  const n = e && typeof e === "object" && "name" in e ? e.name : "";
@@ -15643,22 +15653,10 @@ async function promptInteractiveSelection(bundled) {
15643
15653
  throw e;
15644
15654
  }
15645
15655
  }
15646
- var skillsCmd = new Command12("skills").name("skills").description("\u5B89\u88C5 C456 Agent \u6280\u80FD\uFF1A\u5C01\u88C5 npx skills add\uFF08\u4ECE\u7F51\u7EDC\u62C9\u53D6\uFF09");
15647
- skillsCmd.command("install").description(
15648
- "\u4EA4\u4E92\uFF1A\u7EC8\u7AEF\u590D\u9009\uFF08\u2191\u2193\u3001\u7A7A\u683C\u3001\u56DE\u8F66\uFF1Bc456-cli \u9ED8\u8BA4\u52FE\u9009\u4E14\u63D0\u4EA4\u524D\u6821\u9A8C\u5FC5\u9009\uFF09\u3002\u4F20\u6280\u80FD id \u5219\u514D\u4EA4\u4E92\u3002--with-wiki \u7B49\u4EF7\u4E8E\u79C1\u4EBA\u77E5\u8BC6\u5E93\u4E09\u4EF6\u5957\u3002"
15649
- ).argument(
15650
- "[skillIds...]",
15651
- "\u4E00\u4E2A\u6216\u591A\u4E2A\u6280\u80FD id\uFF08\u5982 c456-signal-researcher\uFF09\uFF1B\u51FA\u73B0\u65F6\u8DF3\u8FC7\u83DC\u5355\uFF0C\u4E14\u4ECD\u4F1A\u5B89\u88C5 c456-cli"
15652
- ).option(
15653
- "-C, --cwd <path>",
15654
- "\u6267\u884C skills \u7684\u5DE5\u4F5C\u76EE\u5F55\uFF08\u9ED8\u8BA4\u5F53\u524D\u76EE\u5F55\uFF1B\u5177\u4F53\u5199\u5165\u8DEF\u5F84\u7531 skills CLI \u4E0E\u5404 Agent \u7EA6\u5B9A\uFF09"
15655
- ).option("-g, --global", "\u4F20\u7ED9 skills add\uFF1A\u5B89\u88C5\u5230\u7528\u6237\u7EA7\u6280\u80FD\u76EE\u5F55", false).option(
15656
- "-a, --agent <names>",
15657
- "\u4F20\u7ED9 skills add --agent\uFF08\u5982 cursor\u3001claude-code \u7B49\uFF09\uFF0C\u9ED8\u8BA4 cursor",
15658
- "cursor"
15659
- ).option("--copy", "\u4F20\u7ED9 skills add\uFF1A\u590D\u5236\u6587\u4EF6\u800C\u975E symlink", false).option(
15656
+ var skillCmd = new Command12("skill").name("skill").description("\u5B89\u88C5 Agent \u6280\u80FD\uFF08npx skills add\uFF09");
15657
+ skillCmd.command("install").description("TTY \u591A\u9009\uFF1B\u4F20\u6280\u80FD id \u514D\u4EA4\u4E92\uFF1B--with-wiki \u88C5\u77E5\u8BC6\u5E93\u4E09\u4EF6\u5957").argument("[skillIds...]", "\u6280\u80FD id\uFF0C\u53EF\u591A\u4E2A\uFF1B\u4E0E c456-cli \u4E00\u5E76\u5B89\u88C5").option("-C, --cwd <path>", "skills add \u7684\u5DE5\u4F5C\u76EE\u5F55\uFF08\u9ED8\u8BA4\u5F53\u524D\u76EE\u5F55\uFF09").option("-g, --global", "\u7528\u6237\u7EA7\u6280\u80FD\u76EE\u5F55", false).option("-a, --agent <names>", "\u76EE\u6807 Agent\uFF0C\u9ED8\u8BA4 cursor", "cursor").option("--copy", "\u590D\u5236\u6587\u4EF6\u800C\u975E symlink", false).option(
15660
15658
  "--with-wiki",
15661
- "\u79C1\u4EBA\u77E5\u8BC6\u5E93\uFF1A\u5148\u88C5 karpathy-wiki\uFF08baklib-tools/skills\uFF09\uFF0C\u518D\u88C5 c456-llm-wiki \u4E0E c456-cli\uFF08\u4E0D\u7ECF\u83DC\u5355\uFF09",
15659
+ "karpathy-wiki + c456-llm-wiki + c456-cli\uFF0C\u4E0D\u7ECF\u83DC\u5355",
15662
15660
  false
15663
15661
  ).action(async (skillIds, opts) => {
15664
15662
  const base = buildSkillsOpts(opts);
@@ -15693,7 +15691,7 @@ skillsCmd.command("install").description(
15693
15691
  }
15694
15692
  await installSkillSet(toInstall, base);
15695
15693
  });
15696
- var skills_default = skillsCmd;
15694
+ var skills_default = skillCmd;
15697
15695
 
15698
15696
  // src/banner.js
15699
15697
  import cfonts from "cfonts";
@@ -15911,10 +15909,10 @@ program.on("--help", () => {
15911
15909
  console.log(" # \u641C\u7D22\u6536\u5F55");
15912
15910
  console.log(' c456 search signals -q "AI agent"');
15913
15911
  console.log("");
15914
- console.log(" # \u5B89\u88C5 Agent \u6280\u80FD\uFF08\u4EA4\u4E92\u591A\u9009\uFF1B\u514D\u4EA4\u4E92\u53EF\u4F20\u6280\u80FD id\uFF1B\u77E5\u8BC6\u5E93\u4E00\u6761\u88C5\u9F50\u8BF7\u52A0 --with-wiki\uFF09");
15915
- console.log(" c456 skills install");
15916
- console.log(" c456 skills install c456-signal-researcher c456-sync-public-markdown");
15917
- console.log(" c456 skills install --with-wiki");
15912
+ console.log(" # \u5B89\u88C5 Agent \u6280\u80FD\uFF08\u4EA4\u4E92 / \u4F20 id / --with-wiki\uFF09");
15913
+ console.log(" c456 skill install");
15914
+ console.log(" c456 skill install c456-signal-researcher c456-sync-public-markdown");
15915
+ console.log(" c456 skill install --with-wiki");
15918
15916
  console.log("");
15919
15917
  console.log("\u73AF\u5883\u53D8\u91CF:");
15920
15918
  console.log(" C456_URL - \u7AD9\u70B9\u6839\u5730\u5740\uFF08\u4E0E -B / --base-url \u4E00\u81F4\uFF09");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "c456-cli",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "C456 CLI - 内容录入与整理工具",
5
5
  "type": "module",
6
6
  "bin": {
@@ -22,27 +22,25 @@ description: >-
22
22
  **推荐**:在目标项目根目录执行(内部调用官方 **`npx skills add`**,需本机可执行 `npx`):
23
23
 
24
24
  ```bash
25
- c456 skills install
25
+ c456 skill install
26
26
  ```
27
27
 
28
- - **交互终端**:出现**多选菜单**——**`c456-cli` 始终会装**;**`karpathy-wiki`(卡帕西目录约定)**为固定可选项 **[0]**;其余 **`skills/` 下以 `c456-` 为前缀的技能**按序号动态列出(随本包发布更新)。
29
- - **免交互**:直接跟技能 id,仍会**自动包含 `c456-cli`**,例如:
28
+ - **交互终端**:多选菜单(**取消安装** 在列表末尾);**`c456-cli` 必选**;**`karpathy-wiki`** **`skills/` `c456-*`** 可选。
29
+ - **免交互**:命令后接技能 id(仍含 **`c456-cli`**),例如:
30
30
 
31
31
  ```bash
32
- c456 skills install c456-signal-product-vs c456-signal-researcher
32
+ c456 skill install c456-signal-product-vs c456-signal-researcher
33
33
  ```
34
34
 
35
35
  - **非交互终端**(无 TTY、且未传技能 id):仅安装 **`c456-cli`**,并在 stderr 提示可用「显式 id」方式多装。
36
36
 
37
- 私人知识库场景可**一条命令**装齐 **karpathy-wiki**、**c456-llm-wiki** 与 **c456-cli**:
37
+ 私人知识库一条装齐:
38
38
 
39
39
  ```bash
40
- c456 skills install --with-wiki
40
+ c456 skill install --with-wiki
41
41
  ```
42
42
 
43
- 上述流程均为 **`npx skills add` 从网络拉取**(`--with-wiki` 时先 `baklib-tools/skills` 的 **karpathy-wiki**,再 GitHub 源的 **c456-llm-wiki** 与 **c456-cli**)。详见 [`docs/private-knowledge-base.md`](../../docs/private-knowledge-base.md) §3。
44
-
45
- 安装顺序(含菜单多选时):**karpathy-wiki**(若选)→ **c456-llm-wiki**(若选,优先于其它 `c456-*`)→ 其余所选 **`c456-*`** → **`c456-cli`**。失败则退出(无本地包复制)。可用 **`-C/--cwd`**、**`-g`**、**`-a`**、**`--copy`**,语义与 `skills add` 一致(`-a` 用于指定 Agent,如 `cursor`、`claude-code` 等)。
43
+ 细节与顺序见 [`docs/private-knowledge-base.md`](../../docs/private-knowledge-base.md) §3。
46
44
 
47
45
  也可自行执行:
48
46
 
@@ -88,9 +86,9 @@ npx skills add . --skill c456-cli -y
88
86
 
89
87
  - `c456 config set-key <token> [-g]` / `set-url <url> [-g]` / `show [-g]` / `reset [-g] [-f]`(`-g` = 仅全局 `~/.config/c456`;默认 = 项目 `.c456-cli`)
90
88
 
91
- **技能 `skills`**
89
+ **技能 `skill`**
92
90
 
93
- - `c456 skills install [[skillIds...]] [--with-wiki] [-C <cwd>] [-g] [-a <agent>] [--copy]`(仅 `npx skills add`;无参数且为 TTY 时多选菜单;传 `skillIds` 免交互;`--with-wiki` 时装 karpathy-wiki、c456-llm-wiki 与 c456-cli,见 docs/private-knowledge-base.md §3)
91
+ - `c456 skill install [[skillIds...]] [--with-wiki] [-C <cwd>] [-g] [-a <agent>] [--copy]`(仅 `npx skills add`;无参数且为 TTY 时多选菜单;传 `skillIds` 免交互;`--with-wiki` 时装 karpathy-wiki、c456-llm-wiki 与 c456-cli,见 docs/private-knowledge-base.md §3)
94
92
 
95
93
  **浏览器(系统 Chrome + CDP)**
96
94