openfeel 1.2.1 → 1.2.4
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.en.md +34 -1
- package/README.md +34 -1
- package/README.zh-CN.md +34 -1
- package/dist/cli/index.d.ts +17 -3
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +96 -8
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/project-option.d.ts +40 -0
- package/dist/cli/project-option.d.ts.map +1 -0
- package/dist/cli/project-option.js +140 -0
- package/dist/cli/project-option.js.map +1 -0
- package/dist/commands/archive.d.ts.map +1 -1
- package/dist/commands/archive.js +45 -4
- package/dist/commands/archive.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +103 -9
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/flow.d.ts.map +1 -1
- package/dist/commands/flow.js +438 -125
- package/dist/commands/flow.js.map +1 -1
- package/dist/commands/instructions.d.ts.map +1 -1
- package/dist/commands/instructions.js +13 -3
- package/dist/commands/instructions.js.map +1 -1
- package/dist/commands/knowledge.d.ts.map +1 -1
- package/dist/commands/knowledge.js +113 -17
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/lint.d.ts.map +1 -1
- package/dist/commands/lint.js +78 -39
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/model.d.ts.map +1 -1
- package/dist/commands/model.js +86 -8
- package/dist/commands/model.js.map +1 -1
- package/dist/commands/plan.d.ts.map +1 -1
- package/dist/commands/plan.js +45 -7
- package/dist/commands/plan.js.map +1 -1
- package/dist/commands/project.d.ts +66 -0
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +122 -64
- package/dist/commands/project.js.map +1 -1
- package/dist/commands/req.d.ts.map +1 -1
- package/dist/commands/req.js +23 -11
- package/dist/commands/req.js.map +1 -1
- package/dist/commands/roadmap.d.ts.map +1 -1
- package/dist/commands/roadmap.js +21 -2
- package/dist/commands/roadmap.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +11 -3
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/shared/errors.d.ts +55 -4
- package/dist/commands/shared/errors.d.ts.map +1 -1
- package/dist/commands/shared/errors.js +108 -10
- package/dist/commands/shared/errors.js.map +1 -1
- package/dist/commands/shared/json-output.d.ts +60 -0
- package/dist/commands/shared/json-output.d.ts.map +1 -0
- package/dist/commands/shared/json-output.js +152 -0
- package/dist/commands/shared/json-output.js.map +1 -0
- package/dist/commands/stage.d.ts.map +1 -1
- package/dist/commands/stage.js +62 -6
- package/dist/commands/stage.js.map +1 -1
- package/dist/commands/view.d.ts.map +1 -1
- package/dist/commands/view.js +27 -0
- package/dist/commands/view.js.map +1 -1
- package/dist/core/archive/merge.d.ts +16 -1
- package/dist/core/archive/merge.d.ts.map +1 -1
- package/dist/core/archive/merge.js +27 -4
- package/dist/core/archive/merge.js.map +1 -1
- package/dist/core/config.js +2 -2
- package/dist/core/errors.d.ts +105 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +61 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/flow-manager.d.ts +13 -0
- package/dist/core/flow-manager.d.ts.map +1 -1
- package/dist/core/flow-manager.js +22 -0
- package/dist/core/flow-manager.js.map +1 -1
- package/dist/core/fs/file-lock.d.ts +9 -0
- package/dist/core/fs/file-lock.d.ts.map +1 -1
- package/dist/core/fs/file-lock.js +27 -1
- package/dist/core/fs/file-lock.js.map +1 -1
- package/dist/core/i18n-data/en.d.ts.map +1 -1
- package/dist/core/i18n-data/en.js +53 -3
- package/dist/core/i18n-data/en.js.map +1 -1
- package/dist/core/i18n-data/zh-CN.d.ts.map +1 -1
- package/dist/core/i18n-data/zh-CN.js +53 -3
- package/dist/core/i18n-data/zh-CN.js.map +1 -1
- package/dist/core/pipeline-schema.d.ts +7 -0
- package/dist/core/pipeline-schema.d.ts.map +1 -1
- package/dist/core/pipeline-schema.js +7 -0
- package/dist/core/pipeline-schema.js.map +1 -1
- package/dist/core/plan/roadmap.d.ts +29 -0
- package/dist/core/plan/roadmap.d.ts.map +1 -1
- package/dist/core/plan/roadmap.js +95 -0
- package/dist/core/plan/roadmap.js.map +1 -1
- package/dist/core/req/aggregate.d.ts +19 -1
- package/dist/core/req/aggregate.d.ts.map +1 -1
- package/dist/core/req/aggregate.js +18 -5
- package/dist/core/req/aggregate.js.map +1 -1
- package/dist/core/template-loader.d.ts.map +1 -1
- package/dist/core/template-loader.js +48 -14
- package/dist/core/template-loader.js.map +1 -1
- package/dist/core/update.d.ts.map +1 -1
- package/dist/core/update.js +44 -10
- package/dist/core/update.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
export const common = {
|
|
3
3
|
error: { key: 'common.error', zh: '错误', en: '' },
|
|
4
4
|
errorTmpl: { key: 'common.errorTmpl', zh: '错误:{msg}', en: '' },
|
|
5
|
+
invalidArgumentTmpl: { key: 'common.invalidArgumentTmpl', zh: '参数或用法错误:{detail}', en: '' },
|
|
6
|
+
projectNotFoundTmpl: { key: 'common.projectNotFoundTmpl', zh: '项目路径不存在或不是目录:{path}', en: '' },
|
|
7
|
+
projectMissingValueTmpl: { key: 'common.projectMissingValueTmpl', zh: '--project 缺少路径值', en: '' },
|
|
8
|
+
projectConflictTmpl: { key: 'common.projectConflictTmpl', zh: '--project 多次给出且解析路径不一致:{values}', en: '' },
|
|
5
9
|
concurrentConflict: { key: 'common.concurrentConflict', zh: '[并发冲突] flow.json 已被其它进程修改(期望 revision={expected},磁盘={actual});本次修改未写入,请重新执行该命令重试。', en: '' },
|
|
6
10
|
ok: { key: 'common.ok', zh: '✓', en: '' },
|
|
7
11
|
none: { key: 'common.none', zh: '(无)', en: '' },
|
|
@@ -52,6 +56,24 @@ export const flow = {
|
|
|
52
56
|
'status.lastUpdated': { key: 'flow.status.lastUpdated', zh: '最后更新', en: '' },
|
|
53
57
|
'status.recoveryTitle': { key: 'flow.status.recoveryTitle', zh: '── 跨会话恢复信息 ──', en: '' },
|
|
54
58
|
'status.recoveryMoreTmpl': { key: 'flow.status.recoveryMoreTmpl', zh: '... 还有 {n} 项', en: '' },
|
|
59
|
+
// flow next(调度决策,只读)
|
|
60
|
+
'next.title': { key: 'flow.next.title', zh: '流水线下一步(只读)', en: '' },
|
|
61
|
+
'next.stageLabel': { key: 'flow.next.stageLabel', zh: '阶段', en: '' },
|
|
62
|
+
'next.phaseLabel': { key: 'flow.next.phaseLabel', zh: '相位', en: '' },
|
|
63
|
+
'next.responsibleAgentLabel': { key: 'flow.next.responsibleAgentLabel', zh: '负责 Agent', en: '' },
|
|
64
|
+
'next.workflowModeLabel': { key: 'flow.next.workflowModeLabel', zh: '工作流模式', en: '' },
|
|
65
|
+
'next.displayTierLabel': { key: 'flow.next.displayTierLabel', zh: '展示审查档位', en: '' },
|
|
66
|
+
'next.effectiveTierLabel': { key: 'flow.next.effectiveTierLabel', zh: '生效审查档位', en: '' },
|
|
67
|
+
'next.legalNextPhasesLabel': { key: 'flow.next.legalNextPhasesLabel', zh: '合法下一相位', en: '' },
|
|
68
|
+
'next.suggestedCommandLabel': { key: 'flow.next.suggestedCommandLabel', zh: '建议命令', en: '' },
|
|
69
|
+
'next.guardsLabel': { key: 'flow.next.guardsLabel', zh: '守卫', en: '' },
|
|
70
|
+
'next.blockingReviewsLabel': { key: 'flow.next.blockingReviewsLabel', zh: '阻塞 REV', en: '' },
|
|
71
|
+
'next.blockingReviewItemTmpl': { key: 'flow.next.blockingReviewItemTmpl', zh: '{id}: {title}(优先级 {priority},op {op})', en: '' },
|
|
72
|
+
'next.guardNoActiveStage': { key: 'flow.next.guardNoActiveStage', zh: '当前无活跃阶段(pipeline.current.stage 为空或阶段记录缺失):由 Feel 决定下一步', en: '' },
|
|
73
|
+
'next.guardAutoAdvanceDisabled': { key: 'flow.next.guardAutoAdvanceDisabled', zh: '自动推进已禁用(auto_advance=disabled):推进前须询问用户', en: '' },
|
|
74
|
+
'next.guardBlockingReviewsTmpl': { key: 'flow.next.guardBlockingReviewsTmpl', zh: '存在 {n} 个阻塞中的 open REV:推进到 done 前须先解决', en: '' },
|
|
75
|
+
'next.guardNoLegalTargets': { key: 'flow.next.guardNoLegalTargets', zh: '当前相位无合法下一相位(可能需要 --force、调整工作流模式或检查转移表)', en: '' },
|
|
76
|
+
'next.guardTierDiffTmpl': { key: 'flow.next.guardTierDiffTmpl', zh: '展示档位 {display} ≠ 生效档位 {effective}(flow advance 缺省使用 {effective})', en: '' },
|
|
55
77
|
// flow overview
|
|
56
78
|
'overview.title': { key: 'flow.overview.title', zh: 'OpenFeel 流水线全景视图', en: '' },
|
|
57
79
|
'overview.currentStatus': { key: 'flow.overview.currentStatus', zh: '📍 当前状态', en: '' },
|
|
@@ -551,6 +573,7 @@ export const knowledge = {
|
|
|
551
573
|
/* ==================== archive 域:归档命令 ==================== */
|
|
552
574
|
export const archive = {
|
|
553
575
|
'errorArchiveFailedTmpl': { key: 'archive.errorArchiveFailedTmpl', zh: '错误:归档失败,请确认阶段 "{stage}" 存在且 flow.json 已初始化。', en: '' },
|
|
576
|
+
'errorArchiveExistsTmpl': { key: 'archive.errorArchiveExistsTmpl', zh: '错误:阶段 "{stage}" 的归档文件已存在({path});如需覆盖请显式使用 --force。', en: '' },
|
|
554
577
|
'okTmpl': { key: 'archive.okTmpl', zh: '✓ 阶段已归档: {stage}', en: '' },
|
|
555
578
|
'opsCount': { key: 'archive.opsCount', zh: '操作数', en: '' },
|
|
556
579
|
'reviewsCount': { key: 'archive.reviewsCount', zh: '审查条目数', en: '' },
|
|
@@ -583,6 +606,7 @@ export const lint = {
|
|
|
583
606
|
'kb.okTmpl': { key: 'lint.kb.okTmpl', zh: '✅ 未发现过期引用(共检查 {n} 个引用)', en: '' },
|
|
584
607
|
'kb.staleTmpl': { key: 'lint.kb.staleTmpl', zh: '❌ 发现 {n} 个过期引用', en: '' },
|
|
585
608
|
'kb.staleItemTmpl': { key: 'lint.kb.staleItemTmpl', zh: ' {file} L{line}: "{ref}" → 文件不存在', en: '' },
|
|
609
|
+
'kb.issueTmpl': { key: 'lint.kb.issueTmpl', zh: 'L{line}: "{ref}" → 文件不存在', en: '' },
|
|
586
610
|
};
|
|
587
611
|
/* ==================== help 域:命令帮助文本(--help 输出用语) ==================== */
|
|
588
612
|
export const help = {
|
|
@@ -593,6 +617,7 @@ export const help = {
|
|
|
593
617
|
'global.logFile': { key: 'help.global.logFile', zh: '运行日志文件路径(默认 ~/.openfeel/cli/logs/openfeel-YYYY-MM-DD.log)', en: '' },
|
|
594
618
|
'global.noLog': { key: 'help.global.noLog', zh: '关闭运行日志(亦可通过 OPENFEEL_LOG=0 / OPENFEEL_NO_LOG=1)', en: '' },
|
|
595
619
|
'global.debug': { key: 'help.global.debug', zh: '记录 debug 级日志(默认仅 info/warn/error)', en: '' },
|
|
620
|
+
'global.project': { key: 'help.global.project', zh: '项目根路径(等效于在该目录下运行;默认当前目录)', en: '' },
|
|
596
621
|
'openfeel.version': { key: 'help.openfeel.version', zh: '输出版本号', en: '' },
|
|
597
622
|
// init
|
|
598
623
|
'init': { key: 'help.init', zh: '初始化项目工作区,创建 .openfeel/ 目录结构和配置文件', en: '' },
|
|
@@ -617,6 +642,8 @@ export const help = {
|
|
|
617
642
|
'flow.status.verbose': { key: 'help.flow.status.verbose', zh: '增强输出:配置级联、最近状态变更、下游 Agent 就绪状态', en: '' },
|
|
618
643
|
'flow.status.lines': { key: 'help.flow.status.lines', zh: '最近状态变更条数(默认 5)', en: '' },
|
|
619
644
|
'flow.status.json': { key: 'help.flow.status.json', zh: '以 JSON 输出(机器可读,纯 JSON 单文档)', en: '' },
|
|
645
|
+
'flow.next': { key: 'help.flow.next', zh: '显示当前阶段的调度决策(负责 Agent / 合法下一相位 / 建议命令 / 守卫 / 阻塞项;只读)', en: '' },
|
|
646
|
+
'flow.next.json': { key: 'help.flow.next.json', zh: '以 JSON 输出 { schemaVersion, stage, phase, phaseLabel, responsibleAgent, workflowMode, reviewTier, effectiveReviewTier, legalNextPhases, suggestedCommand, guards, blockingReviews }', en: '' },
|
|
620
647
|
'flow.overview': { key: 'help.flow.overview', zh: '全状态可视化视图(openfeel flow overview 的后端实现)', en: '' },
|
|
621
648
|
'flow.overview.json': { key: 'help.flow.overview.json', zh: '以 JSON 输出', en: '' },
|
|
622
649
|
'flow.current': { key: 'help.flow.current', zh: '显示当前阶段和操作', en: '' },
|
|
@@ -624,7 +651,7 @@ export const help = {
|
|
|
624
651
|
'flow.metrics': { key: 'help.flow.metrics', zh: '展示 Agent 性能指标', en: '' },
|
|
625
652
|
'flow.metrics.json': { key: 'help.flow.metrics.json', zh: '以 JSON 输出', en: '' },
|
|
626
653
|
'flow.phases': { key: 'help.flow.phases', zh: '列出全部合法 phase 及其流转映射(自描述)', en: '' },
|
|
627
|
-
'flow.phases.json': { key: 'help.flow.phases.json', zh: '以 JSON 输出 { phases, transitions, advanceAccepted, transitionsDiff, schemaVersion, workflowMode, reviewTier }(advanceAccepted = 内置 15 phase,即 flow advance 的推进白名单;transitionsDiff = 运行时转移表与内置默认的差异报告;workflowMode = 本次展示所依据的工作流模式;reviewTier =
|
|
654
|
+
'flow.phases.json': { key: 'help.flow.phases.json', zh: '以 JSON 输出 { phases, transitions, advanceAccepted, transitionsDiff, schemaVersion, workflowMode, reviewTier, displayReviewTier, effectiveReviewTier }(advanceAccepted = 内置 15 phase,即 flow advance 的推进白名单;transitionsDiff = 运行时转移表与内置默认的差异报告;workflowMode = 本次展示所依据的工作流模式;reviewTier = 由该模式派生的审查档位,为展示档位兼容别名;displayReviewTier = 展示档位(与 reviewTier 同值);effectiveReviewTier = flow advance 缺省生效档位,恒 full)', en: '' },
|
|
628
655
|
'flow.phases.mode': { key: 'help.flow.phases.mode', zh: '显式指定工作流模式(full | fast | general;缺省经 --stage / 当前阶段派生)', en: '' },
|
|
629
656
|
'flow.phases.stage': { key: 'help.flow.phases.stage', zh: '按指定阶段的模式展示转移表(缺省 = 当前阶段)', en: '' },
|
|
630
657
|
'flow.mode': { key: 'help.flow.mode', zh: '显示当前工作流模式与来源(只读)', en: '' },
|
|
@@ -633,7 +660,7 @@ export const help = {
|
|
|
633
660
|
'flow.archive': { key: 'help.flow.archive', zh: 'flow.json 版本分片归档(按版本号归档已收官历史;与顶层 openfeel archive〔阶段摘要归档〕职责分离)', en: '' },
|
|
634
661
|
'flow.archive.argversion': { key: 'help.flow.archive.argversion', zh: '版本号(如 v1.1.7;前缀 v 可省略)', en: '' },
|
|
635
662
|
'flow.archive.dryRun': { key: 'help.flow.archive.dryRun', zh: '仅预览(判据门照常校验;零写盘)', en: '' },
|
|
636
|
-
'flow.archive.json': { key: 'help.flow.archive.json', zh: '以 JSON 输出 { schemaVersion, version, stages, reviews, log, dryRun }', en: '' },
|
|
663
|
+
'flow.archive.json': { key: 'help.flow.archive.json', zh: '以 JSON 输出 { schemaVersion, version, stages, reviews, log, dryRun, eligible, unfinishedStages, blockingReviews }', en: '' },
|
|
637
664
|
'flow.archive.list': { key: 'help.flow.archive.list', zh: '列出已归档版本及计数(只读;引擎字典序)', en: '' },
|
|
638
665
|
'flow.archive.list.json': { key: 'help.flow.archive.list.json', zh: '以 JSON 输出 { schemaVersion, versions: [{version, counts}] }', en: '' },
|
|
639
666
|
'flow.archive.show': { key: 'help.flow.archive.show', zh: '查看指定归档版本(只读;人类输出 = counts + 阶段概览)', en: '' },
|
|
@@ -659,7 +686,7 @@ export const help = {
|
|
|
659
686
|
'flow.advance.stage': { key: 'help.flow.advance.stage', zh: '阶段 ID(如 stage-03),必须指定', en: '' },
|
|
660
687
|
'flow.advance.force': { key: 'help.flow.advance.force', zh: '强制执行(跳过非法 phase 校验和阶段跳跃检查,但不可绕过 REV 阻塞检查)', en: '' },
|
|
661
688
|
'flow.advance.dryRun': { key: 'help.flow.advance.dryRun', zh: '仅验证不执行修改(预览输出)。与 --force 组合时跳过校验但仍不执行修改', en: '' },
|
|
662
|
-
'flow.advance.reviewTier': { key: 'help.flow.advance.reviewTier', zh: '审查档位(full / lean / skip
|
|
689
|
+
'flow.advance.reviewTier': { key: 'help.flow.advance.reviewTier', zh: '审查档位(full / lean / skip;缺省=full(零裁剪);仅显式声明时裁剪审查关,不可绕过 REV 阻塞检查)', en: '' },
|
|
663
690
|
'flow.advance.quiet': { key: 'help.flow.advance.quiet', zh: '静默非错误输出(成功确认与 Git 警告均不打印)', en: '' },
|
|
664
691
|
'flow.attempt': { key: 'help.flow.attempt', zh: '记录操作执行结果', en: '' },
|
|
665
692
|
'flow.attempt.op': { key: 'help.flow.attempt.op', zh: '操作 ID(如 stage-01.op-001)', en: '' },
|
|
@@ -670,6 +697,7 @@ export const help = {
|
|
|
670
697
|
'flow.ops.list.json': { key: 'help.flow.ops.list.json', zh: '以 JSON 输出', en: '' },
|
|
671
698
|
'flow.log': { key: 'help.flow.log', zh: '显示最近操作日志', en: '' },
|
|
672
699
|
'flow.log.last': { key: 'help.flow.log.last', zh: '显示最近 n 条(默认 10)', en: '' },
|
|
700
|
+
'flow.log.json': { key: 'help.flow.log.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
673
701
|
'flow.review': { key: 'help.flow.review', zh: '管理审查条目', en: '' },
|
|
674
702
|
'flow.review.add': { key: 'help.flow.review.add', zh: '添加审查条目', en: '' },
|
|
675
703
|
'flow.review.add.op': { key: 'help.flow.review.add.op', zh: '操作 ID(如 stage-01.op-001)', en: '' },
|
|
@@ -687,6 +715,7 @@ export const help = {
|
|
|
687
715
|
'flow.review.remove.argrev-id': { key: 'help.flow.review.remove.argrev-id', zh: '审查条目 ID(如 REV-001)', en: '' },
|
|
688
716
|
'flow.retry': { key: 'help.flow.retry', zh: '查询操作的重试状态', en: '' },
|
|
689
717
|
'flow.retry.op': { key: 'help.flow.retry.op', zh: '操作 ID(如 stage-01.op-001)', en: '' },
|
|
718
|
+
'flow.retry.json': { key: 'help.flow.retry.json', zh: '以 JSON 输出 { schemaVersion, op, attempts, maxAttempts, exhausted, state }', en: '' },
|
|
690
719
|
'flow.repair': { key: 'help.flow.repair', zh: '自动检测并修复 flow.json 中的常见问题', en: '' },
|
|
691
720
|
'flow.repair.dryRun': { key: 'help.flow.repair.dryRun', zh: '仅检测不修复', en: '' },
|
|
692
721
|
'flow.repair.backup': { key: 'help.flow.repair.backup', zh: '修复前备份为 .bak', en: '' },
|
|
@@ -702,12 +731,14 @@ export const help = {
|
|
|
702
731
|
'flow.checkpoint': { key: 'help.flow.checkpoint', zh: 'Checkpoint 快照管理(phase 推进时自动保存 flow.json 快照)', en: '' },
|
|
703
732
|
'flow.checkpoint.list': { key: 'help.flow.checkpoint.list', zh: '列出所有(或指定阶段的)Checkpoint 快照', en: '' },
|
|
704
733
|
'flow.checkpoint.list.argstage': { key: 'help.flow.checkpoint.list.argstage', zh: '阶段 ID(可选),如 v5.3-stage-01', en: '' },
|
|
734
|
+
'flow.checkpoint.list.json': { key: 'help.flow.checkpoint.list.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
705
735
|
'flow.checkpoint.restore': { key: 'help.flow.checkpoint.restore', zh: '从 Checkpoint 快照恢复 flow.json(覆盖当前文件,需 --force 确认)', en: '' },
|
|
706
736
|
'flow.checkpoint.restore.argcheckpoint-file': { key: 'help.flow.checkpoint.restore.argcheckpoint-file', zh: '快照文件名(如 v5.3-stage-01-20260807T162300-exec_running.json)', en: '' },
|
|
707
737
|
'flow.checkpoint.restore.force': { key: 'help.flow.checkpoint.restore.force', zh: '确认恢复操作(覆盖当前 flow.json)', en: '' },
|
|
708
738
|
'flow.checkpoint.restore.stage': { key: 'help.flow.checkpoint.restore.stage', zh: '仅回退指定阶段子树(选择性恢复;缺省为全量覆盖)', en: '' },
|
|
709
739
|
'flow.checkpoint.restore.dryRun': { key: 'help.flow.checkpoint.restore.dryRun', zh: '仅预览差异,不写盘', en: '' },
|
|
710
740
|
'flow.recover': { key: 'help.flow.recover', zh: '跨会话上下文恢复:输出流水线状态、阻塞原因和待处理任务', en: '' },
|
|
741
|
+
'flow.recover.json': { key: 'help.flow.recover.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
711
742
|
'flow.wizard': { key: 'help.flow.wizard', zh: '交互式流水线向导,逐步推进阶段', en: '' },
|
|
712
743
|
// config
|
|
713
744
|
'config.get-lang': { key: 'help.config.get-lang', zh: '显示全局默认语言', en: '' },
|
|
@@ -716,12 +747,16 @@ export const help = {
|
|
|
716
747
|
'config': { key: 'help.config', zh: '查看或修改项目配置', en: '' },
|
|
717
748
|
'config.get': { key: 'help.config.get', zh: '读取配置项的值(项目配置;--global 时读取全局 profile;键支持 defaults.X,与 X 等价)', en: '' },
|
|
718
749
|
'config.get.global': { key: 'help.config.get.global', zh: '操作全局 profile(~/.config/openfeel/profile.yaml)', en: '' },
|
|
750
|
+
'config.get.json': { key: 'help.config.get.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
751
|
+
'config.get.all': { key: 'help.config.get.all', zh: '项目模式一次读取全量 defaults(四键;不可与 --global 或 key 组合)', en: '' },
|
|
719
752
|
'config.set': { key: 'help.config.set', zh: '设置配置项的值(项目配置;--global 时写入全局 profile;键支持 defaults.X,与 X 等价)', en: '' },
|
|
720
753
|
'config.set.global': { key: 'help.config.set.global', zh: '操作全局 profile(~/.config/openfeel/profile.yaml)', en: '' },
|
|
721
754
|
'config.effective': { key: 'help.config.effective', zh: '输出配置的有效值 + 生效来源(status.md > config.yaml > profile.yaml > builtin)', en: '' },
|
|
755
|
+
'config.effective.json': { key: 'help.config.effective.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
722
756
|
// project
|
|
723
757
|
'project': { key: 'help.project', zh: '项目管理与概览', en: '' },
|
|
724
758
|
'project.overview': { key: 'help.project.overview', zh: '实时扫描项目结构,输出结构化概览', en: '' },
|
|
759
|
+
'project.overview.json': { key: 'help.project.overview.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
725
760
|
// plan
|
|
726
761
|
'plan': { key: 'help.plan', zh: '计划管理', en: '' },
|
|
727
762
|
'plan.stage': { key: 'help.plan.stage', zh: '工作阶段管理', en: '' },
|
|
@@ -730,6 +765,7 @@ export const help = {
|
|
|
730
765
|
'plan.stage.add.argname': { key: 'help.plan.stage.add.argname', zh: '阶段 ID(如 stage-01 或 v1.0.0-stage-01)', en: '' },
|
|
731
766
|
'plan.stage.add.tasks': { key: 'help.plan.stage.add.tasks', zh: '初始任务列表(空格或逗号分隔,生成到 status.md)', en: '' },
|
|
732
767
|
'plan.stage.list': { key: 'help.plan.stage.list', zh: '列出所有工作阶段', en: '' },
|
|
768
|
+
'plan.stage.list.json': { key: 'help.plan.stage.list.json', zh: '以 JSON 输出 { schemaVersion, stages: [{ id, phase, status, deps, workflowMode, opsTotal, opsDone }], count }', en: '' },
|
|
733
769
|
'plan.scheme': { key: 'help.plan.scheme', zh: '操作方案管理', en: '' },
|
|
734
770
|
'plan.scheme.create': { key: 'help.plan.scheme.create', zh: '创建操作方案', en: '' },
|
|
735
771
|
'plan.scheme.create.argstage': { key: 'help.plan.scheme.create.argstage', zh: '阶段 ID(如 stage-01 或 v1.0.0-stage-01)', en: '' },
|
|
@@ -738,6 +774,7 @@ export const help = {
|
|
|
738
774
|
'plan.scheme.create.fromTasks': { key: 'help.plan.scheme.create.fromTasks', zh: '从阶段任务表机械生成 ops/op-NNN.md 骨架 + ops/deps.yaml 占位(不调用任何 Agent)', en: '' },
|
|
739
775
|
'plan.scheme.list': { key: 'help.plan.scheme.list', zh: '列出操作方案(可选按阶段过滤)', en: '' },
|
|
740
776
|
'plan.scheme.list.argstage': { key: 'help.plan.scheme.list.argstage', zh: '阶段名(可选)', en: '' },
|
|
777
|
+
'plan.scheme.list.json': { key: 'help.plan.scheme.list.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
741
778
|
'plan.scheme.remove': { key: 'help.plan.scheme.remove', zh: '注销操作方案(仅从 flow.json 删除注册键,不删除 op 模板文件)', en: '' },
|
|
742
779
|
'plan.scheme.remove.force': { key: 'help.plan.scheme.remove.force', zh: '越过保护校验(op 已 done / 存在 checkpoint 进展)', en: '' },
|
|
743
780
|
'plan.scheme.remove.dryRun': { key: 'help.plan.scheme.remove.dryRun', zh: '仅预览,不写盘', en: '' },
|
|
@@ -758,6 +795,7 @@ export const help = {
|
|
|
758
795
|
'stage': { key: 'help.stage', zh: '工作阶段状态管理(status.md 原子操作)', en: '' },
|
|
759
796
|
'stage.status': { key: 'help.stage.status', zh: '查看阶段状态(无参数时列出所有阶段)', en: '' },
|
|
760
797
|
'stage.status.argstageId': { key: 'help.stage.status.argstageId', zh: '阶段 ID(如 v4-stage-04)', en: '' },
|
|
798
|
+
'stage.status.json': { key: 'help.stage.status.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
761
799
|
'stage.set': { key: 'help.stage.set', zh: '设置阶段状态字段(原子更新,保留其余内容不变)', en: '' },
|
|
762
800
|
'stage.set.argstageId': { key: 'help.stage.set.argstageId', zh: '阶段 ID(如 v4-stage-04)', en: '' },
|
|
763
801
|
'stage.set.status': { key: 'help.stage.set.status', zh: '状态值(粗粒度:planned/review_failed/review_passed/testing/archiving/done)', en: '' },
|
|
@@ -777,6 +815,7 @@ export const help = {
|
|
|
777
815
|
'view': { key: 'help.view', zh: '审查条目管理', en: '' },
|
|
778
816
|
'view.list': { key: 'help.view.list', zh: '列出审查条目', en: '' },
|
|
779
817
|
'view.list.op': { key: 'help.view.list.op', zh: '按操作 ID 过滤', en: '' },
|
|
818
|
+
'view.list.json': { key: 'help.view.list.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
780
819
|
'view.note': { key: 'help.view.note', zh: '新增/修改/删除审查条目请使用 `openfeel flow review add|update|remove`', en: '' },
|
|
781
820
|
'view.accept': { key: 'help.view.accept', zh: '验收审查条目(标记为 closed)', en: '' },
|
|
782
821
|
'view.accept.argrev-id': { key: 'help.view.accept.argrev-id', zh: '审查条目 ID(如 REV-001)', en: '' },
|
|
@@ -784,6 +823,7 @@ export const help = {
|
|
|
784
823
|
'knowledge': { key: 'help.knowledge', zh: '知识库管理', en: '' },
|
|
785
824
|
'knowledge.list': { key: 'help.knowledge.list', zh: '列出知识条目', en: '' },
|
|
786
825
|
'knowledge.list.type': { key: 'help.knowledge.list.type', zh: '按分类过滤', en: '' },
|
|
826
|
+
'knowledge.list.json': { key: 'help.knowledge.list.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
787
827
|
'knowledge.add': { key: 'help.knowledge.add', zh: '添加知识条目', en: '' },
|
|
788
828
|
'knowledge.add.argcategory': { key: 'help.knowledge.add.argcategory', zh: '分类(architecture | patterns | troubleshooting | setup)', en: '' },
|
|
789
829
|
'knowledge.add.argtitle': { key: 'help.knowledge.add.argtitle', zh: '条目标题', en: '' },
|
|
@@ -792,21 +832,27 @@ export const help = {
|
|
|
792
832
|
'knowledge.search.argquery': { key: 'help.knowledge.search.argquery', zh: '搜索关键词', en: '' },
|
|
793
833
|
'knowledge.search.limit': { key: 'help.knowledge.search.limit', zh: '返回结果数量上限(默认 10)', en: '' },
|
|
794
834
|
'knowledge.search.offset': { key: 'help.knowledge.search.offset', zh: '结果偏移量(默认 0)', en: '' },
|
|
835
|
+
'knowledge.search.json': { key: 'help.knowledge.search.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
795
836
|
'knowledge.index': { key: 'help.knowledge.index', zh: '显示知识库索引概览', en: '' },
|
|
837
|
+
'knowledge.index.json': { key: 'help.knowledge.index.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
796
838
|
'knowledge.dedup': { key: 'help.knowledge.dedup', zh: '检索相似知识条目(只读建议,不修改 kb)', en: '' },
|
|
797
839
|
'knowledge.dedup.argcontent': { key: 'help.knowledge.dedup.argcontent', zh: '待归档内容(省略时从标准输入读取)', en: '' },
|
|
798
840
|
'knowledge.dedup.project': { key: 'help.knowledge.dedup.project', zh: '目标项目根路径(默认当前目录)', en: '' },
|
|
799
841
|
'knowledge.dedup.category': { key: 'help.knowledge.dedup.category', zh: '仅检查指定分类(architecture|patterns|troubleshooting|setup)', en: '' },
|
|
800
842
|
'knowledge.dedup.threshold': { key: 'help.knowledge.dedup.threshold', zh: '相似度阈值 0~1(默认 0.8)', en: '' },
|
|
843
|
+
'knowledge.dedup.json': { key: 'help.knowledge.dedup.json', zh: '以 JSON 输出(纯 JSON 单文档,含 schemaVersion)', en: '' },
|
|
801
844
|
// archive
|
|
802
845
|
'archive': { key: 'help.archive', zh: '归档指定阶段(汇总产出、生成摘要、提取知识)', en: '' },
|
|
803
846
|
'archive.argstage': { key: 'help.archive.argstage', zh: '阶段名称(如 stage-06)', en: '' },
|
|
847
|
+
'archive.json': { key: 'help.archive.json', zh: '以 JSON 输出 { schemaVersion, stage, archivePath, opsCount, reviewsCount, knowledgeExtracts }', en: '' },
|
|
848
|
+
'archive.force': { key: 'help.archive.force', zh: '显式覆盖已存在的归档文件(缺省拒绝覆盖,零写盘)', en: '' },
|
|
804
849
|
// roadmap
|
|
805
850
|
'roadmap': { key: 'help.roadmap', zh: '分期大纲管理', en: '' },
|
|
806
851
|
'roadmap.create': { key: 'help.roadmap.create', zh: '创建分期大纲(版本号如 1.0、2.0)', en: '' },
|
|
807
852
|
'roadmap.create.argversion': { key: 'help.roadmap.create.argversion', zh: '版本号', en: '' },
|
|
808
853
|
'roadmap.show': { key: 'help.roadmap.show', zh: '显示分期大纲内容(不传版本则列出所有)', en: '' },
|
|
809
854
|
'roadmap.show.argversion': { key: 'help.roadmap.show.argversion', zh: '版本号(可选)', en: '' },
|
|
855
|
+
'roadmap.show.json': { key: 'help.roadmap.show.json', zh: '以 JSON 输出 { schemaVersion, version, milestones: [{ title, theme, stage, deliverable }] }', en: '' },
|
|
810
856
|
// instructions
|
|
811
857
|
'instructions': { key: 'help.instructions', zh: '为指定 artifact 生成结构化指令(XML 或 JSON)', en: '' },
|
|
812
858
|
'instructions.argartifactId': { key: 'help.instructions.argartifactId', zh: '目标 artifact ID(如 proposal、implementation)', en: '' },
|
|
@@ -816,7 +862,9 @@ export const help = {
|
|
|
816
862
|
// lint
|
|
817
863
|
'lint': { key: 'help.lint', zh: '项目健康检查(i18n 键一致性、kb 引用有效性)', en: '' },
|
|
818
864
|
'lint.i18n': { key: 'help.lint.i18n', zh: '校验 i18n 键一致性(空值/中英独有键)', en: '' },
|
|
865
|
+
'lint.i18n.json': { key: 'help.lint.i18n.json', zh: '以 JSON 输出 { schemaVersion, target, ok, issues: [{ path, message }] }', en: '' },
|
|
819
866
|
'lint.kb': { key: 'help.lint.kb', zh: '检测 .openfeel/kb/ 中的过期文件引用', en: '' },
|
|
867
|
+
'lint.kb.json': { key: 'help.lint.kb.json', zh: '以 JSON 输出 { schemaVersion, target, ok, issues: [{ path, message }] }', en: '' },
|
|
820
868
|
// migrate(legacy 布局迁移)
|
|
821
869
|
'migrate': { key: 'help.migrate', zh: 'Legacy 布局迁移(检测/备份/迁移/回滚存量项目旧布局)', en: '' },
|
|
822
870
|
'migrate.dryRun': { key: 'help.migrate.dryRun', zh: '仅检测预览,不写盘', en: '' },
|
|
@@ -832,8 +880,10 @@ export const help = {
|
|
|
832
880
|
'model.set.force': { key: 'help.model.set.force', zh: '确认修改框架默认(非 TTY 下 --scope default 必须)', en: '' },
|
|
833
881
|
'model.get': { key: 'help.model.get', zh: '读取指定 agent 的模型', en: '' },
|
|
834
882
|
'model.get.scope': { key: 'help.model.get.scope', zh: '层级(缺省展示生效值)', en: '' },
|
|
883
|
+
'model.get.json': { key: 'help.model.get.json', zh: '以 JSON 输出 { schemaVersion, scope, agent, provider, model, source }', en: '' },
|
|
835
884
|
'model.list': { key: 'help.model.list', zh: '列出所有 agent 的模型', en: '' },
|
|
836
885
|
'model.list.scope': { key: 'help.model.list.scope', zh: '层级(缺省展示生效值)', en: '' },
|
|
886
|
+
'model.list.json': { key: 'help.model.list.json', zh: '以 JSON 输出 { schemaVersion, scope, agents: [{ agent, provider, model, source }] }', en: '' },
|
|
837
887
|
// req(需求流转命令组)
|
|
838
888
|
'req': { key: 'help.req', zh: '需求管理(需求流转命令组:添加/列表/详情/认领/推进/看板/推荐)', en: '' },
|
|
839
889
|
'req.add': { key: 'help.req.add', zh: '创建需求(ID 自动分配;正文骨架铺到 .openfeel/requirements/)', en: '' },
|