Claude-skill-registry add-awesome-tool
This skill should be used when analyzing a link to an AI tool and adding it to the awesome-ai-tools readme with proper categorization
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/add-awesome-tool" ~/.claude/skills/majiayu000-claude-skill-registry-add-awesome-tool && rm -rf "$T"
skills/data/add-awesome-tool/SKILL.mdAdd Awesome Tool
Analyze a URL (or multiple URLs) to an AI tool, extract relevant information, and add it to the awesome-ai-tools data/tools.json file with proper categorization. The readme.md is automatically generated from the JSON data.
Workflow Overview
This repository uses a JSON-first approach:
- data/tools.json - Source of truth for all tools
- scripts/generate-readme.js - Generates readme.md from tools.json
- readme.md - Auto-generated, do not edit directly
Usage
When the user provides a link to an AI tool, use this skill to:
- Fetch and analyze the webpage content
- Extract key information (name, description, features, pricing, etc.)
- Determine the appropriate category and subcategory
- Add the tool entry to tools.json in the correct category
- Regenerate readme.md from the updated JSON
- Update the "Last Updated" date
The skill supports both single links and multiple links in one request.
Workflow
To add a tool:
- Analyze the URL: Use WebFetch to extract information from the tool's website
- Determine category: Identify the correct category/subcategory from data/tools.json structure
- Create tool entry: Format as JSON object with all relevant fields
- Update tools.json: Add the tool to the appropriate category in data/tools.json
- Regenerate readme: Run
to update readme.mdnode scripts/generate-readme.js - Update metadata: Update lastUpdated field if needed
Bundled Resources
scripts/
analyze_and_add.py: Helper script (DEPRECATED - Use WebFetch + JSON editing instead):
- Fetches webpage content from provided URLs
- Extracts tool information (name, description, features, pricing)
- Outputs structured data for manual addition to tools.json
For the JSON workflow, use Claude's built-in tools:
- WebFetch: Extract information from tool websites
- Read/Edit: Modify data/tools.json directly
- Bash: Run
to regenerate readmenode scripts/generate-readme.js
references/
categories.md: Complete list of categories from tools.json with descriptions to help with categorization
Implementation
When the user provides a link (or says something like "add this tool"):
-
Analyze the URL:
- Use WebFetch to extract information from the tool's website
- Extract: name, type, website, repository, documentation, installation, key features, pricing, etc.
-
Identify category:
- Read
to see available categoriesdata/tools.json - Determine correct category/subcategory based on tool type
- Refer to
for guidancereferences/categories.md
- Read
-
Format as JSON:
- Create a tool object with relevant fields
- Follow the structure of existing entries in tools.json
- Only include fields that have actual values
-
Update tools.json:
- Use Edit tool to add the new tool entry to the appropriate category
- Insert alphabetically within the category if possible
-
Regenerate readme:
node scripts/generate-readme.js -
Update metadata in tools.json if needed (lastUpdated field)
Categories
The readme contains these main categories:
- AI Inference Providers (with subcategories)
- MCP Providers
- CLI Tools
- Cloud-Based Agentic Coding Services
- VS Code Extensions
- JetBrains IDE Tools
- Full IDE Tools
- Code Review & Security Tools
- Testing & QA Tools
- API Testing Tools
- Documentation & Code Explanation
- Database & SQL Tools
- Local Model Infrastructure
- AI/ML Libraries & Frameworks
- Browser Extensions
- Search & Research Tools
- Other Tools & Infrastructure
Entry Format
Each tool entry in tools.json follows this structure:
{ "name": "Tool Name", "type": "Brief description", "developer": "Company/Organization (if different from tool name)", "website": "https://example.com", "repository": "https://github.com/... (if open source)", "documentation": "https://docs.example.com (if available)", "installation": "installation command", "models": "Supported models", "keyFeatures": [ "Feature 1", "Feature 2", "Feature 3" ], "pricing": "Pricing model (if applicable)", "worksWith": [ "Compatible tools/platforms", "Integration options", "Use cases" ] }
Common field names (use camelCase):
- name, type, developer, stakeholder, website, repository, documentation
- installation, models, keyFeatures, pricing, specialFeatures
- status, release, formerName, rebranding
- worksWith (array)
Examples
User: "Add this tool: https://github.com/example/awesome-ai-cli"
Assistant:
- Uses WebFetch to analyze the URL
- Extracts: "Awesome AI CLI - A command-line tool for..."
- Determines: "CLI Tools" → "Full Agentic Project-Level CLIs" category
- Creates JSON object with all extracted fields
- Edits tools.json to add the entry in correct category
- Runs
to update readmenode scripts/generate-readme.js - Shows the user the generated entry
User: "Add these: https://tool1.com https://tool2.com"
Assistant: Processes both URLs, adds both to tools.json, then regenerates readme once
Limitations
- Webpage content must be accessible (no paywalls or login requirements)
- Works best with official tool websites that have clear documentation
- May need manual adjustment for tools that fit multiple categories
- Cannot automatically determine "Works with:" compatibility without additional context
- JSON editing requires careful attention to syntax and structure