Agent Capsule — Development skill for Claude Code
Run Agents (claude-code for now) in a rootless Podman container: one shared project directory, isolated per-session homes, one login for all sessions.
How to install Agent Capsule
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open Niahh/agent-capsule and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Agent Capsule does
Run Agents (claude-code for now) in a rootless Podman container: one shared project directory, isolated per-session homes, one login for all sessions.
Alternatives in Development
- E2e Devcontainer — Run E2E tests in a dev container (isolated environment) 1.6k ★
- Storybloq — Cross-session context for Claude Code 696 ★
- Tmux Claude Hatch — tmux plugin that runs Claude Code sessions in popups per project directory, with an fzf picker showing each se 381 ★
README
agent-capsule
[![lint][lint-badge]][lint-workflow]
Run a coding agent, [Claude Code](https://code.claude.com/docs) by default, [OpenAI Codex CLI](https://github.com/openai/codex), or [opencode](https://opencode.ai), inside a rootless [Podman](https://podman.io/) container that shares a single project directory with the host.
One shell script, one Dockerfile. The container uses the project's resolved host path as its working directory and also exposes it at `/workspace` for compatibility. It gets an isolated home at `/home/dev`, a Node and Go toolchain, and hard resource limits. Everything else on the host stays out of reach.
What you get
- Rootless containment: container root maps to your host UID, so files written in the project are owned by you. All capabilities dropped, no-new-privileges, memory/CPU/pids limits.
- One login for all sessions: authenticate once per agent with
--auth-login(--agent codex --auth-loginfor Codex); the selected credentials file is live-shared into every session for that agent, token refreshes included. - Isolated sessions: each project or named session gets its own
/home/dev, so parallel agents do not trample each other's transcripts or settings. - Shared knowledge: one global rules file (
~/.agent-capsule/CLAUDE.md) is mounted into every session at the agent's expected path, and Claude's per-project memory is pooled across sessions and linked worktrees of the same repo. - Tools you list, extensions you turn on: each agent's image holds the CLIs you list
in
AGENT_CAPSULE_TOOLS, and nobody gets one they did not list. Extensions sit in every image, inert until--withturns them on, so--withnever rebuilds. - Defaults you keep: exported
AGENT_CAPSULE_*variables hold your usual add-ons so they are not retyped on every run.
Requirements
- Linux with rootless Podman configured, or macOS with Podman (see
Related Skills
Jmscontainers
Throwaway containers for running claude-code, codex, and opencode in yolo mode — without handing them your mac
Claude Sandbox
Run Claude Code in a hardened WSL2 distro on Windows. Rootless Podman boundary, tiered policies, credential gu
Leapfrog MCP
Multi-session browser MCP server -- 15 parallel isolated Chromium sessions so multiple Claude Code terminals c
Resesh
用 fzf 跨專案目錄恢復 Claude Code 與 Codex CLI session / Unified fzf finder to resume Claude Code & Codex CLI sessions
Claude Session Timeline
Live browser Gantt of your Claude Code sessions, grouped by directory, read straight from ~/.claude transcript
Agent Session Resume
Resume memory from other coding agents' sessions (Codex / OpenCode / Claude Code / Cursor) in the current work
Related Agents
Role=Podman
Podman Role Supplement — shared-node container steward
Encrypted Column Auditor
Audits new or changed web API routes for server-side reads of E2E-encrypted content columns (groups.windows, s
Podman Container Architect
Use this agent when working with containerization tasks that involve Podman, Containerfiles, container lifecyc