Skip to content

docs: add Agent Profiles RFC - #18

Draft
vincentkoc wants to merge 17 commits into
mainfrom
rfc/model-harness-profiles
Draft

docs: add Agent Profiles RFC#18
vincentkoc wants to merge 17 commits into
mainfrom
rfc/model-harness-profiles

Conversation

@vincentkoc

@vincentkoc vincentkoc commented Jun 17, 2026

Copy link
Copy Markdown
Member

Status: In progress. A manual pass over the full RFC is still pending after the Schemator-guided naming update and Agent Profiles rename.

Summary

  • Proposes RFC 0009, Agent Profiles.
  • Replaces the binary local-model Lean direction with a versioned, deterministic profile registry.
  • Structures profiles with spec.common for harness-agnostic behavior and domain-owned sections such as spec.openclaw.ai for harness-specific behavior.
  • Separates model identity, Agent Profiles, provider drivers, and future managed-local Serving Presets.
  • Defines phase-one migration for Lean, GPT-5 response-style settings, and Claude/Opus thinking defaults, plus hosted-provider KV/cache non-regression boundaries.
  • Defines phase two as the ClawHub-backed Agent Profile distribution and discovery layer.

Scope

This is an RFC only. It does not change OpenClaw runtime behavior or add a configuration surface in this PR.

Verification

  • git diff --check
  • Targeted terminology search for stale pre-rename/model profile/profile/recipe naming
  • Manual review of RFC metadata, schema shape, phase boundaries, and PR-facing summary

RFC Lifecycle

  • Status: draft
  • Implementation issue: not created
  • Maintainer discussion thread: pending

@clawsweeper

clawsweeper Bot commented Jun 19, 2026

Copy link
Copy Markdown

Codex review: found issues before merge. Reviewed August 25, 2026, 11:16 AM ET / 15:16 UTC.

ClawSweeper review

What this changes

Adds a 982-line draft RFC describing a versioned Agent Profiles registry and migration path for model-specific OpenClaw agent behavior.

Merge readiness

⚠️ Ready for maintainer review - 5 items remain

Keep open for maintainer review: this member-authored draft still needs a unique RFC identifier and the required maintainer discussion before product direction can be decided.

Priority: P2
Reviewed head: c480e1fff6b5b62cc7702ba051a207f36202a06f
Owner decision: Required. See Decision needed.

Review scores

Measure Result What it means
Overall readiness 🦐 gold shrimp (3/6) The draft contains substantial design work but has two clear RFC-process blockers before it can be considered for merge.
Proof confidence 🌊 off-meta tidepool Not applicable: The PR changes only an RFC document, so runtime proof is not applicable.
Patch quality 🦐 gold shrimp (3/6) 2 actionable review findings remain.

Verification

Check Result Evidence
Real behavior Not applicable Not applicable: The PR changes only an RFC document, so runtime proof is not applicable.
Evidence reviewed 4 items RFC lifecycle contract: The repository requires a maintainer-discussion thread for every new RFC and prohibits merging while its status remains draft.
Draft lacks required discussion: The document remains draft and links only to this PR; the PR body explicitly says the maintainer discussion is pending.
RFC identifier collision: Current main already contains the merged Hosted Feeds RFC and sidecars under the 0009 namespace, so this separate proposal cannot retain that identifier.
Findings 2 actionable findings [P2] Assign an unused RFC identifier
[P2] Open the required maintainer discussion
Security None None.

How this fits together

This RFC defines a proposed configuration and resolution layer between resolved models and OpenClaw’s agent harness. If adopted, it would affect later runtime, provider, migration, and ClawHub distribution work without changing runtime behavior in this PR.

flowchart LR
A[Resolved model] --> B[Profile registry]
B --> C[Agent profile]
C --> D[Harness behavior]
D --> E[Provider driver]
E --> F[Agent response]
Loading

Decision needed

Question Recommendation
Should OpenClaw sponsor Agent Profiles as a new configuration and migration direction after this RFC is renumbered and discussed? Sponsor a scoped RFC discussion: Assign a unique identifier and discuss the proposed runtime, migration, and compatibility boundaries before deciding acceptance.

Why: The RFC introduces new configuration surface, migration semantics, and a future distribution model; repository policy requires maintainer discussion before an RFC can advance.

Before merge

  • Assign an unused RFC identifier (P2) - Current main already reserves 0009 for the merged Hosted Feeds RFC and its sidecars. Renumber this document and every internal RFC-ID reference so unrelated proposals do not share a document and asset namespace.
  • Open the required maintainer discussion (P2) - The RFC remains draft, the PR body says the discussion is pending, and the document contains no maintainer-discussion link. Repository policy requires that thread before this RFC can advance toward acceptance.
  • Resolve merge risk (P1) - If accepted, the RFC’s migration from existing Lean configuration to profile selection creates a public compatibility commitment that needs explicit runtime and configuration-owner approval.
  • Complete next step (P2) - A maintainer must sponsor or decline the new configuration direction after the RFC namespace and required discussion path are corrected.

