convert_all.py 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #!/usr/bin/env python3
  2. """
  3. Convert all Agent Skills to different platform formats
  4. This is a master conversion tool that converts skills to all supported platforms.
  5. Usage:
  6. python convert_all.py <skills_dir> <output_base_dir>
  7. Example:
  8. python convert_all.py ../skills ../adapters-output
  9. """
  10. import sys
  11. from pathlib import Path
  12. # Add adapter directories to path
  13. sys.path.insert(0, str(Path(__file__).parent))
  14. from cursor.convert_to_cursor import convert_all_skills as convert_cursor
  15. from trae.convert_to_trae import convert_all_skills as convert_trae
  16. from qoder.convert_to_qoder import convert_all_skills as convert_qoder
  17. from codebuddy.convert_to_codebuddy import convert_all_skills as convert_codebuddy
  18. from windsurf.convert_to_windsurf import convert_all_skills as convert_windsurf
  19. def convert_to_all_platforms(skills_dir, output_base_dir):
  20. """
  21. Convert all skills to all supported platforms
  22. Args:
  23. skills_dir: Directory containing skills
  24. output_base_dir: Base output directory
  25. """
  26. output_base = Path(output_base_dir)
  27. output_base.mkdir(parents=True, exist_ok=True)
  28. print("🚀 Starting conversion to all platforms...\n")
  29. # Convert to Cursor
  30. print("📝 Converting to Cursor format...")
  31. try:
  32. convert_cursor(skills_dir, output_base / "cursor")
  33. print("✅ Cursor conversion completed\n")
  34. except Exception as e:
  35. print(f"❌ Cursor conversion failed: {e}\n")
  36. # Convert to Trae
  37. print("🔌 Converting to Trae format...")
  38. try:
  39. convert_trae(skills_dir, output_base / "trae")
  40. print("✅ Trae conversion completed\n")
  41. except Exception as e:
  42. print(f"❌ Trae conversion failed: {e}\n")
  43. # Convert to Qoder
  44. print("🤖 Converting to Qoder format...")
  45. try:
  46. convert_qoder(skills_dir, output_base / "qoder")
  47. print("✅ Qoder conversion completed\n")
  48. except Exception as e:
  49. print(f"❌ Qoder conversion failed: {e}\n")
  50. # Convert to CodeBuddy
  51. print("🔄 Converting to CodeBuddy format...")
  52. try:
  53. convert_codebuddy(skills_dir, output_base / "codebuddy")
  54. print("✅ CodeBuddy conversion completed\n")
  55. except Exception as e:
  56. print(f"❌ CodeBuddy conversion failed: {e}\n")
  57. # Convert to Windsurf
  58. print("🌊 Converting to Windsurf format...")
  59. try:
  60. convert_windsurf(skills_dir, output_base / "windsurf")
  61. print("✅ Windsurf conversion completed\n")
  62. except Exception as e:
  63. print(f"❌ Windsurf conversion failed: {e}\n")
  64. print("🎉 All conversions completed!")
  65. print(f"\nOutput directories:")
  66. print(f" - Cursor: {output_base / 'cursor'}")
  67. print(f" - Trae: {output_base / 'trae'}")
  68. print(f" - Qoder: {output_base / 'qoder'}")
  69. print(f" - CodeBuddy: {output_base / 'codebuddy'}")
  70. print(f" - Windsurf: {output_base / 'windsurf'}")
  71. if __name__ == "__main__":
  72. if len(sys.argv) < 3:
  73. print("Usage: python convert_all.py <skills_dir> <output_base_dir>")
  74. print("\nExample:")
  75. print(" python convert_all.py ../skills ../adapters-output")
  76. sys.exit(1)
  77. skills_dir = sys.argv[1]
  78. output_base_dir = sys.argv[2]
  79. convert_to_all_platforms(skills_dir, output_base_dir)