Interactive content research, creation, web scraping, and AI image generation for Claude Code.
- Web Research - Search and fetch content from the web
- Content Creation - Blogs, emails, social posts, web pages
- AI Image Generation - Gemini-powered image creation
- Web Scraping - Download all assets from websites
- Website Analysis - Analyze competitors and references
- Knowledge Base - Store and recall strategies, learnings, prompts
- Interactive Mode - Always asks before acting
- Smart Setup - Dependencies install only when needed
# Run setup (installs dependencies automatically)
python scripts/setup.pyOr use the command:
/setup
Get your Gemini API key from: https://aistudio.google.com/apikey
Edit scripts/.env:
GEMINI_API_KEY=your-api-key-here
/help # Show all commands
/research # Research a topic
/create-content # Create content
/generate-image # Generate AI images
/scrape # Download website assets
/analyze # Analyze a URL
/plan # Plan complex tasks
/explore # Explore codebase/files
/execute # Execute scripts/commands
/knowledge # Manage knowledge base
| Command | Description |
|---|---|
/research [topic] |
Research using WebSearch, WebFetch, download assets |
/create-content [type] |
Create blog, email, social, web page |
/analyze [url] |
Analyze website content and design |
| Command | Description |
|---|---|
/generate-image [prompt] |
Generate AI images with Gemini |
/scrape [url] |
Download all assets from a website |
| Command | Description |
|---|---|
/plan [task] |
Plan and architect a task before execution |
/explore [path/pattern] |
Explore codebase, find files, search content |
/execute [command] |
Execute scripts, commands, and operations |
| Command | Description |
|---|---|
/knowledge |
Manage knowledge base (strategies, learnings, prompts) |
/setup |
Initialize environment |
/help |
Show help |
You can also use natural language:
- "Research AI trends" → Triggers
/research - "Create a blog post about..." → Triggers
/create-content - "Generate an image of..." → Triggers
/generate-image - "Scrape this website..." → Triggers
/scrape - "Analyze this competitor..." → Triggers
/analyze - "Plan this feature..." → Triggers
/plan - "Explore this codebase..." → Triggers
/explore - "Execute this script..." → Triggers
/execute - "Remember this..." / "Store this learning..." → Triggers
/knowledge
The AI always asks questions first before taking action:
User: Create a blog post
AI: I'll help create a blog post. Let me understand what you need:
1. What topic?
2. Should I research first? (WebSearch)
3. Target audience?
4. Tone/style?
5. Length?
6. Generate images?
| Tool | Use Case |
|---|---|
WebSearch |
Find articles, trends, competitors |
WebFetch |
Read specific web pages |
web_scraper.py |
Download all assets locally |
image_generator.py |
Generate AI images |
CONTEXT (knowledge) → ASK → PLAN → SEARCH → DOWNLOAD → CONFIRM → CREATE → LEARN
Research-Skill/
├── .claude/
│ └── settings.local.json # Claude settings, hooks
├── .claude-plugin/
│ └── plugin.json # Plugin configuration
├── commands/ # Slash commands
│ ├── research.md
│ ├── create-content.md
│ ├── generate-image.md
│ ├── scrape.md
│ ├── analyze.md
│ ├── plan.md
│ ├── explore.md
│ ├── execute.md
│ ├── setup.md
│ └── help.md
├── skills/ # Skill definitions
│ ├── content-curator-workflow/
│ ├── image-generation/
│ └── web-scraper/
├── scripts/ # Python scripts
│ ├── setup.py # Environment setup
│ ├── image_generator.py # AI image generation
│ ├── web_scraper.py # Website scraping
│ ├── config.py # Configuration
│ ├── organize_folders.py # Folder management
│ ├── .env # API keys
│ └── utils/ # Utility functions
├── knowledge/ # Knowledge base (JSONL)
│ ├── strategies.jsonl # Successful approaches
│ ├── plans.jsonl # Workflow templates
│ ├── learnings.jsonl # Key insights
│ ├── prompts.jsonl # Effective prompts
│ ├── errors.jsonl # Problems + solutions
│ └── templates.jsonl # Content templates
├── data/ # Generated data
│ ├── assets/ # Generated images
│ │ └── files/
│ └── scraped/ # Scraped websites
├── content-output/ # Created content
├── references/ # Reference files
│ ├── brand-voice.md
│ ├── audience-persona.md
│ ├── banner-guide.md
│ ├── blog-template.md
│ ├── email-template.md
│ └── scoring-template.md
├── CLAUDE.md # Claude instructions
├── DEMO.md # Demo prompts
├── README.md # This file
└── requirements.txt # Python dependencies
Full content pipeline:
- Research with WebSearch
- Fetch content with WebFetch
- Score and rank sources
- Personalize with brand voice
- Create images
- Export in multiple formats
AI image generation with Gemini:
- Multiple styles (photorealistic, illustration, minimalist, etc.)
- Platform-optimized dimensions
- Automatic prompt enhancement
Download website assets:
- HTML content
- Images (jpg, png, gif, webp, svg)
- CSS and JavaScript (optional)
- Videos
- Text extraction
JSONL-based storage for continuous learning:
| Type | Purpose | File |
|---|---|---|
| Strategies | Successful approaches | strategies.jsonl |
| Plans | Workflow templates | plans.jsonl |
| Learnings | Key insights | learnings.jsonl |
| Prompts | Effective prompts | prompts.jsonl |
| Errors | Problems + solutions | errors.jsonl |
| Templates | Content templates | templates.jsonl |
# Get context before a task
python scripts/knowledge_base.py context content
# Search knowledge
python scripts/knowledge_base.py search "image generation"
# Add new learning
python scripts/knowledge_base.py add learnings --title "..." --description "..."
# View statistics
python scripts/knowledge_base.py statsAfter successful tasks, the system prompts to save:
- New strategies that worked well
- Effective prompts created
- Errors and their solutions
- Useful templates
Specialized agents for complex tasks:
| Agent | Type | Purpose |
|---|---|---|
planner |
Plan | Design implementation strategy |
explorer |
Explore | Fast file discovery and codebase exploration |
executor |
Bash | Command execution and terminal operations |
| Agent | Type | Purpose |
|---|---|---|
reader |
general | Read and analyze files |
writer |
general | Write and edit files |
| Agent | Type | Purpose |
|---|---|---|
researcher |
general | Web research and content fetching |
content-creator |
general | Content writing and formatting |
image-generator |
general | AI image creation |
scraper |
general | Website asset downloading |
analyzer |
general | Website analysis |
research|find|search|look up → /research
create|write|make content → /create-content
generate|create image|banner → /generate-image
scrape|download|fetch site → /scrape
analyze|check|review site → /analyze
plan|design|architect → /plan
explore|discover|browse → /explore
execute|run|start → /execute
knowledge|remember|learn|store → /knowledge
Automatically checks setup status on startup.
The setup script only installs dependencies when needed:
python scripts/setup.py # Install if needed
python scripts/setup.py --check # Check status
python scripts/setup.py --force # Force reinstallUses hash-based detection - only reinstalls when requirements.txt changes.
- Permissions for web tools
- Hooks for automation
- Plugin configuration
GEMINI_API_KEY=your-api-key
- Command definitions
- Hook patterns
- Sub-agent configuration
- Reference file locations
google-genai>=1.0.0 # Gemini AI
pillow>=10.0.0 # Image processing
requests>=2.28.0 # HTTP requests
beautifulsoup4>=4.11.0 # HTML parsing
pyyaml>=6.0 # YAML support
/research AI career trends
AI asks: How many sources? Download images? Timeframe?
/create-content blog post about remote work
AI asks: Research first? Target audience? Tone and length?
/generate-image modern office workspace --style corporate --platform linkedin
AI asks: Confirm description? Any specific colors?
/scrape https://example.com
AI asks: Download everything or images only? Limit?
| File | Description |
|---|---|
brand-voice.md |
Brand tone guidelines, magic phrases |
audience-persona.md |
Target audience profile |
banner-guide.md |
Image design specifications |
blog-template.md |
Blog post structure |
email-template.md |
Email templates |
scoring-template.md |
Content scoring criteria |
| Criteria | Points |
|---|---|
| Audience Relevance | 30 |
| Emotional Resonance | 25 |
| Actionable Value | 20 |
| Freshness | 15 |
| Authority | 10 |
- Never assume - Always ask the user first
- Get context first - Check knowledge base before tasks
- Plan before execute - Use planning for complex tasks
- Use web tools - Real research with WebSearch/WebFetch
- Download assets - Save images and content locally
- Learn and remember - Store successful strategies
- Create what's requested - Match user's exact vision
- See
DEMO.mdfor demo prompts and examples - Run
/helpfor command reference - Check
CLAUDE.mdfor detailed AI instructions
10x Research-Skill v2.0 by OpenAnalyst - Interactive Content & Research for Claude Code