Site icon Efficient Coder

Build AI Multi-Agent Teams to Automate Company Websites – Complete ClawTeam Setup Guide

How to Build an AI Multi-Agent Team That Automatically Generates Company Websites: A Complete ClawTeam Setup Guide

If you’ve ever built a website for a business, you know how tedious the process is — gathering materials, researching keywords, writing copy, coding pages, checking links. Every step takes time, and doing them all at once feels impossible.

That’s exactly the problem ClawTeam is designed to solve: multiple AI agents working in parallel, like a real team, each handling a different part of the job automatically.

This guide walks through the complete process of setting up ClawTeam on Windows from scratch and using it to automatically generate a static business website.


What Is ClawTeam?

ClawTeam is an open-source CLI tool developed by the Data Intelligence Lab at the University of Hong Kong (HKUDS). The core idea is straightforward: a Leader AI Agent automatically assembles a team of sub-agents, assigns tasks, monitors progress, and coordinates results.

You define the goal. The agent team handles everything else.

It supports Claude Code, Codex, OpenClaw, nanobot, and other mainstream CLI agents. Each agent gets its own isolated workspace via Git Worktree, so parallel workstreams don’t collide.

Project repository: github.com/HKUDS/ClawTeam


One Thing Windows Users Must Know Before Starting

ClawTeam depends on tmux and Linux system calls (such as fcntl). It cannot run directly in a native Windows environment.

If you try running it in PowerShell, you’ll immediately hit this error:

ModuleNotFoundError: No module named 'fcntl'

This isn’t a bug — it’s a design constraint. The only reliable solution is to run ClawTeam inside WSL2 (Windows Subsystem for Linux).


Setting Up the Environment: Step by Step

Step 1: Check Your WSL Status

Open PowerShell and list installed WSL distributions:

wsl --list --verbose

If you only see docker-desktop, you don’t have a usable Linux environment yet and will need to install Ubuntu.

Step 2: Install Ubuntu (On a Drive With Enough Space)

The C drive tends to fill up quickly. Installing Ubuntu on a secondary drive is the smarter move:

# Install Ubuntu
wsl --install -d Ubuntu --no-launch

# Export to your preferred drive
mkdir F:\WSL\Ubuntu
wsl --export Ubuntu F:\WSL\Ubuntu.tar
wsl --unregister Ubuntu
wsl --import Ubuntu F:\WSL\Ubuntu F:\WSL\Ubuntu.tar

Then launch Ubuntu:

wsl -d Ubuntu

Step 3: Install tmux

Once inside WSL:

sudo apt-get update && sudo apt-get install -y tmux
tmux -V  # Should output tmux 3.x

Step 4: Install Node.js and Claude Code

# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc

# Install the LTS version of Node.js
nvm install --lts
node --version  # Confirm the installation

# Install Claude Code
npm install -g @anthropic-ai/claude-code
claude --version  # Should display the version number

Step 5: Install ClawTeam

cd /mnt/f/python_workspace/ClawTeam  # Replace with your actual project path
pip install -e . --break-system-packages --ignore-installed

# Verify
clawteam --help

If you see the full command list, the installation is complete.


Troubleshooting Common Issues

Issue 1: WSL Disk Space Is Full

Alpine Linux defaults to roughly 130MB of disk space, which fills up fast. The fix is to switch to Ubuntu (as described above) or clear the package cache:

