-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Parent Issue
Sub-issue of #344 (Leverage Additional SDK v0.2.25 Capabilities)
Follow-up to #350 (Configure sandbox settings for execution safety)
Feature Type
Other
Problem or Need
The sandbox configuration added in #350 introduces 4 new ExecutionConfig fields (sandbox, env, cwd, additional_directories) with a nested SandboxConfig object containing 8 fields plus sub-objects for network and ripgrep settings. None of this is currently documented beyond code comments and type definitions.
Users need:
- Configuration examples in docs showing common sandbox setups
- Explanation of how sandbox interacts with
permission_bypass: true - Guidance on when to enable sandboxing vs when it causes false negatives
- Updated SECURITY.md reflecting the new security boundary
Proposed Solution
-
Update
docs/with sandbox configuration guide:- Add sandbox section to an existing config reference doc (or create
docs/sandbox.md) - Include YAML examples for common configurations
- Document the snake_case → camelCase field mapping for users who reference SDK docs
- Explain the opt-in default (sandbox disabled) rationale
- Add sandbox section to an existing config reference doc (or create
-
Update SECURITY.md:
- Add sandbox as a security boundary alongside existing tool restrictions
- Document the defense-in-depth model:
disallowed_tools+sandbox+ budget limits - Note that
permission_bypassand sandbox are complementary (bypass skips prompts, sandbox restricts the execution environment)
-
Add inline config.yaml examples:
- Minimal sandbox:
sandbox: { enabled: true } - Network-restricted:
sandbox: { enabled: true, network: { allowed_domains: [...] } } - Full lockdown with env isolation
- Minimal sandbox:
Pipeline Stage Affected
General / Multiple stages
Component Type (if applicable)
Not component-specific
How important is this feature to you?
Medium - Would be nice to have
Additional Context
The implementation from #350 is complete and all fields pass through to the SDK correctly. This issue covers only documentation, not code changes.
🤖 Created with Claude Code