> your AI agent picks dependencies from memory; give it dated facts — try starlog.dev ↗ vet your agent's deps ↗ vibe-coding is fine. vibe-importing isn’t. — try starlog.dev ↗ vibe-importing isn’t fine ↗ your agent has never seen your private packages — try starlog.dev ↗ facts for private packages ↗ a linter for the dependencies your AI agent picks — try starlog.dev ↗ a linter for agent deps ↗

Back to Articles

Building a Department of AI: How contains-studio/agents Turns Claude Code Into a Cross-Functional Team

[ View on GitHub ]

Building a Department of AI: How contains-studio/agents Turns Claude Code Into a Cross-Functional Team

Hook

What if you could hire a designer, product manager, marketing specialist, and QA engineer for the cost of zero dollars and organize them into the perfect team structure—all living inside your code editor?

Context

The AI coding assistant landscape has rapidly evolved from simple autocomplete to conversational pair programming. But there's a fundamental mismatch: most developers don't just need help writing code. They need design feedback, copy suggestions, API documentation reviews, deployment checklists, and strategic product thinking. The traditional approach has been to context-switch between different tools—ChatGPT for copywriting, Claude for code review, maybe a separate session for architectural planning.

contains-studio/agents takes a different approach entirely. Rather than treating your AI assistant as a single generalist entity, it provides a framework for creating a departmentalized team of specialists. Built specifically for Anthropic's Claude Code IDE, this repository contains 35+ pre-configured agent personas, each with domain-specific system prompts, tool permissions, and behavioral guidelines. The philosophy mirrors how actual startups operate: instead of one person doing everything poorly, you have focused experts who know their domain deeply and can collaborate when complexity demands it.

Technical Insight

Agent Repository

Parses & Loads

Organizes into

Organizes into

Organizes into

Organizes into

Context Match

Explicit Invoke

Activates

Instantiates

Tool Access

Performs Actions

Results

User Request

Claude Code Router

Markdown Files

YAML + Prompts

Engineering Agents

Design Agents

Product Agents

Marketing Agents

Auto-trigger Logic

Agent Selection

Specialized Agent Instance

Constrained Tools

read/write/execute

Task Execution

System architecture — auto-generated

At its core, contains-studio/agents is a collection of markdown files with YAML frontmatter that Claude Code parses to instantiate sub-agents. The architecture is deceptively simple but reveals sophisticated thinking about how AI context and capabilities should be segmented.

Each agent definition follows a consistent structure. Here's a simplified example of what the product strategist agent looks like:

---
name: product-strategist
description: Strategic product thinking and roadmap planning
color: purple
tools:
  - read_files
  - search_project
auto_trigger:
  - context: feature_planning
  - context: roadmap_discussion
---

You are a product strategist focused on helping indie developers and small studios ship valuable features quickly. Your core philosophy:

- Ship working features in days, not weeks
- Prioritize ruthlessly based on user impact
- Every feature should have a clear success metric
- Validate assumptions before building

When asked about features, always:
1. Ask what problem this solves for users
2. Suggest the minimal version that proves value
3. Identify what could be cut without losing core value
4. Propose metrics to measure success

You have a bias toward action and against analysis paralysis...

The separation of concerns happens at three levels. First, tool access controls ensure agents can only interact with appropriate parts of the system. A marketing-copywriter agent gets file reading permissions but not execution rights, while a deployment-specialist has broader system access. Second, department-based organization (engineering/, design/, product/, marketing/) creates a mental model that mirrors real team structures—making agents discoverable and their responsibilities intuitive. Third, auto-trigger contexts allow certain agents to activate proactively based on development activity, like test-writer-fixer jumping in after code changes or the accessibility-advocate reviewing UI implementations.

The collaborative architecture is where this gets interesting. Unlike isolated AI interactions, these agents are designed to hand off work and combine perspectives. The studio-coach agent acts as a meta-coordinator, designed to invoke multiple specialists for complex tasks. When you ask about launching a new feature, studio-coach might orchestrate: product-strategist defines scope, frontend-architect designs the implementation, marketing-copywriter drafts announcement copy, and deployment-specialist creates a launch checklist—all in a single conversational flow.

Installation involves symlinking the agents directory into Claude Code's configuration:

cd ~/.claude
ln -s /path/to/contains-studio/agents ./agents

Once installed, Claude Code automatically indexes the agents and makes them available through natural language invocation ("ask the API specialist about this endpoint") or automatic context-based triggering. The system maintains conversation continuity across agent switches, so context doesn't reset when responsibility transfers.

What makes this approach powerful is the prompt specialization strategy. Rather than generic "you are a helpful assistant" instructions, each agent embeds deep domain expertise and opinionated best practices. The documentation-specialist agent, for example, isn't just told to write docs—it's given a specific philosophy about README structure, examples-first explanations, and maintaining a conversational tone. The css-animation-specialist doesn't just know CSS; it has preferences for modern techniques, performance considerations, and accessibility implications of motion.

The repository also demonstrates a "sprint culture" philosophy baked into many agents. Multiple agents reference a "6-day sprint" methodology emphasizing rapid iteration over perfection. This isn't just flavor text—it shapes how agents make recommendations. When the frontend-architect suggests an implementation, it will bias toward battle-tested libraries over custom solutions, toward incremental enhancement over full rewrites, toward shipping a working 80% solution today rather than a perfect 100% solution next month.

Gotcha

The most significant limitation is platform lock-in. This entire framework is Claude Code-specific, using proprietary agent configuration formats that won't work in Cursor, VSCode with Copilot, or any other development environment. If Anthropic changes their agent architecture or you decide to switch IDEs, you're starting from scratch. There's no abstraction layer or export format to migrate these configurations elsewhere.

The effectiveness is also entirely prompt-dependent, which means it inherits all the fragility of large language models. Agents might ignore their specialized instructions under certain conditions, hallucinate capabilities they don't have, or fail to properly hand off context when collaborating. The repository provides the organizational structure and initial prompts, but there's minimal guidance on testing agent reliability, measuring response quality, or debugging when an agent consistently gives poor advice. You're essentially trusting that well-crafted prompts will consistently yield expert-level domain knowledge, which is optimistic at best. For domains where you lack expertise yourself, you may not even recognize when an agent is confidently wrong.

Verdict

Use if: you're already committed to Claude Code as your primary development environment and you're a solo developer or small team trying to move fast across multiple disciplines—coding, design, copy, product strategy—without hiring specialists. The value is immediate: instead of crafting prompts from scratch every time you need marketing copy or deployment advice, you have pre-configured experts ready to invoke. It's especially powerful if you align with the "ship in days" philosophy baked into many agents. Skip if: you work in a different IDE and aren't willing to switch, you prefer minimal AI assistance over orchestrated multi-agent systems, you need cross-platform portability for your AI configurations, or you work in a domain where AI-generated advice needs rigorous verification (like security, compliance, or safety-critical systems). Also skip if you enjoy the process of crafting your own AI workflows from first principles—these opinionated templates will feel constraining rather than liberating.