rm -rf /var/cache/apk/*

Issue 2: tmux Sessions Disappear Immediately

This happens when Claude Code encounters a “Do you trust this folder?” prompt and exits because no one responds. Two fixes:

Pre-trust the working directory manually:

mkdir -p /root/.clawteam/workspaces/seo-site/parser
cd /root/.clawteam/workspaces/seo-site/parser
claude  # Enter manually and confirm the trust prompt

Fix the permissions in settings.json:

cat > ~/.claude/settings.json << 'EOF'
{
  "permissions": {
    "allow": [
      "Bash(*)",
      "Read(*)",
      "Write(*)",
      "Edit(*)"
    ]
  }
}
EOF

Issue 3: Windows Claude Code Won’t Work Inside WSL

Even if Claude Code is already installed on Windows, WSL can’t reuse it — Windows Node.js can’t correctly resolve WSL paths. The cleanest solution is to install a separate Node.js and Claude Code stack inside WSL. They won’t interfere with each other.

Issue 4: Git Worktree Branch Already Exists

If a previous agent wasn’t cleaned up properly, re-spawning will throw:

fatal: a branch named 'clawteam/seo-site/parser' already exists

Delete the leftover branch:

git -C /your/project/path branch -D clawteam/seo-site/parser

Real-World Use Case: Generating a Static Business Website With an AI Team

The Goal

Input: A mix of company materials (PDF, Word, Excel, TXT files)
Output: A search-engine-ready static English website (HTML)

How the Team Is Structured

Company files (input/)
       ↓
Parser Agent    → Extract structured company data → company_data.json
       ↓
SEO Agent       → Keyword strategy, page titles, internal linking → seo_strategy.json
GEO Agent       → JSON-LD Schema, FAQ pairs → geo_assets.json  (runs in parallel with SEO)
       ↓
Writer Agent    → Generate English copy for all pages → page_copy.json
       ↓
Frontend Agent  → Assemble everything into a complete HTML website
       ↓
Auditor Agent   → Validate meta tags, Schema markup, links, alt text

Execution: Command by Command

Prepare the directory structure:

mkdir -p /mnt/f/python_workspace/seo-project/input
mkdir -p /mnt/f/python_workspace/seo-project/output
# Place all company material files into the input/ folder

Create the team:

clawteam team spawn-team seo-site \
  -d "Generate SEO/GEO optimized static HTML website from company files" \
  -n leader

Launch the Parser Agent:

clawteam spawn tmux claude --team seo-site --agent-name parser \
  --task "Read ALL files in /mnt/f/python_workspace/seo-project/input/. \
Extract: company name, tagline, products/services, unique selling points, team info, \
contact details, certifications, and case studies. \
Output structured JSON to /mnt/f/python_workspace/seo-project/company_data.json"

Once company_data.json is generated, launch the SEO and GEO Agents in parallel:

clawteam spawn tmux claude --team seo-site --agent-name seo \
  --task "Read company_data.json. Create an SEO strategy covering: target keywords, \
title tags, meta descriptions, H1/H2/H3 heading structure, internal linking plan, \
and URL slugs. Output to seo_strategy.json"

clawteam spawn tmux claude --team seo-site --agent-name geo \
  --task "Read company_data.json. Generate GEO assets: JSON-LD schema markup \
(Organization, Product, FAQ, BreadcrumbList), 20+ FAQ pairs optimized for \
AI citation, and clear entity definitions. Output to geo_assets.json"

Launch the Writer Agent:

clawteam spawn tmux claude --team seo-site --agent-name writer \
  --task "Read company_data.json and seo_strategy.json. Write English copy for \
5 pages: index, about, services, faq, and contact. Each page needs an H1, \
supporting H2/H3 subheadings, body copy, and a call-to-action. \
Tone: professional and conversion-focused. Output to page_copy.json"

Launch the Frontend Agent:

clawteam spawn tmux claude --team seo-site --agent-name frontend \
  --task "Read all JSON files in seo-project/. Build a complete static HTML website \
in output/. Requirements: responsive layout using CSS Grid and Flexbox, \
embed all JSON-LD in the <head>, include meta tags and Open Graph tags, \
optimize for Core Web Vitals, generate sitemap.xml and robots.txt, \
and interlink all 5 pages."

Launch the Auditor Agent:

clawteam spawn tmux claude --team seo-site --agent-name auditor \
  --task "Audit the website in output/. Verify: each page has a unique title, \
meta description, and H1; JSON-LD validates correctly; all internal links work; \
images have alt text; mobile viewport is set; no duplicate content exists. \
Output an audit_report.md and fix any issues found."

Monitor progress:

# Terminal kanban board
clawteam board show seo-site

# Or launch the web dashboard
clawteam board serve --port 8080
# Open http://localhost:8080 in your browser

Final Output Structure

output/
├── index.html       # Homepage
├── about.html       # About Us
├── services.html    # Products & Services
├── faq.html         # FAQ (core GEO page)
├── contact.html     # Contact
├── sitemap.xml      # Sitemap for search engines
├── robots.txt       # Crawler directives
└── assets/
    └── style.css    # Stylesheet

How ClawTeam Compares to Other Multi-Agent Frameworks

Dimension ClawTeam Other Frameworks
Who operates it The AI agents themselves Humans write orchestration code
Infrastructure needed File system + tmux Redis, message queues, databases
Agent compatibility Any CLI agent Usually framework-specific
Workspace isolation Git Worktree (real branches) Containers or virtual environments
Setup effort pip install + one prompt Docker + YAML + cloud configuration

Frequently Asked Questions

Do I need to know how to code to use ClawTeam?
The commands in this guide are copy-paste level. What matters more is understanding the overall workflow — you don’t need to read or write any code yourself.

How do agents share information with each other?
Primarily through shared JSON files on the filesystem. ClawTeam also has a built-in messaging system: clawteam inbox send. Each agent has a unique identity and can send messages directly to any other agent by name.

What happens if an agent fails midway?
You can restart individual agents without affecting work that’s already been completed. ClawTeam tracks task states — pending, in_progress, completed, and blocked — so you always know where things stand.

Will the generated website need manual editing?
The Auditor Agent automatically catches and fixes the most common issues. For specific requirements — brand colors, custom fonts, particular page layouts — specify them in the Frontend Agent’s task description upfront.

Does ClawTeam support languages other than English?
Yes. Change the language requirement in each agent’s task description and the framework handles the rest. There are no built-in language restrictions.

Can I use this workflow for other types of websites, not just company pages?
Absolutely. The same team structure works for landing pages, product pages, documentation sites, or any content that can be derived from structured source materials. Adjust the agent tasks to match what you’re building.


Final Thoughts

ClawTeam’s real value isn’t just “faster content generation.” It’s about breaking a complex, multi-person project into a set of parallel, automated tasks — and then getting out of the way.

For teams that regularly need to build company websites, landing pages, or content hubs from existing materials, this workflow pays dividends once it’s running smoothly. The initial setup on Windows is genuinely tedious, especially the WSL configuration and tmux trust issues. But those are one-time problems. Once the environment is stable, the day-to-day experience is clean.

If you run into issues along the way, ClawTeam’s GitHub Issues and Discussions pages are reasonably active. The troubleshooting section in this guide also covers the most common failure points based on real setup experience — not theoretical ones.

Exit mobile version