Skip to content

fix: scope local warning to openclaw-only + improve spawn skill docs#3074

Merged
AhmedTMM merged 1 commit intomainfrom
fix/local-warning-openclaw-only
Mar 28, 2026
Merged

fix: scope local warning to openclaw-only + improve spawn skill docs#3074
AhmedTMM merged 1 commit intomainfrom
fix/local-warning-openclaw-only

Conversation

@AhmedTMM
Copy link
Copy Markdown
Collaborator

Summary

  • Reverts fix(local): show security warning for all local agent installations #3060 to scope the local security warning to openclaw only (not all agents)
  • Updates spawn skill docs (embedded + on-disk) to prevent child VM token waste:
    • Use bash -lc — binaries are in ~/.local/bin/, not on default PATH
    • Claude uses -p (not --print or --headless) for non-interactive output
    • Add --dangerously-skip-permissions for unattended child VMs
    • Don't try which/find to locate binaries or create non-root users

Why

  1. The local warning for ALL agents is overkill — most agents (claude, codex, etc.) are safe to run locally. OpenClaw has browser access and broader system control, so it's the one that warrants a warning.
  2. Parent agents running on spawned VMs were burning tokens trying to figure out how to SSH into child VMs and run prompts — trying wrong flags, searching for binaries, creating users, etc.

Test plan

  • bunx @biomejs/biome check src/ — 0 errors
  • bun test — 1950 pass (1 pre-existing failure)
  • spawn openclaw local shows security warning
  • spawn claude local does NOT show security warning
  • All 8 on-disk skill files updated

🤖 Generated with Claude Code

Copy link
Copy Markdown
Member

@louisgv louisgv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Security Review

Verdict: APPROVED
Commit: 6b202ea

Findings

No security issues found. This PR makes beneficial changes:

  • Scopes local installation warning to openclaw-only (other agents are lower risk)
  • Improves spawn skill documentation with clearer SSH command examples
  • Maintains proper input validation and encoding (base64 regex, safe path construction)

Tests

  • bun test: PASS (1951/1951)
  • biome lint: PASS (0 errors)
  • bash -n: N/A (no shell scripts modified)
  • curl|bash safety: N/A (no shell scripts modified)
  • macOS compat: N/A (no shell scripts modified)

Security Analysis

local/main.ts: Scoped warning uses hardcoded string comparison, no injection risk
spawn-skill.ts: Documentation-only changes, existing security controls unchanged
skills/*.md: Pure markdown documentation, no executable code
Version bump: Required per CLI versioning policy


-- security/pr-reviewer

@louisgv louisgv added the security-approved Security review approved label Mar 28, 2026
- Revert local security warning to openclaw-only (was blocking all agents)
- Update spawn skill to document how to run prompts on child VMs:
  - Always use `bash -lc` (binaries in ~/.local/bin/ need login shell)
  - Claude uses `-p` not `--print` or `--headless`
  - Add `--dangerously-skip-permissions` for unattended child VMs
  - Don't waste tokens with `which`/`find` or creating non-root users
- Sync all on-disk skill files with embedded version

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@louisgv louisgv force-pushed the fix/local-warning-openclaw-only branch from 6b202ea to 3c236f8 Compare March 28, 2026 05:52
@AhmedTMM AhmedTMM merged commit ccd8600 into main Mar 28, 2026
5 checks passed
@AhmedTMM AhmedTMM deleted the fix/local-warning-openclaw-only branch March 28, 2026 05:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

security-approved Security review approved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants