📝 Introduction
Enter a keyword to find blogger accounts on Douyin. Account name, follower count, total likes, following count, and number of works are clear at a glance. Click a link to jump to the homepage for details.
✨ Features
| Feature Module | Capability Description | Core Value |
|---|---|---|
| Keyword Search | Enter keywords to search Douyin blogger accounts | Precisely discover accounts in the target niche |
| Data Display | Display account name, follower count, total likes, following count, and number of works | Quickly assess account influence |
| Direct Homepage Access | Each result includes a clickable homepage link | One-click jump to view account details |
| Paginated Browsing | Multiple results per page, supports browsing across multiple pages | Never miss any account |
🎯 Target Users
- 🔍 Content Creators — Find bloggers in the same niche and study the content direction and operational approach of benchmark accounts.
- 📊 Operations / Data Analysis — Quickly identify which top accounts exist on Douyin for a certain category and grasp the competitive landscape.
- 🏢 Brands / MCN — Screen potential partner influencers, evaluate account value by follower count, and assist signing decisions.
- 🛒 E-commerce Product Selection — Search for sales influencers in niche segments and find matching promotion candidates.
🔑 Authentication
Get API Key
Please go to RedFox Hub to get the API KEY
Configure API Key
Option 1: Using OpenClaw as an example, add REDFOX_API_KEY to ~/.openclaw/openclaw.json :
{ "env": { "REDFOX_API_KEY": "ak_xxxx..." } }
Option 2: Terminal Configuration
export REDFOX_API_KEY="ak_xxxx..."
🔄 Workflow
Step 1: Understand user intent and extract keywords
⚠️ Core Rule: Semantic understanding takes priority; prioritize extracting niche direction words rather than generalized broad category words
1. Extract Keywords
- Extract 2–6 character niche keywords from the user's description
- Filter out redundant modifiers: When the user says "xx influencer", "xx blogger", "xx KOL", "xx internet celebrity", or "xx account", the search keyword should take only the core part xx, removing category modifiers such as "influencer", "blogger", "KOL", "internet celebrity", and "account" at the end. For example, "beauty influencer" → search "beauty", "fitness blogger" → search "fitness"
- If the user's intent is vague (e.g., "help me search Douyin bloggers"), proactively ask: "Which direction or field of Douyin accounts would you like to search for?"
- Do not guess and call the script without the user providing keywords
2. Identify Page Number Parameter(use the default value when the user does not specify)
- Page number(
--page): Default1- When the user mentions "next page" or "page 2" → corresponds to the page number
- User mentions "previous page" → current page - 1
- No page number mentioned →
1(default)
Step 2: Call the search script
python3 ~/.agents/skills/douyin-account-search/scripts/search_douyin_account.py "<关键词>" [--page 页码]
Parameter description:
| Parameter | Optional values | Meaning |
|---|---|---|
| keyword | Any string | Search keyword |
--page |
Positive integer | Page number, starting from 1 (default 1) |
The script outputs in JSON format:
| Field | Description |
|---|---|
accounts |
List of matched accounts (maintaining the original order of the interface) |
page |
Current page number |
has_next |
Whether there is a next page (true/false) |
total |
Number of records returned on the current page |
⚠️ Complete data reading rule: When the JSON data output by the script is large, the terminal may truncate the middle content and display // This is the omitted part. In this case, you must read the complete file path indicated in the Bash output (e.g., Full output saved to: /path/to/file), use the Read tool to obtain the complete JSON before generating the table, ensuring all field data is fully visible and no records are omitted.
Fields for each account:
| Field | Description |
|---|---|
nickname |
Account nickname |
account_id |
Douyin account ID |
follower_count |
Follower count |
like_count |
Total likes received |
follow_count |
Following count |
video_count |
Total number of works |
signature |
Account bio |
verified |
Whether verified |
profile_url |
Profile link |
Step 3: Determine the result and display it
Case A: accounts count > 0 (matching results found)
A1. Inform the user of the query scope
📊 Keyword "XXX" found NDouyin accounts (page {page}). The following is the detailed data:
A2. Render a Markdown table (display all)
| # | 账号名称 | 粉丝数 | 总获赞数 | 关注数 | 作品数 | 主页链接 |
| --- | ---------------- | ------- | -------- | ------ | ------ | --------------------------- |
| 1 | 赵露思 | 305.2w | 1.2亿 | 9 | 156 | [访问主页](profile_url) |
Number formatting rules:
< 10000: original number (e.g.,320)≥ 10000and< 1亿:x.xwformat (e.g.,1.2w、305.2w)≥ 1亿:x.x亿format (e.g.,1.2亿)
Nickname rule: Display in full, do not truncate
Profile link rule: Fixed display text [访问主页](profile_url), click to jump to the Douyin account profile
A3. Pagination prompt (⚠️ immediately after the table, cannot be omitted, must be output every time)
- If
has_nextis true:
📄 Currently page {page} . Reply "next page" to continue viewing.
- If
has_nextis false (already the last page):
📄 Currently page {page} , no more data.
"Next page" call rule when paginating: If the user replies "next page", increment the page number when calling the script:
python3 ~/.agents/skills/douyin-account-search/scripts/search_douyin_account.py "<关键词>" --page {page+1}
⚠️ A1~A3 are all indispensable and must be completed consecutively in the same output round. If A3 is missing, it is considered an execution error and the output must be supplemented again.
Case B: accounts count = 0 (no matching results)
B1. Apology prompt
😔 Sorry, no Douyin accounts directly related to "XXX" were found.
⚠️ B1 must be completed in the same output round and must not be interrupted.
Step 4: End output
After all content has been displayed, do not wait and immediately end the output.