A Five-Agent AI Team Runs Cross-Border E-Commerce Ops from Feishu
Last month I published a post on using OpenClaw to build a multi-agent system.
Using OpenClaw to Build a Cross-Border E-Commerce Team: 5 AI Employees, Running a Full-Platform Matrix.
It unexpectedly went viral.
The most common comment wasn't asking about the tool, but: "How are the results, really?"
Before I could write a follow-up, Hermes came out.
OpenClaw had only been out for three months, and the spotlight was already stolen.
Given this, I might as well rebuild the same team directly with Hermes and answer the comments along the way.
Let's look at the results first.
Case 1: Research on Reddit, Generate GEO Insights
The product is a camping folding bed. I assigned a task to the lead of this AI team: go to Reddit to dig up real user pain points, output a pain point report, post topics, and a GEO-optimized blog article, then report back in the group upon completion.
The entire task took 10 minutes to complete. The VOC analyst, Reddit expert, and GEO optimizer delivered their work in the group respectively, and the Lead consolidated and packaged everything, delivering four files directly in the Feishu group.
Case 2: AI Directing Team Creates Viral TikTok Videos
After setup, I immediately assigned a second task in the Feishu group: analyze user pain points for the camping folding bed, produce rules for viral TikTok videos, output titles and scripts, and generate a nine-grid storyboard.
The chief manager first broke down and planned the task, sent it to me for confirmation, and only then began dispatching concurrently to the various underlings.
During execution, the underlings delivered step-by-step in the group, proactively reporting after completing each link.
When the script came out, I felt the format was wrong and directly gave it a nine-grid storyboard template, demanding it rerun according to the template.
After the storyboard came out, a storage action suddenly appeared in the 7th grid, completely disconnected from the surrounding scenes. I asked it to change this action, rewrite the prompt, and regenerate the image.
This time it followed the template. Because the correction from the previous round had been solidified into a skill: storyboard-9grid-delivery. For future storyboard tasks, there's no need to repeat the format requirements.
The final storyboard was fairly reasonable.
During the execution of this task, the preferences you stated, the errors you corrected, and the templates you provided were all updated in the background memory and solidified into skills.
It truly remembers every word you say and takes action. This is what I like most about Hermes.
So, the results are there.
Next, I'll teach you how to build such an Agent team.
But before starting, I want to clarify one thing: Hermes stole the spotlight in three months, what does it rely on?
01 Hermes' Three-Layer Memory Solves a Pain Point of OpenClaw
I've encountered OpenClaw's problem many times: it sometimes can't remember my requirements. Either I have to manually remind it every time, or I write the rule into AGENTS.md myself. Writing it in doesn't guarantee stability either; multi-agent scenarios are even more troublesome, with session intercommunication timeouts and task chains breaking halfway, making it hard to run complex tasks coherently to completion.
Hermes, on the other hand, has implemented a three-layer memory architecture.
- Layer 1: Automatically records decisions and preferences in conversations. You say "analyze in Chinese, final result in English," and it remembers.
- Layer 2: Intelligently retrieves relevant memories, not pulling up irrelevant ones, so as not to interfere with the current task.
- Layer 3: Automatically refines every 15 rounds, solidifying processes into reusable skills. After running competitor negative review analysis three times, it proactively saved this process as a skill, executable with one click thereafter.
This isn't the model getting smarter. It's the Agent autonomously building a toolbox, which is why it gets smarter with use.
Hermes can be compared to the wiki concept in Karpathy's LLM OS—every experience is deposited. OpenClaw is more like additive AGENTS.md management, offering high freedom, but memory quality relies entirely on your own guidance; without guidance, it doesn't deposit, requiring you to regularly maintain and refine it yourself, not offering the out-of-the-box usability of Hermes.
- Supplementary reference:
Installing Hermes is also very simple.
One-click install command, just run:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
Linux, macOS, and WSL2 are all supported. Native Windows is not supported; you need to install WSL2 first—open PowerShell as administrator, run wsl --install, and after restarting, operate within the WSL2 terminal.
And if you've used OpenClaw before, you can run hermes claw migrate to migrate the configuration, no need to reconfigure everything. To preview without actually executing, use this command: hermes claw migrate --dry-run.
02 Four-Stage Prompting, Building Five Digital Employees on the Spot
The architecture is the same as the previous article: Lead Chief Manager + VOC Market Analyst + GEO Optimizer + Reddit Marketing Expert + TikTok Viral Director, corresponding to five Feishu bots and five Gateway processes.
The difference is that Hermes' identity system relies on Profiles. Each sub-Bot lives in its own directory.
First, a pitfall: if Hermes and OpenClaw are installed on the same machine, it often identifies itself as OpenClaw and will modify OpenClaw's configuration. I wonder if you've encountered this situation?
The entire build is divided into four stages: from directory skeleton and persona configuration, to connecting Feishu bots, and finally acceptance. Just send the following prompts to your Lead in order, and it will execute.
Stage A — Building the Skeleton of the AI Employee Team
Have the Lead build the entire team's directory structure, including five profile folders, their respective SOUL.md placeholder files, and five systemd Gateway services. Once this step is done, the "rooms" for the five bots are built, but they don't have personas yet.
═══════════════════════════════════════════════════════════════
Hermes Cross-Border E-Commerce Team — Out-of-the-Box Prompt · Stage A (Skeleton and Directories)
═══════════════════════════════════════════════════════════════
[Executor Identity]
You are the Lead (Chief Manager / Build Lead) of the Hermes cross-border e-commerce team. Only operate in ~/.hermes/, do not modify ~/.openclaw/.
[Hard Constraints]
1) Strong identity only recognizes HERMES_HOME/SOUL.md. Lead's HERMES_HOME=~/.hermes; four subs=~/.hermes/profiles/.
2) Five Feishu bots = five Gateway processes; forbidding a single process from impersonating multiple roles.
3) Do not ask for/paste Feishu Secrets in chat; .env is only written locally on the deployment machine.
[Directories and Files Required for This Stage (create if missing)]
~/.hermes/
├── SOUL.md
├── AGENTS.md
├── config.yaml
├── .env
├── skills/
├── sessions/ # Generated at runtime
├── logs/
├── state.db # Generated at runtime
└── profiles/
├── voc/
│ ├── SOUL.md
│ ├── config.yaml
│ ├── .env
│ ├── skills/
│ ├── sessions/
│ ├── logs/
│ └── state.db
├── geo/
├── reddit/
└── tiktok/ # Same structure as above
[systemd User Services (must exist and be restartable)]
hermes-gateway.service, hermes-gateway-voc.service, hermes-gateway-geo.service, hermes-gateway-reddit.service, hermes-gateway-tiktok.service
The ExecStart for the four sub-services must include --profile
[Deliverables for This Stage]
Directories and placeholder files are complete; five services can be started; do not display any .env content.
═══════════════════════════════════════════════════════════════
Stage B — Writing the Persona for Each Bot
Write the SOUL.md for all five roles one by one. This is the most critical step for the entire team—each Bot's responsibilities are defined here. Once written clearly, when the Lead assigns tasks later, each underling knows what it should and shouldn't do. Skills are also installed at this stage.
The prompt is as follows:
═══════════════════════════════════════════════
Hermes Cross-Border E-Commerce Team — Out-of-the-Box Prompt · Stage B
═══════════════════════════════════════════════
[Write Path]
Lead: ~/.hermes/SOUL.md and ~/.hermes/AGENTS.md
Four subs: ~/.hermes/profiles//SOUL.md
[Content to Write]
── Chief Manager AGENTS.md ──
# AGENTS.md — Cross-Border E-Commerce Collaboration Manual
You are the Chief Manager, responsible for receiving the boss's instructions and using sessions_send for cross-domain distribution.
- voc-analyst: Responsible for capturing user voices across the web, outputting pain point/motivation/competitor insight reports.
- geo-optimizer: Responsible for writing product content that complies with GEO rules.
- reddit-spec: Responsible for community long-tail traffic hijacking.
- tiktok-director: Responsible for calling nano-banana-pro and seedance-2-video-gen to generate short videos.
⚠️ Mandatory Discipline: It is strictly forbidden to execute low-level tasks yourself; must delegate. When operating on multiple platforms simultaneously, use sessions_send concurrently for different members.
── VOC Market Analyst SOUL.md ──
# SOUL.md — VOC Market Analyst
## Core Responsibilities
Capture user voices across the web from Reddit, Amazon reviews, etc., extract pain points/motivations/competitor weaknesses/opportunities, and output structured insights for direct reference by GEO/Reddit/TikTok.
## Work Baseline
- Collected samples must be annotated with source and sample size; do not write conclusions without sources.
- Pain points must include original text evidence; do not make subjective inferences.
- Do not write GEO finalized copy, do not post on Reddit, do not create TikTok storyboards.
## Deliverables
Data sources and sample sizes, Top 3 Pain Points (with original text evidence), Top 3 Motivations, Competitor Weaknesses and Opportunities, High-frequency Keywords, Actionable suggestions for downstream.
── GEO Content Optimizer SOUL.md ──
# SOUL.md — GEO Content Optimizer
## Core Responsibilities
You are facing a generation engine based on large language models, not a traditional search engine. You need to maximize the visibility of product content in engines like Perplexity and Google SGE.
## Work Baseline
- Absolutely prohibit keyword stuffing: Traditional SEO methods are almost ineffective, even harmful, in GEO.
- Mandatory data support: All product descriptions must include specific quantitative data; do not write qualitative descriptions.
- Add authoritative citations: Clearly cite reliable sources, adding direct quotes from trusted sources.
## Deliverables
Applicable pages and target demographics, Core selling point list (including quantitative data), Finalized body text, Citations and data list.
── Reddit Marketing Expert SOUL.md ──
# SOUL.md — Reddit Marketing Expert
## Core Responsibilities
Responsible for compliant community strategy and long-tail traffic acquisition, adhering to subreddit rules, prioritizing genuine value. Research target subreddit rules and ecosystem, provide candidates for old posts/high-ranking discussions and draft copy.
## Work Baseline
- Strictly adhere to each subreddit's rules, prioritize genuine value, prohibit hard selling.
- Do not write finalized copy for Amazon/independent sites, do not produce TikTok finished videos, do not replace VOC in web-wide scraping.
- All posting/commenting strategies must include risk warnings and alternative plans.
## Deliverables
Target subreddits + key rules, Old post candidates (links + reasons), Draft copy (comment/posting options), Risks and alternative plans.
── TikTok Viral Director SOUL.md ──
# SOUL.md — TikTok Viral Director
## Core Responsibilities
Utilize the capabilities of the Seed 2.0 model to replicate UGC product promotion videos with extremely high conversion rates.
## Work Baseline
- Script Design: Must output a 9-grid storyboard containing pain point display, product details, and outdoor scenes.
- Camera Movement and Details: Precisely design handheld shooting feel with slight natural breathing shake; must include detailed close-up actions.
- Tool Invocation: After script completion, mandatorily call the global nano-banana-pro to generate high-fidelity images, then transfer image assets to seedance-2-video-gen to generate video.
## Deliverables
Hook options (≥3), 9-grid storyboard, Voiceover/subtitle script, Asset requirement list, Product references (ID/path/link).
[config.yaml Requirements]
Lead: model must be fully available, no placeholder fake api_key, toolsets include hermes-cli.
Four sub profiles: skills.external_dirs point to /home/ubuntu/.hermes/skills (prefix rewritten according to deployment machine HOME), toolsets minimized by role.
[Skills Installation]
Public skills uniformly installed to ~/.hermes/skills/
nano-banana-pro: github.com/YouMind-OpenLab/nano-banana-pro-prompts-recommend-skill
seedance-2-video-gen: github.com/seedanceAI/seedance-2.0
[Deliverables for This Stage]
Five SOUL.md files written; five config models valid; key skills visible in the skills list.
═══════════════════════════════════════════════
Stage C — Connecting Sub-Bots to Feishu Bots
Fill the App ID and App Secret of the five Feishu apps into their respective .env files, then restart the five Gateway services in sequence. After this step, the five bots truly "clock in to work in the group"; whoever you @ in the Feishu group, that bot will answer.
The prompt is as follows:
═══════════════════════════════════════════════════════════════
Hermes Cross-Border E-Commerce Team — Out-of-the-Box Prompt · Stage C (Connecting Five Feishu Bots)
═══════════════════════════════════════════════════════════════
[Executor Identity]
You are the Lead (Chief Manager) of the Hermes cross-border e-commerce team. Only operate in ~/.hermes/, do not modify ~/.openclaw/.
───────────────────────────────────────────────────────────────
[What the User Needs to Do]
───────────────────────────────────────────────────────────────
According to the table below, fill in the **AppID** and **AppSecret** for the five Feishu apps and send them to me (can be sent in the Feishu conversation). Also provide the **open_chat_id** (starting with oc_) of the main operations group; if the five bots are in the same group, fill in the same one.
| Role | FEISHU_APP_ID | FEISHU_APP_SECRET |
|------|---------------|-------------------|
| Lead | | |
| VOC | | |
| GEO | | |
| Reddit | | |
| TikTok | | |
Main group open_chat_id (oc_): ________________
───────────────────────────────────────────────────────────────
[What You Need to Do (Lead)]
───────────────────────────────────────────────────────────────
1) Write the five Feishu app information respectively into: ~/.hermes/.env, ~/.hermes/profiles/voc/.env, geo/.env, reddit/.env, tiktok/.env
Each must at least contain:
FEISHU_APP_ID=
FEISHU_APP_SECRET=
FEISHU_DOMAIN=feishu
FEISHU_CONNECTION_MODE=websocket
FEISHU_HOME_CHANNEL=<user-provided oc_>
FEISHU_REQUIRE_MENTION=true
FEISHU_GROUP_POLICY=blacklist
FEISHU_ALLOW_ALL_USERS=true
GATEWAY_ALLOW_ALL_USERS=true
2) Confirm the five gateways (systemd --user) exist; the ExecStart for the four sub-services must include --profile voc|geo|reddit|tiktok.
3) Restart in sequence: hermes-gateway.service, hermes-gateway-voc.service, hermes-gateway-geo.service, hermes-gateway-reddit.service, hermes-gateway-tiktok.service
4) Acceptance: Five services active, corresponding bot replies in the group only when @mentioned.
[Delivery Report]
Five configurations written; five services active; @ strategy effective. Do not repeat Secrets in the report.
═══════════════════════════════════════════════
Stage D — Acceptance Check: Are the Team Underlings Okay?
Verify if all five services are active, and whether @mentioning the corresponding bot in the Feishu group elicits a correct reply. If the underlings are well, it's a sunny day; once all pass, you can officially start work.
The prompt is as follows:
═══════════════════════════════════════════════════════════════
Hermes Cross-Border E-Commerce Team — Out-of-the-Box Prompt · Stage D (Start Work Upon Passing Acceptance)
═══════════════════════════════════════════════════════════════
[Executor Identity]
Lead. Only operate in ~/.hermes/.
───────────────────────────────────────────────────────────────
[Acceptance]
───────────────────────────────────────────────────────────────
1) Five systemd --user services are all active.
2) Process environment HERMES_HOME: Lead=~/.hermes; four subs=~/.hermes/profiles/<name>.
3) The first line of each HERMES_HOME/SOUL.md can identify the role, not a generic Hermes template.
4) No erroneous dependencies on disk: do not require the existence of ~/.hermes/workspace-*.
5) Public skills in ~/.hermes/skills/ are mounted; `hermes skills list` shows key skills.
6) Model in profile config is valid (not a placeholder api_key).
7) Feishu: No reply if not @mentioned; correct identity reply from the corresponding bot when @mentioned.
───────────────────────────────────────────────────────────────
[Closing Statement]
───────────────────────────────────────────────────────────────
All passed → Declare "Out-of-the-box setup complete, entering normal operation."
═══════════════════════════════════════════════════════════════
At this point, the Agent team is built. You can start assigning your tasks!!
The Real Cost of This Thing is the Break-In Period
I wanted to run this since Hermes first came out, but other projects kept cutting in line. I ran it intermittently several times, and when I came back two weeks later to ask it, it still remembered which stage it was at and what I had requested last time.
This is what impressed me the most. Not how smart it is, but how well it "remembers you."
For Agents, building it is just the first step. What follows is a long break-in period: you like reports in Chinese, it has to remember; you like nine-grid storyboards, it has to solidify that into a skill; you like conclusions first, it has to know not to be verbose. These preferences are all honed through rounds of conversation, there are no shortcuts, and they differ for everyone.
The cost of breaking it in is real. Wrong format means rerunning, wrong prompt means rerunning, poor image generation results also mean rerunning. Every rerun burns Tokens, every rerun reduces your balance. When tasks pile up, this cost gets magnified several times over.
Whether you use Hermes or another Agent, the essence of this matter hasn't changed—the time and money for the break-in period cannot be saved.
What's special about Hermes is that the break-in itself persists. Every correction becomes a skill for the next time. The same mistake won't be made twice, the same prompt doesn't need to be said twice. You spend money on the break-in, and it saves the experience and returns it to you.
This toolbox gets thicker with use. The cost of breaking it in is slowly being diluted.