Skip to content

Self-improvement

Coro treats changes to how agents behave as code review problems, not silent mutations. When an evaluation phase (or dedicated hygiene agent) believes intelligence should change, it calls propose_change.

End-to-end flow

  1. Validate — Runner enforces allowlists, required headings, and payload shape per proposal type.
  2. Branch — A writer clone of the target layer (coro/proposal/<jobId>-<layer>-<slug>) receives the file operations.
  3. Commit + push — Atomic commit per proposal bundle.
  4. Open PR — Your configured SCM provider hosts the review.
  5. Human review — Only after merge does the resolver pick up the new markdown on subsequent jobs.

Multiple files for the same layer belong in one proposal call so your SCM story stays linear.

Writable surfaces

SurfaceWhy it changes
MemoryHigh-churn operational learning
SkillsDiscovered convention gaps
Agent instructionsProcedure fixes when phases misfire

Base intelligence inside the immutable package path is never written—tenants evolve overlays.

Routing: tenant vs repo

The runner resolves which writable git remote absorbed the markdown:

  • Tenant overlay edits land in your configured intelligence repo (shared defaults).
  • Repo overlay edits target the project .coro/ subtree on that repository’s branch.

Misrouting wastes review cycles—agents read the self-improvement-guide skill before posting.

Operational checklist for reviewers: Review proposals