The founding member waitlist is now open. Join the founding waitlist
marianna.studio

Resources Guide

Guide

Turn Claude Code into a full agency

Custom agents for each role, and how they hand work to each other.

FreeGuide

Claude Code is already useful out of the box.

But normally, you’re asking one general-purpose AI to switch between being a designer, media buyer, salesperson and content strategist.

That works.

But it’s not the same as giving each job to a specialist.

The Agency Agents library gives you a roster of prebuilt AI specialists, each with their own role, process, deliverables and way of working.

You can build your own:

  • Design Division
  • Sales Division
  • Marketing Division
  • Product Division
  • Engineering Division

… and more.

Then call in the right specialist whenever you need them.

Before we start: agents versus skills

People often use “agents” and “skills” interchangeably, but Claude Code treats them differently.

A skill is more like a reusable recipe. You normally install it as a SKILL.md file and invoke it with something like /campaign-audit.

A subagent is more like a specialist coworker. It has its own instructions, tools and working context. You call it by name:

Use the Paid Media Auditor agent to review these campaign exports.

The Agency Agents repository installs these specialists into Claude Code’s agents directory, so technically you are building an agency of custom subagents.

You can still refer to them as “specialised skills” if it helps.

Just know what is actually being installed.

  1. What you need

Before installing anything, you need:

  • Claude Code installed and logged in
  • A Claude plan or account that includes Claude Code access
  • Git installed on your computer
  • A terminal

On Windows, run the installer through Git Bash or WSL. The repository’s installation script officially supports macOS, Linux, Windows Git Bash and WSL.

Check that Claude Code is working:

run
claude --version

Then check Git:

run
git --version

If both commands return a version number, you’re ready.

  1. Install your four agency divisions

Open your terminal.

Copy and paste these commands one at a time:

run
git clone <https://github.com/msitarzewski/agency-agents.git>

This downloads the Agency Agents library to your computer.

Now enter the downloaded folder:

run
cd agency-agents

Then install the four divisions:

prompt
bash ./scripts/install.sh --tool claude-code --division design,paid-media,sales,marketing

That command installs:

  • The Design division
  • The Paid Media division
  • The Sales division
  • The Marketing division

We’re treating the repository’s Marketing division as your public-facing Content division, because that is where agents such as Content Creator, LinkedIn Content Creator, Email Marketing Strategist, SEO Specialist and Social Media Strategist live.

The installer copies the selected agent files into:

prompt
~/.claude/agents/

That makes them available across your Claude Code projects.

Want to preview everything first?

List the available divisions:

prompt
bash ./scripts/install.sh --list teams

Preview the installation without changing anything:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --division design,paid-media,sales,marketing \
  --dry-run

Want every agent in the library?

Run:

prompt
bash ./scripts/install.sh --tool claude-code

I wouldn’t start there.

Installing four relevant divisions makes it easier to understand which specialists you actually use. You can always add more later.

Install any division you want

The four divisions in this guide are only examples. You can install any combination from the Agency Agents library.

First, see every available division:

prompt
bash ./scripts/install.sh --list teams

Then use this template:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --division division-name,other-division-name

Replace the placeholder names with the divisions you want. Keep them lowercase, use the exact names shown by the --list teams command and separate multiple divisions with commas—without spaces.

For example:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --division design,paid-media,sales,marketing

Or create a broader agency setup:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --division design,paid-media,sales,marketing,strategy,project-management

You can run the installer again later to add more divisions. You don’t have to choose everything upfront.

Install every division

To install the full Agency Agents roster, leave out the --division option:

prompt
bash ./scripts/install.sh --tool claude-code

That installs every available agent into Claude Code.

Install individual agents instead

You can also skip entire divisions and install only the specialists you want.

First, list the available agents:

prompt
bash ./scripts/install.sh --list agents

Then use:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --agent agent-name,other-agent-name

For example:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --agent frontend-developer,ui-designer

So the difference is:

prompt
--division design,marketing

installs complete teams, while:

prompt
--agent ui-designer,content-creator

installs only those specific specialists.

Preview the installation first

To see what will be installed without changing anything:

prompt
bash ./scripts/install.sh \
  --tool claude-code \
  --division design,marketing \
  --dry-run
  1. Check that the agents were installed

Run:

prompt
ls ~/.claude/agents

You should see files with names similar to:

prompt
design-brand-guardian.md
design-ui-designer.md
paid-media-auditor.md
sales-outbound-strategist.md
marketing-content-creator.md

Now open Claude Code inside the folder containing the project you want the agency to work on:

run
cd /path/to/your/project
claude

If Claude Code was already open while you installed the agents, restart the session.

