AgentSkillsCN

sandbox-setup

为该仓库配置 Claude Code 沙盒设置。

SKILL.md
--- frontmatter
name: sandbox-setup
description: Configure Claude Code sandbox settings for this repository

Sandbox Setup Skill

Configure Claude Code for optimal autonomous agent execution in this repository.

What This Skill Does

  1. Analyzes your codebase to detect:

    • Programming languages (Go, Python, Node.js, Rust, etc.)
    • Package managers (go mod, npm, pip, cargo, etc.)
    • Build tools and test runners
    • Dev servers and their ports
  2. Generates tailored permissions for .claude/settings.json:

    • Allow commands for detected tools
    • Network access for package registries
    • File system permissions for build outputs
  3. Preserves existing settings:

    • Merges with hooks configuration
    • Keeps deny rules for secrets
    • Maintains ask rules for git push

How to Use

When invoked, I will:

  1. Scan the repository for configuration files (package.json, go.mod, Cargo.toml, requirements.txt, etc.)
  2. Ask clarifying questions about your workflow
  3. Present proposed settings for your approval
  4. Update .claude/settings.json

Detection Patterns

I look for these files to detect your stack:

  • go.mod → Go (go build, go test, go mod)
  • package.json → Node.js (npm, yarn, pnpm, node)
  • Cargo.toml → Rust (cargo build, cargo test)
  • requirements.txt / pyproject.toml → Python (pip, python, pytest)
  • Gemfile → Ruby (bundle, ruby, rake)
  • pom.xml / build.gradle → Java (mvn, gradle)
  • devbox.json → Devbox (devbox run)

Settings Structure

The generated settings follow this structure:

json
{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true
  },
  "permissions": {
    "allow": ["Bash(detected-tools:*)"],
    "deny": ["Read(./.env)", "Read(./secrets/**)"],
    "ask": ["Bash(juggle agent:*)", "Bash(git push:*)"]
  },
  "hooks": { ... }
}

Reference

For detailed sandbox configuration options, see: https://www.nathanonn.com/claude-code-sandbox-explained/