技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
monid【数据与研究】How to use the Monid CLI to execute data scraping and collection tasks from social media platforms, e-commerce sites, and search engines. Use this skill when the user needs to scrape data from Twitter/X, Instagram, TikTok, Facebook, LinkedIn, YouTube, Amazon, or Google Maps. This skill provides complete workflow guidance for authentication, task crea…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Monid is an agentic payment platform CLI that enables secure, pay-per-use data scraping from various platforms. This skill teaches you how to help users accomplish data collection tasks using the Monid CLI.
Monid follows a quote-then-execute workflow:
Before using Monid for data scraping, the user must complete these one-time setup steps:
Quick Install (Recommended):
curl -fsSL https://raw.githubusercontent.com/FeiyouG/monid-client/main/install.sh | bash
This downloads and installs the latest stable Monid CLI to ~/.local/bin/monid.
Verify installation:
monid --version
Expected output: monid v1.0.0 (or later version)
Supported platforms: Linux x64, macOS ARM64 (Apple Silicon), Windows x64
Troubleshooting:
monid: command not found after installation, restart your terminal or run source ~/.bashrc (or ~/.zshrc for zsh)~/.local/bin is in your PATHmonid auth login
What happens:
~/.monid/config.yamlIf browser doesn't open: Copy the URL from the terminal and paste it into your browser manually.
Verify authentication:
monid auth whoami
Expected output shows your workspace and user email.
monid keys generate --label main
What happens:
~/.monid/keys/Verify key:
monid keys list
Expected output shows your key marked with * (active).
After these three steps, you're ready to execute searches. If the user hasn't completed these steps, guide them through installation, authentication, and key generation first before attempting any searches.
Monid can ONLY scrape data from these platforms and capabilities. NEVER suggest capabilities outside this list:
apify#apidojo/tweet-scraper)
Instagram Scraper (apify#apify/instagram-scraper)
Instagram Profile Scraper (apify#apify/instagram-profile-scraper)
Instagram API Scraper (apify#apify/instagram-api-scraper)
Instagram Hashtag Scraper (apify#apify/instagram-hashtag-scraper)
Instagram Post Scraper (apify#apify/instagram-post-scraper)
TikTok API Scraper (apify#scraptik/tiktok-api)
TikTok Profile Scraper (apify#apidojo/tiktok-profile-scraper)
TikTok Scraper (apify#apidojo/tiktok-scraper)
TikTok Post Scraper (apify#thenetaji/tiktok-post-scraper)
TikTok Video Scraper (apify#clockworks/tiktok-video-scraper)
LinkedIn Post Search (apify#harvestapi/linkedin-post-search)
LinkedIn Profile Search (apify#harvestapi/linkedin-profile-search)
LinkedIn Job Search (apify#powerai/linkedin-job-search-scraper)
LinkedIn Company Search (apify#powerai/linkedin-company-search-scraper)
YouTube Scraper (apify#streamers/youtube-scraper)
YouTube Comments Scraper (apify#streamers/youtube-comments-scraper)
YouTube Scraper (API Dojo) (apify#apidojo/youtube-scraper)
YouTube Video Transcript (apify#starvibe/youtube-video-transcript)
Facebook Reviews Scraper (apify#apify/facebook-reviews-scraper)
Facebook Events Scraper (apify#apify/facebook-events-scraper)
Facebook Marketplace Scraper (apify#curious_coder/facebook-marketplace)
Facebook Pages Scraper (apify#apify/facebook-pages-scraper)
Facebook Groups Scraper (apify#apify/facebook-groups-scraper)
Facebook Comments Scraper (apify#apify/facebook-comments-scraper)
Facebook Ads Library Scraper (apify#curious_coder/facebook-ads-library-scraper)
Amazon Product Scraper (apify#delicious_zebu/amazon-product-scraper)
Amazon Reviews Scraper (apify#axesso_data/amazon-reviews-scraper)
Amazon Search Scraper (apify#axesso_data/amazon-search-scraper)
apify#damilo/google-maps-scraper)
If the user is new to Monid, guide them through complete setup:
# 1. Install CLI
curl -fsSL https://raw.githubusercontent.com/FeiyouG/monid-client/main/install.sh | bash
# 2. Verify installation
monid --version
# 3. Authenticate via OAuth (browser will open)
monid auth login
# 4. Generate and register API key
monid keys generate --label main
# 5. Verify everything is ready
monid auth whoami
If already set up, skip to Step 2.
A task defines:
The simplest approach combines task creation, quote, and execution:
# Quick execution with natural language query
monid search \
--name "Twitter Sentiment Analysis" \
--query "Find the most recent tweets related to Elon Musk from the past 7 days" \
--output-schema '{
"type": "object",
"properties": {
"tweets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {"type": "string"},
"author": {"type": "string"},
"timestamp": {"type": "string"},
"likes": {"type": "number"},
"retweets": {"type": "number"}
}
}
}
}
}' \
--wait \
--output results.json
Flags explained:
--name: Human-readable task name--query: Natural language query describing the task--output-schema: JSON schema (inline JSON or file path)--wait: Poll until completion (optional: --wait 300 for 5-min timeout)--output: Save results to file--yes or -y: Skip price confirmationFor repeated use, create a task first:
# Create a reusable task
monid tasks create \
--title "Elon Musk Twitter Monitor" \
--description "Track Elon Musk mentions on Twitter" \
--input-schema '{
"type": "object",
"properties": {
"keywords": {"type": "string"},
"days": {"type": "number"}
},
"required": ["keywords"]
}' \
--output-schema '{
"type": "object",
"properties": {
"tweets": {"type": "array"}
}
}' \
--capabilities '[{
"capabilityId": "apify#apidojo/tweet-scraper",
"prepareInput": {}
}]'
# List all tasks
monid tasks list
# Get quote for a task
monid quotes create <task-id> --input '{"keywords": "Elon Musk", "days": 7}'
# Execute with quote
monid search --quote-id <quote-id> --wait --output results.json
# Or execute with task ID directly
monid search --task-id <task-id> --wait --output results.json
# Check execution status
monid executions get --execution-id <execution-id>
# Wait for completion and save results
monid executions get --execution-id <execution-id> --wait --output results.json
# List all executions
monid executions list
User request: "I want to scrape tweets about AI but I've never used Monid before"
Complete workflow:
# Step 1: Install Monid CLI
curl -fsSL https://raw.githubusercontent.com/FeiyouG/monid-client/main/install.sh | bash
# Step 2: Verify installation
monid --version
# Step 3: Authenticate (browser will open)
monid auth login
# Step 4: Generate API key
monid keys generate --label main
# Step 5: Execute your first search
monid search \
--name "AI Tweets" \
--query "Find the 50 most recent tweets about artificial intelligence from the past week" \
--output-schema '{
"type": "object",
"properties": {
"tweets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {"type": "string"},
"author": {"type": "string"},
"created_at": {"type": "string"},
"likes": {"type": "number"},
"retweets": {"type": "number"}
}
}
}
}
}' \
--wait \
--output ai_tweets.json
Estimated time: 3-5 minutes for complete setup and first search.
User request: "Find the most recent tweets related to Elon Musk"
Solution (assumes Monid is already installed and authenticated):
monid search \
--name "Elon Musk Tweets" \
--query "Find the 50 most recent tweets mentioning 'Elon Musk' from the past 3 days" \
--output-schema '{
"type": "object",
"properties": {
"tweets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {"type": "string"},
"author": {"type": "string"},
"created_at": {"type": "string"},
"likes": {"type": "number"},
"retweets": {"type": "number"},
"url": {"type": "string"}
}
}
}
}
}' \
--wait \
--output elon_tweets.json
User request: "Get Instagram posts with hashtag #ai"
Solution:
monid search \
--name "AI Hashtag Instagram" \
--query "Scrape the top 100 Instagram posts with hashtag #ai, including engagement metrics" \
--output-schema '{
"type": "object",
"properties": {
"posts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"caption": {"type": "string"},
"author": {"type": "string"},
"likes": {"type": "number"},
"comments": {"type": "number"},
"timestamp": {"type": "string"},
"image_url": {"type": "string"}
}
}
}
}
}' \
--wait \
--output ai_instagram.json
User request: "Get reviews for a specific Amazon product"
Solution:
monid search \
--name "Product Reviews" \
--query "Scrape all customer reviews for the Amazon product at URL https://amazon.com/dp/B0123456, including ratings, review text, and reviewer names" \
--output-schema '{
"type": "object",
"properties": {
"reviews": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rating": {"type": "number"},
"title": {"type": "string"},
"text": {"type": "string"},
"reviewer": {"type": "string"},
"date": {"type": "string"},
"verified_purchase": {"type": "boolean"}
}
}
}
}
}' \
--wait \
--output product_reviews.json
User request: "Find machine learning jobs in San Francisco"
Solution:
monid search \
--name "ML Jobs SF" \
--query "Find machine learning engineer job postings in San Francisco area on LinkedIn from the past 2 weeks" \
--output-schema '{
"type": "object",
"properties": {
"jobs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {"type": "string"},
"company": {"type": "string"},
"location": {"type": "string"},
"description": {"type": "string"},
"posted_date": {"type": "string"},
"job_url": {"type": "string"}
}
}
}
}
}' \
--wait \
--output ml_jobs.json
User request: "Find coffee shops in Seattle"
Solution:
monid search \
--name "Seattle Coffee Shops" \
--query "Find all coffee shops in Seattle with ratings, reviews, and contact information" \
--output-schema '{
"type": "object",
"properties": {
"businesses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"address": {"type": "string"},
"phone": {"type": "string"},
"website": {"type": "string"},
"rating": {"type": "number"},
"review_count": {"type": "number"}
}
}
}
}
}' \
--wait \
--output seattle_coffee.json
A good output schema:
Example schema template:
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"field1": {"type": "string"},
"field2": {"type": "number"},
"nested_object": {
"type": "object",
"properties": {
"sub_field": {"type": "string"}
}
}
}
}
},
"metadata": {
"type": "object",
"properties": {
"total_count": {"type": "number"},
"scraped_at": {"type": "string"}
}
}
}
}
--yes flag only when user explicitly agrees to costExample with cost confirmation:
# Get quote first
monid search \
--name "Test Search" \
--query "..." \
--output-schema '...'
# CLI will show price and ask for confirmation
# Press 'y' to proceed or 'n' to cancel
Solution: monid auth login
Solution: monid keys generate --label main then monid keys activate main
Solution: Quotes expire after 1 hour. Create a new quote or execute immediately with --wait
Possible causes:
Solution: Check execution details with monid executions get --execution-id <id> for error messages
Solution: Validate JSON syntax, ensure proper structure, use online JSON schema validators
--output to avoid losing data--wait for immediate results, or check status laterWhen a user asks for data collection:
Is the platform supported?
Is Monid CLI installed?
monid --versioncurl -fsSL https://raw.githubusercontent.com/FeiyouG/monid-client/main/install.sh | bashIs user authenticated?
monid auth whoamimonid auth login (browser opens for OAuth)monid keys generate --label mainmonid auth whoamiIs this a one-time or repeated task?
monid search --name --query --output-schemamonid tasks create, then reference with --task-idExecute with appropriate flags:
--wait for immediate results--output to save results--yes if user pre-approved costMonitor and deliver:
--wait, results appear automaticallymonid executions getMonid enables agents and LLMs to help users collect data from social media, e-commerce, and search platforms through a simple CLI workflow:
curl -fsSL https://raw.githubusercontent.com/FeiyouG/monid-client/main/install.sh | bashmonid auth login + monid keys generate --label mainWhen helping users, always:
monid --version)Remember: Monid is for supported platforms only. Never suggest capabilities outside the explicitly listed ones in this skill.