Skip to main content
Coding agents discover skill files by scanning specific directories at startup. By placing TensorLake skill files in the right paths inside a sandbox image, any agent running in the sandbox will automatically pick them up without manual installation.

How Agents Discover Skills

Each coding agent scans a different directory for skill files:
AgentSkill FileDiscovery Path
Claude CodeSKILL.md~/.claude/skills/<name>/SKILL.md
OpenAI CodexAGENTS.md~/.agents/skills/<name>/SKILL.md or AGENTS.md in working dir
Google ADKSKILL.mdLoaded explicitly via load_skill_from_dir()
Cursor.mdc.cursor/rules/*.mdc
Cline.md.clinerules/
Windsurf.md.windsurf/rules/*.md
GitHub Copilot.md.github/copilot-instructions.md
To make skills work inside a sandbox, bake the skill files into the image at the paths the agent expects.

Create a Skills Image

Any Agent

The simplest way to install skills for any agent is with the skills CLI. It places skill files in the correct discovery paths for Claude Code, Codex, Cursor, Windsurf, and other supported agents.
from tensorlake import Image

image = (
    Image(name="with-skills", base_image="tensorlake/ubuntu-systemd")
    .run("apt-get update && apt-get install -y nodejs npm python3 python3-pip")
    .run("npm install -g skills")
    .run("skills add tensorlakeai/tensorlake-skills --all -y --copy")
    .run("python3 -m pip install --break-system-packages tensorlake")
)
  • --all installs skills to all detected agents
  • -y skips confirmation prompts for non-interactive use
  • --copy copies files instead of symlinking, which is more reliable inside containers

Claude Code Only

If you only need Claude Code support, copy the skill into ~/.claude/skills/ inside the image:
from tensorlake import Image

image = (
    Image(name="claude-code-skills", base_image="tensorlake/ubuntu-systemd")
    .run("apt-get update && apt-get install -y git python3 python3-pip")
    .run("git clone https://github.com/tensorlakeai/tensorlake-skills /tmp/tensorlake-skills")
    .run(
        "mkdir -p /root/.claude/skills/tensorlake && "
        "cp -r /tmp/tensorlake-skills/SKILL.md /tmp/tensorlake-skills/references "
        "/root/.claude/skills/tensorlake/"
    )
    .run("rm -rf /tmp/tensorlake-skills")
    .run("python3 -m pip install --break-system-packages tensorlake")
)
Claude Code scans ~/.claude/skills/ at startup. The SKILL.md file and references/ directory at /root/.claude/skills/tensorlake/ are auto-discovered.

Create a Reusable Sandbox Image

Register the image once, then launch new sandboxes with the skills already baked in:
tl sbx image create ./Dockerfile --registered-name claude-code-skills
npx tl sbx image create ./Dockerfile --registered-name claude-code-skills
Then launch sandboxes from that image:
tl sbx new --image claude-code-skills

Use with the SDK

You can also install skills programmatically each time you create a sandbox:
from tensorlake.sandbox import SandboxClient

client = SandboxClient()

with client.create_and_connect() as sandbox:
    sandbox.run("bash", ["-c", "apt-get update && apt-get install -y nodejs npm"])
    sandbox.run("bash", ["-c", "npm install -g skills"])
    sandbox.run("bash", ["-c", "skills add tensorlakeai/tensorlake-skills --all -y --copy"])

    result = sandbox.run(
        "find",
        ["/", "-name", "SKILL.md", "-type", "f", "-not", "-path", "*/node_modules/*"],
    )
    print(result.stdout)
For sandboxes you create frequently, use the sandbox image approach to avoid reinstalling skills on every launch.

What Gets Included

The skill repo contains SDK references that the agent uses as context:
tensorlake-skills/
├── AGENTS.md                       # Skill definition (OpenAI Codex)
├── SKILL.md                        # Skill definition (Claude Code, Google ADK)
└── references/
    ├── applications_sdk.md         # Orchestrate API reference
    ├── sandbox_sdk.md              # Sandbox API reference
    ├── documentai_sdk.md           # DocumentAI API reference
    └── integrations.md             # Integration patterns

See Also

Agent Skills

Learn about TensorLake skills and how to install them for your coding agent.

Sandbox Images

Create reusable sandbox images from Dockerfiles or the TensorLake image DSLs.