Launch a Telehealth Business with AI Agents
Orchestrate AI agents to run a speech therapy telehealth business.
Introduction
30 Second Summary
Running a business means juggling a dozen different roles at once, from writing marketing content to building a website to setting the overall strategy.
In this project, you will use Paperclip AI to launch a speech therapy telehealth business powered by a team of AI agents. You will set up a company with a mission, hire three agents (a CEO, a Content Marketing Manager, and a Developer), and watch them autonomously produce real deliverables for your practice.
What You'll Build
You will build a fully operational AI-powered company in Paperclip that orchestrates multiple AI agents to handle real business operations for a speech therapy telehealth practice.
By the end of this project, you'll have:
- A running Paperclip instance with a speech therapy company, a measurable goal, and a 3-agent org chart.
- Three AI agents (CEO, Content Marketing Manager, Developer) actively producing deliverables like blog posts, social media calendars, and a landing page.
- Configured budget controls and heartbeat schedules that keep your agents working autonomously on a 30-minute cycle.
- A Patient Education Specialist agent that creates downloadable therapy exercise guides for parents (Secret Mission).
Are there any prerequisites?
You should be comfortable using the terminal and have experience with Claude Code. You will also need Node.js 20+, pnpm 9.15+, and a Claude Max subscription with Claude Code CLI logged in.
Install Paperclip and Launch the Dashboard
Before your AI agents can start running your speech therapy practice, you need a place for them to live. Paperclip is an open-source AI agent orchestration platform that lets you organize agents into companies with org charts, goals, and budgets. In this step, you will install Paperclip, launch its dashboard, and confirm your Claude Code CLI is ready to power your agents.
In This Step, Get Ready To:
- Install Paperclip and start the local server.
- Open the Paperclip dashboard in your browser.
- Verify that Claude Code CLI is installed and authenticated.
Run the Paperclip Onboarding Command
Paperclip ships with a one-command quickstart that handles everything: downloading the CLI, spinning up an embedded PostgreSQL database, generating encryption keys, and starting the server. The --yes flag accepts all defaults so you can get running quickly.
- Open your terminal.
- Run the following command:
npx paperclipai onboard --yes
What does this command do?
The npx paperclipai onboard command downloads the Paperclip CLI from npm, creates a local configuration directory at ~/.paperclip/instances/default/, starts an embedded PostgreSQL database, and launches the Paperclip server. No external database setup is needed.
The setup takes a minute or two. When it completes, you should see output confirming the server is running at http://localhost:3100.
Seeing EADDRINUSE?
This error means port 3100 is already in use by another process.
- On macOS/Linux, run lsof -i :3100 to find the process using that port.
- On Windows, run netstat -ano | findstr :3100 to find the process.
- Stop the conflicting process and try the onboarding command again.
Still stuck? Help me troubleshoot this port conflict.
Open the Paperclip Dashboard
- Open your web browser and navigate to http://localhost:3100.
Since this is a local install, Paperclip runs in local_trusted mode by default. This means no login is required. You should see the Paperclip Onboarding Wizard on first load.
What is local_trusted mode?
When Paperclip detects it is running locally, it skips authentication entirely. This is convenient for development and experimentation. In a production deployment, you would configure proper authentication.
Verify Your Claude Code CLI Is Ready
Your Paperclip agents will use the claude_local adapter, which delegates work to your locally installed Claude Code CLI. Since you are using a Claude Max subscription, your agents authenticate through your locally logged-in session. No API key is needed.
- Open a separate terminal window (keep the Paperclip server running in the first one).
- Run the following command to confirm Claude Code is installed:
claude --version
I see a version number
You are all set. Claude Code CLI is installed and ready for Paperclip to use.
Command not found
Claude Code CLI is not installed or not in your system PATH. You need to install it before continuing.
Help me install Claude Code CLI.
Why no API key?
The claude_local adapter supports two billing modes: API (using an ANTHROPIC_API_KEY) and Subscription (using your local Claude login). Since your Claude Max subscription covers usage, you will configure agents with the Subscription billing mode later.
You should not set an API key in your agent configuration. If an API key is injected, Claude CLI may authenticate via the API key instead of your subscription, causing errors.
Your Paperclip server is running and your Claude Code CLI is verified. Next up, you will create your speech therapy company and define the goal that all your agents will work toward.
Create Your Speech Therapy Company and Set the Mission
With Paperclip running, it is time to create the company your AI agents will work for. In Paperclip, a company is the top-level container that holds your org chart, goals, tasks, and budgets. Every agent you hire and every task you assign lives inside a company. In this step, you will create your speech therapy telehealth company and define the goal that drives all agent work.
In This Step, Get Ready To:
- Create a new company in the Paperclip dashboard.
- Define a specific, measurable company goal that all agents will work toward.
- Explore the company dashboard to understand where agents, tasks, and budgets live.
Create the Company
A company in Paperclip is more than just a name. It defines the mission, the org chart hierarchy, and the governance rules that control how your agents operate. Every agent reports to exactly one manager, and every task traces back to a company goal.
- In the Paperclip dashboard, click New Company. If the Onboarding Wizard is still active, follow its prompts instead.
- Enter a name for your practice, such as ClearVoice Speech Therapy.
- In the Description field, enter a description that captures what the company does.
Here is an example description you can use:
AI-powered speech therapy telehealth practice providing remote therapy sessions, patient education resources, and therapist support tools.
- Click Create to save your company.
What is a company in Paperclip?
Think of a Paperclip company as the boundaries of your AI operation. It groups agents under a strict org chart hierarchy, connects all tasks to shared goals, and enforces budget controls so no agent spends more than you allow. All configuration, data, and audit trails are scoped to the company.
Define the Company Goal
Every agent in your company needs a north star. A company goal is the top-level objective that all tasks trace back to. Without a clear goal, agents will produce unfocused, disconnected work. The more specific and measurable your goal, the better your agents will prioritize their tasks.
- Navigate to the Goals section in your company dashboard.
- Create a new top-level company goal.
Here is an example of a specific, measurable goal:
Launch a speech therapy telehealth practice website with a landing page, 5 blog posts on common speech therapy topics, and a social media content calendar within 30 days.
Pro tip: make it measurable
Avoid vague goals like "Do marketing stuff" or "Build a website." Include specific deliverables and a timeframe. Every task your agents execute traces back to this goal, so clarity here directly improves the quality of their output.
Review the Company Dashboard
With your company and goal created, take a moment to explore what the dashboard shows you.
- Look through the sections for the org chart, tasks, goals, and budgets.
Right now everything is empty except for your goal. The org chart has no agents, the task board has no tasks, and the budget section has no spending. In the next step, you will start populating this dashboard by hiring your first agent: the CEO.
Your company has a name, a mission, and a clear goal. Next up, you will hire the most important agent in your org chart: the CEO who drives strategy and delegates work to the rest of your team.
Hire Your CEO Agent
Your company has a mission and a goal, but nobody is working toward it yet. In Paperclip, every company needs a CEO agent at the top of the org chart. This agent drives strategy, breaks the company goal into actionable tasks, and delegates work to other agents.
In This Step, Get Ready To:
- Create a CEO agent with a strategic prompt template.
- Configure the heartbeat schedule that controls how often the CEO wakes up.
- Run an environment test to verify the agent can communicate with Claude Code.
Create the CEO Agent
The CEO is the root of your org chart. Every other agent you create will report up to it, either directly or through a manager. The CEO's prompt template tells it what to focus on during each heartbeat, which is the scheduled interval when an agent wakes up, reviews the company state, and takes action.
- From your company's dashboard, click the option to create a new agent.
- Set the Name to CEO.
- Set the Role to ceo.
- Set the Adapter to Claude Local (claude_local).
- Set the Model to claude-sonnet-4-5-20250929.
Why claude-sonnet-4-5-20250929?
This is the recommended model for the claude_local adapter. It balances capability and speed well for most agent roles. Paperclip also supports claude-opus-4-6 (more powerful, slower) and claude-haiku-4-5-20251001 (faster, less capable).
Now configure the billing and execution settings.
- Under Permissions and Configuration, find the Billing mode dropdown (located between Thinking effort and Extra args). Set it to Subscription (non-billable).
- Set the Working directory (cwd) to a dedicated folder for this agent using an absolute path, e.g., /home/youruser/paperclip-agents/ceo. Paperclip creates the directory if it does not exist.
- Set Effort to high. The CEO needs to think deeply about strategy and delegation.
- Set Max turns per run to 50.
Why Set Billing Mode to Subscription?
Since you are using a Claude Max subscription, your agents authenticate through your locally logged-in Claude Code session. Setting billing mode to Subscription (non-billable) tells Paperclip that costs are covered by your flat-rate subscription, so the dashboard displays usage correctly.
Do not set an ANTHROPIC_API_KEY in the agent's environment variables. If an API key is present, Claude CLI may try to authenticate through the API key instead of your subscription, causing "Invalid API key" errors.
Working Directories Must Be Absolute Paths
Relative paths like ./paperclip-agents/ceo will cause the agent to fail. Always use the full path starting from your home directory.
Finally, write the prompt template. This is the instruction set the CEO follows every time it wakes up.
- Paste the following into the Prompt template field:
You are {{agent.name}}, the CEO of {{company.name}}, a speech therapy telehealth practice. On each heartbeat, review the company goal, assess progress on open tasks, identify gaps, and delegate new work to your reports. Focus on building the practice's online presence: website, content marketing, and patient education resources. Prioritize tasks that will attract new patients.
What Are Those Curly Brace Variables?
Paperclip supports template variables like {{agent.name}} and {{company.name}} that get replaced with real values at runtime. Other available variables include {{agentId}}, {{companyId}}, and {{runId}}. This keeps your prompts reusable across different companies and agents.
- Save the agent configuration.
Configure the Heartbeat Schedule
A heartbeat is the scheduled interval at which an agent wakes up, reviews the company state, and takes action. Too frequent and you waste tokens on unnecessary check-ins. Too infrequent and progress stalls.
- In the CEO agent's configuration, set the Heartbeat interval to 1800 seconds (30 minutes).
- Leave heartbeats disabled for now. You will enable them for all agents together in a later step.
Pro tip: why 30 minutes?
A 30-minute heartbeat gives the CEO enough time between cycles to let delegated work accumulate before reviewing progress. Shorter intervals (like 5 minutes) would have the CEO constantly checking on agents that have not had time to finish anything yet.
Run the Environment Test
Before you move on, you need to confirm that the CEO agent can actually reach Claude Code CLI and execute commands in its working directory.
- Click the Test Environment button in the agent configuration UI.
This test validates that the Claude Code CLI is accessible, your working directory is valid, and authentication is working through your subscription. You should see a successful result confirming the agent is ready.
I see a success message
Your CEO agent is fully configured and ready to go. The environment test confirms that Paperclip can communicate with Claude Code CLI using your subscription credentials.
I see an error
Here are the most common issues:
- "Invalid API key" error: Make sure you did not set an ANTHROPIC_API_KEY in the agent's environment variables. Leave the env block empty when using subscription billing.
- Working directory error: Confirm you used an absolute path (starting with /), not a relative path.
- Claude CLI not found: Open a separate terminal and run claude --version to verify it is installed and accessible on your PATH.
Still stuck?
Try running paperclipai doctor --repair in your terminal to auto-diagnose and fix common configuration issues. If that does not help, ask for help debugging your environment test.
Your CEO is hired and verified. Next up, you will build out the rest of the team by adding a Content Marketing Manager and a Developer who report directly to the CEO.
Build Your Agent Team
Your CEO is ready to lead, but a CEO without a team has nobody to delegate to. In this step, you will hire two agents that report directly to the CEO: a Content Marketing Manager to produce blog posts and social media content, and a Developer to build your practice's landing page.
In This Step, Get Ready To:
- Create a Content Marketing Manager agent with a prompt tailored to speech therapy content.
- Create a Developer agent configured to build your practice's web presence.
- Review the org chart to confirm the reporting hierarchy.
Create the Content Marketing Manager
The Content Marketing Manager is responsible for attracting parents who are searching for speech therapy services. This agent will write blog posts, draft social media content, and build a content calendar. Since it reports to the CEO, the CEO can delegate marketing-related tasks directly to it.
- From the CEO's agent page, click the option to create a direct report.
- Set Name to Content Marketing Manager.
- Set Role to marketing_manager.
- Set Adapter to claude_local.
- Set Model to claude-sonnet-4-5-20250929.
- Under Permissions and Configuration, set Billing mode to Subscription (non-billable).
- Set Working directory (cwd) to an absolute path like /home/youruser/paperclip-agents/content-marketing.
- Set Effort to medium.
- Set Max turns per run to 50.
- Set Heartbeat interval to 1800 seconds (30 minutes). Do not enable heartbeats yet.
- Enter the following prompt template in the Prompt template field:
You are {{agent.name}}, the Content Marketing Manager at {{company.name}}. Your job is to create high-quality content that attracts parents seeking speech therapy services for their children. Write blog posts about common speech disorders (articulation, fluency, language delays), create social media post drafts, and develop a content calendar. All content should be evidence-based, empathetic, and accessible to non-clinical readers.
What Are Prompt Template Variables?
The {{agent.name}} and {{company.name}} placeholders are prompt template variables that Paperclip automatically replaces with real values at runtime. This keeps your prompts reusable across agents.
- Click Test Environment to verify the agent's configuration is valid.
- Save the agent.
Why Medium Effort Instead of High?
The CEO uses high effort because it needs to think strategically about the entire company. Operational agents like the Content Marketing Manager do focused, well-scoped work. medium effort gives them enough reasoning depth without burning through extra tokens on each heartbeat.
Create the Developer Agent
The Developer agent will build the web presence for your practice. It starts with a landing page and can take on additional development tasks as the CEO delegates them.
- Create another direct report of the CEO.
- Set Name to Developer.
- Set Role to developer.
- Set Adapter to claude_local.
- Set Model to claude-sonnet-4-5-20250929.
- Under Permissions and Configuration, set Billing mode to Subscription (non-billable).
- Set Working directory (cwd) to an absolute path like /home/youruser/paperclip-agents/developer.
- Set Effort to medium.
- Set Max turns per run to 100. Development tasks often require more iterations than content tasks.
- Set Heartbeat interval to 1800 seconds. Do not enable heartbeats yet.
- Enter the following prompt template:
You are {{agent.name}}, the lead Developer at {{company.name}}. Your job is to build the practice's web presence. Start with a clean, professional landing page that explains the telehealth speech therapy services, highlights therapist credentials, and includes a call-to-action for booking a consultation. Use HTML, CSS, and vanilla JavaScript. Keep it simple, fast, and mobile-friendly.
Why 100 Max Turns for the Developer?
Development tasks involve writing code, testing it, fixing issues, and iterating. The default max turns per run in Paperclip is 300, but 100 gives the Developer plenty of room to complete a landing page while keeping each heartbeat run bounded.
- Click Test Environment to verify the configuration.
- Save the agent.
Test Environment Failing?
If the environment test fails, double-check that your working directory uses an absolute path (starting with /). Relative paths will cause the agent to fail. Also confirm that Claude Code CLI is still logged in by running claude --version in your terminal. Help me troubleshoot my agent environment test.
Review the Org Chart
With both agents created, your company now has a complete reporting hierarchy. Every agent in Paperclip reports to exactly one manager. The CEO sits at the root and delegates work downward.
- Navigate to the Org Chart view in your company dashboard.
You should see a hierarchy that looks like this:
CEO
├── Content Marketing Manager
└── Developer
What Should I See?
The org chart should display three agents with clear reporting lines. The Content Marketing Manager and Developer both report directly to the CEO. If an agent appears disconnected or at the wrong level, click into that agent's settings and verify the manager assignment.
Your team is assembled. In the next step, you will assign real tasks to these agents, configure budgets, and enable heartbeats to bring the whole company to life.
Assign Tasks and Launch Your Agents
Your org chart is built, but your agents are sitting idle. A company without tasks is like a team without a to-do list. In this step, you will create the initial tasks that align with your company goal, configure budgets for each agent, and flip the switch that brings your AI company to life.
In This Step, Get Ready To:
- Create initial tasks and assign them to your agents.
- Set monthly budgets for each agent to track usage.
- Enable heartbeats and watch your agents start working.
Create Initial Tasks
Every task in Paperclip traces back to your company goal. When you create a task, you assign it to a specific agent and set its priority. The agent picks it up during its next heartbeat cycle and begins working.
- Go to the Tasks section in your company dashboard.
- Click New Task and create the following three tasks.
Task 1:
- Title: "Research the top 5 most common childhood speech disorders and write a blog post outline for each."
- Assign to: Content Marketing Manager.
- Priority: Medium.
- Status: Backlog.
Task 2:
- Title: "Create a professional landing page for the speech therapy telehealth practice with a hero section, services overview, about section, and contact form."
- Assign to: Developer.
- Priority: High.
- Status: Backlog.
Task 3:
- Title: "Develop a 30-day social media content calendar focused on speech therapy awareness and parent education."
- Assign to: Content Marketing Manager.
- Priority: Medium.
- Status: Backlog.
Why set the landing page to high priority?
The landing page is the foundation of your online presence. Blog posts and social media content need somewhere to send potential patients. By marking it as high priority, you signal to the CEO agent that this task should be delegated and completed first.
Set Agent Budgets
Paperclip enforces budget controls on every agent. Even though your Claude Max subscription means costs are non-billable, setting budgets is good practice. Budgets track estimated usage so you can understand how much each agent is consuming.
- Go to the CEO agent's settings page.
- Set the monthly budget to $10/month (1000 cents).
- Repeat for the Content Marketing Manager and Developer agents, setting each to $10/month.
How do budgets work with a subscription?
With subscription billing mode, budgets track estimated costs for reference rather than enforcing real dollar limits. Your Claude Max subscription is flat-rate, so no actual charges apply. Paperclip still sends a soft alert at 80% utilization and auto-pauses agents at 100%. This gives you visibility into how much work each agent is doing.
Pro tip: start with low budgets
Default agent budgets are $0, which means agents cannot spend at all. Starting with $10/month per agent gives you enough headroom for the first few heartbeat cycles while keeping usage visible. You can always increase budgets later as your agents take on more work.
Enable Heartbeats and Launch
This is the moment your AI company comes to life. Heartbeats are the recurring schedule that wakes each agent up to review tasks and take action. Once enabled, agents operate autonomously on their 30-minute cycle.
- Go to the CEO agent's configuration page.
- Enable the heartbeat toggle.
- Navigate to the Content Marketing Manager agent and enable its heartbeat.
- Navigate to the Developer agent and enable its heartbeat.
Why enable the CEO first?
The CEO is the root of your org chart. It reviews the company goal, assesses open tasks, and delegates work to its direct reports. By starting the CEO first, it can immediately begin strategizing and assigning tasks before the other agents wake up. When the Content Marketing Manager and Developer activate, they already have direction waiting for them.
Once heartbeats are enabled, your agents will wake up on their 30-minute schedule, review their assigned tasks, and begin working. You can watch progress in real time from the dashboard.
- Check the task board to see tasks move from Backlog to In Progress as agents pick them up.
- Click into any agent to see their run transcript.
The run transcript shows exactly what the agent did, what tools it called, and what output it produced. This is your window into how your AI team operates.
What should I see?
After the first heartbeat cycle (up to 30 minutes), you should see at least one agent with a completed run in its transcript. The CEO may have created additional sub-tasks or delegated work. The Content Marketing Manager or Developer should show progress on their assigned tasks.
If an agent shows no activity after 30 minutes, check that its heartbeat is enabled and its budget is set above $0.
Agents not starting?
If your agents are not picking up tasks, check three things. First, confirm budgets are set above $0 (the default is $0, which blocks all spending). Second, verify heartbeats are enabled for each agent. Third, make sure your Claude Code CLI is still logged in by running claude --version in a separate terminal.
You can also run paperclipai doctor to check your configuration, or paperclipai doctor --repair to auto-fix common issues. Help me troubleshoot my agents.
Your AI company is now running. Next up, you will take on a secret mission to expand your org chart with a specialized agent.
Secret mission
Add a Patient Education Specialist
Your core team is up and running, but there is a gap in your org chart. Parents need practical, take-home resources they can use between therapy sessions. Your challenge is to add a Patient Education Specialist agent that creates downloadable therapy exercise guides.
Before you go
Clean Up Your Resources
Decide whether to keep your resources running, pause them to come back later, or delete them entirely. This project runs locally using your Claude Max subscription, so there are no ongoing cloud costs. However, the Paperclip server and its embedded PostgreSQL database do consume local system resources while running.
Resources you used:
- Paperclip server running on http://localhost:3100.
- Embedded PostgreSQL database (stored under ~/.paperclip/instances/default/).
- Agent working directories (e.g., /home/youruser/paperclip-agents/ceo, /home/youruser/paperclip-agents/content-marketing, /home/youruser/paperclip-agents/developer).
- Paperclip configuration and encryption keys (stored under ~/.paperclip/).
- Claude Code CLI sessions created by your agents.
Keep everything running
No action needed. Choose this if you are still actively building your speech therapy business and want your agents to keep working on their tasks.
- Your Paperclip server will continue running on http://localhost:3100.
- Agents with enabled heartbeats will continue waking up on their 30-minute schedule.
- Monitor progress from the dashboard and add new agents or tasks as your practice grows.
Pause - I'll come back to this later
Shut down the Paperclip server and disable heartbeats to free up system resources. Your data and configuration will be preserved for when you return.
- Disable heartbeats for each agent in the dashboard to stop them from running.
- Stop the Paperclip server by pressing Ctrl+C in the terminal where it is running.
- Your company, agents, tasks, and all configuration are stored under ~/.paperclip/instances/default/ and will persist until you delete them.
- To resume later, run npx paperclipai onboard --yes again and re-enable heartbeats for your agents.
Delete - I don't want to use this again
Remove all project resources and start fresh. This deletes your Paperclip instance, database, agent working directories, and all generated content.
- Stop the Paperclip server by pressing Ctrl+C in the terminal where it is running.
- Delete the Paperclip data directory by running rm -rf ~/.paperclip/ in your terminal.
- Delete the agent working directories by running rm -rf /home/youruser/paperclip-agents/ (adjust the path to match what you used during setup).
- Optionally, clear the npx cache for the Paperclip CLI by running npx clear-npx-cache.
Mission accomplished
That's a Wrap!
Nice work! You just built a fully operational AI-powered speech therapy telehealth business running in Paperclip. Three AI agents are now actively producing deliverables for your practice, all orchestrated from a single dashboard.
Here's what you learned:
- Installed Paperclip and configured a company with a specific, measurable goal that drives every agent's work.
- Designed an org chart with three agents (CEO, Content Marketing Manager, Developer) using the claude_local adapter, each with tailored prompt templates, heartbeat schedules, and budget controls.
- Launched heartbeats to kick off autonomous agent work, assigned real business tasks, and monitored agent progress through run transcripts and the task board.
- Expanded the org chart with a Patient Education Specialist agent that creates downloadable therapy exercise guides for parents.
Ready to quiz yourself?