Claude Code normally detects agent changes automatically, but a restart can be required when the agents directory did not exist before the current session began.

  1. Call your first specialist

There is no complicated dashboard.

You simply name the agent in your prompt.

Try this:

Use the Brand Guardian agent to review the messaging and visual direction in this project. Identify the three biggest inconsistencies and recommend specific changes.

Claude should delegate the work to the Brand Guardian.

That agent is designed to handle brand positioning, identity systems, messaging, voice and consistency across different touchpoints.

The basic formula is:

prompt
Use [AGENT NAME] to [COMPLETE A SPECIFIC JOB].

Context:
[Explain the company, product and audience.]

Inputs:
[List the files or folders it should review.]

Deliverable:
[Describe exactly what you want produced.]

Constraints:
[Include tone, budget, channel or timing.]

Save the result to:
[Choose an output file.]

The more specific the deliverable, the more useful the agent becomes.

“Help with my marketing” is vague.

“Create a 30-day content calendar with five content pillars, three weekly LinkedIn posts and one weekly newsletter” gives the specialist a real job.

  1. Design division use case

Turn a weak landing page into a clear design brief

Imagine you have:

  • Landing-page copy
  • Screenshots of the existing page
  • Customer research
  • A rough brand guide

Put them inside your project:

prompt
inputs/
├── landing-page-copy.md
├── customer-research.md
├── brand-guide.md
└── screenshots/

Then use this prompt:

Use the UX Researcher agent to review the customer research and identify the five biggest user needs, objections and points of confusion.

Then use the UI Designer agent to turn those findings into a revised landing-page structure.

The output should include:

  1. The recommended section order
  2. The purpose of every section
  3. Suggested headlines and calls to action
  4. Visual hierarchy recommendations
  5. Mobile-specific considerations

Finally, use the Brand Guardian agent to check that the recommendation matches the brand guide.

Save the final brief to outputs/landing-page-redesign.md.

This works because each specialist has a clear responsibility:

prompt
UX Researcher
→ Understand the user

UI Designer
→ Design the experience

Brand Guardian
→ Protect consistency

The Design division also includes agents for UX architecture, visual storytelling, inclusive imagery, image prompting and final UI quality review.

A useful final check

After the design is built, run:

Use the UI Finish-Gate Reviewer agent to review the finished page. Be critical. Flag anything that looks generic, inconsistent, unfinished or interchangeable with another SaaS website. Give me a prioritised fix list.

That is much more useful than asking:

Does this look good?

  1. Paid media division use case

Audit a real advertising account

Export the data from your advertising platform and place it in a folder:

prompt
inputs/paid-media/
├── campaigns.csv
├── search-terms.csv
├── ads.csv
├── conversions.csv
└── account-notes.md

Now prompt Claude:

Use the Paid Media Auditor agent to audit the files inside inputs/paid-media.

Review:

  • Campaign structure
  • Budget allocation
  • Conversion tracking
  • Bidding strategy
  • Search-term quality
  • Creative performance
  • Audience targeting
  • Potential wasted spend

Separate your findings into:

  1. Critical issues
  2. Quick wins
  3. Medium-term improvements
  4. Experiments worth running

For every recommendation, explain the supporting evidence from the data. Do not invent missing metrics.

Create a prioritised 30-day action plan and save it to outputs/paid-media-audit.md.

The Paid Media Auditor is specifically designed to review Google Ads, Microsoft Ads and Meta accounts across account structure, tracking, bidding, creative and audiences.

Turn the audit into an action plan

Once the first audit is complete:

Use the Search Query Analyst agent to review the search-term data and produce:

  • Negative-keyword recommendations
  • New keyword opportunities
  • Intent groupings
  • Examples of irrelevant traffic
  • Suggested campaign or ad-group restructuring

Then use the PPC Campaign Strategist agent to turn the audit and search analysis into a revised campaign structure.

Finish by asking the Tracking & Measurement Specialist to identify any measurement gaps that would make the recommendations unreliable.

The workflow becomes:

prompt
Paid Media Auditor
→ Find the problems

Search Query Analyst
→ Diagnose search intent

PPC Campaign Strategist
→ Rebuild the strategy

Tracking & Measurement Specialist
→ Make sure performance can be measured

The division also includes specialists for paid social, programmatic buying and advertising creative.

  1. Sales division use case

Build a personalised outbound campaign

Give Claude information about:

  • Your offer
  • Your ideal customer
  • Your existing customers
  • Your proof or case studies
  • A list of target accounts
  • Any buying signals you have found

Organise it like this:

