원클릭으로
evolve
Governed repo evolution with fixed phase semantics and bounded outcomes.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Governed repo evolution with fixed phase semantics and bounded outcomes.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Governed runtime for agent skills: discover and install portable skills, run bounded skill graphs with explicit authority, and inspect signed receipts for what happened.
Audit a sealed runx receipt for governance, comparing the authority a run exercised against what it was granted, and flag over-reach, ungated mutation, unrecorded refusals, or exposed secret material.
Verify the receipt ids behind a normalized authority-usage summary, compare that evidence with granted scopes, and propose the narrowest grant the evidence supports.
Answer a cross-run audit question against the receipt ledger, returning matched receipts and a chain-verification result.
Read durable reflect projections, group repeated signals by skill, and emit validated handoffs to skill-lab improve when the evidence clears configured floors.
Review receipts and harness failures to propose bounded skill improvements.
| name | evolve |
| description | Governed repo evolution with fixed phase semantics and bounded outcomes. |
| runx | {"category":"code"} |
Evolve the current repository through governed phases with fixed semantics and optional bounded revision. With no objective, the default behavior is introspective: analyze the repo, recommend one bounded improvement, and stop at a plan-quality artifact set.
This is not autonomous code generation. It governs the shape around cognition: every phase produces a typed artifact, every mutation requires approval, and every step emits a receipt. A single evolve run ends in a bounded artifact, not an open-ended improvement loop.
spec in the shipped runner; it does not mutate files, create
patches, or open PRs.terminate=patch or terminate=pr. Those modes are currently rejected
until a real execution lane exists.needs_input or
needs_more_evidence.Resolve mode and target.
terminate is patch or pr, stop immediately with
rejected_unsupported_termination.needs_input.Preflight using scope + ingest.
.ai/
presence, detected languages, likely test commands, and risk signals.Model the opportunity or objective.
no_recommendation for introspection or needs_more_evidence for a
directed objective.Materialize planning artifacts.
opportunity_report and recommended_objective for
introspection.objective_brief, diagnosis_report, change_plan, and
spec_document when applicable.Evaluate plan quality.
needs_human with the exact decision required.Stop and emit receipt expectations.
spec by default.Complex runx skills share one internal phase language:
scopeingestmodelmaterializeevaluatereviseverifyratifyThe current evolve runner uses a bounded subset and compresses some phases
into fewer concrete steps. That is allowed. What stays fixed is the meaning of
the phases, not the number of steps. When a runner opts in, runx may also
append a runner-owned post-run reflect projection after the receipt is written.
That projection is Knowledge-only metadata, not another canonical phase.
Caller-mediated. This is the zero-argument recommendation lane. It uses
scope + ingest + model to analyze the current repo and produce:
opportunity_report: ranked opportunities grounded in repo evidence.recommended_objective: one bounded next move.change_plan: a concrete plan for that recommendation.spec_document: a draft scafld-style spec when governance applies.No approval gate and no mutation happen in this runner. It is introspection only. It also opts out of post-run reflect because it is already an introspective lane.
Deterministic. This is the current scope + ingest step. It inspects the
target repo and produces a repo_profile: repo root, git state, base branch,
dirty worktree, .ai/ presence (scafld initialized), detected languages, test
commands, and risk signals. No agent cognition, no mutation.
Caller-mediated. This is the current model step and also drafts bounded plan
artifacts. Given the objective and repo profile, it produces four artifacts in
one pass:
objective_brief: restatement with target kind, constraints, and success
criteria.diagnosis_report: current repo state relative to the objective.change_plan: ordered phases, acceptance checks, touchpoints, and risk.spec_document: draft scafld spec when governance applies.Directed evolve runs opt into runner-owned post-run reflect. That projection
is derived from the completed receipt and run ledger after the bounded plan
lane finishes; it does not add another visible graph step or mutation path.
evolve currently stops at plan/spec artifacts. If a caller requests
terminate=patch or terminate=pr, the runner fails immediately with a clear
error instead of pretending it can mutate or publish.
rejected_unsupported_termination for
patch or pr.no_recommendation.needs_input with a bounded rewrite
request.needs_input.needs_input with the missing selector.needs_human.Return a structured artifact set:
status: introspection_complete | plan_complete | no_recommendation | needs_input | needs_more_evidence | needs_human | rejected_unsupported_termination | refused
mode: introspect | directed
target:
kind: repo | skill | receipt | self | unknown
ref: string | null
inputs:
objective: string | null
repo_root: string
terminate: spec | patch | pr
repo_profile:
git_state: string
base_branch: string | null
dirty_worktree: boolean
scafld_initialized: boolean
languages: [string]
test_commands: [string]
risk_signals: [string]
opportunity_report:
ranked: [object]
evidence_refs: [string]
recommended_objective: string | null
objective_brief: object | null
diagnosis_report: object | null
change_plan:
phases: [object]
touchpoints: [string]
acceptance_checks: [string]
approval_gates: [string]
risks: [string]
spec_document: string | null
stop_state:
termination: spec
mutation_performed: false
reason: string
receipt_expectations:
phase_artifacts_recorded: [string]
evidence_refs_recorded: [string]
rejected_requests: [string]
post_run_reflect: appended | opted_out | not_applicable
Command:
runx evolve "add websocket adapter support"
Expected result:
status: plan_complete
mode: directed
target:
kind: repo
ref: .
objective_brief:
summary: Add websocket adapter support as a bounded repo change.
success_criteria:
- Adapter contract documented
- Integration points identified
- Acceptance checks named before mutation
change_plan:
phases:
- name: scope
artifact: repo_profile
- name: model
artifact: objective_brief
- name: materialize
artifact: spec_document
approval_gates:
- Human approval before any patch lane
stop_state:
termination: spec
mutation_performed: false
reason: Shipped evolve runner stops at plan/spec artifacts.
If the caller instead runs runx evolve "add websocket adapter support" --terminate pr, the correct result is rejected_unsupported_termination,
not a synthetic PR plan.
objective (optional): what to evolve toward. If omitted, evolve uses the
introspective recommendation runner.repo_root (optional): repository root. Defaults to cwd.terminate (optional): defaults to spec. patch and pr are currently
rejected by the shipped runner.target (optional): explicit repo, skill path, receipt id, or self target
when the objective alone is not enough.constraints (optional): operator-provided boundaries such as ownership,
forbidden files, required evidence, or delivery policy.