Files
bot-bottle/CLAUDE.md
T
didericis 97aabd3d75 docs: trim CLAUDE.md to minimal orientation
Drop the Intended design section and PRD references; keep only
What this is, Goals, Non-goals, Repository layout, Conventions,
and When you're unsure.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-08 14:58:46 -04:00

2.4 KiB

claude-bottle

What this is

claude-bottle spins up an isolated container for running Claude Code with a curated set of skills and env vars. The point is to run Claude with broad permissions inside a sandbox, so a misbehaving agent cannot reach the host. Bash scripts orchestrate the container lifecycle and the copying of skills and env vars into it.

Goals

  • Minimize risk of running claude with full permissions
  • Allow me to easily spin up agent tasks in parallel
  • Create isolated, well defined, easily updated, shareable agents

Non-goals

  • Communicating between agents directly
  • Self hosted VMs (v1 uses local Docker containers, not VMs)
  • Advanced agent auditing (lean on git history for auditing)

Repository layout

  • README.md — short public-facing description.
  • CLAUDE.md — this file, orientation for future Claude sessions.
  • .gitignore — OS junk.
  • claude-bottle.json — manifest of named agents (env / skills / prompt per agent), consumed by cli.sh. See "Manifest" under "Intended design".
  • docs/INDEX.md — pointer to the journal and research notes.
  • docs/JOURNAL.md — append-only log of decisions and state changes.
  • docs/prds/ — product requirement docs.
  • docs/research/ — research notes (empty for now, kept tracked via .gitkeep).
  • .claude/skills/init-entry/ — project-local Claude Code skill providing /init-entry for adding journal entries. Snapshotted from ~/.claude/skills/init-entry/ at scaffold time; refresh deliberately if it drifts.

Conventions

  • Text-driven content. docs/JOURNAL.md is an append-only stream of thought, newest first. Entries are timestamps followed by freeform prose — no templates, no required sections. Add entries with /init-entry.
  • Product requirement docs live in docs/prds/.
  • Research notes live in docs/research/.
  • Low dependencies by default. The project is bash-first; ask before adding new tools, runtimes, or package managers.
  • Commit messages follow Conventional Commits: <type>[(scope)][!]: <description>, where <type> is one of feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert. A commit-msg hook in .githooks/ enforces this. Activate it once per clone with git config core.hooksPath .githooks.

When you're unsure

Ask. Default to drafting in chat over editing files when the request is ambiguous.