RFC 0016 addendum: portable core and harness profiles - #48
Conversation
cb19a7d to
88ff067
Compare
|
This addendum finalizes portable per-agent tool, filesystem, and memory-search fields in experimental Claw schema v1 and extends the normative lifecycle/consent contract. These are the right documents to own that contract, but the proposed shape currently conflicts with canonical OpenClaw configuration and with its own security and disclosure guarantees. LOC: +201/-19 (3 files) Findings
Best-fix verdict: correct owner and timing, but internally inconsistent as written. Align the memory and policy contracts first, then keep detailed Control UI implementation mechanics in a non-normative plan or linked issue after its disclosure contract is resolved. Specs/contracts read: full RFC 0016 and both normative sidecars; RFC repository guidance and #27 discussion; linked implementation PR #112773; canonical OpenClaw memory config, tool-policy, filesystem-policy, and security-audit owners. Remaining uncertainty: this is a docs/spec review. I did not run contributor-controlled implementation code, and I did not inspect every line of the separate draft Control UI implementation PRs. |
|
Added a non-blocking post-merge roadmap at signed head @clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
|
Portability feedback is incorporated at signed head Implementation is at openclaw/openclaw#112773. Final Codex review found no actionable correctness issues. |
|
Aligned the RFC and sidecar spec with the reviewed implementation at signed head |
|
Codex review: needs real behavior proof before merge. Reviewed July 24, 2026, 8:44 PM ET / July 25, 2026, 00:44 UTC. ClawSweeper reviewWhat this changesThe branch revises RFC 0016 and its package and manifest sidecars so a portable Claw manifest can reference a strict, package-local OpenClaw harness profile through a namespaced metadata pointer. Merge readinessKeep this PR open for maintainer review. It makes a substantial normative expansion of an accepted-but-still-experimental RFC, while the linked OpenClaw implementation is reported as closed and the available discussion does not establish that the proposed runtime contract has landed on current main. Priority: P2 Review scores
Verification
How this fits togetherRFC 0016 defines the package contract that Claw authors, registries, and OpenClaw use when inspecting and applying agent packages. This addendum separates portable identity and prompt data from OpenClaw-specific settings, which then flow into validation, integrity checks, planning, consent, and host-policy enforcement. flowchart LR
Package[Claw package] --> Manifest[Portable CLAW manifest]
Manifest --> Pointer[Recognized harness pointer]
Pointer --> Profile[Package-local OpenClaw profile]
Manifest --> Validation[Registry and harness validation]
Profile --> Validation
Validation --> Plan[Integrity-bound plan and consent]
Plan --> Policy[Host policy enforcement]
Policy --> Runtime[Managed OpenClaw agent]
Decision needed
Why: The remaining question is not a mechanical documentation correction: it determines when an experimental cross-component contract becomes normative and what implementation evidence is sufficient for that decision. Before merge
Findings
Agent review detailsSecurityNeeds attention: This docs-only diff does not execute code, but it establishes security-relevant validation, integrity, policy, and consent guarantees whose implementation alignment remains unproven in the supplied review context. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Land the portable-core wording only after a maintainer confirms the OpenClaw profile contract against a merged implementation or deliberately narrows the RFC to defer the harness-specific normative requirements until that implementation is ready. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a normative RFC proposal, not a report of a failing runtime path. The relevant verification is implementation and contract comparison rather than bug reproduction. Is this the best way to solve the issue? Unclear: separating portable metadata from package-local harness profiles is a coherent direction, but the supplied evidence does not confirm that the final normative wording matches merged OpenClaw and ClawHub behavior. AGENTS.md: unclear because the file could not be read completely. Codex review notes: model internal, reasoning high; reviewed against d380c05ed058. LabelsLabel changes:
Label justifications:
EvidenceSecurity concerns:
What I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
|
ClawSweeper status: review started. I am starting a fresh review of this pull request: RFC 0016 addendum: portable core and harness profiles This is item 1/1 in the current shard. Shard 0/1. This placeholder means the worker is alive and reading the current context. I will edit this same comment with the actual review when the claws are done clicking. Crustacean status: shell secured, claws on keyboard, evidence pebbles being sorted. |
|
The implementation evidence requested by the latest ClawSweeper review is now available: openclaw/openclaw#112773 merged as The final RFC head retains host authority and exact consent disclosure as normative constraints; it does not make the browser projection the authority or permit a Claw profile to bypass host enforcement. @clawsweeper re-review |
|
🦞👀 Command router queued. I will update this comment with the next step. |
Summary
This addendum updates merged RFC 0016 and both normative sidecar specifications in place to define a portable Claw core with namespaced, package-local harness profiles and an approved portable prompt body.
CLAW.mdand grouped JSON portable: agent identity and purpose stay in the core manifestmetadataas a string-to-string map, following the Agent Skills metadata precedentmetadata.openclaw.configas a safe package-relative pointer to a strict OpenClaw YAML profileprofiles/openclaw.ymlas the conventional exported path while making the pointer normativeCLAW.mdbody as the portable agent prompt and materialize its exact bytes as managedSOUL.mdCLAW.md; reject a non-empty body when implicitSOUL.mdconflicts exactly or hierarchically with an explicit workspace destinationtools.profilefrom its current built-in registry; ClawHub validates shape without freezing that registryImplementations
Portability model
Unknown metadata values remain opaque strings. A harness or registry validates and integrity-binds only profile-pointer keys it recognizes; it must not guess that arbitrary metadata strings are package paths. The portable core and harness profile therefore evolve independently without duplicating the manifest or embedding serialized configuration in metadata.
The Markdown body carries portable agent instructions. OpenClaw maps a non-empty body into its existing managed workspace lifecycle as
SOUL.md; JSON manifests retain the explicit sidecar form. Export embeds managed SOUL content only when it is non-empty valid UTF-8 and the resulting CLAW.md stays within the source limit, otherwise it preserves the explicit sidecar.The planned Control UI, pilots, authoring, graduation, standalone
npx claws, and broader cross-harness standardization remain non-blocking follow-up tracks described by the RFC.Generated with Codex.