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 +5 -19
- package/dist/index.js +26 -28
- package/package.json +1 -1
- package/skills/c456-cli/SKILL.md +9 -11
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
|
|
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
|
|
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.
|
|
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\
|
|
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: "
|
|
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: "
|
|
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: "\
|
|
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 "
|
|
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: "\
|
|
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
|
|
15647
|
-
|
|
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
|
-
"
|
|
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 =
|
|
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\
|
|
15915
|
-
console.log(" c456
|
|
15916
|
-
console.log(" c456
|
|
15917
|
-
console.log(" c456
|
|
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
package/skills/c456-cli/SKILL.md
CHANGED
|
@@ -22,27 +22,25 @@ description: >-
|
|
|
22
22
|
**推荐**:在目标项目根目录执行(内部调用官方 **`npx skills add`**,需本机可执行 `npx`):
|
|
23
23
|
|
|
24
24
|
```bash
|
|
25
|
-
c456
|
|
25
|
+
c456 skill install
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
28
|
+
- **交互终端**:多选菜单(**取消安装** 在列表末尾);**`c456-cli` 必选**;**`karpathy-wiki`** 与 **`skills/` 下 `c456-*`** 可选。
|
|
29
|
+
- **免交互**:命令后接技能 id(仍含 **`c456-cli`**),例如:
|
|
30
30
|
|
|
31
31
|
```bash
|
|
32
|
-
c456
|
|
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
|
-
|
|
37
|
+
私人知识库一条装齐:
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
|
-
c456
|
|
40
|
+
c456 skill install --with-wiki
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
|
|
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
|
-
**技能 `
|
|
89
|
+
**技能 `skill`**
|
|
92
90
|
|
|
93
|
-
- `c456
|
|
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
|
|