feat: add OpenClaw AI assistant stack#695
Conversation
Signed-off-by: Oleksii Kurinnyi <okurinny@redhat.com>
Signed-off-by: Oleksii Kurinnyi <okurinny@redhat.com>
Signed-off-by: Oleksii Kurinnyi <okurinny@redhat.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughAdds the OpenClaw stack with version metadata, an OpenShift-compatible gateway Devfile, persistent storage, Control UI configuration, operator commands, ownership rules, and an ODOV3 test exclusion. ChangesOpenClaw stack
Estimated code review effort: 3 (Moderate) | ~20 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 Checkov (3.3.8)stacks/openclaw/1.0.0/devfile.yamlTraceback (most recent call last): Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@stacks/openclaw/1.0.0/devfile.yaml`:
- Around line 136-141: Update the restart-gateway command so it signals the
running node process rather than PID 1, preventing the openclaw container from
terminating. Ensure the startup flow keeps node under a while-true restart loop
so the process restarts in place while the container remains running.
- Line 75: Update the TOKEN generation command to read at least 48 bytes from
/dev/urandom before base64 encoding and filtering, so the final head -c 48
operation can produce the requested 48-character alphanumeric token.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 088de722-d9a2-4bfc-8a1f-b7de97dfab60
📒 Files selected for processing (4)
.github/CODEOWNERSstacks/openclaw/1.0.0/devfile.yamlstacks/openclaw/stack.yamltests/check_odov3.sh
Signed-off-by: Oleksii Kurinnyi <okurinny@redhat.com>
| # First boot: run `openclaw setup` in the terminal to configure | ||
| # your API key and model provider. | ||
|
|
||
| schemaVersion: 2.2.2 |
There was a problem hiding this comment.
| schemaVersion: 2.2.2 | |
| schemaVersion: 2.3.0 |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: akurinnoy, ibuziuk The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
Description of Changes
Adds an OpenClaw AI assistant stack to the devfile registry.
OpenClaw is a personal AI assistant that runs a Gateway service with a web Control UI and connects to 25+ messaging channels (WhatsApp, Telegram, Slack, Discord, etc.). TypeScript/Node.js, MIT license, 383K+ GitHub stars.
The stack follows the same two-container pattern as the existing AI agent stacks (
hermes,picoclaw,zeroclaw):toolscontainer - universal developer image for editor/terminalopenclawcontainer - runs the Gateway service on port 18789Key design decisions:
/opt/dataviaOPENCLAW_CONFIG_DIRto handle OpenShift arbitrary UIDs (the official image uses uid 1000 with 700-permission dirs)gateway.trustedProxiesset to RFC 1918 ranges so connections through the cluster network are treated as localcookiesAuthEnabled: trueon the Control UI endpointFirst boot flow:
show-tokencommand in the terminal to get the gateway tokensetupcommand to configure API keys and model providerRelated Issue(s)
None
Acceptance Criteria
Read the contributing guide and followed the stack structure conventions.
Schema validation passes. Stack skipped in odo v3 tests - the gateway requires onboarding before it can serve health checks within the 3-minute timeout.
No documentation updates needed.
Tested on CRC cluster with Dev Spaces. Gateway boots, Control UI accessible, WebSocket connection works after token + device pairing.
Tests Performed
bash tests/validate_devfile_schemas.sh- all stacks pass includingopenclawopenclawstackopenclawDevWorkspace from the custom registryreadystateHow To Test
openclawstackshow-tokencommand to get the gateway tokenNotes To Reviewer
docker.io/openclaw/openclaw:2026.7.1is the latest stable release, verified viaskopeogateway.auth.mode=noneapproach was tested but OpenClaw refuses to bind to non-loopback without auth - this is by designquay.iois deferred to a follow-up (same ashermes,picoclaw,zeroclaw)Summary by CodeRabbit