refactor: Update CLI commands to use new unified entry points

Updated all command examples in CLI scripts from old pattern:
  python3 cli/<script>.py → skill-seekers <command>

Changes:
- doc_scraper.py → skill-seekers scrape
- github_scraper.py → skill-seekers github
- pdf_scraper.py → skill-seekers pdf
- unified_scraper.py → skill-seekers unified
- enhance_skill.py → skill-seekers enhance
- enhance_skill_local.py → skill-seekers enhance
- package_skill.py → skill-seekers package
- estimate_pages.py → skill-seekers estimate

This reflects the new modern Python packaging with proper entry
points. Users can now use clean commands instead of file paths.

Files updated: 10 CLI scripts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
yusyus
2025-11-07 01:23:17 +03:00
parent 9931066741
commit 13ca374295
10 changed files with 49 additions and 49 deletions

View File

@@ -4,9 +4,9 @@ Documentation to Claude Skill Converter
Single tool to scrape any documentation and create high-quality Claude skills.
Usage:
python3 cli/doc_scraper.py --interactive
python3 cli/doc_scraper.py --config configs/godot.json
python3 cli/doc_scraper.py --url https://react.dev/ --name react
skill-seekers scrape --interactive
skill-seekers scrape --config configs/godot.json
skill-seekers scrape --url https://react.dev/ --name react
"""
import os
@@ -1735,7 +1735,7 @@ def execute_enhancement(config: Dict[str, Any], args: argparse.Namespace) -> Non
logger.warning("\n⚠ Enhancement failed, but skill was still built")
except FileNotFoundError:
logger.warning("\n⚠ enhance_skill.py not found. Run manually:")
logger.info(" python3 cli/enhance_skill.py output/%s/", config['name'])
logger.info(" skill-seekers-enhance output/%s/", config['name'])
# Optional enhancement with Claude Code (local, no API key)
if args.enhance_local:
@@ -1750,18 +1750,18 @@ def execute_enhancement(config: Dict[str, Any], args: argparse.Namespace) -> Non
logger.warning("\n⚠ Enhancement failed, but skill was still built")
except FileNotFoundError:
logger.warning("\n⚠ enhance_skill_local.py not found. Run manually:")
logger.info(" python3 cli/enhance_skill_local.py output/%s/", config['name'])
logger.info(" skill-seekers-enhance output/%s/", config['name'])
# Print packaging instructions
logger.info("\n📦 Package your skill:")
logger.info(" python3 cli/package_skill.py output/%s/", config['name'])
logger.info(" skill-seekers-package output/%s/", config['name'])
# Suggest enhancement if not done
if not args.enhance and not args.enhance_local:
logger.info("\n💡 Optional: Enhance SKILL.md with Claude:")
logger.info(" API-based: python3 cli/enhance_skill.py output/%s/", config['name'])
logger.info(" API-based: skill-seekers-enhance output/%s/", config['name'])
logger.info(" or re-run with: --enhance")
logger.info(" Local (no API key): python3 cli/enhance_skill_local.py output/%s/", config['name'])
logger.info(" Local (no API key): skill-seekers-enhance output/%s/", config['name'])
logger.info(" or re-run with: --enhance-local")

View File

@@ -4,9 +4,9 @@ SKILL.md Enhancement Script
Uses Claude API to improve SKILL.md by analyzing reference documentation.
Usage:
python3 cli/enhance_skill.py output/steam-inventory/
python3 cli/enhance_skill.py output/react/
python3 cli/enhance_skill.py output/godot/ --api-key YOUR_API_KEY
skill-seekers enhance output/steam-inventory/
skill-seekers enhance output/react/
skill-seekers enhance output/godot/ --api-key YOUR_API_KEY
"""
import os
@@ -188,7 +188,7 @@ Return ONLY the complete SKILL.md content, starting with the frontmatter (---).
print(f" 1. Review: {self.skill_md_path}")
print(f" 2. If you don't like it, restore backup: {self.skill_md_path.with_suffix('.md.backup')}")
print(f" 3. Package your skill:")
print(f" python3 cli/package_skill.py {self.skill_dir}/")
print(f" skill-seekers package {self.skill_dir}/")
return True
@@ -201,13 +201,13 @@ def main():
Examples:
# Using ANTHROPIC_API_KEY environment variable
export ANTHROPIC_API_KEY=sk-ant-...
python3 cli/enhance_skill.py output/steam-inventory/
skill-seekers enhance output/steam-inventory/
# Providing API key directly
python3 cli/enhance_skill.py output/react/ --api-key sk-ant-...
skill-seekers enhance output/react/ --api-key sk-ant-...
# Show what would be done (dry run)
python3 cli/enhance_skill.py output/godot/ --dry-run
skill-seekers enhance output/godot/ --dry-run
"""
)
@@ -246,7 +246,7 @@ Examples:
print(f" - {rf.name} ({size:,} bytes)")
print("\nTo actually run enhancement:")
print(f" python3 cli/enhance_skill.py {skill_dir}")
print(f" skill-seekers enhance {skill_dir}")
return
# Create enhancer and run
@@ -260,7 +260,7 @@ Examples:
print("\nSet your API key:")
print(" export ANTHROPIC_API_KEY=sk-ant-...")
print("Or provide it directly:")
print(f" python3 cli/enhance_skill.py {skill_dir} --api-key sk-ant-...")
print(f" skill-seekers enhance {skill_dir} --api-key sk-ant-...")
sys.exit(1)
except Exception as e:
print(f"❌ Unexpected error: {e}")

View File

@@ -5,8 +5,8 @@ Opens a new terminal with Claude Code to enhance SKILL.md, then reports back.
No API key needed - uses your existing Claude Code Max plan!
Usage:
python3 cli/enhance_skill_local.py output/steam-inventory/
python3 cli/enhance_skill_local.py output/react/
skill-seekers enhance output/steam-inventory/
skill-seekers enhance output/react/
Terminal Selection:
The script automatically detects which terminal app to use:
@@ -277,18 +277,18 @@ rm {prompt_file}
print("💡 When done:")
print(f" 1. Check the enhanced SKILL.md: {self.skill_md_path}")
print(f" 2. If you don't like it, restore: mv {self.skill_md_path.with_suffix('.md.backup')} {self.skill_md_path}")
print(f" 3. Package: python3 cli/package_skill.py {self.skill_dir}/")
print(f" 3. Package: skill-seekers package {self.skill_dir}/")
return True
def main():
if len(sys.argv) < 2:
print("Usage: python3 cli/enhance_skill_local.py <skill_directory>")
print("Usage: skill-seekers enhance <skill_directory>")
print()
print("Examples:")
print(" python3 cli/enhance_skill_local.py output/steam-inventory/")
print(" python3 cli/enhance_skill_local.py output/react/")
print(" skill-seekers enhance output/steam-inventory/")
print(" skill-seekers enhance output/react/")
sys.exit(1)
skill_dir = sys.argv[1]

View File

@@ -240,13 +240,13 @@ def main():
epilog="""
Examples:
# Estimate pages for a config
python3 cli/estimate_pages.py configs/react.json
skill-seekers estimate configs/react.json
# Estimate with higher discovery limit
python3 cli/estimate_pages.py configs/godot.json --max-discovery 2000
skill-seekers estimate configs/godot.json --max-discovery 2000
# Quick estimate (stop at 100 pages)
python3 cli/estimate_pages.py configs/vue.json --max-discovery 100
skill-seekers estimate configs/vue.json --max-discovery 100
"""
)

View File

@@ -263,9 +263,9 @@ Examples:
print(f"{'='*60}")
print(f"1. Review router SKILL.md: {skill_path}")
print(f"2. Optionally scrape router (for overview pages):")
print(f" python3 cli/doc_scraper.py --config {config_path}")
print(f" skill-seekers scrape --config {config_path}")
print("3. Package router skill:")
print(f" python3 cli/package_skill.py output/{generator.router_name}/")
print(f" skill-seekers package output/{generator.router_name}/")
print("4. Upload router + all sub-skills to Claude")
print("")

View File

@@ -9,9 +9,9 @@ Converts GitHub repositories into Claude AI skills by extracting:
- Usage examples from tests
Usage:
python3 cli/github_scraper.py --repo facebook/react
python3 cli/github_scraper.py --config configs/react_github.json
python3 cli/github_scraper.py --repo owner/repo --token $GITHUB_TOKEN
skill-seekers github --repo facebook/react
skill-seekers github --config configs/react_github.json
skill-seekers github --repo owner/repo --token $GITHUB_TOKEN
"""
import os
@@ -735,9 +735,9 @@ def main():
formatter_class=argparse.RawDescriptionHelpFormatter,
epilog="""
Examples:
python3 cli/github_scraper.py --repo facebook/react
python3 cli/github_scraper.py --config configs/react_github.json
python3 cli/github_scraper.py --repo owner/repo --token $GITHUB_TOKEN
skill-seekers github --repo facebook/react
skill-seekers github --config configs/react_github.json
skill-seekers github --repo owner/repo --token $GITHUB_TOKEN
"""
)
@@ -786,7 +786,7 @@ Examples:
converter.build_skill()
logger.info(f"\n✅ Success! Skill created at: output/{config.get('name', config['repo'].split('/')[-1])}/")
logger.info(f"Next step: python3 cli/package_skill.py output/{config.get('name', config['repo'].split('/')[-1])}/")
logger.info(f"Next step: skill-seekers-package output/{config.get('name', config['repo'].split('/')[-1])}/")
except Exception as e:
logger.error(f"Error: {e}")