prompt
inputs/sales/
├── offer.md
├── ideal-customer-profile.md
├── case-studies.md
├── target-accounts.csv
└── buying-signals.csv

Then prompt:

Use the Outbound Strategist agent to build a signal-based outbound campaign using the files in inputs/sales.

Do not create generic mass outreach.

Segment the target accounts by:

  • Likely problem
  • Buyer role
  • Trigger or buying signal
  • Level of intent

For each segment, create:

  1. A relevant outreach angle
  2. A short first email
  3. A LinkedIn message
  4. Two follow-ups
  5. A clear reason for contacting them now

Explain which information is confirmed and which assumptions still need verification.

Save the campaign to outputs/outbound-campaign.md.

The Outbound Strategist is built around ideal-customer definition, buying signals, personalisation and multi-channel outreach rather than high-volume generic prospecting.

Prepare for a sales call

Before a discovery call, use:

Use the Discovery Coach agent to prepare me for a 30-minute discovery call with the prospect described in inputs/sales/prospect-brief.md.

Give me:

  • The call structure
  • The ten most valuable questions
  • Likely pain points
  • Assumptions I should not make
  • Warning signs that the opportunity is weak
  • A strong way to agree next steps

Do not write a robotic script. Give me a flexible conversation guide.

Turn the opportunity into a proposal

After the call, save your transcript or notes and run:

First, use the Deal Strategist agent to assess the opportunity using the call notes.

Identify:

  • The business problem
  • The cost of inaction
  • Decision criteria
  • Stakeholders
  • Risks
  • Missing information
  • Probability of moving forward

Then use the Proposal Strategist agent to draft a persuasive proposal based only on confirmed information.

Clearly mark any placeholders that still need client input.

The Sales division contains dedicated specialists for outbound, discovery, deal strategy, proposals, pipeline analysis, sales engineering, account growth and coaching.

  1. Content division use case

Turn one idea into a month of content

Place your source material in a folder:

prompt
inputs/content/
├── founder-interview.txt
├── product-notes.md
├── customer-faqs.md
├── brand-voice.md
└── examples-we-like.md

Now use:

Use the Content Creator agent to turn the files in inputs/content into a 30-day content plan.

Start by identifying:

  • The strongest audience problems
  • The most original ideas
  • Useful stories or examples
  • Recurring content pillars
  • Claims that need evidence

Then create:

  • Twelve LinkedIn post concepts
  • Four newsletter concepts
  • Four short-video scripts
  • Two long-form article briefs
  • One lead magnet concept

Every idea should have a specific purpose: awareness, trust, conversion or retention.

Do not repeat the same idea in different formats without adapting it to the platform.

Save everything to outputs/30-day-content-plan.md.

The Content Creator agent is designed for multi-platform planning, editorial calendars, brand storytelling, long-form content, video, repurposing and distribution.

Adapt it for each channel

Once the strategy is approved:

Use the LinkedIn Content Creator agent to write the LinkedIn posts from the approved content plan.

Use the Email Marketing Strategist agent to turn the strongest four ideas into a four-email nurture sequence.

Use the Social Media Strategist agent to adapt the remaining ideas for Instagram, TikTok and X.

Preserve the core argument, but change the hook, pacing, length and format for each platform.

Use inputs/content/brand-voice.md as the voice reference.

Save each channel in a separate file inside outputs/content/.

This is where the setup starts to feel like a real content team rather than a single writing prompt.

  1. Run the whole agency

Now for the more powerful use case.

Imagine you are launching a new B2B service.

You need:

  • Positioning
  • Landing-page direction
  • Content
  • Paid advertising
  • Outbound sales
  • A proposal template

Instead of asking one Claude conversation to improvise everything, assign the work across your divisions.

Use this prompt:

Act as the agency lead for this project.

The project brief is inside brief/project-brief.md. Supporting research and assets are inside inputs/.

Coordinate the following workflow:

Phase 1: Brand and design

Use the Brand Guardian agent to define the positioning, audience, value proposition, key messages and voice.

Then use the UI Designer agent to create a landing-page content and design brief.

Phase 2: Content

Use the Content Creator agent to develop three campaign themes and a four-week content plan.

The content must be based on the approved positioning from Phase 1.

Phase 3: Paid media

Use the Paid Social Strategist agent to create a launch campaign for LinkedIn and Meta.

Then use the Ad Creative Strategist agent to produce hooks, copy concepts and creative-testing angles.

Phase 4: Sales

Use the Outbound Strategist agent to define the target-account segments and create a personalised outreach sequence.

Then use the Proposal Strategist agent to create a reusable proposal template for qualified leads.

Do not let later phases contradict earlier decisions.

