@qfeius/everyline-cli 0.1.5 → 0.1.7
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/bin/checksums.txt +6 -6
- package/bin/darwin-amd64/everyline-cli +0 -0
- package/bin/darwin-arm64/everyline-cli +0 -0
- package/bin/linux-amd64/everyline-cli +0 -0
- package/bin/linux-arm64/everyline-cli +0 -0
- package/bin/windows-amd64/everyline-cli.exe +0 -0
- package/bin/windows-arm64/everyline-cli.exe +0 -0
- package/docs/everyline-cli-skill-guide.md +15 -3
- package/package.json +1 -1
- package/scripts/install.js +37 -0
- package/skills/everyline-review/SKILL.md +329 -186
- package/skills/everyline-review/references/review-config.md +8 -0
- package/skills/everyline-review-config/SKILL.md +205 -34
- package/skills/everyline-review/references/review-flow.md +0 -156
- package/skills/everyline-review-config/references/management.md +0 -138
package/bin/checksums.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
ba21698514a93c847ffc55dabcb62ff47f2d179d7f84d241889d9c7eb7f4d37f bin/darwin-amd64/everyline-cli
|
|
2
|
+
c0386b4268cb17b1ee164e4ff624f1ede8d0cd22b0d665e94e944f8ed9a90ffd bin/darwin-arm64/everyline-cli
|
|
3
|
+
5b57406ed950bb8cb111c8884faf99bdec1ef1c10d85618a1de7909a998ec433 bin/linux-amd64/everyline-cli
|
|
4
|
+
85b80929fa0e8782dfacbf89c85da78b44820fe05edd524f3d0e26c51f77221f bin/linux-arm64/everyline-cli
|
|
5
|
+
82c77ba745c24898ea8a89f9ffe2db4562a5376bb09992aea3e18d083b297b6e bin/windows-amd64/everyline-cli.exe
|
|
6
|
+
bedae910c506e47f2d04a4445ca57215b8f72b0c62761b5737aea947c8457784 bin/windows-arm64/everyline-cli.exe
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -8,8 +8,8 @@ Skill 的安装位置和验证入口由 Agent 宿主决定,不要跨宿主复
|
|
|
8
8
|
|
|
9
9
|
| 宿主 | 安装入口 | 用户级位置或管理方式 |
|
|
10
10
|
| --- | --- | --- |
|
|
11
|
-
| Codex | 本地 Skill 目录 | `$HOME/.agents/skills/everyline-{
|
|
12
|
-
| WorkBuddy | 「专家·技能·连接器」或本地 Skill 目录 | `$HOME/.workbuddy/skills/everyline-{
|
|
11
|
+
| Codex | 本地 Skill 目录 | `$HOME/.agents/skills/everyline-{review,review-config}` |
|
|
12
|
+
| WorkBuddy | 「专家·技能·连接器」或本地 Skill 目录 | `$HOME/.workbuddy/skills/everyline-{review,review-config}` |
|
|
13
13
|
| 豆包 | 本地 npm 同步,或技能管理中的 ZIP 导入 | 本地使用已存在的 `workspace/.user_skills`;自定义目录用 `EVERYLINE_DOUBAO_SKILLS_DIR` 指定;云端仍分别导入两个 `*-skill.zip` |
|
|
14
14
|
|
|
15
15
|
OpenAI 官方文档将 Skill 定义为包含 `SKILL.md` 及可选 references、scripts、assets 的目录。Codex 支持显式 `$skill-name` 调用和按 description 自动触发,并扫描用户级 `$HOME/.agents/skills`。详见 [OpenAI Build skills](https://learn.chatgpt.com/docs/build-skills)。WorkBuddy 使用自己的 `$HOME/.workbuddy/skills`,可参考 [WorkBuddy 技能系统说明](https://cloud.tencent.com/developer/article/2693324);豆包电脑版当前通过界面上传本地 Skill,可参考 [豆包工作任务自定义 Skill 说明](https://www.beating.news/flash/362784),最终入口以客户端实际展示为准。
|
|
@@ -202,7 +202,7 @@ dist/everyline-review-skill.zip
|
|
|
202
202
|
dist/everyline-review-config-skill.zip
|
|
203
203
|
```
|
|
204
204
|
|
|
205
|
-
每个 ZIP 根目录都直接包含自己的 `SKILL.md
|
|
205
|
+
每个 ZIP 根目录都直接包含自己的 `SKILL.md`;review ZIP 还包含配置路由参考页 `references/review-config.md`,config 的完整操作流程在其 `SKILL.md` 中。构建过程会清理旧的 `dist/everyline-shared-skill.zip` 和 `dist/everyline-cli-skill.zip`,避免重复导入公共授权入口。
|
|
206
206
|
|
|
207
207
|
在豆包中安装:
|
|
208
208
|
|
|
@@ -641,3 +641,15 @@ Windows PowerShell 使用自定义 prefix 时:
|
|
|
641
641
|
$EverylineNpmPrefix = Join-Path $HOME ".local"
|
|
642
642
|
npm uninstall -g --prefix $EverylineNpmPrefix @qfeius/everyline-cli
|
|
643
643
|
```
|
|
644
|
+
|
|
645
|
+
### 恢复缺失的命令入口
|
|
646
|
+
|
|
647
|
+
macOS/Linux 全局包仍存在但 `everyline-cli` 命令入口缺失时,使用原安装 prefix 执行:
|
|
648
|
+
|
|
649
|
+
```bash
|
|
650
|
+
npm rebuild -g --foreground-scripts --allow-scripts=@qfeius/everyline-cli @qfeius/everyline-cli
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
安装脚本会按包实际所在 prefix 检查并恢复缺失链接;显式设置 `--bin-links=false` 时跳过恢复。已有文件或链接保持原样;Windows 的命令 shim 由 npm rebuild 管理。入口后来再次被删除时,需要重新执行恢复命令,不会在后台自动重建。
|
|
654
|
+
|
|
655
|
+
两个 Skill 的主文件以提供的附件为内容基准:review 主文件包含完整公共接入及审查流程,配置操作全文放在 config 主文件;review 的配置参考页仅负责转交 config。配置入口按宿主技能名称加载 review 的公共接入章节,不依赖跨 ZIP 的相对路径。
|
package/package.json
CHANGED
package/scripts/install.js
CHANGED
|
@@ -346,6 +346,40 @@ function ensureFirstInstallState(packageRoot, environment, userHome, platform, r
|
|
|
346
346
|
return { path: statePath, ...JSON.parse(output) };
|
|
347
347
|
}
|
|
348
348
|
|
|
349
|
+
/**
|
|
350
|
+
* restoreGlobalCommand 恢复 macOS/Linux 全局包缺失的命令链接,保留已有入口。
|
|
351
|
+
* 入参:packageRoot(string)为包目录;platform(string)为平台;environment(object)为 npm 环境。
|
|
352
|
+
* 返回值:void;禁用命令链接、非全局、Windows 或非标准全局布局直接返回,文件系统错误向上传递。
|
|
353
|
+
*/
|
|
354
|
+
function restoreGlobalCommand(packageRoot, platform, environment) {
|
|
355
|
+
// 尊重 npm 显式禁用命令链接的选择,避免 postinstall 重新创建已被 npm 跳过的入口。
|
|
356
|
+
if (environment.npm_config_bin_links === "false" ||
|
|
357
|
+
environment.npm_config_global !== "true" || platform === "win32") return;
|
|
358
|
+
// 从包实际所在位置推导 prefix,避免使用另一个 Node/npm 的全局目录。
|
|
359
|
+
const root = resolve(packageRoot);
|
|
360
|
+
const modules = dirname(dirname(root));
|
|
361
|
+
if (basename(root) !== "everyline-cli" || basename(dirname(root)) !== "@qfeius" ||
|
|
362
|
+
basename(modules) !== "node_modules" || basename(dirname(modules)) !== "lib") return;
|
|
363
|
+
const source = join(root, "scripts", "run.js");
|
|
364
|
+
if (!existsSync(source)) throw new Error(`npm 包缺少命令入口: ${source}`);
|
|
365
|
+
const target = join(dirname(dirname(modules)), "bin", "everyline-cli");
|
|
366
|
+
try {
|
|
367
|
+
// lstat 也能识别失效链接;已有入口交给 npm 管理,绝不覆盖用户文件。
|
|
368
|
+
lstatSync(target);
|
|
369
|
+
return;
|
|
370
|
+
} catch (error) {
|
|
371
|
+
if (error.code !== "ENOENT") throw error;
|
|
372
|
+
}
|
|
373
|
+
mkdirSync(dirname(target), { recursive: true });
|
|
374
|
+
chmodSync(source, 0o755);
|
|
375
|
+
try {
|
|
376
|
+
symlinkSync(source, target);
|
|
377
|
+
} catch (error) {
|
|
378
|
+
// 并发 npm 已创建入口时保留其结果。
|
|
379
|
+
if (error.code !== "EEXIST") throw error;
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
|
|
349
383
|
/**
|
|
350
384
|
* installPackage 保留首次安装意图,将三宿主同步、废弃入口迁出和最终安装状态提交放在同一恢复流程中。
|
|
351
385
|
* 入参:options(object,可选),可注入 packageRoot、platform、architecture、environment 和 userHome 供安装与测试使用。
|
|
@@ -368,6 +402,8 @@ function installPackage(options = {}) {
|
|
|
368
402
|
chmodSync(binary, 0o755);
|
|
369
403
|
}
|
|
370
404
|
|
|
405
|
+
restoreGlobalCommand(packageRoot, platform, environment);
|
|
406
|
+
|
|
371
407
|
if (!shouldInstallCodexSkill(environment)) {
|
|
372
408
|
return {
|
|
373
409
|
binary,
|
|
@@ -492,6 +528,7 @@ if (require.main === module) {
|
|
|
492
528
|
}
|
|
493
529
|
|
|
494
530
|
module.exports = {
|
|
531
|
+
restoreGlobalCommand,
|
|
495
532
|
formatInstallOutput,
|
|
496
533
|
installPackage,
|
|
497
534
|
ensureFirstInstallState,
|