botseeMonitor your brand's AI visibility via BotSee API
Install via ClawdBot CLI:
clawdbot install grahac/botseeMonitor your brand's AI visibility (AI SEO/GEO) across ChatGPT, Claude, Perplexity, and Gemini. Provided by botsee.io, the AI Visibility tool for Claude Code and agents.
Commands:
Workflow:
Sites:
Customer Types:
Personas:
Questions:
Results:
When user invokes a BotSee command, run the corresponding Python script. All commands use a single bundled script that handles API calls internally.
python3 ~/.claude/skills/botsee/scripts/botsee.py status
New user signup flow (credit card):
Step 1: Get signup URL
python3 ~/.claude/skills/botsee/scripts/botsee.py signup
This displays a signup URL. Tell the user: "Visit this URL to complete signup and get your API key. Then paste your API key here."
Step 2: User pastes API key in conversation
When the user provides their API key (e.g., "Here's my API key: bts_live_abc123"), extract it and save it:
python3 ~/.claude/skills/botsee/scripts/botsee.py signup --api-key <extracted-key>
IMPORTANT: Agent behavior when user pastes API key
When you detect a BotSee API key in the conversation (format: bts_live_ or bts_test_):
signup --api-key to save itUSDC signup flow (x402 on Base):
Step 1 ā Ask the user before calling the API
When signup-usdc is invoked without already knowing the user's preference, ask:
"Do you want to associate an email with this account?
- Yes (email) ā You'll get a setup link to verify your email and access the dashboard later
- No (API only) ā Skip email entirely and go straight to payment"
Step 2a ā Email path
Call:
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-usdc
(no --no-email flag)
The response includes a setup_url. Tell the user:
"Visit this URL to enter and verify your email and read the setup instructions:
>
Once you've done that, come back here and we'll complete the USDC payment."
Do NOT call signup-pay-usdc yet. Wait for the user to confirm they've completed the setup URL step.
Step 2b ā No-email path
Call:
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-usdc --no-email
No setup URL will be returned. Immediately proceed to payment.
Step 3 ā Payment (both paths)
After the email-path user confirms they visited the setup URL (or immediately for no-email path):
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-pay-usdc --amount-cents 250
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-status
x402 flow details:
signup-usdc creates a USDC signup token via POST /api/v1/signup/usdcsignup-pay-usdc --amount-cents N calls POST /api/v1/signup/:token/pay-usdc without a payment header ā server returns 402 with payment requirements (network, amount, payTo address)signup-pay-usdc --amount-cents N --payment signup-status polls until complete and saves the API key# Step 1: Get 402 challenge (no --payment ā returns payment requirements)
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-pay-usdc --amount-cents 250
# Step 2: Retry with proof after wallet pays
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-pay-usdc --amount-cents 250 --payment <proof>
Omit --payment to get a 402 challenge with network, amount, and payTo address.
Include --payment on the final retry after your wallet has made the payment.
python3 ~/.claude/skills/botsee/scripts/botsee.py signup-status
Saves API key to ~/.botsee/config.json automatically once signup is completed.
# Step 1: Get 402 challenge (no --payment ā returns payment requirements)
python3 ~/.claude/skills/botsee/scripts/botsee.py topup-usdc --amount-cents 5000
# Step 2: Retry with proof after wallet pays
python3 ~/.claude/skills/botsee/scripts/botsee.py topup-usdc --amount-cents 5000 --payment <proof>
Omit --payment to get a 402 challenge with network, amount, and payTo address.
Include --payment on the final retry after your wallet has made the payment.
Requires: API key from /botsee signup
python3 ~/.claude/skills/botsee/scripts/botsee.py create-site <domain>
Optional parameters:
--types (default: 2, range: 1-3)--personas (default: 2, range: 1-3)--questions (default: 5, range: 3-10)What happens:
Customize generation counts:
python3 ~/.claude/skills/botsee/scripts/botsee.py create-site <domain> --types 3 --personas 2 --questions 10
python3 ~/.claude/skills/botsee/scripts/botsee.py config-show
python3 ~/.claude/skills/botsee/scripts/botsee.py analyze
Starts analysis, polls until complete, then displays competitors, keywords, and sources.
python3 ~/.claude/skills/botsee/scripts/botsee.py content
Generates blog post from latest analysis. Auto-saves to botsee-YYYYMMDD-HHMMSS.md.
python3 ~/.claude/skills/botsee/scripts/botsee.py list-sites
python3 ~/.claude/skills/botsee/scripts/botsee.py get-site [uuid]
If uuid is omitted, uses the site from ~/.botsee/config.json.
python3 ~/.claude/skills/botsee/scripts/botsee.py create-site <domain>
python3 ~/.claude/skills/botsee/scripts/botsee.py archive-site [uuid]
python3 ~/.claude/skills/botsee/scripts/botsee.py list-types
python3 ~/.claude/skills/botsee/scripts/botsee.py get-type <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py create-type "Enterprise Buyers" "Large companies seeking solutions"
python3 ~/.claude/skills/botsee/scripts/botsee.py generate-types 3
Defaults to 2 if count is omitted.
python3 ~/.claude/skills/botsee/scripts/botsee.py update-type <uuid> --name "New Name" --description "New description"
python3 ~/.claude/skills/botsee/scripts/botsee.py archive-type <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py list-personas
python3 ~/.claude/skills/botsee/scripts/botsee.py list-personas <type_uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py get-persona <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py create-persona <type_uuid> "Sarah Chen" "VP of Marketing at mid-sized SaaS company"
python3 ~/.claude/skills/botsee/scripts/botsee.py generate-personas <type_uuid> 3
Defaults to 2 if count is omitted.
python3 ~/.claude/skills/botsee/scripts/botsee.py update-persona <uuid> --name "New Name" --description "New description"
python3 ~/.claude/skills/botsee/scripts/botsee.py archive-persona <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py list-questions
python3 ~/.claude/skills/botsee/scripts/botsee.py list-questions <persona_uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py get-question <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py create-question <persona_uuid> "What are the best email marketing tools?"
python3 ~/.claude/skills/botsee/scripts/botsee.py generate-questions <persona_uuid> 5
Defaults to 5 if count is omitted.
python3 ~/.claude/skills/botsee/scripts/botsee.py update-question <uuid> "What are the best affordable email marketing tools?"
python3 ~/.claude/skills/botsee/scripts/botsee.py delete-question <uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py results-competitors <analysis_uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py results-keywords <analysis_uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py results-sources <analysis_uuid>
python3 ~/.claude/skills/botsee/scripts/botsee.py results-responses <analysis_uuid>
Getting the Analysis UUID:
The analysis UUID is displayed when you run /botsee analyze:
š Analysis started: abc-def-123
Copy the UUID and use it with the results commands to view detailed analysis data.
This skill is designed for non-interactive agent usage. All commands accept arguments via command-line flags - no prompts or user input required.
1. Signup Flow Requires Human Intervention
For new users without an API key, the signup command creates a signup token and displays a URL:
/botsee signup
# Outputs signup URL for browser completion
Agents should:
--api-key flag if API key is available2. Async Operations with Polling
Two commands can involve waiting/polling:
/botsee signup-status (checks signup completion)/botsee analyze: up to 10 minute timeoutCommands will block until complete or timeout. No intermediate progress updates.
3. Analysis Discovery
To view detailed results after analysis:
/botsee analyze and capture the analysis UUID from output/botsee results-* commandsRecommended pattern:
# Run analysis
output=$(/botsee analyze)
# Extract UUID (line containing "Analysis started:")
uuid=$(echo "$output" | grep "Analysis started:" | awk '{print $NF}')
# View results
/botsee results-competitors "$uuid"
4. Configuration Files
Two config files exist:
~/.botsee/config.json (API key + site UUID).context/botsee-config.json (generation defaults, optional)Agents can discover state via:
/botsee - Shows account status/botsee config-show - Shows workspace config5. Credit Costs
All operations that consume credits display remaining balance. Agents should:
/botsee command)Costs:
6. Error Handling
All errors exit with code 1 and print to stderr. Error messages include:
7. Idempotency
8. Output Format
# 1. Check status (discover state)
/botsee
# 2. Save API key if provided by user
/botsee signup --api-key bts_live_abc123
# 3. Create a site
/botsee create-site https://example.com
# 4. Run analysis (captures UUID)
analysis_output=$(/botsee analyze)
uuid=$(echo "$analysis_output" | grep -oP '(?<=Analysis started: )\S+')
# 5. View results
/botsee results-competitors "$uuid"
# 6. Generate content
/botsee content
# 7. Check final balance
/botsee
Generated Feb 23, 2026
A marketing agency uses BotSee to monitor AI visibility for multiple client websites across ChatGPT, Claude, Perplexity, and Gemini. They create custom sites for each client, analyze competitive landscapes, and generate blog content to improve AI SEO and track keyword performance.
An online retailer leverages BotSee to ensure their products appear in AI-generated responses on platforms like ChatGPT and Gemini. They set up personas for target customers, generate relevant questions, and analyze results to optimize product descriptions and marketing strategies for AI-driven search.
A software-as-a-service company uses BotSee to track their brand's AI visibility among competitors. They create customer types and personas to understand user queries, run competitive analyses, and use keyword results to refine their messaging and content for AI platforms.
An individual content creator employs BotSee to monitor their personal brand's presence in AI responses. They set up a site for their domain, generate questions based on their niche, and analyze AI responses to tailor content that enhances visibility and engagement on AI platforms.
A consulting firm uses BotSee to analyze AI visibility for their industry expertise and client projects. They create sites for key domains, list and generate customer types to model client segments, and run analyses to produce reports and strategic insights for AI SEO optimization.
BotSee operates as a SaaS platform where users pay recurring fees for access to AI visibility monitoring, analysis tools, and content generation. Revenue is generated through tiered subscription plans, with options for credit card or USDC payments via the signup and top-up commands.
The skill offers basic monitoring and analysis for free, with advanced features like detailed competitive analysis, persona generation, and content creation locked behind paid plans. This model encourages user adoption and upsells to premium tiers for enhanced functionality.
BotSee targets larger organizations with custom enterprise packages that include dedicated support, API integrations, and bulk site management. Revenue comes from annual contracts tailored to specific business needs, such as multi-site monitoring and in-depth reporting.
š¬ Integration Tip
Ensure users have Python 3 installed and network access for API calls; automate API key detection to streamline signup and reduce manual steps.
Marketing Mode combines 23 comprehensive marketing skills covering strategy, psychology, content, SEO, conversion optimization, and paid growth. Use when users need marketing strategy, copywriting, SEO help, conversion optimization, paid advertising, or any marketing tactic.
Access 23 marketing modules offering checklists, frameworks, and ready-to-use deliverables for CRO, SEO, copywriting, analytics, launches, ads, and social me...
SEO specialist agent with site audits, content writing, keyword research, technical fixes, link building, and ranking strategies.
Perform deep SEO competitor analysis, including keyword research, backlink checking, and content strategy mapping. Use when the user wants to analyze a website's competitors or improve their own SEO ranking by studying the competition.
Query Google Search Console for SEO data - search queries, top pages, CTR opportunities, URL inspection, and sitemaps. Use when analyzing search performance,...
Run local SEO autopilot for boll-koll.se or hyresbyte.se and return PR link plus summary.