View File

@@ -4,9 +4,9 @@ Simple Skill Packager
Packages a skill directory into a .zip file for Claude.
Usage:
python3 cli/package_skill.py output/steam-inventory/
python3 cli/package_skill.py output/react/
python3 cli/package_skill.py output/react/ --no-open # Don't open folder
skill-seekers package output/steam-inventory/
skill-seekers package output/react/
skill-seekers package output/react/ --no-open # Don't open folder
"""
import os
@@ -96,13 +96,13 @@ def main():
epilog="""
Examples:
# Package skill and open folder
python3 cli/package_skill.py output/react/
skill-seekers package output/react/
# Package skill without opening folder
python3 cli/package_skill.py output/react/ --no-open
skill-seekers package output/react/ --no-open
# Get help
python3 cli/package_skill.py --help
skill-seekers package --help
"""
)

View File

@@ -195,7 +195,7 @@ class PDFToSkillConverter:
self._generate_skill_md(categorized)
print(f"\n✅ Skill built successfully: {self.skill_dir}/")
print(f"\n📦 Next step: Package with: python3 cli/package_skill.py {self.skill_dir}/")
print(f"\n📦 Next step: Package with: skill-seekers package {self.skill_dir}/")
def _generate_reference_file(self, cat_key, cat_data):
"""Generate a reference markdown file for a category"""

View File

@@ -310,9 +310,9 @@ Split Strategies:
print("1. Review generated configs")
print("2. Scrape each config:")
for filepath in saved_files:
print(f" python3 cli/doc_scraper.py --config {filepath}")
print(f" skill-seekers scrape --config {filepath}")
print("3. Package skills:")
print(" python3 cli/package_multi.py configs/<name>-*.json")
print(" skill-seekers-package-multi configs/<name>-*.json")
print("")

View File

@@ -8,8 +8,8 @@ detects conflicts, merges intelligently, and builds unified skills.
This is the main entry point for unified config workflow.
Usage:
python3 cli/unified_scraper.py --config configs/godot_unified.json
python3 cli/unified_scraper.py --config configs/react_unified.json --merge-mode claude-enhanced
skill-seekers unified --config configs/godot_unified.json
skill-seekers unified --config configs/react_unified.json --merge-mode claude-enhanced
"""
import os
@@ -422,13 +422,13 @@ def main():
epilog="""
Examples:
# Basic usage with unified config
python3 cli/unified_scraper.py --config configs/godot_unified.json
skill-seekers unified --config configs/godot_unified.json
# Override merge mode
python3 cli/unified_scraper.py --config configs/react_unified.json --merge-mode claude-enhanced
skill-seekers unified --config configs/react_unified.json --merge-mode claude-enhanced
# Backward compatible with legacy configs
python3 cli/unified_scraper.py --config configs/react.json
skill-seekers unified --config configs/react.json
"""
)