At the end of every phase:

  1. Summarise what was decided
  2. List unresolved questions
  3. Ask for approval before continuing

Save every deliverable in a clearly labelled folder inside outputs/agency-launch/.

Claude Code can delegate matching tasks to custom subagents, which work in their own contexts and return their results to the main conversation. This helps keep specialist research and implementation from overwhelming the main context.

The important part is not using as many agents as possible.

It is giving every agent:

  • A clear role
  • The right inputs
  • A defined deliverable
  • A logical place in the workflow
  1. Make the agents understand your business

The downloaded agents are generic specialists.

They do not automatically know:

  • Your brand voice
  • Your pricing
  • Your customer
  • Your past results
  • Your preferred frameworks
  • Your approval process
  • What your business refuses to do

Give them that context.

A useful project structure is:

prompt
your-project/
├── CLAUDE.md
├── context/
│   ├── company.md
│   ├── audience.md
│   ├── offer.md
│   ├── brand-voice.md
│   ├── case-studies.md
│   └── constraints.md
├── inputs/
└── outputs/

Tell Claude:

Before delegating any agency work, read the files inside context/. Treat them as the source of truth. Flag contradictions or missing information rather than filling gaps with invented details.

This one instruction can make the difference between generic output and something that actually sounds like your business.

  1. Create client-specific versions

The initial installation places the agents in:

prompt
~/.claude/agents/

That makes them available across your projects.

For work that is specific to one company or client, you can also place customised agents inside:

prompt
your-project/.claude/agents/

Project-level agents are scoped to that project and take priority over user-level versions with the same name. This is useful when one client has a specific voice, compliance requirement or approval process that should not affect other work.

For example, you could create a project-specific brand agent that always:

  • Reads the client’s brand guide first
  • Uses British English
  • Avoids particular claims
  • Produces work in the client’s template
  • Requests human approval before finalising copy

That is when the system becomes your agency rather than simply a downloaded prompt library.

  1. Keep the agents updated

Because the standard installer copies the files, future changes to the GitHub repository will not automatically appear in your installed versions.

To update them:

run
cd agency-agents
git pull
bash ./scripts/install.sh --tool claude-code --division design,paid-media,sales,marketing

This downloads the latest versions and copies them into your Claude agents directory again.

The installer also supports a --link option that creates symbolic links instead of copies, allowing repository changes to propagate more directly. The standard copy-based installation is simpler and generally safer for beginners.

  1. Common problems

“Claude can’t find the agent”

First, check that the files exist:

prompt
ls ~/.claude/agents

Then restart Claude Code.

This is especially important when the agents directory was created after your current session started.

“The slash command doesn’t work”

These are subagents, not slash-command skills.

Do this:

Use the Content Creator agent to create a content plan.

Not this:

prompt
/content-creator

“Permission denied”

Run the installer through Bash:

prompt
bash ./scripts/install.sh --tool claude-code --division design,paid-media,sales,marketing

“I’m on Windows”

Use Git Bash or WSL rather than running the shell script directly inside standard PowerShell.

“The output is still generic”

The agent probably lacks context.

Give it:

  • Actual customer research
  • Real campaign exports
  • Previous work
  • Your brand guide
  • Your constraints
  • A precise deliverable

Specialisation does not replace information.

“Can the paid media agent access my ad account?”

Not automatically.

These agent files define behaviour and working instructions. They do not magically grant access to your advertising platforms, CRM or analytics accounts.

You still need to provide exports, files or properly configured integrations.

  1. Be realistic about the results

These agents can give Claude a stronger process.

They do not guarantee that every recommendation is correct.

You should still review:

  • Advertising-budget recommendations
  • Performance projections
  • Legal or compliance claims
  • Customer-facing promises
  • Competitive research
  • Statistical claims
  • Final creative work

Think of the agents as experienced first-pass specialists.

They can research, structure, analyse and produce work.

You are still the agency lead.

Recap

You only need three steps:

Step 1: Download the library

run
git clone <https://github.com/msitarzewski/agency-agents.git>
cd agency-agents

Step 2: Install your divisions

prompt
bash ./scripts/install.sh --tool claude-code --division design,paid-media,sales,marketing

Step 3: Call the specialist you need

prompt
Use the Paid Media Auditor agent to review the campaign exports in this folder.

Use the Brand Guardian agent to audit our messaging.

Use the Outbound Strategist agent to build a personalised prospecting campaign.

Use the Content Creator agent to turn this interview into a 30-day content plan.

That’s the shift.

You stop asking one general AI to improvise every job.

You start assembling the right specialist for the work.

Next

Build your AI systems

A practical implementation community for founders building AI-powered systems. Opening soon!