Findings

  • [P2] Assign an unused RFC identifier — rfcs/0009-agent-profiles.md:1
  • [P2] Open the required maintainer discussion — rfcs/0009-agent-profiles.md:8-10
Agent review details

Security

None.

Review metrics

Metric Value Why it matters
RFC scope 982 lines added in 1 file The draft establishes a broad prospective configuration and migration contract in one document.

Merge-risk options

Maintainer options:

  1. Correct the RFC intake before merge (recommended)
    Use an unused RFC identifier and open the required maintainer discussion so compatibility owners can evaluate the proposed migration contract.

Technical review

Best possible solution:

Renumber the proposal, open the required maintainer-discussion thread, and have owners decide whether the proposed profile and migration contract should become OpenClaw’s supported direction.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this PR proposes an RFC design rather than reporting an executable runtime failure.

Is this the best way to solve the issue?

No: accepting a new configuration and migration contract before resolving its RFC namespace and required maintainer discussion is not the narrowest safe path.

Full review comments:

  • [P2] Assign an unused RFC identifier — rfcs/0009-agent-profiles.md:1
    Current main already reserves 0009 for the merged Hosted Feeds RFC and its sidecars. Renumber this document and every internal RFC-ID reference so unrelated proposals do not share a document and asset namespace.
    Confidence: 0.99
  • [P2] Open the required maintainer discussion — rfcs/0009-agent-profiles.md:8-10
    The RFC remains draft, the PR body says the discussion is pending, and the document contains no maintainer-discussion link. Repository policy requires that thread before this RFC can advance toward acceptance.
    Confidence: 0.98

Overall correctness: patch is incorrect
Overall confidence: 0.98

AGENTS.md: not found in the target repository.

Codex review notes: model internal, reasoning high; reviewed against af708f0ddb6f.

Labels

Label justifications:

  • P2: This is a substantial design proposal with no current runtime regression, but it needs normal-priority maintainer direction.
  • merge-risk: 🚨 compatibility: The proposed migration replaces existing Lean configuration with a profile selector and therefore needs upgrade-contract approval.
  • rating: 🦐 gold shrimp: Overall readiness is 🦐 gold shrimp; proof is 🌊 off-meta tidepool and patch quality is 🦐 gold shrimp.
  • status: ⏳ waiting on author: ClawSweeper has contributor-facing work open and is waiting for author action. Not applicable: The PR changes only an RFC document, so runtime proof is not applicable.

Evidence

What I checked:

Likely related people:

  • kevinlin-openai: Introduced the current RFC lifecycle guidance requiring maintainer discussion before draft acceptance. (role: RFC-process author; confidence: high; commits: e366ea9825a4; files: README.md, rfcs/0000-template.md)
  • Gio Della-Libera: Authored the merged Hosted Feeds RFC that occupies the conflicting 0009 namespace on main. (role: current RFC 0009 contributor; confidence: high; commits: 89cf322325b0; files: rfcs/0009-hosted-feeds-for-plugins-and-skills.md, rfcs/0009/)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Renumber the RFC and all identifier references.
  • Open and link the required maintainer-discussion thread.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (52 earlier review cycles; latest 8 shown)
  • reviewed 2026-08-11T03:13:30.018Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-12T01:54:00.872Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-13T23:22:26.319Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-14T07:15:32.140Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-14T12:09:44.882Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-15T20:54:58.494Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-21T16:21:51.071Z sha 02df4b5 :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion
  • reviewed 2026-08-25T11:03:54.790Z sha c480e1f :: found issues before merge. :: [P2] Assign an unused RFC identifier | [P2] Open the required maintainer discussion

@osolmaz

osolmaz commented Jun 19, 2026

Copy link
Copy Markdown
Member

Applied a Schemator-guided naming simplification pass to the model profile RFC. This kept the corrected stable vocabulary like extends, settings, toolExposure, contextPosture, and profile, while tightening names such as promptRecipe -> promptPreset, reasoningDefault -> reasoningMode, and the GPT setting shape around responseStyle.

Next I will do a manual pass over the full document to catch product-language issues, naming consistency, and any places where the automated schema review should not drive the final RFC wording.

@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. and removed rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 19, 2026
@osolmaz osolmaz changed the title RFC: Model Harness Profiles docs: add Agent Cards RFC Jun 22, 2026
@clawsweeper clawsweeper Bot added status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Jun 22, 2026
@clawsweeper clawsweeper Bot removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 22, 2026
@clawsweeper clawsweeper Bot added rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 23, 2026
@osolmaz osolmaz changed the title docs: add Agent Cards RFC docs: add Agent Profiles RFC Jun 24, 2026
@clawsweeper clawsweeper Bot added status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. and removed status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 24, 2026
@clawsweeper clawsweeper Bot added merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. and removed merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. labels Jul 31, 2026
@clawsweeper clawsweeper Bot added P2 Normal priority bug or improvement with limited blast radius. and removed P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. labels Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. P2 Normal priority bug or improvement with limited blast radius. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants