بنقرة واحدة
repo-init-goal-skill
当 Harness 系统尚未初始化,或 `.servo/goal-charter.md` 不存在,需要初始化 repo 级 Goal Charter 与 Harness 控制面时,使用这个技能。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
当 Harness 系统尚未初始化,或 `.servo/goal-charter.md` 不存在,需要初始化 repo 级 Goal Charter 与 Harness 控制面时,使用这个技能。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
当需要运行 Harness 分层闭环控制系统时,使用这个技能。它是 Codex 中顶层监督控制器的入口,负责状态估计、算子选择、技能绑定、子代理分派、证据收集、裁决与状态更新,而不是直接执行编码。
当 Harness 处于 WorktrackScope.closing,且需要一轮限定范围的收尾处理来处理合并请求、合并、清理与代码仓库刷新交接,同时不能悄悄越过审批边界时,使用这个技能。
当 Harness 处于 WorktrackScope.dispatching,且需要一轮不扩大范围的限定范围分派来选择专用技能或执行载体时,使用这个技能。
当 Harness 处于 WorktrackScope.judging,且需要基于现有证据完成一轮限定范围关卡判定,而不重新执行工作或刷新代码仓库状态时,使用这个技能。
当 Harness 处于工作追踪范围.验证中,且需要一轮限定范围的审查证据流程来收集并综合审查发现、但不输出最终关卡判定结果时,使用这个技能。
当 Harness 处于工作追踪范围,且需要一轮限定范围验证来针对验收标准与验证要求收集测试证据时,使用这个技能。
استنادا إلى تصنيف SOC المهني
| name | repo-init-goal-skill |
| description | 当 Harness 系统尚未初始化,或 `.servo/goal-charter.md` 不存在,需要初始化 repo 级 Goal Charter 与 Harness 控制面时,使用这个技能。 |
本技能实现 RepoScope.SetGoal 状态转移算子,对应 Harness 控制回路中的参考信号初始化阶段。这里的 SetGoal 是内部 Function 名称,语义是 once-only repo init reference signal,不是常规运行中反复设置目标或从目标推导 Milestone 的 planner。
控制系统的参考信号(Goal)必须在闭环运行前被显式设定。如果参考信号缺失或含糊,控制器就无法计算误差,整个控制回路将失去方向。本技能负责在系统"上电"时,将用户的自然语言需求转化为结构化的 Harness 系统组件,为后续控制回路提供明确的参考基准。
当 .servo/ 目录尚未建立,或 goal-charter.md 不存在,或 Harness 被明确要求初始化 repo 级 Goal Charter 时,使用这个技能。初始化完成后,Goal Charter 作为高抽象目标、设计框架和越界判断依据存在;后续 Milestone / Worktrack 主要来自用户追加、repo runtime state、append request、pre-intake、repo-whats-next 和已有 artifact drift,而不是由本技能从 Goal Charter 直接推导。
本技能支持两种初始化模式:
new-goal-initialization:用户给出目标,从空白或未初始化 repo 建立 .servo/ 控制面existing-code-adoption:目标 repo 已有代码、文档或治理线索,先采集只读事实输入,再让用户确认长期目标.servo/ 目录不存在或为空goal-charter.md 不存在不使用的情况:
goal-charter.md 已存在且用户要求修改它 → 路由到 repo-change-goal-skillrepo-status-skill + repo-whats-next-skillrepo-whats-next-skill、repo-append-request-skill 或 milestone-pre-intake-skillrepo-refresh-skill检查现有状态
.servo/goal-charter.md 是否存在repo-change-goal-skill选择初始化模式
new-goal-initializationexisting-code-adoption分析用户需求
Engineering Node MapExisting Code Project Adoption 事实采集(仅该模式)
.servo/repo/discovery-input.mddiscovery-input.md 只记录只读事实输入、候选目标信号、风险、不确定点和待确认问题discovery-input.md 的内容仅限只读事实输入与候选信号;把 discovery-input.md 写成 goal truth 或把现有实现倒推成用户已批准的长期目标的行为必须返回 blocked.servo/repo/temporary-understanding.md;使用 deploy helper 时需显式传入 --weak-doc-onboarding,普通 existing-code-adoption 不应自动生成该 artifacttemporary-understanding.md 必须显式区分 lightweight 与 full 两种理解模式:lightweight 是低 token、快速定向、只支撑窄小 safe first slice;full 是更深的只读发现,token 和时间成本更高,必要时应建议单独 discovery milestone 或 worktracktemporary-understanding.md / temporary_understanding 必须包含 observed_facts、inferred_purpose、operational_purpose、known_risks、unknowns、confirmation_questions、programmer_decisions_required、promotion_plan、truth_boundary、token_budget_note 和 mode selectiontemporary-understanding.md 是 runtime evidence, not Goal Charter truth;未经 programmer confirmation 或 verified evidence 的 inferred_purpose、owner boundary、maintenance rule 和 acceptance rule 不得写入 goal-charter.md、docs truth layer 或 repo snapshotcomplex_project_entry_gate.servo/repo/complex-project-entry-gate.md 或结构化 handoff,而不是直接进入 Goal Charter truthcomplex_project_entry_gate 是 Milestone-side blocking gate, not fixed heavy mode;小型低风险初始化可记录 entry_verdict = not_applicablescanner_evidence_ref、complexity_signals、operator_safety_policy、dialog_review_questions、milestone_blocking_decision 和结构化 reinforcement_milestone_recommendationnormal、autoreview、yolo 是 user-owned safety policy,不替代 Milestone-side blockeroperator_safety_policy 默认只能写 pending_programmer_confirmation,不得默认授权 normal、autoreview 或 yolocomplex_project_entry_gate 默认必须 entry_verdict = blocked 且 milestone_blocking_decision = block_create, block_upsert, block_activate, block_derive_worktrackclear 或 not_applicablescripts/complexity_signal_scanner.py;执行时以当前已安装 skill package 根为基准,例如 PYTHONDONTWRITEBYTECODE=1 python3 ./scripts/complexity_signal_scanner.py --repo <repo> --jsongoal-charter.md 可以引用 discovery 中的候选目标信号,但必须经用户确认repo/snapshot-status.md 可以吸收 discovery 中的状态线索,但应按初始化时的当前状态重写control-state.md 只能把 discovery / temporary understanding 作为 linked evidence / note,不能把其中字段提升为控制指令弱文档临时理解模式选择(仅 weak-doc adoption / onboarding)
lightweight,仅做足以安全初始化和表达首个窄小 slice 的低 token 发现fullfull 超出当前轮次 token / 时间预算,返回 handback 或建议新增 discovery milestone / worktrack,不把未确认推断伪装成长期目标生成 goal-charter.md
Goal Charter 格式worktrack-init-skill 的职责生成 control-state.md
repo_scope: active、worktrack_scope: closedcontinuous_progression_permissionper_milestone_automatic_worktrack_budgetdefault_servo_work_branchprotected_branch_policybranch_mutation_policyauto_maintained_runtime_facts_not_asked 中保留禁止提问清单:active_milestone、active_worktrack、observed_git_hash、progress_counters、runtime_dispatch_profile、latest_observed_checkpoint、last_doc_catch_up_checkpoint、milestone_pipeline_summaryContinuation Authority:
post_contract_autonomy: delegated-minimalautonomy_scope: current-goal-onlymax_auto_new_worktracks: 1stop_after_autonomous_slice: yessubagent_dispatch_mode: autosubagent_dispatch_mode_override_scope: worktrack-contract-primarysubagent_default_model: 留空,除非运行环境或用户明确给出默认模型Handback Guard 初始值:handoff_state: none生成 repo/analysis.md
repo/analysis.md 的内容仅限事实 / 推断 / 未知项、主要矛盾、优先级和路由投影;把 repo/analysis.md 写成 goal truth 或 worktrack queue 的行为必须返回 blocked生成 repo/snapshot-status.md
existing-code-adoption 模式下,可以从 .servo/repo/discovery-input.md 提取已确认的状态线索,但 snapshot 是初始化后的慢变量状态,不是 discovery 的原文复制确认目录结构并复制模板资产
scripts/deploy_servo.js 生成标准 Harness .servo/ 基线;它会从本技能的 assets/ 目录渲染/复制所需文件,确保目录结构完整:
.servo/
├── control-state.md ← 基于 assets/control-state.md 模板填充
├── goal-charter.md ← 基于 assets/goal-charter.md 模板填充
├── repo/
│ ├── discovery-input.md ← existing-code-adoption 模式下基于 assets/repo/discovery-input.md 模板填充
│ ├── complex-project-entry-gate.md ← complex-project trigger 或 weak-doc onboarding 场景下基于 assets/repo/complex-project-entry-gate.md 模板填充
│ ├── temporary-understanding.md ← weak-doc adoption / onboarding 场景下基于 assets/repo/temporary-understanding.md 模板填充
│ ├── analysis.md ← 基于 assets/repo/analysis.md 模板填充
│ └── snapshot-status.md ← 基于 assets/repo/snapshot-status.md 模板填充
├── template/
│ ├── README.md ← 从 assets/template/README.md 复制
│ └── goal-charter.template.md ← 从 assets/template/goal-charter.template.md 复制
└── worktrack/
├── README.md ← 从 assets/worktrack/README.md 复制
├── contract.md ← 从 assets/worktrack/contract.md 复制
├── gate-evidence.md ← 从 assets/worktrack/gate-evidence.md 复制
└── plan-task-queue.md ← 从 assets/worktrack/plan-task-queue.md 复制
assets/ 目录遵循 Codex Skills 标准,存放本技能所需的模板、资源和参考文档scripts/deploy_servo.js 是本技能的标准 .servo deploy helper;它接收 --deploy-path <目标 repo / worktree 根>,并固定在 <deploy-path>/.servo/ 下生成模板。在 canonical source 与 deployed target 中都应可直接读取本技能自带的 assets/--install-claude-skill,将本技能包复制到由 deploy helper 管理的 Claude skill target root 下node ./scripts/deploy_servo.js install-claude-skill --deploy-path <目标 repo / worktree 根>;默认不覆盖已有 .claude skill 文件,只有显式传入 --force 才会覆盖本技能包内的对应文件--claude-root 指向 operator 管理的 symlink / mount 层;但拒绝 repo-init-goal-skill/ 目标目录本身是 symlink,也拒绝该 skill 目录内部已有 symlink,保持 copy install 不依赖外部源码路径.servo/ 中已有同名文件,保留现有文件并报告冲突Goal Charter 摘要existing-code-adoption,同时展示 Discovery Input 摘要、Temporary Understanding 摘要、待确认问题,以及哪些 discovery / temporary-understanding 信号被纳入 goal 草案goal-charter.md、control-state.md、repo/analysis.md、repo/snapshot-status.md 写入 .servo/existing-code-adoption 模式下,将填充好的 repo/discovery-input.md 写入 .servo/repo/repo/temporary-understanding.md 写入 .servo/repo/assets/ 中的模板文件复制到 .servo/ 的对应位置(template/ 和 worktrack/ 子目录)Harness 初始化结果,包含:
RepoScope.Observe)false(如果用户已确认)遵循本包内最小公共约束 C-1 至 C-7:C-1 只在声明的 Scope/Function 内操作;C-2 只有授权的 SetGoal/ChangeGoal/Close/Refresh 路径可变更控制状态,其余技能返回结构化输出;C-3 先生成完整报告再提取 Control Signal,重复上下文用 artifact 引用,空字段用 N/A;C-4 不跨越 Observe/Decide/Init/Dispatch/Verify/Judge/Recover/Close 的角色边界;C-5 只消费已批准上游产物,不凭空发明验收或恢复标准;C-6 缺失证据必须显式暴露,不能当作成功;C-7 保持限定范围,避免不必要的全仓重发现。
本技能特有约束:
.servo/ 不存在或 goal-charter.md 缺失时运行。goal-charter.md 不存在时创建初始目标章程;当 goal-charter.md 已存在时,覆盖行为必须返回 blocked,且必须路由到 repo-change-goal-skill。worktrack-init-skill。discovery-input.md 只能保存只读事实输入和候选信号;唯一合法行为是经用户确认后才将 discovery 信号纳入 goal-charter.md。temporary-understanding.md 只能保存 temporary-inferred runtime evidence;唯一合法行为是经 programmer confirmation 或 verified evidence 后才将其中信号提升到 goal-charter.md、repo/snapshot-status.md 或 docs truth layer。lightweight / full mode selection 与 token-cost tradeoff;当 full discovery 明显超出当前预算时,必须 handback 或建议新增 discovery milestone / worktrack,而不是把薄弱理解伪装成已确认 goal truth。complex_project_entry_gate、scanner_evidence_ref、complexity_signals、operator_safety_policy、dialog_review_questions、milestone_blocking_decision 与结构化 reinforcement_milestone_recommendation;弱文档命中且安全理解不足时,建议 reinforcement documentation / project-understanding Milestone。reinforcement_milestone_recommendation 至少包含 needed、recommendation_status、recommendation_type、suggested_title 或 suggested_purpose、reason 或 recommendation_reason、temporary_understanding_ref、evidence_refs、confirmation_required 与 blocks_implementation_until_resolved。recommendation_status 可为 not_needed、recommended、required 或 pending_operator_review。needed = true 或 blocks_implementation_until_resolved = true 时默认保持 entry_verdict: blocked / needs_reinforcement_milestone 和 milestone_blocking_decision: block_create, block_upsert, block_activate, block_derive_worktrack。complex_project_entry_gate 是 Milestone-side blocking gate, not fixed heavy mode;scanner output is evidence, not verdict。complex_project_entry_gate 的生成样例不得预授权高风险命令模式;未确认样例默认阻断 Worktrack derivation,直到 programmer confirmation 或 reinforcement evidence 写入。max_auto_new_worktracks 默认值必须与 Harness Control State artifact 和 control-state 模板保持一致。active_milestone、active_worktrack、observed_git_hash、progress_counters、runtime_dispatch_profile、latest_observed_checkpoint、last_doc_catch_up_checkpoint 或 milestone_pipeline_summary 作为用户问题;这些 runtime facts 由 Harness 控制回路自动维护。User-Defined Servo Controls 或长期 Continuation Authority 字段。subagent_dispatch_mode: auto | delegated | current-carrier,并写入 subagent_dispatch_mode_override_scope: worktrack-contract-primary,使 worktrack 级 runtime_dispatch_mode 在默认 scaffold 中可生效;只有操作者显式改为 global-override 时,control-state 才压过 worktrack 合同。auto 是保守默认值,表示按 Dispatch Decision Policy 选择 SubAgent、专用 skill、generic worker 或 current-carrier;运行时在无安全分派壳层、权限边界阻断或 dispatch package unsafe 时显式记录 runtime fallback。assets/ 目录,遵循 Codex Skills 标准。scripts/deploy_servo.js。使用这个技能时,产出一份至少包含以下章节的 Harness 初始化结果:
初始化决策需求摘要生成的组件清单Goal Charter 摘要默认控制策略建议下一动作返回 Harness结果中至少应包含以下字段或等价表达:
初始化状态goal_charter_createdcontrol_state_createdrepo_snapshot_createdproject_visioncore_product_goalsengineering_node_mapnode_type_registrythis_goal_node_typesdefault_baseline_policysuccess_criteriasystem_invariantspost_contract_autonomymax_auto_new_worktracksstop_after_autonomous_slicesubagent_dispatch_moderuntime_dispatch_mode建议代码仓库动作建议下一路由建议下一范围可继续需要审批如何审查本技能遵循 Codex Skills 标准,在 assets/ 目录下携带完整的 Harness 初始化模板资产:
| 资产路径 | 用途 | 复制目标 |
|---|---|---|
assets/control-state.md | 控制状态模板骨架 | .servo/control-state.md(填充后写入) |
assets/goal-charter.md | 目标章程模板骨架 | .servo/goal-charter.md(填充后写入) |
assets/repo/discovery-input.md | Existing Code Project Adoption 只读事实输入模板骨架 | .servo/repo/discovery-input.md(仅 adoption 模式填充后写入) |
assets/repo/temporary-understanding.md | 弱文档 adoption / onboarding 临时理解模板骨架,承接 lightweight / full mode、token-cost tradeoff、truth boundary 与 promotion plan | .servo/repo/temporary-understanding.md(weak-doc adoption / onboarding 场景填充后写入) |
assets/repo/complex-project-entry-gate.md | Repo init / Existing Code Project Adoption 的 complex-project trigger 模板骨架,承接 complex_project_entry_gate、scanner evidence、operator safety policy、dialog review 和 blocking decision | .servo/repo/complex-project-entry-gate.md(--complex-project-entry-gate 或 --weak-doc-onboarding 场景填充后写入) |
assets/repo/analysis.md | RepoScope 阶段性分析与优先级判断模板骨架 | .servo/repo/analysis.md(填充后写入) |
assets/repo/snapshot-status.md | 仓库快照模板骨架 | .servo/repo/snapshot-status.md(填充后写入) |
assets/template/README.md | 模板目录说明 | .servo/template/README.md(直接复制) |
assets/template/goal-charter.template.md | 目标章程复用模板 | .servo/template/goal-charter.template.md(直接复制) |
assets/worktrack/README.md | 工作追踪目录说明 | .servo/worktrack/README.md(直接复制) |
assets/worktrack/contract.md | 工作追踪契约模板骨架 | .servo/worktrack/contract.md(直接复制) |
assets/worktrack/gate-evidence.md | 关卡证据模板骨架 | .servo/worktrack/gate-evidence.md(直接复制) |
assets/worktrack/plan-task-queue.md | 计划任务队列模板骨架 | .servo/worktrack/plan-task-queue.md(直接复制) |
scripts/deploy_servo.js | .servo 初始化 deploy helper | 由操作者或测试直接运行,传入 --deploy-path <repo/worktree 根>,脚本在 <deploy-path>/.servo/ 下生成/复制上述资产;可选把本技能安装到由 deploy helper 管理的 Claude skill target root 下 |
这些资产在 deploy 阶段随本技能一并安装到宿主运行环境。执行时,本技能从自身的 assets/ 目录读取模板;如需 repo-local operator 工具面,则直接运行本技能自带的 scripts/deploy_servo.js,把目标 worktree / repo 根通过 --deploy-path 传入。若需要让 Claude Code 在目标 repo 内发现同一技能,可使用 --install-claude-skill 或 install-claude-skill 子命令;--claude-root 可覆盖 Claude skill target root,并允许该 root 是 symlink / mount,但目标 skill 目录及其内部不能是 symlink;如果目标目录经允许的 root symlink / mount 解析后就是当前运行的技能包,则安装 no-op。唯一合法的 scaffold 来源是本技能自带的 scripts/deploy_servo.js 和 assets/ 目录;依赖外部 scaffold 脚本或独立的 .servo 模板源码根的行为必须返回 blocked。
最小用法:
node ./scripts/deploy_servo.js generate --deploy-path "$DEPLOY_PATH" --baseline-branch "$BASELINE_BRANCH" --owner servo-kernel
node ./scripts/deploy_servo.js generate --deploy-path "$DEPLOY_PATH" --baseline-branch "$BASELINE_BRANCH" --adoption-mode existing-code-adoption
node ./scripts/deploy_servo.js generate --deploy-path "$DEPLOY_PATH" --baseline-branch "$BASELINE_BRANCH" --adoption-mode existing-code-adoption --weak-doc-onboarding
node ./scripts/deploy_servo.js generate --deploy-path "$DEPLOY_PATH" --baseline-branch "$BASELINE_BRANCH" --adoption-mode existing-code-adoption --complex-project-entry-gate
node ./scripts/deploy_servo.js generate --deploy-path "$DEPLOY_PATH" --baseline-branch "$BASELINE_BRANCH" --install-claude-skill
node ./scripts/deploy_servo.js install-claude-skill --deploy-path "$DEPLOY_PATH"
node ./scripts/deploy_servo.js generate --help
使用当前用户需求文本、当前 repo 实际状态(文件、分支、提交历史),以及本技能 assets/ 目录下的标准模板格式作为参考。唯一合法的 scaffold 来源是本技能自带的 scripts/deploy_servo.js;依赖外部 scaffold 脚本的行为必须返回 blocked;需要 operator 辅助时直接使用本技能自带的 scripts/deploy_servo.js,把目标路径通过 --deploy-path 传入,由本技能生成符合 Harness 运行协议的标准组件。