Kaynağa Gözat

Merge branch 'feature/full_statck_skills'

wandl-6A72h 6 ay önce
ebeveyn
işleme
2275ba3f13
100 değiştirilmiş dosya ile 1543 ekleme ve 12810 silme
  1. 654 195
      .claude-plugin/marketplace.json
  2. 10 5
      AGENTS.md
  3. 121 217
      PLATFORM_GUIDE.md
  4. 410 377
      README.md
  5. 348 297
      README_EN.md
  6. 0 120
      adapters-output/codebuddy/algorithmic-art/manifest.json
  7. 0 405
      adapters-output/codebuddy/algorithmic-art/skills/algorithmic-art/SKILL.md
  8. 0 111
      adapters-output/codebuddy/algorithmic-art/workflows/algorithmic-art.json
  9. 0 36
      adapters-output/codebuddy/brand-guidelines/manifest.json
  10. 0 27
      adapters-output/codebuddy/brand-guidelines/workflows/brand-guidelines.json
  11. 0 30
      adapters-output/codebuddy/canvas-design/manifest.json
  12. 0 21
      adapters-output/codebuddy/canvas-design/workflows/canvas-design.json
  13. 0 48
      adapters-output/codebuddy/code-generator/manifest.json
  14. 0 89
      adapters-output/codebuddy/code-generator/skills/code-generator/SKILL.md
  15. 0 39
      adapters-output/codebuddy/code-generator/workflows/code-generator.json
  16. 0 42
      adapters-output/codebuddy/course-designer/manifest.json
  17. 0 86
      adapters-output/codebuddy/course-designer/skills/course-designer/SKILL.md
  18. 0 33
      adapters-output/codebuddy/course-designer/workflows/course-designer.json
  19. 0 132
      adapters-output/codebuddy/doc-coauthoring/manifest.json
  20. 0 375
      adapters-output/codebuddy/doc-coauthoring/skills/doc-coauthoring/SKILL.md
  21. 0 123
      adapters-output/codebuddy/doc-coauthoring/workflows/doc-coauthoring.json
  22. 0 48
      adapters-output/codebuddy/documentation-builder/manifest.json
  23. 0 88
      adapters-output/codebuddy/documentation-builder/skills/documentation-builder/SKILL.md
  24. 0 39
      adapters-output/codebuddy/documentation-builder/workflows/documentation-builder.json
  25. 0 108
      adapters-output/codebuddy/docx/manifest.json
  26. 0 197
      adapters-output/codebuddy/docx/skills/docx/SKILL.md
  27. 0 99
      adapters-output/codebuddy/docx/workflows/docx.json
  28. 0 36
      adapters-output/codebuddy/frontend-design/manifest.json
  29. 0 42
      adapters-output/codebuddy/frontend-design/skills/frontend-design/SKILL.md
  30. 0 27
      adapters-output/codebuddy/frontend-design/workflows/frontend-design.json
  31. 0 36
      adapters-output/codebuddy/internal-comms/manifest.json
  32. 0 32
      adapters-output/codebuddy/internal-comms/skills/internal-comms/SKILL.md
  33. 0 27
      adapters-output/codebuddy/internal-comms/workflows/internal-comms.json
  34. 0 48
      adapters-output/codebuddy/learning-assessor/manifest.json
  35. 0 88
      adapters-output/codebuddy/learning-assessor/skills/learning-assessor/SKILL.md
  36. 0 39
      adapters-output/codebuddy/learning-assessor/workflows/learning-assessor.json
  37. 0 42
      adapters-output/codebuddy/mcp-builder/manifest.json
  38. 0 236
      adapters-output/codebuddy/mcp-builder/skills/mcp-builder/SKILL.md
  39. 0 33
      adapters-output/codebuddy/mcp-builder/workflows/mcp-builder.json
  40. 0 54
      adapters-output/codebuddy/mermaid/manifest.json
  41. 0 100
      adapters-output/codebuddy/mermaid/skills/mermaid/SKILL.md
  42. 0 45
      adapters-output/codebuddy/mermaid/workflows/mermaid.json
  43. 0 36
      adapters-output/codebuddy/pdf/manifest.json
  44. 0 294
      adapters-output/codebuddy/pdf/skills/pdf/SKILL.md
  45. 0 27
      adapters-output/codebuddy/pdf/workflows/pdf.json
  46. 0 276
      adapters-output/codebuddy/pptx/manifest.json
  47. 0 484
      adapters-output/codebuddy/pptx/skills/pptx/SKILL.md
  48. 0 267
      adapters-output/codebuddy/pptx/workflows/pptx.json
  49. 0 180
      adapters-output/codebuddy/skill-creator/manifest.json
  50. 0 171
      adapters-output/codebuddy/skill-creator/workflows/skill-creator.json
  51. 0 48
      adapters-output/codebuddy/slack-gif-creator/manifest.json
  52. 0 39
      adapters-output/codebuddy/slack-gif-creator/workflows/slack-gif-creator.json
  53. 0 48
      adapters-output/codebuddy/teaching-resource-generator/manifest.json
  54. 0 85
      adapters-output/codebuddy/teaching-resource-generator/skills/teaching-resource-generator/SKILL.md
  55. 0 39
      adapters-output/codebuddy/teaching-resource-generator/workflows/teaching-resource-generator.json
  56. 0 48
      adapters-output/codebuddy/test-writer/manifest.json
  57. 0 86
      adapters-output/codebuddy/test-writer/skills/test-writer/SKILL.md
  58. 0 39
      adapters-output/codebuddy/test-writer/workflows/test-writer.json
  59. 0 126
      adapters-output/codebuddy/theme-factory/manifest.json
  60. 0 117
      adapters-output/codebuddy/theme-factory/workflows/theme-factory.json
  61. 0 48
      adapters-output/codebuddy/web-artifacts-builder/manifest.json
  62. 0 39
      adapters-output/codebuddy/web-artifacts-builder/workflows/web-artifacts-builder.json
  63. 0 60
      adapters-output/codebuddy/webapp-testing/manifest.json
  64. 0 51
      adapters-output/codebuddy/webapp-testing/workflows/webapp-testing.json
  65. 0 54
      adapters-output/codebuddy/xlsx/manifest.json
  66. 0 289
      adapters-output/codebuddy/xlsx/skills/xlsx/SKILL.md
  67. 0 45
      adapters-output/codebuddy/xlsx/workflows/xlsx.json
  68. 0 198
      adapters-output/codebuddy/zh-product-doc-generator/manifest.json
  69. 0 183
      adapters-output/codebuddy/zh-product-doc-generator/skills/zh-product-doc-generator/SKILL.md
  70. 0 189
      adapters-output/codebuddy/zh-product-doc-generator/workflows/zh-product-doc-generator.json
  71. 0 409
      adapters-output/cursor/algorithmic-art.md
  72. 0 77
      adapters-output/cursor/brand-guidelines.md
  73. 0 134
      adapters-output/cursor/canvas-design.md
  74. 0 94
      adapters-output/cursor/code-generator.md
  75. 0 91
      adapters-output/cursor/course-designer.md
  76. 0 380
      adapters-output/cursor/doc-coauthoring.md
  77. 0 93
      adapters-output/cursor/documentation-builder.md
  78. 0 201
      adapters-output/cursor/docx.md
  79. 0 46
      adapters-output/cursor/frontend-design.md
  80. 0 36
      adapters-output/cursor/internal-comms.md
  81. 0 93
      adapters-output/cursor/learning-assessor.md
  82. 0 240
      adapters-output/cursor/mcp-builder.md
  83. 0 104
      adapters-output/cursor/mermaid.md
  84. 0 298
      adapters-output/cursor/pdf.md
  85. 0 488
      adapters-output/cursor/pptx.md
  86. 0 360
      adapters-output/cursor/skill-creator.md
  87. 0 258
      adapters-output/cursor/slack-gif-creator.md
  88. 0 90
      adapters-output/cursor/teaching-resource-generator.md
  89. 0 91
      adapters-output/cursor/test-writer.md
  90. 0 62
      adapters-output/cursor/theme-factory.md
  91. 0 78
      adapters-output/cursor/web-artifacts-builder.md
  92. 0 100
      adapters-output/cursor/webapp-testing.md
  93. 0 293
      adapters-output/cursor/xlsx.md
  94. 0 188
      adapters-output/cursor/zh-product-doc-generator.md
  95. 0 405
      adapters-output/qoder/algorithmic-art-agent/SKILL.md
  96. 0 39
      adapters-output/qoder/algorithmic-art-agent/algorithmic_art_agent.py
  97. 0 84
      adapters-output/qoder/algorithmic-art-agent/qoder-agent-config.json
  98. 0 73
      adapters-output/qoder/brand-guidelines-agent/SKILL.md
  99. 0 39
      adapters-output/qoder/brand-guidelines-agent/brand_guidelines_agent.py
  100. 0 28
      adapters-output/qoder/brand-guidelines-agent/qoder-agent-config.json

+ 654 - 195
.claude-plugin/marketplace.json

@@ -1,173 +1,347 @@
 {
   "name": "full-stack-skills",
   "owner": {
-    "name": "TeachingAI",
-    "email": "teachingai@163.com"
+    "name": "PartMeAI",
+    "email": "partmeai@gmail.com"
   },
   "metadata": {
-      "description": "Teaching AI 免费技能市场 - 面向期望成为全栈技能人才的群体,提供按技能种类组织的实用工具技能集合。严格遵循 Agent Skills 规范,提供 169 个技能集合,按技能种类组织为 12 个插件类别,覆盖软件开发全生命周期。在 AI 时代,赋能全栈独立开发者,通过 AI 助手掌握专业技能,实现\"一个人 = 一个公司\"的愿景。",
+    "description": "PartMeAI 免费技能市场 - 严格按 skills/ 目录分组,每组一插件。遵循 Agent Skills 规范与 docs/skill-group-mapping.md,覆盖需求规格、Spec 驱动开发、界面设计、全栈开发全生命周期。",
     "version": "0.0.1"
   },
   "plugins": [
     {
-      "name": "development-skills",
-      "description": "全栈开发技能集合(74个技能):包含前端开发(Vue 2/3、React、Angular、Svelte 等框架;Vite、Webpack 等构建工具;Element Plus、Ant Design、Vant 等 UI 组件库;Vue Router、Pinia、Redux 等状态管理;Electron、Tauri 等桌面应用框架)、后端开发(Spring Boot、Spring Cloud、Spring AI 等 Java 生态;Express、NestJS、Koa、Fastify 等 Node.js 框架;Django、FastAPI、Flask 等 Python 框架;Gin 等 Go 框架)、移动端开发(UniApp、UniApp-x 跨平台框架;React Native、Flutter 跨平台框架;Android Kotlin、iOS Swift 原生开发;Cocos2d-x 游戏引擎;uCharts、Lime EChart 图表组件;UniCloud 云开发、Uni-ad 广告变现等)。帮助 AI 助手掌握全栈开发技能,支持 Web、移动端、桌面应用全平台开发。",
-      "source": "./",
-      "strict": false,
-      "skills": [
-        "./skills/vue2",
-        "./skills/vue3",
-        "./skills/vue-router",
-        "./skills/pinia",
-        "./skills/vite",
-        "./skills/react",
-        "./skills/react-hooks",
-        "./skills/nextjs",
-        "./skills/redux",
-        "./skills/angular",
-        "./skills/svelte",
-        "./skills/webpack",
-        "./skills/rollup",
-        "./skills/parcel",
-        "./skills/rspack",
-        "./skills/element-plus-vue3",
-        "./skills/ant-design-vue",
-        "./skills/ant-design-react",
-        "./skills/ant-design-mobile",
-        "./skills/ant-design-mini",
-        "./skills/bootstrap-vue3",
-        "./skills/vant-vue3",
-        "./skills/uview-vue2",
-        "./skills/uview-pro-vue3",
-        "./skills/layui-vue3",
-        "./skills/avue",
-        "./skills/avue-crud",
-        "./skills/avue-form",
-        "./skills/vue-router-v3",
-        "./skills/vue-router-v4",
-        "./skills/vuex-vue2",
-        "./skills/dart-sass",
-        "./skills/electron",
-        "./skills/electron-egg",
-        "./skills/tauri",
-        "./skills/spring-boot",
-        "./skills/spring-cloud",
-        "./skills/spring-cloud-alibaba",
-        "./skills/spring-ai",
-        "./skills/spring-ai-alibaba",
-        "./skills/spring-security",
-        "./skills/spring-data-jpa",
-        "./skills/express",
-        "./skills/nestjs",
-        "./skills/koa",
-        "./skills/fastify",
-        "./skills/django",
-        "./skills/fastapi",
-        "./skills/flask",
-        "./skills/gin",
-        "./skills/gin-gonic",
-        "./skills/uniapp-project-creator",
-        "./skills/uniapp-project",
-        "./skills/uniappx-project-creator",
-        "./skills/uniappx-project",
-        "./skills/uniapp-uview",
-        "./skills/uniappx-uview-pro",
-        "./skills/uniapp-ucharts",
-        "./skills/uniapp-ad",
-        "./skills/uniapp-cloud",
-        "./skills/uniapp-mini",
-        "./skills/uniapp-native-app",
-        "./skills/uniapp-native-plugin",
-        "./skills/uniapp-plugin",
-        "./skills/lime-echart",
-        "./skills/ucharts",
-        "./skills/upgradeLink",
-        "./skills/react-native",
-        "./skills/react-native-project-creater",
-        "./skills/flutter",
-        "./skills/flutter-project-creater",
-        "./skills/android-kotlin",
-        "./skills/ios-swift",
-        "./skills/cocos2d-x"
-      ]
-    },
-    {
-      "name": "development-skills-utils",
-      "description": "开发工具技能集合(15个技能):包含代码生成、测试编写、文档构建等基础工具;Java 代码注释生成(支持标准 JavaDoc 和 Java 编程规范严格格式);MyBatis-Plus 代码生成器(支持 MVC 和 DDD 架构,Java 和 Kotlin 语言);DDD 项目构建器(支持单体单模块、单体多模块、微服务架构);项目文档生成(14种文档模板,覆盖产品到运维全生命周期);MCP 构建器、Web 应用测试、前端设计、Web 工件构建器、主题工厂;Node.js 版本管理(nvm)、浏览器自动化;Maven 组件检索(从 Maven Central Repository 搜索和检索 Maven 依赖)等。帮助 AI 助手掌握开发工具链和工程化实践。",
-      "source": "./",
-      "strict": false,
-      "skills": [
-        "./skills/code-generator",
-        "./skills/test-writer",
-        "./skills/java-code-comments",
-        "./skills/mybatis-plus-generator",
-        "./skills/ddd4j-project-creator",
-        "./skills/documentation-builder",
-        "./skills/full-stack-doc",
-        "./skills/mcp-builder",
-        "./skills/webapp-testing",
-        "./skills/frontend-design",
-        "./skills/web-artifacts-builder",
-        "./skills/theme-factory",
-        "./skills/nvm",
-        "./skills/agent-browser",
-        "./skills/maven-search"
+      "name": "vue-skills",
+      "description": "Vue 2/3、Vue Router、Vuex、Pinia 状态管理(7个技能)。与 skill-group-mapping 一致。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/vue-skills/vue2",
+        "./skills/vue-skills/vue3",
+        "./skills/vue-skills/vue-router",
+        "./skills/vue-skills/vue-router-v3",
+        "./skills/vue-skills/vue-router-v4",
+        "./skills/vue-skills/vuex-vue2",
+        "./skills/vue-skills/pinia"
+      ]
+    },
+    {
+      "name": "react-skills",
+      "description": "React、React Hooks、React Native、Redux、Next.js(6个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/react-skills/react",
+        "./skills/react-skills/react-hooks",
+        "./skills/react-skills/react-native",
+        "./skills/react-skills/react-native-project-creater",
+        "./skills/react-skills/redux",
+        "./skills/react-skills/nextjs"
+      ]
+    },
+    {
+      "name": "angular-skills",
+      "description": "Angular 框架(1个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": ["./skills/angular-skills/angular"]
+    },
+    {
+      "name": "svelte-skills",
+      "description": "Svelte 框架(1个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": ["./skills/svelte-skills/svelte"]
+    },
+    {
+      "name": "build-skills",
+      "description": "前端构建与 CSS 预处理器:webpack、rollup、parcel、rspack、vite、dart-sass(6个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/build-skills/webpack",
+        "./skills/build-skills/rollup",
+        "./skills/build-skills/parcel",
+        "./skills/build-skills/rspack",
+        "./skills/build-skills/vite",
+        "./skills/build-skills/dart-sass"
+      ]
+    },
+    {
+      "name": "vue-ui-skills",
+      "description": "Vue 生态 UI 组件库:Element Plus、Bootstrap、Vant、Layui(4个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/vue-ui-skills/element-plus-vue3",
+        "./skills/vue-ui-skills/bootstrap-vue3",
+        "./skills/vue-ui-skills/vant-vue3",
+        "./skills/vue-ui-skills/layui-vue3"
+      ]
+    },
+    {
+      "name": "antd-skills",
+      "description": "Ant Design 各端:Vue/React/移动端/小程序(4个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/antd-skills/ant-design-vue",
+        "./skills/antd-skills/ant-design-react",
+        "./skills/antd-skills/ant-design-mobile",
+        "./skills/antd-skills/ant-design-mini"
+      ]
+    },
+    {
+      "name": "uview-skills",
+      "description": "uView 2.x 与 uView Pro (Vue 3)(2个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/uview-skills/uview-vue2",
+        "./skills/uview-skills/uview-pro-vue3"
+      ]
+    },
+    {
+      "name": "avue-skills",
+      "description": "Avue 基于 Element 的低代码/表单/CRUD(3个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/avue-skills/avue",
+        "./skills/avue-skills/avue-crud",
+        "./skills/avue-skills/avue-form"
+      ]
+    },
+    {
+      "name": "electron-skills",
+      "description": "Electron 桌面应用与 Electron Egg、升级链接(3个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/electron-skills/electron",
+        "./skills/electron-skills/electron-egg",
+        "./skills/electron-skills/upgradeLink"
+      ]
+    },
+    {
+      "name": "spring-skills",
+      "description": "Spring 生态:Boot、Cloud、Cloud Alibaba、AI、Security、Data JPA(7个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/spring-skills/spring-boot",
+        "./skills/spring-skills/spring-cloud",
+        "./skills/spring-skills/spring-cloud-alibaba",
+        "./skills/spring-skills/spring-ai",
+        "./skills/spring-skills/spring-ai-alibaba",
+        "./skills/spring-skills/spring-security",
+        "./skills/spring-skills/spring-data-jpa"
+      ]
+    },
+    {
+      "name": "nodejs-skills",
+      "description": "Node.js 后端框架:Express、Fastify、NestJS、Koa(4个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/nodejs-skills/express",
+        "./skills/nodejs-skills/fastify",
+        "./skills/nodejs-skills/nestjs",
+        "./skills/nodejs-skills/koa"
+      ]
+    },
+    {
+      "name": "python-skills",
+      "description": "Python 后端框架:Django、FastAPI、Flask(3个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/python-skills/django",
+        "./skills/python-skills/fastapi",
+        "./skills/python-skills/flask"
+      ]
+    },
+    {
+      "name": "go-skills",
+      "description": "Go 后端框架:Gin、Gin-Gonic(2个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/go-skills/gin",
+        "./skills/go-skills/gin-gonic"
+      ]
+    },
+    {
+      "name": "uniapp-skills",
+      "description": "UniApp/UniApp-x 项目创建、uView、uCharts、云开发、广告、小程序等(13个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/uniapp-skills/uniapp-project-creator",
+        "./skills/uniapp-skills/uniapp-project",
+        "./skills/uniapp-skills/uniappx-project-creator",
+        "./skills/uniapp-skills/uniappx-project",
+        "./skills/uniapp-skills/uniapp-uview",
+        "./skills/uniapp-skills/uniappx-uview-pro",
+        "./skills/uniapp-skills/uniapp-ucharts",
+        "./skills/uniapp-skills/uniapp-ad",
+        "./skills/uniapp-skills/uniapp-cloud",
+        "./skills/uniapp-skills/uniapp-mini",
+        "./skills/uniapp-skills/uniapp-native-app",
+        "./skills/uniapp-skills/uniapp-native-plugin",
+        "./skills/uniapp-skills/uniapp-plugin"
+      ]
+    },
+    {
+      "name": "chart-skills",
+      "description": "图表组件:Lime EChart、uCharts(2个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/chart-skills/lime-echart",
+        "./skills/chart-skills/ucharts"
+      ]
+    },
+    {
+      "name": "flutter-skills",
+      "description": "Flutter 跨平台开发与项目创建(2个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/flutter-skills/flutter",
+        "./skills/flutter-skills/flutter-project-creater"
+      ]
+    },
+    {
+      "name": "mobile-native-skills",
+      "description": "原生移动端:Android Kotlin、iOS Swift(2个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/mobile-native-skills/android-kotlin",
+        "./skills/mobile-native-skills/ios-swift"
+      ]
+    },
+    {
+      "name": "cocos-skills",
+      "description": "游戏引擎 Cocos2d-x(1个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": ["./skills/cocos-skills/cocos2d-x"]
+    },
+    {
+      "name": "ascii-skills",
+      "description": "ASCII/终端技能:表格、横幅、图表、进度条、动效、图像转 ASCII、MOTD 等(13个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/ascii-skills/ascii-ansi-colorizer",
+        "./skills/ascii-skills/ascii-cli-logo-banner",
+        "./skills/ascii-skills/ascii-cli-logo-banner-figletjs",
+        "./skills/ascii-skills/ascii-cli-logo-banner-python",
+        "./skills/ascii-skills/ascii-diagram-boxflow",
+        "./skills/ascii-skills/ascii-image-to-ascii",
+        "./skills/ascii-skills/ascii-mini-charts",
+        "./skills/ascii-skills/ascii-motd-profile-banner",
+        "./skills/ascii-skills/ascii-progress-and-spinner",
+        "./skills/ascii-skills/ascii-table-renderer",
+        "./skills/ascii-skills/ascii-terminal-animation-pack",
+        "./skills/ascii-skills/ascii-text-art-library",
+        "./skills/ascii-skills/cli-ascii-logo"
+      ]
+    },
+    {
+      "name": "dev-utils-skills",
+      "description": "开发工具链:代码生成、测试编写、文档构建、MCP 构建器、前端设计等(13个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/dev-utils-skills/code-generator",
+        "./skills/dev-utils-skills/test-writer",
+        "./skills/dev-utils-skills/java-code-comments",
+        "./skills/dev-utils-skills/mybatis-plus-generator",
+        "./skills/dev-utils-skills/documentation-builder",
+        "./skills/dev-utils-skills/full-stack-doc",
+        "./skills/dev-utils-skills/mcp-builder",
+        "./skills/dev-utils-skills/webapp-testing",
+        "./skills/dev-utils-skills/frontend-design",
+        "./skills/dev-utils-skills/web-artifacts-builder",
+        "./skills/dev-utils-skills/theme-factory",
+        "./skills/dev-utils-skills/agent-browser",
+        "./skills/dev-utils-skills/maven-search"
+      ]
+    },
+    {
+      "name": "ddd-skills",
+      "description": "DDD 架构与 COLA/六边形/整洁/事件驱动/微服务及 ddd4j 项目创建(6个技能)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/ddd-skills/ddd-cola",
+        "./skills/ddd-skills/ddd-microservices",
+        "./skills/ddd-skills/ddd-event-driven",
+        "./skills/ddd-skills/ddd-hexagonal-architecture",
+        "./skills/ddd-skills/ddd-clean-architecture",
+        "./skills/ddd-skills/ddd4j-project-creator"
       ]
     },
     {
       "name": "design-skills",
-      "description": "设计与创意技能集合(16个技能):包含 Figma、Sketch、Adobe XD、Axure、墨刀、Framer 等专业设计工具;Midjourney、DALL-E、Stable Diffusion、Runway ML、Galileo AI、Uizard、Figma AI 等 AI 设计工具;算法艺术、品牌指南、画布设计等创意工具。帮助 AI 助手掌握 UI/UX 设计、原型设计、AI 绘图等设计技能。",
+      "description": "设计与 AI 绘图:Figma、Sketch、Adobe XD、DALL-E、Uizard、Galileo AI、Runway ML、Framer、算法艺术、品牌指南、画布设计(12个技能,与 skill-group-mapping 一致)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/algorithmic-art",
-        "./skills/brand-guidelines",
-        "./skills/canvas-design",
-        "./skills/figma",
-        "./skills/figma-ai",
-        "./skills/sketch",
-        "./skills/adobe-xd",
-        "./skills/midjourney",
-        "./skills/dalle",
-        "./skills/stable-diffusion",
-        "./skills/uizard",
-        "./skills/galileo-ai",
-        "./skills/runway-ml",
-        "./skills/axure",
-        "./skills/modao",
-        "./skills/framer"
+        "./skills/design-skills/algorithmic-art",
+        "./skills/design-skills/brand-guidelines",
+        "./skills/design-skills/canvas-design",
+        "./skills/design-skills/figma",
+        "./skills/design-skills/figma-ai",
+        "./skills/design-skills/sketch",
+        "./skills/design-skills/adobe-xd",
+        "./skills/design-skills/dalle",
+        "./skills/design-skills/uizard",
+        "./skills/design-skills/galileo-ai",
+        "./skills/design-skills/runway-ml",
+        "./skills/design-skills/framer"
       ]
     },
     {
       "name": "document-skills",
-      "description": "文档处理技能集合(10个技能):包含 Word(docx)、PowerPoint(pptx)、Excel(xlsx)、PDF 等办公文档的创建、编辑和处理;文档协作(多人协作编辑);API 文档生成器;Draw.io 流程图绘制;ProcessOn 思维导图绘制;Mermaid 图表绘制;PlantUML 架构图绘制。帮助 AI 助手掌握文档处理、图表绘制、文档协作等办公自动化技能。",
+      "description": "文档与图表:docx、pptx、pdf、xlsx、文档协作、API 文档生成、ProcessOn 思维导图、Mermaid、PlantUML(9个技能,与 skill-group-mapping 一致)。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/document-skills/docx",
+        "./skills/document-skills/pptx",
+        "./skills/document-skills/pdf",
+        "./skills/document-skills/xlsx",
+        "./skills/document-skills/doc-coauthoring",
+        "./skills/document-skills/api-doc-generator",
+        "./skills/document-skills/processon-mindmap",
+        "./skills/document-skills/mermaid",
+        "./skills/document-skills/plantuml"
+      ]
+    },
+    {
+      "name": "ocrmypdf-skills",
+      "description": "OCRmyPDF 核心 OCR、图像处理、优化压缩、批量处理、Python API(5个技能)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/docx",
-        "./skills/pptx",
-        "./skills/pdf",
-        "./skills/xlsx",
-        "./skills/doc-coauthoring",
-        "./skills/api-doc-generator",
-        "./skills/drawio-flowchart",
-        "./skills/processon-mindmap",
-        "./skills/mermaid",
-        "./skills/plantuml"
+        "./skills/ocrmypdf-skills/ocrmypdf",
+        "./skills/ocrmypdf-skills/ocrmypdf-image",
+        "./skills/ocrmypdf-skills/ocrmypdf-optimize",
+        "./skills/ocrmypdf-skills/ocrmypdf-batch",
+        "./skills/ocrmypdf-skills/ocrmypdf-api"
       ]
     },
     {
-      "name": "architecture-skills",
-      "description": "架构技能集合(6个技能):包含 DDD 微服务架构、DDD 事件驱动架构、DDD 六边形架构、DDD 整洁架构、COLA 架构等架构模式;Draw.io 架构图绘制工具。帮助 AI 助手掌握企业级架构设计、领域建模、架构图绘制等架构设计技能。",
+      "name": "drawio-skills",
+      "description": "Draw.io 架构图与流程图绘制(2个技能)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/ddd-cola",
-        "./skills/ddd-microservices",
-        "./skills/ddd-event-driven",
-        "./skills/ddd-hexagonal-architecture",
-        "./skills/ddd-clean-architecture",
-        "./skills/drawio-architecture"
+        "./skills/drawio-skills/drawio-architecture",
+        "./skills/drawio-skills/drawio-flowchart"
       ]
     },
     {
@@ -176,72 +350,52 @@
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/jest",
-        "./skills/vitest",
-        "./skills/pytest",
-        "./skills/junit",
-        "./skills/cypress",
-        "./skills/playwright",
-        "./skills/selenium",
-        "./skills/appium",
-        "./skills/detox"
+        "./skills/testing-skills/jest",
+        "./skills/testing-skills/vitest",
+        "./skills/testing-skills/pytest",
+        "./skills/testing-skills/junit",
+        "./skills/testing-skills/cypress",
+        "./skills/testing-skills/playwright",
+        "./skills/testing-skills/selenium",
+        "./skills/testing-skills/appium",
+        "./skills/testing-skills/detox"
       ]
     },
     {
       "name": "devops-skills",
-      "description": "运维技能集合(9个技能):包含 Jenkins、GitLab CI、GitHub Actions 等 CI/CD 工具;Docker、Docker Compose、Kubernetes 等容器化和容器编排工具;Terraform、Ansible、CloudFormation 等基础设施即代码(IaC)工具。帮助 AI 助手掌握 DevOps 实践、自动化部署、容器化、基础设施管理等运维技能。",
+      "description": "CI/CD 与 IaC:GitLab CI、GitHub Actions、Kubernetes、Terraform、Ansible、CloudFormation(6个技能,与 skill-group-mapping 一致)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/jenkins",
-        "./skills/gitlab-ci",
-        "./skills/github-actions",
-        "./skills/docker",
-        "./skills/kubernetes",
-        "./skills/docker-compose",
-        "./skills/terraform",
-        "./skills/ansible",
-        "./skills/cloudformation"
+        "./skills/devops-skills/gitlab-ci",
+        "./skills/devops-skills/github-actions",
+        "./skills/devops-skills/kubernetes",
+        "./skills/devops-skills/terraform",
+        "./skills/devops-skills/ansible",
+        "./skills/devops-skills/cloudformation"
       ]
     },
     {
-      "name": "database-skills",
-      "description": "数据库技能集合(8个技能):包含 MySQL、PostgreSQL、Oracle 等关系型数据库;MongoDB、Redis、Elasticsearch 等 NoSQL 数据库和搜索引擎;Navicat、DBeaver 等数据库管理工具。帮助 AI 助手掌握数据库设计、SQL 优化、数据存储、数据检索等数据库技能。",
+      "name": "docker-skills",
+      "description": "Docker 与 Docker Compose 容器化(2个技能)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/mysql",
-        "./skills/postgresql",
-        "./skills/oracle",
-        "./skills/mongodb",
-        "./skills/redis",
-        "./skills/elasticsearch",
-        "./skills/navicat",
-        "./skills/dbeaver"
+        "./skills/docker-skills/docker",
+        "./skills/docker-skills/docker-compose"
       ]
     },
     {
-      "name": "cloud-skills",
-      "description": "云平台技能集合(16个技能):包含 AWS(EC2、S3、RDS、Lambda)、Azure(VM、Storage、SQL)、阿里云(ECS、OSS、RDS)、腾讯云(CVM、COS、CDB)、华为云(ECS、OBS、RDS)等主流云平台的核心服务。帮助 AI 助手掌握云计算、云服务使用、云架构设计等云平台技能,支持多云部署和云原生应用开发。",
+      "name": "database-skills",
+      "description": "数据库与工具:PostgreSQL、Oracle、Redis、Elasticsearch、DBeaver(5个技能,与 skill-group-mapping 一致)。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/cloud-aws-ec2",
-        "./skills/cloud-aws-s3",
-        "./skills/cloud-aws-rds",
-        "./skills/cloud-aws-lambda",
-        "./skills/cloud-azure-vm",
-        "./skills/cloud-azure-storage",
-        "./skills/cloud-azure-sql",
-        "./skills/cloud-aliyun-ecs",
-        "./skills/cloud-aliyun-oss",
-        "./skills/cloud-aliyun-rds",
-        "./skills/cloud-tencent-cvm",
-        "./skills/cloud-tencent-cos",
-        "./skills/cloud-tencent-cdb",
-        "./skills/cloud-huawei-ecs",
-        "./skills/cloud-huawei-obs",
-        "./skills/cloud-huawei-rds"
+        "./skills/database-skills/postgresql",
+        "./skills/database-skills/oracle",
+        "./skills/database-skills/redis",
+        "./skills/database-skills/elasticsearch",
+        "./skills/database-skills/dbeaver"
       ]
     },
     {
@@ -250,8 +404,8 @@
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/internal-comms",
-        "./skills/slack-gif-creator"
+        "./skills/social-skills/internal-comms",
+        "./skills/social-skills/slack-gif-creator"
       ]
     },
     {
@@ -260,18 +414,323 @@
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/course-designer",
-        "./skills/learning-assessor",
-        "./skills/teaching-resource-generator"
+        "./skills/teaching-skills/course-designer",
+        "./skills/teaching-skills/learning-assessor",
+        "./skills/teaching-skills/teaching-resource-generator"
       ]
     },
     {
       "name": "utility-skills",
-      "description": "工具与实用技能集合(1个技能):包含技能创建器,指导如何创建有效的 Agent Skills,扩展 Claude 的能力。帮助 AI 助手和开发者掌握技能设计、技能结构、最佳实践等技能创建技能,支持自定义技能开发。",
+      "description": "工具与实用技能集合(3个技能):包含技能创建器,指导如何创建有效的 Agent Skills,扩展 Claude 的能力;SOP 创建器,指导如何创建标准作业程序(SOP)和复合技能,支持将多个原子技能组合成可靠的业务流程;技能安装器,支持通过自然语言搜索、安装、管理 PartMe 生态中的各种技能包(原子技能和复合技能)。帮助 AI 助手和开发者掌握技能设计、流程编排、SOP 制作、生态管理等实用技能。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/utility-skills/skill-creator",
+        "./skills/utility-skills/skill-sop-creator",
+        "./skills/utility-skills/skill-installer"
+      ]
+    },
+    {
+      "name": "nvm-skills",
+      "description": "Node Version Manager (nvm) 技能(15个):安装、配置、验证、基础用法、默认版本/.nvmrc、全局包、镜像与鉴权、Shell 集成、Docker/CI、卸载、项目元信息、macOS/Linux 故障排查。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/nvm-skills/nvm",
+        "./skills/nvm-skills/nvm-install",
+        "./skills/nvm-skills/nvm-setup",
+        "./skills/nvm-skills/nvm-verify",
+        "./skills/nvm-skills/nvm-usage-basics",
+        "./skills/nvm-skills/nvm-defaults-and-nvmrc",
+        "./skills/nvm-skills/nvm-global-packages",
+        "./skills/nvm-skills/nvm-mirror-and-auth",
+        "./skills/nvm-skills/nvm-shell-integration",
+        "./skills/nvm-skills/nvm-docker-ci",
+        "./skills/nvm-skills/nvm-uninstall",
+        "./skills/nvm-skills/nvm-misc",
+        "./skills/nvm-skills/nvm-project-meta",
+        "./skills/nvm-skills/nvm-troubleshooting-macos",
+        "./skills/nvm-skills/nvm-troubleshooting-linux"
+      ]
+    },
+    {
+      "name": "stitch-skills",
+      "description": "Stitch MCP 扩展技能(28个技能):design-md、mcp、react-components、remotion、shadcn-ui、ui-design-spec、uview/uviewpro/vue 组件等。与 skill-group-mapping 一致。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/stitch-skills/stitch-design-md",
+        "./skills/stitch-skills/stitch-mcp-create-project",
+        "./skills/stitch-skills/stitch-mcp-generate-screen-from-text",
+        "./skills/stitch-skills/stitch-mcp-get-project",
+        "./skills/stitch-skills/stitch-mcp-get-screen",
+        "./skills/stitch-skills/stitch-mcp-list-projects",
+        "./skills/stitch-skills/stitch-mcp-list-screens",
+        "./skills/stitch-skills/stitch-react-components",
+        "./skills/stitch-skills/stitch-remotion",
+        "./skills/stitch-skills/stitch-shadcn-ui",
+        "./skills/stitch-skills/stitch-skill-creator",
+        "./skills/stitch-skills/stitch-ued-guide",
+        "./skills/stitch-skills/stitch-ui-design-spec-bootstrap",
+        "./skills/stitch-skills/stitch-ui-design-spec-element-plus",
+        "./skills/stitch-skills/stitch-ui-design-spec-generator",
+        "./skills/stitch-skills/stitch-ui-design-spec-layui",
+        "./skills/stitch-skills/stitch-ui-design-spec-uview",
+        "./skills/stitch-skills/stitch-ui-design-spec-uviewpro",
+        "./skills/stitch-skills/stitch-ui-design-spec-vant",
+        "./skills/stitch-skills/stitch-ui-design-variants",
+        "./skills/stitch-skills/stitch-ui-designer",
+        "./skills/stitch-skills/stitch-ui-prompt-architect",
+        "./skills/stitch-skills/stitch-uview-components",
+        "./skills/stitch-skills/stitch-uviewpro-components",
+        "./skills/stitch-skills/stitch-vue-bootstrap-components",
+        "./skills/stitch-skills/stitch-vue-element-components",
+        "./skills/stitch-skills/stitch-vue-layui-components",
+        "./skills/stitch-skills/stitch-vue-vant-components"
+      ]
+    },
+    {
+      "name": "speckit-skills",
+      "description": "Spec 驱动开发(13个技能):install、initial、check、constitution、specify、clarify、plan、tasks、implement、baseline、analyze、checklist、taskstoissues。与 GitHub spec-kit 工作流对齐。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/speckit-skills/speckit-install",
+        "./skills/speckit-skills/speckit-initial",
+        "./skills/speckit-skills/speckit-check",
+        "./skills/speckit-skills/speckit-constitution",
+        "./skills/speckit-skills/speckit-specify",
+        "./skills/speckit-skills/speckit-clarify",
+        "./skills/speckit-skills/speckit-plan",
+        "./skills/speckit-skills/speckit-tasks",
+        "./skills/speckit-skills/speckit-implement",
+        "./skills/speckit-skills/speckit-baseline",
+        "./skills/speckit-skills/speckit-analyze",
+        "./skills/speckit-skills/speckit-checklist",
+        "./skills/speckit-skills/speckit-taskstoissues"
+      ]
+    },
+    {
+      "name": "pencil-skills",
+      "description": "Pencil 设计稿与 MCP 技能(28个技能):编排、Stitch 转 Pencil、MCP 原子工具、设计系统 Ant/Bootstrap/Element/Layui/uView/Vant/uCharts/ECharts。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/pencil-skills/pencil",
+        "./skills/pencil-skills/pencil-ui-designer",
+        "./skills/pencil-skills/pencil-design-from-stitch-html",
+        "./skills/pencil-skills/pencil-ui-design-spec-generator",
+        "./skills/pencil-skills/pencil-skill-creator",
+        "./skills/pencil-skills/pencil-mcp-batch-design",
+        "./skills/pencil-skills/pencil-mcp-batch-get",
+        "./skills/pencil-skills/pencil-mcp-open-document",
+        "./skills/pencil-skills/pencil-mcp-get-editor-state",
+        "./skills/pencil-skills/pencil-mcp-get-guidelines",
+        "./skills/pencil-skills/pencil-mcp-get-screenshot",
+        "./skills/pencil-skills/pencil-mcp-get-style-guide",
+        "./skills/pencil-skills/pencil-mcp-get-style-guide-tags",
+        "./skills/pencil-skills/pencil-mcp-get-variables",
+        "./skills/pencil-skills/pencil-mcp-set-variables",
+        "./skills/pencil-skills/pencil-mcp-find-empty-space-on-canvas",
+        "./skills/pencil-skills/pencil-mcp-replace-all-matching-properties",
+        "./skills/pencil-skills/pencil-mcp-search-all-unique-properties",
+        "./skills/pencil-skills/pencil-mcp-snapshot-layout",
+        "./skills/pencil-skills/pencil-ui-design-system-antd",
+        "./skills/pencil-skills/pencil-ui-design-system-bootstrap",
+        "./skills/pencil-skills/pencil-ui-design-system-element",
+        "./skills/pencil-skills/pencil-ui-design-system-layui",
+        "./skills/pencil-skills/pencil-ui-design-system-uview",
+        "./skills/pencil-skills/pencil-ui-design-system-uviewpro",
+        "./skills/pencil-skills/pencil-ui-design-system-vant",
+        "./skills/pencil-skills/pencil-ui-design-system-ucharts",
+        "./skills/pencil-skills/pencil-ui-design-system-echarts"
+      ]
+    },
+    {
+      "name": "openspec-skills",
+      "description": "OpenSpec Spec 驱动开发(15个技能):install、initial、update、explore、new、continue、ff、apply、verify、archive、sync、bulk-archive、onboard、schema、config。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/openspec-skills/openspec-install",
+        "./skills/openspec-skills/openspec-initial",
+        "./skills/openspec-skills/openspec-update",
+        "./skills/openspec-skills/openspec-explore",
+        "./skills/openspec-skills/openspec-new",
+        "./skills/openspec-skills/openspec-continue",
+        "./skills/openspec-skills/openspec-ff",
+        "./skills/openspec-skills/openspec-apply",
+        "./skills/openspec-skills/openspec-verify",
+        "./skills/openspec-skills/openspec-archive",
+        "./skills/openspec-skills/openspec-sync",
+        "./skills/openspec-skills/openspec-bulk-archive",
+        "./skills/openspec-skills/openspec-onboard",
+        "./skills/openspec-skills/openspec-schema",
+        "./skills/openspec-skills/openspec-config"
+      ]
+    },
+    {
+      "name": "tauri-skills",
+      "description": "Tauri 跨平台桌面/移动应用开发(52个技能):核心、系统、网络、移动、数据、UI、安全等。",
+      "source": "./",
+      "strict": false,
+      "skills": [
+        "./skills/tauri-skills/tauri",
+        "./skills/tauri-skills/tauri-scaffold",
+        "./skills/tauri-skills/tauri-setup",
+        "./skills/tauri-skills/tauri-config",
+        "./skills/tauri-skills/tauri-build",
+        "./skills/tauri-skills/tauri-app-develop",
+        "./skills/tauri-skills/tauri-app-creator",
+        "./skills/tauri-skills/tauri-app-frontend-selection",
+        "./skills/tauri-skills/tauri-app-planning",
+        "./skills/tauri-skills/tauri-framework-upgrade",
+        "./skills/tauri-skills/tauri-concept",
+        "./skills/tauri-skills/tauri-app-cli",
+        "./skills/tauri-skills/tauri-app-clipboard",
+        "./skills/tauri-skills/tauri-app-file-system",
+        "./skills/tauri-skills/tauri-app-process",
+        "./skills/tauri-skills/tauri-app-shell",
+        "./skills/tauri-skills/tauri-app-os-info",
+        "./skills/tauri-skills/tauri-app-dialog",
+        "./skills/tauri-skills/tauri-app-notification",
+        "./skills/tauri-skills/tauri-app-global-shortcut",
+        "./skills/tauri-skills/tauri-app-autostart",
+        "./skills/tauri-skills/tauri-app-deep-linking",
+        "./skills/tauri-skills/tauri-app-single-instance",
+        "./skills/tauri-skills/tauri-app-system-tray",
+        "./skills/tauri-skills/tauri-app-window-menu",
+        "./skills/tauri-skills/tauri-app-logging",
+        "./skills/tauri-skills/tauri-app-http-client",
+        "./skills/tauri-skills/tauri-app-websocket",
+        "./skills/tauri-skills/tauri-app-upload",
+        "./skills/tauri-skills/tauri-app-localhost",
+        "./skills/tauri-skills/tauri-ipc",
+        "./skills/tauri-skills/tauri-app-sidecar-nodejs",
+        "./skills/tauri-skills/tauri-mobile",
+        "./skills/tauri-skills/tauri-app-nfc",
+        "./skills/tauri-skills/tauri-app-biometric",
+        "./skills/tauri-skills/tauri-app-barcode-scanner",
+        "./skills/tauri-skills/tauri-app-haptics",
+        "./skills/tauri-skills/tauri-app-geolocation",
+        "./skills/tauri-skills/tauri-app-store",
+        "./skills/tauri-skills/tauri-app-sql",
+        "./skills/tauri-skills/tauri-app-persisted-scope",
+        "./skills/tauri-skills/tauri-app-stronghold",
+        "./skills/tauri-skills/tauri-window",
+        "./skills/tauri-skills/tauri-app-opener",
+        "./skills/tauri-skills/tauri-app-splashscreen",
+        "./skills/tauri-skills/tauri-app-wasm",
+        "./skills/tauri-skills/tauri-app-window-state",
+        "./skills/tauri-skills/tauri-app-positioner",
+        "./skills/tauri-skills/tauri-security",
+        "./skills/tauri-skills/tauri-framework-security",
+        "./skills/tauri-skills/tauri-app-plugin-permissions"
+      ]
+    },
+    {
+      "name": "t2ui-skills",
+      "description": "TUI / uView 组件与 PRD 描述技能(97个技能):tui 组件、prd-to-descriptions 等。",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/skill-creator"
+        "./skills/t2ui-skills/tui-prd-to-descriptions",
+        "./skills/t2ui-skills/tui-04x",
+        "./skills/t2ui-skills/tui-action-sheet",
+        "./skills/t2ui-skills/tui-alert-tips",
+        "./skills/t2ui-skills/tui-avatar",
+        "./skills/t2ui-skills/tui-avatar-cropper",
+        "./skills/t2ui-skills/tui-back-top",
+        "./skills/t2ui-skills/tui-badge",
+        "./skills/t2ui-skills/tui-button",
+        "./skills/t2ui-skills/tui-calendar",
+        "./skills/t2ui-skills/tui-card",
+        "./skills/t2ui-skills/tui-cell",
+        "./skills/t2ui-skills/tui-changelog",
+        "./skills/t2ui-skills/tui-chat-group",
+        "./skills/t2ui-skills/tui-checkbox",
+        "./skills/t2ui-skills/tui-circle-progress",
+        "./skills/t2ui-skills/tui-collapse",
+        "./skills/t2ui-skills/tui-color",
+        "./skills/t2ui-skills/tui-common",
+        "./skills/t2ui-skills/tui-config-provider",
+        "./skills/t2ui-skills/tui-count-down",
+        "./skills/t2ui-skills/tui-count-to",
+        "./skills/t2ui-skills/tui-divider",
+        "./skills/t2ui-skills/tui-download-setting",
+        "./skills/t2ui-skills/tui-dropdown",
+        "./skills/t2ui-skills/tui-empty",
+        "./skills/t2ui-skills/tui-fab",
+        "./skills/t2ui-skills/tui-feature",
+        "./skills/t2ui-skills/tui-field",
+        "./skills/t2ui-skills/tui-form",
+        "./skills/t2ui-skills/tui-front-ui",
+        "./skills/t2ui-skills/tui-full-screen",
+        "./skills/t2ui-skills/tui-gap",
+        "./skills/t2ui-skills/tui-grid",
+        "./skills/t2ui-skills/tui-icon",
+        "./skills/t2ui-skills/tui-image",
+        "./skills/t2ui-skills/tui-index-list",
+        "./skills/t2ui-skills/tui-input",
+        "./skills/t2ui-skills/tui-install",
+        "./skills/t2ui-skills/tui-intro",
+        "./skills/t2ui-skills/tui-keyboard",
+        "./skills/t2ui-skills/tui-lazy-load",
+        "./skills/t2ui-skills/tui-layout",
+        "./skills/t2ui-skills/tui-line",
+        "./skills/t2ui-skills/tui-line-progress",
+        "./skills/t2ui-skills/tui-link",
+        "./skills/t2ui-skills/tui-load-more",
+        "./skills/t2ui-skills/tui-loading",
+        "./skills/t2ui-skills/tui-loading-popup",
+        "./skills/t2ui-skills/tui-mask",
+        "./skills/t2ui-skills/tui-message-input",
+        "./skills/t2ui-skills/tui-modal",
+        "./skills/t2ui-skills/tui-navbar",
+        "./skills/t2ui-skills/tui-no-network",
+        "./skills/t2ui-skills/tui-notice-bar",
+        "./skills/t2ui-skills/tui-number-box",
+        "./skills/t2ui-skills/tui-npm-setting",
+        "./skills/t2ui-skills/tui-nvue",
+        "./skills/t2ui-skills/tui-page-composer",
+        "./skills/t2ui-skills/tui-pagination",
+        "./skills/t2ui-skills/tui-picker",
+        "./skills/t2ui-skills/tui-popup",
+        "./skills/t2ui-skills/tui-quickstart",
+        "./skills/t2ui-skills/tui-radio",
+        "./skills/t2ui-skills/tui-rate",
+        "./skills/t2ui-skills/tui-read",
+        "./skills/t2ui-skills/tui-read-more",
+        "./skills/t2ui-skills/tui-root-portal",
+        "./skills/t2ui-skills/tui-safe-area-inset",
+        "./skills/t2ui-skills/tui-search",
+        "./skills/t2ui-skills/tui-section",
+        "./skills/t2ui-skills/tui-select",
+        "./skills/t2ui-skills/tui-setting",
+        "./skills/t2ui-skills/tui-skeleton",
+        "./skills/t2ui-skills/tui-slider",
+        "./skills/t2ui-skills/tui-steps",
+        "./skills/t2ui-skills/tui-sticky",
+        "./skills/t2ui-skills/tui-subsection",
+        "./skills/t2ui-skills/tui-swipe-action",
+        "./skills/t2ui-skills/tui-swiper",
+        "./skills/t2ui-skills/tui-switch",
+        "./skills/t2ui-skills/tui-tabbar",
+        "./skills/t2ui-skills/tui-table",
+        "./skills/t2ui-skills/tui-tabs",
+        "./skills/t2ui-skills/tui-tabs-swiper",
+        "./skills/t2ui-skills/tui-tag",
+        "./skills/t2ui-skills/tui-text",
+        "./skills/t2ui-skills/tui-textarea",
+        "./skills/t2ui-skills/tui-time-line",
+        "./skills/t2ui-skills/tui-toast",
+        "./skills/t2ui-skills/tui-top-tips",
+        "./skills/t2ui-skills/tui-transition",
+        "./skills/t2ui-skills/tui-uni-modules-setting",
+        "./skills/t2ui-skills/tui-upload",
+        "./skills/t2ui-skills/tui-verification-code",
+        "./skills/t2ui-skills/tui-vuex-detail",
+        "./skills/t2ui-skills/tui-waterfall"
       ]
     }
   ]

+ 10 - 5
AGENTS.md

@@ -6,17 +6,22 @@
 
 面向 Claude.ai 与 Claude Code 的一组技能集合,用于处理与 Vercel 部署相关的工作。技能是经过打包的说明与脚本,用于扩展 Claude 的能力。
 
+本仓库为全链路**阶段映射**与**基础技能**的主入口;关联 t2ui-skills、stitch-skills、pencil-skills、tauri-skills 等。阶段与技能映射见 [docs/pipeline-stage-to-skills.md](docs/pipeline-stage-to-skills.md),生态总览见 [docs/skills-ecosystem.md](docs/skills-ecosystem.md)。已整合 Spec Kit(speckit-*)技能,见 [docs/speckit-agent-skills.md](docs/speckit-agent-skills.md)。
+
 ## 创建新技能
 
 ### 目录结构
 
+本仓库技能路径为 **`skills/<组目录>/<技能名>/`**(例如 `skills/vue-skills/vue3/`、`skills/threejs-skills/threejs-animation/`),与 `marketplace.json` 中 `skills[]` 路径一致。
+
 ```
 skills/
-  {skill-name}/           # kebab-case directory name
-    SKILL.md              # Required: skill definition
-    scripts/              # Required: executable scripts
-      {script-name}.sh    # Bash scripts (preferred)
-  {skill-name}.zip        # Required: packaged for distribution
+  <group>-skills/         # 组目录,如 vue-skills、tauri-skills、document-skills
+    {skill-name}/         # kebab-case,与 SKILL.md frontmatter name 一致
+      SKILL.md            # 必需
+      examples/           # 可选
+      references/         # 可选
+      scripts/            # 可选
 ```
 
 ### 命名规范

+ 121 - 217
PLATFORM_GUIDE.md

@@ -1,265 +1,169 @@
 # 跨平台使用指南
 
-**full-stack-skills** 不仅可以在 Claude Code 中使用,还可以在其他 AI 平台使用,如 Cursor、Trae、Qoder、CodeBuddy、Windsurf 等。
+`full-stack-skills` 通过 `/adapters` 下的独立 CLI `fskill` 适配多平台运行时。转换器将仓库中的 `skills/<group>/<skill>/` 结构导出为标准 skills 目录,并按平台要求写入对应的项目级或全局级安装路径。
 
-## 支持的平台
+## 适配原则
 
-- **Claude Code** - 原生支持,通过 Marketplace 安装(推荐)
-- **Claude.ai** - 通过 Skills API 使用(付费套餐中部分技能已默认可用)
-- **Cursor** - 转换为 Cursor 自定义指令格式
-- **Trae** - 转换为 Trae 插件格式
-- **Qoder** - 转换为 Qoder Agent 格式
-- **CodeBuddy** - 转换为 CodeBuddy Workflow 格式
-- **Windsurf** - 转换为 Windsurf Cascade Skills 格式
+- **单一输出格式**:统一输出标准 `SKILL.md` 技能目录
+- **单一路径事实源**:平台路径以 `vercel-labs/skills` 兼容矩阵为基线
+- **无专有包装层**:不再生成 Cursor rule、Trae plugin、Qoder agent、CodeBuddy workflow 等非标准包装物
+- **目录即技能**:仅当目录中存在 `SKILL.md` 时才视为可转换技能
+- **支持目录排除**:`skills/pencil-skills/docs` 视为支持文档,不参与转换
 
-## 在 Claude Code 中使用
-
-### 1. 注册 Marketplace
-
-在 Claude Code 中运行以下命令,将本仓库注册为插件市场:
+## 适配器命令
 
 ```bash
-/plugin marketplace add https://github.com/teachingai/full-stack-skills.git
+git clone https://github.com/partme-ai/full-stack-skills.git
+cd full-stack-skills
+npm install -g ./adapters
+fskill --version
+fskill platforms
+fskill audit
+fskill convert --platform all --output ./adapters-output
+fskill install
 ```
 
-或者使用简写形式:
+默认安装命令 `fskill install` 会写入当前项目的 `.agents/skills/`。
+如果只在仓库开发态使用,可进入 `adapters/` 执行 `npm install && npm link`,然后直接运行 `fskill ...`。
 
-```bash
-/plugin marketplace add teachingai/full-stack-skills
-```
+## 命令说明
 
-### 2. 安装插件
+### 1. 查看平台矩阵
 
 ```bash
-# 按技能种类安装(推荐)
-/plugin install development-skills@full-stack-skills
-/plugin install design-skills@full-stack-skills
-/plugin install testing-skills@full-stack-skills
-/plugin install devops-skills@full-stack-skills
-# ... 更多插件请参考 README.md
+fskill platforms
 ```
 
-**注意:** 本仓库按**技能种类**组织插件,而非按岗位划分。如需按岗位使用,请参考 [AGENTS_PROMPT.md](AGENTS_PROMPT.md) 中的角色定义。
-
-详细说明请参考 [README.md](README.md)。
-
-## 在其他平台使用
-
-### 使用适配器工具转换
-
-本仓库提供了自动转换工具,可以将 Agent Skills 转换为不同平台的格式。
-
-#### 快速转换所有平台
+### 2. 审计技能目录
 
 ```bash
-cd adapters
-python convert_all.py ../skills ../adapters-output
+fskill audit
 ```
 
-#### 转换单个平台
+当前仓库审计基线:
 
-**Cursor:**
-```bash
-cd adapters/cursor
-python convert_to_cursor.py --all ../../skills ../../adapters-output/cursor
-```
+- 可转换技能:`421`
+- 缺失 `SKILL.md` 的技能目录:`0`
+- 排除目录:`skills/pencil-skills/docs`
+- 支持平台:`43`
 
-**Trae:**
-```bash
-cd adapters/trae
-python convert_to_trae.py --all ../../skills ../../adapters-output/trae
-```
+### 3. 导出所有平台
 
-**Qoder:**
 ```bash
-cd adapters/qoder
-python convert_to_qoder.py --all ../../skills ../../adapters-output/qoder
+fskill convert --platform all --output ./adapters-output
 ```
 
-**CodeBuddy:**
-```bash
-cd adapters/codebuddy
-python convert_to_codebuddy.py --all ../../skills ../../adapters-output/codebuddy
-```
+### 4. 导出单个平台
 
-**Windsurf:**
 ```bash
-cd adapters/windsurf
-python convert_to_windsurf.py --all ../../skills ../../adapters-output/windsurf
+fskill convert --platform claude-code --output ./adapters-output
 ```
 
-**注意:** 所有转换脚本都需要从对应的子目录运行,或者使用 `convert_all.py` 一次性转换所有平台。
-
-### 输出目录结构
+### 5. 安装到项目目录
 
-转换后的文件将保存在 `adapters-output/` 目录下,按平台分类:
-
-```
-adapters-output/
-├── cursor/
-│   └── .cursor/
-│       └── rules/
-│           ├── vue3.md
-│           ├── react.md
-│           └── ...
-├── trae/
-│   ├── vue3/
-│   │   ├── trae-plugin.json
-│   │   └── SKILL.md
-│   └── ...
-├── qoder/
-│   ├── vue3-agent/
-│   │   ├── qoder-agent-config.json
-│   │   ├── SKILL.md
-│   │   └── vue3_agent.py
-│   └── ...
-├── codebuddy/
-│   ├── vue3/
-│   │   ├── manifest.json
-│   │   ├── workflows/
-│   │   └── skills/
-│   └── ...
-└── windsurf/
-    ├── vue3/
-    │   ├── SKILL.md
-    │   └── ...
-    └── ...
+```bash
+fskill install --platform claude-code --scope project
 ```
 
-## 平台特定说明
-
-### Cursor
-
-Cursor 使用自定义指令(Custom Rules)来扩展 AI 能力。
-
-**使用步骤:**
-1. 运行转换脚本生成 `.cursor/rules/` 目录下的规则文件
-2. 将生成的规则文件复制到你的项目 `.cursor/rules/` 目录
-3. Cursor 会自动加载这些规则
-
-**参考文档:**
-- [Cursor 文档](https://docs.cursor.com/)
-- [适配器说明](adapters/cursor/README.md)
-
-### Trae
-
-Trae 使用插件系统来扩展 AI 能力。
-
-**使用步骤:**
-1. 运行转换脚本生成 Trae 插件格式文件
-2. 在 Trae 中导入插件配置
-3. 激活插件使用
-
-**参考文档:**
-- [Trae 官网](https://trae.ai/)
-- [适配器说明](adapters/trae/README.md)
-
-### Qoder
-
-Qoder 使用 Agent 系统来扩展 AI 能力。
-
-**使用步骤:**
-1. 运行转换脚本生成 Qoder Agent 配置
-2. 在 Qoder 中创建新的 Agent
-3. 导入生成的配置文件
-4. 激活 Agent 使用
-
-**参考文档:**
-- [Qoder 官网](https://qoder.com/)
-- [适配器说明](adapters/qoder/README.md)
-
-### CodeBuddy
-
-CodeBuddy 使用 Workflow 系统来扩展 AI 能力。
-
-**使用步骤:**
-1. 运行转换脚本生成 CodeBuddy Workflow 配置
-2. 在 CodeBuddy 中导入 Workflow
-3. 配置 Workflow 参数
-4. 运行 Workflow
-
-**参考文档:**
-- [CodeBuddy 官网](https://codebuddy.ai/)
-- [适配器说明](adapters/codebuddy/README.md)
-
-### Windsurf
-
-Windsurf 使用 Cascade Skills 系统来扩展 AI 能力。
-
-**使用步骤:**
-1. 运行转换脚本生成 Windsurf Skills 配置
-2. 在 Windsurf 中导入 Skills
-3. 激活 Skills 使用
-
-**参考文档:**
-- [Windsurf 官网](https://windsurf.ai/)
-- [适配器说明](adapters/windsurf/README.md)
-
-## 依赖要求
-
-转换脚本需要以下 Python 包:
+### 6. 安装到全局目录
 
 ```bash
-pip install pyyaml
+fskill install --platform antigravity --scope global
 ```
 
-安装依赖:
+### 7. 干跑预览
 
 ```bash
-cd adapters
-pip install -r requirements.txt
+fskill convert --platform all --output ./adapters-output --dry-run
+fskill install --platform windsurf --scope project --dry-run
 ```
 
-## 验证状态
-
-| 平台 | 转换脚本 | 格式验证 | 平台验证 |
-|------|---------|---------|---------|
-| Cursor | ✅ 完成 | ⚠️ 需要验证 | ⚠️ 需要验证 |
-| Trae | ✅ 完成 | ⚠️ 需要验证 | ⚠️ 需要验证 |
-| Qoder | ✅ 完成 | ⚠️ 需要验证 | ⚠️ 需要验证 |
-| CodeBuddy | ✅ 完成 | ⚠️ 需要验证 | ⚠️ 需要验证 |
-| Windsurf | ✅ 完成 | ⚠️ 需要验证 | ⚠️ 需要验证 |
-
-## 注意事项
-
-⚠️ **重要说明:这些适配器工具为理论性实现,尚未经过实际平台验证。**
-
-- 转换脚本基于平台的一般特性和常见适配模式
-- 生成的配置文件格式可能需要根据实际平台 API 调整
-- **建议在实际使用前查阅目标平台的官方文档并进行测试**
-- 转换脚本会自动提取 `SKILL.md` 中的 frontmatter 和内容
-- 脚本会尝试提取工作流步骤,但可能需要手动调整
-
-## 贡献
-
-如果你验证了某个平台的适配方案,欢迎贡献:
-
-1. 测试转换脚本生成的输出
-2. 在实际平台上验证功能
-3. 报告问题和改进建议
-4. 提交 Pull Request
-
-## 相关资源
-
-- [适配器工具文档](adapters/README.md) - 详细的适配器使用说明
-- [适配器示例](adapters/EXAMPLES.md) - 转换后的示例文件
-- [Agent Skills 规范](https://agentskills.io/) - Agent Skills 官方规范(如链接不可访问,请参考 [Anthropic 官方文档](https://support.claude.com/en/articles/12512198-creating-custom-skills))
-- [项目主文档](README.md) - full-stack-skills 完整文档
-
-## 常见问题
+## 平台矩阵
+
+下表由 `adapters/src/platform-registry.ts` 驱动,CLI 可通过 `fskill platforms --markdown` 输出同一份表格。
+
+| Platform | ID / Aliases | Project Path | Global Path |
+|---|---|---|---|
+| Amp | `amp` | `.agents/skills/` | `~/.config/agents/skills/` |
+| Kimi Code CLI | `kimi-cli` | `.agents/skills/` | `~/.config/agents/skills/` |
+| Replit | `replit` | `.agents/skills/` | `~/.config/agents/skills/` |
+| Universal | `universal` | `.agents/skills/` | `~/.config/agents/skills/` |
+| Antigravity | `antigravity` | `.agents/skills/` | `~/.gemini/antigravity/skills/` |
+| Augment | `augment` | `.augment/skills/` | `~/.augment/skills/` |
+| Claude Code | `claude-code, claude` | `.claude/skills/` | `~/.claude/skills/` |
+| OpenClaw | `openclaw` | `skills/` | `~/.openclaw/skills/` |
+| Cline | `cline` | `.agents/skills/` | `~/.config/agents/skills/` |
+| Warp | `warp` | `.agents/skills/` | `~/.config/agents/skills/` |
+| CodeBuddy | `codebuddy` | `.codebuddy/skills/` | `~/.codebuddy/skills/` |
+| Codex | `codex` | `.agents/skills/` | `~/.codex/skills/` |
+| Command Code | `command-code` | `.commandcode/skills/` | `~/.commandcode/skills/` |
+| Continue | `continue` | `.continue/skills/` | `~/.continue/skills/` |
+| Cortex Code | `cortex` | `.cortex/skills/` | `~/.snowflake/cortex/skills/` |
+| Crush | `crush` | `.crush/skills/` | `~/.config/crush/skills/` |
+| Cursor | `cursor` | `.agents/skills/` | `~/.cursor/skills/` |
+| Deep Agents | `deepagents, deep-agents` | `.agents/skills/` | `~/.deepagents/agent/skills/` |
+| Droid | `droid` | `.factory/skills/` | `~/.factory/skills/` |
+| Gemini CLI | `gemini-cli` | `.agents/skills/` | `~/.gemini/skills/` |
+| GitHub Copilot | `github-copilot, copilot` | `.agents/skills/` | `~/.copilot/skills/` |
+| Goose | `goose` | `.goose/skills/` | `~/.config/goose/skills/` |
+| Junie | `junie` | `.junie/skills/` | `~/.junie/skills/` |
+| iFlow CLI | `iflow-cli` | `.iflow/skills/` | `~/.iflow/skills/` |
+| Kilo Code | `kilo` | `.kilocode/skills/` | `~/.kilocode/skills/` |
+| Kiro CLI | `kiro-cli` | `.kiro/skills/` | `~/.kiro/skills/` |
+| Kode | `kode` | `.kode/skills/` | `~/.kode/skills/` |
+| MCPJam | `mcpjam` | `.mcpjam/skills/` | `~/.mcpjam/skills/` |
+| Mistral Vibe | `mistral-vibe, vibe` | `.vibe/skills/` | `~/.vibe/skills/` |
+| Mux | `mux` | `.mux/skills/` | `~/.mux/skills/` |
+| OpenCode | `opencode` | `.agents/skills/` | `~/.config/opencode/skills/` |
+| OpenHands | `openhands` | `.openhands/skills/` | `~/.openhands/skills/` |
+| Pi | `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
+| Qoder | `qoder` | `.qoder/skills/` | `~/.qoder/skills/` |
+| Qwen Code | `qwen-code` | `.qwen/skills/` | `~/.qwen/skills/` |
+| Roo Code | `roo` | `.roo/skills/` | `~/.roo/skills/` |
+| Trae | `trae` | `.trae/skills/` | `~/.trae/skills/` |
+| Trae CN | `trae-cn` | `.trae/skills/` | `~/.trae-cn/skills/` |
+| Windsurf | `windsurf` | `.windsurf/skills/` | `~/.codeium/windsurf/skills/` |
+| Zencoder | `zencoder` | `.zencoder/skills/` | `~/.zencoder/skills/` |
+| Neovate | `neovate` | `.neovate/skills/` | `~/.neovate/skills/` |
+| Pochi | `pochi` | `.pochi/skills/` | `~/.pochi/skills/` |
+| AdaL | `adal` | `.adal/skills/` | `~/.adal/skills/` |
+
+## 输出目录约定
+
+转换结果统一写入:
+
+```text
+adapters-output/<platform>/<project-path>/<skill-name>/
+```
 
-### Q: 转换后的文件可以直接使用吗?
+示例:
 
-A: 转换脚本生成的配置文件格式可能需要根据实际平台 API 调整。建议在实际使用前查阅目标平台的官方文档并进行测试。
+```text
+adapters-output/claude-code/.claude/skills/react/
+adapters-output/cursor/.agents/skills/react/
+adapters-output/openclaw/skills/react/
+adapters-output/antigravity/.agents/skills/react/
+```
 
-### Q: 如何验证转换是否正确?
+## 安装策略
 
-A: 可以查看 `adapters-output/` 目录下生成的文件,检查格式是否符合目标平台的要求。建议在实际平台上进行功能验证。
+- `fskill install`:默认安装到当前项目的 `.agents/skills/`
+- `--scope project`:安装到当前项目目录下的平台路径
+- `--scope global`:安装到用户主目录下的平台全局路径
+- 默认行为为复制目录
+- 追加 `--link` 时使用符号链接
+- 同名目标目录会被替换,以保证安装结果确定且可重复
 
-### Q: 转换后的技能功能是否完整?
+## 验证建议
 
-A: 转换脚本会尽可能保留原始技能的功能,但某些平台特定的功能可能需要手动调整。建议根据实际需求进行定制。
+- 用 `platforms` 校验平台 ID、别名、项目路径、全局路径
+- 用 `audit` 校验仓库技能数量、排除目录与缺失情况
+- 用 `convert --dry-run` 预览导出目录
+- 用 `install --dry-run` 预览项目级或全局级安装目标
+- 在实际平台中抽查至少一个共享路径平台、一个专属目录平台,以及 Antigravity
 
-### Q: 如何贡献新的平台适配器?
+## 相关文档
 
-A: 欢迎创建新的适配器脚本。可以参考现有适配器的实现方式,并遵循 Agent Skills 规范。完成后请提交 Pull Request。
+- [adapters/README.md](adapters/README.md) - 适配器命令与实现说明
+- [README.md](README.md) - 仓库主文档
+- [docs/repository-map.md](docs/repository-map.md) - 仓库结构与发布面快照

+ 410 - 377
README.md

@@ -2,26 +2,102 @@
 
 # Full Stack Skills(Alpha)
 
-**基于 Agent Skills 规范的全栈技能集合**
+**基于 Agent Skills 规范的分组式全栈技能仓库**
 
 ![Version](https://img.shields.io/badge/Version-0.0.1-red)
 ![License](https://img.shields.io/badge/License-Apache%202.0-green)
-![Skills](https://img.shields.io/badge/Skills-171-orange)
-![Plugins](https://img.shields.io/badge/Plugins-12-brightgreen)
+![Skill Docs](https://img.shields.io/badge/SKILL.md-421-orange)
+![Skill Groups](https://img.shields.io/badge/Groups-42-blue)
+![Marketplace Plugins](https://img.shields.io/badge/Plugins-40-brightgreen)
 
 </div>
 
 ## 📖 简介
 
-**Full-Stack-Skills(Alpha)** 是一个开源的 Agent Skills 集合,严格遵循 Agent Skills 规范,提供 **171 个技能集合**,按**技能种类**组织为 **12 个插件类别**,覆盖软件开发全生命周期。在 AI 时代,它赋能全栈独立开发者,通过 AI 助手掌握专业技能,实现**"一个人 = 一个公司"**的愿景,让独立开发者能够独立完成从产品设计、开发、测试到部署运维的全流程工作。
+**Full-Stack-Skills(Alpha)** 是一个开源的 Agent Skills 仓库,面向 Claude Code、Claude.ai 与兼容 Agent Skills 生态的平台。当前仓库采用 `skills/<group>/<skill>/SKILL.md` 的分组式结构,覆盖产品、设计、前端、后端、测试、运维、文档、Spec 驱动开发等全链路场景。
 
-> **⚠️ 注意:** 当前项目处于 Alpha 阶段,尚未经过严格测试,还在自测中。欢迎反馈问题和建议。
+> **⚠️ 注意:** 当前文档口径以仓库内 `skills/` 实际目录和 `.claude-plugin/marketplace.json` 为准。
 
-> **说明:** 本仓库合并了 Anthropic 的示例技能和 Agent Skills 的技能集合,提供各种实用的 AI 技能,可以在 Claude Code、Claude.ai 和 API 中使用。关于 Agent Skills 标准,请参见 [agentskills.io](http://agentskills.io)。
+> **说明:** 当前仓库内共有 **42 个技能组目录**、**421 个 `SKILL.md` 文件**;其中 Marketplace 当前发布 **40 个插件**、共 **410 条技能路径**。未进入 Marketplace 的仓库内技能组为 `threejs-skills` 与 `vscode-skills`。
+
+## ⚡ 5 分钟安装与转换示例
+
+如果你只想尽快把仓库里的 skills 安装到本地项目或其它平台,按下面的最短路径执行即可。
+
+### 1. 安装 `fskill`
+
+```bash
+git clone https://github.com/partme-ai/full-stack-skills.git
+cd full-stack-skills
+npm install -g ./adapters
+fskill --version
+```
+
+### 2. 查看平台与审计仓库
+
+```bash
+fskill platforms
+fskill audit
+```
+
+### 3. 默认安装到当前项目 `.agents/skills/`
+
+```bash
+mkdir demo-project && cd demo-project
+fskill install --skills-dir ../full-stack-skills/skills
+```
+
+这条命令会把 skills 安装到当前项目的 `.agents/skills/`,适用于 `amp`、`kimi-cli`、`replit`、`universal`、`cursor`、`codex`、`cline`、`warp`、`opencode` 等标准路径兼容平台。
+
+### 4. 安装到 Cursor
+
+```bash
+fskill install --platform cursor --scope project --skills-dir ../full-stack-skills/skills
+```
+
+- **项目级路径**:`.agents/skills/`
+- **全局路径**:`~/.cursor/skills/`
+
+如需安装到 Cursor 全局目录:
+
+```bash
+fskill install --platform cursor --scope global --skills-dir ./skills
+```
+
+### 5. 导出全部平台目录
+
+```bash
+cd full-stack-skills
+fskill convert --platform all --output ./adapters-output
+```
+
+导出结果会按平台写入:
+
+```text
+adapters-output/<platform>/<project-path>/<skill-name>/
+```
+
+### 6. 常用场景
+
+```bash
+# 安装到 Claude Code 项目目录
+fskill install --platform claude-code --scope project --skills-dir ./skills
+
+# 安装到 Antigravity 全局目录
+fskill install --platform antigravity --scope global --skills-dir ./skills
+
+# 只安装指定 skill
+fskill install --platform cursor --scope global --skills-dir ./skills --skill react --skill vue3
+```
+
+更多适配器细节请直接查看:
+
+- [平台适配器工具](adapters/README.md)
+- [跨平台使用指南](PLATFORM_GUIDE.md)
 
 ## 什么是 Skills?
 
-Skills 是由说明、脚本和资源组成的文件夹,Claude 会按需动态加载它们,以提升在特定任务上的表现。Skills 用于以可复用的方式教会 Claude 完成具体工作,例如:按你公司的品牌规范创建文档、用你组织的既定流程分析数据,或自动化个人任务。
+Skills 是由说明、脚本和资源组成的文件夹,Claude 会按需动态加载它们,以提升在特定任务上的表现。Skills 用于以可复用的方式教会 Claude 完成具体工作,例如:按团队规范创建文档、执行特定技术流程、沉淀设计系统知识,或自动化重复性工程任务。
 
 ### 更多信息
 
@@ -31,125 +107,165 @@ Skills 是由说明、脚本和资源组成的文件夹,Claude 会按需动态
 - [用 Agent Skills 为现实世界装备智能体](https://anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
 - [Agent Skills 规范](https://agentskills.io/)
 
+### 各平台 Agent Skills 文档
+
+- Antigravity Agent Skills: https://antigravity.google/docs/skills
+- Claude Agent Skills: https://code.claude.com/docs/en/skills
+- Cursor Agent Skills: https://cursor.com/cn/docs/context/skills
+- Codex Agent Skills: https://developers.openai.com/codex/skills
+- Codex Agent Skills (Create Skill): https://developers.openai.com/codex/skills/create-skill
+- Codebuddy Agent Skills: https://www.codebuddy.ai/docs/zh/ide/Features/Skills
+- Qoder Agent Skills: https://docs.qoder.com/extensions/skills
+- Trae Agent Skills: https://docs.trae.ai/ide/skills?_lang=en
+
 ## 关于本仓库
 
-**full-stack-skills** 是一个面向**期望成为全栈技能人才的群体**的开源技能集合,严格遵循 [Agent Skills 规范](https://agentskills.io/),按**技能种类**组织技能库,而非按岗位划分。
+**full-stack-skills** 是一个面向团队与独立开发者的开源技能仓库与 Marketplace 发布源。它不再采用早期的少量大类聚合方式,而是按技能组进行目录拆分与发布管理。
 
-### ✨ 核心特性
+### 📊 仓库快照
+
+| 指标 | 当前值 |
+|---|---:|
+| `skills/` 下技能组目录 | 42 |
+| 仓库内 `SKILL.md` 文件 | 421 |
+| Marketplace 插件数 | 40 |
+| Marketplace 技能路径数 | 410 |
+| 仓库内未发布技能组 | 2 |
 
-#### 1. 开源免费
-- **Apache 2.0 许可证**:所有技能采用 Apache 2.0 许可证,完全开源
-- **规范标准**:严格遵循 Agent Skills 规范,确保技能质量和兼容性
-- **持续更新**:社区驱动,持续添加新技能和改进现有技能
+### ✨ 核心特性
 
-#### 2. 全栈覆盖
-- **171 个技能集合**:覆盖前端、后端、移动端、数据库、测试、DevOps、云平台、设计等全栈开发领域
-- **12 个插件类别**:按技能种类组织,而非按岗位划分,便于灵活组合使用
-- **跨平台支持**:支持 Claude Code、Claude.ai、Claude API 及其他 AI 平台
+#### 1. 分组式组织
+- **42 个技能组目录**:按领域、框架和工作流拆分,便于维护与扩展
+- **40 个 Marketplace 插件**:按技能组发布,便于按需安装与组合使用
+- **421 个 `SKILL.md` 文件**:沉淀可复用的 Agent Skills 资产
 
-#### 3. AI 赋能
-- **智能识别**:Claude 会根据技能描述自动判断何时使用该技能
-- **即插即用**:安装插件后,只需提到技能名称即可使用
-- **专业指导**:每个技能都包含详细的官方文档链接和使用示例
+#### 2. 全链路覆盖
+- **前端与 UI**:Vue、React、Angular、Svelte、各类 UI 组件库与构建工具
+- **后端与跨端**:Spring、Node.js、Python、Go、Electron、Tauri、UniApp、Flutter
+- **工程化与交付**:测试、DevOps、Docker、数据库、nvm、Spec 驱动开发
+- **设计与文档**:Figma、流程图、OCR、Mermaid、PlantUML、Pencil、Stitch、T2UI
 
-#### 4. 灵活组织
-- **按技能种类组织**:12 个插件类别,可按需安装
-- **独立技能**:每个技能自包含,可单独使用
-- **跨平台适配**:提供适配器工具,支持多种 AI 平台
+#### 3. 工程友好
+- **统一规范**:严格遵循 Agent Skills 规范
+- **结构清晰**:统一使用 `SKILL.md`、`examples/`、`references/`、`scripts/`、`assets/` 等结构
+- **跨平台适配**:提供 TypeScript 标准转换器,覆盖 43 个平台并统一输出标准 skills 目录
 
 ### 技能组织方式
 
-本仓库的技能按**技能种类**分为 12 个插件类别:
+当前仓库按**技能组**组织,核心分布如下:
 
-- **开发类**:前端开发(Vue、React、Angular)、后端开发(Spring、Node.js、Python、Go)、移动端开发(UniApp、React Native、Flutter)、开发工具
-- **设计类**:UI设计工具、AI设计工具、原型工具
-- **文档类**:文档生成、文档处理、图表绘制(Mermaid、PlantUML)
-- **架构类**:DDD、微服务、事件驱动、六边形架构、整洁架构、COLA
-- **测试类**:单元测试、集成测试、E2E测试、移动端测试
-- **运维类**:CI/CD、容器化、IaC
-- **数据库类**:关系型数据库、NoSQL数据库、数据库工具
-- **云平台类**:AWS、Azure、阿里云、腾讯云、华为云
-- **其他**:社交协作、教学教育、工具技能
+- **前端与 UI**:`vue-skills`、`react-skills`、`angular-skills`、`svelte-skills`、`build-skills`、`vue-ui-skills`、`antd-skills`、`uview-skills`、`avue-skills`
+- **后端与跨端开发**:`spring-skills`、`nodejs-skills`、`python-skills`、`go-skills`、`electron-skills`、`tauri-skills`、`uniapp-skills`、`flutter-skills`、`mobile-native-skills`、`cocos-skills`、`chart-skills`
+- **工程化与架构**:`dev-utils-skills`、`ddd-skills`、`testing-skills`、`devops-skills`、`docker-skills`、`database-skills`、`nvm-skills`
+- **设计、文档与流程**:`design-skills`、`document-skills`、`ocrmypdf-skills`、`drawio-skills`、`ascii-skills`
+- **Spec 与设计生态**:`speckit-skills`、`openspec-skills`、`t2ui-skills`、`stitch-skills`、`pencil-skills`
+- **通用支持**:`social-skills`、`teaching-skills`、`utility-skills`
 
-每个技能都自包含在单独的文件夹中,并包含一个 `SKILL.md` 文件,里面有 Claude 使用的说明和元数据。你可以浏览这些技能来获取灵感,或理解不同的模式与实现方式。
+### 能力覆盖矩阵
+
+| 领域 | 代表技能组 | 覆盖重点 |
+|---|---|---|
+| 前端与 UI | `vue-skills`、`react-skills`、`angular-skills`、`svelte-skills`、`antd-skills`、`vue-ui-skills`、`build-skills` | 框架开发、组件库、构建体系、界面实现 |
+| 服务端与跨端 | `spring-skills`、`nodejs-skills`、`python-skills`、`go-skills`、`electron-skills`、`tauri-skills`、`uniapp-skills`、`flutter-skills` | 服务开发、桌面应用、移动与混合交付 |
+| 工程化与交付 | `dev-utils-skills`、`ddd-skills`、`testing-skills`、`devops-skills`、`docker-skills`、`database-skills`、`nvm-skills` | 脚手架、架构模式、测试体系、交付与运维 |
+| 设计与文档 | `design-skills`、`document-skills`、`ocrmypdf-skills`、`drawio-skills`、`ascii-skills` | 设计执行、文档处理、OCR、图表与文本可视化 |
+| Spec 与设计协同 | `speckit-skills`、`openspec-skills`、`t2ui-skills`、`stitch-skills`、`pencil-skills` | Spec 驱动交付、界面生成、设计系统协作 |
+| 通用支持 | `social-skills`、`teaching-skills`、`utility-skills` | 沟通协作、教学资源、通用工具能力 |
 
-本仓库中的许多技能是开源的(Apache 2.0)。我们还在 [`skills/docx`](skills/docx)、[`skills/pdf`](skills/pdf)、[`skills/pptx`](skills/pptx) 和 [`skills/xlsx`](skills/xlsx) 子目录中包含了用于支撑 [Claude 文档能力](https://www.anthropic.com/news/create-files) 的文档创建与编辑技能。这些技能是"可查看源码"的(source-available),但并非开源;我们希望将其作为更复杂技能的参考示例,因为它们已在生产级 AI 应用中实际使用。
+### 当前发布面说明
+
+- `threejs-skills` 当前在仓库中包含 18 个技能,但未进入 Marketplace 发布面。
+- `vscode-skills` 当前在仓库中包含 4 个技能,但未进入 Marketplace 发布面。
+- `document-skills` 当前目录中有 5 个技能,而 Marketplace 仍引用 9 个条目,其中 `docx`、`pptx`、`pdf`、`xlsx` 为缺失目录引用。
+- `tauri-skills` 当前目录中有 52 个技能,而 Marketplace 当前发布 51 个条目;`tauri-app-updater` 目前仅存在于仓库目录中。
+
+### 阅读路径建议
+
+- **先理解仓库全貌**:先阅读本 README 与 `docs/repository-map.md`,快速掌握目录结构、发布面和当前差异。
+- **按技能组导航**:如果你关心某一技术域,直接从 `docs/skill-group-mapping.md` 与对应 `skills/<group>-skills/` 目录进入。
+- **按研发流程导航**:如果你关心需求、设计、开发、测试、交付的串联关系,优先阅读 `docs/pipeline-stage-to-skills.md`。
+- **按设计生态导航**:如果你关注界面生成、设计系统与 Spec 驱动协作,优先阅读 `stitch-skills`、`pencil-skills`、`t2ui-skills`、`speckit-skills`、`openspec-skills`。
+
+### 技能生态与主文档入口
+
+本仓库提供全链路**阶段→技能**映射,以及面向 Spec 驱动开发、界面设计、全栈开发、测试与交付的基础技能集合。请优先参考以下文档:
+
+- [docs/repository-map.md](docs/repository-map.md)
+- [docs/skill-group-mapping.md](docs/skill-group-mapping.md)
+- [docs/pipeline-stage-to-skills.md](docs/pipeline-stage-to-skills.md)
+- [docs/skills-ecosystem.md](docs/skills-ecosystem.md)
 
 ### 🎯 核心设计理念
 
 #### **技能标准化**
-- **Agent Skills 规范**:严格遵循 [Agent Skills 规范](https://agentskills.io/),确保技能质量和兼容性
-- **统一格式**:所有技能采用统一的 Markdown 格式和 YAML Frontmatter 元数据
-- **渐进式披露**:通过 `SKILL.md`、`examples/`、`templates/`、`api/` 等目录实现渐进式信息披露
-
-#### **按技能种类组织**
-- **灵活组合**:按技能种类而非岗位划分,便于灵活组合使用
-- **独立技能**:每个技能自包含,可单独使用
-- **插件化**:12 个插件类别,可按需安装
+- **Agent Skills 规范**:严格遵循 [Agent Skills 规范](https://agentskills.io/)
+- **统一格式**:统一采用 `SKILL.md` 与结构化子目录
+- **渐进式披露**:通过 `examples/`、`references/`、`scripts/`、`assets/` 承载增量内容
 
-#### **全栈覆盖**
-- **171 个技能**:覆盖前端、后端、移动端、数据库、测试、DevOps、云平台、设计等全栈开发领域
-- **跨平台支持**:支持 Claude Code、Claude.ai、Claude API 及其他 AI 平台
-- **持续更新**:社区驱动,持续添加新技能和改进现有技能
+#### **按组发布**
+- **目录与发布面解耦**:目录结构以 `skills/` 为准,发布面以 Marketplace 为准
+- **灵活组合**:按技能组安装,不绑定单一岗位模型
+- **可扩展**:支持在仓库内继续引入未发布技能组
 
-#### **AI 赋能**
-- **智能识别**:Claude 会根据技能描述自动判断何时使用该技能
-- **即插即用**:安装插件后,只需提到技能名称即可使用
-- **专业指导**:每个技能都包含详细的官方文档链接和使用示例
+#### **面向交付**
+- **覆盖需求到部署**:支持从需求、设计到研发、测试、交付的全过程
+- **支持多生态协作**:兼容 T2UI、Stitch、Pencil、Tauri、OpenSpec、SpecKit 等流程
+- **适合团队沉淀**:可作为技能资产库与内部标准库使用
 
 ### 📦 项目定位
 
-**Full-Stack-Skills** 是面向**期望成为全栈技能人才的群体**的开源技能市场,旨在:
+**Full-Stack-Skills** 是一个以实际技能目录为核心、以 Marketplace 为发布面的技能基础设施仓库,适用于:
 
-- **统一技能库**:为全栈开发者提供统一的技能集合,降低学习成本
-- **规范标准**:严格遵循 Agent Skills 规范,确保技能质量和兼容性
-- **灵活组合**:按技能种类组织,可根据需求灵活组合使用
-- **技术栈统一**:覆盖主流技术栈,统一技能格式和文档结构
+- 团队内部技能资产沉淀
+- Claude Code Marketplace 发布
+- Agent Skills 设计参考与模板复用
+- Spec 驱动研发与设计协作流程落地
 
 ### 🏗️ 项目架构
 
-**Full-Stack-Skills 技能组织结构**:
+**当前仓库结构**:
 
-```
+```text
 full-stack-skills/
 ├── .claude-plugin/
-│   └── marketplace.json          # 插件市场配置
-├── skills/                       # 技能目录
-│   ├── vue2/                     # 单个技能目录
-│   │   ├── SKILL.md              # 技能主文档
-│   │   ├── examples/             # 示例文件
-│   │   ├── templates/            # 模板文件
-│   │   ├── api/                  # API 参考
-│   │   └── LICENSE.txt           # 许可证
-│   ├── vue3/
-│   ├── react/
-│   └── ...                       # 171 个技能
-├── adapters/                     # 跨平台适配器
-│   ├── cursor/                   # Cursor 适配器
-│   ├── trae/                     # Trae 适配器
+│   └── marketplace.json          # Marketplace 配置
+├── adapters/                     # TypeScript 标准转换器与平台路径注册表
+├── agents/                       # 代理角色与编排入口
+├── bundles/                      # 打包与聚合产物
+├── dist/                         # 分发产物
+├── docs/                         # 目录映射、阶段映射、生态说明
+├── media/                        # 截图与展示素材
+├── skills/                       # 技能主目录(按组拆分)
+│   ├── vue-skills/
+│   │   └── vue3/
+│   │       └── SKILL.md
+│   ├── react-skills/
+│   ├── spring-skills/
+│   ├── tauri-skills/
 │   └── ...
-├── ROLE_DEFINITIONS.md           # 角色定义
-├── AGENTS_PROMPT.md              # 智能体提示词
+├── spec/                         # 规范与规格说明
+├── template/                     # 技能模板
+├── tools/                        # 辅助工具
+├── AGENTS.md                     # 仓库级 Agent 约束
 └── README.md                     # 项目说明
 ```
 
-**插件类别组织**:
+**目录模型说明**:
 
-| 插件类别 | 技能数量 | 说明 |
-|---|---|---|
-| development-skills | 76 | 全栈开发技能集合 |
-| development-skills-utils | 12 | 开发工具技能集合 |
-| design-skills | 16 | 设计技能集合 |
-| document-skills | 10 | 文档处理技能集合 |
-| architecture-skills | 7 | 架构技能集合 |
-| testing-skills | 9 | 测试技能集合 |
-| devops-skills | 9 | 运维技能集合 |
-| database-skills | 8 | 数据库技能集合 |
-| cloud-skills | 16 | 云平台技能集合 |
-| markdown-skills | 1 | Markdown 技能集合 |
-| social-skills | 2 | 社交技能集合 |
-| teaching-skills | 3 | 教学技能集合 |
-| utility-skills | 1 | 工具技能集合 |
+- 本仓库统一采用 `skills/<group>-skills/<skill>/SKILL.md` 作为技能存储模型。
+- `references/` 用于承载较长的技术说明与官方资料,避免 `SKILL.md` 过长。
+- `scripts/` 用于固化可复用的自动化流程,优先替代大段内联命令。
+- `docs/` 用于描述仓库级结构、阶段映射、技能生态与发布状态。
+
+**当前状态**:
+
+| 项目 | 当前值 |
+|---|---:|
+| 技能组目录 | 42 |
+| `SKILL.md` 文件 | 421 |
+| Marketplace 插件 | 40 |
+| Marketplace 技能路径 | 410 |
+| 仓库内未发布技能组 | 2 |
 
 ### 免责声明
 
@@ -161,7 +277,7 @@ full-stack-skills/
 
 - **Claude Code** 或 **Claude.ai**(付费套餐)或 **Claude API**
 - **Git**(用于克隆仓库,可选)
-- **Python 3.7+**(用于跨平台适配器,可选)
+- **Node.js LTS 与 npm**(用于 TypeScript 跨平台转换器,可选)
 
 ### 在 Claude Code 中使用
 
@@ -170,7 +286,7 @@ full-stack-skills/
 在 Claude Code 中运行以下命令,将本仓库注册为 Claude Code 的插件市场:
 
 ```
-/plugin marketplace add https://github.com/teachingai/full-stack-skills.git
+/plugin marketplace add https://github.com/partme-ai/full-stack-skills.git
 ```
 
 ![add_marketplace.png](./media/add_marketplace.png)
@@ -182,7 +298,7 @@ full-stack-skills/
 或者使用简写形式:
 
 ```
-/plugin marketplace add teachingai/full-stack-skills
+/plugin marketplace add partme-ai/full-stack-skills
 # 删除插件
 /plugin marketplace remove full-stack-skills
 ```
@@ -203,19 +319,15 @@ full-stack-skills/
 直接使用命令安装插件:
 
 ```
-# 按技能种类安装(12个插件类别)
-/plugin install development-skills@full-stack-skills
-/plugin install development-skills-utils@full-stack-skills
-/plugin install design-skills@full-stack-skills
-/plugin install document-skills@full-stack-skills
-/plugin install architecture-skills@full-stack-skills
+# 按当前技能组安装示例
+/plugin install vue-skills@full-stack-skills
+/plugin install react-skills@full-stack-skills
+/plugin install spring-skills@full-stack-skills
+/plugin install dev-utils-skills@full-stack-skills
 /plugin install testing-skills@full-stack-skills
-/plugin install devops-skills@full-stack-skills
-/plugin install database-skills@full-stack-skills
-/plugin install cloud-skills@full-stack-skills
-/plugin install social-skills@full-stack-skills
-/plugin install teaching-skills@full-stack-skills
-/plugin install utility-skills@full-stack-skills
+/plugin install tauri-skills@full-stack-skills
+/plugin install t2ui-skills@full-stack-skills
+/plugin install stitch-skills@full-stack-skills
 ```
 
 ![install-development-skills-frontend.png](media/install-development-skills-frontend.png)
@@ -236,23 +348,84 @@ full-stack-skills/
 
 ### 在其他平台使用
 
-这些 skills 也可以在其他 AI 平台使用,如 Cursor、Trae、Qoder、CodeBuddy 等。
+本仓库提供一个 **TypeScript 标准转换器**,将 `skills/<group>/<skill>/` 导出为标准 skills 目录,并按目标平台写入其项目级或全局级路径。转换器不再生成 Cursor rule、Trae plugin、Qoder agent、CodeBuddy workflow 这类平台专有包装物,统一以标准技能目录作为输出。
 
-**详细说明:**
-- [跨平台使用指南](PLATFORM_GUIDE.md) - 完整的平台适配说明
-- [平台适配器工具](adapters/README.md) - 自动转换工具和示例
-- [适配器示例](adapters/EXAMPLES.md) - 转换后的示例文件
+#### 适配器说明
+
+- **命令行名称**:`fskill`
+- **仓库位置**:`adapters/`
+- **输入结构**:仓库内的 `skills/<group>/<skill>/`
+- **输出结构**:标准技能目录 `SKILL.md` + 资源目录
+- **核心命令**:`platforms`、`audit`、`convert`、`install`
+- **默认安装目标**:当前项目 `.agents/skills/`
+- **平台安装方式**:通过 `--platform` 切换目标平台,通过 `--scope project|global` 切换项目级或全局级路径
+- **适配原则**:保留原始技能目录内容,只变更安装路径,不生成平台专有包装文件
+
+#### 适配器工作流
+
+1. 用 `fskill audit` 检查仓库技能是否完整、数量是否正确
+2. 用 `fskill platforms` 查看支持的平台 ID、项目路径和全局路径
+3. 用 `fskill convert --platform <id|all>` 生成可分发的标准输出目录
+4. 用 `fskill install` 或 `fskill install --platform <id>` 直接安装到目标平台目录
+
+#### 常用适配命令
 
-**快速转换:**
 ```bash
-cd adapters
-python convert_all.py ../skills ../adapters-output
+# 查看支持的平台与路径
+fskill platforms
+
+# 审计仓库技能
+fskill audit
+
+# 导出到 Cursor 结构
+fskill convert --platform cursor --output ./adapters-output
+
+# 安装到当前项目的 Cursor 路径
+fskill install --platform cursor --scope project
+
+# 安装到 Cursor 全局路径 ~/.cursor/skills/
+fskill install --platform cursor --scope global
+
+# 默认安装到当前项目 .agents/skills/
+fskill install
 ```
 
+#### Cursor 与其他平台的关系
+
+- **Cursor**:项目级使用 `.agents/skills/`,全局级使用 `~/.cursor/skills/`
+- **Claude Code**:项目级使用 `.claude/skills/`
+- **OpenClaw**:项目级使用 `skills/`
+- **Antigravity**:项目级使用 `.agents/skills/`,全局级使用 `~/.gemini/antigravity/skills/`
+- **其它平台**:全部由 `fskill platforms` 输出的平台注册表统一管理
+
+**安装与执行命令:**
+```bash
+git clone https://github.com/partme-ai/full-stack-skills.git
+cd full-stack-skills
+npm install -g ./adapters
+fskill --version
+fskill platforms
+fskill audit
+fskill convert --platform all --output ./adapters-output
+fskill install
+```
+
+默认情况下,`fskill install` 会把技能安装到当前项目的 `.agents/skills/` 目录;这是标准 Agent Skills 兼容路径。如需其他平台目录,再显式传入 `--platform` 与 `--scope`。
+如果只想在仓库开发态使用,也可以进入 `adapters/` 执行 `npm install && npm link`,随后直接运行 `fskill ...`。
+
+**平台覆盖:**
+- **共享 `.agents/skills/` 路径族**:`amp`、`kimi-cli`、`replit`、`universal`、`antigravity`、`cline`、`warp`、`codex`、`cursor`、`deepagents`、`gemini-cli`、`github-copilot`、`opencode`
+- **专属目录路径族**:`augment`、`claude-code`、`openclaw`、`codebuddy`、`command-code`、`continue`、`cortex`、`crush`、`droid`、`goose`、`junie`、`iflow-cli`、`kilo`、`kiro-cli`、`kode`、`mcpjam`、`mistral-vibe`、`mux`、`openhands`、`pi`、`qoder`、`qwen-code`、`roo`、`trae`、`trae-cn`、`windsurf`、`zencoder`、`neovate`、`pochi`、`adal`
+- **Antigravity 基线**:项目级使用 `.agents/skills/`,全局级使用 `~/.gemini/antigravity/skills/`
+
+**详细文档:**
+- [跨平台使用指南](PLATFORM_GUIDE.md) - 完整平台矩阵、安装路径与执行示例
+- [平台适配器工具](adapters/README.md) - CLI 命令、审计规则、导出与安装说明
+
 ## 📝 核心功能
 
 ### 1. 技能管理
-- **技能分类**:按技能种类组织为 12 个插件类别
+- **技能分类**:按技能组组织,并通过 Marketplace 插件发布
 - **技能搜索**:通过技能名称快速查找所需技能
 - **技能安装**:支持按插件类别批量安装或单独安装技能
 
@@ -260,7 +433,9 @@ python convert_all.py ../skills ../adapters-output
 - **Claude Code**:原生支持,通过插件市场安装
 - **Claude.ai**:支持上传自定义技能
 - **Claude API**:通过 API 使用技能
-- **其他平台**:提供适配器工具,支持 Cursor、Trae、Qoder、CodeBuddy、Windsurf 等
+- **标准目录兼容**:统一导出标准 skills 目录,并按平台路径矩阵安装
+- **43 平台覆盖**:覆盖 `.agents/skills/` 共享路径平台与各类专属目录平台
+- **可审计与可安装**:内置 `platforms`、`audit`、`convert`、`install` 命令
 
 ### 3. 技能创建
 - **规范指导**:提供技能创建规范和最佳实践
@@ -269,6 +444,7 @@ python convert_all.py ../skills ../adapters-output
 
 ### 4. 文档处理
 - **办公文档**:支持 Word、PowerPoint、Excel、PDF 等文档处理
+- **OCR 识别**:支持 OCRmyPDF 扫描件 OCR(100+ 语言、图像处理、优化压缩、批量处理、Python API、多引擎插件)
 - **图表绘制**:支持 Mermaid、PlantUML、Draw.io 等图表绘制
 - **文档协作**:支持多人协作编辑
 
@@ -277,261 +453,95 @@ python convert_all.py ../skills ../adapters-output
 - **项目构建**:支持 DDD 项目构建(单体单模块、单体多模块、微服务)
 - **文档生成**:支持全栈文档生成(14种文档模板)
 
-## 可用插件和技能
-
-本仓库的技能按**技能种类**分为 **12 个插件类别**,共包含 **171 个技能**。
-
----
-
-### 📦 development-skills(全栈开发技能集合)
-
-**安装命令:** `/plugin install development-skills@full-stack-skills`
-
-**技能数量:** 76 个技能
-
-**描述:** 全栈开发技能集合,覆盖前端、后端、移动端、桌面应用全平台开发。帮助 AI 助手掌握全栈开发技能。
-
-#### 前端框架与构建工具
-- **框架:** `vue2`、`vue3`、`react`、`react-hooks`、`nextjs`、`angular`、`svelte`
-- **构建工具:** `vite`、`webpack`、`rollup`、`parcel`、`rspack`
-- **状态管理:** `vue-router`、`vue-router-v3`、`vue-router-v4`、`pinia`、`vuex`、`vuex-vue2`、`redux`
-- **样式工具:** `dart-sass`
-
-#### UI 组件库
-- **Vue 生态:** `element-plus`、`element-plus-vue3`、`ant-design-vue`、`bootstrap-vue3`、`vant-vue3`、`uview-vue2`、`uview-pro-vue3`、`layui-vue3`
-- **React 生态:** `ant-design-react`、`ant-design-mobile`、`ant-design-mini`
-- **其他:** `avue`、`avue-crud`、`avue-form`
-
-#### 桌面应用框架
-- `electron`、`electron-egg`、`tauri`
-
-#### 后端框架
-- **Java 生态:** `spring-boot`、`spring-cloud`、`spring-cloud-alibaba`、`spring-ai`、`spring-ai-alibaba`、`spring-security`、`spring-data-jpa`
-- **Node.js 生态:** `express`、`nestjs`、`koa`、`fastify`
-- **Python 生态:** `django`、`fastapi`、`flask`
-- **Go 生态:** `gin`、`gin-gonic`
-
-#### 移动端开发
-- **跨平台框架:** `uniapp-project-creator`、`uniapp-project`、`uniappx-project-creator`、`uniappx-project`、`react-native`、`react-native-project-creater`、`flutter`、`flutter-project-creater`
-- **原生开发:** `android-kotlin`、`ios-swift`
-- **游戏引擎:** `cocos2d-x`
-- **UniApp 生态:** `uniapp-uview`、`uniappx-uview-pro`、`uniapp-ucharts`、`uniapp-ad`、`uniapp-cloud`、`uniapp-mini-guide`、`uniapp-native-app`、`uniapp-native-plugin`、`uniapp-plugin`
-- **图表组件:** `lime-echart`、`ucharts`、`upgradeLink`
-
----
-
-### 🛠️ development-skills-utils(开发工具技能集合)
+### 6. 仓库治理
+- **目录即事实**:`skills/` 目录代表仓库中的真实技能资产
+- **Marketplace 即发布面**:`.claude-plugin/marketplace.json` 代表对外可安装范围
+- **差异需显式记录**:目录与发布面不一致时,README 与 `docs/repository-map.md` 需要同步说明
+- **结构优先稳定**:新增技能优先归入已有技能组,只有在职责明显独立时才引入新技能组
 
-**安装命令:** `/plugin install development-skills-utils@full-stack-skills`
-
-**技能数量:** 13 个技能
-
-**描述:** 开发工具技能集合,包含代码生成、测试编写、文档构建等基础工具;DDD 项目构建器、项目文档生成、MCP 构建器;Maven 组件检索等。帮助 AI 助手掌握开发工具链和工程化实践。
-
-**技能列表:**
-- `code-generator` - 代码生成器
-- `test-writer` - 测试编写工具
-- `ddd4j-project-creator` - DDD4j 项目创建器(基于 ddd4j-boot,支持单体单模块、单体多模块、微服务架构)
-- `documentation-builder` - 文档构建工具
-- `full-stack-doc` - 全栈文档生成(14种文档模板,覆盖产品到运维全生命周期)
-- `mcp-builder` - MCP 构建器
-- `webapp-testing` - Web 应用测试
-- `frontend-design` - 前端设计工具
-- `web-artifacts-builder` - Web 工件构建器
-- `theme-factory` - 主题工厂
-- `nvm` - Node.js 版本管理
-- `agent-browser` - 浏览器自动化
-- `maven-search` - Maven 组件检索(从 Maven Central Repository 搜索和检索 Maven 依赖)
-
----
-
-### 🎨 design-skills(设计技能集合)
-
-**安装命令:** `/plugin install design-skills@full-stack-skills`
-
-**技能数量:** 16 个技能
-
-**描述:** 设计与创意技能集合,包含专业设计工具、AI 设计工具、创意工具等。帮助 AI 助手掌握 UI/UX 设计、原型设计、AI 绘图等设计技能。
-
-#### 专业设计工具
-- `figma`、`sketch`、`adobe-xd`、`axure`、`modao`、`framer`
-
-#### AI 设计工具
-- `midjourney`、`dalle`、`stable-diffusion`、`runway-ml`、`galileo-ai`、`uizard`、`figma-ai`
-
-#### 创意工具
-- `algorithmic-art`、`brand-guidelines`、`canvas-design`
-
----
-
-### 📄 document-skills(文档处理技能集合)
-
-**安装命令:** `/plugin install document-skills@full-stack-skills`
-
-**技能数量:** 10 个技能
-
-**描述:** 文档处理技能集合,包含办公文档的创建、编辑和处理;文档协作;API 文档生成;流程图和思维导图绘制;Mermaid 和 PlantUML 图表绘制等。帮助 AI 助手掌握文档处理、图表绘制、文档协作等办公自动化技能。
-
-#### 办公文档处理
-- `docx` - Word 文档处理
-- `pptx` - PowerPoint 演示文稿处理
-- `pdf` - PDF 文档处理
-- `xlsx` - Excel 电子表格处理
-
-#### 文档协作与生成
-- `doc-coauthoring` - 文档协作(多人协作编辑)
-- `api-doc-generator` - API 文档生成器
-
-#### 图表绘制工具
-- `drawio-flowchart` - Draw.io 流程图绘制
-- `processon-mindmap` - ProcessOn 思维导图绘制
-- `mermaid` - Mermaid 图表绘制(支持 23 种图表类型)
-- `plantuml` - PlantUML 架构图绘制(支持 UML 和非 UML 图表)
-
----
-
-### 🏗️ architecture-skills(架构技能集合)
-
-**安装命令:** `/plugin install architecture-skills@full-stack-skills`
-
-**技能数量:** 7 个技能
-
-**描述:** 架构技能集合,包含领域驱动设计(DDD)、各种架构模式、架构图绘制工具等。帮助 AI 助手掌握企业级架构设计、领域建模、架构图绘制等架构设计技能。
-
-#### 架构模式
-- `ddd` - 领域驱动设计
-- `ddd-cola` - COLA 架构
-- `ddd-microservices` - DDD 微服务架构
-- `ddd-event-driven` - DDD 事件驱动架构
-- `ddd-hexagonal-architecture` - DDD 六边形架构
-- `ddd-clean-architecture` - DDD 整洁架构
-
-#### 架构图工具
-- `drawio-architecture` - Draw.io 架构图绘制
-
----
-
-### 🧪 testing-skills(测试技能集合)
-
-**安装命令:** `/plugin install testing-skills@full-stack-skills`
-
-**技能数量:** 9 个技能
-
-**描述:** 测试技能集合,包含单元测试框架、E2E 测试工具、移动端测试工具等。帮助 AI 助手掌握单元测试、集成测试、端到端测试、移动端测试等测试技能,提升代码质量和测试覆盖率。
-
-#### 单元测试框架
-- `jest`、`vitest`、`pytest`、`junit`
-
-#### E2E 测试工具
-- `cypress`、`playwright`、`selenium`
-
-#### 移动端测试工具
-- `appium`、`detox`
-
----
-
-### 🚀 devops-skills(运维技能集合)
-
-**安装命令:** `/plugin install devops-skills@full-stack-skills`
-
-**技能数量:** 9 个技能
-
-**描述:** 运维技能集合,包含 CI/CD 工具、容器化和容器编排工具、基础设施即代码(IaC)工具等。帮助 AI 助手掌握 DevOps 实践、自动化部署、容器化、基础设施管理等运维技能。
-
-#### CI/CD 工具
-- `jenkins`、`gitlab-ci`、`github-actions`
-
-#### 容器化与编排
-- `docker`、`docker-compose`、`kubernetes`
-
-#### 基础设施即代码(IaC)
-- `terraform`、`ansible`、`cloudformation`
-
----
-
-### 💾 database-skills(数据库技能集合)
-
-**安装命令:** `/plugin install database-skills@full-stack-skills`
-
-**技能数量:** 8 个技能
-
-**描述:** 数据库技能集合,包含关系型数据库、NoSQL 数据库、搜索引擎、数据库管理工具等。帮助 AI 助手掌握数据库设计、SQL 优化、数据存储、数据检索等数据库技能。
-
-#### 关系型数据库
-- `mysql`、`postgresql`、`oracle`
-
-#### NoSQL 数据库与搜索引擎
-- `mongodb`、`redis`、`elasticsearch`
-
-#### 数据库管理工具
-- `navicat`、`dbeaver`
-
----
-
-### ☁️ cloud-skills(云平台技能集合)
-
-**安装命令:** `/plugin install cloud-skills@full-stack-skills`
-
-**技能数量:** 16 个技能
-
-**描述:** 云平台技能集合,包含 AWS、Azure、阿里云、腾讯云、华为云等主流云平台的核心服务。帮助 AI 助手掌握云计算、云服务使用、云架构设计等云平台技能,支持多云部署和云原生应用开发。
-
-#### AWS
-- `cloud-aws-ec2`、`cloud-aws-s3`、`cloud-aws-rds`、`cloud-aws-lambda`
-
-#### Azure
-- `cloud-azure-vm`、`cloud-azure-storage`、`cloud-azure-sql`
-
-#### 阿里云
-- `cloud-aliyun-ecs`、`cloud-aliyun-oss`、`cloud-aliyun-rds`
-
-#### 腾讯云
-- `cloud-tencent-cvm`、`cloud-tencent-cos`、`cloud-tencent-cdb`
-
-#### 华为云
-- `cloud-huawei-ecs`、`cloud-huawei-obs`、`cloud-huawei-rds`
-
----
-
-### 👥 social-skills(社交技能集合)
-
-**安装命令:** `/plugin install social-skills@full-stack-skills`
-
-**技能数量:** 2 个技能
-
-**描述:** 社交与协作技能集合,包含内部沟通、Slack GIF 创建器等。帮助 AI 助手掌握团队协作、内部沟通、社交工具使用等协作技能。
-
-**技能列表:**
-- `internal-comms` - 内部沟通(状态报告、领导更新、公司通讯、FAQ 等内部文档编写)
-- `slack-gif-creator` - Slack GIF 创建器(为 Slack 消息创建 GIF 动图)
-
----
-
-### 📚 teaching-skills(教学技能集合)
-
-**安装命令:** `/plugin install teaching-skills@full-stack-skills`
-
-**技能数量:** 3 个技能
-
-**描述:** 教学与教育相关技能集合,包含课程设计、学习评估、教学资源生成等。帮助 AI 助手掌握教学资源设计、课程规划、学习评估等教育技能。
-
-**技能列表:**
-- `course-designer` - 课程设计(课程大纲、学习目标、教学计划、评估方案)
-- `learning-assessor` - 学习评估(测验题目、评估标准、评分 rubric、学习分析)
-- `teaching-resource-generator` - 教学资源生成(课件、练习题、教学案例、学习指南)
-
----
-
-### 🔧 utility-skills(工具技能集合)
-
-**安装命令:** `/plugin install utility-skills@full-stack-skills`
-
-**技能数量:** 1 个技能
+## 可用插件和技能
 
-**描述:** 工具与实用技能集合,包含技能创建器,指导如何创建有效的 Agent Skills,扩展 Claude 的能力。帮助 AI 助手和开发者掌握技能设计、技能结构、最佳实践等技能创建技能,支持自定义技能开发。
+以下表格以当前 `skills/` 实际目录与 `.claude-plugin/marketplace.json` 为准,展示仓库中的技能组、目录技能数与当前发布状态。
+
+| 技能组 | 目录内技能数 | 已发布 | Marketplace 引用数 | 说明 |
+|---|---:|---|---:|---|
+| `angular-skills` | 1 | 是 | 1 | 已与当前发布面对应 |
+| `antd-skills` | 4 | 是 | 4 | 已与当前发布面对应 |
+| `ascii-skills` | 13 | 是 | 13 | 已与当前发布面对应 |
+| `avue-skills` | 3 | 是 | 3 | 已与当前发布面对应 |
+| `build-skills` | 6 | 是 | 6 | 已与当前发布面对应 |
+| `chart-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `cocos-skills` | 1 | 是 | 1 | 已与当前发布面对应 |
+| `database-skills` | 5 | 是 | 5 | 已与当前发布面对应 |
+| `ddd-skills` | 6 | 是 | 6 | 已与当前发布面对应 |
+| `design-skills` | 12 | 是 | 12 | 已与当前发布面对应 |
+| `dev-utils-skills` | 13 | 是 | 13 | 已与当前发布面对应 |
+| `devops-skills` | 6 | 是 | 6 | 已与当前发布面对应 |
+| `docker-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `document-skills` | 5 | 是 | 9 | 目录技能数与 Marketplace 引用数不一致,详见 repository-map |
+| `drawio-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `electron-skills` | 3 | 是 | 3 | 已与当前发布面对应 |
+| `flutter-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `go-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `mobile-native-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `nodejs-skills` | 4 | 是 | 4 | 已与当前发布面对应 |
+| `nvm-skills` | 15 | 是 | 15 | 已与当前发布面对应 |
+| `ocrmypdf-skills` | 5 | 是 | 5 | 已与当前发布面对应 |
+| `openspec-skills` | 15 | 是 | 15 | 已与当前发布面对应 |
+| `pencil-skills` | 28 | 是 | 28 | 已与当前发布面对应 |
+| `python-skills` | 3 | 是 | 3 | 已与当前发布面对应 |
+| `react-skills` | 6 | 是 | 6 | 已与当前发布面对应 |
+| `social-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `speckit-skills` | 13 | 是 | 13 | 已与当前发布面对应 |
+| `spring-skills` | 7 | 是 | 7 | 已与当前发布面对应 |
+| `stitch-skills` | 28 | 是 | 28 | 已与当前发布面对应 |
+| `svelte-skills` | 1 | 是 | 1 | 已与当前发布面对应 |
+| `t2ui-skills` | 97 | 是 | 97 | 已与当前发布面对应 |
+| `tauri-skills` | 52 | 是 | 51 | 目录技能数与 Marketplace 引用数不一致,详见 repository-map |
+| `teaching-skills` | 3 | 是 | 3 | 已与当前发布面对应 |
+| `testing-skills` | 9 | 是 | 9 | 已与当前发布面对应 |
+| `threejs-skills` | 18 | 否 | 0 | 仓库内存在,当前未写入 Marketplace |
+| `uniapp-skills` | 13 | 是 | 13 | 已与当前发布面对应 |
+| `utility-skills` | 3 | 是 | 3 | 已与当前发布面对应 |
+| `uview-skills` | 2 | 是 | 2 | 已与当前发布面对应 |
+| `vscode-skills` | 4 | 否 | 0 | 仓库内存在,当前未写入 Marketplace |
+| `vue-skills` | 7 | 是 | 7 | 已与当前发布面对应 |
+| `vue-ui-skills` | 4 | 是 | 4 | 已与当前发布面对应 |
+
+### 当前一致性说明
+
+- 对仓库内容的理解,应以 `skills/` 目录为准。
+- 对外发布面的理解,应以 `.claude-plugin/marketplace.json` 为准。
+- 当前真实存在的差异仅有三类:仓库内未发布技能组、Marketplace 缺失目录引用、仓库内新增但未发布的单个技能。
+- 上表已经明确标识这些差异,因此 README 现在对应的是“当前仓库状态”,而不是历史分类口径。
+
+### 安装建议
+
+- 需要前端能力:优先安装 `vue-skills`、`react-skills`、`build-skills`、`antd-skills`、`vue-ui-skills`
+- 需要后端与跨端能力:优先安装 `spring-skills`、`nodejs-skills`、`python-skills`、`go-skills`、`tauri-skills`、`uniapp-skills`
+- 需要设计与文档能力:优先安装 `design-skills`、`document-skills`、`ocrmypdf-skills`、`drawio-skills`
+- 需要交付与工程化能力:优先安装 `dev-utils-skills`、`testing-skills`、`devops-skills`、`docker-skills`、`database-skills`、`nvm-skills`
+- 需要 Spec / 设计工作流:优先安装 `speckit-skills`、`openspec-skills`、`t2ui-skills`、`stitch-skills`、`pencil-skills`
+
+### 场景化安装路径
+
+- **前端应用开发**:先安装 `vue-skills` 或 `react-skills`,再按需要补充 `build-skills`、`antd-skills`、`vue-ui-skills`。
+- **后端服务开发**:将 `spring-skills`、`nodejs-skills`、`python-skills`、`go-skills` 与 `testing-skills`、`database-skills` 组合使用。
+- **桌面与跨端产品**:按目标平台选择 `tauri-skills`、`electron-skills`、`uniapp-skills`、`flutter-skills`。
+- **Spec 驱动协作**:建议成套安装 `speckit-skills`、`openspec-skills`、`t2ui-skills`、`stitch-skills`、`pencil-skills`。
+- **文档与图形表达**:建议组合 `document-skills`、`ocrmypdf-skills`、`drawio-skills`、`ascii-skills`。
+
+### 业务域导航
+
+| 目标 | 建议优先阅读 | 建议安装组合 |
+|---|---|---|
+| Web 前端交付 | `vue-skills`、`react-skills`、`build-skills` | `vue-skills` / `react-skills` + `build-skills` + `testing-skills` |
+| 企业后台与服务 | `spring-skills`、`nodejs-skills`、`database-skills` | `spring-skills` / `nodejs-skills` + `database-skills` + `devops-skills` |
+| 桌面与跨端应用 | `tauri-skills`、`electron-skills`、`uniapp-skills`、`flutter-skills` | 按目标平台选 1–2 个运行时组,再补 `testing-skills` |
+| Spec 驱动产品研发 | `speckit-skills`、`openspec-skills`、`t2ui-skills` | `speckit-skills` + `openspec-skills` + `t2ui-skills` |
+| 设计系统与界面生产 | `stitch-skills`、`pencil-skills`、`design-skills` | `stitch-skills` + `pencil-skills` + `design-skills` |
+| 文档、OCR 与图表 | `document-skills`、`ocrmypdf-skills`、`drawio-skills`、`ascii-skills` | `document-skills` + `ocrmypdf-skills` + `drawio-skills` |
 
-**技能列表:**
-- `skill-creator` - 技能创建器(指导如何创建有效的 Agent Skills)
 
 ## 🛠️ 技术栈
 
@@ -543,24 +553,39 @@ python convert_all.py ../skills ../adapters-output
 ### 技能结构
 - **SKILL.md**:技能主文档,包含描述、使用说明、示例等
 - **examples/**:示例文件目录,包含各种使用场景的示例
-- **templates/**:模板文件目录,包含可复用的模板
+- **references/**:参考资料目录,用于承载较长说明与官方链接
 - **scripts/**:脚本文件目录,包含自动化脚本
-- **api/**:API 参考文档目录
-- **reference/**:参考文档目录
+- **assets/**:资源文件目录,用于存放图片、素材或辅助文件
+
+### 编写原则
+- **描述准确**:`description` 必须明确说明技能的触发场景与适用任务
+- **正文精简**:`SKILL.md` 保持精炼,复杂材料优先放入 `references/`
+- **路径一致**:目录名、frontmatter 中的 `name` 与 Marketplace 路径保持一致
+- **任务导向**:优先描述工作流、输入输出、边界条件,而不是泛化概念说明
+- **脚本优先**:可复用流程优先沉淀到 `scripts/`,减少内联命令噪音
+
+### 文档维护规则
+- **计数更新同步**:当技能组数量、`SKILL.md` 数量或 Marketplace 路径变化时,需同步更新 README 中的快照数据
+- **状态说明同步**:当出现 repo-only 技能组或 Marketplace 漂移时,README 与 `docs/repository-map.md` 必须同时更新
+- **示例命令同步**:安装命令示例只能使用当前 Marketplace 中实际存在的插件名
+- **路径说明同步**:路径示例必须遵循 `skills/<group>-skills/<skill>/` 结构,避免回退到历史写法
 
 ### 跨平台支持
 - **Claude Code**:原生支持,通过插件市场安装
 - **Claude.ai**:支持上传自定义技能
 - **Claude API**:通过 API 使用技能
-- **其他平台**:提供适配器工具,支持 Cursor、Trae、Qoder、CodeBuddy、Windsurf 等
+- **标准转换器**:以 TypeScript CLI 统一导出标准 skills 目录
+- **路径矩阵**:覆盖 43 个平台的项目级与全局级安装路径
 
 ## 📦 版本信息
 
 | 项目 | 当前版本          |
 |---|---------------|
 | full-stack-skills | 0.0.1 (Alpha) |
-| 技能总数 | 171           |
-| 插件类别 | 12            |
+| 技能组目录 | 42            |
+| `SKILL.md` 文件 | 421           |
+| Marketplace 插件 | 40            |
+| Marketplace 技能路径 | 410           |
 | Agent Skills 规范 | 最新版本          |
 
 ## 🔗 相关链接
@@ -600,15 +625,23 @@ python convert_all.py ../skills ../adapters-output
 
 ### 技能创建规范
 - 严格遵循 [Agent Skills 规范](https://agentskills.io/)
+- 路径遵循 `skills/<group>-skills/<skill>/SKILL.md`
 - 参考现有技能的结构和格式
 - 包含完整的官方文档链接
 - 提供清晰的使用示例
+- 需要发布时同步更新 `.claude-plugin/marketplace.json`
+
+### 提交前检查清单
+- 确认技能目录名、frontmatter `name` 与实际用途一致
+- 确认 `SKILL.md` 足够精炼,长说明已移动至 `references/`
+- 确认脚本、示例、资源文件路径可被仓库内直接解析
+- 确认 README、映射文档、Marketplace 配置之间没有新的口径差异
 
 ## 📄 许可证
 
 本项目采用 [Apache License 2.0](LICENSE) 许可证。
 
-**注意**:本仓库中的许多技能是开源的(Apache 2.0)。我们还在 [`skills/docx`](skills/docx)、[`skills/pdf`](skills/pdf)、[`skills/pptx`](skills/pptx) 和 [`skills/xlsx`](skills/xlsx) 子目录中包含了用于支撑 [Claude 文档能力](https://www.anthropic.com/news/create-files) 的文档创建与编辑技能。这些技能是"可查看源码"的(source-available),但并非开源;我们希望将其作为更复杂技能的参考示例,因为它们已在生产级 AI 应用中实际使用。
+**注意**:本仓库中的许多技能是开源的(Apache 2.0)。我们还在 [`skills/document-skills/docx`](skills/document-skills/docx)、[`skills/document-skills/pdf`](skills/document-skills/pdf)、[`skills/document-skills/pptx`](skills/document-skills/pptx) 和 [`skills/document-skills/xlsx`](skills/document-skills/xlsx) 子目录中包含了用于支撑 [Claude 文档能力](https://www.anthropic.com/news/create-files) 的文档创建与编辑技能。这些技能是“可查看源码”的(source-available),但并非开源;它们同时也是构建复杂文档类技能的参考实现。
 
 ## 🙏 致谢
 
@@ -627,6 +660,6 @@ python convert_all.py ../skills ../adapters-output
 
 **如果这个项目对你有帮助,请给我们一个 ⭐️**
 
-Made with ❤️ by TeachingAI Team
+Made with ❤️ by partme-ai Team
 
 </div>

+ 348 - 297
README_EN.md

@@ -1,397 +1,421 @@
-# Teaching AI Skills Marketplace
+# Full Stack Skills (Alpha)
 
-A free skills marketplace providing various practical AI skill collections that can be used in Claude Code.
+A grouped Agent Skills repository for Claude Code, Claude.ai, and compatible Agent Skills ecosystems.
 
-> **Note:** This repository merges Anthropic's example skills and Agent Skills collections, providing various practical AI skills that can be used in Claude Code, Claude.ai, and the API. For information about the Agent Skills standard, see [agentskills.io](http://agentskills.io).
+![Version](https://img.shields.io/badge/Version-0.0.1-red)
+![License](https://img.shields.io/badge/License-Apache%202.0-green)
+![Skill%20Docs](https://img.shields.io/badge/SKILL.md-421-orange)
+![Skill%20Groups](https://img.shields.io/badge/Groups-42-blue)
+![Marketplace%20Plugins](https://img.shields.io/badge/Plugins-40-brightgreen)
 
-## What are Skills?
-
-Skills are folders of instructions, scripts, and resources that Claude loads dynamically to improve performance on specialized tasks. Skills teach Claude how to complete specific tasks in a repeatable way, whether that's creating documents with your company's brand guidelines, analyzing data using your organization's specific workflows, or automating personal tasks.
-
-### More Information
-
-- [What are skills?](https://support.claude.com/en/articles/12512176-what-are-skills)
-- [Using skills in Claude](https://support.claude.com/en/articles/12512180-using-skills-in-claude)
-- [How to create custom skills](https://support.claude.com/en/articles/12512198-creating-custom-skills)
-- [Equipping agents for the real world with Agent Skills](https://anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
-- [Agent Skills specification](https://agentskills.io/)
-
-## About This Repository
-
-This repository contains skills that demonstrate what's possible with Claude's skills system. These skills range from creative applications (art, music, design) to technical tasks (testing web apps, MCP server generation) to enterprise workflows (communications, branding, etc.), as well as teaching and education scenarios.
-
-Each skill is self-contained in its own folder with a `SKILL.md` file containing the instructions and metadata that Claude uses. You can browse through these skills to get inspiration for your own skills or to understand different patterns and approaches.
-
-Many skills in this repo are open source (Apache 2.0). We've also included the document creation & editing skills that power [Claude's document capabilities](https://www.anthropic.com/news/create-files) under the hood in the [`skills/docx`](skills/docx), [`skills/pdf`](skills/pdf), [`skills/pptx`](skills/pptx), and [`skills/xlsx`](skills/xlsx) subfolders. These are source-available, not open source, but we wanted to share these with developers as a reference for more complex skills that are actively used in a production AI application.
-
-### Disclaimer
-
-**These skills are provided for demonstration and educational purposes only.** While some of these capabilities may be available in Claude, the implementations and behaviors you receive from Claude may differ from what is shown in these skills. These skills are meant to illustrate patterns and possibilities. Always test skills thoroughly in your own environment before relying on them for critical tasks.
-
-## How to Use
+> **Note:** This repository is maintained as a grouped skills catalog. The current documentation follows the actual `skills/` directory layout and `.claude-plugin/marketplace.json` rather than older category-based packaging.
 
-### Using in Claude Code
+## ⚡ 5-Minute Install and Conversion
 
-#### 1. Register Marketplace
+If you want the shortest path to install or convert skills for local projects and other platforms, use the workflow below.
 
-Run the following command in Claude Code to register this repository as a Claude Code plugin marketplace:
+### 1. Install `fskill`
 
-```
-/plugin marketplace add https://github.com/teachingai/agent-skills.git
+```bash
+git clone https://github.com/partme-ai/full-stack-skills.git
+cd full-stack-skills
+npm install -g ./adapters
+fskill --version
 ```
 
-Or use the short form:
+### 2. List platforms and audit the repository
 
+```bash
+fskill platforms
+fskill audit
 ```
-/plugin marketplace add teachingai/agent-skills
-```
-
-#### 2. Install Plugins
 
-There are two ways to install plugins:
+### 3. Install to the default `.agents/skills/` path
 
-**Method 1: Install via UI**
-
-1. Select `Browse and install plugins`
-2. Select `teaching-ai-skills`
-3. Select the plugin you want to install (see available plugins list below)
-4. Select `Install now`
-
-**Method 2: Install via Command**
-
-Install plugins directly using commands:
-
-```
-/plugin install teaching-skills@teaching-ai-skills
-/plugin install document-skills@teaching-ai-skills
-/plugin install markdown-skills@teaching-ai-skills
-/plugin install development-skills@teaching-ai-skills
-/plugin install design-skills@teaching-ai-skills
-/plugin install social-skills@teaching-ai-skills
-/plugin install utility-skills@teaching-ai-skills
+```bash
+mkdir demo-project && cd demo-project
+fskill install --skills-dir ../full-stack-skills/skills
 ```
 
-#### 3. Use Skills
-
-After installing plugins, you can use skills by simply mentioning them. Claude will automatically determine when to use a skill based on its description.
-
-### Using in Claude.ai
-
-These example skills are all already available to paid plans in Claude.ai.
-
-To use any skill from this repository or upload custom skills, follow the instructions in [Using skills in Claude](https://support.claude.com/en/articles/12512180-using-skills-in-claude#h_a4222fa77b).
-
-### Using in Claude API
-
-You can use Anthropic's pre-built skills, and upload custom skills, via the Claude API. See the [Skills API Quickstart](https://docs.claude.com/en/api/skills-guide#creating-a-skill) for more.
-
-### Using on Other Platforms
-
-These skills can also be used on other AI platforms such as Cursor, Trae, Qoder, CodeBuddy, etc. For detailed instructions, please refer to the [Cross-Platform Usage Guide](PLATFORM_GUIDE.md).
-
-## Available Plugins and Skills
-
-The skills in this repository are organized into 7 plugin categories, containing a total of 23 skills:
+This installs skills into the current project's `.agents/skills/`, which works for standard-path platforms such as `amp`, `kimi-cli`, `replit`, `universal`, `cursor`, `codex`, `cline`, `warp`, and `opencode`.
 
-### 1. teaching-skills (Teaching Skills Collection)
+### 4. Install to Cursor
 
-Teaching and education-related skills collection, including course design, learning assessment, and teaching resource generation.
-
-#### course-designer (Course Design Skill)
+```bash
+fskill install --platform cursor --scope project --skills-dir ../full-stack-skills/skills
+```
 
-Helps design and plan course content, including course outlines, learning objectives, teaching plans, and assessment schemes.
+- **Project path**: `.agents/skills/`
+- **Global path**: `~/.cursor/skills/`
 
-**Usage Examples:**
-- "Use the course design skill to help me design a Python programming course"
-- "Design an 8-week machine learning introductory course"
-- "Create a course outline for web development"
+To install into Cursor’s global directory:
 
-#### learning-assessor (Learning Assessment Skill)
+```bash
+fskill install --platform cursor --scope global --skills-dir ./skills
+```
 
-Helps create learning assessment tools, including quiz questions, assessment criteria, scoring rubrics, and learning analytics.
+### 5. Export all platform layouts
 
-**Usage Examples:**
-- "Use the learning assessment skill to create a set of quiz questions for my course"
-- "Design a rubric to assess student learning outcomes"
-- "Generate a learning analytics report"
+```bash
+cd full-stack-skills
+fskill convert --platform all --output ./adapters-output
+```
 
-#### teaching-resource-generator (Teaching Resource Generator Skill)
+Outputs are written as:
 
-Helps generate various teaching resources, including courseware, exercises, teaching cases, and study guides.
+```text
+adapters-output/<platform>/<project-path>/<skill-name>/
+```
 
-**Usage Examples:**
-- "Use the teaching resource generator skill to create courseware for my course"
-- "Generate some exercises about data structures"
-- "Create a teaching case for explaining design patterns"
+### 6. Common scenarios
 
-### 2. document-skills (Document Processing Skills Collection)
+```bash
+# Install into a Claude Code project
+fskill install --platform claude-code --scope project --skills-dir ./skills
 
-Document processing skills collection, supporting creation, editing, and processing of office documents including Excel, Word, PowerPoint, and PDF.
+# Install into Antigravity global directory
+fskill install --platform antigravity --scope global --skills-dir ./skills
 
-#### docx (Word Document Processing)
+# Install only selected skills
+fskill install --platform cursor --scope global --skills-dir ./skills --skill react --skill vue3
+```
 
-Create, edit, and process Microsoft Word documents.
+For detailed adapter behavior, use:
 
-**Usage Examples:**
-- "Use the DOCX skill to create a new Word document"
-- "Extract text from this Word document"
-- "Format this document with headings and styles"
+- [Adapter CLI reference](adapters/README.md)
+- [Cross-platform usage guide](PLATFORM_GUIDE.md)
 
-#### pptx (PowerPoint Presentation Processing)
+## What are Skills?
 
-Create, edit, and process Microsoft PowerPoint presentations.
+Skills are folders of instructions, scripts, and resources that Claude loads dynamically to improve performance on specialized tasks. Skills teach Claude how to complete repeatable tasks in a reusable way, whether that means documentation workflows, frontend implementation, system design, testing, or delivery automation.
 
-**Usage Examples:**
-- "Use the PPTX skill to create a presentation"
-- "Add slides to this PowerPoint file"
-- "Apply a theme to this presentation"
+### More Information
 
-#### pdf (PDF Document Processing)
+- [What are skills?](https://support.claude.com/en/articles/12512176-what-are-skills)
+- [Using skills in Claude](https://support.claude.com/en/articles/12512180-using-skills-in-claude)
+- [How to create custom skills](https://support.claude.com/en/articles/12512198-creating-custom-skills)
+- [Equipping agents for the real world with Agent Skills](https://anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
+- [Agent Skills specification](https://agentskills.io/)
 
-Process PDF documents, including text extraction, form filling, merging, and splitting.
+## About This Repository
 
-**Usage Examples:**
-- "Use the PDF skill to extract the form fields from `path/to/some-file.pdf`"
-- "Fill out this PDF form"
-- "Merge multiple PDF files"
+This repository is PartMeAI’s grouped Agent Skills catalog. The current repository snapshot contains **42** skill-group directories and **421** `SKILL.md` files. `.claude-plugin/marketplace.json` currently publishes **40** plugins with **410** skill paths.
 
-#### xlsx (Excel Spreadsheet Processing)
+The main repo now covers frontend, backend, mobile, cross-platform development, testing, DevOps, documentation, OCR, Tauri, Stitch, Pencil, T2UI, OpenSpec, and Spec Kit workflows.
 
-Create, edit, and process Microsoft Excel spreadsheets.
+### Repository Snapshot
 
-**Usage Examples:**
-- "Use the XLSX skill to create a spreadsheet"
-- "Analyze data in this Excel file"
-- "Generate charts from this spreadsheet"
+| Metric | Current Value |
+|---|---:|
+| Skill-group directories under `skills/` | 42 |
+| `SKILL.md` files on disk | 421 |
+| Plugins in `.claude-plugin/marketplace.json` | 40 |
+| Published skill refs in Marketplace | 410 |
+| Repo-only groups not published | 2 |
 
-#### doc-coauthoring (Document Co-authoring)
+### Coverage Map
 
-Supports multi-user collaborative document editing.
+| Domain | Representative Groups | Scope |
+|---|---|---|
+| Frontend and UI | `vue-skills`, `react-skills`, `angular-skills`, `svelte-skills`, `antd-skills`, `vue-ui-skills`, `build-skills` | Frameworks, component libraries, build systems, UI implementation |
+| Backend and cross-platform | `spring-skills`, `nodejs-skills`, `python-skills`, `go-skills`, `electron-skills`, `tauri-skills`, `uniapp-skills`, `flutter-skills` | Service development, desktop, mobile, hybrid delivery |
+| Engineering delivery | `dev-utils-skills`, `ddd-skills`, `testing-skills`, `devops-skills`, `docker-skills`, `database-skills`, `nvm-skills` | Project scaffolding, architecture, test strategy, release workflows |
+| Design and documents | `design-skills`, `document-skills`, `ocrmypdf-skills`, `drawio-skills`, `ascii-skills` | Design execution, documentation, OCR, diagramming, text visuals |
+| Spec and design systems | `speckit-skills`, `openspec-skills`, `t2ui-skills`, `stitch-skills`, `pencil-skills` | Spec-driven delivery, UI generation, design workflows, structured handoff |
+| Shared support | `social-skills`, `teaching-skills`, `utility-skills` | Communication, education, utility workflows |
 
-**Usage Examples:**
-- "Use the doc-coauthoring skill to prepare this document for collaboration"
-- "Add comments and suggestions to this document"
+### Publication Status
 
-### 3. markdown-skills (Markdown Skills Collection)
+- `threejs-skills` exists in the repository with 18 skills and is not currently published in Marketplace.
+- `vscode-skills` exists in the repository with 4 skills and is not currently published in Marketplace.
+- `document-skills` has 5 skill directories on disk, while Marketplace still references 9 entries, including missing paths for `docx`, `pptx`, `pdf`, and `xlsx`.
+- `tauri-skills` has 52 skill directories on disk, while Marketplace currently publishes 51 entries; `tauri-app-updater` remains repo-only.
 
-Markdown-related skills collection, including Mermaid diagram creation.
+### Recommended Reading Path
 
-#### mermaid (Mermaid Diagram Creation)
+- **Start with repository scope**: read this README together with `docs/repository-map.md` to understand structure, publication state, and catalog drift.
+- **Navigate by skill group**: if you already know the technical domain, move directly into `docs/skill-group-mapping.md` and the relevant `skills/<group>-skills/` subtree.
+- **Navigate by delivery stage**: if you care about end-to-end flow, use `docs/pipeline-stage-to-skills.md` first.
+- **Navigate by design workflow**: for design-system and spec-driven work, prioritize `stitch-skills`, `pencil-skills`, `t2ui-skills`, `speckit-skills`, and `openspec-skills`.
 
-Create various types of Mermaid diagrams, including flowcharts, sequence diagrams, class diagrams, state diagrams, Gantt charts, and more.
+For the current source of truth, use:
 
-**Usage Examples:**
-- "Use Mermaid to create a flowchart"
-- "Draw a C4 diagram for system architecture"
-- "Generate a Gantt chart for project timeline"
-- "Create a user journey diagram"
+- [docs/repository-map.md](docs/repository-map.md)
+- [docs/skill-group-mapping.md](docs/skill-group-mapping.md)
+- [docs/pipeline-stage-to-skills.md](docs/pipeline-stage-to-skills.md)
+- [docs/skills-ecosystem.md](docs/skills-ecosystem.md)
 
-**Supported Diagram Types:**
-- Flowcharts
-- Sequence diagrams
-- Class diagrams
-- State diagrams
-- Entity relationship diagrams (ER diagrams)
-- User journey diagrams
-- Gantt charts
-- Pie charts
-- Quadrant charts
-- Git graphs
-- C4 architecture diagrams
-- Mindmaps
-- Timelines
-- Sankey diagrams
-- And many other diagram types
+### Disclaimer
 
-### 4. development-skills (Development Skills Collection)
 
-Development skills collection, including code generation, test writing, documentation building, MCP builder, web development, frontend design, and more.
+**These skills are provided for demonstration and educational purposes only.** While some of these capabilities may be available in Claude, the implementations and behaviors you receive from Claude may differ from what is shown in these skills. These skills are meant to illustrate patterns and possibilities. Always test skills thoroughly in your own environment before relying on them for critical tasks.
 
-#### code-generator (Code Generation Skill)
+## How to Use
 
-Helps generate high-quality code, supporting multiple programming languages, following best practices and design patterns.
+### Using in Claude Code
 
-**Usage Examples:**
-- "Use the code generation skill to generate a user authentication Python class"
-- "Create a RESTful API implementation in Node.js"
-- "Generate a Java class following SOLID principles"
+#### 1. Register Marketplace
 
-#### test-writer (Test Writing Skill)
+Run the following command in Claude Code to register this repository as a Claude Code plugin marketplace:
 
-Helps write unit tests, integration tests, and end-to-end tests.
+```
+/plugin marketplace add https://github.com/partme-ai/full-stack-skills.git
+```
 
-**Usage Examples:**
-- "Write unit tests for this function"
-- "Create integration tests to verify API endpoints"
-- "Generate end-to-end test cases"
+Or use the short form:
 
-#### documentation-builder (Documentation Builder Skill)
+```
+/plugin marketplace add partme-ai/full-stack-skills
+```
 
-Helps generate technical documentation, including API documentation, user manuals, development guides, and README files.
+#### 2. Install Plugins
 
-**Usage Examples:**
-- "Use the documentation builder skill to generate API documentation for my project"
-- "Create a user manual"
-- "Write a development environment setup guide"
+There are two ways to install plugins:
 
-#### mcp-builder (MCP Builder)
+**Method 1: Install via UI**
 
-Helps create and configure Model Context Protocol (MCP) servers.
+1. Select `Browse and install plugins`
+2. Select `full-stack-skills`
+3. Select the plugin you want to install (see available plugins list below)
+4. Select `Install now`
 
-**Usage Examples:**
-- "Use the MCP builder to create a new MCP server"
-- "Configure tools and resources for an MCP server"
-- "Generate code templates for an MCP server"
+**Method 2: Install via Command**
 
-#### webapp-testing (Web Application Testing)
+Install plugins directly using commands:
 
-Helps test web applications, including functional testing and performance testing.
+```
+/plugin install vue-skills@full-stack-skills
+/plugin install react-skills@full-stack-skills
+/plugin install spring-skills@full-stack-skills
+/plugin install dev-utils-skills@full-stack-skills
+/plugin install testing-skills@full-stack-skills
+/plugin install stitch-skills@full-stack-skills
+/plugin install tauri-skills@full-stack-skills
+```
 
-**Usage Examples:**
-- "Test the functionality of this web application"
-- "Check the response time of this website"
-- "Verify cross-browser compatibility of this application"
+#### 3. Use Skills
 
-#### frontend-design (Frontend Design)
+After installing plugins, you can use skills by simply mentioning them. Claude will automatically determine when to use a skill based on its description.
 
-Create high-quality frontend interfaces, avoiding generic AI aesthetics, generating code with unique design sense.
+### Using in Claude.ai
 
-**Usage Examples:**
-- "Use the frontend design skill to create a login page"
-- "Design a modern dashboard interface"
-- "Create a responsive product showcase page"
+These example skills are all already available to paid plans in Claude.ai.
 
-#### web-artifacts-builder (Web Artifacts Builder)
+To use any skill from this repository or upload custom skills, follow the instructions in [Using skills in Claude](https://support.claude.com/en/articles/12512180-using-skills-in-claude#h_a4222fa77b).
 
-Create complex multi-component HTML artifacts using modern frontend technologies (React, Tailwind CSS, shadcn/ui).
+### Using in Claude API
 
-**Usage Examples:**
-- "Use the web artifacts builder to create an interactive data visualization tool"
-- "Build a single-page application with state management"
-- "Create a complex interface using shadcn/ui components"
+You can use Anthropic's pre-built skills, and upload custom skills, via the Claude API. See the [Skills API Quickstart](https://docs.claude.com/en/api/skills-guide#creating-a-skill) for more.
 
-#### theme-factory (Theme Factory)
+### Using on Other Platforms
 
-Apply theme styles to artifacts, including 10 preset themes that can be applied to slides, documents, reports, HTML landing pages, and more.
+This repository now ships a **TypeScript standard converter**. It exports `skills/<group>/<skill>/` into standard skill directories and installs them into the project-level or global-level path required by each supported platform. The converter does not generate platform-specific plugin wrappers; it preserves the original skill directory and switches only the destination path.
 
-**Usage Examples:**
-- "Apply the Ocean Depths theme to this presentation"
-- "Style this document with the Modern Minimalist theme"
-- "Apply the Golden Hour theme to this webpage"
+#### Adapter overview
 
-### 5. design-skills (Design Skills Collection)
+- **CLI name**: `fskill`
+- **Location**: `adapters/`
+- **Input layout**: `skills/<group>/<skill>/`
+- **Output layout**: standard skill directories with `SKILL.md` and resource folders
+- **Core commands**: `platforms`, `audit`, `convert`, `install`
+- **Default install target**: current project `.agents/skills/`
+- **Platform switch**: use `--platform` for the target platform and `--scope project|global` for install scope
+- **Adapter rule**: preserve the original skill contents and change only the destination path
 
-Design and creative skills collection, including algorithmic art, brand guidelines, and canvas design.
+#### Adapter workflow
 
-#### algorithmic-art (Algorithmic Art)
+1. Run `fskill audit` to verify the repository skill inventory
+2. Run `fskill platforms` to inspect supported platform IDs and install paths
+3. Run `fskill convert --platform <id|all>` to generate distributable standard outputs
+4. Run `fskill install` or `fskill install --platform <id>` to install directly into the target platform path
 
-Create algorithmic art using p5.js with seeded randomness and interactive parameter exploration.
+#### Common adapter commands
 
-**Usage Examples:**
-- "Use the algorithmic art skill to create a generative artwork"
-- "Generate a visualization based on particle systems"
-- "Create a flow field effect artwork"
+```bash
+# List supported platforms and paths
+fskill platforms
 
-#### brand-guidelines (Brand Guidelines)
+# Audit repository skills
+fskill audit
 
-Apply Anthropic's official brand colors and typography to any artifact.
+# Export Cursor-compatible output
+fskill convert --platform cursor --output ./adapters-output
 
-**Usage Examples:**
-- "Use the brand guidelines skill to apply brand styles to this document"
-- "Apply brand colors to this presentation"
-- "Format this document using brand fonts"
+# Install into the current project's Cursor path
+fskill install --platform cursor --scope project
 
-#### canvas-design (Canvas Design)
+# Install into Cursor global path ~/.cursor/skills/
+fskill install --platform cursor --scope global
 
-Create high-quality designs and visualizations on HTML Canvas.
+# Install into the default .agents/skills/ path
+fskill install
+```
 
-**Usage Examples:**
-- "Use the canvas design skill to create a data visualization chart"
-- "Draw an interactive graphic on Canvas"
-- "Create a Canvas animation effect"
+#### Cursor and other platforms
 
-### 6. social-skills (Social Skills Collection)
+- **Cursor**: project-level `.agents/skills/`, global `~/.cursor/skills/`
+- **Claude Code**: project-level `.claude/skills/`
+- **OpenClaw**: project-level `skills/`
+- **Antigravity**: project-level `.agents/skills/`, global `~/.gemini/antigravity/skills/`
+- **Other platforms**: all managed through the unified platform registry exposed by `fskill platforms`
 
-Social and collaboration skills collection, including internal communications and Slack GIF creation.
+**Install and run commands**
 
-#### internal-comms (Internal Communications)
+```bash
+git clone https://github.com/partme-ai/full-stack-skills.git
+cd full-stack-skills
+npm install -g ./adapters
+fskill --version
+fskill platforms
+fskill audit
+fskill convert --platform all --output ./adapters-output
+fskill install
+```
 
-Helps write various internal communication documents, including status reports, leadership updates, 3P updates, company newsletters, FAQs, and more.
+By default, `fskill install` installs into the current project's `.agents/skills/` directory, which is the standard Agent Skills-compatible path. Use `--platform` and `--scope` when you need a platform-specific destination.
+For repository-local development, you can also run `npm install && npm link` inside `adapters/` and then call `fskill ...` directly.
 
-**Usage Examples:**
-- "Use the internal communications skill to write a project status report"
-- "Create a company newsletter"
-- "Write an FAQ document"
+**Platform coverage**
 
-#### slack-gif-creator (Slack GIF Creator)
+- **Shared `.agents/skills/` family**: `amp`, `kimi-cli`, `replit`, `universal`, `antigravity`, `cline`, `warp`, `codex`, `cursor`, `deepagents`, `gemini-cli`, `github-copilot`, `opencode`
+- **Dedicated directory family**: `augment`, `claude-code`, `openclaw`, `codebuddy`, `command-code`, `continue`, `cortex`, `crush`, `droid`, `goose`, `junie`, `iflow-cli`, `kilo`, `kiro-cli`, `kode`, `mcpjam`, `mistral-vibe`, `mux`, `openhands`, `pi`, `qoder`, `qwen-code`, `roo`, `trae`, `trae-cn`, `windsurf`, `zencoder`, `neovate`, `pochi`, `adal`
+- **Antigravity baseline**: project-level `.agents/skills/`, global `~/.gemini/antigravity/skills/`
 
-Create GIF animations for use in Slack.
+For the full platform matrix, installation paths, and workflow details, see [PLATFORM_GUIDE.md](PLATFORM_GUIDE.md) and [adapters/README.md](adapters/README.md).
 
-**Usage Examples:**
-- "Use the Slack GIF creator to create a welcome animation"
-- "Generate a GIF for Slack messages"
-- "Create a notification animation GIF"
+## Repository Governance
 
-### 7. utility-skills (Utility Skills Collection)
+### Inventory Rules
 
-Utility and practical skills collection, including skill creator.
+- Treat `skills/` as the source of truth for what exists in the repository.
+- Treat `.claude-plugin/marketplace.json` as the source of truth for what is published.
+- Record any drift explicitly in README and `docs/repository-map.md` instead of hiding it.
+- Prefer extending an existing group over introducing a new one unless the capability boundary is clearly independent.
 
-#### skill-creator (Skill Creator)
+## Available Plugins and Skills
 
-Guides how to create effective skills to extend Claude's capabilities.
+The table below reflects the current `skills/` directory and `.claude-plugin/marketplace.json` state.
+
+| Group | Skills on Disk | Published | Marketplace Refs | Notes |
+|---|---:|---|---:|---|
+| `angular-skills` | 1 | Yes | 1 | Aligned with current published surface |
+| `antd-skills` | 4 | Yes | 4 | Aligned with current published surface |
+| `ascii-skills` | 13 | Yes | 13 | Aligned with current published surface |
+| `avue-skills` | 3 | Yes | 3 | Aligned with current published surface |
+| `build-skills` | 6 | Yes | 6 | Aligned with current published surface |
+| `chart-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `cocos-skills` | 1 | Yes | 1 | Aligned with current published surface |
+| `database-skills` | 5 | Yes | 5 | Aligned with current published surface |
+| `ddd-skills` | 6 | Yes | 6 | Aligned with current published surface |
+| `design-skills` | 12 | Yes | 12 | Aligned with current published surface |
+| `dev-utils-skills` | 13 | Yes | 13 | Aligned with current published surface |
+| `devops-skills` | 6 | Yes | 6 | Aligned with current published surface |
+| `docker-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `document-skills` | 5 | Yes | 9 | On-disk count differs from Marketplace refs; see repository-map |
+| `drawio-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `electron-skills` | 3 | Yes | 3 | Aligned with current published surface |
+| `flutter-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `go-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `mobile-native-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `nodejs-skills` | 4 | Yes | 4 | Aligned with current published surface |
+| `nvm-skills` | 15 | Yes | 15 | Aligned with current published surface |
+| `ocrmypdf-skills` | 5 | Yes | 5 | Aligned with current published surface |
+| `openspec-skills` | 15 | Yes | 15 | Aligned with current published surface |
+| `pencil-skills` | 28 | Yes | 28 | Aligned with current published surface |
+| `python-skills` | 3 | Yes | 3 | Aligned with current published surface |
+| `react-skills` | 6 | Yes | 6 | Aligned with current published surface |
+| `social-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `speckit-skills` | 13 | Yes | 13 | Aligned with current published surface |
+| `spring-skills` | 7 | Yes | 7 | Aligned with current published surface |
+| `stitch-skills` | 28 | Yes | 28 | Aligned with current published surface |
+| `svelte-skills` | 1 | Yes | 1 | Aligned with current published surface |
+| `t2ui-skills` | 97 | Yes | 97 | Aligned with current published surface |
+| `tauri-skills` | 52 | Yes | 51 | On-disk count differs from Marketplace refs; see repository-map |
+| `teaching-skills` | 3 | Yes | 3 | Aligned with current published surface |
+| `testing-skills` | 9 | Yes | 9 | Aligned with current published surface |
+| `threejs-skills` | 18 | No | 0 | Present in repo, not currently published |
+| `uniapp-skills` | 13 | Yes | 13 | Aligned with current published surface |
+| `utility-skills` | 3 | Yes | 3 | Aligned with current published surface |
+| `uview-skills` | 2 | Yes | 2 | Aligned with current published surface |
+| `vscode-skills` | 4 | No | 0 | Present in repo, not currently published |
+| `vue-skills` | 7 | Yes | 7 | Aligned with current published surface |
+| `vue-ui-skills` | 4 | Yes | 4 | Aligned with current published surface |
+
+### Current Consistency Notes
+
+- Treat the `skills/` directory as the authoritative repository inventory.
+- Treat `.claude-plugin/marketplace.json` as the authoritative published plugin surface.
+- The two intentional states visible today are repo-only groups (`threejs-skills`, `vscode-skills`) and published catalog drift (`document-skills`, `tauri-skills`).
+- The README tables above already reflect those differences explicitly, so the documentation matches the current repository state rather than masking discrepancies.
+
+### Suggested Installation Paths
+
+- For frontend and UI: `vue-skills`, `react-skills`, `build-skills`, `antd-skills`, `vue-ui-skills`
+- For backend and cross-platform development: `spring-skills`, `nodejs-skills`, `python-skills`, `go-skills`, `tauri-skills`, `uniapp-skills`
+- For design and documentation: `design-skills`, `document-skills`, `ocrmypdf-skills`, `drawio-skills`
+- For engineering delivery: `dev-utils-skills`, `testing-skills`, `devops-skills`, `docker-skills`, `database-skills`, `nvm-skills`
+- For spec-driven and design workflows: `speckit-skills`, `openspec-skills`, `t2ui-skills`, `stitch-skills`, `pencil-skills`
+
+### Installation by Scenario
+
+- **Frontend application delivery**: start with `vue-skills` or `react-skills`, then add `build-skills`, `antd-skills`, or `vue-ui-skills` as needed.
+- **Backend and service development**: pair one runtime group such as `spring-skills`, `nodejs-skills`, `python-skills`, or `go-skills` with `testing-skills` and `database-skills`.
+- **Desktop or hybrid product work**: use `tauri-skills`, `electron-skills`, `uniapp-skills`, or `flutter-skills` depending on delivery target.
+- **Spec-first product workflows**: install `speckit-skills`, `openspec-skills`, `t2ui-skills`, `stitch-skills`, and `pencil-skills` together.
+- **Documentation and diagramming**: combine `document-skills`, `ocrmypdf-skills`, `drawio-skills`, and `ascii-skills`.
+
+### Domain Navigation Matrix
+
+| Goal | Read First | Recommended Bundle |
+|---|---|---|
+| Web frontend delivery | `vue-skills`, `react-skills`, `build-skills` | `vue-skills` / `react-skills` + `build-skills` + `testing-skills` |
+| Backend and platform services | `spring-skills`, `nodejs-skills`, `database-skills` | `spring-skills` / `nodejs-skills` + `database-skills` + `devops-skills` |
+| Desktop and cross-platform apps | `tauri-skills`, `electron-skills`, `uniapp-skills`, `flutter-skills` | Choose 1–2 runtime groups, then add `testing-skills` |
+| Spec-driven product work | `speckit-skills`, `openspec-skills`, `t2ui-skills` | `speckit-skills` + `openspec-skills` + `t2ui-skills` |
+| Design-system and UI production | `stitch-skills`, `pencil-skills`, `design-skills` | `stitch-skills` + `pencil-skills` + `design-skills` |
+| Documents, OCR, and diagrams | `document-skills`, `ocrmypdf-skills`, `drawio-skills`, `ascii-skills` | `document-skills` + `ocrmypdf-skills` + `drawio-skills` |
 
-**Usage Examples:**
-- "Use the skill creator to help me create a new skill"
-- "How to design the structure of a skill"
-- "What are the best practices for creating a skill"
 
 ## Project Structure
 
-```
-.
+```text
+full-stack-skills/
 ├── .claude-plugin/
-│   └── marketplace.json          # Marketplace configuration file
-├── skills/                        # Skills directory
-│   ├── teaching-skills/          # Teaching skills
-│   │   ├── course-designer/
-│   │   ├── learning-assessor/
-│   │   └── teaching-resource-generator/
-│   ├── document-skills/          # Document processing skills
-│   │   ├── docx/
-│   │   ├── pptx/
-│   │   ├── pdf/
-│   │   ├── xlsx/
-│   │   └── doc-coauthoring/
-│   ├── markdown-skills/          # Markdown skills
-│   │   └── mermaid/
-│   ├── development-skills/       # Development skills
-│   │   ├── code-generator/
-│   │   ├── test-writer/
-│   │   ├── documentation-builder/
-│   │   ├── mcp-builder/
-│   │   ├── webapp-testing/
-│   │   ├── frontend-design/
-│   │   ├── web-artifacts-builder/
-│   │   └── theme-factory/
-│   ├── design-skills/            # Design skills
-│   │   ├── algorithmic-art/
-│   │   ├── brand-guidelines/
-│   │   └── canvas-design/
-│   ├── social-skills/            # Social skills
-│   │   ├── internal-comms/
-│   │   └── slack-gif-creator/
-│   └── utility-skills/           # Utility skills
-│       └── skill-creator/
-├── spec/                          # Agent Skills specification
-├── template/                      # Skill template
-└── README.md                      # This file
+│   └── marketplace.json          # Marketplace configuration
+├── adapters/                     # TypeScript standard converter and platform registry
+├── agents/                       # Agent roles and orchestration entry points
+├── bundles/                      # Bundled or aggregated outputs
+├── dist/                         # Distribution artifacts
+├── docs/                         # Repo map, ecosystem docs, stage mapping
+├── media/                        # Screenshots and visual assets
+├── skills/                       # Grouped skills layout
+│   ├── vue-skills/
+│   │   └── vue3/
+│   │       └── SKILL.md
+│   ├── react-skills/
+│   ├── spring-skills/
+│   ├── tauri-skills/
+│   └── ...
+├── spec/                         # Specifications and standards references
+├── template/                     # Skill templates
+├── tools/                        # Helper tools
+├── AGENTS.md                     # Repo-level agent instructions
+├── README.md
+└── README_EN.md
 ```
 
+### Directory Model
+
+- `skills/<group>-skills/<skill>/SKILL.md` is the primary storage model for every skill in this repository.
+- `references/` is the preferred place for long-form technical context so that `SKILL.md` stays concise and load-efficient.
+- `scripts/` should hold repeatable automation instead of embedding large inline command sequences in `SKILL.md`.
+- `docs/` contains the current repository map, stage-to-skill mapping, and ecosystem documentation used to understand the catalog at the repo level.
+
 ## How to Create a New Skill
 
 ### Creating a Basic Skill
 
-Skills are simple to create - just a folder with a `SKILL.md` file containing YAML frontmatter and instructions. You can use the **template-skill** in this repository as a starting point:
+Skills are simple to create: add a skill under the correct group directory and include a `SKILL.md` file with YAML frontmatter and clear instructions. You can use the repository template as a starting point:
 
 ```markdown
 ---
@@ -422,18 +446,34 @@ The markdown content below contains the instructions, examples, and guidelines t
 
 Each skill contains:
 - `SKILL.md` - Instructions for the agent (required)
+- `examples/` - Focused usage examples (optional)
 - `scripts/` - Helper scripts for automation (optional)
 - `references/` - Supporting documentation (optional)
 - `assets/` - Resource files (optional)
 
+### Authoring Rules
+
+- Keep `SKILL.md` lean; move large reference material into `references/` when depth is required.
+- Use a concrete `description` so the agent can activate the skill reliably.
+- Match directory names, frontmatter names, and published Marketplace paths.
+- Prefer task-oriented instructions over encyclopedic background text.
+- Keep helper scripts deterministic and machine-friendly.
+
+### Documentation Maintenance Rules
+
+- Update README snapshot counts whenever group counts, `SKILL.md` totals, or Marketplace refs change.
+- Update README and `docs/repository-map.md` together when repo-only groups or Marketplace drift changes.
+- Use only real published plugin names in installation examples.
+- Keep path examples aligned with `skills/<group>-skills/<skill>/`.
+
 ### Steps to Add a New Skill
 
 #### 1. Create Skill Directory
 
-Create a new skill directory under the `skills/` directory:
+Create a new skill directory under the correct group inside `skills/`:
 
 ```bash
-mkdir -p skills/your-skill-name
+mkdir -p skills/vue-skills/my-skill-name
 ```
 
 #### 2. Create SKILL.md File
@@ -442,18 +482,18 @@ Each skill must contain a `SKILL.md` file with the format shown above.
 
 #### 3. Update marketplace.json
 
-Add the new skill to the appropriate plugin in `.claude-plugin/marketplace.json`:
+Add the new skill path to the matching grouped plugin in `.claude-plugin/marketplace.json`:
 
 ```json
 {
   "plugins": [
     {
-      "name": "your-plugin-name",
-      "description": "Plugin description",
+      "name": "vue-skills",
+      "description": "Vue ecosystem skills",
       "source": "./",
       "strict": false,
       "skills": [
-        "./skills/your-skill-name"
+        "./skills/vue-skills/my-skill-name"
       ]
     }
   ]
@@ -466,7 +506,7 @@ Commit and push changes to the GitHub repository:
 
 ```bash
 git add .
-git commit -m "Add new skill: your-skill-name"
+git commit -m "Add skill: my-skill-name"
 git push
 ```
 
@@ -492,8 +532,8 @@ The `.claude-plugin/marketplace.json` file defines the marketplace metadata and
       "source": "./",                // Source code path
       "strict": false,               // Strict mode
       "skills": [                    // Skills list
-        "./skills/skill1",
-        "./skills/skill2"
+        "./skills/vue-skills/vue3",
+        "./skills/react-skills/react-hooks"
       ]
     }
   ]
@@ -502,7 +542,7 @@ The `.claude-plugin/marketplace.json` file defines the marketplace metadata and
 
 ## How It Works
 
-1. **Marketplace Registration**: When you run `/plugin marketplace add https://github.com/teachingai/agent-skills.git`, Claude Code will:
+1. **Marketplace Registration**: When you run `/plugin marketplace add https://github.com/partme-ai/full-stack-skills.git`, Claude Code will:
    - Fetch the `.claude-plugin/marketplace.json` file from the GitHub repository
    - Parse the marketplace configuration
    - Add the marketplace to the available list
@@ -526,16 +566,26 @@ The `.claude-plugin/marketplace.json` file defines the marketplace metadata and
 - **Structured Organization**: Use clear sections and structure
 - **Practical Examples**: Provide practical, usable examples
 - **Progressive Disclosure**: Put detailed reference materials in separate files and load them as needed
+- **Path Discipline**: Keep the repository path, frontmatter `name`, and Marketplace path aligned
+- **Task Orientation**: Write instructions around workflows, trigger phrases, expected inputs, and outputs
 
 ### Marketplace Organization
 
 - **Logical Grouping**: Organize related skills into the same plugin
 - **Clear Naming**: Use clear, descriptive names
 - **Version Management**: Maintain version numbers in `metadata`
+- **Catalog Hygiene**: Audit published refs against `skills/` regularly to prevent drift
+
+### Pre-Submission Checklist
+
+- Confirm the skill directory, frontmatter `name`, and actual capability are aligned.
+- Confirm `SKILL.md` is concise and large technical detail is moved into `references/`.
+- Confirm scripts, examples, and resource paths resolve inside the repository.
+- Confirm README, mapping docs, and Marketplace metadata do not introduce new drift.
 
 ## License
 
-Many skills in this repository are licensed under Apache 2.0. Document processing skills (docx, pdf, pptx, xlsx) are source-available but not open source. See LICENSE files in each skill directory for details.
+Many skills in this repository are licensed under Apache 2.0. Document processing skills in `skills/document-skills/docx`, `skills/document-skills/pdf`, `skills/document-skills/pptx`, and `skills/document-skills/xlsx` are source-available but not open source. See the corresponding license files for details.
 
 ## Contributing
 
@@ -560,6 +610,7 @@ Skills are a great way to teach Claude how to get better at using specific piece
 - [Equipping agents for the real world with Agent Skills](https://anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
 - [Anthropic Skills examples](https://github.com/anthropics/skills)
 - [Skills API Quickstart](https://docs.claude.com/en/api/skills-guide#creating-a-skill)
+- [Agent Skills CLI](https://github.com/partme-ai/partme-cli)
 
 ## Contact
 

+ 0 - 120
adapters-output/codebuddy/algorithmic-art/manifest.json

@@ -1,120 +0,0 @@
-{
-  "name": "algorithmic-art",
-  "version": "1.0.0",
-  "description": "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "algorithmic-art",
-      "name": "algorithmic-art",
-      "description": "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "Algorithmic Philosophy Creation (.md file)",
-          "description": "Algorithmic Philosophy Creation (.md file)",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Express by creating p5.js generative art (.html + .js files)",
-          "description": "Express by creating p5.js generative art (.html + .js files)",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Read** `templates/viewer.html` using the Read tool",
-          "description": "**Read** `templates/viewer.html` using the Read tool",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Study** the exact structure, styling, and Anthropic branding",
-          "description": "**Study** the exact structure, styling, and Anthropic branding",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Use that file as the LITERAL STARTING POINT** - not just inspiration",
-          "description": "**Use that file as the LITERAL STARTING POINT** - not just inspiration",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)",
-          "description": "**Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "**Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)",
-          "description": "**Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "**Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic",
-          "description": "**Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "**Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)",
-          "description": "**Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "**In claude.ai**",
-          "description": "**In claude.ai**: Displayed as an interactive artifact - runs instantly",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "**As a file**",
-          "description": "**As a file**: Save and open in any browser - no server needed",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "**Sharing**",
-          "description": "**Sharing**: Send the HTML file - it's completely self-contained",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "**Interpret the user's intent** - What aesthetic is being sought?",
-          "description": "**Interpret the user's intent** - What aesthetic is being sought?",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "**Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach",
-          "description": "**Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "**Implement it in code** - Build the algorithm that expresses this philosophy",
-          "description": "**Implement it in code** - Build the algorithm that expresses this philosophy",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "**Design appropriate parameters** - What should be tunable?",
-          "description": "**Design appropriate parameters** - What should be tunable?",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "**Build matching UI controls** - Sliders/inputs for those parameters",
-          "description": "**Build matching UI controls** - Sliders/inputs for those parameters",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 405
adapters-output/codebuddy/algorithmic-art/skills/algorithmic-art/SKILL.md

@@ -1,405 +0,0 @@
----
-name: algorithmic-art
-description: Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
-license: Complete terms in LICENSE.txt
----
-
-Algorithmic philosophies are computational aesthetic movements that are then expressed through code. Output .md files (philosophy), .html files (interactive viewer), and .js files (generative algorithms).
-
-This happens in two steps:
-1. Algorithmic Philosophy Creation (.md file)
-2. Express by creating p5.js generative art (.html + .js files)
-
-First, undertake this task:
-
-## ALGORITHMIC PHILOSOPHY CREATION
-
-To begin, create an ALGORITHMIC PHILOSOPHY (not static images or templates) that will be interpreted through:
-- Computational processes, emergent behavior, mathematical beauty
-- Seeded randomness, noise fields, organic systems
-- Particles, flows, fields, forces
-- Parametric variation and controlled chaos
-
-### THE CRITICAL UNDERSTANDING
-- What is received: Some subtle input or instructions by the user to take into account, but use as a foundation; it should not constrain creative freedom.
-- What is created: An algorithmic philosophy/generative aesthetic movement.
-- What happens next: The same version receives the philosophy and EXPRESSES IT IN CODE - creating p5.js sketches that are 90% algorithmic generation, 10% essential parameters.
-
-Consider this approach:
-- Write a manifesto for a generative art movement
-- The next phase involves writing the algorithm that brings it to life
-
-The philosophy must emphasize: Algorithmic expression. Emergent behavior. Computational beauty. Seeded variation.
-
-### HOW TO GENERATE AN ALGORITHMIC PHILOSOPHY
-
-**Name the movement** (1-2 words): "Organic Turbulence" / "Quantum Harmonics" / "Emergent Stillness"
-
-**Articulate the philosophy** (4-6 paragraphs - concise but complete):
-
-To capture the ALGORITHMIC essence, express how this philosophy manifests through:
-- Computational processes and mathematical relationships?
-- Noise functions and randomness patterns?
-- Particle behaviors and field dynamics?
-- Temporal evolution and system states?
-- Parametric variation and emergent complexity?
-
-**CRITICAL GUIDELINES:**
-- **Avoid redundancy**: Each algorithmic aspect should be mentioned once. Avoid repeating concepts about noise theory, particle dynamics, or mathematical principles unless adding new depth.
-- **Emphasize craftsmanship REPEATEDLY**: The philosophy MUST stress multiple times that the final algorithm should appear as though it took countless hours to develop, was refined with care, and comes from someone at the absolute top of their field. This framing is essential - repeat phrases like "meticulously crafted algorithm," "the product of deep computational expertise," "painstaking optimization," "master-level implementation."
-- **Leave creative space**: Be specific about the algorithmic direction, but concise enough that the next Claude has room to make interpretive implementation choices at an extremely high level of craftsmanship.
-
-The philosophy must guide the next version to express ideas ALGORITHMICALLY, not through static images. Beauty lives in the process, not the final frame.
-
-### PHILOSOPHY EXAMPLES
-
-**"Organic Turbulence"**
-Philosophy: Chaos constrained by natural law, order emerging from disorder.
-Algorithmic expression: Flow fields driven by layered Perlin noise. Thousands of particles following vector forces, their trails accumulating into organic density maps. Multiple noise octaves create turbulent regions and calm zones. Color emerges from velocity and density - fast particles burn bright, slow ones fade to shadow. The algorithm runs until equilibrium - a meticulously tuned balance where every parameter was refined through countless iterations by a master of computational aesthetics.
-
-**"Quantum Harmonics"**
-Philosophy: Discrete entities exhibiting wave-like interference patterns.
-Algorithmic expression: Particles initialized on a grid, each carrying a phase value that evolves through sine waves. When particles are near, their phases interfere - constructive interference creates bright nodes, destructive creates voids. Simple harmonic motion generates complex emergent mandalas. The result of painstaking frequency calibration where every ratio was carefully chosen to produce resonant beauty.
-
-**"Recursive Whispers"**
-Philosophy: Self-similarity across scales, infinite depth in finite space.
-Algorithmic expression: Branching structures that subdivide recursively. Each branch slightly randomized but constrained by golden ratios. L-systems or recursive subdivision generate tree-like forms that feel both mathematical and organic. Subtle noise perturbations break perfect symmetry. Line weights diminish with each recursion level. Every branching angle the product of deep mathematical exploration.
-
-**"Field Dynamics"**
-Philosophy: Invisible forces made visible through their effects on matter.
-Algorithmic expression: Vector fields constructed from mathematical functions or noise. Particles born at edges, flowing along field lines, dying when they reach equilibrium or boundaries. Multiple fields can attract, repel, or rotate particles. The visualization shows only the traces - ghost-like evidence of invisible forces. A computational dance meticulously choreographed through force balance.
-
-**"Stochastic Crystallization"**
-Philosophy: Random processes crystallizing into ordered structures.
-Algorithmic expression: Randomized circle packing or Voronoi tessellation. Start with random points, let them evolve through relaxation algorithms. Cells push apart until equilibrium. Color based on cell size, neighbor count, or distance from center. The organic tiling that emerges feels both random and inevitable. Every seed produces unique crystalline beauty - the mark of a master-level generative algorithm.
-
-*These are condensed examples. The actual algorithmic philosophy should be 4-6 substantial paragraphs.*
-
-### ESSENTIAL PRINCIPLES
-- **ALGORITHMIC PHILOSOPHY**: Creating a computational worldview to be expressed through code
-- **PROCESS OVER PRODUCT**: Always emphasize that beauty emerges from the algorithm's execution - each run is unique
-- **PARAMETRIC EXPRESSION**: Ideas communicate through mathematical relationships, forces, behaviors - not static composition
-- **ARTISTIC FREEDOM**: The next Claude interprets the philosophy algorithmically - provide creative implementation room
-- **PURE GENERATIVE ART**: This is about making LIVING ALGORITHMS, not static images with randomness
-- **EXPERT CRAFTSMANSHIP**: Repeatedly emphasize the final algorithm must feel meticulously crafted, refined through countless iterations, the product of deep expertise by someone at the absolute top of their field in computational aesthetics
-
-**The algorithmic philosophy should be 4-6 paragraphs long.** Fill it with poetic computational philosophy that brings together the intended vision. Avoid repeating the same points. Output this algorithmic philosophy as a .md file.
-
----
-
-## DEDUCING THE CONCEPTUAL SEED
-
-**CRITICAL STEP**: Before implementing the algorithm, identify the subtle conceptual thread from the original request.
-
-**THE ESSENTIAL PRINCIPLE**:
-The concept is a **subtle, niche reference embedded within the algorithm itself** - not always literal, always sophisticated. Someone familiar with the subject should feel it intuitively, while others simply experience a masterful generative composition. The algorithmic philosophy provides the computational language. The deduced concept provides the soul - the quiet conceptual DNA woven invisibly into parameters, behaviors, and emergence patterns.
-
-This is **VERY IMPORTANT**: The reference must be so refined that it enhances the work's depth without announcing itself. Think like a jazz musician quoting another song through algorithmic harmony - only those who know will catch it, but everyone appreciates the generative beauty.
-
----
-
-## P5.JS IMPLEMENTATION
-
-With the philosophy AND conceptual framework established, express it through code. Pause to gather thoughts before proceeding. Use only the algorithmic philosophy created and the instructions below.
-
-### ⚠️ STEP 0: READ THE TEMPLATE FIRST ⚠️
-
-**CRITICAL: BEFORE writing any HTML:**
-
-1. **Read** `templates/viewer.html` using the Read tool
-2. **Study** the exact structure, styling, and Anthropic branding
-3. **Use that file as the LITERAL STARTING POINT** - not just inspiration
-4. **Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)
-5. **Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)
-
-**Avoid:**
-- ❌ Creating HTML from scratch
-- ❌ Inventing custom styling or color schemes
-- ❌ Using system fonts or dark themes
-- ❌ Changing the sidebar structure
-
-**Follow these practices:**
-- ✅ Copy the template's exact HTML structure
-- ✅ Keep Anthropic branding (Poppins/Lora fonts, light colors, gradient backdrop)
-- ✅ Maintain the sidebar layout (Seed → Parameters → Colors? → Actions)
-- ✅ Replace only the p5.js algorithm and parameter controls
-
-The template is the foundation. Build on it, don't rebuild it.
-
----
-
-To create gallery-quality computational art that lives and breathes, use the algorithmic philosophy as the foundation.
-
-### TECHNICAL REQUIREMENTS
-
-**Seeded Randomness (Art Blocks Pattern)**:
-```javascript
-// ALWAYS use a seed for reproducibility
-let seed = 12345; // or hash from user input
-randomSeed(seed);
-noiseSeed(seed);
-```
-
-**Parameter Structure - FOLLOW THE PHILOSOPHY**:
-
-To establish parameters that emerge naturally from the algorithmic philosophy, consider: "What qualities of this system can be adjusted?"
-
-```javascript
-let params = {
-  seed: 12345,  // Always include seed for reproducibility
-  // colors
-  // Add parameters that control YOUR algorithm:
-  // - Quantities (how many?)
-  // - Scales (how big? how fast?)
-  // - Probabilities (how likely?)
-  // - Ratios (what proportions?)
-  // - Angles (what direction?)
-  // - Thresholds (when does behavior change?)
-};
-```
-
-**To design effective parameters, focus on the properties the system needs to be tunable rather than thinking in terms of "pattern types".**
-
-**Core Algorithm - EXPRESS THE PHILOSOPHY**:
-
-**CRITICAL**: The algorithmic philosophy should dictate what to build.
-
-To express the philosophy through code, avoid thinking "which pattern should I use?" and instead think "how to express this philosophy through code?"
-
-If the philosophy is about **organic emergence**, consider using:
-- Elements that accumulate or grow over time
-- Random processes constrained by natural rules
-- Feedback loops and interactions
-
-If the philosophy is about **mathematical beauty**, consider using:
-- Geometric relationships and ratios
-- Trigonometric functions and harmonics
-- Precise calculations creating unexpected patterns
-
-If the philosophy is about **controlled chaos**, consider using:
-- Random variation within strict boundaries
-- Bifurcation and phase transitions
-- Order emerging from disorder
-
-**The algorithm flows from the philosophy, not from a menu of options.**
-
-To guide the implementation, let the conceptual essence inform creative and original choices. Build something that expresses the vision for this particular request.
-
-**Canvas Setup**: Standard p5.js structure:
-```javascript
-function setup() {
-  createCanvas(1200, 1200);
-  // Initialize your system
-}
-
-function draw() {
-  // Your generative algorithm
-  // Can be static (noLoop) or animated
-}
-```
-
-### CRAFTSMANSHIP REQUIREMENTS
-
-**CRITICAL**: To achieve mastery, create algorithms that feel like they emerged through countless iterations by a master generative artist. Tune every parameter carefully. Ensure every pattern emerges with purpose. This is NOT random noise - this is CONTROLLED CHAOS refined through deep expertise.
-
-- **Balance**: Complexity without visual noise, order without rigidity
-- **Color Harmony**: Thoughtful palettes, not random RGB values
-- **Composition**: Even in randomness, maintain visual hierarchy and flow
-- **Performance**: Smooth execution, optimized for real-time if animated
-- **Reproducibility**: Same seed ALWAYS produces identical output
-
-### OUTPUT FORMAT
-
-Output:
-1. **Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic
-2. **Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)
-
-The HTML artifact contains everything: p5.js (from CDN), the algorithm, parameter controls, and UI - all in one file that works immediately in claude.ai artifacts or any browser. Start from the template file, not from scratch.
-
----
-
-## INTERACTIVE ARTIFACT CREATION
-
-**REMINDER: `templates/viewer.html` should have already been read (see STEP 0). Use that file as the starting point.**
-
-To allow exploration of the generative art, create a single, self-contained HTML artifact. Ensure this artifact works immediately in claude.ai or any browser - no setup required. Embed everything inline.
-
-### CRITICAL: WHAT'S FIXED VS VARIABLE
-
-The `templates/viewer.html` file is the foundation. It contains the exact structure and styling needed.
-
-**FIXED (always include exactly as shown):**
-- Layout structure (header, sidebar, main canvas area)
-- Anthropic branding (UI colors, fonts, gradients)
-- Seed section in sidebar:
-  - Seed display
-  - Previous/Next buttons
-  - Random button
-  - Jump to seed input + Go button
-- Actions section in sidebar:
-  - Regenerate button
-  - Reset button
-
-**VARIABLE (customize for each artwork):**
-- The entire p5.js algorithm (setup/draw/classes)
-- The parameters object (define what the art needs)
-- The Parameters section in sidebar:
-  - Number of parameter controls
-  - Parameter names
-  - Min/max/step values for sliders
-  - Control types (sliders, inputs, etc.)
-- Colors section (optional):
-  - Some art needs color pickers
-  - Some art might use fixed colors
-  - Some art might be monochrome (no color controls needed)
-  - Decide based on the art's needs
-
-**Every artwork should have unique parameters and algorithm!** The fixed parts provide consistent UX - everything else expresses the unique vision.
-
-### REQUIRED FEATURES
-
-**1. Parameter Controls**
-- Sliders for numeric parameters (particle count, noise scale, speed, etc.)
-- Color pickers for palette colors
-- Real-time updates when parameters change
-- Reset button to restore defaults
-
-**2. Seed Navigation**
-- Display current seed number
-- "Previous" and "Next" buttons to cycle through seeds
-- "Random" button for random seed
-- Input field to jump to specific seed
-- Generate 100 variations when requested (seeds 1-100)
-
-**3. Single Artifact Structure**
-```html
-<!DOCTYPE html>
-<html>
-<head>
-  <!-- p5.js from CDN - always available -->
-  <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script>
-  <style>
-    /* All styling inline - clean, minimal */
-    /* Canvas on top, controls below */
-  </style>
-</head>
-<body>
-  <div id="canvas-container"></div>
-  <div id="controls">
-    <!-- All parameter controls -->
-  </div>
-  <script>
-    // ALL p5.js code inline here
-    // Parameter objects, classes, functions
-    // setup() and draw()
-    // UI handlers
-    // Everything self-contained
-  </script>
-</body>
-</html>
-```
-
-**CRITICAL**: This is a single artifact. No external files, no imports (except p5.js CDN). Everything inline.
-
-**4. Implementation Details - BUILD THE SIDEBAR**
-
-The sidebar structure:
-
-**1. Seed (FIXED)** - Always include exactly as shown:
-- Seed display
-- Prev/Next/Random/Jump buttons
-
-**2. Parameters (VARIABLE)** - Create controls for the art:
-```html
-<div class="control-group">
-    <label>Parameter Name</label>
-    <input type="range" id="param" min="..." max="..." step="..." value="..." oninput="updateParam('param', this.value)">
-    <span class="value-display" id="param-value">...</span>
-</div>
-```
-Add as many control-group divs as there are parameters.
-
-**3. Colors (OPTIONAL/VARIABLE)** - Include if the art needs adjustable colors:
-- Add color pickers if users should control palette
-- Skip this section if the art uses fixed colors
-- Skip if the art is monochrome
-
-**4. Actions (FIXED)** - Always include exactly as shown:
-- Regenerate button
-- Reset button
-- Download PNG button
-
-**Requirements**:
-- Seed controls must work (prev/next/random/jump/display)
-- All parameters must have UI controls
-- Regenerate, Reset, Download buttons must work
-- Keep Anthropic branding (UI styling, not art colors)
-
-### USING THE ARTIFACT
-
-The HTML artifact works immediately:
-1. **In claude.ai**: Displayed as an interactive artifact - runs instantly
-2. **As a file**: Save and open in any browser - no server needed
-3. **Sharing**: Send the HTML file - it's completely self-contained
-
----
-
-## VARIATIONS & EXPLORATION
-
-The artifact includes seed navigation by default (prev/next/random buttons), allowing users to explore variations without creating multiple files. If the user wants specific variations highlighted:
-
-- Include seed presets (buttons for "Variation 1: Seed 42", "Variation 2: Seed 127", etc.)
-- Add a "Gallery Mode" that shows thumbnails of multiple seeds side-by-side
-- All within the same single artifact
-
-This is like creating a series of prints from the same plate - the algorithm is consistent, but each seed reveals different facets of its potential. The interactive nature means users discover their own favorites by exploring the seed space.
-
----
-
-## THE CREATIVE PROCESS
-
-**User request** → **Algorithmic philosophy** → **Implementation**
-
-Each request is unique. The process involves:
-
-1. **Interpret the user's intent** - What aesthetic is being sought?
-2. **Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach
-3. **Implement it in code** - Build the algorithm that expresses this philosophy
-4. **Design appropriate parameters** - What should be tunable?
-5. **Build matching UI controls** - Sliders/inputs for those parameters
-
-**The constants**:
-- Anthropic branding (colors, fonts, layout)
-- Seed navigation (always present)
-- Self-contained HTML artifact
-
-**Everything else is variable**:
-- The algorithm itself
-- The parameters
-- The UI controls
-- The visual outcome
-
-To achieve the best results, trust creativity and let the philosophy guide the implementation.
-
----
-
-## RESOURCES
-
-This skill includes helpful templates and documentation:
-
-- **templates/viewer.html**: REQUIRED STARTING POINT for all HTML artifacts.
-  - This is the foundation - contains the exact structure and Anthropic branding
-  - **Keep unchanged**: Layout structure, sidebar organization, Anthropic colors/fonts, seed controls, action buttons
-  - **Replace**: The p5.js algorithm, parameter definitions, and UI controls in Parameters section
-  - The extensive comments in the file mark exactly what to keep vs replace
-
-- **templates/generator_template.js**: Reference for p5.js best practices and code structure principles.
-  - Shows how to organize parameters, use seeded randomness, structure classes
-  - NOT a pattern menu - use these principles to build unique algorithms
-  - Embed algorithms inline in the HTML artifact (don't create separate .js files)
-
-**Critical reminder**:
-- The **template is the STARTING POINT**, not inspiration
-- The **algorithm is where to create** something unique
-- Don't copy the flow field example - build what the philosophy demands
-- But DO keep the exact UI structure and Anthropic branding from the template

+ 0 - 111
adapters-output/codebuddy/algorithmic-art/workflows/algorithmic-art.json

@@ -1,111 +0,0 @@
-{
-  "id": "algorithmic-art",
-  "name": "algorithmic-art",
-  "description": "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "Algorithmic Philosophy Creation (.md file)",
-      "description": "Algorithmic Philosophy Creation (.md file)",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Express by creating p5.js generative art (.html + .js files)",
-      "description": "Express by creating p5.js generative art (.html + .js files)",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Read** `templates/viewer.html` using the Read tool",
-      "description": "**Read** `templates/viewer.html` using the Read tool",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Study** the exact structure, styling, and Anthropic branding",
-      "description": "**Study** the exact structure, styling, and Anthropic branding",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Use that file as the LITERAL STARTING POINT** - not just inspiration",
-      "description": "**Use that file as the LITERAL STARTING POINT** - not just inspiration",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)",
-      "description": "**Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "**Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)",
-      "description": "**Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "**Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic",
-      "description": "**Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "**Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)",
-      "description": "**Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "**In claude.ai**",
-      "description": "**In claude.ai**: Displayed as an interactive artifact - runs instantly",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "**As a file**",
-      "description": "**As a file**: Save and open in any browser - no server needed",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "**Sharing**",
-      "description": "**Sharing**: Send the HTML file - it's completely self-contained",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "**Interpret the user's intent** - What aesthetic is being sought?",
-      "description": "**Interpret the user's intent** - What aesthetic is being sought?",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "**Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach",
-      "description": "**Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "**Implement it in code** - Build the algorithm that expresses this philosophy",
-      "description": "**Implement it in code** - Build the algorithm that expresses this philosophy",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "**Design appropriate parameters** - What should be tunable?",
-      "description": "**Design appropriate parameters** - What should be tunable?",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "**Build matching UI controls** - Sliders/inputs for those parameters",
-      "description": "**Build matching UI controls** - Sliders/inputs for those parameters",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 36
adapters-output/codebuddy/brand-guidelines/manifest.json

@@ -1,36 +0,0 @@
-{
-  "name": "brand-guidelines",
-  "version": "1.0.0",
-  "description": "Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "brand-guidelines",
-      "name": "Anthropic Brand Styling",
-      "description": "Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "analyze",
-          "description": "Analyze requirements",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "execute",
-          "description": "Execute skill task",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "output",
-          "description": "Generate output",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 27
adapters-output/codebuddy/brand-guidelines/workflows/brand-guidelines.json

@@ -1,27 +0,0 @@
-{
-  "id": "brand-guidelines",
-  "name": "Anthropic Brand Styling",
-  "description": "Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "analyze",
-      "description": "Analyze requirements",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "execute",
-      "description": "Execute skill task",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "output",
-      "description": "Generate output",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 30
adapters-output/codebuddy/canvas-design/manifest.json

@@ -1,30 +0,0 @@
-{
-  "name": "canvas-design",
-  "version": "1.0.0",
-  "description": "Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "canvas-design",
-      "name": "canvas-design",
-      "description": "Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "Design Philosophy Creation (.md file)",
-          "description": "Design Philosophy Creation (.md file)",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Express by creating it on a canvas (.pdf file or .png file)",
-          "description": "Express by creating it on a canvas (.pdf file or .png file)",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 21
adapters-output/codebuddy/canvas-design/workflows/canvas-design.json

@@ -1,21 +0,0 @@
-{
-  "id": "canvas-design",
-  "name": "canvas-design",
-  "description": "Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "Design Philosophy Creation (.md file)",
-      "description": "Design Philosophy Creation (.md file)",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Express by creating it on a canvas (.pdf file or .png file)",
-      "description": "Express by creating it on a canvas (.pdf file or .png file)",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/code-generator/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "code-generator",
-  "version": "1.0.0",
-  "description": "帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "code-generator",
-      "name": "代码生成技能",
-      "description": "帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**清晰性**",
-          "description": "**清晰性**: 代码应清晰易懂,命名规范",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**可维护性**",
-          "description": "**可维护性**: 结构良好,易于修改和扩展",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**健壮性**",
-          "description": "**健壮性**: 包含错误处理和边界检查",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**文档化**",
-          "description": "**文档化**: 提供完整的注释和文档",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**测试性**",
-          "description": "**测试性**: 代码应易于测试",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 89
adapters-output/codebuddy/code-generator/skills/code-generator/SKILL.md

@@ -1,89 +0,0 @@
----
-name: code-generator
-description: 帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。
----
-
-# 代码生成技能
-
-## 概述
-
-本技能帮助您生成高质量的代码,支持多种编程语言,遵循最佳实践和设计模式。
-
-**关键词**: 代码生成、编程、函数、类、模块、项目开发、代码示例
-
-## 核心功能
-
-### 1. 函数和类生成
-
-- 生成符合规范的函数和类
-- 添加完整的文档注释
-- 实现错误处理和边界检查
-- 遵循语言特定的最佳实践
-
-### 2. 模块和包开发
-
-- 创建结构化的模块和包
-- 设计清晰的 API 接口
-- 实现模块间的依赖管理
-- 创建配置文件和初始化代码
-
-### 3. 项目脚手架
-
-- 生成完整的项目结构
-- 创建配置文件(package.json, requirements.txt 等)
-- 设置构建和测试环境
-- 添加 README 和文档
-
-### 4. 代码优化和重构
-
-- 优化代码性能和可读性
-- 应用设计模式和最佳实践
-- 重构代码结构
-- 添加单元测试
-
-## 使用指南
-
-### 代码生成原则
-
-1. **清晰性**: 代码应清晰易懂,命名规范
-2. **可维护性**: 结构良好,易于修改和扩展
-3. **健壮性**: 包含错误处理和边界检查
-4. **文档化**: 提供完整的注释和文档
-5. **测试性**: 代码应易于测试
-
-### 支持的编程语言
-
-- Python
-- JavaScript/TypeScript
-- Java
-- Go
-- Rust
-- 其他常见编程语言
-
-### 代码结构要求
-
-- **导入部分**: 清晰的导入语句
-- **文档字符串**: 函数和类的文档
-- **实现代码**: 核心逻辑实现
-- **测试代码**: 单元测试(如需要)
-- **示例代码**: 使用示例(如需要)
-
-## 输出格式
-
-生成的代码应包含:
-
-- **代码文件**: 完整的源代码文件
-- **文档注释**: 函数、类、模块的文档
-- **使用示例**: 代码使用示例
-- **依赖说明**: 所需的依赖和版本
-- **测试代码**: 相关的测试用例
-
-## 最佳实践
-
-- 遵循语言的编码规范和风格指南
-- 使用有意义的变量和函数名
-- 添加类型提示(如适用)
-- 实现适当的错误处理
-- 编写清晰的文档注释
-- 考虑性能和可扩展性
-- 遵循 SOLID 原则和设计模式

+ 0 - 39
adapters-output/codebuddy/code-generator/workflows/code-generator.json

@@ -1,39 +0,0 @@
-{
-  "id": "code-generator",
-  "name": "代码生成技能",
-  "description": "帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**清晰性**",
-      "description": "**清晰性**: 代码应清晰易懂,命名规范",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**可维护性**",
-      "description": "**可维护性**: 结构良好,易于修改和扩展",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**健壮性**",
-      "description": "**健壮性**: 包含错误处理和边界检查",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**文档化**",
-      "description": "**文档化**: 提供完整的注释和文档",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**测试性**",
-      "description": "**测试性**: 代码应易于测试",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 42
adapters-output/codebuddy/course-designer/manifest.json

@@ -1,42 +0,0 @@
-{
-  "name": "course-designer",
-  "version": "1.0.0",
-  "description": "帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "course-designer",
-      "name": "课程设计技能",
-      "description": "帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**需求分析**",
-          "description": "**需求分析**",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**内容规划**",
-          "description": "**内容规划**",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**活动设计**",
-          "description": "**活动设计**",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**评估设计**",
-          "description": "**评估设计**",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 86
adapters-output/codebuddy/course-designer/skills/course-designer/SKILL.md

@@ -1,86 +0,0 @@
----
-name: course-designer
-description: 帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。
----
-
-# 课程设计技能
-
-## 概述
-
-本技能帮助您创建结构化的课程内容,包括课程大纲、学习目标、教学计划和评估方案。
-
-**关键词**: 课程设计、教学大纲、学习目标、教学计划、课程规划、教育设计
-
-## 核心功能
-
-### 1. 课程大纲设计
-
-- 分析学习需求和目标受众
-- 设计课程结构和模块划分
-- 确定课程时长和进度安排
-- 规划知识点的递进关系
-
-### 2. 学习目标制定
-
-- 使用 Bloom 分类法制定认知目标
-- 设计可测量的学习成果
-- 确保目标与评估方式对齐
-- 区分不同层次的学习目标(记忆、理解、应用、分析、评价、创造)
-
-### 3. 教学计划编写
-
-- 设计每节课的教学流程
-- 规划教学活动和互动环节
-- 准备教学资源和材料清单
-- 安排实践练习和作业
-
-### 4. 评估方案设计
-
-- 设计形成性评估(过程评估)
-- 设计总结性评估(最终评估)
-- 创建评估标准和评分 rubric
-- 规划多种评估方式(测验、项目、报告等)
-
-## 使用指南
-
-### 课程设计流程
-
-1. **需求分析**
-   - 明确目标受众和学习需求
-   - 确定课程目标和预期成果
-   - 分析现有资源和约束条件
-
-2. **内容规划**
-   - 划分课程模块和单元
-   - 确定每个模块的核心知识点
-   - 规划知识点的学习顺序
-
-3. **活动设计**
-   - 为每个知识点设计教学活动
-   - 规划实践练习和项目
-   - 设计互动和讨论环节
-
-4. **评估设计**
-   - 设计评估方式和标准
-   - 创建评估工具和 rubric
-   - 规划评估时间点
-
-## 输出格式
-
-课程设计应包含以下部分:
-
-- **课程基本信息**: 课程名称、目标受众、总时长
-- **课程目标**: 总体目标和具体学习目标
-- **课程大纲**: 模块划分和内容概览
-- **详细教学计划**: 每节课的教学安排
-- **评估方案**: 评估方式和标准
-- **资源清单**: 所需的教学资源
-
-## 最佳实践
-
-- 确保学习目标清晰、可测量
-- 保持内容递进,由浅入深
-- 平衡理论学习和实践应用
-- 设计多样化的教学活动
-- 评估方式应与学习目标对齐
-- 考虑不同学习风格和需求

+ 0 - 33
adapters-output/codebuddy/course-designer/workflows/course-designer.json

@@ -1,33 +0,0 @@
-{
-  "id": "course-designer",
-  "name": "课程设计技能",
-  "description": "帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**需求分析**",
-      "description": "**需求分析**",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**内容规划**",
-      "description": "**内容规划**",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**活动设计**",
-      "description": "**活动设计**",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**评估设计**",
-      "description": "**评估设计**",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 132
adapters-output/codebuddy/doc-coauthoring/manifest.json

@@ -1,132 +0,0 @@
-{
-  "name": "doc-coauthoring",
-  "version": "1.0.0",
-  "description": "Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "doc-coauthoring",
-      "name": "Doc Co-Authoring Workflow",
-      "description": "Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Context Gathering**",
-          "description": "**Context Gathering**: User provides all relevant context while Claude asks clarifying questions",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Refinement & Structure**",
-          "description": "**Refinement & Structure**: Iteratively build each section through brainstorming and editing",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Reader Testing**",
-          "description": "**Reader Testing**: Test the doc with a fresh Claude (no context) to catch blind spots before others read it",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "What type of document is this? (e.g., technical spec, decision doc, proposal)",
-          "description": "What type of document is this? (e.g., technical spec, decision doc, proposal)",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "Who's the primary audience?",
-          "description": "Who's the primary audience?",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "What's the desired impact when someone reads this?",
-          "description": "What's the desired impact when someone reads this?",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "Is there a template or specific format to follow?",
-          "description": "Is there a template or specific format to follow?",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "Any other constraints or context to know?",
-          "description": "Any other constraints or context to know?",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "Clarifying questions will be asked about what to include",
-          "description": "Clarifying questions will be asked about what to include",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "5-20 options will be brainstormed",
-          "description": "5-20 options will be brainstormed",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "User will indicate what to keep/remove/combine",
-          "description": "User will indicate what to keep/remove/combine",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "The section will be drafted",
-          "description": "The section will be drafted",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "It will be refined through surgical edits",
-          "description": "It will be refined through surgical edits",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "Open a fresh Claude conversation",
-          "description": "Open a fresh Claude conversation: https://claude.ai",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)",
-          "description": "Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "Ask Reader Claude the generated questions",
-          "description": "Ask Reader Claude the generated questions",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "Recommend they do a final read-through themselves - they own this document and are responsible for its quality",
-          "description": "Recommend they do a final read-through themselves - they own this document and are responsible for its quality",
-          "type": "instruction"
-        },
-        {
-          "id": 18,
-          "name": "Suggest double-checking any facts, links, or technical details",
-          "description": "Suggest double-checking any facts, links, or technical details",
-          "type": "instruction"
-        },
-        {
-          "id": 19,
-          "name": "Ask them to verify it achieves the impact they wanted",
-          "description": "Ask them to verify it achieves the impact they wanted",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 375
adapters-output/codebuddy/doc-coauthoring/skills/doc-coauthoring/SKILL.md

@@ -1,375 +0,0 @@
----
-name: doc-coauthoring
-description: Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
----
-
-# Doc Co-Authoring Workflow
-
-This skill provides a structured workflow for guiding users through collaborative document creation. Act as an active guide, walking users through three stages: Context Gathering, Refinement & Structure, and Reader Testing.
-
-## When to Offer This Workflow
-
-**Trigger conditions:**
-- User mentions writing documentation: "write a doc", "draft a proposal", "create a spec", "write up"
-- User mentions specific doc types: "PRD", "design doc", "decision doc", "RFC"
-- User seems to be starting a substantial writing task
-
-**Initial offer:**
-Offer the user a structured workflow for co-authoring the document. Explain the three stages:
-
-1. **Context Gathering**: User provides all relevant context while Claude asks clarifying questions
-2. **Refinement & Structure**: Iteratively build each section through brainstorming and editing
-3. **Reader Testing**: Test the doc with a fresh Claude (no context) to catch blind spots before others read it
-
-Explain that this approach helps ensure the doc works well when others read it (including when they paste it into Claude). Ask if they want to try this workflow or prefer to work freeform.
-
-If user declines, work freeform. If user accepts, proceed to Stage 1.
-
-## Stage 1: Context Gathering
-
-**Goal:** Close the gap between what the user knows and what Claude knows, enabling smart guidance later.
-
-### Initial Questions
-
-Start by asking the user for meta-context about the document:
-
-1. What type of document is this? (e.g., technical spec, decision doc, proposal)
-2. Who's the primary audience?
-3. What's the desired impact when someone reads this?
-4. Is there a template or specific format to follow?
-5. Any other constraints or context to know?
-
-Inform them they can answer in shorthand or dump information however works best for them.
-
-**If user provides a template or mentions a doc type:**
-- Ask if they have a template document to share
-- If they provide a link to a shared document, use the appropriate integration to fetch it
-- If they provide a file, read it
-
-**If user mentions editing an existing shared document:**
-- Use the appropriate integration to read the current state
-- Check for images without alt-text
-- If images exist without alt-text, explain that when others use Claude to understand the doc, Claude won't be able to see them. Ask if they want alt-text generated. If so, request they paste each image into chat for descriptive alt-text generation.
-
-### Info Dumping
-
-Once initial questions are answered, encourage the user to dump all the context they have. Request information such as:
-- Background on the project/problem
-- Related team discussions or shared documents
-- Why alternative solutions aren't being used
-- Organizational context (team dynamics, past incidents, politics)
-- Timeline pressures or constraints
-- Technical architecture or dependencies
-- Stakeholder concerns
-
-Advise them not to worry about organizing it - just get it all out. Offer multiple ways to provide context:
-- Info dump stream-of-consciousness
-- Point to team channels or threads to read
-- Link to shared documents
-
-**If integrations are available** (e.g., Slack, Teams, Google Drive, SharePoint, or other MCP servers), mention that these can be used to pull in context directly.
-
-**If no integrations are detected and in Claude.ai or Claude app:** Suggest they can enable connectors in their Claude settings to allow pulling context from messaging apps and document storage directly.
-
-Inform them clarifying questions will be asked once they've done their initial dump.
-
-**During context gathering:**
-
-- If user mentions team channels or shared documents:
-  - If integrations available: Inform them the content will be read now, then use the appropriate integration
-  - If integrations not available: Explain lack of access. Suggest they enable connectors in Claude settings, or paste the relevant content directly.
-
-- If user mentions entities/projects that are unknown:
-  - Ask if connected tools should be searched to learn more
-  - Wait for user confirmation before searching
-
-- As user provides context, track what's being learned and what's still unclear
-
-**Asking clarifying questions:**
-
-When user signals they've done their initial dump (or after substantial context provided), ask clarifying questions to ensure understanding:
-
-Generate 5-10 numbered questions based on gaps in the context.
-
-Inform them they can use shorthand to answer (e.g., "1: yes, 2: see #channel, 3: no because backwards compat"), link to more docs, point to channels to read, or just keep info-dumping. Whatever's most efficient for them.
-
-**Exit condition:**
-Sufficient context has been gathered when questions show understanding - when edge cases and trade-offs can be asked about without needing basics explained.
-
-**Transition:**
-Ask if there's any more context they want to provide at this stage, or if it's time to move on to drafting the document.
-
-If user wants to add more, let them. When ready, proceed to Stage 2.
-
-## Stage 2: Refinement & Structure
-
-**Goal:** Build the document section by section through brainstorming, curation, and iterative refinement.
-
-**Instructions to user:**
-Explain that the document will be built section by section. For each section:
-1. Clarifying questions will be asked about what to include
-2. 5-20 options will be brainstormed
-3. User will indicate what to keep/remove/combine
-4. The section will be drafted
-5. It will be refined through surgical edits
-
-Start with whichever section has the most unknowns (usually the core decision/proposal), then work through the rest.
-
-**Section ordering:**
-
-If the document structure is clear:
-Ask which section they'd like to start with.
-
-Suggest starting with whichever section has the most unknowns. For decision docs, that's usually the core proposal. For specs, it's typically the technical approach. Summary sections are best left for last.
-
-If user doesn't know what sections they need:
-Based on the type of document and template, suggest 3-5 sections appropriate for the doc type.
-
-Ask if this structure works, or if they want to adjust it.
-
-**Once structure is agreed:**
-
-Create the initial document structure with placeholder text for all sections.
-
-**If access to artifacts is available:**
-Use `create_file` to create an artifact. This gives both Claude and the user a scaffold to work from.
-
-Inform them that the initial structure with placeholders for all sections will be created.
-
-Create artifact with all section headers and brief placeholder text like "[To be written]" or "[Content here]".
-
-Provide the scaffold link and indicate it's time to fill in each section.
-
-**If no access to artifacts:**
-Create a markdown file in the working directory. Name it appropriately (e.g., `decision-doc.md`, `technical-spec.md`).
-
-Inform them that the initial structure with placeholders for all sections will be created.
-
-Create file with all section headers and placeholder text.
-
-Confirm the filename has been created and indicate it's time to fill in each section.
-
-**For each section:**
-
-### Step 1: Clarifying Questions
-
-Announce work will begin on the [SECTION NAME] section. Ask 5-10 clarifying questions about what should be included:
-
-Generate 5-10 specific questions based on context and section purpose.
-
-Inform them they can answer in shorthand or just indicate what's important to cover.
-
-### Step 2: Brainstorming
-
-For the [SECTION NAME] section, brainstorm [5-20] things that might be included, depending on the section's complexity. Look for:
-- Context shared that might have been forgotten
-- Angles or considerations not yet mentioned
-
-Generate 5-20 numbered options based on section complexity. At the end, offer to brainstorm more if they want additional options.
-
-### Step 3: Curation
-
-Ask which points should be kept, removed, or combined. Request brief justifications to help learn priorities for the next sections.
-
-Provide examples:
-- "Keep 1,4,7,9"
-- "Remove 3 (duplicates 1)"
-- "Remove 6 (audience already knows this)"
-- "Combine 11 and 12"
-
-**If user gives freeform feedback** (e.g., "looks good" or "I like most of it but...") instead of numbered selections, extract their preferences and proceed. Parse what they want kept/removed/changed and apply it.
-
-### Step 4: Gap Check
-
-Based on what they've selected, ask if there's anything important missing for the [SECTION NAME] section.
-
-### Step 5: Drafting
-
-Use `str_replace` to replace the placeholder text for this section with the actual drafted content.
-
-Announce the [SECTION NAME] section will be drafted now based on what they've selected.
-
-**If using artifacts:**
-After drafting, provide a link to the artifact.
-
-Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
-
-**If using a file (no artifacts):**
-After drafting, confirm completion.
-
-Inform them the [SECTION NAME] section has been drafted in [filename]. Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
-
-**Key instruction for user (include when drafting the first section):**
-Provide a note: Instead of editing the doc directly, ask them to indicate what to change. This helps learning of their style for future sections. For example: "Remove the X bullet - already covered by Y" or "Make the third paragraph more concise".
-
-### Step 6: Iterative Refinement
-
-As user provides feedback:
-- Use `str_replace` to make edits (never reprint the whole doc)
-- **If using artifacts:** Provide link to artifact after each edit
-- **If using files:** Just confirm edits are complete
-- If user edits doc directly and asks to read it: mentally note the changes they made and keep them in mind for future sections (this shows their preferences)
-
-**Continue iterating** until user is satisfied with the section.
-
-### Quality Checking
-
-After 3 consecutive iterations with no substantial changes, ask if anything can be removed without losing important information.
-
-When section is done, confirm [SECTION NAME] is complete. Ask if ready to move to the next section.
-
-**Repeat for all sections.**
-
-### Near Completion
-
-As approaching completion (80%+ of sections done), announce intention to re-read the entire document and check for:
-- Flow and consistency across sections
-- Redundancy or contradictions
-- Anything that feels like "slop" or generic filler
-- Whether every sentence carries weight
-
-Read entire document and provide feedback.
-
-**When all sections are drafted and refined:**
-Announce all sections are drafted. Indicate intention to review the complete document one more time.
-
-Review for overall coherence, flow, completeness.
-
-Provide any final suggestions.
-
-Ask if ready to move to Reader Testing, or if they want to refine anything else.
-
-## Stage 3: Reader Testing
-
-**Goal:** Test the document with a fresh Claude (no context bleed) to verify it works for readers.
-
-**Instructions to user:**
-Explain that testing will now occur to see if the document actually works for readers. This catches blind spots - things that make sense to the authors but might confuse others.
-
-### Testing Approach
-
-**If access to sub-agents is available (e.g., in Claude Code):**
-
-Perform the testing directly without user involvement.
-
-### Step 1: Predict Reader Questions
-
-Announce intention to predict what questions readers might ask when trying to discover this document.
-
-Generate 5-10 questions that readers would realistically ask.
-
-### Step 2: Test with Sub-Agent
-
-Announce that these questions will be tested with a fresh Claude instance (no context from this conversation).
-
-For each question, invoke a sub-agent with just the document content and the question.
-
-Summarize what Reader Claude got right/wrong for each question.
-
-### Step 3: Run Additional Checks
-
-Announce additional checks will be performed.
-
-Invoke sub-agent to check for ambiguity, false assumptions, contradictions.
-
-Summarize any issues found.
-
-### Step 4: Report and Fix
-
-If issues found:
-Report that Reader Claude struggled with specific issues.
-
-List the specific issues.
-
-Indicate intention to fix these gaps.
-
-Loop back to refinement for problematic sections.
-
----
-
-**If no access to sub-agents (e.g., claude.ai web interface):**
-
-The user will need to do the testing manually.
-
-### Step 1: Predict Reader Questions
-
-Ask what questions people might ask when trying to discover this document. What would they type into Claude.ai?
-
-Generate 5-10 questions that readers would realistically ask.
-
-### Step 2: Setup Testing
-
-Provide testing instructions:
-1. Open a fresh Claude conversation: https://claude.ai
-2. Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)
-3. Ask Reader Claude the generated questions
-
-For each question, instruct Reader Claude to provide:
-- The answer
-- Whether anything was ambiguous or unclear
-- What knowledge/context the doc assumes is already known
-
-Check if Reader Claude gives correct answers or misinterprets anything.
-
-### Step 3: Additional Checks
-
-Also ask Reader Claude:
-- "What in this doc might be ambiguous or unclear to readers?"
-- "What knowledge or context does this doc assume readers already have?"
-- "Are there any internal contradictions or inconsistencies?"
-
-### Step 4: Iterate Based on Results
-
-Ask what Reader Claude got wrong or struggled with. Indicate intention to fix those gaps.
-
-Loop back to refinement for any problematic sections.
-
----
-
-### Exit Condition (Both Approaches)
-
-When Reader Claude consistently answers questions correctly and doesn't surface new gaps or ambiguities, the doc is ready.
-
-## Final Review
-
-When Reader Testing passes:
-Announce the doc has passed Reader Claude testing. Before completion:
-
-1. Recommend they do a final read-through themselves - they own this document and are responsible for its quality
-2. Suggest double-checking any facts, links, or technical details
-3. Ask them to verify it achieves the impact they wanted
-
-Ask if they want one more review, or if the work is done.
-
-**If user wants final review, provide it. Otherwise:**
-Announce document completion. Provide a few final tips:
-- Consider linking this conversation in an appendix so readers can see how the doc was developed
-- Use appendices to provide depth without bloating the main doc
-- Update the doc as feedback is received from real readers
-
-## Tips for Effective Guidance
-
-**Tone:**
-- Be direct and procedural
-- Explain rationale briefly when it affects user behavior
-- Don't try to "sell" the approach - just execute it
-
-**Handling Deviations:**
-- If user wants to skip a stage: Ask if they want to skip this and write freeform
-- If user seems frustrated: Acknowledge this is taking longer than expected. Suggest ways to move faster
-- Always give user agency to adjust the process
-
-**Context Management:**
-- Throughout, if context is missing on something mentioned, proactively ask
-- Don't let gaps accumulate - address them as they come up
-
-**Artifact Management:**
-- Use `create_file` for drafting full sections
-- Use `str_replace` for all edits
-- Provide artifact link after every change
-- Never use artifacts for brainstorming lists - that's just conversation
-
-**Quality over Speed:**
-- Don't rush through stages
-- Each iteration should make meaningful improvements
-- The goal is a document that actually works for readers

+ 0 - 123
adapters-output/codebuddy/doc-coauthoring/workflows/doc-coauthoring.json

@@ -1,123 +0,0 @@
-{
-  "id": "doc-coauthoring",
-  "name": "Doc Co-Authoring Workflow",
-  "description": "Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Context Gathering**",
-      "description": "**Context Gathering**: User provides all relevant context while Claude asks clarifying questions",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Refinement & Structure**",
-      "description": "**Refinement & Structure**: Iteratively build each section through brainstorming and editing",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Reader Testing**",
-      "description": "**Reader Testing**: Test the doc with a fresh Claude (no context) to catch blind spots before others read it",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "What type of document is this? (e.g., technical spec, decision doc, proposal)",
-      "description": "What type of document is this? (e.g., technical spec, decision doc, proposal)",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "Who's the primary audience?",
-      "description": "Who's the primary audience?",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "What's the desired impact when someone reads this?",
-      "description": "What's the desired impact when someone reads this?",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "Is there a template or specific format to follow?",
-      "description": "Is there a template or specific format to follow?",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "Any other constraints or context to know?",
-      "description": "Any other constraints or context to know?",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "Clarifying questions will be asked about what to include",
-      "description": "Clarifying questions will be asked about what to include",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "5-20 options will be brainstormed",
-      "description": "5-20 options will be brainstormed",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "User will indicate what to keep/remove/combine",
-      "description": "User will indicate what to keep/remove/combine",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "The section will be drafted",
-      "description": "The section will be drafted",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "It will be refined through surgical edits",
-      "description": "It will be refined through surgical edits",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "Open a fresh Claude conversation",
-      "description": "Open a fresh Claude conversation: https://claude.ai",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)",
-      "description": "Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "Ask Reader Claude the generated questions",
-      "description": "Ask Reader Claude the generated questions",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "Recommend they do a final read-through themselves - they own this document and are responsible for its quality",
-      "description": "Recommend they do a final read-through themselves - they own this document and are responsible for its quality",
-      "type": "instruction"
-    },
-    {
-      "id": 18,
-      "name": "Suggest double-checking any facts, links, or technical details",
-      "description": "Suggest double-checking any facts, links, or technical details",
-      "type": "instruction"
-    },
-    {
-      "id": 19,
-      "name": "Ask them to verify it achieves the impact they wanted",
-      "description": "Ask them to verify it achieves the impact they wanted",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/documentation-builder/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "documentation-builder",
-  "version": "1.0.0",
-  "description": "帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "documentation-builder",
-      "name": "文档构建技能",
-      "description": "帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**清晰性**",
-          "description": "**清晰性**: 文档应清晰易懂,避免歧义",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**完整性**",
-          "description": "**完整性**: 覆盖所有重要功能和场景",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**准确性**",
-          "description": "**准确性**: 确保文档与代码一致",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**实用性**",
-          "description": "**实用性**: 提供实际可用的示例",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**可维护性**",
-          "description": "**可维护性**: 文档应易于更新和维护",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 88
adapters-output/codebuddy/documentation-builder/skills/documentation-builder/SKILL.md

@@ -1,88 +0,0 @@
----
-name: documentation-builder
-description: 帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。
----
-
-# 文档构建技能
-
-## 概述
-
-本技能帮助您生成各种技术文档,包括 API 文档、用户手册、开发指南等。
-
-**关键词**: 文档编写、API 文档、用户手册、开发指南、技术文档、README
-
-## 核心功能
-
-### 1. API 文档生成
-
-- 生成 RESTful API 文档
-- 描述 API 端点、参数和响应
-- 提供请求和响应示例
-- 创建交互式 API 文档(如 Swagger/OpenAPI)
-
-### 2. 用户手册编写
-
-- 编写用户使用指南
-- 创建快速入门教程
-- 提供常见问题解答(FAQ)
-- 设计操作步骤和截图
-
-### 3. 开发指南创建
-
-- 编写开发环境搭建指南
-- 创建代码贡献指南
-- 设计架构和设计文档
-- 提供开发最佳实践
-
-### 4. README 和项目文档
-
-- 生成项目 README
-- 创建安装和使用说明
-- 编写变更日志(CHANGELOG)
-- 设计项目结构说明
-
-## 使用指南
-
-### 文档编写原则
-
-1. **清晰性**: 文档应清晰易懂,避免歧义
-2. **完整性**: 覆盖所有重要功能和场景
-3. **准确性**: 确保文档与代码一致
-4. **实用性**: 提供实际可用的示例
-5. **可维护性**: 文档应易于更新和维护
-
-### 文档结构
-
-- **概述**: 项目或功能的概述
-- **快速开始**: 快速上手指南
-- **详细说明**: 详细的功能说明
-- **API 参考**: API 接口文档(如适用)
-- **示例**: 使用示例和代码示例
-- **常见问题**: FAQ 和故障排除
-
-### 文档格式
-
-- Markdown(.md)
-- reStructuredText(.rst)
-- HTML
-- PDF(如需要)
-
-## 输出格式
-
-文档应包含:
-
-- **文档文件**: 完整的文档内容
-- **目录结构**: 清晰的章节和目录
-- **代码示例**: 实际可运行的代码示例
-- **图表和截图**: 可视化说明(如需要)
-- **链接和引用**: 相关资源的链接
-
-## 最佳实践
-
-- 使用清晰的标题和章节结构
-- 提供实际可用的代码示例
-- 保持文档与代码同步更新
-- 使用图表和截图辅助说明
-- 编写易于搜索的文档
-- 考虑不同水平的读者
-- 定期审查和更新文档

+ 0 - 39
adapters-output/codebuddy/documentation-builder/workflows/documentation-builder.json

@@ -1,39 +0,0 @@
-{
-  "id": "documentation-builder",
-  "name": "文档构建技能",
-  "description": "帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**清晰性**",
-      "description": "**清晰性**: 文档应清晰易懂,避免歧义",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**完整性**",
-      "description": "**完整性**: 覆盖所有重要功能和场景",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**准确性**",
-      "description": "**准确性**: 确保文档与代码一致",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**实用性**",
-      "description": "**实用性**: 提供实际可用的示例",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**可维护性**",
-      "description": "**可维护性**: 文档应易于更新和维护",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 108
adapters-output/codebuddy/docx/manifest.json

@@ -1,108 +0,0 @@
-{
-  "name": "docx",
-  "version": "1.0.0",
-  "description": "Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "docx",
-      "name": "DOCX creation, editing, and analysis",
-      "description": "Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**MANDATORY - READ ENTIRE FILE**",
-          "description": "**MANDATORY - READ ENTIRE FILE**: Read [`docx-js.md`](docx-js.md) (~500 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with document creation.",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)",
-          "description": "Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "Export as .docx using Packer.toBuffer()",
-          "description": "Export as .docx using Packer.toBuffer()",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**MANDATORY - READ ENTIRE FILE**",
-          "description": "**MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for the Document library API and XML patterns for directly editing document files.",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "Unpack the document",
-          "description": "Unpack the document: `python ooxml/scripts/unpack.py <office_file> <output_directory>`",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "Create and run a Python script using the Document library (see \"Document Library\" section in ooxml.md)",
-          "description": "Create and run a Python script using the Document library (see \"Document Library\" section in ooxml.md)",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "Pack the final document",
-          "description": "Pack the final document: `python ooxml/scripts/pack.py <input_directory> <office_file>`",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "**Get markdown representation**",
-          "description": "**Get markdown representation**: Convert document to markdown with tracked changes preserved:",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "**Identify and group changes**",
-          "description": "**Identify and group changes**: Review the document and identify ALL changes needed, organizing them into logical batches:",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "**Read documentation and unpack**",
-          "description": "**Read documentation and unpack**:",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "**Implement changes in batches**",
-          "description": "**Implement changes in batches**: Group changes logically (by section, by type, or by proximity) and implement them together in a single script. This approach:",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "**Pack the document**",
-          "description": "**Pack the document**: After all batches are complete, convert the unpacked directory back to .docx:",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "**Final verification**",
-          "description": "**Final verification**: Do a comprehensive check of the complete document:",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "**Convert DOCX to PDF**",
-          "description": "**Convert DOCX to PDF**:",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "**Convert PDF pages to JPEG images**",
-          "description": "**Convert PDF pages to JPEG images**:",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 197
adapters-output/codebuddy/docx/skills/docx/SKILL.md

@@ -1,197 +0,0 @@
----
-name: docx
-description: "Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks"
-license: Proprietary. LICENSE.txt has complete terms
----
-
-# DOCX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of a .docx file. A .docx file is essentially a ZIP archive containing XML files and other resources that you can read or edit. You have different tools and workflows available for different tasks.
-
-## Workflow Decision Tree
-
-### Reading/Analyzing Content
-Use "Text extraction" or "Raw XML access" sections below
-
-### Creating New Document
-Use "Creating a new Word document" workflow
-
-### Editing Existing Document
-- **Your own document + simple changes**
-  Use "Basic OOXML editing" workflow
-
-- **Someone else's document**
-  Use **"Redlining workflow"** (recommended default)
-
-- **Legal, academic, business, or government docs**
-  Use **"Redlining workflow"** (required)
-
-## Reading and analyzing content
-
-### Text extraction
-If you just need to read the text contents of a document, you should convert the document to markdown using pandoc. Pandoc provides excellent support for preserving document structure and can show tracked changes:
-
-```bash
-# Convert document to markdown with tracked changes
-pandoc --track-changes=all path-to-file.docx -o output.md
-# Options: --track-changes=accept/reject/all
-```
-
-### Raw XML access
-You need raw XML access for: comments, complex formatting, document structure, embedded media, and metadata. For any of these features, you'll need to unpack a document and read its raw XML contents.
-
-#### Unpacking a file
-`python ooxml/scripts/unpack.py <office_file> <output_directory>`
-
-#### Key file structures
-* `word/document.xml` - Main document contents
-* `word/comments.xml` - Comments referenced in document.xml
-* `word/media/` - Embedded images and media files
-* Tracked changes use `<w:ins>` (insertions) and `<w:del>` (deletions) tags
-
-## Creating a new Word document
-
-When creating a new Word document from scratch, use **docx-js**, which allows you to create Word documents using JavaScript/TypeScript.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`docx-js.md`](docx-js.md) (~500 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with document creation.
-2. Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)
-3. Export as .docx using Packer.toBuffer()
-
-## Editing an existing Word document
-
-When editing an existing Word document, use the **Document library** (a Python library for OOXML manipulation). The library automatically handles infrastructure setup and provides methods for document manipulation. For complex scenarios, you can access the underlying DOM directly through the library.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for the Document library API and XML patterns for directly editing document files.
-2. Unpack the document: `python ooxml/scripts/unpack.py <office_file> <output_directory>`
-3. Create and run a Python script using the Document library (see "Document Library" section in ooxml.md)
-4. Pack the final document: `python ooxml/scripts/pack.py <input_directory> <office_file>`
-
-The Document library provides both high-level methods for common operations and direct DOM access for complex scenarios.
-
-## Redlining workflow for document review
-
-This workflow allows you to plan comprehensive tracked changes using markdown before implementing them in OOXML. **CRITICAL**: For complete tracked changes, you must implement ALL changes systematically.
-
-**Batching Strategy**: Group related changes into batches of 3-10 changes. This makes debugging manageable while maintaining efficiency. Test each batch before moving to the next.
-
-**Principle: Minimal, Precise Edits**
-When implementing tracked changes, only mark text that actually changes. Repeating unchanged text makes edits harder to review and appears unprofessional. Break replacements into: [unchanged text] + [deletion] + [insertion] + [unchanged text]. Preserve the original run's RSID for unchanged text by extracting the `<w:r>` element from the original and reusing it.
-
-Example - Changing "30 days" to "60 days" in a sentence:
-```python
-# BAD - Replaces entire sentence
-'<w:del><w:r><w:delText>The term is 30 days.</w:delText></w:r></w:del><w:ins><w:r><w:t>The term is 60 days.</w:t></w:r></w:ins>'
-
-# GOOD - Only marks what changed, preserves original <w:r> for unchanged text
-'<w:r w:rsidR="00AB12CD"><w:t>The term is </w:t></w:r><w:del><w:r><w:delText>30</w:delText></w:r></w:del><w:ins><w:r><w:t>60</w:t></w:r></w:ins><w:r w:rsidR="00AB12CD"><w:t> days.</w:t></w:r>'
-```
-
-### Tracked changes workflow
-
-1. **Get markdown representation**: Convert document to markdown with tracked changes preserved:
-   ```bash
-   pandoc --track-changes=all path-to-file.docx -o current.md
-   ```
-
-2. **Identify and group changes**: Review the document and identify ALL changes needed, organizing them into logical batches:
-
-   **Location methods** (for finding changes in XML):
-   - Section/heading numbers (e.g., "Section 3.2", "Article IV")
-   - Paragraph identifiers if numbered
-   - Grep patterns with unique surrounding text
-   - Document structure (e.g., "first paragraph", "signature block")
-   - **DO NOT use markdown line numbers** - they don't map to XML structure
-
-   **Batch organization** (group 3-10 related changes per batch):
-   - By section: "Batch 1: Section 2 amendments", "Batch 2: Section 5 updates"
-   - By type: "Batch 1: Date corrections", "Batch 2: Party name changes"
-   - By complexity: Start with simple text replacements, then tackle complex structural changes
-   - Sequential: "Batch 1: Pages 1-3", "Batch 2: Pages 4-6"
-
-3. **Read documentation and unpack**:
-   - **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Pay special attention to the "Document Library" and "Tracked Change Patterns" sections.
-   - **Unpack the document**: `python ooxml/scripts/unpack.py <file.docx> <dir>`
-   - **Note the suggested RSID**: The unpack script will suggest an RSID to use for your tracked changes. Copy this RSID for use in step 4b.
-
-4. **Implement changes in batches**: Group changes logically (by section, by type, or by proximity) and implement them together in a single script. This approach:
-   - Makes debugging easier (smaller batch = easier to isolate errors)
-   - Allows incremental progress
-   - Maintains efficiency (batch size of 3-10 changes works well)
-
-   **Suggested batch groupings:**
-   - By document section (e.g., "Section 3 changes", "Definitions", "Termination clause")
-   - By change type (e.g., "Date changes", "Party name updates", "Legal term replacements")
-   - By proximity (e.g., "Changes on pages 1-3", "Changes in first half of document")
-
-   For each batch of related changes:
-
-   **a. Map text to XML**: Grep for text in `word/document.xml` to verify how text is split across `<w:r>` elements.
-
-   **b. Create and run script**: Use `get_node` to find nodes, implement changes, then `doc.save()`. See **"Document Library"** section in ooxml.md for patterns.
-
-   **Note**: Always grep `word/document.xml` immediately before writing a script to get current line numbers and verify text content. Line numbers change after each script run.
-
-5. **Pack the document**: After all batches are complete, convert the unpacked directory back to .docx:
-   ```bash
-   python ooxml/scripts/pack.py unpacked reviewed-document.docx
-   ```
-
-6. **Final verification**: Do a comprehensive check of the complete document:
-   - Convert final document to markdown:
-     ```bash
-     pandoc --track-changes=all reviewed-document.docx -o verification.md
-     ```
-   - Verify ALL changes were applied correctly:
-     ```bash
-     grep "original phrase" verification.md  # Should NOT find it
-     grep "replacement phrase" verification.md  # Should find it
-     ```
-   - Check that no unintended changes were introduced
-
-
-## Converting Documents to Images
-
-To visually analyze Word documents, convert them to images using a two-step process:
-
-1. **Convert DOCX to PDF**:
-   ```bash
-   soffice --headless --convert-to pdf document.docx
-   ```
-
-2. **Convert PDF pages to JPEG images**:
-   ```bash
-   pdftoppm -jpeg -r 150 document.pdf page
-   ```
-   This creates files like `page-1.jpg`, `page-2.jpg`, etc.
-
-Options:
-- `-r 150`: Sets resolution to 150 DPI (adjust for quality/size balance)
-- `-jpeg`: Output JPEG format (use `-png` for PNG if preferred)
-- `-f N`: First page to convert (e.g., `-f 2` starts from page 2)
-- `-l N`: Last page to convert (e.g., `-l 5` stops at page 5)
-- `page`: Prefix for output files
-
-Example for specific range:
-```bash
-pdftoppm -jpeg -r 150 -f 2 -l 5 document.pdf page  # Converts only pages 2-5
-```
-
-## Code Style Guidelines
-**IMPORTANT**: When generating code for DOCX operations:
-- Write concise code
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-## Dependencies
-
-Required dependencies (install if not available):
-
-- **pandoc**: `sudo apt-get install pandoc` (for text extraction)
-- **docx**: `npm install -g docx` (for creating new documents)
-- **LibreOffice**: `sudo apt-get install libreoffice` (for PDF conversion)
-- **Poppler**: `sudo apt-get install poppler-utils` (for pdftoppm to convert PDF to images)
-- **defusedxml**: `pip install defusedxml` (for secure XML parsing)

+ 0 - 99
adapters-output/codebuddy/docx/workflows/docx.json

@@ -1,99 +0,0 @@
-{
-  "id": "docx",
-  "name": "DOCX creation, editing, and analysis",
-  "description": "Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**MANDATORY - READ ENTIRE FILE**",
-      "description": "**MANDATORY - READ ENTIRE FILE**: Read [`docx-js.md`](docx-js.md) (~500 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with document creation.",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)",
-      "description": "Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "Export as .docx using Packer.toBuffer()",
-      "description": "Export as .docx using Packer.toBuffer()",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**MANDATORY - READ ENTIRE FILE**",
-      "description": "**MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for the Document library API and XML patterns for directly editing document files.",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "Unpack the document",
-      "description": "Unpack the document: `python ooxml/scripts/unpack.py <office_file> <output_directory>`",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "Create and run a Python script using the Document library (see \"Document Library\" section in ooxml.md)",
-      "description": "Create and run a Python script using the Document library (see \"Document Library\" section in ooxml.md)",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "Pack the final document",
-      "description": "Pack the final document: `python ooxml/scripts/pack.py <input_directory> <office_file>`",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "**Get markdown representation**",
-      "description": "**Get markdown representation**: Convert document to markdown with tracked changes preserved:",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "**Identify and group changes**",
-      "description": "**Identify and group changes**: Review the document and identify ALL changes needed, organizing them into logical batches:",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "**Read documentation and unpack**",
-      "description": "**Read documentation and unpack**:",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "**Implement changes in batches**",
-      "description": "**Implement changes in batches**: Group changes logically (by section, by type, or by proximity) and implement them together in a single script. This approach:",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "**Pack the document**",
-      "description": "**Pack the document**: After all batches are complete, convert the unpacked directory back to .docx:",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "**Final verification**",
-      "description": "**Final verification**: Do a comprehensive check of the complete document:",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "**Convert DOCX to PDF**",
-      "description": "**Convert DOCX to PDF**:",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "**Convert PDF pages to JPEG images**",
-      "description": "**Convert PDF pages to JPEG images**:",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 36
adapters-output/codebuddy/frontend-design/manifest.json

@@ -1,36 +0,0 @@
-{
-  "name": "frontend-design",
-  "version": "1.0.0",
-  "description": "Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "frontend-design",
-      "name": "frontend-design",
-      "description": "Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "analyze",
-          "description": "Analyze requirements",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "execute",
-          "description": "Execute skill task",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "output",
-          "description": "Generate output",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 42
adapters-output/codebuddy/frontend-design/skills/frontend-design/SKILL.md

@@ -1,42 +0,0 @@
----
-name: frontend-design
-description: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
-license: Complete terms in LICENSE.txt
----
-
-This skill guides creation of distinctive, production-grade frontend interfaces that avoid generic "AI slop" aesthetics. Implement real working code with exceptional attention to aesthetic details and creative choices.
-
-The user provides frontend requirements: a component, page, application, or interface to build. They may include context about the purpose, audience, or technical constraints.
-
-## Design Thinking
-
-Before coding, understand the context and commit to a BOLD aesthetic direction:
-- **Purpose**: What problem does this interface solve? Who uses it?
-- **Tone**: Pick an extreme: brutally minimal, maximalist chaos, retro-futuristic, organic/natural, luxury/refined, playful/toy-like, editorial/magazine, brutalist/raw, art deco/geometric, soft/pastel, industrial/utilitarian, etc. There are so many flavors to choose from. Use these for inspiration but design one that is true to the aesthetic direction.
-- **Constraints**: Technical requirements (framework, performance, accessibility).
-- **Differentiation**: What makes this UNFORGETTABLE? What's the one thing someone will remember?
-
-**CRITICAL**: Choose a clear conceptual direction and execute it with precision. Bold maximalism and refined minimalism both work - the key is intentionality, not intensity.
-
-Then implement working code (HTML/CSS/JS, React, Vue, etc.) that is:
-- Production-grade and functional
-- Visually striking and memorable
-- Cohesive with a clear aesthetic point-of-view
-- Meticulously refined in every detail
-
-## Frontend Aesthetics Guidelines
-
-Focus on:
-- **Typography**: Choose fonts that are beautiful, unique, and interesting. Avoid generic fonts like Arial and Inter; opt instead for distinctive choices that elevate the frontend's aesthetics; unexpected, characterful font choices. Pair a distinctive display font with a refined body font.
-- **Color & Theme**: Commit to a cohesive aesthetic. Use CSS variables for consistency. Dominant colors with sharp accents outperform timid, evenly-distributed palettes.
-- **Motion**: Use animations for effects and micro-interactions. Prioritize CSS-only solutions for HTML. Use Motion library for React when available. Focus on high-impact moments: one well-orchestrated page load with staggered reveals (animation-delay) creates more delight than scattered micro-interactions. Use scroll-triggering and hover states that surprise.
-- **Spatial Composition**: Unexpected layouts. Asymmetry. Overlap. Diagonal flow. Grid-breaking elements. Generous negative space OR controlled density.
-- **Backgrounds & Visual Details**: Create atmosphere and depth rather than defaulting to solid colors. Add contextual effects and textures that match the overall aesthetic. Apply creative forms like gradient meshes, noise textures, geometric patterns, layered transparencies, dramatic shadows, decorative borders, custom cursors, and grain overlays.
-
-NEVER use generic AI-generated aesthetics like overused font families (Inter, Roboto, Arial, system fonts), cliched color schemes (particularly purple gradients on white backgrounds), predictable layouts and component patterns, and cookie-cutter design that lacks context-specific character.
-
-Interpret creatively and make unexpected choices that feel genuinely designed for the context. No design should be the same. Vary between light and dark themes, different fonts, different aesthetics. NEVER converge on common choices (Space Grotesk, for example) across generations.
-
-**IMPORTANT**: Match implementation complexity to the aesthetic vision. Maximalist designs need elaborate code with extensive animations and effects. Minimalist or refined designs need restraint, precision, and careful attention to spacing, typography, and subtle details. Elegance comes from executing the vision well.
-
-Remember: Claude is capable of extraordinary creative work. Don't hold back, show what can truly be created when thinking outside the box and committing fully to a distinctive vision.

+ 0 - 27
adapters-output/codebuddy/frontend-design/workflows/frontend-design.json

@@ -1,27 +0,0 @@
-{
-  "id": "frontend-design",
-  "name": "frontend-design",
-  "description": "Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "analyze",
-      "description": "Analyze requirements",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "execute",
-      "description": "Execute skill task",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "output",
-      "description": "Generate output",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 36
adapters-output/codebuddy/internal-comms/manifest.json

@@ -1,36 +0,0 @@
-{
-  "name": "internal-comms",
-  "version": "1.0.0",
-  "description": "A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "internal-comms",
-      "name": "internal-comms",
-      "description": "A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Identify the communication type** from the request",
-          "description": "**Identify the communication type** from the request",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Load the appropriate guideline file** from the `examples/` directory",
-          "description": "**Load the appropriate guideline file** from the `examples/` directory:",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Follow the specific instructions** in that file for formatting, tone, and content gathering",
-          "description": "**Follow the specific instructions** in that file for formatting, tone, and content gathering",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 32
adapters-output/codebuddy/internal-comms/skills/internal-comms/SKILL.md

@@ -1,32 +0,0 @@
----
-name: internal-comms
-description: A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).
-license: Complete terms in LICENSE.txt
----
-
-## When to use this skill
-To write internal communications, use this skill for:
-- 3P updates (Progress, Plans, Problems)
-- Company newsletters
-- FAQ responses
-- Status reports
-- Leadership updates
-- Project updates
-- Incident reports
-
-## How to use this skill
-
-To write any internal communication:
-
-1. **Identify the communication type** from the request
-2. **Load the appropriate guideline file** from the `examples/` directory:
-    - `examples/3p-updates.md` - For Progress/Plans/Problems team updates
-    - `examples/company-newsletter.md` - For company-wide newsletters
-    - `examples/faq-answers.md` - For answering frequently asked questions
-    - `examples/general-comms.md` - For anything else that doesn't explicitly match one of the above
-3. **Follow the specific instructions** in that file for formatting, tone, and content gathering
-
-If the communication type doesn't match any existing guideline, ask for clarification or more context about the desired format.
-
-## Keywords
-3P updates, company newsletter, company comms, weekly update, faqs, common questions, updates, internal comms

+ 0 - 27
adapters-output/codebuddy/internal-comms/workflows/internal-comms.json

@@ -1,27 +0,0 @@
-{
-  "id": "internal-comms",
-  "name": "internal-comms",
-  "description": "A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Identify the communication type** from the request",
-      "description": "**Identify the communication type** from the request",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Load the appropriate guideline file** from the `examples/` directory",
-      "description": "**Load the appropriate guideline file** from the `examples/` directory:",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Follow the specific instructions** in that file for formatting, tone, and content gathering",
-      "description": "**Follow the specific instructions** in that file for formatting, tone, and content gathering",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/learning-assessor/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "learning-assessor",
-  "version": "1.0.0",
-  "description": "帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "learning-assessor",
-      "name": "学习评估技能",
-      "description": "帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**目标对齐**",
-          "description": "**目标对齐**: 每道题目都应对应明确的学习目标",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**难度梯度**",
-          "description": "**难度梯度**: 题目应覆盖不同认知层次(记忆、理解、应用、分析、评价、创造)",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**清晰明确**",
-          "description": "**清晰明确**: 题目表述清晰,避免歧义",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**公平性**",
-          "description": "**公平性**: 确保题目对所有学习者公平",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**有效性**",
-          "description": "**有效性**: 题目应能有效测量目标知识和技能",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 88
adapters-output/codebuddy/learning-assessor/skills/learning-assessor/SKILL.md

@@ -1,88 +0,0 @@
----
-name: learning-assessor
-description: 帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。
----
-
-# 学习评估技能
-
-## 概述
-
-本技能帮助您创建各种学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。
-
-**关键词**: 学习评估、测验设计、评分标准、rubric、学习分析、考试题目
-
-## 核心功能
-
-### 1. 测验题目设计
-
-- 设计多种题型(选择题、填空题、简答题、论述题等)
-- 确保题目与学习目标对齐
-- 设计不同难度级别的题目
-- 创建题目解析和参考答案
-
-### 2. 评估标准制定
-
-- 制定清晰的评估标准
-- 设计评分细则和权重分配
-- 创建评分 rubric(评分量规)
-- 确保评估的客观性和一致性
-
-### 3. 学习分析
-
-- 分析学习数据和学习趋势
-- 识别学习难点和薄弱环节
-- 提供个性化学习建议
-- 生成学习报告和反馈
-
-### 4. 评估工具创建
-
-- 创建在线测验和问卷
-- 设计项目评估表
-- 创建同伴评估工具
-- 设计自我评估工具
-
-## 使用指南
-
-### 题目设计原则
-
-1. **目标对齐**: 每道题目都应对应明确的学习目标
-2. **难度梯度**: 题目应覆盖不同认知层次(记忆、理解、应用、分析、评价、创造)
-3. **清晰明确**: 题目表述清晰,避免歧义
-4. **公平性**: 确保题目对所有学习者公平
-5. **有效性**: 题目应能有效测量目标知识和技能
-
-### Rubric 设计
-
-Rubric 应包含:
-
-- **评估维度**: 要评估的具体方面
-- **表现等级**: 不同表现水平的描述
-- **评分标准**: 每个等级的评分标准
-- **权重分配**: 各维度的权重
-
-### 学习分析维度
-
-- **知识掌握度**: 对知识点的掌握情况
-- **技能应用**: 技能的应用水平
-- **学习进度**: 学习进度和完成情况
-- **学习困难**: 识别学习中的困难点
-- **改进建议**: 提供针对性的改进建议
-
-## 输出格式
-
-评估工具应包含:
-
-- **评估目标**: 明确要评估的内容
-- **评估方式**: 使用的评估方法和工具
-- **评估标准**: 详细的评分标准或 rubric
-- **评估题目**: 具体的评估题目(如适用)
-- **分析报告**: 学习分析和反馈建议
-
-## 最佳实践
-
-- 使用多种评估方式,避免单一化
-- 设计形成性评估,及时反馈
-- 确保评估标准清晰、可操作
-- 提供建设性的反馈意见
-- 关注学习过程,不仅看结果
-- 鼓励自我评估和同伴评估

+ 0 - 39
adapters-output/codebuddy/learning-assessor/workflows/learning-assessor.json

@@ -1,39 +0,0 @@
-{
-  "id": "learning-assessor",
-  "name": "学习评估技能",
-  "description": "帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**目标对齐**",
-      "description": "**目标对齐**: 每道题目都应对应明确的学习目标",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**难度梯度**",
-      "description": "**难度梯度**: 题目应覆盖不同认知层次(记忆、理解、应用、分析、评价、创造)",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**清晰明确**",
-      "description": "**清晰明确**: 题目表述清晰,避免歧义",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**公平性**",
-      "description": "**公平性**: 确保题目对所有学习者公平",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**有效性**",
-      "description": "**有效性**: 题目应能有效测量目标知识和技能",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 42
adapters-output/codebuddy/mcp-builder/manifest.json

@@ -1,42 +0,0 @@
-{
-  "name": "mcp-builder",
-  "version": "1.0.0",
-  "description": "Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "mcp-builder",
-      "name": "MCP Server Development Guide",
-      "description": "Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Tool Inspection**",
-          "description": "**Tool Inspection**: List available tools and understand their capabilities",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Content Exploration**",
-          "description": "**Content Exploration**: Use READ-ONLY operations to explore available data",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Question Generation**",
-          "description": "**Question Generation**: Create 10 complex, realistic questions",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Answer Verification**",
-          "description": "**Answer Verification**: Solve each question yourself to verify answers",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 236
adapters-output/codebuddy/mcp-builder/skills/mcp-builder/SKILL.md

@@ -1,236 +0,0 @@
----
-name: mcp-builder
-description: Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
-license: Complete terms in LICENSE.txt
----
-
-# MCP Server Development Guide
-
-## Overview
-
-Create MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. The quality of an MCP server is measured by how well it enables LLMs to accomplish real-world tasks.
-
----
-
-# Process
-
-## 🚀 High-Level Workflow
-
-Creating a high-quality MCP server involves four main phases:
-
-### Phase 1: Deep Research and Planning
-
-#### 1.1 Understand Modern MCP Design
-
-**API Coverage vs. Workflow Tools:**
-Balance comprehensive API endpoint coverage with specialized workflow tools. Workflow tools can be more convenient for specific tasks, while comprehensive coverage gives agents flexibility to compose operations. Performance varies by client—some clients benefit from code execution that combines basic tools, while others work better with higher-level workflows. When uncertain, prioritize comprehensive API coverage.
-
-**Tool Naming and Discoverability:**
-Clear, descriptive tool names help agents find the right tools quickly. Use consistent prefixes (e.g., `github_create_issue`, `github_list_repos`) and action-oriented naming.
-
-**Context Management:**
-Agents benefit from concise tool descriptions and the ability to filter/paginate results. Design tools that return focused, relevant data. Some clients support code execution which can help agents filter and process data efficiently.
-
-**Actionable Error Messages:**
-Error messages should guide agents toward solutions with specific suggestions and next steps.
-
-#### 1.2 Study MCP Protocol Documentation
-
-**Navigate the MCP specification:**
-
-Start with the sitemap to find relevant pages: `https://modelcontextprotocol.io/sitemap.xml`
-
-Then fetch specific pages with `.md` suffix for markdown format (e.g., `https://modelcontextprotocol.io/specification/draft.md`).
-
-Key pages to review:
-- Specification overview and architecture
-- Transport mechanisms (streamable HTTP, stdio)
-- Tool, resource, and prompt definitions
-
-#### 1.3 Study Framework Documentation
-
-**Recommended stack:**
-- **Language**: TypeScript (high-quality SDK support and good compatibility in many execution environments e.g. MCPB. Plus AI models are good at generating TypeScript code, benefiting from its broad usage, static typing and good linting tools)
-- **Transport**: Streamable HTTP for remote servers, using stateless JSON (simpler to scale and maintain, as opposed to stateful sessions and streaming responses). stdio for local servers.
-
-**Load framework documentation:**
-
-- **MCP Best Practices**: [📋 View Best Practices](./reference/mcp_best_practices.md) - Core guidelines
-
-**For TypeScript (recommended):**
-- **TypeScript SDK**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
-- [⚡ TypeScript Guide](./reference/node_mcp_server.md) - TypeScript patterns and examples
-
-**For Python:**
-- **Python SDK**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
-- [🐍 Python Guide](./reference/python_mcp_server.md) - Python patterns and examples
-
-#### 1.4 Plan Your Implementation
-
-**Understand the API:**
-Review the service's API documentation to identify key endpoints, authentication requirements, and data models. Use web search and WebFetch as needed.
-
-**Tool Selection:**
-Prioritize comprehensive API coverage. List endpoints to implement, starting with the most common operations.
-
----
-
-### Phase 2: Implementation
-
-#### 2.1 Set Up Project Structure
-
-See language-specific guides for project setup:
-- [⚡ TypeScript Guide](./reference/node_mcp_server.md) - Project structure, package.json, tsconfig.json
-- [🐍 Python Guide](./reference/python_mcp_server.md) - Module organization, dependencies
-
-#### 2.2 Implement Core Infrastructure
-
-Create shared utilities:
-- API client with authentication
-- Error handling helpers
-- Response formatting (JSON/Markdown)
-- Pagination support
-
-#### 2.3 Implement Tools
-
-For each tool:
-
-**Input Schema:**
-- Use Zod (TypeScript) or Pydantic (Python)
-- Include constraints and clear descriptions
-- Add examples in field descriptions
-
-**Output Schema:**
-- Define `outputSchema` where possible for structured data
-- Use `structuredContent` in tool responses (TypeScript SDK feature)
-- Helps clients understand and process tool outputs
-
-**Tool Description:**
-- Concise summary of functionality
-- Parameter descriptions
-- Return type schema
-
-**Implementation:**
-- Async/await for I/O operations
-- Proper error handling with actionable messages
-- Support pagination where applicable
-- Return both text content and structured data when using modern SDKs
-
-**Annotations:**
-- `readOnlyHint`: true/false
-- `destructiveHint`: true/false
-- `idempotentHint`: true/false
-- `openWorldHint`: true/false
-
----
-
-### Phase 3: Review and Test
-
-#### 3.1 Code Quality
-
-Review for:
-- No duplicated code (DRY principle)
-- Consistent error handling
-- Full type coverage
-- Clear tool descriptions
-
-#### 3.2 Build and Test
-
-**TypeScript:**
-- Run `npm run build` to verify compilation
-- Test with MCP Inspector: `npx @modelcontextprotocol/inspector`
-
-**Python:**
-- Verify syntax: `python -m py_compile your_server.py`
-- Test with MCP Inspector
-
-See language-specific guides for detailed testing approaches and quality checklists.
-
----
-
-### Phase 4: Create Evaluations
-
-After implementing your MCP server, create comprehensive evaluations to test its effectiveness.
-
-**Load [✅ Evaluation Guide](./reference/evaluation.md) for complete evaluation guidelines.**
-
-#### 4.1 Understand Evaluation Purpose
-
-Use evaluations to test whether LLMs can effectively use your MCP server to answer realistic, complex questions.
-
-#### 4.2 Create 10 Evaluation Questions
-
-To create effective evaluations, follow the process outlined in the evaluation guide:
-
-1. **Tool Inspection**: List available tools and understand their capabilities
-2. **Content Exploration**: Use READ-ONLY operations to explore available data
-3. **Question Generation**: Create 10 complex, realistic questions
-4. **Answer Verification**: Solve each question yourself to verify answers
-
-#### 4.3 Evaluation Requirements
-
-Ensure each question is:
-- **Independent**: Not dependent on other questions
-- **Read-only**: Only non-destructive operations required
-- **Complex**: Requiring multiple tool calls and deep exploration
-- **Realistic**: Based on real use cases humans would care about
-- **Verifiable**: Single, clear answer that can be verified by string comparison
-- **Stable**: Answer won't change over time
-
-#### 4.4 Output Format
-
-Create an XML file with this structure:
-
-```xml
-<evaluation>
-  <qa_pair>
-    <question>Find discussions about AI model launches with animal codenames. One model needed a specific safety designation that uses the format ASL-X. What number X was being determined for the model named after a spotted wild cat?</question>
-    <answer>3</answer>
-  </qa_pair>
-<!-- More qa_pairs... -->
-</evaluation>
-```
-
----
-
-# Reference Files
-
-## 📚 Documentation Library
-
-Load these resources as needed during development:
-
-### Core MCP Documentation (Load First)
-- **MCP Protocol**: Start with sitemap at `https://modelcontextprotocol.io/sitemap.xml`, then fetch specific pages with `.md` suffix
-- [📋 MCP Best Practices](./reference/mcp_best_practices.md) - Universal MCP guidelines including:
-  - Server and tool naming conventions
-  - Response format guidelines (JSON vs Markdown)
-  - Pagination best practices
-  - Transport selection (streamable HTTP vs stdio)
-  - Security and error handling standards
-
-### SDK Documentation (Load During Phase 1/2)
-- **Python SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
-- **TypeScript SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
-
-### Language-Specific Implementation Guides (Load During Phase 2)
-- [🐍 Python Implementation Guide](./reference/python_mcp_server.md) - Complete Python/FastMCP guide with:
-  - Server initialization patterns
-  - Pydantic model examples
-  - Tool registration with `@mcp.tool`
-  - Complete working examples
-  - Quality checklist
-
-- [⚡ TypeScript Implementation Guide](./reference/node_mcp_server.md) - Complete TypeScript guide with:
-  - Project structure
-  - Zod schema patterns
-  - Tool registration with `server.registerTool`
-  - Complete working examples
-  - Quality checklist
-
-### Evaluation Guide (Load During Phase 4)
-- [✅ Evaluation Guide](./reference/evaluation.md) - Complete evaluation creation guide with:
-  - Question creation guidelines
-  - Answer verification strategies
-  - XML format specifications
-  - Example questions and answers
-  - Running an evaluation with the provided scripts

+ 0 - 33
adapters-output/codebuddy/mcp-builder/workflows/mcp-builder.json

@@ -1,33 +0,0 @@
-{
-  "id": "mcp-builder",
-  "name": "MCP Server Development Guide",
-  "description": "Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Tool Inspection**",
-      "description": "**Tool Inspection**: List available tools and understand their capabilities",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Content Exploration**",
-      "description": "**Content Exploration**: Use READ-ONLY operations to explore available data",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Question Generation**",
-      "description": "**Question Generation**: Create 10 complex, realistic questions",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Answer Verification**",
-      "description": "**Answer Verification**: Solve each question yourself to verify answers",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 54
adapters-output/codebuddy/mermaid/manifest.json

@@ -1,54 +0,0 @@
-{
-  "name": "mermaid",
-  "version": "1.0.0",
-  "description": "A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "mermaid",
-      "name": "mermaid",
-      "description": "A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Identify the diagram type** from the user's request",
-          "description": "**Identify the diagram type** from the user's request:",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Load the appropriate example file** from the `examples/` directory",
-          "description": "**Load the appropriate example file** from the `examples/` directory:",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Follow the specific instructions** in that example file for syntax, structure, and best practices",
-          "description": "**Follow the specific instructions** in that example file for syntax, structure, and best practices",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Generate the Mermaid code** wrapped in a code block",
-          "description": "**Generate the Mermaid code** wrapped in a code block:",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Include styling and configuration** when needed",
-          "description": "**Include styling and configuration** when needed:",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Validate the syntax**",
-          "description": "**Validate the syntax**:",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 100
adapters-output/codebuddy/mermaid/skills/mermaid/SKILL.md

@@ -1,100 +0,0 @@
----
-name: mermaid
-description: A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.
-license: Complete terms in LICENSE.txt
----
-
-## When to use this skill
-
-Use this skill whenever the user wants to:
-- Create any type of diagram or flowchart
-- Visualize processes, workflows, or system architectures
-- Draw sequence diagrams, class diagrams, or state diagrams
-- Create project timelines (Gantt charts)
-- Visualize data relationships (ER diagrams, entity relationships)
-- Create user journey maps
-- Generate pie charts, quadrant charts, or other data visualizations
-- Draw Git branching structures
-- Create mindmaps or hierarchical structures
-- Visualize system architectures (C4 diagrams)
-- Create timelines or event sequences
-- Generate any other diagram type supported by Mermaid
-
-## How to use this skill
-
-To create a Mermaid diagram:
-
-1. **Identify the diagram type** from the user's request:
-   - Flowchart/flow chart/流程图 → `flowchart` or `graph`
-   - Sequence diagram/时序图 → `sequenceDiagram`
-   - Class diagram/类图 → `classDiagram`
-   - State diagram/状态图 → `stateDiagram` or `stateDiagram-v2`
-   - Entity relationship diagram/实体关系图 → `erDiagram`
-   - User journey/用户旅程图 → `journey`
-   - Gantt chart/甘特图 → `gantt`
-   - Pie chart/饼图 → `pie`
-   - Quadrant chart/象限图 → `quadrantChart`
-   - Requirement diagram/需求图 → `requirementDiagram`
-   - Git graph/Git图 → `gitGraph`
-   - C4 diagram/C4图 → `C4Context` or other C4 types
-   - Mindmap/思维导图 → `mindmap`
-   - Timeline/时间线图 → `timeline`
-   - ZenUML/禅UML → `zenuml`
-   - Sankey diagram/桑基图 → `sankey`
-   - XY chart/XY图 → `xychart`
-   - Block diagram/方块图 → `block`
-   - Packet diagram/数据包图 → `packet`
-   - Kanban/看板图 → `kanban`
-   - Architecture diagram/架构图 → `architecture-beta`
-   - Radar chart/雷达图 → `radar-beta`
-   - Treemap/树状图 → `treemap-beta`
-
-2. **Load the appropriate example file** from the `examples/` directory:
-   - `examples/flowchart.md` - For flowcharts and process diagrams
-   - `examples/sequence.md` - For sequence diagrams showing interactions
-   - `examples/class.md` - For class diagrams and object-oriented designs
-   - `examples/state.md` - For state diagrams and state machines
-   - `examples/er.md` - For entity relationship diagrams
-   - `examples/journey.md` - For user journey maps
-   - `examples/gantt.md` - For Gantt charts and project timelines
-   - `examples/pie.md` - For pie charts
-   - `examples/quadrant.md` - For quadrant charts
-   - `examples/requirement.md` - For requirement diagrams
-   - `examples/gitgraph.md` - For Git branching diagrams
-   - `examples/c4.md` - For C4 architecture diagrams
-   - `examples/mindmap.md` - For mindmaps
-   - `examples/timeline.md` - For timeline diagrams
-   - `examples/zenuml.md` - For ZenUML diagrams
-   - `examples/sankey.md` - For Sankey flow diagrams
-   - `examples/xychart.md` - For XY charts (bar/line charts)
-   - `examples/block.md` - For block diagrams
-   - `examples/packet.md` - For packet diagrams
-   - `examples/kanban.md` - For Kanban boards
-   - `examples/architecture.md` - For architecture diagrams
-   - `examples/radar.md` - For radar charts
-   - `examples/treemap.md` - For treemap diagrams
-
-3. **Follow the specific instructions** in that example file for syntax, structure, and best practices
-
-4. **Generate the Mermaid code** wrapped in a code block:
-   ```mermaid
-   <diagram-type>
-   ...diagram content...
-   ```
-
-5. **Include styling and configuration** when needed:
-   - Use `%%{ init: { theme: 'base' } }%%` for theme configuration
-   - Apply `style` directives for node styling
-   - Use `classDef` for reusable style classes
-
-6. **Validate the syntax**:
-   - Ensure all required elements are present
-   - Check that relationships and connections are properly defined
-   - Verify date formats for Gantt charts
-   - Confirm data formats for charts (pie, quadrant, etc.)
-
-If the diagram type doesn't match any existing example, refer to the Mermaid documentation or ask the user for clarification about the desired visualization.
-
-## Keywords
-
-mermaid, diagram, flowchart, flow chart, sequence diagram, class diagram, state diagram, entity relationship, ER diagram, user journey, Gantt chart, pie chart, quadrant chart, requirement diagram, Git graph, C4 diagram, mindmap, timeline, ZenUML, Sankey diagram, XY chart, block diagram, packet diagram, Kanban, architecture diagram, radar chart, treemap, 流程图, 时序图, 类图, 状态图, 实体关系图, 用户旅程图, 甘特图, 饼图, 象限图, 需求图, Git图, C4图, 思维导图, 时间线图, 桑基图, XY图, 方块图, 数据包图, 看板图, 架构图, 雷达图, 树状图

+ 0 - 45
adapters-output/codebuddy/mermaid/workflows/mermaid.json

@@ -1,45 +0,0 @@
-{
-  "id": "mermaid",
-  "name": "mermaid",
-  "description": "A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Identify the diagram type** from the user's request",
-      "description": "**Identify the diagram type** from the user's request:",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Load the appropriate example file** from the `examples/` directory",
-      "description": "**Load the appropriate example file** from the `examples/` directory:",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Follow the specific instructions** in that example file for syntax, structure, and best practices",
-      "description": "**Follow the specific instructions** in that example file for syntax, structure, and best practices",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Generate the Mermaid code** wrapped in a code block",
-      "description": "**Generate the Mermaid code** wrapped in a code block:",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Include styling and configuration** when needed",
-      "description": "**Include styling and configuration** when needed:",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Validate the syntax**",
-      "description": "**Validate the syntax**:",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 36
adapters-output/codebuddy/pdf/manifest.json

@@ -1,36 +0,0 @@
-{
-  "name": "pdf",
-  "version": "1.0.0",
-  "description": "Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "pdf",
-      "name": "PDF Processing Guide",
-      "description": "Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "analyze",
-          "description": "Analyze requirements",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "execute",
-          "description": "Execute skill task",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "output",
-          "description": "Generate output",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 294
adapters-output/codebuddy/pdf/skills/pdf/SKILL.md

@@ -1,294 +0,0 @@
----
-name: pdf
-description: Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
-license: Proprietary. LICENSE.txt has complete terms
----
-
-# PDF Processing Guide
-
-## Overview
-
-This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see reference.md. If you need to fill out a PDF form, read forms.md and follow its instructions.
-
-## Quick Start
-
-```python
-from pypdf import PdfReader, PdfWriter
-
-# Read a PDF
-reader = PdfReader("document.pdf")
-print(f"Pages: {len(reader.pages)}")
-
-# Extract text
-text = ""
-for page in reader.pages:
-    text += page.extract_text()
-```
-
-## Python Libraries
-
-### pypdf - Basic Operations
-
-#### Merge PDFs
-```python
-from pypdf import PdfWriter, PdfReader
-
-writer = PdfWriter()
-for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]:
-    reader = PdfReader(pdf_file)
-    for page in reader.pages:
-        writer.add_page(page)
-
-with open("merged.pdf", "wb") as output:
-    writer.write(output)
-```
-
-#### Split PDF
-```python
-reader = PdfReader("input.pdf")
-for i, page in enumerate(reader.pages):
-    writer = PdfWriter()
-    writer.add_page(page)
-    with open(f"page_{i+1}.pdf", "wb") as output:
-        writer.write(output)
-```
-
-#### Extract Metadata
-```python
-reader = PdfReader("document.pdf")
-meta = reader.metadata
-print(f"Title: {meta.title}")
-print(f"Author: {meta.author}")
-print(f"Subject: {meta.subject}")
-print(f"Creator: {meta.creator}")
-```
-
-#### Rotate Pages
-```python
-reader = PdfReader("input.pdf")
-writer = PdfWriter()
-
-page = reader.pages[0]
-page.rotate(90)  # Rotate 90 degrees clockwise
-writer.add_page(page)
-
-with open("rotated.pdf", "wb") as output:
-    writer.write(output)
-```
-
-### pdfplumber - Text and Table Extraction
-
-#### Extract Text with Layout
-```python
-import pdfplumber
-
-with pdfplumber.open("document.pdf") as pdf:
-    for page in pdf.pages:
-        text = page.extract_text()
-        print(text)
-```
-
-#### Extract Tables
-```python
-with pdfplumber.open("document.pdf") as pdf:
-    for i, page in enumerate(pdf.pages):
-        tables = page.extract_tables()
-        for j, table in enumerate(tables):
-            print(f"Table {j+1} on page {i+1}:")
-            for row in table:
-                print(row)
-```
-
-#### Advanced Table Extraction
-```python
-import pandas as pd
-
-with pdfplumber.open("document.pdf") as pdf:
-    all_tables = []
-    for page in pdf.pages:
-        tables = page.extract_tables()
-        for table in tables:
-            if table:  # Check if table is not empty
-                df = pd.DataFrame(table[1:], columns=table[0])
-                all_tables.append(df)
-
-# Combine all tables
-if all_tables:
-    combined_df = pd.concat(all_tables, ignore_index=True)
-    combined_df.to_excel("extracted_tables.xlsx", index=False)
-```
-
-### reportlab - Create PDFs
-
-#### Basic PDF Creation
-```python
-from reportlab.lib.pagesizes import letter
-from reportlab.pdfgen import canvas
-
-c = canvas.Canvas("hello.pdf", pagesize=letter)
-width, height = letter
-
-# Add text
-c.drawString(100, height - 100, "Hello World!")
-c.drawString(100, height - 120, "This is a PDF created with reportlab")
-
-# Add a line
-c.line(100, height - 140, 400, height - 140)
-
-# Save
-c.save()
-```
-
-#### Create PDF with Multiple Pages
-```python
-from reportlab.lib.pagesizes import letter
-from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak
-from reportlab.lib.styles import getSampleStyleSheet
-
-doc = SimpleDocTemplate("report.pdf", pagesize=letter)
-styles = getSampleStyleSheet()
-story = []
-
-# Add content
-title = Paragraph("Report Title", styles['Title'])
-story.append(title)
-story.append(Spacer(1, 12))
-
-body = Paragraph("This is the body of the report. " * 20, styles['Normal'])
-story.append(body)
-story.append(PageBreak())
-
-# Page 2
-story.append(Paragraph("Page 2", styles['Heading1']))
-story.append(Paragraph("Content for page 2", styles['Normal']))
-
-# Build PDF
-doc.build(story)
-```
-
-## Command-Line Tools
-
-### pdftotext (poppler-utils)
-```bash
-# Extract text
-pdftotext input.pdf output.txt
-
-# Extract text preserving layout
-pdftotext -layout input.pdf output.txt
-
-# Extract specific pages
-pdftotext -f 1 -l 5 input.pdf output.txt  # Pages 1-5
-```
-
-### qpdf
-```bash
-# Merge PDFs
-qpdf --empty --pages file1.pdf file2.pdf -- merged.pdf
-
-# Split pages
-qpdf input.pdf --pages . 1-5 -- pages1-5.pdf
-qpdf input.pdf --pages . 6-10 -- pages6-10.pdf
-
-# Rotate pages
-qpdf input.pdf output.pdf --rotate=+90:1  # Rotate page 1 by 90 degrees
-
-# Remove password
-qpdf --password=mypassword --decrypt encrypted.pdf decrypted.pdf
-```
-
-### pdftk (if available)
-```bash
-# Merge
-pdftk file1.pdf file2.pdf cat output merged.pdf
-
-# Split
-pdftk input.pdf burst
-
-# Rotate
-pdftk input.pdf rotate 1east output rotated.pdf
-```
-
-## Common Tasks
-
-### Extract Text from Scanned PDFs
-```python
-# Requires: pip install pytesseract pdf2image
-import pytesseract
-from pdf2image import convert_from_path
-
-# Convert PDF to images
-images = convert_from_path('scanned.pdf')
-
-# OCR each page
-text = ""
-for i, image in enumerate(images):
-    text += f"Page {i+1}:\n"
-    text += pytesseract.image_to_string(image)
-    text += "\n\n"
-
-print(text)
-```
-
-### Add Watermark
-```python
-from pypdf import PdfReader, PdfWriter
-
-# Create watermark (or load existing)
-watermark = PdfReader("watermark.pdf").pages[0]
-
-# Apply to all pages
-reader = PdfReader("document.pdf")
-writer = PdfWriter()
-
-for page in reader.pages:
-    page.merge_page(watermark)
-    writer.add_page(page)
-
-with open("watermarked.pdf", "wb") as output:
-    writer.write(output)
-```
-
-### Extract Images
-```bash
-# Using pdfimages (poppler-utils)
-pdfimages -j input.pdf output_prefix
-
-# This extracts all images as output_prefix-000.jpg, output_prefix-001.jpg, etc.
-```
-
-### Password Protection
-```python
-from pypdf import PdfReader, PdfWriter
-
-reader = PdfReader("input.pdf")
-writer = PdfWriter()
-
-for page in reader.pages:
-    writer.add_page(page)
-
-# Add password
-writer.encrypt("userpassword", "ownerpassword")
-
-with open("encrypted.pdf", "wb") as output:
-    writer.write(output)
-```
-
-## Quick Reference
-
-| Task | Best Tool | Command/Code |
-|------|-----------|--------------|
-| Merge PDFs | pypdf | `writer.add_page(page)` |
-| Split PDFs | pypdf | One page per file |
-| Extract text | pdfplumber | `page.extract_text()` |
-| Extract tables | pdfplumber | `page.extract_tables()` |
-| Create PDFs | reportlab | Canvas or Platypus |
-| Command line merge | qpdf | `qpdf --empty --pages ...` |
-| OCR scanned PDFs | pytesseract | Convert to image first |
-| Fill PDF forms | pdf-lib or pypdf (see forms.md) | See forms.md |
-
-## Next Steps
-
-- For advanced pypdfium2 usage, see reference.md
-- For JavaScript libraries (pdf-lib), see reference.md
-- If you need to fill out a PDF form, follow the instructions in forms.md
-- For troubleshooting guides, see reference.md

+ 0 - 27
adapters-output/codebuddy/pdf/workflows/pdf.json

@@ -1,27 +0,0 @@
-{
-  "id": "pdf",
-  "name": "PDF Processing Guide",
-  "description": "Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "analyze",
-      "description": "Analyze requirements",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "execute",
-      "description": "Execute skill task",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "output",
-      "description": "Generate output",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 276
adapters-output/codebuddy/pptx/manifest.json

@@ -1,276 +0,0 @@
-{
-  "name": "pptx",
-  "version": "1.0.0",
-  "description": "Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "pptx",
-      "name": "PPTX creation, editing, and analysis",
-      "description": "Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Read theme file**",
-          "description": "**Read theme file**: Check `ppt/theme/theme1.xml` for colors (`<a:clrScheme>`) and fonts (`<a:fontScheme>`)",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Sample slide content**",
-          "description": "**Sample slide content**: Examine `ppt/slides/slide1.xml` for actual font usage (`<a:rPr>`) and colors",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Search for patterns**",
-          "description": "**Search for patterns**: Use grep to find color (`<a:solidFill>`, `<a:srgbClr>`) and font references across all XML files",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Consider the subject matter**",
-          "description": "**Consider the subject matter**: What is this presentation about? What tone, industry, or mood does it suggest?",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Check for branding**",
-          "description": "**Check for branding**: If the user mentions a company/organization, consider their brand colors and identity",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Match palette to content**",
-          "description": "**Match palette to content**: Select colors that reflect the subject",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "**State your approach**",
-          "description": "**State your approach**: Explain your design choices before writing code",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "**Classic Blue**",
-          "description": "**Classic Blue**: Deep navy (#1C2833), slate gray (#2E4053), silver (#AAB7B8), off-white (#F4F6F6)",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "**Teal & Coral**",
-          "description": "**Teal & Coral**: Teal (#5EA8A7), deep teal (#277884), coral (#FE4447), white (#FFFFFF)",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "**Bold Red**",
-          "description": "**Bold Red**: Red (#C0392B), bright red (#E74C3C), orange (#F39C12), yellow (#F1C40F), green (#2ECC71)",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "**Warm Blush**",
-          "description": "**Warm Blush**: Mauve (#A49393), blush (#EED6D3), rose (#E8B4B8), cream (#FAF7F2)",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "**Burgundy Luxury**",
-          "description": "**Burgundy Luxury**: Burgundy (#5D1D2E), crimson (#951233), rust (#C15937), gold (#997929)",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "**Deep Purple & Emerald**",
-          "description": "**Deep Purple & Emerald**: Purple (#B165FB), dark blue (#181B24), emerald (#40695B), white (#FFFFFF)",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "**Cream & Forest Green**",
-          "description": "**Cream & Forest Green**: Cream (#FFE1C7), forest green (#40695B), white (#FCFCFC)",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "**Pink & Purple**",
-          "description": "**Pink & Purple**: Pink (#F8275B), coral (#FF574A), rose (#FF737D), purple (#3D2F68)",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "**Lime & Plum**",
-          "description": "**Lime & Plum**: Lime (#C5DE82), plum (#7C3A5F), coral (#FD8C6E), blue-gray (#98ACB5)",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "**Black & Gold**",
-          "description": "**Black & Gold**: Gold (#BF9A4A), black (#000000), cream (#F4F6F6)",
-          "type": "instruction"
-        },
-        {
-          "id": 18,
-          "name": "**Sage & Terracotta**",
-          "description": "**Sage & Terracotta**: Sage (#87A96B), terracotta (#E07A5F), cream (#F4F1DE), charcoal (#2C2C2C)",
-          "type": "instruction"
-        },
-        {
-          "id": 19,
-          "name": "**Charcoal & Red**",
-          "description": "**Charcoal & Red**: Charcoal (#292929), red (#E33737), light gray (#CCCBCB)",
-          "type": "instruction"
-        },
-        {
-          "id": 20,
-          "name": "**Vibrant Orange**",
-          "description": "**Vibrant Orange**: Orange (#F96D00), light gray (#F2F2F2), charcoal (#222831)",
-          "type": "instruction"
-        },
-        {
-          "id": 21,
-          "name": "**Forest Green**",
-          "description": "**Forest Green**: Black (#191A19), green (#4E9F3D), dark green (#1E5128), white (#FFFFFF)",
-          "type": "instruction"
-        },
-        {
-          "id": 22,
-          "name": "**Retro Rainbow**",
-          "description": "**Retro Rainbow**: Purple (#722880), pink (#D72D51), orange (#EB5C18), amber (#F08800), gold (#DEB600)",
-          "type": "instruction"
-        },
-        {
-          "id": 23,
-          "name": "**Vintage Earthy**",
-          "description": "**Vintage Earthy**: Mustard (#E3B448), sage (#CBD18F), forest green (#3A6B35), cream (#F4F1DE)",
-          "type": "instruction"
-        },
-        {
-          "id": 24,
-          "name": "**Coastal Rose**",
-          "description": "**Coastal Rose**: Old rose (#AD7670), beaver (#B49886), eggshell (#F3ECDC), ash gray (#BFD5BE)",
-          "type": "instruction"
-        },
-        {
-          "id": 25,
-          "name": "**Orange & Turquoise**",
-          "description": "**Orange & Turquoise**: Light orange (#FC993E), grayish turquoise (#667C6F), white (#FCFCFC)",
-          "type": "instruction"
-        },
-        {
-          "id": 26,
-          "name": "**MANDATORY - READ ENTIRE FILE**",
-          "description": "**MANDATORY - READ ENTIRE FILE**: Read [`html2pptx.md`](html2pptx.md) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with presentation creation.",
-          "type": "instruction"
-        },
-        {
-          "id": 27,
-          "name": "Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16",
-          "description": "Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16:9)",
-          "type": "instruction"
-        },
-        {
-          "id": 28,
-          "name": "Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation",
-          "description": "Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation",
-          "type": "instruction"
-        },
-        {
-          "id": 29,
-          "name": "**Visual validation**",
-          "description": "**Visual validation**: Generate thumbnails and inspect for layout issues",
-          "type": "instruction"
-        },
-        {
-          "id": 30,
-          "name": "**MANDATORY - READ ENTIRE FILE**",
-          "description": "**MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~500 lines) completely from start to finish.  **NEVER set any range limits when reading this file.**  Read the full file content for detailed guidance on OOXML structure and editing workflows before any presentation editing.",
-          "type": "instruction"
-        },
-        {
-          "id": 31,
-          "name": "Unpack the presentation",
-          "description": "Unpack the presentation: `python ooxml/scripts/unpack.py <office_file> <output_dir>`",
-          "type": "instruction"
-        },
-        {
-          "id": 32,
-          "name": "Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)",
-          "description": "Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)",
-          "type": "instruction"
-        },
-        {
-          "id": 33,
-          "name": "**CRITICAL**",
-          "description": "**CRITICAL**: Validate immediately after each edit and fix any validation errors before proceeding: `python ooxml/scripts/validate.py <dir> --original <file>`",
-          "type": "instruction"
-        },
-        {
-          "id": 34,
-          "name": "Pack the final presentation",
-          "description": "Pack the final presentation: `python ooxml/scripts/pack.py <input_directory> <office_file>`",
-          "type": "instruction"
-        },
-        {
-          "id": 35,
-          "name": "**Extract template text AND create visual thumbnail grid**",
-          "description": "**Extract template text AND create visual thumbnail grid**:",
-          "type": "instruction"
-        },
-        {
-          "id": 36,
-          "name": "**Analyze template and save inventory to a file**",
-          "description": "**Analyze template and save inventory to a file**:",
-          "type": "instruction"
-        },
-        {
-          "id": 37,
-          "name": "**Create presentation outline based on template inventory**",
-          "description": "**Create presentation outline based on template inventory**:",
-          "type": "instruction"
-        },
-        {
-          "id": 38,
-          "name": "**Duplicate, reorder, and delete slides using `rearrange.py`**",
-          "description": "**Duplicate, reorder, and delete slides using `rearrange.py`**:",
-          "type": "instruction"
-        },
-        {
-          "id": 39,
-          "name": "**Extract ALL text using the `inventory.py` script**",
-          "description": "**Extract ALL text using the `inventory.py` script**:",
-          "type": "instruction"
-        },
-        {
-          "id": 40,
-          "name": "**Generate replacement text and save the data to a JSON file**",
-          "description": "**Generate replacement text and save the data to a JSON file**",
-          "type": "instruction"
-        },
-        {
-          "id": 41,
-          "name": "**Apply replacements using the `replace.py` script**",
-          "description": "**Apply replacements using the `replace.py` script**",
-          "type": "instruction"
-        },
-        {
-          "id": 42,
-          "name": "**Convert PPTX to PDF**",
-          "description": "**Convert PPTX to PDF**:",
-          "type": "instruction"
-        },
-        {
-          "id": 43,
-          "name": "**Convert PDF pages to JPEG images**",
-          "description": "**Convert PDF pages to JPEG images**:",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 484
adapters-output/codebuddy/pptx/skills/pptx/SKILL.md

@@ -1,484 +0,0 @@
----
-name: pptx
-description: "Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks"
-license: Proprietary. LICENSE.txt has complete terms
----
-
-# PPTX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of a .pptx file. A .pptx file is essentially a ZIP archive containing XML files and other resources that you can read or edit. You have different tools and workflows available for different tasks.
-
-## Reading and analyzing content
-
-### Text extraction
-If you just need to read the text contents of a presentation, you should convert the document to markdown:
-
-```bash
-# Convert document to markdown
-python -m markitdown path-to-file.pptx
-```
-
-### Raw XML access
-You need raw XML access for: comments, speaker notes, slide layouts, animations, design elements, and complex formatting. For any of these features, you'll need to unpack a presentation and read its raw XML contents.
-
-#### Unpacking a file
-`python ooxml/scripts/unpack.py <office_file> <output_dir>`
-
-**Note**: The unpack.py script is located at `skills/pptx/ooxml/scripts/unpack.py` relative to the project root. If the script doesn't exist at this path, use `find . -name "unpack.py"` to locate it.
-
-#### Key file structures
-* `ppt/presentation.xml` - Main presentation metadata and slide references
-* `ppt/slides/slide{N}.xml` - Individual slide contents (slide1.xml, slide2.xml, etc.)
-* `ppt/notesSlides/notesSlide{N}.xml` - Speaker notes for each slide
-* `ppt/comments/modernComment_*.xml` - Comments for specific slides
-* `ppt/slideLayouts/` - Layout templates for slides
-* `ppt/slideMasters/` - Master slide templates
-* `ppt/theme/` - Theme and styling information
-* `ppt/media/` - Images and other media files
-
-#### Typography and color extraction
-**When given an example design to emulate**: Always analyze the presentation's typography and colors first using the methods below:
-1. **Read theme file**: Check `ppt/theme/theme1.xml` for colors (`<a:clrScheme>`) and fonts (`<a:fontScheme>`)
-2. **Sample slide content**: Examine `ppt/slides/slide1.xml` for actual font usage (`<a:rPr>`) and colors
-3. **Search for patterns**: Use grep to find color (`<a:solidFill>`, `<a:srgbClr>`) and font references across all XML files
-
-## Creating a new PowerPoint presentation **without a template**
-
-When creating a new PowerPoint presentation from scratch, use the **html2pptx** workflow to convert HTML slides to PowerPoint with accurate positioning.
-
-### Design Principles
-
-**CRITICAL**: Before creating any presentation, analyze the content and choose appropriate design elements:
-1. **Consider the subject matter**: What is this presentation about? What tone, industry, or mood does it suggest?
-2. **Check for branding**: If the user mentions a company/organization, consider their brand colors and identity
-3. **Match palette to content**: Select colors that reflect the subject
-4. **State your approach**: Explain your design choices before writing code
-
-**Requirements**:
-- ✅ State your content-informed design approach BEFORE writing code
-- ✅ Use web-safe fonts only: Arial, Helvetica, Times New Roman, Georgia, Courier New, Verdana, Tahoma, Trebuchet MS, Impact
-- ✅ Create clear visual hierarchy through size, weight, and color
-- ✅ Ensure readability: strong contrast, appropriately sized text, clean alignment
-- ✅ Be consistent: repeat patterns, spacing, and visual language across slides
-
-#### Color Palette Selection
-
-**Choosing colors creatively**:
-- **Think beyond defaults**: What colors genuinely match this specific topic? Avoid autopilot choices.
-- **Consider multiple angles**: Topic, industry, mood, energy level, target audience, brand identity (if mentioned)
-- **Be adventurous**: Try unexpected combinations - a healthcare presentation doesn't have to be green, finance doesn't have to be navy
-- **Build your palette**: Pick 3-5 colors that work together (dominant colors + supporting tones + accent)
-- **Ensure contrast**: Text must be clearly readable on backgrounds
-
-**Example color palettes** (use these to spark creativity - choose one, adapt it, or create your own):
-
-1. **Classic Blue**: Deep navy (#1C2833), slate gray (#2E4053), silver (#AAB7B8), off-white (#F4F6F6)
-2. **Teal & Coral**: Teal (#5EA8A7), deep teal (#277884), coral (#FE4447), white (#FFFFFF)
-3. **Bold Red**: Red (#C0392B), bright red (#E74C3C), orange (#F39C12), yellow (#F1C40F), green (#2ECC71)
-4. **Warm Blush**: Mauve (#A49393), blush (#EED6D3), rose (#E8B4B8), cream (#FAF7F2)
-5. **Burgundy Luxury**: Burgundy (#5D1D2E), crimson (#951233), rust (#C15937), gold (#997929)
-6. **Deep Purple & Emerald**: Purple (#B165FB), dark blue (#181B24), emerald (#40695B), white (#FFFFFF)
-7. **Cream & Forest Green**: Cream (#FFE1C7), forest green (#40695B), white (#FCFCFC)
-8. **Pink & Purple**: Pink (#F8275B), coral (#FF574A), rose (#FF737D), purple (#3D2F68)
-9. **Lime & Plum**: Lime (#C5DE82), plum (#7C3A5F), coral (#FD8C6E), blue-gray (#98ACB5)
-10. **Black & Gold**: Gold (#BF9A4A), black (#000000), cream (#F4F6F6)
-11. **Sage & Terracotta**: Sage (#87A96B), terracotta (#E07A5F), cream (#F4F1DE), charcoal (#2C2C2C)
-12. **Charcoal & Red**: Charcoal (#292929), red (#E33737), light gray (#CCCBCB)
-13. **Vibrant Orange**: Orange (#F96D00), light gray (#F2F2F2), charcoal (#222831)
-14. **Forest Green**: Black (#191A19), green (#4E9F3D), dark green (#1E5128), white (#FFFFFF)
-15. **Retro Rainbow**: Purple (#722880), pink (#D72D51), orange (#EB5C18), amber (#F08800), gold (#DEB600)
-16. **Vintage Earthy**: Mustard (#E3B448), sage (#CBD18F), forest green (#3A6B35), cream (#F4F1DE)
-17. **Coastal Rose**: Old rose (#AD7670), beaver (#B49886), eggshell (#F3ECDC), ash gray (#BFD5BE)
-18. **Orange & Turquoise**: Light orange (#FC993E), grayish turquoise (#667C6F), white (#FCFCFC)
-
-#### Visual Details Options
-
-**Geometric Patterns**:
-- Diagonal section dividers instead of horizontal
-- Asymmetric column widths (30/70, 40/60, 25/75)
-- Rotated text headers at 90° or 270°
-- Circular/hexagonal frames for images
-- Triangular accent shapes in corners
-- Overlapping shapes for depth
-
-**Border & Frame Treatments**:
-- Thick single-color borders (10-20pt) on one side only
-- Double-line borders with contrasting colors
-- Corner brackets instead of full frames
-- L-shaped borders (top+left or bottom+right)
-- Underline accents beneath headers (3-5pt thick)
-
-**Typography Treatments**:
-- Extreme size contrast (72pt headlines vs 11pt body)
-- All-caps headers with wide letter spacing
-- Numbered sections in oversized display type
-- Monospace (Courier New) for data/stats/technical content
-- Condensed fonts (Arial Narrow) for dense information
-- Outlined text for emphasis
-
-**Chart & Data Styling**:
-- Monochrome charts with single accent color for key data
-- Horizontal bar charts instead of vertical
-- Dot plots instead of bar charts
-- Minimal gridlines or none at all
-- Data labels directly on elements (no legends)
-- Oversized numbers for key metrics
-
-**Layout Innovations**:
-- Full-bleed images with text overlays
-- Sidebar column (20-30% width) for navigation/context
-- Modular grid systems (3×3, 4×4 blocks)
-- Z-pattern or F-pattern content flow
-- Floating text boxes over colored shapes
-- Magazine-style multi-column layouts
-
-**Background Treatments**:
-- Solid color blocks occupying 40-60% of slide
-- Gradient fills (vertical or diagonal only)
-- Split backgrounds (two colors, diagonal or vertical)
-- Edge-to-edge color bands
-- Negative space as a design element
-
-### Layout Tips
-**When creating slides with charts or tables:**
-- **Two-column layout (PREFERRED)**: Use a header spanning the full width, then two columns below - text/bullets in one column and the featured content in the other. This provides better balance and makes charts/tables more readable. Use flexbox with unequal column widths (e.g., 40%/60% split) to optimize space for each content type.
-- **Full-slide layout**: Let the featured content (chart/table) take up the entire slide for maximum impact and readability
-- **NEVER vertically stack**: Do not place charts/tables below text in a single column - this causes poor readability and layout issues
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`html2pptx.md`](html2pptx.md) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with presentation creation.
-2. Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16:9)
-   - Use `<p>`, `<h1>`-`<h6>`, `<ul>`, `<ol>` for all text content
-   - Use `class="placeholder"` for areas where charts/tables will be added (render with gray background for visibility)
-   - **CRITICAL**: Rasterize gradients and icons as PNG images FIRST using Sharp, then reference in HTML
-   - **LAYOUT**: For slides with charts/tables/images, use either full-slide layout or two-column layout for better readability
-3. Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation
-   - Use the `html2pptx()` function to process each HTML file
-   - Add charts and tables to placeholder areas using PptxGenJS API
-   - Save the presentation using `pptx.writeFile()`
-4. **Visual validation**: Generate thumbnails and inspect for layout issues
-   - Create thumbnail grid: `python scripts/thumbnail.py output.pptx workspace/thumbnails --cols 4`
-   - Read and carefully examine the thumbnail image for:
-     - **Text cutoff**: Text being cut off by header bars, shapes, or slide edges
-     - **Text overlap**: Text overlapping with other text or shapes
-     - **Positioning issues**: Content too close to slide boundaries or other elements
-     - **Contrast issues**: Insufficient contrast between text and backgrounds
-   - If issues found, adjust HTML margins/spacing/colors and regenerate the presentation
-   - Repeat until all slides are visually correct
-
-## Editing an existing PowerPoint presentation
-
-When edit slides in an existing PowerPoint presentation, you need to work with the raw Office Open XML (OOXML) format. This involves unpacking the .pptx file, editing the XML content, and repacking it.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~500 lines) completely from start to finish.  **NEVER set any range limits when reading this file.**  Read the full file content for detailed guidance on OOXML structure and editing workflows before any presentation editing.
-2. Unpack the presentation: `python ooxml/scripts/unpack.py <office_file> <output_dir>`
-3. Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)
-4. **CRITICAL**: Validate immediately after each edit and fix any validation errors before proceeding: `python ooxml/scripts/validate.py <dir> --original <file>`
-5. Pack the final presentation: `python ooxml/scripts/pack.py <input_directory> <office_file>`
-
-## Creating a new PowerPoint presentation **using a template**
-
-When you need to create a presentation that follows an existing template's design, you'll need to duplicate and re-arrange template slides before then replacing placeholder context.
-
-### Workflow
-1. **Extract template text AND create visual thumbnail grid**:
-   * Extract text: `python -m markitdown template.pptx > template-content.md`
-   * Read `template-content.md`: Read the entire file to understand the contents of the template presentation. **NEVER set any range limits when reading this file.**
-   * Create thumbnail grids: `python scripts/thumbnail.py template.pptx`
-   * See [Creating Thumbnail Grids](#creating-thumbnail-grids) section for more details
-
-2. **Analyze template and save inventory to a file**:
-   * **Visual Analysis**: Review thumbnail grid(s) to understand slide layouts, design patterns, and visual structure
-   * Create and save a template inventory file at `template-inventory.md` containing:
-     ```markdown
-     # Template Inventory Analysis
-     **Total Slides: [count]**
-     **IMPORTANT: Slides are 0-indexed (first slide = 0, last slide = count-1)**
-
-     ## [Category Name]
-     - Slide 0: [Layout code if available] - Description/purpose
-     - Slide 1: [Layout code] - Description/purpose
-     - Slide 2: [Layout code] - Description/purpose
-     [... EVERY slide must be listed individually with its index ...]
-     ```
-   * **Using the thumbnail grid**: Reference the visual thumbnails to identify:
-     - Layout patterns (title slides, content layouts, section dividers)
-     - Image placeholder locations and counts
-     - Design consistency across slide groups
-     - Visual hierarchy and structure
-   * This inventory file is REQUIRED for selecting appropriate templates in the next step
-
-3. **Create presentation outline based on template inventory**:
-   * Review available templates from step 2.
-   * Choose an intro or title template for the first slide. This should be one of the first templates.
-   * Choose safe, text-based layouts for the other slides.
-   * **CRITICAL: Match layout structure to actual content**:
-     - Single-column layouts: Use for unified narrative or single topic
-     - Two-column layouts: Use ONLY when you have exactly 2 distinct items/concepts
-     - Three-column layouts: Use ONLY when you have exactly 3 distinct items/concepts
-     - Image + text layouts: Use ONLY when you have actual images to insert
-     - Quote layouts: Use ONLY for actual quotes from people (with attribution), never for emphasis
-     - Never use layouts with more placeholders than you have content
-     - If you have 2 items, don't force them into a 3-column layout
-     - If you have 4+ items, consider breaking into multiple slides or using a list format
-   * Count your actual content pieces BEFORE selecting the layout
-   * Verify each placeholder in the chosen layout will be filled with meaningful content
-   * Select one option representing the **best** layout for each content section.
-   * Save `outline.md` with content AND template mapping that leverages available designs
-   * Example template mapping:
-      ```
-      # Template slides to use (0-based indexing)
-      # WARNING: Verify indices are within range! Template with 73 slides has indices 0-72
-      # Mapping: slide numbers from outline -> template slide indices
-      template_mapping = [
-          0,   # Use slide 0 (Title/Cover)
-          34,  # Use slide 34 (B1: Title and body)
-          34,  # Use slide 34 again (duplicate for second B1)
-          50,  # Use slide 50 (E1: Quote)
-          54,  # Use slide 54 (F2: Closing + Text)
-      ]
-      ```
-
-4. **Duplicate, reorder, and delete slides using `rearrange.py`**:
-   * Use the `scripts/rearrange.py` script to create a new presentation with slides in the desired order:
-     ```bash
-     python scripts/rearrange.py template.pptx working.pptx 0,34,34,50,52
-     ```
-   * The script handles duplicating repeated slides, deleting unused slides, and reordering automatically
-   * Slide indices are 0-based (first slide is 0, second is 1, etc.)
-   * The same slide index can appear multiple times to duplicate that slide
-
-5. **Extract ALL text using the `inventory.py` script**:
-   * **Run inventory extraction**:
-     ```bash
-     python scripts/inventory.py working.pptx text-inventory.json
-     ```
-   * **Read text-inventory.json**: Read the entire text-inventory.json file to understand all shapes and their properties. **NEVER set any range limits when reading this file.**
-
-   * The inventory JSON structure:
-      ```json
-        {
-          "slide-0": {
-            "shape-0": {
-              "placeholder_type": "TITLE",  // or null for non-placeholders
-              "left": 1.5,                  // position in inches
-              "top": 2.0,
-              "width": 7.5,
-              "height": 1.2,
-              "paragraphs": [
-                {
-                  "text": "Paragraph text",
-                  // Optional properties (only included when non-default):
-                  "bullet": true,           // explicit bullet detected
-                  "level": 0,               // only included when bullet is true
-                  "alignment": "CENTER",    // CENTER, RIGHT (not LEFT)
-                  "space_before": 10.0,     // space before paragraph in points
-                  "space_after": 6.0,       // space after paragraph in points
-                  "line_spacing": 22.4,     // line spacing in points
-                  "font_name": "Arial",     // from first run
-                  "font_size": 14.0,        // in points
-                  "bold": true,
-                  "italic": false,
-                  "underline": false,
-                  "color": "FF0000"         // RGB color
-                }
-              ]
-            }
-          }
-        }
-      ```
-
-   * Key features:
-     - **Slides**: Named as "slide-0", "slide-1", etc.
-     - **Shapes**: Ordered by visual position (top-to-bottom, left-to-right) as "shape-0", "shape-1", etc.
-     - **Placeholder types**: TITLE, CENTER_TITLE, SUBTITLE, BODY, OBJECT, or null
-     - **Default font size**: `default_font_size` in points extracted from layout placeholders (when available)
-     - **Slide numbers are filtered**: Shapes with SLIDE_NUMBER placeholder type are automatically excluded from inventory
-     - **Bullets**: When `bullet: true`, `level` is always included (even if 0)
-     - **Spacing**: `space_before`, `space_after`, and `line_spacing` in points (only included when set)
-     - **Colors**: `color` for RGB (e.g., "FF0000"), `theme_color` for theme colors (e.g., "DARK_1")
-     - **Properties**: Only non-default values are included in the output
-
-6. **Generate replacement text and save the data to a JSON file**
-   Based on the text inventory from the previous step:
-   - **CRITICAL**: First verify which shapes exist in the inventory - only reference shapes that are actually present
-   - **VALIDATION**: The replace.py script will validate that all shapes in your replacement JSON exist in the inventory
-     - If you reference a non-existent shape, you'll get an error showing available shapes
-     - If you reference a non-existent slide, you'll get an error indicating the slide doesn't exist
-     - All validation errors are shown at once before the script exits
-   - **IMPORTANT**: The replace.py script uses inventory.py internally to identify ALL text shapes
-   - **AUTOMATIC CLEARING**: ALL text shapes from the inventory will be cleared unless you provide "paragraphs" for them
-   - Add a "paragraphs" field to shapes that need content (not "replacement_paragraphs")
-   - Shapes without "paragraphs" in the replacement JSON will have their text cleared automatically
-   - Paragraphs with bullets will be automatically left aligned. Don't set the `alignment` property on when `"bullet": true`
-   - Generate appropriate replacement content for placeholder text
-   - Use shape size to determine appropriate content length
-   - **CRITICAL**: Include paragraph properties from the original inventory - don't just provide text
-   - **IMPORTANT**: When bullet: true, do NOT include bullet symbols (•, -, *) in text - they're added automatically
-   - **ESSENTIAL FORMATTING RULES**:
-     - Headers/titles should typically have `"bold": true`
-     - List items should have `"bullet": true, "level": 0` (level is required when bullet is true)
-     - Preserve any alignment properties (e.g., `"alignment": "CENTER"` for centered text)
-     - Include font properties when different from default (e.g., `"font_size": 14.0`, `"font_name": "Lora"`)
-     - Colors: Use `"color": "FF0000"` for RGB or `"theme_color": "DARK_1"` for theme colors
-     - The replacement script expects **properly formatted paragraphs**, not just text strings
-     - **Overlapping shapes**: Prefer shapes with larger default_font_size or more appropriate placeholder_type
-   - Save the updated inventory with replacements to `replacement-text.json`
-   - **WARNING**: Different template layouts have different shape counts - always check the actual inventory before creating replacements
-
-   Example paragraphs field showing proper formatting:
-   ```json
-   "paragraphs": [
-     {
-       "text": "New presentation title text",
-       "alignment": "CENTER",
-       "bold": true
-     },
-     {
-       "text": "Section Header",
-       "bold": true
-     },
-     {
-       "text": "First bullet point without bullet symbol",
-       "bullet": true,
-       "level": 0
-     },
-     {
-       "text": "Red colored text",
-       "color": "FF0000"
-     },
-     {
-       "text": "Theme colored text",
-       "theme_color": "DARK_1"
-     },
-     {
-       "text": "Regular paragraph text without special formatting"
-     }
-   ]
-   ```
-
-   **Shapes not listed in the replacement JSON are automatically cleared**:
-   ```json
-   {
-     "slide-0": {
-       "shape-0": {
-         "paragraphs": [...] // This shape gets new text
-       }
-       // shape-1 and shape-2 from inventory will be cleared automatically
-     }
-   }
-   ```
-
-   **Common formatting patterns for presentations**:
-   - Title slides: Bold text, sometimes centered
-   - Section headers within slides: Bold text
-   - Bullet lists: Each item needs `"bullet": true, "level": 0`
-   - Body text: Usually no special properties needed
-   - Quotes: May have special alignment or font properties
-
-7. **Apply replacements using the `replace.py` script**
-   ```bash
-   python scripts/replace.py working.pptx replacement-text.json output.pptx
-   ```
-
-   The script will:
-   - First extract the inventory of ALL text shapes using functions from inventory.py
-   - Validate that all shapes in the replacement JSON exist in the inventory
-   - Clear text from ALL shapes identified in the inventory
-   - Apply new text only to shapes with "paragraphs" defined in the replacement JSON
-   - Preserve formatting by applying paragraph properties from the JSON
-   - Handle bullets, alignment, font properties, and colors automatically
-   - Save the updated presentation
-
-   Example validation errors:
-   ```
-   ERROR: Invalid shapes in replacement JSON:
-     - Shape 'shape-99' not found on 'slide-0'. Available shapes: shape-0, shape-1, shape-4
-     - Slide 'slide-999' not found in inventory
-   ```
-
-   ```
-   ERROR: Replacement text made overflow worse in these shapes:
-     - slide-0/shape-2: overflow worsened by 1.25" (was 0.00", now 1.25")
-   ```
-
-## Creating Thumbnail Grids
-
-To create visual thumbnail grids of PowerPoint slides for quick analysis and reference:
-
-```bash
-python scripts/thumbnail.py template.pptx [output_prefix]
-```
-
-**Features**:
-- Creates: `thumbnails.jpg` (or `thumbnails-1.jpg`, `thumbnails-2.jpg`, etc. for large decks)
-- Default: 5 columns, max 30 slides per grid (5×6)
-- Custom prefix: `python scripts/thumbnail.py template.pptx my-grid`
-  - Note: The output prefix should include the path if you want output in a specific directory (e.g., `workspace/my-grid`)
-- Adjust columns: `--cols 4` (range: 3-6, affects slides per grid)
-- Grid limits: 3 cols = 12 slides/grid, 4 cols = 20, 5 cols = 30, 6 cols = 42
-- Slides are zero-indexed (Slide 0, Slide 1, etc.)
-
-**Use cases**:
-- Template analysis: Quickly understand slide layouts and design patterns
-- Content review: Visual overview of entire presentation
-- Navigation reference: Find specific slides by their visual appearance
-- Quality check: Verify all slides are properly formatted
-
-**Examples**:
-```bash
-# Basic usage
-python scripts/thumbnail.py presentation.pptx
-
-# Combine options: custom name, columns
-python scripts/thumbnail.py template.pptx analysis --cols 4
-```
-
-## Converting Slides to Images
-
-To visually analyze PowerPoint slides, convert them to images using a two-step process:
-
-1. **Convert PPTX to PDF**:
-   ```bash
-   soffice --headless --convert-to pdf template.pptx
-   ```
-
-2. **Convert PDF pages to JPEG images**:
-   ```bash
-   pdftoppm -jpeg -r 150 template.pdf slide
-   ```
-   This creates files like `slide-1.jpg`, `slide-2.jpg`, etc.
-
-Options:
-- `-r 150`: Sets resolution to 150 DPI (adjust for quality/size balance)
-- `-jpeg`: Output JPEG format (use `-png` for PNG if preferred)
-- `-f N`: First page to convert (e.g., `-f 2` starts from page 2)
-- `-l N`: Last page to convert (e.g., `-l 5` stops at page 5)
-- `slide`: Prefix for output files
-
-Example for specific range:
-```bash
-pdftoppm -jpeg -r 150 -f 2 -l 5 template.pdf slide  # Converts only pages 2-5
-```
-
-## Code Style Guidelines
-**IMPORTANT**: When generating code for PPTX operations:
-- Write concise code
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-## Dependencies
-
-Required dependencies (should already be installed):
-
-- **markitdown**: `pip install "markitdown[pptx]"` (for text extraction from presentations)
-- **pptxgenjs**: `npm install -g pptxgenjs` (for creating presentations via html2pptx)
-- **playwright**: `npm install -g playwright` (for HTML rendering in html2pptx)
-- **react-icons**: `npm install -g react-icons react react-dom` (for icons)
-- **sharp**: `npm install -g sharp` (for SVG rasterization and image processing)
-- **LibreOffice**: `sudo apt-get install libreoffice` (for PDF conversion)
-- **Poppler**: `sudo apt-get install poppler-utils` (for pdftoppm to convert PDF to images)
-- **defusedxml**: `pip install defusedxml` (for secure XML parsing)

+ 0 - 267
adapters-output/codebuddy/pptx/workflows/pptx.json

@@ -1,267 +0,0 @@
-{
-  "id": "pptx",
-  "name": "PPTX creation, editing, and analysis",
-  "description": "Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Read theme file**",
-      "description": "**Read theme file**: Check `ppt/theme/theme1.xml` for colors (`<a:clrScheme>`) and fonts (`<a:fontScheme>`)",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Sample slide content**",
-      "description": "**Sample slide content**: Examine `ppt/slides/slide1.xml` for actual font usage (`<a:rPr>`) and colors",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Search for patterns**",
-      "description": "**Search for patterns**: Use grep to find color (`<a:solidFill>`, `<a:srgbClr>`) and font references across all XML files",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Consider the subject matter**",
-      "description": "**Consider the subject matter**: What is this presentation about? What tone, industry, or mood does it suggest?",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Check for branding**",
-      "description": "**Check for branding**: If the user mentions a company/organization, consider their brand colors and identity",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Match palette to content**",
-      "description": "**Match palette to content**: Select colors that reflect the subject",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "**State your approach**",
-      "description": "**State your approach**: Explain your design choices before writing code",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "**Classic Blue**",
-      "description": "**Classic Blue**: Deep navy (#1C2833), slate gray (#2E4053), silver (#AAB7B8), off-white (#F4F6F6)",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "**Teal & Coral**",
-      "description": "**Teal & Coral**: Teal (#5EA8A7), deep teal (#277884), coral (#FE4447), white (#FFFFFF)",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "**Bold Red**",
-      "description": "**Bold Red**: Red (#C0392B), bright red (#E74C3C), orange (#F39C12), yellow (#F1C40F), green (#2ECC71)",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "**Warm Blush**",
-      "description": "**Warm Blush**: Mauve (#A49393), blush (#EED6D3), rose (#E8B4B8), cream (#FAF7F2)",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "**Burgundy Luxury**",
-      "description": "**Burgundy Luxury**: Burgundy (#5D1D2E), crimson (#951233), rust (#C15937), gold (#997929)",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "**Deep Purple & Emerald**",
-      "description": "**Deep Purple & Emerald**: Purple (#B165FB), dark blue (#181B24), emerald (#40695B), white (#FFFFFF)",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "**Cream & Forest Green**",
-      "description": "**Cream & Forest Green**: Cream (#FFE1C7), forest green (#40695B), white (#FCFCFC)",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "**Pink & Purple**",
-      "description": "**Pink & Purple**: Pink (#F8275B), coral (#FF574A), rose (#FF737D), purple (#3D2F68)",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "**Lime & Plum**",
-      "description": "**Lime & Plum**: Lime (#C5DE82), plum (#7C3A5F), coral (#FD8C6E), blue-gray (#98ACB5)",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "**Black & Gold**",
-      "description": "**Black & Gold**: Gold (#BF9A4A), black (#000000), cream (#F4F6F6)",
-      "type": "instruction"
-    },
-    {
-      "id": 18,
-      "name": "**Sage & Terracotta**",
-      "description": "**Sage & Terracotta**: Sage (#87A96B), terracotta (#E07A5F), cream (#F4F1DE), charcoal (#2C2C2C)",
-      "type": "instruction"
-    },
-    {
-      "id": 19,
-      "name": "**Charcoal & Red**",
-      "description": "**Charcoal & Red**: Charcoal (#292929), red (#E33737), light gray (#CCCBCB)",
-      "type": "instruction"
-    },
-    {
-      "id": 20,
-      "name": "**Vibrant Orange**",
-      "description": "**Vibrant Orange**: Orange (#F96D00), light gray (#F2F2F2), charcoal (#222831)",
-      "type": "instruction"
-    },
-    {
-      "id": 21,
-      "name": "**Forest Green**",
-      "description": "**Forest Green**: Black (#191A19), green (#4E9F3D), dark green (#1E5128), white (#FFFFFF)",
-      "type": "instruction"
-    },
-    {
-      "id": 22,
-      "name": "**Retro Rainbow**",
-      "description": "**Retro Rainbow**: Purple (#722880), pink (#D72D51), orange (#EB5C18), amber (#F08800), gold (#DEB600)",
-      "type": "instruction"
-    },
-    {
-      "id": 23,
-      "name": "**Vintage Earthy**",
-      "description": "**Vintage Earthy**: Mustard (#E3B448), sage (#CBD18F), forest green (#3A6B35), cream (#F4F1DE)",
-      "type": "instruction"
-    },
-    {
-      "id": 24,
-      "name": "**Coastal Rose**",
-      "description": "**Coastal Rose**: Old rose (#AD7670), beaver (#B49886), eggshell (#F3ECDC), ash gray (#BFD5BE)",
-      "type": "instruction"
-    },
-    {
-      "id": 25,
-      "name": "**Orange & Turquoise**",
-      "description": "**Orange & Turquoise**: Light orange (#FC993E), grayish turquoise (#667C6F), white (#FCFCFC)",
-      "type": "instruction"
-    },
-    {
-      "id": 26,
-      "name": "**MANDATORY - READ ENTIRE FILE**",
-      "description": "**MANDATORY - READ ENTIRE FILE**: Read [`html2pptx.md`](html2pptx.md) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with presentation creation.",
-      "type": "instruction"
-    },
-    {
-      "id": 27,
-      "name": "Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16",
-      "description": "Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16:9)",
-      "type": "instruction"
-    },
-    {
-      "id": 28,
-      "name": "Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation",
-      "description": "Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation",
-      "type": "instruction"
-    },
-    {
-      "id": 29,
-      "name": "**Visual validation**",
-      "description": "**Visual validation**: Generate thumbnails and inspect for layout issues",
-      "type": "instruction"
-    },
-    {
-      "id": 30,
-      "name": "**MANDATORY - READ ENTIRE FILE**",
-      "description": "**MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~500 lines) completely from start to finish.  **NEVER set any range limits when reading this file.**  Read the full file content for detailed guidance on OOXML structure and editing workflows before any presentation editing.",
-      "type": "instruction"
-    },
-    {
-      "id": 31,
-      "name": "Unpack the presentation",
-      "description": "Unpack the presentation: `python ooxml/scripts/unpack.py <office_file> <output_dir>`",
-      "type": "instruction"
-    },
-    {
-      "id": 32,
-      "name": "Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)",
-      "description": "Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)",
-      "type": "instruction"
-    },
-    {
-      "id": 33,
-      "name": "**CRITICAL**",
-      "description": "**CRITICAL**: Validate immediately after each edit and fix any validation errors before proceeding: `python ooxml/scripts/validate.py <dir> --original <file>`",
-      "type": "instruction"
-    },
-    {
-      "id": 34,
-      "name": "Pack the final presentation",
-      "description": "Pack the final presentation: `python ooxml/scripts/pack.py <input_directory> <office_file>`",
-      "type": "instruction"
-    },
-    {
-      "id": 35,
-      "name": "**Extract template text AND create visual thumbnail grid**",
-      "description": "**Extract template text AND create visual thumbnail grid**:",
-      "type": "instruction"
-    },
-    {
-      "id": 36,
-      "name": "**Analyze template and save inventory to a file**",
-      "description": "**Analyze template and save inventory to a file**:",
-      "type": "instruction"
-    },
-    {
-      "id": 37,
-      "name": "**Create presentation outline based on template inventory**",
-      "description": "**Create presentation outline based on template inventory**:",
-      "type": "instruction"
-    },
-    {
-      "id": 38,
-      "name": "**Duplicate, reorder, and delete slides using `rearrange.py`**",
-      "description": "**Duplicate, reorder, and delete slides using `rearrange.py`**:",
-      "type": "instruction"
-    },
-    {
-      "id": 39,
-      "name": "**Extract ALL text using the `inventory.py` script**",
-      "description": "**Extract ALL text using the `inventory.py` script**:",
-      "type": "instruction"
-    },
-    {
-      "id": 40,
-      "name": "**Generate replacement text and save the data to a JSON file**",
-      "description": "**Generate replacement text and save the data to a JSON file**",
-      "type": "instruction"
-    },
-    {
-      "id": 41,
-      "name": "**Apply replacements using the `replace.py` script**",
-      "description": "**Apply replacements using the `replace.py` script**",
-      "type": "instruction"
-    },
-    {
-      "id": 42,
-      "name": "**Convert PPTX to PDF**",
-      "description": "**Convert PPTX to PDF**:",
-      "type": "instruction"
-    },
-    {
-      "id": 43,
-      "name": "**Convert PDF pages to JPEG images**",
-      "description": "**Convert PDF pages to JPEG images**:",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 180
adapters-output/codebuddy/skill-creator/manifest.json

@@ -1,180 +0,0 @@
-{
-  "name": "skill-creator",
-  "version": "1.0.0",
-  "description": "Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "skill-creator",
-      "name": "Skill Creator",
-      "description": "Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "Specialized workflows - Multi-step procedures for specific domains",
-          "description": "Specialized workflows - Multi-step procedures for specific domains",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Tool integrations - Instructions for working with specific file formats or APIs",
-          "description": "Tool integrations - Instructions for working with specific file formats or APIs",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "Domain expertise - Company-specific knowledge, schemas, business logic",
-          "description": "Domain expertise - Company-specific knowledge, schemas, business logic",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "Bundled resources - Scripts, references, and assets for complex and repetitive tasks",
-          "description": "Bundled resources - Scripts, references, and assets for complex and repetitive tasks",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Metadata (name + description)** - Always in context (~100 words)",
-          "description": "**Metadata (name + description)** - Always in context (~100 words)",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**SKILL.md body** - When skill triggers (<5k words)",
-          "description": "**SKILL.md body** - When skill triggers (<5k words)",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "**Bundled resources** - As needed by Claude (Unlimited because scripts can be executed without reading into context window)",
-          "description": "**Bundled resources** - As needed by Claude (Unlimited because scripts can be executed without reading into context window)",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "Understand the skill with concrete examples",
-          "description": "Understand the skill with concrete examples",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "Plan reusable skill contents (scripts, references, assets)",
-          "description": "Plan reusable skill contents (scripts, references, assets)",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "Initialize the skill (run init_skill.py)",
-          "description": "Initialize the skill (run init_skill.py)",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "Edit the skill (implement resources and write SKILL.md)",
-          "description": "Edit the skill (implement resources and write SKILL.md)",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "Package the skill (run package_skill.py)",
-          "description": "Package the skill (run package_skill.py)",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "Iterate based on real usage",
-          "description": "Iterate based on real usage",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "Considering how to execute on the example from scratch",
-          "description": "Considering how to execute on the example from scratch",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly",
-          "description": "Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "Rotating a PDF requires re-writing the same code each time",
-          "description": "Rotating a PDF requires re-writing the same code each time",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "A `scripts/rotate_pdf.py` script would be helpful to store in the skill",
-          "description": "A `scripts/rotate_pdf.py` script would be helpful to store in the skill",
-          "type": "instruction"
-        },
-        {
-          "id": 18,
-          "name": "Writing a frontend webapp requires the same boilerplate HTML/React each time",
-          "description": "Writing a frontend webapp requires the same boilerplate HTML/React each time",
-          "type": "instruction"
-        },
-        {
-          "id": 19,
-          "name": "An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill",
-          "description": "An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill",
-          "type": "instruction"
-        },
-        {
-          "id": 20,
-          "name": "Querying BigQuery requires re-discovering the table schemas and relationships each time",
-          "description": "Querying BigQuery requires re-discovering the table schemas and relationships each time",
-          "type": "instruction"
-        },
-        {
-          "id": 21,
-          "name": "A `references/schema.md` file documenting the table schemas would be helpful to store in the skill",
-          "description": "A `references/schema.md` file documenting the table schemas would be helpful to store in the skill",
-          "type": "instruction"
-        },
-        {
-          "id": 22,
-          "name": "**Validate** the skill automatically, checking",
-          "description": "**Validate** the skill automatically, checking:",
-          "type": "instruction"
-        },
-        {
-          "id": 23,
-          "name": "**Package** the skill if validation passes, creating a .skill file named after the skill (e.g., `my-skill.skill`) that includes all files and maintains the proper directory structure for distribution. The .skill file is a zip file with a .skill extension.",
-          "description": "**Package** the skill if validation passes, creating a .skill file named after the skill (e.g., `my-skill.skill`) that includes all files and maintains the proper directory structure for distribution. The .skill file is a zip file with a .skill extension.",
-          "type": "instruction"
-        },
-        {
-          "id": 24,
-          "name": "Use the skill on real tasks",
-          "description": "Use the skill on real tasks",
-          "type": "instruction"
-        },
-        {
-          "id": 25,
-          "name": "Notice struggles or inefficiencies",
-          "description": "Notice struggles or inefficiencies",
-          "type": "instruction"
-        },
-        {
-          "id": 26,
-          "name": "Identify how SKILL.md or bundled resources should be updated",
-          "description": "Identify how SKILL.md or bundled resources should be updated",
-          "type": "instruction"
-        },
-        {
-          "id": 27,
-          "name": "Implement changes and test again",
-          "description": "Implement changes and test again",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 171
adapters-output/codebuddy/skill-creator/workflows/skill-creator.json

@@ -1,171 +0,0 @@
-{
-  "id": "skill-creator",
-  "name": "Skill Creator",
-  "description": "Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "Specialized workflows - Multi-step procedures for specific domains",
-      "description": "Specialized workflows - Multi-step procedures for specific domains",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Tool integrations - Instructions for working with specific file formats or APIs",
-      "description": "Tool integrations - Instructions for working with specific file formats or APIs",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "Domain expertise - Company-specific knowledge, schemas, business logic",
-      "description": "Domain expertise - Company-specific knowledge, schemas, business logic",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "Bundled resources - Scripts, references, and assets for complex and repetitive tasks",
-      "description": "Bundled resources - Scripts, references, and assets for complex and repetitive tasks",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Metadata (name + description)** - Always in context (~100 words)",
-      "description": "**Metadata (name + description)** - Always in context (~100 words)",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**SKILL.md body** - When skill triggers (<5k words)",
-      "description": "**SKILL.md body** - When skill triggers (<5k words)",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "**Bundled resources** - As needed by Claude (Unlimited because scripts can be executed without reading into context window)",
-      "description": "**Bundled resources** - As needed by Claude (Unlimited because scripts can be executed without reading into context window)",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "Understand the skill with concrete examples",
-      "description": "Understand the skill with concrete examples",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "Plan reusable skill contents (scripts, references, assets)",
-      "description": "Plan reusable skill contents (scripts, references, assets)",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "Initialize the skill (run init_skill.py)",
-      "description": "Initialize the skill (run init_skill.py)",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "Edit the skill (implement resources and write SKILL.md)",
-      "description": "Edit the skill (implement resources and write SKILL.md)",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "Package the skill (run package_skill.py)",
-      "description": "Package the skill (run package_skill.py)",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "Iterate based on real usage",
-      "description": "Iterate based on real usage",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "Considering how to execute on the example from scratch",
-      "description": "Considering how to execute on the example from scratch",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly",
-      "description": "Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "Rotating a PDF requires re-writing the same code each time",
-      "description": "Rotating a PDF requires re-writing the same code each time",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "A `scripts/rotate_pdf.py` script would be helpful to store in the skill",
-      "description": "A `scripts/rotate_pdf.py` script would be helpful to store in the skill",
-      "type": "instruction"
-    },
-    {
-      "id": 18,
-      "name": "Writing a frontend webapp requires the same boilerplate HTML/React each time",
-      "description": "Writing a frontend webapp requires the same boilerplate HTML/React each time",
-      "type": "instruction"
-    },
-    {
-      "id": 19,
-      "name": "An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill",
-      "description": "An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill",
-      "type": "instruction"
-    },
-    {
-      "id": 20,
-      "name": "Querying BigQuery requires re-discovering the table schemas and relationships each time",
-      "description": "Querying BigQuery requires re-discovering the table schemas and relationships each time",
-      "type": "instruction"
-    },
-    {
-      "id": 21,
-      "name": "A `references/schema.md` file documenting the table schemas would be helpful to store in the skill",
-      "description": "A `references/schema.md` file documenting the table schemas would be helpful to store in the skill",
-      "type": "instruction"
-    },
-    {
-      "id": 22,
-      "name": "**Validate** the skill automatically, checking",
-      "description": "**Validate** the skill automatically, checking:",
-      "type": "instruction"
-    },
-    {
-      "id": 23,
-      "name": "**Package** the skill if validation passes, creating a .skill file named after the skill (e.g., `my-skill.skill`) that includes all files and maintains the proper directory structure for distribution. The .skill file is a zip file with a .skill extension.",
-      "description": "**Package** the skill if validation passes, creating a .skill file named after the skill (e.g., `my-skill.skill`) that includes all files and maintains the proper directory structure for distribution. The .skill file is a zip file with a .skill extension.",
-      "type": "instruction"
-    },
-    {
-      "id": 24,
-      "name": "Use the skill on real tasks",
-      "description": "Use the skill on real tasks",
-      "type": "instruction"
-    },
-    {
-      "id": 25,
-      "name": "Notice struggles or inefficiencies",
-      "description": "Notice struggles or inefficiencies",
-      "type": "instruction"
-    },
-    {
-      "id": 26,
-      "name": "Identify how SKILL.md or bundled resources should be updated",
-      "description": "Identify how SKILL.md or bundled resources should be updated",
-      "type": "instruction"
-    },
-    {
-      "id": 27,
-      "name": "Implement changes and test again",
-      "description": "Implement changes and test again",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/slack-gif-creator/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "slack-gif-creator",
-  "version": "1.0.0",
-  "description": "Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like \"make me a GIF of X doing Y for Slack.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "slack-gif-creator",
-      "name": "Slack GIF Creator",
-      "description": "Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like \"make me a GIF of X doing Y for Slack.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Fewer frames** - Lower FPS (10 instead of 20) or shorter duration",
-          "description": "**Fewer frames** - Lower FPS (10 instead of 20) or shorter duration",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Fewer colors** - `num_colors=48` instead of 128",
-          "description": "**Fewer colors** - `num_colors=48` instead of 128",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Smaller dimensions** - 128x128 instead of 480x480",
-          "description": "**Smaller dimensions** - 128x128 instead of 480x480",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Remove duplicates** - `remove_duplicates=True` in save()",
-          "description": "**Remove duplicates** - `remove_duplicates=True` in save()",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Emoji mode** - `optimize_for_emoji=True` auto-optimizes",
-          "description": "**Emoji mode** - `optimize_for_emoji=True` auto-optimizes",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 39
adapters-output/codebuddy/slack-gif-creator/workflows/slack-gif-creator.json

@@ -1,39 +0,0 @@
-{
-  "id": "slack-gif-creator",
-  "name": "Slack GIF Creator",
-  "description": "Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like \"make me a GIF of X doing Y for Slack.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Fewer frames** - Lower FPS (10 instead of 20) or shorter duration",
-      "description": "**Fewer frames** - Lower FPS (10 instead of 20) or shorter duration",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Fewer colors** - `num_colors=48` instead of 128",
-      "description": "**Fewer colors** - `num_colors=48` instead of 128",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Smaller dimensions** - 128x128 instead of 480x480",
-      "description": "**Smaller dimensions** - 128x128 instead of 480x480",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Remove duplicates** - `remove_duplicates=True` in save()",
-      "description": "**Remove duplicates** - `remove_duplicates=True` in save()",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Emoji mode** - `optimize_for_emoji=True` auto-optimizes",
-      "description": "**Emoji mode** - `optimize_for_emoji=True` auto-optimizes",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/teaching-resource-generator/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "teaching-resource-generator",
-  "version": "1.0.0",
-  "description": "帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "teaching-resource-generator",
-      "name": "教学资源生成技能",
-      "description": "帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**内容规划**",
-          "description": "**内容规划**: 确定课件主题和结构",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**内容生成**",
-          "description": "**内容生成**: 创建每张幻灯片的内容",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**视觉设计**",
-          "description": "**视觉设计**: 添加图表、图片和视觉元素",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**互动设计**",
-          "description": "**互动设计**: 设计互动环节和讨论问题",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**优化完善**",
-          "description": "**优化完善**: 检查逻辑和视觉效果",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 85
adapters-output/codebuddy/teaching-resource-generator/skills/teaching-resource-generator/SKILL.md

@@ -1,85 +0,0 @@
----
-name: teaching-resource-generator
-description: 帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。
----
-
-# 教学资源生成技能
-
-## 概述
-
-本技能帮助您快速生成各种教学资源,包括课件、练习题、教学案例、学习指南等。
-
-**关键词**: 教学资源、课件制作、练习题、教学案例、学习指南、教学材料
-
-## 核心功能
-
-### 1. 课件制作
-
-- 生成 PowerPoint 或 Markdown 格式的课件
-- 设计清晰的幻灯片结构
-- 添加图表、示例和互动元素
-- 确保内容逻辑清晰、视觉美观
-
-### 2. 练习题生成
-
-- 生成各种类型的练习题
-- 设计不同难度级别的题目
-- 创建配套的答案和解析
-- 生成练习题集和测试卷
-
-### 3. 教学案例编写
-
-- 编写真实或模拟的教学案例
-- 设计案例讨论问题
-- 提供案例分析和解决方案
-- 创建案例库和案例集
-
-### 4. 学习指南创建
-
-- 编写学习指南和复习材料
-- 创建知识要点总结
-- 设计学习路径和计划
-- 生成学习检查清单
-
-## 使用指南
-
-### 课件制作流程
-
-1. **内容规划**: 确定课件主题和结构
-2. **内容生成**: 创建每张幻灯片的内容
-3. **视觉设计**: 添加图表、图片和视觉元素
-4. **互动设计**: 设计互动环节和讨论问题
-5. **优化完善**: 检查逻辑和视觉效果
-
-### 练习题生成原则
-
-- **多样性**: 使用多种题型
-- **层次性**: 覆盖不同难度级别
-- **针对性**: 针对具体知识点
-- **实用性**: 贴近实际应用场景
-
-### 教学案例要求
-
-- **真实性**: 基于真实或合理的场景
-- **典型性**: 具有代表性
-- **启发性**: 能引发思考和讨论
-- **完整性**: 包含背景、问题、分析、解决方案
-
-## 输出格式
-
-教学资源应包含:
-
-- **资源类型**: 明确资源类型(课件、练习题等)
-- **目标受众**: 适用对象和水平
-- **内容结构**: 清晰的目录和结构
-- **使用说明**: 如何使用该资源
-- **配套材料**: 相关的补充材料
-
-## 最佳实践
-
-- 确保内容准确、专业
-- 保持格式统一、美观
-- 注重实用性和可操作性
-- 考虑不同学习者的需求
-- 提供清晰的使用指导
-- 定期更新和完善资源

+ 0 - 39
adapters-output/codebuddy/teaching-resource-generator/workflows/teaching-resource-generator.json

@@ -1,39 +0,0 @@
-{
-  "id": "teaching-resource-generator",
-  "name": "教学资源生成技能",
-  "description": "帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**内容规划**",
-      "description": "**内容规划**: 确定课件主题和结构",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**内容生成**",
-      "description": "**内容生成**: 创建每张幻灯片的内容",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**视觉设计**",
-      "description": "**视觉设计**: 添加图表、图片和视觉元素",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**互动设计**",
-      "description": "**互动设计**: 设计互动环节和讨论问题",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**优化完善**",
-      "description": "**优化完善**: 检查逻辑和视觉效果",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/test-writer/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "test-writer",
-  "version": "1.0.0",
-  "description": "帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "test-writer",
-      "name": "测试编写技能",
-      "description": "帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**全面性**",
-          "description": "**全面性**: 覆盖正常流程、边界情况和异常情况",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**独立性**",
-          "description": "**独立性**: 每个测试应独立运行,不依赖其他测试",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**可重复性**",
-          "description": "**可重复性**: 测试结果应一致,不受环境影响",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**清晰性**",
-          "description": "**清晰性**: 测试代码应清晰易懂",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**快速性**",
-          "description": "**快速性**: 测试应快速执行",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 86
adapters-output/codebuddy/test-writer/skills/test-writer/SKILL.md

@@ -1,86 +0,0 @@
----
-name: test-writer
-description: 帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。
----
-
-# 测试编写技能
-
-## 概述
-
-本技能帮助您编写各种类型的测试,包括单元测试、集成测试和端到端测试。
-
-**关键词**: 测试编写、单元测试、集成测试、端到端测试、测试用例、测试框架
-
-## 核心功能
-
-### 1. 单元测试编写
-
-- 为函数和类编写单元测试
-- 设计测试用例覆盖各种场景
-- 使用 Mock 和 Stub 隔离依赖
-- 确保测试的独立性和可重复性
-
-### 2. 集成测试设计
-
-- 编写模块间的集成测试
-- 测试 API 接口和数据库交互
-- 验证系统组件的协作
-- 设计测试数据和测试环境
-
-### 3. 端到端测试
-
-- 编写完整的用户流程测试
-- 测试关键业务场景
-- 验证系统端到端的功能
-- 使用自动化测试工具
-
-### 4. 测试工具和框架
-
-- 支持主流测试框架(JUnit, pytest, Jest 等)
-- 生成测试报告和覆盖率报告
-- 创建测试配置和测试环境
-- 设计测试数据和 Fixture
-
-## 使用指南
-
-### 测试编写原则
-
-1. **全面性**: 覆盖正常流程、边界情况和异常情况
-2. **独立性**: 每个测试应独立运行,不依赖其他测试
-3. **可重复性**: 测试结果应一致,不受环境影响
-4. **清晰性**: 测试代码应清晰易懂
-5. **快速性**: 测试应快速执行
-
-### 测试用例设计
-
-- **正常场景**: 测试正常的功能流程
-- **边界情况**: 测试边界值和极限情况
-- **异常情况**: 测试错误处理和异常情况
-- **性能测试**: 测试性能和负载(如需要)
-
-### 测试覆盖率
-
-- 目标覆盖率: 80% 以上(根据项目需求)
-- 关键路径: 100% 覆盖
-- 边界情况: 重点覆盖
-- 异常处理: 确保覆盖
-
-## 输出格式
-
-测试代码应包含:
-
-- **测试文件**: 完整的测试代码文件
-- **测试用例**: 清晰的测试用例和描述
-- **测试数据**: 测试数据和 Fixture
-- **测试配置**: 测试配置文件
-- **测试报告**: 测试执行结果和覆盖率
-
-## 最佳实践
-
-- 使用 AAA 模式(Arrange-Act-Assert)
-- 测试名称应描述测试内容
-- 一个测试只测试一个功能点
-- 使用 Mock 隔离外部依赖
-- 保持测试代码简洁
-- 定期运行测试,确保通过
-- 关注测试覆盖率,但不盲目追求 100%

+ 0 - 39
adapters-output/codebuddy/test-writer/workflows/test-writer.json

@@ -1,39 +0,0 @@
-{
-  "id": "test-writer",
-  "name": "测试编写技能",
-  "description": "帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**全面性**",
-      "description": "**全面性**: 覆盖正常流程、边界情况和异常情况",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**独立性**",
-      "description": "**独立性**: 每个测试应独立运行,不依赖其他测试",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**可重复性**",
-      "description": "**可重复性**: 测试结果应一致,不受环境影响",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**清晰性**",
-      "description": "**清晰性**: 测试代码应清晰易懂",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**快速性**",
-      "description": "**快速性**: 测试应快速执行",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 126
adapters-output/codebuddy/theme-factory/manifest.json

@@ -1,126 +0,0 @@
-{
-  "name": "theme-factory",
-  "version": "1.0.0",
-  "description": "Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "theme-factory",
-      "name": "Theme Factory Skill",
-      "description": "Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Show the theme showcase**",
-          "description": "**Show the theme showcase**: Display the `theme-showcase.pdf` file to allow users to see all available themes visually. Do not make any modifications to it; simply show the file for viewing.",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Ask for their choice**",
-          "description": "**Ask for their choice**: Ask which theme to apply to the deck",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Wait for selection**",
-          "description": "**Wait for selection**: Get explicit confirmation about the chosen theme",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Apply the theme**",
-          "description": "**Apply the theme**: Once a theme has been chosen, apply the selected theme's colors and fonts to the deck/artifact",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Ocean Depths** - Professional and calming maritime theme",
-          "description": "**Ocean Depths** - Professional and calming maritime theme",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Sunset Boulevard** - Warm and vibrant sunset colors",
-          "description": "**Sunset Boulevard** - Warm and vibrant sunset colors",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "**Forest Canopy** - Natural and grounded earth tones",
-          "description": "**Forest Canopy** - Natural and grounded earth tones",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "**Modern Minimalist** - Clean and contemporary grayscale",
-          "description": "**Modern Minimalist** - Clean and contemporary grayscale",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "**Golden Hour** - Rich and warm autumnal palette",
-          "description": "**Golden Hour** - Rich and warm autumnal palette",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "**Arctic Frost** - Cool and crisp winter-inspired theme",
-          "description": "**Arctic Frost** - Cool and crisp winter-inspired theme",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "**Desert Rose** - Soft and sophisticated dusty tones",
-          "description": "**Desert Rose** - Soft and sophisticated dusty tones",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "**Tech Innovation** - Bold and modern tech aesthetic",
-          "description": "**Tech Innovation** - Bold and modern tech aesthetic",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "**Botanical Garden** - Fresh and organic garden colors",
-          "description": "**Botanical Garden** - Fresh and organic garden colors",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "**Midnight Galaxy** - Dramatic and cosmic deep tones",
-          "description": "**Midnight Galaxy** - Dramatic and cosmic deep tones",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "Read the corresponding theme file from the `themes/` directory",
-          "description": "Read the corresponding theme file from the `themes/` directory",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "Apply the specified colors and fonts consistently throughout the deck",
-          "description": "Apply the specified colors and fonts consistently throughout the deck",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "Ensure proper contrast and readability",
-          "description": "Ensure proper contrast and readability",
-          "type": "instruction"
-        },
-        {
-          "id": 18,
-          "name": "Maintain the theme's visual identity across all slides",
-          "description": "Maintain the theme's visual identity across all slides",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 117
adapters-output/codebuddy/theme-factory/workflows/theme-factory.json

@@ -1,117 +0,0 @@
-{
-  "id": "theme-factory",
-  "name": "Theme Factory Skill",
-  "description": "Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Show the theme showcase**",
-      "description": "**Show the theme showcase**: Display the `theme-showcase.pdf` file to allow users to see all available themes visually. Do not make any modifications to it; simply show the file for viewing.",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Ask for their choice**",
-      "description": "**Ask for their choice**: Ask which theme to apply to the deck",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Wait for selection**",
-      "description": "**Wait for selection**: Get explicit confirmation about the chosen theme",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Apply the theme**",
-      "description": "**Apply the theme**: Once a theme has been chosen, apply the selected theme's colors and fonts to the deck/artifact",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Ocean Depths** - Professional and calming maritime theme",
-      "description": "**Ocean Depths** - Professional and calming maritime theme",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Sunset Boulevard** - Warm and vibrant sunset colors",
-      "description": "**Sunset Boulevard** - Warm and vibrant sunset colors",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "**Forest Canopy** - Natural and grounded earth tones",
-      "description": "**Forest Canopy** - Natural and grounded earth tones",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "**Modern Minimalist** - Clean and contemporary grayscale",
-      "description": "**Modern Minimalist** - Clean and contemporary grayscale",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "**Golden Hour** - Rich and warm autumnal palette",
-      "description": "**Golden Hour** - Rich and warm autumnal palette",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "**Arctic Frost** - Cool and crisp winter-inspired theme",
-      "description": "**Arctic Frost** - Cool and crisp winter-inspired theme",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "**Desert Rose** - Soft and sophisticated dusty tones",
-      "description": "**Desert Rose** - Soft and sophisticated dusty tones",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "**Tech Innovation** - Bold and modern tech aesthetic",
-      "description": "**Tech Innovation** - Bold and modern tech aesthetic",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "**Botanical Garden** - Fresh and organic garden colors",
-      "description": "**Botanical Garden** - Fresh and organic garden colors",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "**Midnight Galaxy** - Dramatic and cosmic deep tones",
-      "description": "**Midnight Galaxy** - Dramatic and cosmic deep tones",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "Read the corresponding theme file from the `themes/` directory",
-      "description": "Read the corresponding theme file from the `themes/` directory",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "Apply the specified colors and fonts consistently throughout the deck",
-      "description": "Apply the specified colors and fonts consistently throughout the deck",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "Ensure proper contrast and readability",
-      "description": "Ensure proper contrast and readability",
-      "type": "instruction"
-    },
-    {
-      "id": 18,
-      "name": "Maintain the theme's visual identity across all slides",
-      "description": "Maintain the theme's visual identity across all slides",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 48
adapters-output/codebuddy/web-artifacts-builder/manifest.json

@@ -1,48 +0,0 @@
-{
-  "name": "web-artifacts-builder",
-  "version": "1.0.0",
-  "description": "Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "web-artifacts-builder",
-      "name": "Web Artifacts Builder",
-      "description": "Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "Initialize the frontend repo using `scripts/init-artifact.sh`",
-          "description": "Initialize the frontend repo using `scripts/init-artifact.sh`",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Develop your artifact by editing the generated code",
-          "description": "Develop your artifact by editing the generated code",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "Bundle all code into a single HTML file using `scripts/bundle-artifact.sh`",
-          "description": "Bundle all code into a single HTML file using `scripts/bundle-artifact.sh`",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "Display artifact to user",
-          "description": "Display artifact to user",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "(Optional) Test the artifact",
-          "description": "(Optional) Test the artifact",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 39
adapters-output/codebuddy/web-artifacts-builder/workflows/web-artifacts-builder.json

@@ -1,39 +0,0 @@
-{
-  "id": "web-artifacts-builder",
-  "name": "Web Artifacts Builder",
-  "description": "Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "Initialize the frontend repo using `scripts/init-artifact.sh`",
-      "description": "Initialize the frontend repo using `scripts/init-artifact.sh`",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Develop your artifact by editing the generated code",
-      "description": "Develop your artifact by editing the generated code",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "Bundle all code into a single HTML file using `scripts/bundle-artifact.sh`",
-      "description": "Bundle all code into a single HTML file using `scripts/bundle-artifact.sh`",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "Display artifact to user",
-      "description": "Display artifact to user",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "(Optional) Test the artifact",
-      "description": "(Optional) Test the artifact",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 60
adapters-output/codebuddy/webapp-testing/manifest.json

@@ -1,60 +0,0 @@
-{
-  "name": "webapp-testing",
-  "version": "1.0.0",
-  "description": "Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "webapp-testing",
-      "name": "Web Application Testing",
-      "description": "Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.",
-      "steps": [
-        {
-          "id": 1,
-          "name": "Navigate and wait for networkidle",
-          "description": "Navigate and wait for networkidle",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "Take screenshot or inspect DOM",
-          "description": "Take screenshot or inspect DOM",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "Identify selectors from rendered state",
-          "description": "Identify selectors from rendered state",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "Execute actions with discovered selectors",
-          "description": "Execute actions with discovered selectors",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Inspect rendered DOM**",
-          "description": "**Inspect rendered DOM**:",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Identify selectors** from inspection results",
-          "description": "**Identify selectors** from inspection results",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "**Execute actions** using discovered selectors",
-          "description": "**Execute actions** using discovered selectors",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 51
adapters-output/codebuddy/webapp-testing/workflows/webapp-testing.json

@@ -1,51 +0,0 @@
-{
-  "id": "webapp-testing",
-  "name": "Web Application Testing",
-  "description": "Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.",
-  "steps": [
-    {
-      "id": 1,
-      "name": "Navigate and wait for networkidle",
-      "description": "Navigate and wait for networkidle",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "Take screenshot or inspect DOM",
-      "description": "Take screenshot or inspect DOM",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "Identify selectors from rendered state",
-      "description": "Identify selectors from rendered state",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "Execute actions with discovered selectors",
-      "description": "Execute actions with discovered selectors",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Inspect rendered DOM**",
-      "description": "**Inspect rendered DOM**:",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Identify selectors** from inspection results",
-      "description": "**Identify selectors** from inspection results",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "**Execute actions** using discovered selectors",
-      "description": "**Execute actions** using discovered selectors",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 54
adapters-output/codebuddy/xlsx/manifest.json

@@ -1,54 +0,0 @@
-{
-  "name": "xlsx",
-  "version": "1.0.0",
-  "description": "Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "xlsx",
-      "name": "Requirements for Outputs",
-      "description": "Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**Choose tool**",
-          "description": "**Choose tool**: pandas for data, openpyxl for formulas/formatting",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**Create/Load**",
-          "description": "**Create/Load**: Create new workbook or load existing file",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**Modify**",
-          "description": "**Modify**: Add/edit data, formulas, and formatting",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "**Save**",
-          "description": "**Save**: Write to file",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "**Recalculate formulas (MANDATORY IF USING FORMULAS)**",
-          "description": "**Recalculate formulas (MANDATORY IF USING FORMULAS)**: Use the recalc.py script",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "**Verify and fix any errors**",
-          "description": "**Verify and fix any errors**:",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 289
adapters-output/codebuddy/xlsx/skills/xlsx/SKILL.md

@@ -1,289 +0,0 @@
----
-name: xlsx
-description: "Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas"
-license: Proprietary. LICENSE.txt has complete terms
----
-
-# Requirements for Outputs
-
-## All Excel files
-
-### Zero Formula Errors
-- Every Excel model MUST be delivered with ZERO formula errors (#REF!, #DIV/0!, #VALUE!, #N/A, #NAME?)
-
-### Preserve Existing Templates (when updating templates)
-- Study and EXACTLY match existing format, style, and conventions when modifying files
-- Never impose standardized formatting on files with established patterns
-- Existing template conventions ALWAYS override these guidelines
-
-## Financial models
-
-### Color Coding Standards
-Unless otherwise stated by the user or existing template
-
-#### Industry-Standard Color Conventions
-- **Blue text (RGB: 0,0,255)**: Hardcoded inputs, and numbers users will change for scenarios
-- **Black text (RGB: 0,0,0)**: ALL formulas and calculations
-- **Green text (RGB: 0,128,0)**: Links pulling from other worksheets within same workbook
-- **Red text (RGB: 255,0,0)**: External links to other files
-- **Yellow background (RGB: 255,255,0)**: Key assumptions needing attention or cells that need to be updated
-
-### Number Formatting Standards
-
-#### Required Format Rules
-- **Years**: Format as text strings (e.g., "2024" not "2,024")
-- **Currency**: Use $#,##0 format; ALWAYS specify units in headers ("Revenue ($mm)")
-- **Zeros**: Use number formatting to make all zeros "-", including percentages (e.g., "$#,##0;($#,##0);-")
-- **Percentages**: Default to 0.0% format (one decimal)
-- **Multiples**: Format as 0.0x for valuation multiples (EV/EBITDA, P/E)
-- **Negative numbers**: Use parentheses (123) not minus -123
-
-### Formula Construction Rules
-
-#### Assumptions Placement
-- Place ALL assumptions (growth rates, margins, multiples, etc.) in separate assumption cells
-- Use cell references instead of hardcoded values in formulas
-- Example: Use =B5*(1+$B$6) instead of =B5*1.05
-
-#### Formula Error Prevention
-- Verify all cell references are correct
-- Check for off-by-one errors in ranges
-- Ensure consistent formulas across all projection periods
-- Test with edge cases (zero values, negative numbers)
-- Verify no unintended circular references
-
-#### Documentation Requirements for Hardcodes
-- Comment or in cells beside (if end of table). Format: "Source: [System/Document], [Date], [Specific Reference], [URL if applicable]"
-- Examples:
-  - "Source: Company 10-K, FY2024, Page 45, Revenue Note, [SEC EDGAR URL]"
-  - "Source: Company 10-Q, Q2 2025, Exhibit 99.1, [SEC EDGAR URL]"
-  - "Source: Bloomberg Terminal, 8/15/2025, AAPL US Equity"
-  - "Source: FactSet, 8/20/2025, Consensus Estimates Screen"
-
-# XLSX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of an .xlsx file. You have different tools and workflows available for different tasks.
-
-## Important Requirements
-
-**LibreOffice Required for Formula Recalculation**: You can assume LibreOffice is installed for recalculating formula values using the `recalc.py` script. The script automatically configures LibreOffice on first run
-
-## Reading and analyzing data
-
-### Data analysis with pandas
-For data analysis, visualization, and basic operations, use **pandas** which provides powerful data manipulation capabilities:
-
-```python
-import pandas as pd
-
-# Read Excel
-df = pd.read_excel('file.xlsx')  # Default: first sheet
-all_sheets = pd.read_excel('file.xlsx', sheet_name=None)  # All sheets as dict
-
-# Analyze
-df.head()      # Preview data
-df.info()      # Column info
-df.describe()  # Statistics
-
-# Write Excel
-df.to_excel('output.xlsx', index=False)
-```
-
-## Excel File Workflows
-
-## CRITICAL: Use Formulas, Not Hardcoded Values
-
-**Always use Excel formulas instead of calculating values in Python and hardcoding them.** This ensures the spreadsheet remains dynamic and updateable.
-
-### ❌ WRONG - Hardcoding Calculated Values
-```python
-# Bad: Calculating in Python and hardcoding result
-total = df['Sales'].sum()
-sheet['B10'] = total  # Hardcodes 5000
-
-# Bad: Computing growth rate in Python
-growth = (df.iloc[-1]['Revenue'] - df.iloc[0]['Revenue']) / df.iloc[0]['Revenue']
-sheet['C5'] = growth  # Hardcodes 0.15
-
-# Bad: Python calculation for average
-avg = sum(values) / len(values)
-sheet['D20'] = avg  # Hardcodes 42.5
-```
-
-### ✅ CORRECT - Using Excel Formulas
-```python
-# Good: Let Excel calculate the sum
-sheet['B10'] = '=SUM(B2:B9)'
-
-# Good: Growth rate as Excel formula
-sheet['C5'] = '=(C4-C2)/C2'
-
-# Good: Average using Excel function
-sheet['D20'] = '=AVERAGE(D2:D19)'
-```
-
-This applies to ALL calculations - totals, percentages, ratios, differences, etc. The spreadsheet should be able to recalculate when source data changes.
-
-## Common Workflow
-1. **Choose tool**: pandas for data, openpyxl for formulas/formatting
-2. **Create/Load**: Create new workbook or load existing file
-3. **Modify**: Add/edit data, formulas, and formatting
-4. **Save**: Write to file
-5. **Recalculate formulas (MANDATORY IF USING FORMULAS)**: Use the recalc.py script
-   ```bash
-   python recalc.py output.xlsx
-   ```
-6. **Verify and fix any errors**: 
-   - The script returns JSON with error details
-   - If `status` is `errors_found`, check `error_summary` for specific error types and locations
-   - Fix the identified errors and recalculate again
-   - Common errors to fix:
-     - `#REF!`: Invalid cell references
-     - `#DIV/0!`: Division by zero
-     - `#VALUE!`: Wrong data type in formula
-     - `#NAME?`: Unrecognized formula name
-
-### Creating new Excel files
-
-```python
-# Using openpyxl for formulas and formatting
-from openpyxl import Workbook
-from openpyxl.styles import Font, PatternFill, Alignment
-
-wb = Workbook()
-sheet = wb.active
-
-# Add data
-sheet['A1'] = 'Hello'
-sheet['B1'] = 'World'
-sheet.append(['Row', 'of', 'data'])
-
-# Add formula
-sheet['B2'] = '=SUM(A1:A10)'
-
-# Formatting
-sheet['A1'].font = Font(bold=True, color='FF0000')
-sheet['A1'].fill = PatternFill('solid', start_color='FFFF00')
-sheet['A1'].alignment = Alignment(horizontal='center')
-
-# Column width
-sheet.column_dimensions['A'].width = 20
-
-wb.save('output.xlsx')
-```
-
-### Editing existing Excel files
-
-```python
-# Using openpyxl to preserve formulas and formatting
-from openpyxl import load_workbook
-
-# Load existing file
-wb = load_workbook('existing.xlsx')
-sheet = wb.active  # or wb['SheetName'] for specific sheet
-
-# Working with multiple sheets
-for sheet_name in wb.sheetnames:
-    sheet = wb[sheet_name]
-    print(f"Sheet: {sheet_name}")
-
-# Modify cells
-sheet['A1'] = 'New Value'
-sheet.insert_rows(2)  # Insert row at position 2
-sheet.delete_cols(3)  # Delete column 3
-
-# Add new sheet
-new_sheet = wb.create_sheet('NewSheet')
-new_sheet['A1'] = 'Data'
-
-wb.save('modified.xlsx')
-```
-
-## Recalculating formulas
-
-Excel files created or modified by openpyxl contain formulas as strings but not calculated values. Use the provided `recalc.py` script to recalculate formulas:
-
-```bash
-python recalc.py <excel_file> [timeout_seconds]
-```
-
-Example:
-```bash
-python recalc.py output.xlsx 30
-```
-
-The script:
-- Automatically sets up LibreOffice macro on first run
-- Recalculates all formulas in all sheets
-- Scans ALL cells for Excel errors (#REF!, #DIV/0!, etc.)
-- Returns JSON with detailed error locations and counts
-- Works on both Linux and macOS
-
-## Formula Verification Checklist
-
-Quick checks to ensure formulas work correctly:
-
-### Essential Verification
-- [ ] **Test 2-3 sample references**: Verify they pull correct values before building full model
-- [ ] **Column mapping**: Confirm Excel columns match (e.g., column 64 = BL, not BK)
-- [ ] **Row offset**: Remember Excel rows are 1-indexed (DataFrame row 5 = Excel row 6)
-
-### Common Pitfalls
-- [ ] **NaN handling**: Check for null values with `pd.notna()`
-- [ ] **Far-right columns**: FY data often in columns 50+ 
-- [ ] **Multiple matches**: Search all occurrences, not just first
-- [ ] **Division by zero**: Check denominators before using `/` in formulas (#DIV/0!)
-- [ ] **Wrong references**: Verify all cell references point to intended cells (#REF!)
-- [ ] **Cross-sheet references**: Use correct format (Sheet1!A1) for linking sheets
-
-### Formula Testing Strategy
-- [ ] **Start small**: Test formulas on 2-3 cells before applying broadly
-- [ ] **Verify dependencies**: Check all cells referenced in formulas exist
-- [ ] **Test edge cases**: Include zero, negative, and very large values
-
-### Interpreting recalc.py Output
-The script returns JSON with error details:
-```json
-{
-  "status": "success",           // or "errors_found"
-  "total_errors": 0,              // Total error count
-  "total_formulas": 42,           // Number of formulas in file
-  "error_summary": {              // Only present if errors found
-    "#REF!": {
-      "count": 2,
-      "locations": ["Sheet1!B5", "Sheet1!C10"]
-    }
-  }
-}
-```
-
-## Best Practices
-
-### Library Selection
-- **pandas**: Best for data analysis, bulk operations, and simple data export
-- **openpyxl**: Best for complex formatting, formulas, and Excel-specific features
-
-### Working with openpyxl
-- Cell indices are 1-based (row=1, column=1 refers to cell A1)
-- Use `data_only=True` to read calculated values: `load_workbook('file.xlsx', data_only=True)`
-- **Warning**: If opened with `data_only=True` and saved, formulas are replaced with values and permanently lost
-- For large files: Use `read_only=True` for reading or `write_only=True` for writing
-- Formulas are preserved but not evaluated - use recalc.py to update values
-
-### Working with pandas
-- Specify data types to avoid inference issues: `pd.read_excel('file.xlsx', dtype={'id': str})`
-- For large files, read specific columns: `pd.read_excel('file.xlsx', usecols=['A', 'C', 'E'])`
-- Handle dates properly: `pd.read_excel('file.xlsx', parse_dates=['date_column'])`
-
-## Code Style Guidelines
-**IMPORTANT**: When generating Python code for Excel operations:
-- Write minimal, concise Python code without unnecessary comments
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-**For Excel files themselves**:
-- Add comments to cells with complex formulas or important assumptions
-- Document data sources for hardcoded values
-- Include notes for key calculations and model sections

+ 0 - 45
adapters-output/codebuddy/xlsx/workflows/xlsx.json

@@ -1,45 +0,0 @@
-{
-  "id": "xlsx",
-  "name": "Requirements for Outputs",
-  "description": "Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**Choose tool**",
-      "description": "**Choose tool**: pandas for data, openpyxl for formulas/formatting",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**Create/Load**",
-      "description": "**Create/Load**: Create new workbook or load existing file",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**Modify**",
-      "description": "**Modify**: Add/edit data, formulas, and formatting",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "**Save**",
-      "description": "**Save**: Write to file",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "**Recalculate formulas (MANDATORY IF USING FORMULAS)**",
-      "description": "**Recalculate formulas (MANDATORY IF USING FORMULAS)**: Use the recalc.py script",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "**Verify and fix any errors**",
-      "description": "**Verify and fix any errors**:",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 198
adapters-output/codebuddy/zh-product-doc-generator/manifest.json

@@ -1,198 +0,0 @@
-{
-  "name": "full-stack-doc",
-  "version": "1.0.0",
-  "description": "基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。",
-  "author": "Teaching AI",
-  "type": "workflow-plugin",
-  "workflows": [
-    {
-      "id": "full-stack-doc",
-      "name": "项目文档生成技能",
-      "description": "基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。",
-      "steps": [
-        {
-          "id": 1,
-          "name": "**指定文档类型**",
-          "description": "**指定文档类型**",
-          "type": "instruction"
-        },
-        {
-          "id": 2,
-          "name": "**指定项目信息**",
-          "description": "**指定项目信息**",
-          "type": "instruction"
-        },
-        {
-          "id": 3,
-          "name": "**批量生成文档**",
-          "description": "**批量生成文档**",
-          "type": "instruction"
-        },
-        {
-          "id": 4,
-          "name": "`1、产品调研模板.md` - 产品调研阶段文档",
-          "description": "`1、产品调研模板.md` - 产品调研阶段文档",
-          "type": "instruction"
-        },
-        {
-          "id": 5,
-          "name": "`2、需求调研模板.md` - 需求调研阶段文档",
-          "description": "`2、需求调研模板.md` - 需求调研阶段文档",
-          "type": "instruction"
-        },
-        {
-          "id": 6,
-          "name": "`3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)",
-          "description": "`3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)",
-          "type": "instruction"
-        },
-        {
-          "id": 7,
-          "name": "`4、需求分析模板.md` - 需求分析阶段文档",
-          "description": "`4、需求分析模板.md` - 需求分析阶段文档",
-          "type": "instruction"
-        },
-        {
-          "id": 8,
-          "name": "`5、PRD文档模板.md` - 产品需求文档",
-          "description": "`5、PRD文档模板.md` - 产品需求文档",
-          "type": "instruction"
-        },
-        {
-          "id": 9,
-          "name": "`6、视觉与交互 DNA 规范模板.md` - 设计规范文档",
-          "description": "`6、视觉与交互 DNA 规范模板.md` - 设计规范文档",
-          "type": "instruction"
-        },
-        {
-          "id": 10,
-          "name": "`7、UI 设计说明模板.md` - UI设计文档",
-          "description": "`7、UI 设计说明模板.md` - UI设计文档",
-          "type": "instruction"
-        },
-        {
-          "id": 11,
-          "name": "`8、领域模型说明模板.md` - 领域模型文档",
-          "description": "`8、领域模型说明模板.md` - 领域模型文档",
-          "type": "instruction"
-        },
-        {
-          "id": 12,
-          "name": "`9、系统架构设计模板.md` - 系统架构文档",
-          "description": "`9、系统架构设计模板.md` - 系统架构文档",
-          "type": "instruction"
-        },
-        {
-          "id": 13,
-          "name": "`10、技术细分模板.md` - 技术实现文档",
-          "description": "`10、技术细分模板.md` - 技术实现文档",
-          "type": "instruction"
-        },
-        {
-          "id": 14,
-          "name": "`11、功能提测模板.md` - 提测文档",
-          "description": "`11、功能提测模板.md` - 提测文档",
-          "type": "instruction"
-        },
-        {
-          "id": 15,
-          "name": "`12、测试结果模板.md` - 测试报告",
-          "description": "`12、测试结果模板.md` - 测试报告",
-          "type": "instruction"
-        },
-        {
-          "id": 16,
-          "name": "`13、上线通知模板.md` - 上线文档",
-          "description": "`13、上线通知模板.md` - 上线文档",
-          "type": "instruction"
-        },
-        {
-          "id": 17,
-          "name": "`14、项目运维模板.md` - 运维文档",
-          "description": "`14、项目运维模板.md` - 运维文档",
-          "type": "instruction"
-        },
-        {
-          "id": 18,
-          "name": "**选择模板**",
-          "description": "**选择模板**",
-          "type": "instruction"
-        },
-        {
-          "id": 19,
-          "name": "**填写占位符**",
-          "description": "**填写占位符**",
-          "type": "instruction"
-        },
-        {
-          "id": 20,
-          "name": "**定制化调整**",
-          "description": "**定制化调整**",
-          "type": "instruction"
-        },
-        {
-          "id": 21,
-          "name": "**文档评审**",
-          "description": "**文档评审**",
-          "type": "instruction"
-        },
-        {
-          "id": 22,
-          "name": "产品调研文档",
-          "description": "产品调研文档",
-          "type": "instruction"
-        },
-        {
-          "id": 23,
-          "name": "PRD 文档",
-          "description": "PRD 文档",
-          "type": "instruction"
-        },
-        {
-          "id": 24,
-          "name": "系统架构设计文档",
-          "description": "系统架构设计文档",
-          "type": "instruction"
-        },
-        {
-          "id": 25,
-          "name": "技术细分文档",
-          "description": "技术细分文档",
-          "type": "instruction"
-        },
-        {
-          "id": 26,
-          "name": "**占位符替换**",
-          "description": "**占位符替换**: 确保所有 `{}` 占位符都被正确替换",
-          "type": "instruction"
-        },
-        {
-          "id": 27,
-          "name": "**文档关联**",
-          "description": "**文档关联**: 注意文档之间的关联关系,保持一致性",
-          "type": "instruction"
-        },
-        {
-          "id": 28,
-          "name": "**版本管理**",
-          "description": "**版本管理**: 使用版本记录表跟踪文档变更",
-          "type": "instruction"
-        },
-        {
-          "id": 29,
-          "name": "**团队协作**",
-          "description": "**团队协作**: 明确文档责任人,确保文档质量",
-          "type": "instruction"
-        },
-        {
-          "id": 30,
-          "name": "**持续更新**",
-          "description": "**持续更新**: 根据项目进展及时更新文档内容",
-          "type": "instruction"
-        }
-      ],
-      "inputs": [],
-      "outputs": []
-    }
-  ]
-}

+ 0 - 183
adapters-output/codebuddy/zh-product-doc-generator/skills/zh-product-doc-generator/SKILL.md

@@ -1,183 +0,0 @@
----
-name: full-stack-doc
-description: 基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。
----
-
-# 项目文档生成技能
-
-## 概述
-
-本技能提供了一套完整的项目文档模板集合,帮助快速生成软件开发项目所需的各种文档。模板基于 DDD(领域驱动设计)和 COLA 架构思想,适用于从产品调研到项目运维的全生命周期。
-
-**关键词**: 项目文档、PRD、需求文档、架构设计、技术文档、项目模板、文档生成、产品文档
-
-## 核心功能
-
-### 1. 产品阶段文档
-
-- **产品调研模板** - 市场调研、用户调研、竞品分析
-- **需求调研模板** - 需求收集、用户访谈、需求整理
-- **技术调研模板** - 技术选型、技术可行性分析、技术对比
-- **需求分析模板** - 需求拆解、优先级排序、需求评审
-
-### 2. 设计阶段文档
-
-- **PRD文档模板** - 产品需求文档,包含功能需求、用户故事、验收标准
-- **视觉与交互 DNA 规范模板** - 设计语言、交互规范、视觉规范
-- **UI 设计说明模板** - UI设计规范、组件库、设计系统
-
-### 3. 技术设计文档
-
-- **领域模型说明模板** - DDD领域模型、实体、值对象、聚合
-- **系统架构设计模板** - 技术架构、系统架构、部署架构
-- **技术细分模板** - 接口设计、数据库设计、技术实现细节
-
-### 4. 测试与交付文档
-
-- **功能提测模板** - 提测清单、测试环境、测试范围
-- **测试结果模板** - 测试报告、缺陷统计、测试结论
-- **上线通知模板** - 上线计划、上线检查清单、回滚方案
-- **项目运维模板** - 运维手册、监控告警、故障处理
-
-## 使用指南
-
-### 快速生成文档
-
-1. **指定文档类型**
-   ```
-   使用项目文档生成技能,帮我生成一个 PRD 文档
-   ```
-
-2. **指定项目信息**
-   ```
-   基于模板生成系统架构设计文档,项目名称是 TeachingAI 教学平台
-   ```
-
-3. **批量生成文档**
-   ```
-   为我的项目生成全套文档,包括 PRD、架构设计、技术文档
-   ```
-
-### 模板使用说明
-
-所有模板文件位于 `templates/` 目录下,包含以下14个模板:
-
-1. `1、产品调研模板.md` - 产品调研阶段文档
-2. `2、需求调研模板.md` - 需求调研阶段文档
-3. `3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)
-4. `4、需求分析模板.md` - 需求分析阶段文档
-5. `5、PRD文档模板.md` - 产品需求文档
-6. `6、视觉与交互 DNA 规范模板.md` - 设计规范文档
-7. `7、UI 设计说明模板.md` - UI设计文档
-8. `8、领域模型说明模板.md` - 领域模型文档
-9. `9、系统架构设计模板.md` - 系统架构文档
-10. `10、技术细分模板.md` - 技术实现文档
-11. `11、功能提测模板.md` - 提测文档
-12. `12、测试结果模板.md` - 测试报告
-13. `13、上线通知模板.md` - 上线文档
-14. `14、项目运维模板.md` - 运维文档
-
-### 模板占位符说明
-
-模板中使用 `{}` 包裹的内容为占位符,需要替换为实际内容:
-
-- `{产品名称}` - 产品名称
-- `{项目名称}` - 项目名称
-- `{YYYY-MM-DD}` - 日期格式
-- `{姓名}` - 人员姓名
-- 其他 `{}` 包裹的内容 - 根据上下文替换
-
-### 文档生成流程
-
-1. **选择模板**
-   - 根据项目阶段选择合适的模板
-   - 可以同时使用多个模板生成完整文档集
-
-2. **填写占位符**
-   - 替换模板中的 `{}` 占位符
-   - 根据项目实际情况填写内容
-
-3. **定制化调整**
-   - 根据项目特点调整模板结构
-   - 添加或删除不需要的章节
-
-4. **文档评审**
-   - 与团队评审文档内容
-   - 根据反馈调整和完善
-
-## 使用示例
-
-### 示例 1: 生成 PRD 文档
-
-```
-用户: 使用项目文档生成技能,帮我生成一个 PRD 文档,产品名称是"智能教学助手"
-
-AI: 我将基于 PRD 文档模板为您生成产品需求文档...
-```
-
-### 示例 2: 生成架构设计文档
-
-```
-用户: 基于模板生成系统架构设计文档,项目名称是 TeachingAI 教学平台,使用 Spring Boot 和 Vue 3
-
-AI: 我将基于系统架构设计模板为您生成架构文档...
-```
-
-### 示例 3: 生成完整文档集
-
-```
-用户: 为我的新项目生成全套文档,包括产品调研、PRD、架构设计和技术文档
-
-AI: 我将为您生成以下文档:
-1. 产品调研文档
-2. PRD 文档
-3. 系统架构设计文档
-4. 技术细分文档
-...
-```
-
-## 模板特点
-
-### 1. 标准化结构
-
-- 统一的文档格式和结构
-- 清晰的章节划分
-- 完整的版本记录
-
-### 2. DDD 和 COLA 架构
-
-- 基于领域驱动设计思想
-- 遵循 COLA 架构原则
-- 支持微服务架构设计
-
-### 3. 全生命周期覆盖
-
-- 从产品调研到项目运维
-- 涵盖所有关键阶段
-- 文档之间相互关联
-
-### 4. 易于定制
-
-- 使用占位符便于替换
-- 结构清晰便于调整
-- 支持项目特定需求
-
-## 注意事项
-
-1. **占位符替换**: 确保所有 `{}` 占位符都被正确替换
-2. **文档关联**: 注意文档之间的关联关系,保持一致性
-3. **版本管理**: 使用版本记录表跟踪文档变更
-4. **团队协作**: 明确文档责任人,确保文档质量
-5. **持续更新**: 根据项目进展及时更新文档内容
-
-## 相关技能
-
-- `documentation-builder` - 通用文档构建技能
-- `code-generator` - 代码生成技能
-- `mcp-builder` - MCP 构建器技能
-
-## 参考资源
-
-- [DDD 领域驱动设计](https://domainlanguage.com/ddd/)
-- [COLA 架构](https://github.com/alibaba/COLA)
-- [产品文档最佳实践](https://www.atlassian.com/software/confluence)

+ 0 - 189
adapters-output/codebuddy/zh-product-doc-generator/workflows/zh-product-doc-generator.json

@@ -1,189 +0,0 @@
-{
-  "id": "full-stack-doc",
-  "name": "项目文档生成技能",
-  "description": "基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。",
-  "steps": [
-    {
-      "id": 1,
-      "name": "**指定文档类型**",
-      "description": "**指定文档类型**",
-      "type": "instruction"
-    },
-    {
-      "id": 2,
-      "name": "**指定项目信息**",
-      "description": "**指定项目信息**",
-      "type": "instruction"
-    },
-    {
-      "id": 3,
-      "name": "**批量生成文档**",
-      "description": "**批量生成文档**",
-      "type": "instruction"
-    },
-    {
-      "id": 4,
-      "name": "`1、产品调研模板.md` - 产品调研阶段文档",
-      "description": "`1、产品调研模板.md` - 产品调研阶段文档",
-      "type": "instruction"
-    },
-    {
-      "id": 5,
-      "name": "`2、需求调研模板.md` - 需求调研阶段文档",
-      "description": "`2、需求调研模板.md` - 需求调研阶段文档",
-      "type": "instruction"
-    },
-    {
-      "id": 6,
-      "name": "`3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)",
-      "description": "`3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)",
-      "type": "instruction"
-    },
-    {
-      "id": 7,
-      "name": "`4、需求分析模板.md` - 需求分析阶段文档",
-      "description": "`4、需求分析模板.md` - 需求分析阶段文档",
-      "type": "instruction"
-    },
-    {
-      "id": 8,
-      "name": "`5、PRD文档模板.md` - 产品需求文档",
-      "description": "`5、PRD文档模板.md` - 产品需求文档",
-      "type": "instruction"
-    },
-    {
-      "id": 9,
-      "name": "`6、视觉与交互 DNA 规范模板.md` - 设计规范文档",
-      "description": "`6、视觉与交互 DNA 规范模板.md` - 设计规范文档",
-      "type": "instruction"
-    },
-    {
-      "id": 10,
-      "name": "`7、UI 设计说明模板.md` - UI设计文档",
-      "description": "`7、UI 设计说明模板.md` - UI设计文档",
-      "type": "instruction"
-    },
-    {
-      "id": 11,
-      "name": "`8、领域模型说明模板.md` - 领域模型文档",
-      "description": "`8、领域模型说明模板.md` - 领域模型文档",
-      "type": "instruction"
-    },
-    {
-      "id": 12,
-      "name": "`9、系统架构设计模板.md` - 系统架构文档",
-      "description": "`9、系统架构设计模板.md` - 系统架构文档",
-      "type": "instruction"
-    },
-    {
-      "id": 13,
-      "name": "`10、技术细分模板.md` - 技术实现文档",
-      "description": "`10、技术细分模板.md` - 技术实现文档",
-      "type": "instruction"
-    },
-    {
-      "id": 14,
-      "name": "`11、功能提测模板.md` - 提测文档",
-      "description": "`11、功能提测模板.md` - 提测文档",
-      "type": "instruction"
-    },
-    {
-      "id": 15,
-      "name": "`12、测试结果模板.md` - 测试报告",
-      "description": "`12、测试结果模板.md` - 测试报告",
-      "type": "instruction"
-    },
-    {
-      "id": 16,
-      "name": "`13、上线通知模板.md` - 上线文档",
-      "description": "`13、上线通知模板.md` - 上线文档",
-      "type": "instruction"
-    },
-    {
-      "id": 17,
-      "name": "`14、项目运维模板.md` - 运维文档",
-      "description": "`14、项目运维模板.md` - 运维文档",
-      "type": "instruction"
-    },
-    {
-      "id": 18,
-      "name": "**选择模板**",
-      "description": "**选择模板**",
-      "type": "instruction"
-    },
-    {
-      "id": 19,
-      "name": "**填写占位符**",
-      "description": "**填写占位符**",
-      "type": "instruction"
-    },
-    {
-      "id": 20,
-      "name": "**定制化调整**",
-      "description": "**定制化调整**",
-      "type": "instruction"
-    },
-    {
-      "id": 21,
-      "name": "**文档评审**",
-      "description": "**文档评审**",
-      "type": "instruction"
-    },
-    {
-      "id": 22,
-      "name": "产品调研文档",
-      "description": "产品调研文档",
-      "type": "instruction"
-    },
-    {
-      "id": 23,
-      "name": "PRD 文档",
-      "description": "PRD 文档",
-      "type": "instruction"
-    },
-    {
-      "id": 24,
-      "name": "系统架构设计文档",
-      "description": "系统架构设计文档",
-      "type": "instruction"
-    },
-    {
-      "id": 25,
-      "name": "技术细分文档",
-      "description": "技术细分文档",
-      "type": "instruction"
-    },
-    {
-      "id": 26,
-      "name": "**占位符替换**",
-      "description": "**占位符替换**: 确保所有 `{}` 占位符都被正确替换",
-      "type": "instruction"
-    },
-    {
-      "id": 27,
-      "name": "**文档关联**",
-      "description": "**文档关联**: 注意文档之间的关联关系,保持一致性",
-      "type": "instruction"
-    },
-    {
-      "id": 28,
-      "name": "**版本管理**",
-      "description": "**版本管理**: 使用版本记录表跟踪文档变更",
-      "type": "instruction"
-    },
-    {
-      "id": 29,
-      "name": "**团队协作**",
-      "description": "**团队协作**: 明确文档责任人,确保文档质量",
-      "type": "instruction"
-    },
-    {
-      "id": 30,
-      "name": "**持续更新**",
-      "description": "**持续更新**: 根据项目进展及时更新文档内容",
-      "type": "instruction"
-    }
-  ],
-  "inputs": [],
-  "outputs": []
-}

+ 0 - 409
adapters-output/cursor/algorithmic-art.md

@@ -1,409 +0,0 @@
-# Algorithmic Art
-
-## Description
-Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
-
-## When to Use
-Use this skill when the user asks about: Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
-
-## Instructions
-
-Algorithmic philosophies are computational aesthetic movements that are then expressed through code. Output .md files (philosophy), .html files (interactive viewer), and .js files (generative algorithms).
-
-This happens in two steps:
-1. Algorithmic Philosophy Creation (.md file)
-2. Express by creating p5.js generative art (.html + .js files)
-
-First, undertake this task:
-
-## ALGORITHMIC PHILOSOPHY CREATION
-
-To begin, create an ALGORITHMIC PHILOSOPHY (not static images or templates) that will be interpreted through:
-- Computational processes, emergent behavior, mathematical beauty
-- Seeded randomness, noise fields, organic systems
-- Particles, flows, fields, forces
-- Parametric variation and controlled chaos
-
-### THE CRITICAL UNDERSTANDING
-- What is received: Some subtle input or instructions by the user to take into account, but use as a foundation; it should not constrain creative freedom.
-- What is created: An algorithmic philosophy/generative aesthetic movement.
-- What happens next: The same version receives the philosophy and EXPRESSES IT IN CODE - creating p5.js sketches that are 90% algorithmic generation, 10% essential parameters.
-
-Consider this approach:
-- Write a manifesto for a generative art movement
-- The next phase involves writing the algorithm that brings it to life
-
-The philosophy must emphasize: Algorithmic expression. Emergent behavior. Computational beauty. Seeded variation.
-
-### HOW TO GENERATE AN ALGORITHMIC PHILOSOPHY
-
-**Name the movement** (1-2 words): "Organic Turbulence" / "Quantum Harmonics" / "Emergent Stillness"
-
-**Articulate the philosophy** (4-6 paragraphs - concise but complete):
-
-To capture the ALGORITHMIC essence, express how this philosophy manifests through:
-- Computational processes and mathematical relationships?
-- Noise functions and randomness patterns?
-- Particle behaviors and field dynamics?
-- Temporal evolution and system states?
-- Parametric variation and emergent complexity?
-
-**CRITICAL GUIDELINES:**
-- **Avoid redundancy**: Each algorithmic aspect should be mentioned once. Avoid repeating concepts about noise theory, particle dynamics, or mathematical principles unless adding new depth.
-- **Emphasize craftsmanship REPEATEDLY**: The philosophy MUST stress multiple times that the final algorithm should appear as though it took countless hours to develop, was refined with care, and comes from someone at the absolute top of their field. This framing is essential - repeat phrases like "meticulously crafted algorithm," "the product of deep computational expertise," "painstaking optimization," "master-level implementation."
-- **Leave creative space**: Be specific about the algorithmic direction, but concise enough that the next Claude has room to make interpretive implementation choices at an extremely high level of craftsmanship.
-
-The philosophy must guide the next version to express ideas ALGORITHMICALLY, not through static images. Beauty lives in the process, not the final frame.
-
-### PHILOSOPHY EXAMPLES
-
-**"Organic Turbulence"**
-Philosophy: Chaos constrained by natural law, order emerging from disorder.
-Algorithmic expression: Flow fields driven by layered Perlin noise. Thousands of particles following vector forces, their trails accumulating into organic density maps. Multiple noise octaves create turbulent regions and calm zones. Color emerges from velocity and density - fast particles burn bright, slow ones fade to shadow. The algorithm runs until equilibrium - a meticulously tuned balance where every parameter was refined through countless iterations by a master of computational aesthetics.
-
-**"Quantum Harmonics"**
-Philosophy: Discrete entities exhibiting wave-like interference patterns.
-Algorithmic expression: Particles initialized on a grid, each carrying a phase value that evolves through sine waves. When particles are near, their phases interfere - constructive interference creates bright nodes, destructive creates voids. Simple harmonic motion generates complex emergent mandalas. The result of painstaking frequency calibration where every ratio was carefully chosen to produce resonant beauty.
-
-**"Recursive Whispers"**
-Philosophy: Self-similarity across scales, infinite depth in finite space.
-Algorithmic expression: Branching structures that subdivide recursively. Each branch slightly randomized but constrained by golden ratios. L-systems or recursive subdivision generate tree-like forms that feel both mathematical and organic. Subtle noise perturbations break perfect symmetry. Line weights diminish with each recursion level. Every branching angle the product of deep mathematical exploration.
-
-**"Field Dynamics"**
-Philosophy: Invisible forces made visible through their effects on matter.
-Algorithmic expression: Vector fields constructed from mathematical functions or noise. Particles born at edges, flowing along field lines, dying when they reach equilibrium or boundaries. Multiple fields can attract, repel, or rotate particles. The visualization shows only the traces - ghost-like evidence of invisible forces. A computational dance meticulously choreographed through force balance.
-
-**"Stochastic Crystallization"**
-Philosophy: Random processes crystallizing into ordered structures.
-Algorithmic expression: Randomized circle packing or Voronoi tessellation. Start with random points, let them evolve through relaxation algorithms. Cells push apart until equilibrium. Color based on cell size, neighbor count, or distance from center. The organic tiling that emerges feels both random and inevitable. Every seed produces unique crystalline beauty - the mark of a master-level generative algorithm.
-
-*These are condensed examples. The actual algorithmic philosophy should be 4-6 substantial paragraphs.*
-
-### ESSENTIAL PRINCIPLES
-- **ALGORITHMIC PHILOSOPHY**: Creating a computational worldview to be expressed through code
-- **PROCESS OVER PRODUCT**: Always emphasize that beauty emerges from the algorithm's execution - each run is unique
-- **PARAMETRIC EXPRESSION**: Ideas communicate through mathematical relationships, forces, behaviors - not static composition
-- **ARTISTIC FREEDOM**: The next Claude interprets the philosophy algorithmically - provide creative implementation room
-- **PURE GENERATIVE ART**: This is about making LIVING ALGORITHMS, not static images with randomness
-- **EXPERT CRAFTSMANSHIP**: Repeatedly emphasize the final algorithm must feel meticulously crafted, refined through countless iterations, the product of deep expertise by someone at the absolute top of their field in computational aesthetics
-
-**The algorithmic philosophy should be 4-6 paragraphs long.** Fill it with poetic computational philosophy that brings together the intended vision. Avoid repeating the same points. Output this algorithmic philosophy as a .md file.
-
----
-
-## DEDUCING THE CONCEPTUAL SEED
-
-**CRITICAL STEP**: Before implementing the algorithm, identify the subtle conceptual thread from the original request.
-
-**THE ESSENTIAL PRINCIPLE**:
-The concept is a **subtle, niche reference embedded within the algorithm itself** - not always literal, always sophisticated. Someone familiar with the subject should feel it intuitively, while others simply experience a masterful generative composition. The algorithmic philosophy provides the computational language. The deduced concept provides the soul - the quiet conceptual DNA woven invisibly into parameters, behaviors, and emergence patterns.
-
-This is **VERY IMPORTANT**: The reference must be so refined that it enhances the work's depth without announcing itself. Think like a jazz musician quoting another song through algorithmic harmony - only those who know will catch it, but everyone appreciates the generative beauty.
-
----
-
-## P5.JS IMPLEMENTATION
-
-With the philosophy AND conceptual framework established, express it through code. Pause to gather thoughts before proceeding. Use only the algorithmic philosophy created and the instructions below.
-
-### ⚠️ STEP 0: READ THE TEMPLATE FIRST ⚠️
-
-**CRITICAL: BEFORE writing any HTML:**
-
-1. **Read** `templates/viewer.html` using the Read tool
-2. **Study** the exact structure, styling, and Anthropic branding
-3. **Use that file as the LITERAL STARTING POINT** - not just inspiration
-4. **Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)
-5. **Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)
-
-**Avoid:**
-- ❌ Creating HTML from scratch
-- ❌ Inventing custom styling or color schemes
-- ❌ Using system fonts or dark themes
-- ❌ Changing the sidebar structure
-
-**Follow these practices:**
-- ✅ Copy the template's exact HTML structure
-- ✅ Keep Anthropic branding (Poppins/Lora fonts, light colors, gradient backdrop)
-- ✅ Maintain the sidebar layout (Seed → Parameters → Colors? → Actions)
-- ✅ Replace only the p5.js algorithm and parameter controls
-
-The template is the foundation. Build on it, don't rebuild it.
-
----
-
-To create gallery-quality computational art that lives and breathes, use the algorithmic philosophy as the foundation.
-
-### TECHNICAL REQUIREMENTS
-
-**Seeded Randomness (Art Blocks Pattern)**:
-```javascript
-// ALWAYS use a seed for reproducibility
-let seed = 12345; // or hash from user input
-randomSeed(seed);
-noiseSeed(seed);
-```
-
-**Parameter Structure - FOLLOW THE PHILOSOPHY**:
-
-To establish parameters that emerge naturally from the algorithmic philosophy, consider: "What qualities of this system can be adjusted?"
-
-```javascript
-let params = {
-  seed: 12345,  // Always include seed for reproducibility
-  // colors
-  // Add parameters that control YOUR algorithm:
-  // - Quantities (how many?)
-  // - Scales (how big? how fast?)
-  // - Probabilities (how likely?)
-  // - Ratios (what proportions?)
-  // - Angles (what direction?)
-  // - Thresholds (when does behavior change?)
-};
-```
-
-**To design effective parameters, focus on the properties the system needs to be tunable rather than thinking in terms of "pattern types".**
-
-**Core Algorithm - EXPRESS THE PHILOSOPHY**:
-
-**CRITICAL**: The algorithmic philosophy should dictate what to build.
-
-To express the philosophy through code, avoid thinking "which pattern should I use?" and instead think "how to express this philosophy through code?"
-
-If the philosophy is about **organic emergence**, consider using:
-- Elements that accumulate or grow over time
-- Random processes constrained by natural rules
-- Feedback loops and interactions
-
-If the philosophy is about **mathematical beauty**, consider using:
-- Geometric relationships and ratios
-- Trigonometric functions and harmonics
-- Precise calculations creating unexpected patterns
-
-If the philosophy is about **controlled chaos**, consider using:
-- Random variation within strict boundaries
-- Bifurcation and phase transitions
-- Order emerging from disorder
-
-**The algorithm flows from the philosophy, not from a menu of options.**
-
-To guide the implementation, let the conceptual essence inform creative and original choices. Build something that expresses the vision for this particular request.
-
-**Canvas Setup**: Standard p5.js structure:
-```javascript
-function setup() {
-  createCanvas(1200, 1200);
-  // Initialize your system
-}
-
-function draw() {
-  // Your generative algorithm
-  // Can be static (noLoop) or animated
-}
-```
-
-### CRAFTSMANSHIP REQUIREMENTS
-
-**CRITICAL**: To achieve mastery, create algorithms that feel like they emerged through countless iterations by a master generative artist. Tune every parameter carefully. Ensure every pattern emerges with purpose. This is NOT random noise - this is CONTROLLED CHAOS refined through deep expertise.
-
-- **Balance**: Complexity without visual noise, order without rigidity
-- **Color Harmony**: Thoughtful palettes, not random RGB values
-- **Composition**: Even in randomness, maintain visual hierarchy and flow
-- **Performance**: Smooth execution, optimized for real-time if animated
-- **Reproducibility**: Same seed ALWAYS produces identical output
-
-### OUTPUT FORMAT
-
-Output:
-1. **Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic
-2. **Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)
-
-The HTML artifact contains everything: p5.js (from CDN), the algorithm, parameter controls, and UI - all in one file that works immediately in claude.ai artifacts or any browser. Start from the template file, not from scratch.
-
----
-
-## INTERACTIVE ARTIFACT CREATION
-
-**REMINDER: `templates/viewer.html` should have already been read (see STEP 0). Use that file as the starting point.**
-
-To allow exploration of the generative art, create a single, self-contained HTML artifact. Ensure this artifact works immediately in claude.ai or any browser - no setup required. Embed everything inline.
-
-### CRITICAL: WHAT'S FIXED VS VARIABLE
-
-The `templates/viewer.html` file is the foundation. It contains the exact structure and styling needed.
-
-**FIXED (always include exactly as shown):**
-- Layout structure (header, sidebar, main canvas area)
-- Anthropic branding (UI colors, fonts, gradients)
-- Seed section in sidebar:
-  - Seed display
-  - Previous/Next buttons
-  - Random button
-  - Jump to seed input + Go button
-- Actions section in sidebar:
-  - Regenerate button
-  - Reset button
-
-**VARIABLE (customize for each artwork):**
-- The entire p5.js algorithm (setup/draw/classes)
-- The parameters object (define what the art needs)
-- The Parameters section in sidebar:
-  - Number of parameter controls
-  - Parameter names
-  - Min/max/step values for sliders
-  - Control types (sliders, inputs, etc.)
-- Colors section (optional):
-  - Some art needs color pickers
-  - Some art might use fixed colors
-  - Some art might be monochrome (no color controls needed)
-  - Decide based on the art's needs
-
-**Every artwork should have unique parameters and algorithm!** The fixed parts provide consistent UX - everything else expresses the unique vision.
-
-### REQUIRED FEATURES
-
-**1. Parameter Controls**
-- Sliders for numeric parameters (particle count, noise scale, speed, etc.)
-- Color pickers for palette colors
-- Real-time updates when parameters change
-- Reset button to restore defaults
-
-**2. Seed Navigation**
-- Display current seed number
-- "Previous" and "Next" buttons to cycle through seeds
-- "Random" button for random seed
-- Input field to jump to specific seed
-- Generate 100 variations when requested (seeds 1-100)
-
-**3. Single Artifact Structure**
-```html
-<!DOCTYPE html>
-<html>
-<head>
-  <!-- p5.js from CDN - always available -->
-  <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script>
-  <style>
-    /* All styling inline - clean, minimal */
-    /* Canvas on top, controls below */
-  </style>
-</head>
-<body>
-  <div id="canvas-container"></div>
-  <div id="controls">
-    <!-- All parameter controls -->
-  </div>
-  <script>
-    // ALL p5.js code inline here
-    // Parameter objects, classes, functions
-    // setup() and draw()
-    // UI handlers
-    // Everything self-contained
-  </script>
-</body>
-</html>
-```
-
-**CRITICAL**: This is a single artifact. No external files, no imports (except p5.js CDN). Everything inline.
-
-**4. Implementation Details - BUILD THE SIDEBAR**
-
-The sidebar structure:
-
-**1. Seed (FIXED)** - Always include exactly as shown:
-- Seed display
-- Prev/Next/Random/Jump buttons
-
-**2. Parameters (VARIABLE)** - Create controls for the art:
-```html
-<div class="control-group">
-    <label>Parameter Name</label>
-    <input type="range" id="param" min="..." max="..." step="..." value="..." oninput="updateParam('param', this.value)">
-    <span class="value-display" id="param-value">...</span>
-</div>
-```
-Add as many control-group divs as there are parameters.
-
-**3. Colors (OPTIONAL/VARIABLE)** - Include if the art needs adjustable colors:
-- Add color pickers if users should control palette
-- Skip this section if the art uses fixed colors
-- Skip if the art is monochrome
-
-**4. Actions (FIXED)** - Always include exactly as shown:
-- Regenerate button
-- Reset button
-- Download PNG button
-
-**Requirements**:
-- Seed controls must work (prev/next/random/jump/display)
-- All parameters must have UI controls
-- Regenerate, Reset, Download buttons must work
-- Keep Anthropic branding (UI styling, not art colors)
-
-### USING THE ARTIFACT
-
-The HTML artifact works immediately:
-1. **In claude.ai**: Displayed as an interactive artifact - runs instantly
-2. **As a file**: Save and open in any browser - no server needed
-3. **Sharing**: Send the HTML file - it's completely self-contained
-
----
-
-## VARIATIONS & EXPLORATION
-
-The artifact includes seed navigation by default (prev/next/random buttons), allowing users to explore variations without creating multiple files. If the user wants specific variations highlighted:
-
-- Include seed presets (buttons for "Variation 1: Seed 42", "Variation 2: Seed 127", etc.)
-- Add a "Gallery Mode" that shows thumbnails of multiple seeds side-by-side
-- All within the same single artifact
-
-This is like creating a series of prints from the same plate - the algorithm is consistent, but each seed reveals different facets of its potential. The interactive nature means users discover their own favorites by exploring the seed space.
-
----
-
-## THE CREATIVE PROCESS
-
-**User request** → **Algorithmic philosophy** → **Implementation**
-
-Each request is unique. The process involves:
-
-1. **Interpret the user's intent** - What aesthetic is being sought?
-2. **Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach
-3. **Implement it in code** - Build the algorithm that expresses this philosophy
-4. **Design appropriate parameters** - What should be tunable?
-5. **Build matching UI controls** - Sliders/inputs for those parameters
-
-**The constants**:
-- Anthropic branding (colors, fonts, layout)
-- Seed navigation (always present)
-- Self-contained HTML artifact
-
-**Everything else is variable**:
-- The algorithm itself
-- The parameters
-- The UI controls
-- The visual outcome
-
-To achieve the best results, trust creativity and let the philosophy guide the implementation.
-
----
-
-## RESOURCES
-
-This skill includes helpful templates and documentation:
-
-- **templates/viewer.html**: REQUIRED STARTING POINT for all HTML artifacts.
-  - This is the foundation - contains the exact structure and Anthropic branding
-  - **Keep unchanged**: Layout structure, sidebar organization, Anthropic colors/fonts, seed controls, action buttons
-  - **Replace**: The p5.js algorithm, parameter definitions, and UI controls in Parameters section
-  - The extensive comments in the file mark exactly what to keep vs replace
-
-- **templates/generator_template.js**: Reference for p5.js best practices and code structure principles.
-  - Shows how to organize parameters, use seeded randomness, structure classes
-  - NOT a pattern menu - use these principles to build unique algorithms
-  - Embed algorithms inline in the HTML artifact (don't create separate .js files)
-
-**Critical reminder**:
-- The **template is the STARTING POINT**, not inspiration
-- The **algorithm is where to create** something unique
-- Don't copy the flow field example - build what the philosophy demands
-- But DO keep the exact UI structure and Anthropic branding from the template

+ 0 - 77
adapters-output/cursor/brand-guidelines.md

@@ -1,77 +0,0 @@
-# Brand Guidelines
-
-## Description
-Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
-
-## When to Use
-Use this skill when the user asks about: Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
-
-## Instructions
-
-# Anthropic Brand Styling
-
-## Overview
-
-To access Anthropic's official brand identity and style resources, use this skill.
-
-**Keywords**: branding, corporate identity, visual identity, post-processing, styling, brand colors, typography, Anthropic brand, visual formatting, visual design
-
-## Brand Guidelines
-
-### Colors
-
-**Main Colors:**
-
-- Dark: `#141413` - Primary text and dark backgrounds
-- Light: `#faf9f5` - Light backgrounds and text on dark
-- Mid Gray: `#b0aea5` - Secondary elements
-- Light Gray: `#e8e6dc` - Subtle backgrounds
-
-**Accent Colors:**
-
-- Orange: `#d97757` - Primary accent
-- Blue: `#6a9bcc` - Secondary accent
-- Green: `#788c5d` - Tertiary accent
-
-### Typography
-
-- **Headings**: Poppins (with Arial fallback)
-- **Body Text**: Lora (with Georgia fallback)
-- **Note**: Fonts should be pre-installed in your environment for best results
-
-## Features
-
-### Smart Font Application
-
-- Applies Poppins font to headings (24pt and larger)
-- Applies Lora font to body text
-- Automatically falls back to Arial/Georgia if custom fonts unavailable
-- Preserves readability across all systems
-
-### Text Styling
-
-- Headings (24pt+): Poppins font
-- Body text: Lora font
-- Smart color selection based on background
-- Preserves text hierarchy and formatting
-
-### Shape and Accent Colors
-
-- Non-text shapes use accent colors
-- Cycles through orange, blue, and green accents
-- Maintains visual interest while staying on-brand
-
-## Technical Details
-
-### Font Management
-
-- Uses system-installed Poppins and Lora fonts when available
-- Provides automatic fallback to Arial (headings) and Georgia (body)
-- No font installation required - works with existing system fonts
-- For best results, pre-install Poppins and Lora fonts in your environment
-
-### Color Application
-
-- Uses RGB color values for precise brand matching
-- Applied via python-pptx's RGBColor class
-- Maintains color fidelity across different systems

+ 0 - 134
adapters-output/cursor/canvas-design.md

@@ -1,134 +0,0 @@
-# Canvas Design
-
-## Description
-Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
-
-## When to Use
-Use this skill when the user asks about: Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
-
-## Instructions
-
-These are instructions for creating design philosophies - aesthetic movements that are then EXPRESSED VISUALLY. Output only .md files, .pdf files, and .png files.
-
-Complete this in two steps:
-1. Design Philosophy Creation (.md file)
-2. Express by creating it on a canvas (.pdf file or .png file)
-
-First, undertake this task:
-
-## DESIGN PHILOSOPHY CREATION
-
-To begin, create a VISUAL PHILOSOPHY (not layouts or templates) that will be interpreted through:
-- Form, space, color, composition
-- Images, graphics, shapes, patterns
-- Minimal text as visual accent
-
-### THE CRITICAL UNDERSTANDING
-- What is received: Some subtle input or instructions by the user that should be taken into account, but used as a foundation; it should not constrain creative freedom.
-- What is created: A design philosophy/aesthetic movement.
-- What happens next: Then, the same version receives the philosophy and EXPRESSES IT VISUALLY - creating artifacts that are 90% visual design, 10% essential text.
-
-Consider this approach:
-- Write a manifesto for an art movement
-- The next phase involves making the artwork
-
-The philosophy must emphasize: Visual expression. Spatial communication. Artistic interpretation. Minimal words.
-
-### HOW TO GENERATE A VISUAL PHILOSOPHY
-
-**Name the movement** (1-2 words): "Brutalist Joy" / "Chromatic Silence" / "Metabolist Dreams"
-
-**Articulate the philosophy** (4-6 paragraphs - concise but complete):
-
-To capture the VISUAL essence, express how the philosophy manifests through:
-- Space and form
-- Color and material
-- Scale and rhythm
-- Composition and balance
-- Visual hierarchy
-
-**CRITICAL GUIDELINES:**
-- **Avoid redundancy**: Each design aspect should be mentioned once. Avoid repeating points about color theory, spatial relationships, or typographic principles unless adding new depth.
-- **Emphasize craftsmanship REPEATEDLY**: The philosophy MUST stress multiple times that the final work should appear as though it took countless hours to create, was labored over with care, and comes from someone at the absolute top of their field. This framing is essential - repeat phrases like "meticulously crafted," "the product of deep expertise," "painstaking attention," "master-level execution."
-- **Leave creative space**: Remain specific about the aesthetic direction, but concise enough that the next Claude has room to make interpretive choices also at a extremely high level of craftmanship.
-
-The philosophy must guide the next version to express ideas VISUALLY, not through text. Information lives in design, not paragraphs.
-
-### PHILOSOPHY EXAMPLES
-
-**"Concrete Poetry"**
-Philosophy: Communication through monumental form and bold geometry.
-Visual expression: Massive color blocks, sculptural typography (huge single words, tiny labels), Brutalist spatial divisions, Polish poster energy meets Le Corbusier. Ideas expressed through visual weight and spatial tension, not explanation. Text as rare, powerful gesture - never paragraphs, only essential words integrated into the visual architecture. Every element placed with the precision of a master craftsman.
-
-**"Chromatic Language"**
-Philosophy: Color as the primary information system.
-Visual expression: Geometric precision where color zones create meaning. Typography minimal - small sans-serif labels letting chromatic fields communicate. Think Josef Albers' interaction meets data visualization. Information encoded spatially and chromatically. Words only to anchor what color already shows. The result of painstaking chromatic calibration.
-
-**"Analog Meditation"**
-Philosophy: Quiet visual contemplation through texture and breathing room.
-Visual expression: Paper grain, ink bleeds, vast negative space. Photography and illustration dominate. Typography whispered (small, restrained, serving the visual). Japanese photobook aesthetic. Images breathe across pages. Text appears sparingly - short phrases, never explanatory blocks. Each composition balanced with the care of a meditation practice.
-
-**"Organic Systems"**
-Philosophy: Natural clustering and modular growth patterns.
-Visual expression: Rounded forms, organic arrangements, color from nature through architecture. Information shown through visual diagrams, spatial relationships, iconography. Text only for key labels floating in space. The composition tells the story through expert spatial orchestration.
-
-**"Geometric Silence"**
-Philosophy: Pure order and restraint.
-Visual expression: Grid-based precision, bold photography or stark graphics, dramatic negative space. Typography precise but minimal - small essential text, large quiet zones. Swiss formalism meets Brutalist material honesty. Structure communicates, not words. Every alignment the work of countless refinements.
-
-*These are condensed examples. The actual design philosophy should be 4-6 substantial paragraphs.*
-
-### ESSENTIAL PRINCIPLES
-- **VISUAL PHILOSOPHY**: Create an aesthetic worldview to be expressed through design
-- **MINIMAL TEXT**: Always emphasize that text is sparse, essential-only, integrated as visual element - never lengthy
-- **SPATIAL EXPRESSION**: Ideas communicate through space, form, color, composition - not paragraphs
-- **ARTISTIC FREEDOM**: The next Claude interprets the philosophy visually - provide creative room
-- **PURE DESIGN**: This is about making ART OBJECTS, not documents with decoration
-- **EXPERT CRAFTSMANSHIP**: Repeatedly emphasize the final work must look meticulously crafted, labored over with care, the product of countless hours by someone at the top of their field
-
-**The design philosophy should be 4-6 paragraphs long.** Fill it with poetic design philosophy that brings together the core vision. Avoid repeating the same points. Keep the design philosophy generic without mentioning the intention of the art, as if it can be used wherever. Output the design philosophy as a .md file.
-
----
-
-## DEDUCING THE SUBTLE REFERENCE
-
-**CRITICAL STEP**: Before creating the canvas, identify the subtle conceptual thread from the original request.
-
-**THE ESSENTIAL PRINCIPLE**:
-The topic is a **subtle, niche reference embedded within the art itself** - not always literal, always sophisticated. Someone familiar with the subject should feel it intuitively, while others simply experience a masterful abstract composition. The design philosophy provides the aesthetic language. The deduced topic provides the soul - the quiet conceptual DNA woven invisibly into form, color, and composition.
-
-This is **VERY IMPORTANT**: The reference must be refined so it enhances the work's depth without announcing itself. Think like a jazz musician quoting another song - only those who know will catch it, but everyone appreciates the music.
-
----
-
-## CANVAS CREATION
-
-With both the philosophy and the conceptual framework established, express it on a canvas. Take a moment to gather thoughts and clear the mind. Use the design philosophy created and the instructions below to craft a masterpiece, embodying all aspects of the philosophy with expert craftsmanship.
-
-**IMPORTANT**: For any type of content, even if the user requests something for a movie/game/book, the approach should still be sophisticated. Never lose sight of the idea that this should be art, not something that's cartoony or amateur.
-
-To create museum or magazine quality work, use the design philosophy as the foundation. Create one single page, highly visual, design-forward PDF or PNG output (unless asked for more pages). Generally use repeating patterns and perfect shapes. Treat the abstract philosophical design as if it were a scientific bible, borrowing the visual language of systematic observation—dense accumulation of marks, repeated elements, or layered patterns that build meaning through patient repetition and reward sustained viewing. Add sparse, clinical typography and systematic reference markers that suggest this could be a diagram from an imaginary discipline, treating the invisible subject with the same reverence typically reserved for documenting observable phenomena. Anchor the piece with simple phrase(s) or details positioned subtly, using a limited color palette that feels intentional and cohesive. Embrace the paradox of using analytical visual language to express ideas about human experience: the result should feel like an artifact that proves something ephemeral can be studied, mapped, and understood through careful attention. This is true art. 
-
-**Text as a contextual element**: Text is always minimal and visual-first, but let context guide whether that means whisper-quiet labels or bold typographic gestures. A punk venue poster might have larger, more aggressive type than a minimalist ceramics studio identity. Most of the time, font should be thin. All use of fonts must be design-forward and prioritize visual communication. Regardless of text scale, nothing falls off the page and nothing overlaps. Every element must be contained within the canvas boundaries with proper margins. Check carefully that all text, graphics, and visual elements have breathing room and clear separation. This is non-negotiable for professional execution. **IMPORTANT: Use different fonts if writing text. Search the `./canvas-fonts` directory. Regardless of approach, sophistication is non-negotiable.**
-
-Download and use whatever fonts are needed to make this a reality. Get creative by making the typography actually part of the art itself -- if the art is abstract, bring the font onto the canvas, not typeset digitally.
-
-To push boundaries, follow design instinct/intuition while using the philosophy as a guiding principle. Embrace ultimate design freedom and choice. Push aesthetics and design to the frontier. 
-
-**CRITICAL**: To achieve human-crafted quality (not AI-generated), create work that looks like it took countless hours. Make it appear as though someone at the absolute top of their field labored over every detail with painstaking care. Ensure the composition, spacing, color choices, typography - everything screams expert-level craftsmanship. Double-check that nothing overlaps, formatting is flawless, every detail perfect. Create something that could be shown to people to prove expertise and rank as undeniably impressive.
-
-Output the final result as a single, downloadable .pdf or .png file, alongside the design philosophy used as a .md file.
-
----
-
-## FINAL STEP
-
-**IMPORTANT**: The user ALREADY said "It isn't perfect enough. It must be pristine, a masterpiece if craftsmanship, as if it were about to be displayed in a museum."
-
-**CRITICAL**: To refine the work, avoid adding more graphics; instead refine what has been created and make it extremely crisp, respecting the design philosophy and the principles of minimalism entirely. Rather than adding a fun filter or refactoring a font, consider how to make the existing composition more cohesive with the art. If the instinct is to call a new function or draw a new shape, STOP and instead ask: "How can I make what's already here more of a piece of art?"
-
-Take a second pass. Go back to the code and refine/polish further to make this a philosophically designed masterpiece.
-
-## MULTI-PAGE OPTION
-
-To create additional pages when requested, create more creative pages along the same lines as the design philosophy but distinctly different as well. Bundle those pages in the same .pdf or many .pngs. Treat the first page as just a single page in a whole coffee table book waiting to be filled. Make the next pages unique twists and memories of the original. Have them almost tell a story in a very tasteful way. Exercise full creative freedom.

+ 0 - 94
adapters-output/cursor/code-generator.md

@@ -1,94 +0,0 @@
-# Code Generator
-
-## Description
-帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。
-
-## When to Use
-Use this skill when the user asks about: 帮助生成高质量的代码,包括函数、类、模块和完整项目。支持多种编程语言,遵循最佳实践和设计模式。适用于快速开发、代码示例生成或教学演示。
-
-## Instructions
-
-# 代码生成技能
-
-## 概述
-
-本技能帮助您生成高质量的代码,支持多种编程语言,遵循最佳实践和设计模式。
-
-**关键词**: 代码生成、编程、函数、类、模块、项目开发、代码示例
-
-## 核心功能
-
-### 1. 函数和类生成
-
-- 生成符合规范的函数和类
-- 添加完整的文档注释
-- 实现错误处理和边界检查
-- 遵循语言特定的最佳实践
-
-### 2. 模块和包开发
-
-- 创建结构化的模块和包
-- 设计清晰的 API 接口
-- 实现模块间的依赖管理
-- 创建配置文件和初始化代码
-
-### 3. 项目脚手架
-
-- 生成完整的项目结构
-- 创建配置文件(package.json, requirements.txt 等)
-- 设置构建和测试环境
-- 添加 README 和文档
-
-### 4. 代码优化和重构
-
-- 优化代码性能和可读性
-- 应用设计模式和最佳实践
-- 重构代码结构
-- 添加单元测试
-
-## 使用指南
-
-### 代码生成原则
-
-1. **清晰性**: 代码应清晰易懂,命名规范
-2. **可维护性**: 结构良好,易于修改和扩展
-3. **健壮性**: 包含错误处理和边界检查
-4. **文档化**: 提供完整的注释和文档
-5. **测试性**: 代码应易于测试
-
-### 支持的编程语言
-
-- Python
-- JavaScript/TypeScript
-- Java
-- Go
-- Rust
-- 其他常见编程语言
-
-### 代码结构要求
-
-- **导入部分**: 清晰的导入语句
-- **文档字符串**: 函数和类的文档
-- **实现代码**: 核心逻辑实现
-- **测试代码**: 单元测试(如需要)
-- **示例代码**: 使用示例(如需要)
-
-## 输出格式
-
-生成的代码应包含:
-
-- **代码文件**: 完整的源代码文件
-- **文档注释**: 函数、类、模块的文档
-- **使用示例**: 代码使用示例
-- **依赖说明**: 所需的依赖和版本
-- **测试代码**: 相关的测试用例
-
-## 最佳实践
-
-- 遵循语言的编码规范和风格指南
-- 使用有意义的变量和函数名
-- 添加类型提示(如适用)
-- 实现适当的错误处理
-- 编写清晰的文档注释
-- 考虑性能和可扩展性
-- 遵循 SOLID 原则和设计模式

+ 0 - 91
adapters-output/cursor/course-designer.md

@@ -1,91 +0,0 @@
-# Course Designer
-
-## Description
-帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。
-
-## When to Use
-Use this skill when the user asks about: 帮助设计和规划课程内容,包括课程大纲、学习目标、教学计划和评估方案。适用于教育工作者、培训师或需要创建结构化学习内容的场景。
-
-## Instructions
-
-# 课程设计技能
-
-## 概述
-
-本技能帮助您创建结构化的课程内容,包括课程大纲、学习目标、教学计划和评估方案。
-
-**关键词**: 课程设计、教学大纲、学习目标、教学计划、课程规划、教育设计
-
-## 核心功能
-
-### 1. 课程大纲设计
-
-- 分析学习需求和目标受众
-- 设计课程结构和模块划分
-- 确定课程时长和进度安排
-- 规划知识点的递进关系
-
-### 2. 学习目标制定
-
-- 使用 Bloom 分类法制定认知目标
-- 设计可测量的学习成果
-- 确保目标与评估方式对齐
-- 区分不同层次的学习目标(记忆、理解、应用、分析、评价、创造)
-
-### 3. 教学计划编写
-
-- 设计每节课的教学流程
-- 规划教学活动和互动环节
-- 准备教学资源和材料清单
-- 安排实践练习和作业
-
-### 4. 评估方案设计
-
-- 设计形成性评估(过程评估)
-- 设计总结性评估(最终评估)
-- 创建评估标准和评分 rubric
-- 规划多种评估方式(测验、项目、报告等)
-
-## 使用指南
-
-### 课程设计流程
-
-1. **需求分析**
-   - 明确目标受众和学习需求
-   - 确定课程目标和预期成果
-   - 分析现有资源和约束条件
-
-2. **内容规划**
-   - 划分课程模块和单元
-   - 确定每个模块的核心知识点
-   - 规划知识点的学习顺序
-
-3. **活动设计**
-   - 为每个知识点设计教学活动
-   - 规划实践练习和项目
-   - 设计互动和讨论环节
-
-4. **评估设计**
-   - 设计评估方式和标准
-   - 创建评估工具和 rubric
-   - 规划评估时间点
-
-## 输出格式
-
-课程设计应包含以下部分:
-
-- **课程基本信息**: 课程名称、目标受众、总时长
-- **课程目标**: 总体目标和具体学习目标
-- **课程大纲**: 模块划分和内容概览
-- **详细教学计划**: 每节课的教学安排
-- **评估方案**: 评估方式和标准
-- **资源清单**: 所需的教学资源
-
-## 最佳实践
-
-- 确保学习目标清晰、可测量
-- 保持内容递进,由浅入深
-- 平衡理论学习和实践应用
-- 设计多样化的教学活动
-- 评估方式应与学习目标对齐
-- 考虑不同学习风格和需求

+ 0 - 380
adapters-output/cursor/doc-coauthoring.md

@@ -1,380 +0,0 @@
-# Doc Coauthoring
-
-## Description
-Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
-
-## When to Use
-Use this skill when the user asks about: Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
-
-## Instructions
-
-# Doc Co-Authoring Workflow
-
-This skill provides a structured workflow for guiding users through collaborative document creation. Act as an active guide, walking users through three stages: Context Gathering, Refinement & Structure, and Reader Testing.
-
-## When to Offer This Workflow
-
-**Trigger conditions:**
-- User mentions writing documentation: "write a doc", "draft a proposal", "create a spec", "write up"
-- User mentions specific doc types: "PRD", "design doc", "decision doc", "RFC"
-- User seems to be starting a substantial writing task
-
-**Initial offer:**
-Offer the user a structured workflow for co-authoring the document. Explain the three stages:
-
-1. **Context Gathering**: User provides all relevant context while Claude asks clarifying questions
-2. **Refinement & Structure**: Iteratively build each section through brainstorming and editing
-3. **Reader Testing**: Test the doc with a fresh Claude (no context) to catch blind spots before others read it
-
-Explain that this approach helps ensure the doc works well when others read it (including when they paste it into Claude). Ask if they want to try this workflow or prefer to work freeform.
-
-If user declines, work freeform. If user accepts, proceed to Stage 1.
-
-## Stage 1: Context Gathering
-
-**Goal:** Close the gap between what the user knows and what Claude knows, enabling smart guidance later.
-
-### Initial Questions
-
-Start by asking the user for meta-context about the document:
-
-1. What type of document is this? (e.g., technical spec, decision doc, proposal)
-2. Who's the primary audience?
-3. What's the desired impact when someone reads this?
-4. Is there a template or specific format to follow?
-5. Any other constraints or context to know?
-
-Inform them they can answer in shorthand or dump information however works best for them.
-
-**If user provides a template or mentions a doc type:**
-- Ask if they have a template document to share
-- If they provide a link to a shared document, use the appropriate integration to fetch it
-- If they provide a file, read it
-
-**If user mentions editing an existing shared document:**
-- Use the appropriate integration to read the current state
-- Check for images without alt-text
-- If images exist without alt-text, explain that when others use Claude to understand the doc, Claude won't be able to see them. Ask if they want alt-text generated. If so, request they paste each image into chat for descriptive alt-text generation.
-
-### Info Dumping
-
-Once initial questions are answered, encourage the user to dump all the context they have. Request information such as:
-- Background on the project/problem
-- Related team discussions or shared documents
-- Why alternative solutions aren't being used
-- Organizational context (team dynamics, past incidents, politics)
-- Timeline pressures or constraints
-- Technical architecture or dependencies
-- Stakeholder concerns
-
-Advise them not to worry about organizing it - just get it all out. Offer multiple ways to provide context:
-- Info dump stream-of-consciousness
-- Point to team channels or threads to read
-- Link to shared documents
-
-**If integrations are available** (e.g., Slack, Teams, Google Drive, SharePoint, or other MCP servers), mention that these can be used to pull in context directly.
-
-**If no integrations are detected and in Claude.ai or Claude app:** Suggest they can enable connectors in their Claude settings to allow pulling context from messaging apps and document storage directly.
-
-Inform them clarifying questions will be asked once they've done their initial dump.
-
-**During context gathering:**
-
-- If user mentions team channels or shared documents:
-  - If integrations available: Inform them the content will be read now, then use the appropriate integration
-  - If integrations not available: Explain lack of access. Suggest they enable connectors in Claude settings, or paste the relevant content directly.
-
-- If user mentions entities/projects that are unknown:
-  - Ask if connected tools should be searched to learn more
-  - Wait for user confirmation before searching
-
-- As user provides context, track what's being learned and what's still unclear
-
-**Asking clarifying questions:**
-
-When user signals they've done their initial dump (or after substantial context provided), ask clarifying questions to ensure understanding:
-
-Generate 5-10 numbered questions based on gaps in the context.
-
-Inform them they can use shorthand to answer (e.g., "1: yes, 2: see #channel, 3: no because backwards compat"), link to more docs, point to channels to read, or just keep info-dumping. Whatever's most efficient for them.
-
-**Exit condition:**
-Sufficient context has been gathered when questions show understanding - when edge cases and trade-offs can be asked about without needing basics explained.
-
-**Transition:**
-Ask if there's any more context they want to provide at this stage, or if it's time to move on to drafting the document.
-
-If user wants to add more, let them. When ready, proceed to Stage 2.
-
-## Stage 2: Refinement & Structure
-
-**Goal:** Build the document section by section through brainstorming, curation, and iterative refinement.
-
-**Instructions to user:**
-Explain that the document will be built section by section. For each section:
-1. Clarifying questions will be asked about what to include
-2. 5-20 options will be brainstormed
-3. User will indicate what to keep/remove/combine
-4. The section will be drafted
-5. It will be refined through surgical edits
-
-Start with whichever section has the most unknowns (usually the core decision/proposal), then work through the rest.
-
-**Section ordering:**
-
-If the document structure is clear:
-Ask which section they'd like to start with.
-
-Suggest starting with whichever section has the most unknowns. For decision docs, that's usually the core proposal. For specs, it's typically the technical approach. Summary sections are best left for last.
-
-If user doesn't know what sections they need:
-Based on the type of document and template, suggest 3-5 sections appropriate for the doc type.
-
-Ask if this structure works, or if they want to adjust it.
-
-**Once structure is agreed:**
-
-Create the initial document structure with placeholder text for all sections.
-
-**If access to artifacts is available:**
-Use `create_file` to create an artifact. This gives both Claude and the user a scaffold to work from.
-
-Inform them that the initial structure with placeholders for all sections will be created.
-
-Create artifact with all section headers and brief placeholder text like "[To be written]" or "[Content here]".
-
-Provide the scaffold link and indicate it's time to fill in each section.
-
-**If no access to artifacts:**
-Create a markdown file in the working directory. Name it appropriately (e.g., `decision-doc.md`, `technical-spec.md`).
-
-Inform them that the initial structure with placeholders for all sections will be created.
-
-Create file with all section headers and placeholder text.
-
-Confirm the filename has been created and indicate it's time to fill in each section.
-
-**For each section:**
-
-### Step 1: Clarifying Questions
-
-Announce work will begin on the [SECTION NAME] section. Ask 5-10 clarifying questions about what should be included:
-
-Generate 5-10 specific questions based on context and section purpose.
-
-Inform them they can answer in shorthand or just indicate what's important to cover.
-
-### Step 2: Brainstorming
-
-For the [SECTION NAME] section, brainstorm [5-20] things that might be included, depending on the section's complexity. Look for:
-- Context shared that might have been forgotten
-- Angles or considerations not yet mentioned
-
-Generate 5-20 numbered options based on section complexity. At the end, offer to brainstorm more if they want additional options.
-
-### Step 3: Curation
-
-Ask which points should be kept, removed, or combined. Request brief justifications to help learn priorities for the next sections.
-
-Provide examples:
-- "Keep 1,4,7,9"
-- "Remove 3 (duplicates 1)"
-- "Remove 6 (audience already knows this)"
-- "Combine 11 and 12"
-
-**If user gives freeform feedback** (e.g., "looks good" or "I like most of it but...") instead of numbered selections, extract their preferences and proceed. Parse what they want kept/removed/changed and apply it.
-
-### Step 4: Gap Check
-
-Based on what they've selected, ask if there's anything important missing for the [SECTION NAME] section.
-
-### Step 5: Drafting
-
-Use `str_replace` to replace the placeholder text for this section with the actual drafted content.
-
-Announce the [SECTION NAME] section will be drafted now based on what they've selected.
-
-**If using artifacts:**
-After drafting, provide a link to the artifact.
-
-Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
-
-**If using a file (no artifacts):**
-After drafting, confirm completion.
-
-Inform them the [SECTION NAME] section has been drafted in [filename]. Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
-
-**Key instruction for user (include when drafting the first section):**
-Provide a note: Instead of editing the doc directly, ask them to indicate what to change. This helps learning of their style for future sections. For example: "Remove the X bullet - already covered by Y" or "Make the third paragraph more concise".
-
-### Step 6: Iterative Refinement
-
-As user provides feedback:
-- Use `str_replace` to make edits (never reprint the whole doc)
-- **If using artifacts:** Provide link to artifact after each edit
-- **If using files:** Just confirm edits are complete
-- If user edits doc directly and asks to read it: mentally note the changes they made and keep them in mind for future sections (this shows their preferences)
-
-**Continue iterating** until user is satisfied with the section.
-
-### Quality Checking
-
-After 3 consecutive iterations with no substantial changes, ask if anything can be removed without losing important information.
-
-When section is done, confirm [SECTION NAME] is complete. Ask if ready to move to the next section.
-
-**Repeat for all sections.**
-
-### Near Completion
-
-As approaching completion (80%+ of sections done), announce intention to re-read the entire document and check for:
-- Flow and consistency across sections
-- Redundancy or contradictions
-- Anything that feels like "slop" or generic filler
-- Whether every sentence carries weight
-
-Read entire document and provide feedback.
-
-**When all sections are drafted and refined:**
-Announce all sections are drafted. Indicate intention to review the complete document one more time.
-
-Review for overall coherence, flow, completeness.
-
-Provide any final suggestions.
-
-Ask if ready to move to Reader Testing, or if they want to refine anything else.
-
-## Stage 3: Reader Testing
-
-**Goal:** Test the document with a fresh Claude (no context bleed) to verify it works for readers.
-
-**Instructions to user:**
-Explain that testing will now occur to see if the document actually works for readers. This catches blind spots - things that make sense to the authors but might confuse others.
-
-### Testing Approach
-
-**If access to sub-agents is available (e.g., in Claude Code):**
-
-Perform the testing directly without user involvement.
-
-### Step 1: Predict Reader Questions
-
-Announce intention to predict what questions readers might ask when trying to discover this document.
-
-Generate 5-10 questions that readers would realistically ask.
-
-### Step 2: Test with Sub-Agent
-
-Announce that these questions will be tested with a fresh Claude instance (no context from this conversation).
-
-For each question, invoke a sub-agent with just the document content and the question.
-
-Summarize what Reader Claude got right/wrong for each question.
-
-### Step 3: Run Additional Checks
-
-Announce additional checks will be performed.
-
-Invoke sub-agent to check for ambiguity, false assumptions, contradictions.
-
-Summarize any issues found.
-
-### Step 4: Report and Fix
-
-If issues found:
-Report that Reader Claude struggled with specific issues.
-
-List the specific issues.
-
-Indicate intention to fix these gaps.
-
-Loop back to refinement for problematic sections.
-
----
-
-**If no access to sub-agents (e.g., claude.ai web interface):**
-
-The user will need to do the testing manually.
-
-### Step 1: Predict Reader Questions
-
-Ask what questions people might ask when trying to discover this document. What would they type into Claude.ai?
-
-Generate 5-10 questions that readers would realistically ask.
-
-### Step 2: Setup Testing
-
-Provide testing instructions:
-1. Open a fresh Claude conversation: https://claude.ai
-2. Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)
-3. Ask Reader Claude the generated questions
-
-For each question, instruct Reader Claude to provide:
-- The answer
-- Whether anything was ambiguous or unclear
-- What knowledge/context the doc assumes is already known
-
-Check if Reader Claude gives correct answers or misinterprets anything.
-
-### Step 3: Additional Checks
-
-Also ask Reader Claude:
-- "What in this doc might be ambiguous or unclear to readers?"
-- "What knowledge or context does this doc assume readers already have?"
-- "Are there any internal contradictions or inconsistencies?"
-
-### Step 4: Iterate Based on Results
-
-Ask what Reader Claude got wrong or struggled with. Indicate intention to fix those gaps.
-
-Loop back to refinement for any problematic sections.
-
----
-
-### Exit Condition (Both Approaches)
-
-When Reader Claude consistently answers questions correctly and doesn't surface new gaps or ambiguities, the doc is ready.
-
-## Final Review
-
-When Reader Testing passes:
-Announce the doc has passed Reader Claude testing. Before completion:
-
-1. Recommend they do a final read-through themselves - they own this document and are responsible for its quality
-2. Suggest double-checking any facts, links, or technical details
-3. Ask them to verify it achieves the impact they wanted
-
-Ask if they want one more review, or if the work is done.
-
-**If user wants final review, provide it. Otherwise:**
-Announce document completion. Provide a few final tips:
-- Consider linking this conversation in an appendix so readers can see how the doc was developed
-- Use appendices to provide depth without bloating the main doc
-- Update the doc as feedback is received from real readers
-
-## Tips for Effective Guidance
-
-**Tone:**
-- Be direct and procedural
-- Explain rationale briefly when it affects user behavior
-- Don't try to "sell" the approach - just execute it
-
-**Handling Deviations:**
-- If user wants to skip a stage: Ask if they want to skip this and write freeform
-- If user seems frustrated: Acknowledge this is taking longer than expected. Suggest ways to move faster
-- Always give user agency to adjust the process
-
-**Context Management:**
-- Throughout, if context is missing on something mentioned, proactively ask
-- Don't let gaps accumulate - address them as they come up
-
-**Artifact Management:**
-- Use `create_file` for drafting full sections
-- Use `str_replace` for all edits
-- Provide artifact link after every change
-- Never use artifacts for brainstorming lists - that's just conversation
-
-**Quality over Speed:**
-- Don't rush through stages
-- Each iteration should make meaningful improvements
-- The goal is a document that actually works for readers

+ 0 - 93
adapters-output/cursor/documentation-builder.md

@@ -1,93 +0,0 @@
-# Documentation Builder
-
-## Description
-帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。
-
-## When to Use
-Use this skill when the user asks about: 帮助生成技术文档,包括 API 文档、用户手册、开发指南、README 等。支持多种文档格式,确保文档清晰、完整、易于理解。
-
-## Instructions
-
-# 文档构建技能
-
-## 概述
-
-本技能帮助您生成各种技术文档,包括 API 文档、用户手册、开发指南等。
-
-**关键词**: 文档编写、API 文档、用户手册、开发指南、技术文档、README
-
-## 核心功能
-
-### 1. API 文档生成
-
-- 生成 RESTful API 文档
-- 描述 API 端点、参数和响应
-- 提供请求和响应示例
-- 创建交互式 API 文档(如 Swagger/OpenAPI)
-
-### 2. 用户手册编写
-
-- 编写用户使用指南
-- 创建快速入门教程
-- 提供常见问题解答(FAQ)
-- 设计操作步骤和截图
-
-### 3. 开发指南创建
-
-- 编写开发环境搭建指南
-- 创建代码贡献指南
-- 设计架构和设计文档
-- 提供开发最佳实践
-
-### 4. README 和项目文档
-
-- 生成项目 README
-- 创建安装和使用说明
-- 编写变更日志(CHANGELOG)
-- 设计项目结构说明
-
-## 使用指南
-
-### 文档编写原则
-
-1. **清晰性**: 文档应清晰易懂,避免歧义
-2. **完整性**: 覆盖所有重要功能和场景
-3. **准确性**: 确保文档与代码一致
-4. **实用性**: 提供实际可用的示例
-5. **可维护性**: 文档应易于更新和维护
-
-### 文档结构
-
-- **概述**: 项目或功能的概述
-- **快速开始**: 快速上手指南
-- **详细说明**: 详细的功能说明
-- **API 参考**: API 接口文档(如适用)
-- **示例**: 使用示例和代码示例
-- **常见问题**: FAQ 和故障排除
-
-### 文档格式
-
-- Markdown(.md)
-- reStructuredText(.rst)
-- HTML
-- PDF(如需要)
-
-## 输出格式
-
-文档应包含:
-
-- **文档文件**: 完整的文档内容
-- **目录结构**: 清晰的章节和目录
-- **代码示例**: 实际可运行的代码示例
-- **图表和截图**: 可视化说明(如需要)
-- **链接和引用**: 相关资源的链接
-
-## 最佳实践
-
-- 使用清晰的标题和章节结构
-- 提供实际可用的代码示例
-- 保持文档与代码同步更新
-- 使用图表和截图辅助说明
-- 编写易于搜索的文档
-- 考虑不同水平的读者
-- 定期审查和更新文档

+ 0 - 201
adapters-output/cursor/docx.md

@@ -1,201 +0,0 @@
-# Docx
-
-## Description
-Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
-
-## When to Use
-Use this skill when the user asks about: Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
-
-## Instructions
-
-# DOCX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of a .docx file. A .docx file is essentially a ZIP archive containing XML files and other resources that you can read or edit. You have different tools and workflows available for different tasks.
-
-## Workflow Decision Tree
-
-### Reading/Analyzing Content
-Use "Text extraction" or "Raw XML access" sections below
-
-### Creating New Document
-Use "Creating a new Word document" workflow
-
-### Editing Existing Document
-- **Your own document + simple changes**
-  Use "Basic OOXML editing" workflow
-
-- **Someone else's document**
-  Use **"Redlining workflow"** (recommended default)
-
-- **Legal, academic, business, or government docs**
-  Use **"Redlining workflow"** (required)
-
-## Reading and analyzing content
-
-### Text extraction
-If you just need to read the text contents of a document, you should convert the document to markdown using pandoc. Pandoc provides excellent support for preserving document structure and can show tracked changes:
-
-```bash
-# Convert document to markdown with tracked changes
-pandoc --track-changes=all path-to-file.docx -o output.md
-# Options: --track-changes=accept/reject/all
-```
-
-### Raw XML access
-You need raw XML access for: comments, complex formatting, document structure, embedded media, and metadata. For any of these features, you'll need to unpack a document and read its raw XML contents.
-
-#### Unpacking a file
-`python ooxml/scripts/unpack.py <office_file> <output_directory>`
-
-#### Key file structures
-* `word/document.xml` - Main document contents
-* `word/comments.xml` - Comments referenced in document.xml
-* `word/media/` - Embedded images and media files
-* Tracked changes use `<w:ins>` (insertions) and `<w:del>` (deletions) tags
-
-## Creating a new Word document
-
-When creating a new Word document from scratch, use **docx-js**, which allows you to create Word documents using JavaScript/TypeScript.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`docx-js.md`](docx-js.md) (~500 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with document creation.
-2. Create a JavaScript/TypeScript file using Document, Paragraph, TextRun components (You can assume all dependencies are installed, but if not, refer to the dependencies section below)
-3. Export as .docx using Packer.toBuffer()
-
-## Editing an existing Word document
-
-When editing an existing Word document, use the **Document library** (a Python library for OOXML manipulation). The library automatically handles infrastructure setup and provides methods for document manipulation. For complex scenarios, you can access the underlying DOM directly through the library.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for the Document library API and XML patterns for directly editing document files.
-2. Unpack the document: `python ooxml/scripts/unpack.py <office_file> <output_directory>`
-3. Create and run a Python script using the Document library (see "Document Library" section in ooxml.md)
-4. Pack the final document: `python ooxml/scripts/pack.py <input_directory> <office_file>`
-
-The Document library provides both high-level methods for common operations and direct DOM access for complex scenarios.
-
-## Redlining workflow for document review
-
-This workflow allows you to plan comprehensive tracked changes using markdown before implementing them in OOXML. **CRITICAL**: For complete tracked changes, you must implement ALL changes systematically.
-
-**Batching Strategy**: Group related changes into batches of 3-10 changes. This makes debugging manageable while maintaining efficiency. Test each batch before moving to the next.
-
-**Principle: Minimal, Precise Edits**
-When implementing tracked changes, only mark text that actually changes. Repeating unchanged text makes edits harder to review and appears unprofessional. Break replacements into: [unchanged text] + [deletion] + [insertion] + [unchanged text]. Preserve the original run's RSID for unchanged text by extracting the `<w:r>` element from the original and reusing it.
-
-Example - Changing "30 days" to "60 days" in a sentence:
-```python
-# BAD - Replaces entire sentence
-'<w:del><w:r><w:delText>The term is 30 days.</w:delText></w:r></w:del><w:ins><w:r><w:t>The term is 60 days.</w:t></w:r></w:ins>'
-
-# GOOD - Only marks what changed, preserves original <w:r> for unchanged text
-'<w:r w:rsidR="00AB12CD"><w:t>The term is </w:t></w:r><w:del><w:r><w:delText>30</w:delText></w:r></w:del><w:ins><w:r><w:t>60</w:t></w:r></w:ins><w:r w:rsidR="00AB12CD"><w:t> days.</w:t></w:r>'
-```
-
-### Tracked changes workflow
-
-1. **Get markdown representation**: Convert document to markdown with tracked changes preserved:
-   ```bash
-   pandoc --track-changes=all path-to-file.docx -o current.md
-   ```
-
-2. **Identify and group changes**: Review the document and identify ALL changes needed, organizing them into logical batches:
-
-   **Location methods** (for finding changes in XML):
-   - Section/heading numbers (e.g., "Section 3.2", "Article IV")
-   - Paragraph identifiers if numbered
-   - Grep patterns with unique surrounding text
-   - Document structure (e.g., "first paragraph", "signature block")
-   - **DO NOT use markdown line numbers** - they don't map to XML structure
-
-   **Batch organization** (group 3-10 related changes per batch):
-   - By section: "Batch 1: Section 2 amendments", "Batch 2: Section 5 updates"
-   - By type: "Batch 1: Date corrections", "Batch 2: Party name changes"
-   - By complexity: Start with simple text replacements, then tackle complex structural changes
-   - Sequential: "Batch 1: Pages 1-3", "Batch 2: Pages 4-6"
-
-3. **Read documentation and unpack**:
-   - **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~600 lines) completely from start to finish. **NEVER set any range limits when reading this file.** Pay special attention to the "Document Library" and "Tracked Change Patterns" sections.
-   - **Unpack the document**: `python ooxml/scripts/unpack.py <file.docx> <dir>`
-   - **Note the suggested RSID**: The unpack script will suggest an RSID to use for your tracked changes. Copy this RSID for use in step 4b.
-
-4. **Implement changes in batches**: Group changes logically (by section, by type, or by proximity) and implement them together in a single script. This approach:
-   - Makes debugging easier (smaller batch = easier to isolate errors)
-   - Allows incremental progress
-   - Maintains efficiency (batch size of 3-10 changes works well)
-
-   **Suggested batch groupings:**
-   - By document section (e.g., "Section 3 changes", "Definitions", "Termination clause")
-   - By change type (e.g., "Date changes", "Party name updates", "Legal term replacements")
-   - By proximity (e.g., "Changes on pages 1-3", "Changes in first half of document")
-
-   For each batch of related changes:
-
-   **a. Map text to XML**: Grep for text in `word/document.xml` to verify how text is split across `<w:r>` elements.
-
-   **b. Create and run script**: Use `get_node` to find nodes, implement changes, then `doc.save()`. See **"Document Library"** section in ooxml.md for patterns.
-
-   **Note**: Always grep `word/document.xml` immediately before writing a script to get current line numbers and verify text content. Line numbers change after each script run.
-
-5. **Pack the document**: After all batches are complete, convert the unpacked directory back to .docx:
-   ```bash
-   python ooxml/scripts/pack.py unpacked reviewed-document.docx
-   ```
-
-6. **Final verification**: Do a comprehensive check of the complete document:
-   - Convert final document to markdown:
-     ```bash
-     pandoc --track-changes=all reviewed-document.docx -o verification.md
-     ```
-   - Verify ALL changes were applied correctly:
-     ```bash
-     grep "original phrase" verification.md  # Should NOT find it
-     grep "replacement phrase" verification.md  # Should find it
-     ```
-   - Check that no unintended changes were introduced
-
-
-## Converting Documents to Images
-
-To visually analyze Word documents, convert them to images using a two-step process:
-
-1. **Convert DOCX to PDF**:
-   ```bash
-   soffice --headless --convert-to pdf document.docx
-   ```
-
-2. **Convert PDF pages to JPEG images**:
-   ```bash
-   pdftoppm -jpeg -r 150 document.pdf page
-   ```
-   This creates files like `page-1.jpg`, `page-2.jpg`, etc.
-
-Options:
-- `-r 150`: Sets resolution to 150 DPI (adjust for quality/size balance)
-- `-jpeg`: Output JPEG format (use `-png` for PNG if preferred)
-- `-f N`: First page to convert (e.g., `-f 2` starts from page 2)
-- `-l N`: Last page to convert (e.g., `-l 5` stops at page 5)
-- `page`: Prefix for output files
-
-Example for specific range:
-```bash
-pdftoppm -jpeg -r 150 -f 2 -l 5 document.pdf page  # Converts only pages 2-5
-```
-
-## Code Style Guidelines
-**IMPORTANT**: When generating code for DOCX operations:
-- Write concise code
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-## Dependencies
-
-Required dependencies (install if not available):
-
-- **pandoc**: `sudo apt-get install pandoc` (for text extraction)
-- **docx**: `npm install -g docx` (for creating new documents)
-- **LibreOffice**: `sudo apt-get install libreoffice` (for PDF conversion)
-- **Poppler**: `sudo apt-get install poppler-utils` (for pdftoppm to convert PDF to images)
-- **defusedxml**: `pip install defusedxml` (for secure XML parsing)

+ 0 - 46
adapters-output/cursor/frontend-design.md

@@ -1,46 +0,0 @@
-# Frontend Design
-
-## Description
-Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
-
-## When to Use
-Use this skill when the user asks about: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
-
-## Instructions
-
-This skill guides creation of distinctive, production-grade frontend interfaces that avoid generic "AI slop" aesthetics. Implement real working code with exceptional attention to aesthetic details and creative choices.
-
-The user provides frontend requirements: a component, page, application, or interface to build. They may include context about the purpose, audience, or technical constraints.
-
-## Design Thinking
-
-Before coding, understand the context and commit to a BOLD aesthetic direction:
-- **Purpose**: What problem does this interface solve? Who uses it?
-- **Tone**: Pick an extreme: brutally minimal, maximalist chaos, retro-futuristic, organic/natural, luxury/refined, playful/toy-like, editorial/magazine, brutalist/raw, art deco/geometric, soft/pastel, industrial/utilitarian, etc. There are so many flavors to choose from. Use these for inspiration but design one that is true to the aesthetic direction.
-- **Constraints**: Technical requirements (framework, performance, accessibility).
-- **Differentiation**: What makes this UNFORGETTABLE? What's the one thing someone will remember?
-
-**CRITICAL**: Choose a clear conceptual direction and execute it with precision. Bold maximalism and refined minimalism both work - the key is intentionality, not intensity.
-
-Then implement working code (HTML/CSS/JS, React, Vue, etc.) that is:
-- Production-grade and functional
-- Visually striking and memorable
-- Cohesive with a clear aesthetic point-of-view
-- Meticulously refined in every detail
-
-## Frontend Aesthetics Guidelines
-
-Focus on:
-- **Typography**: Choose fonts that are beautiful, unique, and interesting. Avoid generic fonts like Arial and Inter; opt instead for distinctive choices that elevate the frontend's aesthetics; unexpected, characterful font choices. Pair a distinctive display font with a refined body font.
-- **Color & Theme**: Commit to a cohesive aesthetic. Use CSS variables for consistency. Dominant colors with sharp accents outperform timid, evenly-distributed palettes.
-- **Motion**: Use animations for effects and micro-interactions. Prioritize CSS-only solutions for HTML. Use Motion library for React when available. Focus on high-impact moments: one well-orchestrated page load with staggered reveals (animation-delay) creates more delight than scattered micro-interactions. Use scroll-triggering and hover states that surprise.
-- **Spatial Composition**: Unexpected layouts. Asymmetry. Overlap. Diagonal flow. Grid-breaking elements. Generous negative space OR controlled density.
-- **Backgrounds & Visual Details**: Create atmosphere and depth rather than defaulting to solid colors. Add contextual effects and textures that match the overall aesthetic. Apply creative forms like gradient meshes, noise textures, geometric patterns, layered transparencies, dramatic shadows, decorative borders, custom cursors, and grain overlays.
-
-NEVER use generic AI-generated aesthetics like overused font families (Inter, Roboto, Arial, system fonts), cliched color schemes (particularly purple gradients on white backgrounds), predictable layouts and component patterns, and cookie-cutter design that lacks context-specific character.
-
-Interpret creatively and make unexpected choices that feel genuinely designed for the context. No design should be the same. Vary between light and dark themes, different fonts, different aesthetics. NEVER converge on common choices (Space Grotesk, for example) across generations.
-
-**IMPORTANT**: Match implementation complexity to the aesthetic vision. Maximalist designs need elaborate code with extensive animations and effects. Minimalist or refined designs need restraint, precision, and careful attention to spacing, typography, and subtle details. Elegance comes from executing the vision well.
-
-Remember: Claude is capable of extraordinary creative work. Don't hold back, show what can truly be created when thinking outside the box and committing fully to a distinctive vision.

+ 0 - 36
adapters-output/cursor/internal-comms.md

@@ -1,36 +0,0 @@
-# Internal Comms
-
-## Description
-A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).
-
-## When to Use
-Use this skill when the user asks about: A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).
-
-## Instructions
-
-## When to use this skill
-To write internal communications, use this skill for:
-- 3P updates (Progress, Plans, Problems)
-- Company newsletters
-- FAQ responses
-- Status reports
-- Leadership updates
-- Project updates
-- Incident reports
-
-## How to use this skill
-
-To write any internal communication:
-
-1. **Identify the communication type** from the request
-2. **Load the appropriate guideline file** from the `examples/` directory:
-    - `examples/3p-updates.md` - For Progress/Plans/Problems team updates
-    - `examples/company-newsletter.md` - For company-wide newsletters
-    - `examples/faq-answers.md` - For answering frequently asked questions
-    - `examples/general-comms.md` - For anything else that doesn't explicitly match one of the above
-3. **Follow the specific instructions** in that file for formatting, tone, and content gathering
-
-If the communication type doesn't match any existing guideline, ask for clarification or more context about the desired format.
-
-## Keywords
-3P updates, company newsletter, company comms, weekly update, faqs, common questions, updates, internal comms

+ 0 - 93
adapters-output/cursor/learning-assessor.md

@@ -1,93 +0,0 @@
-# Learning Assessor
-
-## Description
-帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。
-
-## When to Use
-Use this skill when the user asks about: 帮助创建学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。适用于评估学习效果、设计考试题目或分析学习数据。
-
-## Instructions
-
-# 学习评估技能
-
-## 概述
-
-本技能帮助您创建各种学习评估工具,包括测验题目、评估标准、评分 rubric 和学习分析。
-
-**关键词**: 学习评估、测验设计、评分标准、rubric、学习分析、考试题目
-
-## 核心功能
-
-### 1. 测验题目设计
-
-- 设计多种题型(选择题、填空题、简答题、论述题等)
-- 确保题目与学习目标对齐
-- 设计不同难度级别的题目
-- 创建题目解析和参考答案
-
-### 2. 评估标准制定
-
-- 制定清晰的评估标准
-- 设计评分细则和权重分配
-- 创建评分 rubric(评分量规)
-- 确保评估的客观性和一致性
-
-### 3. 学习分析
-
-- 分析学习数据和学习趋势
-- 识别学习难点和薄弱环节
-- 提供个性化学习建议
-- 生成学习报告和反馈
-
-### 4. 评估工具创建
-
-- 创建在线测验和问卷
-- 设计项目评估表
-- 创建同伴评估工具
-- 设计自我评估工具
-
-## 使用指南
-
-### 题目设计原则
-
-1. **目标对齐**: 每道题目都应对应明确的学习目标
-2. **难度梯度**: 题目应覆盖不同认知层次(记忆、理解、应用、分析、评价、创造)
-3. **清晰明确**: 题目表述清晰,避免歧义
-4. **公平性**: 确保题目对所有学习者公平
-5. **有效性**: 题目应能有效测量目标知识和技能
-
-### Rubric 设计
-
-Rubric 应包含:
-
-- **评估维度**: 要评估的具体方面
-- **表现等级**: 不同表现水平的描述
-- **评分标准**: 每个等级的评分标准
-- **权重分配**: 各维度的权重
-
-### 学习分析维度
-
-- **知识掌握度**: 对知识点的掌握情况
-- **技能应用**: 技能的应用水平
-- **学习进度**: 学习进度和完成情况
-- **学习困难**: 识别学习中的困难点
-- **改进建议**: 提供针对性的改进建议
-
-## 输出格式
-
-评估工具应包含:
-
-- **评估目标**: 明确要评估的内容
-- **评估方式**: 使用的评估方法和工具
-- **评估标准**: 详细的评分标准或 rubric
-- **评估题目**: 具体的评估题目(如适用)
-- **分析报告**: 学习分析和反馈建议
-
-## 最佳实践
-
-- 使用多种评估方式,避免单一化
-- 设计形成性评估,及时反馈
-- 确保评估标准清晰、可操作
-- 提供建设性的反馈意见
-- 关注学习过程,不仅看结果
-- 鼓励自我评估和同伴评估

+ 0 - 240
adapters-output/cursor/mcp-builder.md

@@ -1,240 +0,0 @@
-# Mcp Builder
-
-## Description
-Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
-
-## When to Use
-Use this skill when the user asks about: Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
-
-## Instructions
-
-# MCP Server Development Guide
-
-## Overview
-
-Create MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. The quality of an MCP server is measured by how well it enables LLMs to accomplish real-world tasks.
-
----
-
-# Process
-
-## 🚀 High-Level Workflow
-
-Creating a high-quality MCP server involves four main phases:
-
-### Phase 1: Deep Research and Planning
-
-#### 1.1 Understand Modern MCP Design
-
-**API Coverage vs. Workflow Tools:**
-Balance comprehensive API endpoint coverage with specialized workflow tools. Workflow tools can be more convenient for specific tasks, while comprehensive coverage gives agents flexibility to compose operations. Performance varies by client—some clients benefit from code execution that combines basic tools, while others work better with higher-level workflows. When uncertain, prioritize comprehensive API coverage.
-
-**Tool Naming and Discoverability:**
-Clear, descriptive tool names help agents find the right tools quickly. Use consistent prefixes (e.g., `github_create_issue`, `github_list_repos`) and action-oriented naming.
-
-**Context Management:**
-Agents benefit from concise tool descriptions and the ability to filter/paginate results. Design tools that return focused, relevant data. Some clients support code execution which can help agents filter and process data efficiently.
-
-**Actionable Error Messages:**
-Error messages should guide agents toward solutions with specific suggestions and next steps.
-
-#### 1.2 Study MCP Protocol Documentation
-
-**Navigate the MCP specification:**
-
-Start with the sitemap to find relevant pages: `https://modelcontextprotocol.io/sitemap.xml`
-
-Then fetch specific pages with `.md` suffix for markdown format (e.g., `https://modelcontextprotocol.io/specification/draft.md`).
-
-Key pages to review:
-- Specification overview and architecture
-- Transport mechanisms (streamable HTTP, stdio)
-- Tool, resource, and prompt definitions
-
-#### 1.3 Study Framework Documentation
-
-**Recommended stack:**
-- **Language**: TypeScript (high-quality SDK support and good compatibility in many execution environments e.g. MCPB. Plus AI models are good at generating TypeScript code, benefiting from its broad usage, static typing and good linting tools)
-- **Transport**: Streamable HTTP for remote servers, using stateless JSON (simpler to scale and maintain, as opposed to stateful sessions and streaming responses). stdio for local servers.
-
-**Load framework documentation:**
-
-- **MCP Best Practices**: [📋 View Best Practices](./reference/mcp_best_practices.md) - Core guidelines
-
-**For TypeScript (recommended):**
-- **TypeScript SDK**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
-- [⚡ TypeScript Guide](./reference/node_mcp_server.md) - TypeScript patterns and examples
-
-**For Python:**
-- **Python SDK**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
-- [🐍 Python Guide](./reference/python_mcp_server.md) - Python patterns and examples
-
-#### 1.4 Plan Your Implementation
-
-**Understand the API:**
-Review the service's API documentation to identify key endpoints, authentication requirements, and data models. Use web search and WebFetch as needed.
-
-**Tool Selection:**
-Prioritize comprehensive API coverage. List endpoints to implement, starting with the most common operations.
-
----
-
-### Phase 2: Implementation
-
-#### 2.1 Set Up Project Structure
-
-See language-specific guides for project setup:
-- [⚡ TypeScript Guide](./reference/node_mcp_server.md) - Project structure, package.json, tsconfig.json
-- [🐍 Python Guide](./reference/python_mcp_server.md) - Module organization, dependencies
-
-#### 2.2 Implement Core Infrastructure
-
-Create shared utilities:
-- API client with authentication
-- Error handling helpers
-- Response formatting (JSON/Markdown)
-- Pagination support
-
-#### 2.3 Implement Tools
-
-For each tool:
-
-**Input Schema:**
-- Use Zod (TypeScript) or Pydantic (Python)
-- Include constraints and clear descriptions
-- Add examples in field descriptions
-
-**Output Schema:**
-- Define `outputSchema` where possible for structured data
-- Use `structuredContent` in tool responses (TypeScript SDK feature)
-- Helps clients understand and process tool outputs
-
-**Tool Description:**
-- Concise summary of functionality
-- Parameter descriptions
-- Return type schema
-
-**Implementation:**
-- Async/await for I/O operations
-- Proper error handling with actionable messages
-- Support pagination where applicable
-- Return both text content and structured data when using modern SDKs
-
-**Annotations:**
-- `readOnlyHint`: true/false
-- `destructiveHint`: true/false
-- `idempotentHint`: true/false
-- `openWorldHint`: true/false
-
----
-
-### Phase 3: Review and Test
-
-#### 3.1 Code Quality
-
-Review for:
-- No duplicated code (DRY principle)
-- Consistent error handling
-- Full type coverage
-- Clear tool descriptions
-
-#### 3.2 Build and Test
-
-**TypeScript:**
-- Run `npm run build` to verify compilation
-- Test with MCP Inspector: `npx @modelcontextprotocol/inspector`
-
-**Python:**
-- Verify syntax: `python -m py_compile your_server.py`
-- Test with MCP Inspector
-
-See language-specific guides for detailed testing approaches and quality checklists.
-
----
-
-### Phase 4: Create Evaluations
-
-After implementing your MCP server, create comprehensive evaluations to test its effectiveness.
-
-**Load [✅ Evaluation Guide](./reference/evaluation.md) for complete evaluation guidelines.**
-
-#### 4.1 Understand Evaluation Purpose
-
-Use evaluations to test whether LLMs can effectively use your MCP server to answer realistic, complex questions.
-
-#### 4.2 Create 10 Evaluation Questions
-
-To create effective evaluations, follow the process outlined in the evaluation guide:
-
-1. **Tool Inspection**: List available tools and understand their capabilities
-2. **Content Exploration**: Use READ-ONLY operations to explore available data
-3. **Question Generation**: Create 10 complex, realistic questions
-4. **Answer Verification**: Solve each question yourself to verify answers
-
-#### 4.3 Evaluation Requirements
-
-Ensure each question is:
-- **Independent**: Not dependent on other questions
-- **Read-only**: Only non-destructive operations required
-- **Complex**: Requiring multiple tool calls and deep exploration
-- **Realistic**: Based on real use cases humans would care about
-- **Verifiable**: Single, clear answer that can be verified by string comparison
-- **Stable**: Answer won't change over time
-
-#### 4.4 Output Format
-
-Create an XML file with this structure:
-
-```xml
-<evaluation>
-  <qa_pair>
-    <question>Find discussions about AI model launches with animal codenames. One model needed a specific safety designation that uses the format ASL-X. What number X was being determined for the model named after a spotted wild cat?</question>
-    <answer>3</answer>
-  </qa_pair>
-<!-- More qa_pairs... -->
-</evaluation>
-```
-
----
-
-# Reference Files
-
-## 📚 Documentation Library
-
-Load these resources as needed during development:
-
-### Core MCP Documentation (Load First)
-- **MCP Protocol**: Start with sitemap at `https://modelcontextprotocol.io/sitemap.xml`, then fetch specific pages with `.md` suffix
-- [📋 MCP Best Practices](./reference/mcp_best_practices.md) - Universal MCP guidelines including:
-  - Server and tool naming conventions
-  - Response format guidelines (JSON vs Markdown)
-  - Pagination best practices
-  - Transport selection (streamable HTTP vs stdio)
-  - Security and error handling standards
-
-### SDK Documentation (Load During Phase 1/2)
-- **Python SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
-- **TypeScript SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
-
-### Language-Specific Implementation Guides (Load During Phase 2)
-- [🐍 Python Implementation Guide](./reference/python_mcp_server.md) - Complete Python/FastMCP guide with:
-  - Server initialization patterns
-  - Pydantic model examples
-  - Tool registration with `@mcp.tool`
-  - Complete working examples
-  - Quality checklist
-
-- [⚡ TypeScript Implementation Guide](./reference/node_mcp_server.md) - Complete TypeScript guide with:
-  - Project structure
-  - Zod schema patterns
-  - Tool registration with `server.registerTool`
-  - Complete working examples
-  - Quality checklist
-
-### Evaluation Guide (Load During Phase 4)
-- [✅ Evaluation Guide](./reference/evaluation.md) - Complete evaluation creation guide with:
-  - Question creation guidelines
-  - Answer verification strategies
-  - XML format specifications
-  - Example questions and answers
-  - Running an evaluation with the provided scripts

+ 0 - 104
adapters-output/cursor/mermaid.md

@@ -1,104 +0,0 @@
-# Mermaid
-
-## Description
-A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.
-
-## When to Use
-Use this skill when the user asks about: A comprehensive skill for creating all types of Mermaid diagrams including flowcharts, sequence diagrams, class diagrams, state diagrams, entity relationship diagrams, user journey diagrams, Gantt charts, pie charts, quadrant charts, requirement diagrams, Git graphs, C4 diagrams, mindmaps, timelines, ZenUML, Sankey diagrams, XY charts, block diagrams, packet diagrams, Kanban boards, architecture diagrams, radar charts, and treemaps. Use this skill whenever the user requests to create, draw, or visualize any diagram, flowchart, or structured chart using Mermaid syntax.
-
-## Instructions
-
-## When to use this skill
-
-Use this skill whenever the user wants to:
-- Create any type of diagram or flowchart
-- Visualize processes, workflows, or system architectures
-- Draw sequence diagrams, class diagrams, or state diagrams
-- Create project timelines (Gantt charts)
-- Visualize data relationships (ER diagrams, entity relationships)
-- Create user journey maps
-- Generate pie charts, quadrant charts, or other data visualizations
-- Draw Git branching structures
-- Create mindmaps or hierarchical structures
-- Visualize system architectures (C4 diagrams)
-- Create timelines or event sequences
-- Generate any other diagram type supported by Mermaid
-
-## How to use this skill
-
-To create a Mermaid diagram:
-
-1. **Identify the diagram type** from the user's request:
-   - Flowchart/flow chart/流程图 → `flowchart` or `graph`
-   - Sequence diagram/时序图 → `sequenceDiagram`
-   - Class diagram/类图 → `classDiagram`
-   - State diagram/状态图 → `stateDiagram` or `stateDiagram-v2`
-   - Entity relationship diagram/实体关系图 → `erDiagram`
-   - User journey/用户旅程图 → `journey`
-   - Gantt chart/甘特图 → `gantt`
-   - Pie chart/饼图 → `pie`
-   - Quadrant chart/象限图 → `quadrantChart`
-   - Requirement diagram/需求图 → `requirementDiagram`
-   - Git graph/Git图 → `gitGraph`
-   - C4 diagram/C4图 → `C4Context` or other C4 types
-   - Mindmap/思维导图 → `mindmap`
-   - Timeline/时间线图 → `timeline`
-   - ZenUML/禅UML → `zenuml`
-   - Sankey diagram/桑基图 → `sankey`
-   - XY chart/XY图 → `xychart`
-   - Block diagram/方块图 → `block`
-   - Packet diagram/数据包图 → `packet`
-   - Kanban/看板图 → `kanban`
-   - Architecture diagram/架构图 → `architecture-beta`
-   - Radar chart/雷达图 → `radar-beta`
-   - Treemap/树状图 → `treemap-beta`
-
-2. **Load the appropriate example file** from the `examples/` directory:
-   - `examples/flowchart.md` - For flowcharts and process diagrams
-   - `examples/sequence.md` - For sequence diagrams showing interactions
-   - `examples/class.md` - For class diagrams and object-oriented designs
-   - `examples/state.md` - For state diagrams and state machines
-   - `examples/er.md` - For entity relationship diagrams
-   - `examples/journey.md` - For user journey maps
-   - `examples/gantt.md` - For Gantt charts and project timelines
-   - `examples/pie.md` - For pie charts
-   - `examples/quadrant.md` - For quadrant charts
-   - `examples/requirement.md` - For requirement diagrams
-   - `examples/gitgraph.md` - For Git branching diagrams
-   - `examples/c4.md` - For C4 architecture diagrams
-   - `examples/mindmap.md` - For mindmaps
-   - `examples/timeline.md` - For timeline diagrams
-   - `examples/zenuml.md` - For ZenUML diagrams
-   - `examples/sankey.md` - For Sankey flow diagrams
-   - `examples/xychart.md` - For XY charts (bar/line charts)
-   - `examples/block.md` - For block diagrams
-   - `examples/packet.md` - For packet diagrams
-   - `examples/kanban.md` - For Kanban boards
-   - `examples/architecture.md` - For architecture diagrams
-   - `examples/radar.md` - For radar charts
-   - `examples/treemap.md` - For treemap diagrams
-
-3. **Follow the specific instructions** in that example file for syntax, structure, and best practices
-
-4. **Generate the Mermaid code** wrapped in a code block:
-   ```mermaid
-   <diagram-type>
-   ...diagram content...
-   ```
-
-5. **Include styling and configuration** when needed:
-   - Use `%%{ init: { theme: 'base' } }%%` for theme configuration
-   - Apply `style` directives for node styling
-   - Use `classDef` for reusable style classes
-
-6. **Validate the syntax**:
-   - Ensure all required elements are present
-   - Check that relationships and connections are properly defined
-   - Verify date formats for Gantt charts
-   - Confirm data formats for charts (pie, quadrant, etc.)
-
-If the diagram type doesn't match any existing example, refer to the Mermaid documentation or ask the user for clarification about the desired visualization.
-
-## Keywords
-
-mermaid, diagram, flowchart, flow chart, sequence diagram, class diagram, state diagram, entity relationship, ER diagram, user journey, Gantt chart, pie chart, quadrant chart, requirement diagram, Git graph, C4 diagram, mindmap, timeline, ZenUML, Sankey diagram, XY chart, block diagram, packet diagram, Kanban, architecture diagram, radar chart, treemap, 流程图, 时序图, 类图, 状态图, 实体关系图, 用户旅程图, 甘特图, 饼图, 象限图, 需求图, Git图, C4图, 思维导图, 时间线图, 桑基图, XY图, 方块图, 数据包图, 看板图, 架构图, 雷达图, 树状图

+ 0 - 298
adapters-output/cursor/pdf.md

@@ -1,298 +0,0 @@
-# Pdf
-
-## Description
-Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
-
-## When to Use
-Use this skill when the user asks about: Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
-
-## Instructions
-
-# PDF Processing Guide
-
-## Overview
-
-This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see reference.md. If you need to fill out a PDF form, read forms.md and follow its instructions.
-
-## Quick Start
-
-```python
-from pypdf import PdfReader, PdfWriter
-
-# Read a PDF
-reader = PdfReader("document.pdf")
-print(f"Pages: {len(reader.pages)}")
-
-# Extract text
-text = ""
-for page in reader.pages:
-    text += page.extract_text()
-```
-
-## Python Libraries
-
-### pypdf - Basic Operations
-
-#### Merge PDFs
-```python
-from pypdf import PdfWriter, PdfReader
-
-writer = PdfWriter()
-for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]:
-    reader = PdfReader(pdf_file)
-    for page in reader.pages:
-        writer.add_page(page)
-
-with open("merged.pdf", "wb") as output:
-    writer.write(output)
-```
-
-#### Split PDF
-```python
-reader = PdfReader("input.pdf")
-for i, page in enumerate(reader.pages):
-    writer = PdfWriter()
-    writer.add_page(page)
-    with open(f"page_{i+1}.pdf", "wb") as output:
-        writer.write(output)
-```
-
-#### Extract Metadata
-```python
-reader = PdfReader("document.pdf")
-meta = reader.metadata
-print(f"Title: {meta.title}")
-print(f"Author: {meta.author}")
-print(f"Subject: {meta.subject}")
-print(f"Creator: {meta.creator}")
-```
-
-#### Rotate Pages
-```python
-reader = PdfReader("input.pdf")
-writer = PdfWriter()
-
-page = reader.pages[0]
-page.rotate(90)  # Rotate 90 degrees clockwise
-writer.add_page(page)
-
-with open("rotated.pdf", "wb") as output:
-    writer.write(output)
-```
-
-### pdfplumber - Text and Table Extraction
-
-#### Extract Text with Layout
-```python
-import pdfplumber
-
-with pdfplumber.open("document.pdf") as pdf:
-    for page in pdf.pages:
-        text = page.extract_text()
-        print(text)
-```
-
-#### Extract Tables
-```python
-with pdfplumber.open("document.pdf") as pdf:
-    for i, page in enumerate(pdf.pages):
-        tables = page.extract_tables()
-        for j, table in enumerate(tables):
-            print(f"Table {j+1} on page {i+1}:")
-            for row in table:
-                print(row)
-```
-
-#### Advanced Table Extraction
-```python
-import pandas as pd
-
-with pdfplumber.open("document.pdf") as pdf:
-    all_tables = []
-    for page in pdf.pages:
-        tables = page.extract_tables()
-        for table in tables:
-            if table:  # Check if table is not empty
-                df = pd.DataFrame(table[1:], columns=table[0])
-                all_tables.append(df)
-
-# Combine all tables
-if all_tables:
-    combined_df = pd.concat(all_tables, ignore_index=True)
-    combined_df.to_excel("extracted_tables.xlsx", index=False)
-```
-
-### reportlab - Create PDFs
-
-#### Basic PDF Creation
-```python
-from reportlab.lib.pagesizes import letter
-from reportlab.pdfgen import canvas
-
-c = canvas.Canvas("hello.pdf", pagesize=letter)
-width, height = letter
-
-# Add text
-c.drawString(100, height - 100, "Hello World!")
-c.drawString(100, height - 120, "This is a PDF created with reportlab")
-
-# Add a line
-c.line(100, height - 140, 400, height - 140)
-
-# Save
-c.save()
-```
-
-#### Create PDF with Multiple Pages
-```python
-from reportlab.lib.pagesizes import letter
-from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak
-from reportlab.lib.styles import getSampleStyleSheet
-
-doc = SimpleDocTemplate("report.pdf", pagesize=letter)
-styles = getSampleStyleSheet()
-story = []
-
-# Add content
-title = Paragraph("Report Title", styles['Title'])
-story.append(title)
-story.append(Spacer(1, 12))
-
-body = Paragraph("This is the body of the report. " * 20, styles['Normal'])
-story.append(body)
-story.append(PageBreak())
-
-# Page 2
-story.append(Paragraph("Page 2", styles['Heading1']))
-story.append(Paragraph("Content for page 2", styles['Normal']))
-
-# Build PDF
-doc.build(story)
-```
-
-## Command-Line Tools
-
-### pdftotext (poppler-utils)
-```bash
-# Extract text
-pdftotext input.pdf output.txt
-
-# Extract text preserving layout
-pdftotext -layout input.pdf output.txt
-
-# Extract specific pages
-pdftotext -f 1 -l 5 input.pdf output.txt  # Pages 1-5
-```
-
-### qpdf
-```bash
-# Merge PDFs
-qpdf --empty --pages file1.pdf file2.pdf -- merged.pdf
-
-# Split pages
-qpdf input.pdf --pages . 1-5 -- pages1-5.pdf
-qpdf input.pdf --pages . 6-10 -- pages6-10.pdf
-
-# Rotate pages
-qpdf input.pdf output.pdf --rotate=+90:1  # Rotate page 1 by 90 degrees
-
-# Remove password
-qpdf --password=mypassword --decrypt encrypted.pdf decrypted.pdf
-```
-
-### pdftk (if available)
-```bash
-# Merge
-pdftk file1.pdf file2.pdf cat output merged.pdf
-
-# Split
-pdftk input.pdf burst
-
-# Rotate
-pdftk input.pdf rotate 1east output rotated.pdf
-```
-
-## Common Tasks
-
-### Extract Text from Scanned PDFs
-```python
-# Requires: pip install pytesseract pdf2image
-import pytesseract
-from pdf2image import convert_from_path
-
-# Convert PDF to images
-images = convert_from_path('scanned.pdf')
-
-# OCR each page
-text = ""
-for i, image in enumerate(images):
-    text += f"Page {i+1}:\n"
-    text += pytesseract.image_to_string(image)
-    text += "\n\n"
-
-print(text)
-```
-
-### Add Watermark
-```python
-from pypdf import PdfReader, PdfWriter
-
-# Create watermark (or load existing)
-watermark = PdfReader("watermark.pdf").pages[0]
-
-# Apply to all pages
-reader = PdfReader("document.pdf")
-writer = PdfWriter()
-
-for page in reader.pages:
-    page.merge_page(watermark)
-    writer.add_page(page)
-
-with open("watermarked.pdf", "wb") as output:
-    writer.write(output)
-```
-
-### Extract Images
-```bash
-# Using pdfimages (poppler-utils)
-pdfimages -j input.pdf output_prefix
-
-# This extracts all images as output_prefix-000.jpg, output_prefix-001.jpg, etc.
-```
-
-### Password Protection
-```python
-from pypdf import PdfReader, PdfWriter
-
-reader = PdfReader("input.pdf")
-writer = PdfWriter()
-
-for page in reader.pages:
-    writer.add_page(page)
-
-# Add password
-writer.encrypt("userpassword", "ownerpassword")
-
-with open("encrypted.pdf", "wb") as output:
-    writer.write(output)
-```
-
-## Quick Reference
-
-| Task | Best Tool | Command/Code |
-|------|-----------|--------------|
-| Merge PDFs | pypdf | `writer.add_page(page)` |
-| Split PDFs | pypdf | One page per file |
-| Extract text | pdfplumber | `page.extract_text()` |
-| Extract tables | pdfplumber | `page.extract_tables()` |
-| Create PDFs | reportlab | Canvas or Platypus |
-| Command line merge | qpdf | `qpdf --empty --pages ...` |
-| OCR scanned PDFs | pytesseract | Convert to image first |
-| Fill PDF forms | pdf-lib or pypdf (see forms.md) | See forms.md |
-
-## Next Steps
-
-- For advanced pypdfium2 usage, see reference.md
-- For JavaScript libraries (pdf-lib), see reference.md
-- If you need to fill out a PDF form, follow the instructions in forms.md
-- For troubleshooting guides, see reference.md

+ 0 - 488
adapters-output/cursor/pptx.md

@@ -1,488 +0,0 @@
-# Pptx
-
-## Description
-Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
-
-## When to Use
-Use this skill when the user asks about: Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
-
-## Instructions
-
-# PPTX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of a .pptx file. A .pptx file is essentially a ZIP archive containing XML files and other resources that you can read or edit. You have different tools and workflows available for different tasks.
-
-## Reading and analyzing content
-
-### Text extraction
-If you just need to read the text contents of a presentation, you should convert the document to markdown:
-
-```bash
-# Convert document to markdown
-python -m markitdown path-to-file.pptx
-```
-
-### Raw XML access
-You need raw XML access for: comments, speaker notes, slide layouts, animations, design elements, and complex formatting. For any of these features, you'll need to unpack a presentation and read its raw XML contents.
-
-#### Unpacking a file
-`python ooxml/scripts/unpack.py <office_file> <output_dir>`
-
-**Note**: The unpack.py script is located at `skills/pptx/ooxml/scripts/unpack.py` relative to the project root. If the script doesn't exist at this path, use `find . -name "unpack.py"` to locate it.
-
-#### Key file structures
-* `ppt/presentation.xml` - Main presentation metadata and slide references
-* `ppt/slides/slide{N}.xml` - Individual slide contents (slide1.xml, slide2.xml, etc.)
-* `ppt/notesSlides/notesSlide{N}.xml` - Speaker notes for each slide
-* `ppt/comments/modernComment_*.xml` - Comments for specific slides
-* `ppt/slideLayouts/` - Layout templates for slides
-* `ppt/slideMasters/` - Master slide templates
-* `ppt/theme/` - Theme and styling information
-* `ppt/media/` - Images and other media files
-
-#### Typography and color extraction
-**When given an example design to emulate**: Always analyze the presentation's typography and colors first using the methods below:
-1. **Read theme file**: Check `ppt/theme/theme1.xml` for colors (`<a:clrScheme>`) and fonts (`<a:fontScheme>`)
-2. **Sample slide content**: Examine `ppt/slides/slide1.xml` for actual font usage (`<a:rPr>`) and colors
-3. **Search for patterns**: Use grep to find color (`<a:solidFill>`, `<a:srgbClr>`) and font references across all XML files
-
-## Creating a new PowerPoint presentation **without a template**
-
-When creating a new PowerPoint presentation from scratch, use the **html2pptx** workflow to convert HTML slides to PowerPoint with accurate positioning.
-
-### Design Principles
-
-**CRITICAL**: Before creating any presentation, analyze the content and choose appropriate design elements:
-1. **Consider the subject matter**: What is this presentation about? What tone, industry, or mood does it suggest?
-2. **Check for branding**: If the user mentions a company/organization, consider their brand colors and identity
-3. **Match palette to content**: Select colors that reflect the subject
-4. **State your approach**: Explain your design choices before writing code
-
-**Requirements**:
-- ✅ State your content-informed design approach BEFORE writing code
-- ✅ Use web-safe fonts only: Arial, Helvetica, Times New Roman, Georgia, Courier New, Verdana, Tahoma, Trebuchet MS, Impact
-- ✅ Create clear visual hierarchy through size, weight, and color
-- ✅ Ensure readability: strong contrast, appropriately sized text, clean alignment
-- ✅ Be consistent: repeat patterns, spacing, and visual language across slides
-
-#### Color Palette Selection
-
-**Choosing colors creatively**:
-- **Think beyond defaults**: What colors genuinely match this specific topic? Avoid autopilot choices.
-- **Consider multiple angles**: Topic, industry, mood, energy level, target audience, brand identity (if mentioned)
-- **Be adventurous**: Try unexpected combinations - a healthcare presentation doesn't have to be green, finance doesn't have to be navy
-- **Build your palette**: Pick 3-5 colors that work together (dominant colors + supporting tones + accent)
-- **Ensure contrast**: Text must be clearly readable on backgrounds
-
-**Example color palettes** (use these to spark creativity - choose one, adapt it, or create your own):
-
-1. **Classic Blue**: Deep navy (#1C2833), slate gray (#2E4053), silver (#AAB7B8), off-white (#F4F6F6)
-2. **Teal & Coral**: Teal (#5EA8A7), deep teal (#277884), coral (#FE4447), white (#FFFFFF)
-3. **Bold Red**: Red (#C0392B), bright red (#E74C3C), orange (#F39C12), yellow (#F1C40F), green (#2ECC71)
-4. **Warm Blush**: Mauve (#A49393), blush (#EED6D3), rose (#E8B4B8), cream (#FAF7F2)
-5. **Burgundy Luxury**: Burgundy (#5D1D2E), crimson (#951233), rust (#C15937), gold (#997929)
-6. **Deep Purple & Emerald**: Purple (#B165FB), dark blue (#181B24), emerald (#40695B), white (#FFFFFF)
-7. **Cream & Forest Green**: Cream (#FFE1C7), forest green (#40695B), white (#FCFCFC)
-8. **Pink & Purple**: Pink (#F8275B), coral (#FF574A), rose (#FF737D), purple (#3D2F68)
-9. **Lime & Plum**: Lime (#C5DE82), plum (#7C3A5F), coral (#FD8C6E), blue-gray (#98ACB5)
-10. **Black & Gold**: Gold (#BF9A4A), black (#000000), cream (#F4F6F6)
-11. **Sage & Terracotta**: Sage (#87A96B), terracotta (#E07A5F), cream (#F4F1DE), charcoal (#2C2C2C)
-12. **Charcoal & Red**: Charcoal (#292929), red (#E33737), light gray (#CCCBCB)
-13. **Vibrant Orange**: Orange (#F96D00), light gray (#F2F2F2), charcoal (#222831)
-14. **Forest Green**: Black (#191A19), green (#4E9F3D), dark green (#1E5128), white (#FFFFFF)
-15. **Retro Rainbow**: Purple (#722880), pink (#D72D51), orange (#EB5C18), amber (#F08800), gold (#DEB600)
-16. **Vintage Earthy**: Mustard (#E3B448), sage (#CBD18F), forest green (#3A6B35), cream (#F4F1DE)
-17. **Coastal Rose**: Old rose (#AD7670), beaver (#B49886), eggshell (#F3ECDC), ash gray (#BFD5BE)
-18. **Orange & Turquoise**: Light orange (#FC993E), grayish turquoise (#667C6F), white (#FCFCFC)
-
-#### Visual Details Options
-
-**Geometric Patterns**:
-- Diagonal section dividers instead of horizontal
-- Asymmetric column widths (30/70, 40/60, 25/75)
-- Rotated text headers at 90° or 270°
-- Circular/hexagonal frames for images
-- Triangular accent shapes in corners
-- Overlapping shapes for depth
-
-**Border & Frame Treatments**:
-- Thick single-color borders (10-20pt) on one side only
-- Double-line borders with contrasting colors
-- Corner brackets instead of full frames
-- L-shaped borders (top+left or bottom+right)
-- Underline accents beneath headers (3-5pt thick)
-
-**Typography Treatments**:
-- Extreme size contrast (72pt headlines vs 11pt body)
-- All-caps headers with wide letter spacing
-- Numbered sections in oversized display type
-- Monospace (Courier New) for data/stats/technical content
-- Condensed fonts (Arial Narrow) for dense information
-- Outlined text for emphasis
-
-**Chart & Data Styling**:
-- Monochrome charts with single accent color for key data
-- Horizontal bar charts instead of vertical
-- Dot plots instead of bar charts
-- Minimal gridlines or none at all
-- Data labels directly on elements (no legends)
-- Oversized numbers for key metrics
-
-**Layout Innovations**:
-- Full-bleed images with text overlays
-- Sidebar column (20-30% width) for navigation/context
-- Modular grid systems (3×3, 4×4 blocks)
-- Z-pattern or F-pattern content flow
-- Floating text boxes over colored shapes
-- Magazine-style multi-column layouts
-
-**Background Treatments**:
-- Solid color blocks occupying 40-60% of slide
-- Gradient fills (vertical or diagonal only)
-- Split backgrounds (two colors, diagonal or vertical)
-- Edge-to-edge color bands
-- Negative space as a design element
-
-### Layout Tips
-**When creating slides with charts or tables:**
-- **Two-column layout (PREFERRED)**: Use a header spanning the full width, then two columns below - text/bullets in one column and the featured content in the other. This provides better balance and makes charts/tables more readable. Use flexbox with unequal column widths (e.g., 40%/60% split) to optimize space for each content type.
-- **Full-slide layout**: Let the featured content (chart/table) take up the entire slide for maximum impact and readability
-- **NEVER vertically stack**: Do not place charts/tables below text in a single column - this causes poor readability and layout issues
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`html2pptx.md`](html2pptx.md) completely from start to finish. **NEVER set any range limits when reading this file.** Read the full file content for detailed syntax, critical formatting rules, and best practices before proceeding with presentation creation.
-2. Create an HTML file for each slide with proper dimensions (e.g., 720pt × 405pt for 16:9)
-   - Use `<p>`, `<h1>`-`<h6>`, `<ul>`, `<ol>` for all text content
-   - Use `class="placeholder"` for areas where charts/tables will be added (render with gray background for visibility)
-   - **CRITICAL**: Rasterize gradients and icons as PNG images FIRST using Sharp, then reference in HTML
-   - **LAYOUT**: For slides with charts/tables/images, use either full-slide layout or two-column layout for better readability
-3. Create and run a JavaScript file using the [`html2pptx.js`](scripts/html2pptx.js) library to convert HTML slides to PowerPoint and save the presentation
-   - Use the `html2pptx()` function to process each HTML file
-   - Add charts and tables to placeholder areas using PptxGenJS API
-   - Save the presentation using `pptx.writeFile()`
-4. **Visual validation**: Generate thumbnails and inspect for layout issues
-   - Create thumbnail grid: `python scripts/thumbnail.py output.pptx workspace/thumbnails --cols 4`
-   - Read and carefully examine the thumbnail image for:
-     - **Text cutoff**: Text being cut off by header bars, shapes, or slide edges
-     - **Text overlap**: Text overlapping with other text or shapes
-     - **Positioning issues**: Content too close to slide boundaries or other elements
-     - **Contrast issues**: Insufficient contrast between text and backgrounds
-   - If issues found, adjust HTML margins/spacing/colors and regenerate the presentation
-   - Repeat until all slides are visually correct
-
-## Editing an existing PowerPoint presentation
-
-When edit slides in an existing PowerPoint presentation, you need to work with the raw Office Open XML (OOXML) format. This involves unpacking the .pptx file, editing the XML content, and repacking it.
-
-### Workflow
-1. **MANDATORY - READ ENTIRE FILE**: Read [`ooxml.md`](ooxml.md) (~500 lines) completely from start to finish.  **NEVER set any range limits when reading this file.**  Read the full file content for detailed guidance on OOXML structure and editing workflows before any presentation editing.
-2. Unpack the presentation: `python ooxml/scripts/unpack.py <office_file> <output_dir>`
-3. Edit the XML files (primarily `ppt/slides/slide{N}.xml` and related files)
-4. **CRITICAL**: Validate immediately after each edit and fix any validation errors before proceeding: `python ooxml/scripts/validate.py <dir> --original <file>`
-5. Pack the final presentation: `python ooxml/scripts/pack.py <input_directory> <office_file>`
-
-## Creating a new PowerPoint presentation **using a template**
-
-When you need to create a presentation that follows an existing template's design, you'll need to duplicate and re-arrange template slides before then replacing placeholder context.
-
-### Workflow
-1. **Extract template text AND create visual thumbnail grid**:
-   * Extract text: `python -m markitdown template.pptx > template-content.md`
-   * Read `template-content.md`: Read the entire file to understand the contents of the template presentation. **NEVER set any range limits when reading this file.**
-   * Create thumbnail grids: `python scripts/thumbnail.py template.pptx`
-   * See [Creating Thumbnail Grids](#creating-thumbnail-grids) section for more details
-
-2. **Analyze template and save inventory to a file**:
-   * **Visual Analysis**: Review thumbnail grid(s) to understand slide layouts, design patterns, and visual structure
-   * Create and save a template inventory file at `template-inventory.md` containing:
-     ```markdown
-     # Template Inventory Analysis
-     **Total Slides: [count]**
-     **IMPORTANT: Slides are 0-indexed (first slide = 0, last slide = count-1)**
-
-     ## [Category Name]
-     - Slide 0: [Layout code if available] - Description/purpose
-     - Slide 1: [Layout code] - Description/purpose
-     - Slide 2: [Layout code] - Description/purpose
-     [... EVERY slide must be listed individually with its index ...]
-     ```
-   * **Using the thumbnail grid**: Reference the visual thumbnails to identify:
-     - Layout patterns (title slides, content layouts, section dividers)
-     - Image placeholder locations and counts
-     - Design consistency across slide groups
-     - Visual hierarchy and structure
-   * This inventory file is REQUIRED for selecting appropriate templates in the next step
-
-3. **Create presentation outline based on template inventory**:
-   * Review available templates from step 2.
-   * Choose an intro or title template for the first slide. This should be one of the first templates.
-   * Choose safe, text-based layouts for the other slides.
-   * **CRITICAL: Match layout structure to actual content**:
-     - Single-column layouts: Use for unified narrative or single topic
-     - Two-column layouts: Use ONLY when you have exactly 2 distinct items/concepts
-     - Three-column layouts: Use ONLY when you have exactly 3 distinct items/concepts
-     - Image + text layouts: Use ONLY when you have actual images to insert
-     - Quote layouts: Use ONLY for actual quotes from people (with attribution), never for emphasis
-     - Never use layouts with more placeholders than you have content
-     - If you have 2 items, don't force them into a 3-column layout
-     - If you have 4+ items, consider breaking into multiple slides or using a list format
-   * Count your actual content pieces BEFORE selecting the layout
-   * Verify each placeholder in the chosen layout will be filled with meaningful content
-   * Select one option representing the **best** layout for each content section.
-   * Save `outline.md` with content AND template mapping that leverages available designs
-   * Example template mapping:
-      ```
-      # Template slides to use (0-based indexing)
-      # WARNING: Verify indices are within range! Template with 73 slides has indices 0-72
-      # Mapping: slide numbers from outline -> template slide indices
-      template_mapping = [
-          0,   # Use slide 0 (Title/Cover)
-          34,  # Use slide 34 (B1: Title and body)
-          34,  # Use slide 34 again (duplicate for second B1)
-          50,  # Use slide 50 (E1: Quote)
-          54,  # Use slide 54 (F2: Closing + Text)
-      ]
-      ```
-
-4. **Duplicate, reorder, and delete slides using `rearrange.py`**:
-   * Use the `scripts/rearrange.py` script to create a new presentation with slides in the desired order:
-     ```bash
-     python scripts/rearrange.py template.pptx working.pptx 0,34,34,50,52
-     ```
-   * The script handles duplicating repeated slides, deleting unused slides, and reordering automatically
-   * Slide indices are 0-based (first slide is 0, second is 1, etc.)
-   * The same slide index can appear multiple times to duplicate that slide
-
-5. **Extract ALL text using the `inventory.py` script**:
-   * **Run inventory extraction**:
-     ```bash
-     python scripts/inventory.py working.pptx text-inventory.json
-     ```
-   * **Read text-inventory.json**: Read the entire text-inventory.json file to understand all shapes and their properties. **NEVER set any range limits when reading this file.**
-
-   * The inventory JSON structure:
-      ```json
-        {
-          "slide-0": {
-            "shape-0": {
-              "placeholder_type": "TITLE",  // or null for non-placeholders
-              "left": 1.5,                  // position in inches
-              "top": 2.0,
-              "width": 7.5,
-              "height": 1.2,
-              "paragraphs": [
-                {
-                  "text": "Paragraph text",
-                  // Optional properties (only included when non-default):
-                  "bullet": true,           // explicit bullet detected
-                  "level": 0,               // only included when bullet is true
-                  "alignment": "CENTER",    // CENTER, RIGHT (not LEFT)
-                  "space_before": 10.0,     // space before paragraph in points
-                  "space_after": 6.0,       // space after paragraph in points
-                  "line_spacing": 22.4,     // line spacing in points
-                  "font_name": "Arial",     // from first run
-                  "font_size": 14.0,        // in points
-                  "bold": true,
-                  "italic": false,
-                  "underline": false,
-                  "color": "FF0000"         // RGB color
-                }
-              ]
-            }
-          }
-        }
-      ```
-
-   * Key features:
-     - **Slides**: Named as "slide-0", "slide-1", etc.
-     - **Shapes**: Ordered by visual position (top-to-bottom, left-to-right) as "shape-0", "shape-1", etc.
-     - **Placeholder types**: TITLE, CENTER_TITLE, SUBTITLE, BODY, OBJECT, or null
-     - **Default font size**: `default_font_size` in points extracted from layout placeholders (when available)
-     - **Slide numbers are filtered**: Shapes with SLIDE_NUMBER placeholder type are automatically excluded from inventory
-     - **Bullets**: When `bullet: true`, `level` is always included (even if 0)
-     - **Spacing**: `space_before`, `space_after`, and `line_spacing` in points (only included when set)
-     - **Colors**: `color` for RGB (e.g., "FF0000"), `theme_color` for theme colors (e.g., "DARK_1")
-     - **Properties**: Only non-default values are included in the output
-
-6. **Generate replacement text and save the data to a JSON file**
-   Based on the text inventory from the previous step:
-   - **CRITICAL**: First verify which shapes exist in the inventory - only reference shapes that are actually present
-   - **VALIDATION**: The replace.py script will validate that all shapes in your replacement JSON exist in the inventory
-     - If you reference a non-existent shape, you'll get an error showing available shapes
-     - If you reference a non-existent slide, you'll get an error indicating the slide doesn't exist
-     - All validation errors are shown at once before the script exits
-   - **IMPORTANT**: The replace.py script uses inventory.py internally to identify ALL text shapes
-   - **AUTOMATIC CLEARING**: ALL text shapes from the inventory will be cleared unless you provide "paragraphs" for them
-   - Add a "paragraphs" field to shapes that need content (not "replacement_paragraphs")
-   - Shapes without "paragraphs" in the replacement JSON will have their text cleared automatically
-   - Paragraphs with bullets will be automatically left aligned. Don't set the `alignment` property on when `"bullet": true`
-   - Generate appropriate replacement content for placeholder text
-   - Use shape size to determine appropriate content length
-   - **CRITICAL**: Include paragraph properties from the original inventory - don't just provide text
-   - **IMPORTANT**: When bullet: true, do NOT include bullet symbols (•, -, *) in text - they're added automatically
-   - **ESSENTIAL FORMATTING RULES**:
-     - Headers/titles should typically have `"bold": true`
-     - List items should have `"bullet": true, "level": 0` (level is required when bullet is true)
-     - Preserve any alignment properties (e.g., `"alignment": "CENTER"` for centered text)
-     - Include font properties when different from default (e.g., `"font_size": 14.0`, `"font_name": "Lora"`)
-     - Colors: Use `"color": "FF0000"` for RGB or `"theme_color": "DARK_1"` for theme colors
-     - The replacement script expects **properly formatted paragraphs**, not just text strings
-     - **Overlapping shapes**: Prefer shapes with larger default_font_size or more appropriate placeholder_type
-   - Save the updated inventory with replacements to `replacement-text.json`
-   - **WARNING**: Different template layouts have different shape counts - always check the actual inventory before creating replacements
-
-   Example paragraphs field showing proper formatting:
-   ```json
-   "paragraphs": [
-     {
-       "text": "New presentation title text",
-       "alignment": "CENTER",
-       "bold": true
-     },
-     {
-       "text": "Section Header",
-       "bold": true
-     },
-     {
-       "text": "First bullet point without bullet symbol",
-       "bullet": true,
-       "level": 0
-     },
-     {
-       "text": "Red colored text",
-       "color": "FF0000"
-     },
-     {
-       "text": "Theme colored text",
-       "theme_color": "DARK_1"
-     },
-     {
-       "text": "Regular paragraph text without special formatting"
-     }
-   ]
-   ```
-
-   **Shapes not listed in the replacement JSON are automatically cleared**:
-   ```json
-   {
-     "slide-0": {
-       "shape-0": {
-         "paragraphs": [...] // This shape gets new text
-       }
-       // shape-1 and shape-2 from inventory will be cleared automatically
-     }
-   }
-   ```
-
-   **Common formatting patterns for presentations**:
-   - Title slides: Bold text, sometimes centered
-   - Section headers within slides: Bold text
-   - Bullet lists: Each item needs `"bullet": true, "level": 0`
-   - Body text: Usually no special properties needed
-   - Quotes: May have special alignment or font properties
-
-7. **Apply replacements using the `replace.py` script**
-   ```bash
-   python scripts/replace.py working.pptx replacement-text.json output.pptx
-   ```
-
-   The script will:
-   - First extract the inventory of ALL text shapes using functions from inventory.py
-   - Validate that all shapes in the replacement JSON exist in the inventory
-   - Clear text from ALL shapes identified in the inventory
-   - Apply new text only to shapes with "paragraphs" defined in the replacement JSON
-   - Preserve formatting by applying paragraph properties from the JSON
-   - Handle bullets, alignment, font properties, and colors automatically
-   - Save the updated presentation
-
-   Example validation errors:
-   ```
-   ERROR: Invalid shapes in replacement JSON:
-     - Shape 'shape-99' not found on 'slide-0'. Available shapes: shape-0, shape-1, shape-4
-     - Slide 'slide-999' not found in inventory
-   ```
-
-   ```
-   ERROR: Replacement text made overflow worse in these shapes:
-     - slide-0/shape-2: overflow worsened by 1.25" (was 0.00", now 1.25")
-   ```
-
-## Creating Thumbnail Grids
-
-To create visual thumbnail grids of PowerPoint slides for quick analysis and reference:
-
-```bash
-python scripts/thumbnail.py template.pptx [output_prefix]
-```
-
-**Features**:
-- Creates: `thumbnails.jpg` (or `thumbnails-1.jpg`, `thumbnails-2.jpg`, etc. for large decks)
-- Default: 5 columns, max 30 slides per grid (5×6)
-- Custom prefix: `python scripts/thumbnail.py template.pptx my-grid`
-  - Note: The output prefix should include the path if you want output in a specific directory (e.g., `workspace/my-grid`)
-- Adjust columns: `--cols 4` (range: 3-6, affects slides per grid)
-- Grid limits: 3 cols = 12 slides/grid, 4 cols = 20, 5 cols = 30, 6 cols = 42
-- Slides are zero-indexed (Slide 0, Slide 1, etc.)
-
-**Use cases**:
-- Template analysis: Quickly understand slide layouts and design patterns
-- Content review: Visual overview of entire presentation
-- Navigation reference: Find specific slides by their visual appearance
-- Quality check: Verify all slides are properly formatted
-
-**Examples**:
-```bash
-# Basic usage
-python scripts/thumbnail.py presentation.pptx
-
-# Combine options: custom name, columns
-python scripts/thumbnail.py template.pptx analysis --cols 4
-```
-
-## Converting Slides to Images
-
-To visually analyze PowerPoint slides, convert them to images using a two-step process:
-
-1. **Convert PPTX to PDF**:
-   ```bash
-   soffice --headless --convert-to pdf template.pptx
-   ```
-
-2. **Convert PDF pages to JPEG images**:
-   ```bash
-   pdftoppm -jpeg -r 150 template.pdf slide
-   ```
-   This creates files like `slide-1.jpg`, `slide-2.jpg`, etc.
-
-Options:
-- `-r 150`: Sets resolution to 150 DPI (adjust for quality/size balance)
-- `-jpeg`: Output JPEG format (use `-png` for PNG if preferred)
-- `-f N`: First page to convert (e.g., `-f 2` starts from page 2)
-- `-l N`: Last page to convert (e.g., `-l 5` stops at page 5)
-- `slide`: Prefix for output files
-
-Example for specific range:
-```bash
-pdftoppm -jpeg -r 150 -f 2 -l 5 template.pdf slide  # Converts only pages 2-5
-```
-
-## Code Style Guidelines
-**IMPORTANT**: When generating code for PPTX operations:
-- Write concise code
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-## Dependencies
-
-Required dependencies (should already be installed):
-
-- **markitdown**: `pip install "markitdown[pptx]"` (for text extraction from presentations)
-- **pptxgenjs**: `npm install -g pptxgenjs` (for creating presentations via html2pptx)
-- **playwright**: `npm install -g playwright` (for HTML rendering in html2pptx)
-- **react-icons**: `npm install -g react-icons react react-dom` (for icons)
-- **sharp**: `npm install -g sharp` (for SVG rasterization and image processing)
-- **LibreOffice**: `sudo apt-get install libreoffice` (for PDF conversion)
-- **Poppler**: `sudo apt-get install poppler-utils` (for pdftoppm to convert PDF to images)
-- **defusedxml**: `pip install defusedxml` (for secure XML parsing)

+ 0 - 360
adapters-output/cursor/skill-creator.md

@@ -1,360 +0,0 @@
-# Skill Creator
-
-## Description
-Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
-
-## When to Use
-Use this skill when the user asks about: Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
-
-## Instructions
-
-# Skill Creator
-
-This skill provides guidance for creating effective skills.
-
-## About Skills
-
-Skills are modular, self-contained packages that extend Claude's capabilities by providing
-specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific
-domains or tasks—they transform Claude from a general-purpose agent into a specialized agent
-equipped with procedural knowledge that no model can fully possess.
-
-### What Skills Provide
-
-1. Specialized workflows - Multi-step procedures for specific domains
-2. Tool integrations - Instructions for working with specific file formats or APIs
-3. Domain expertise - Company-specific knowledge, schemas, business logic
-4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks
-
-## Core Principles
-
-### Concise is Key
-
-The context window is a public good. Skills share the context window with everything else Claude needs: system prompt, conversation history, other Skills' metadata, and the actual user request.
-
-**Default assumption: Claude is already very smart.** Only add context Claude doesn't already have. Challenge each piece of information: "Does Claude really need this explanation?" and "Does this paragraph justify its token cost?"
-
-Prefer concise examples over verbose explanations.
-
-### Set Appropriate Degrees of Freedom
-
-Match the level of specificity to the task's fragility and variability:
-
-**High freedom (text-based instructions)**: Use when multiple approaches are valid, decisions depend on context, or heuristics guide the approach.
-
-**Medium freedom (pseudocode or scripts with parameters)**: Use when a preferred pattern exists, some variation is acceptable, or configuration affects behavior.
-
-**Low freedom (specific scripts, few parameters)**: Use when operations are fragile and error-prone, consistency is critical, or a specific sequence must be followed.
-
-Think of Claude as exploring a path: a narrow bridge with cliffs needs specific guardrails (low freedom), while an open field allows many routes (high freedom).
-
-### Anatomy of a Skill
-
-Every skill consists of a required SKILL.md file and optional bundled resources:
-
-```
-skill-name/
-├── SKILL.md (required)
-│   ├── YAML frontmatter metadata (required)
-│   │   ├── name: (required)
-│   │   └── description: (required)
-│   └── Markdown instructions (required)
-└── Bundled Resources (optional)
-    ├── scripts/          - Executable code (Python/Bash/etc.)
-    ├── references/       - Documentation intended to be loaded into context as needed
-    └── assets/           - Files used in output (templates, icons, fonts, etc.)
-```
-
-#### SKILL.md (required)
-
-Every SKILL.md consists of:
-
-- **Frontmatter** (YAML): Contains `name` and `description` fields. These are the only fields that Claude reads to determine when the skill gets used, thus it is very important to be clear and comprehensive in describing what the skill is, and when it should be used.
-- **Body** (Markdown): Instructions and guidance for using the skill. Only loaded AFTER the skill triggers (if at all).
-
-#### Bundled Resources (optional)
-
-##### Scripts (`scripts/`)
-
-Executable code (Python/Bash/etc.) for tasks that require deterministic reliability or are repeatedly rewritten.
-
-- **When to include**: When the same code is being rewritten repeatedly or deterministic reliability is needed
-- **Example**: `scripts/rotate_pdf.py` for PDF rotation tasks
-- **Benefits**: Token efficient, deterministic, may be executed without loading into context
-- **Note**: Scripts may still need to be read by Claude for patching or environment-specific adjustments
-
-##### References (`references/`)
-
-Documentation and reference material intended to be loaded as needed into context to inform Claude's process and thinking.
-
-- **When to include**: For documentation that Claude should reference while working
-- **Examples**: `references/finance.md` for financial schemas, `references/mnda.md` for company NDA template, `references/policies.md` for company policies, `references/api_docs.md` for API specifications
-- **Use cases**: Database schemas, API documentation, domain knowledge, company policies, detailed workflow guides
-- **Benefits**: Keeps SKILL.md lean, loaded only when Claude determines it's needed
-- **Best practice**: If files are large (>10k words), include grep search patterns in SKILL.md
-- **Avoid duplication**: Information should live in either SKILL.md or references files, not both. Prefer references files for detailed information unless it's truly core to the skill—this keeps SKILL.md lean while making information discoverable without hogging the context window. Keep only essential procedural instructions and workflow guidance in SKILL.md; move detailed reference material, schemas, and examples to references files.
-
-##### Assets (`assets/`)
-
-Files not intended to be loaded into context, but rather used within the output Claude produces.
-
-- **When to include**: When the skill needs files that will be used in the final output
-- **Examples**: `assets/logo.png` for brand assets, `assets/slides.pptx` for PowerPoint templates, `assets/frontend-template/` for HTML/React boilerplate, `assets/font.ttf` for typography
-- **Use cases**: Templates, images, icons, boilerplate code, fonts, sample documents that get copied or modified
-- **Benefits**: Separates output resources from documentation, enables Claude to use files without loading them into context
-
-#### What to Not Include in a Skill
-
-A skill should only contain essential files that directly support its functionality. Do NOT create extraneous documentation or auxiliary files, including:
-
-- README.md
-- INSTALLATION_GUIDE.md
-- QUICK_REFERENCE.md
-- CHANGELOG.md
-- etc.
-
-The skill should only contain the information needed for an AI agent to do the job at hand. It should not contain auxilary context about the process that went into creating it, setup and testing procedures, user-facing documentation, etc. Creating additional documentation files just adds clutter and confusion.
-
-### Progressive Disclosure Design Principle
-
-Skills use a three-level loading system to manage context efficiently:
-
-1. **Metadata (name + description)** - Always in context (~100 words)
-2. **SKILL.md body** - When skill triggers (<5k words)
-3. **Bundled resources** - As needed by Claude (Unlimited because scripts can be executed without reading into context window)
-
-#### Progressive Disclosure Patterns
-
-Keep SKILL.md body to the essentials and under 500 lines to minimize context bloat. Split content into separate files when approaching this limit. When splitting out content into other files, it is very important to reference them from SKILL.md and describe clearly when to read them, to ensure the reader of the skill knows they exist and when to use them.
-
-**Key principle:** When a skill supports multiple variations, frameworks, or options, keep only the core workflow and selection guidance in SKILL.md. Move variant-specific details (patterns, examples, configuration) into separate reference files.
-
-**Pattern 1: High-level guide with references**
-
-```markdown
-# PDF Processing
-
-## Quick start
-
-Extract text with pdfplumber:
-[code example]
-
-## Advanced features
-
-- **Form filling**: See [FORMS.md](FORMS.md) for complete guide
-- **API reference**: See [REFERENCE.md](REFERENCE.md) for all methods
-- **Examples**: See [EXAMPLES.md](EXAMPLES.md) for common patterns
-```
-
-Claude loads FORMS.md, REFERENCE.md, or EXAMPLES.md only when needed.
-
-**Pattern 2: Domain-specific organization**
-
-For Skills with multiple domains, organize content by domain to avoid loading irrelevant context:
-
-```
-bigquery-skill/
-├── SKILL.md (overview and navigation)
-└── reference/
-    ├── finance.md (revenue, billing metrics)
-    ├── sales.md (opportunities, pipeline)
-    ├── product.md (API usage, features)
-    └── marketing.md (campaigns, attribution)
-```
-
-When a user asks about sales metrics, Claude only reads sales.md.
-
-Similarly, for skills supporting multiple frameworks or variants, organize by variant:
-
-```
-cloud-deploy/
-├── SKILL.md (workflow + provider selection)
-└── references/
-    ├── aws.md (AWS deployment patterns)
-    ├── gcp.md (GCP deployment patterns)
-    └── azure.md (Azure deployment patterns)
-```
-
-When the user chooses AWS, Claude only reads aws.md.
-
-**Pattern 3: Conditional details**
-
-Show basic content, link to advanced content:
-
-```markdown
-# DOCX Processing
-
-## Creating documents
-
-Use docx-js for new documents. See [DOCX-JS.md](DOCX-JS.md).
-
-## Editing documents
-
-For simple edits, modify the XML directly.
-
-**For tracked changes**: See [REDLINING.md](REDLINING.md)
-**For OOXML details**: See [OOXML.md](OOXML.md)
-```
-
-Claude reads REDLINING.md or OOXML.md only when the user needs those features.
-
-**Important guidelines:**
-
-- **Avoid deeply nested references** - Keep references one level deep from SKILL.md. All reference files should link directly from SKILL.md.
-- **Structure longer reference files** - For files longer than 100 lines, include a table of contents at the top so Claude can see the full scope when previewing.
-
-## Skill Creation Process
-
-Skill creation involves these steps:
-
-1. Understand the skill with concrete examples
-2. Plan reusable skill contents (scripts, references, assets)
-3. Initialize the skill (run init_skill.py)
-4. Edit the skill (implement resources and write SKILL.md)
-5. Package the skill (run package_skill.py)
-6. Iterate based on real usage
-
-Follow these steps in order, skipping only if there is a clear reason why they are not applicable.
-
-### Step 1: Understanding the Skill with Concrete Examples
-
-Skip this step only when the skill's usage patterns are already clearly understood. It remains valuable even when working with an existing skill.
-
-To create an effective skill, clearly understand concrete examples of how the skill will be used. This understanding can come from either direct user examples or generated examples that are validated with user feedback.
-
-For example, when building an image-editor skill, relevant questions include:
-
-- "What functionality should the image-editor skill support? Editing, rotating, anything else?"
-- "Can you give some examples of how this skill would be used?"
-- "I can imagine users asking for things like 'Remove the red-eye from this image' or 'Rotate this image'. Are there other ways you imagine this skill being used?"
-- "What would a user say that should trigger this skill?"
-
-To avoid overwhelming users, avoid asking too many questions in a single message. Start with the most important questions and follow up as needed for better effectiveness.
-
-Conclude this step when there is a clear sense of the functionality the skill should support.
-
-### Step 2: Planning the Reusable Skill Contents
-
-To turn concrete examples into an effective skill, analyze each example by:
-
-1. Considering how to execute on the example from scratch
-2. Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly
-
-Example: When building a `pdf-editor` skill to handle queries like "Help me rotate this PDF," the analysis shows:
-
-1. Rotating a PDF requires re-writing the same code each time
-2. A `scripts/rotate_pdf.py` script would be helpful to store in the skill
-
-Example: When designing a `frontend-webapp-builder` skill for queries like "Build me a todo app" or "Build me a dashboard to track my steps," the analysis shows:
-
-1. Writing a frontend webapp requires the same boilerplate HTML/React each time
-2. An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill
-
-Example: When building a `big-query` skill to handle queries like "How many users have logged in today?" the analysis shows:
-
-1. Querying BigQuery requires re-discovering the table schemas and relationships each time
-2. A `references/schema.md` file documenting the table schemas would be helpful to store in the skill
-
-To establish the skill's contents, analyze each concrete example to create a list of the reusable resources to include: scripts, references, and assets.
-
-### Step 3: Initializing the Skill
-
-At this point, it is time to actually create the skill.
-
-Skip this step only if the skill being developed already exists, and iteration or packaging is needed. In this case, continue to the next step.
-
-When creating a new skill from scratch, always run the `init_skill.py` script. The script conveniently generates a new template skill directory that automatically includes everything a skill requires, making the skill creation process much more efficient and reliable.
-
-Usage:
-
-```bash
-scripts/init_skill.py <skill-name> --path <output-directory>
-```
-
-The script:
-
-- Creates the skill directory at the specified path
-- Generates a SKILL.md template with proper frontmatter and TODO placeholders
-- Creates example resource directories: `scripts/`, `references/`, and `assets/`
-- Adds example files in each directory that can be customized or deleted
-
-After initialization, customize or remove the generated SKILL.md and example files as needed.
-
-### Step 4: Edit the Skill
-
-When editing the (newly-generated or existing) skill, remember that the skill is being created for another instance of Claude to use. Include information that would be beneficial and non-obvious to Claude. Consider what procedural knowledge, domain-specific details, or reusable assets would help another Claude instance execute these tasks more effectively.
-
-#### Learn Proven Design Patterns
-
-Consult these helpful guides based on your skill's needs:
-
-- **Multi-step processes**: See references/workflows.md for sequential workflows and conditional logic
-- **Specific output formats or quality standards**: See references/output-patterns.md for template and example patterns
-
-These files contain established best practices for effective skill design.
-
-#### Start with Reusable Skill Contents
-
-To begin implementation, start with the reusable resources identified above: `scripts/`, `references/`, and `assets/` files. Note that this step may require user input. For example, when implementing a `brand-guidelines` skill, the user may need to provide brand assets or templates to store in `assets/`, or documentation to store in `references/`.
-
-Added scripts must be tested by actually running them to ensure there are no bugs and that the output matches what is expected. If there are many similar scripts, only a representative sample needs to be tested to ensure confidence that they all work while balancing time to completion.
-
-Any example files and directories not needed for the skill should be deleted. The initialization script creates example files in `scripts/`, `references/`, and `assets/` to demonstrate structure, but most skills won't need all of them.
-
-#### Update SKILL.md
-
-**Writing Guidelines:** Always use imperative/infinitive form.
-
-##### Frontmatter
-
-Write the YAML frontmatter with `name` and `description`:
-
-- `name`: The skill name
-- `description`: This is the primary triggering mechanism for your skill, and helps Claude understand when to use the skill.
-  - Include both what the Skill does and specific triggers/contexts for when to use it.
-  - Include all "when to use" information here - Not in the body. The body is only loaded after triggering, so "When to Use This Skill" sections in the body are not helpful to Claude.
-  - Example description for a `docx` skill: "Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. Use when Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks"
-
-Do not include any other fields in YAML frontmatter.
-
-##### Body
-
-Write instructions for using the skill and its bundled resources.
-
-### Step 5: Packaging a Skill
-
-Once development of the skill is complete, it must be packaged into a distributable .skill file that gets shared with the user. The packaging process automatically validates the skill first to ensure it meets all requirements:
-
-```bash
-scripts/package_skill.py <path/to/skill-folder>
-```
-
-Optional output directory specification:
-
-```bash
-scripts/package_skill.py <path/to/skill-folder> ./dist
-```
-
-The packaging script will:
-
-1. **Validate** the skill automatically, checking:
-
-   - YAML frontmatter format and required fields
-   - Skill naming conventions and directory structure
-   - Description completeness and quality
-   - File organization and resource references
-
-2. **Package** the skill if validation passes, creating a .skill file named after the skill (e.g., `my-skill.skill`) that includes all files and maintains the proper directory structure for distribution. The .skill file is a zip file with a .skill extension.
-
-If validation fails, the script will report the errors and exit without creating a package. Fix any validation errors and run the packaging command again.
-
-### Step 6: Iterate
-
-After testing the skill, users may request improvements. Often this happens right after using the skill, with fresh context of how the skill performed.
-
-**Iteration workflow:**
-
-1. Use the skill on real tasks
-2. Notice struggles or inefficiencies
-3. Identify how SKILL.md or bundled resources should be updated
-4. Implement changes and test again

+ 0 - 258
adapters-output/cursor/slack-gif-creator.md

@@ -1,258 +0,0 @@
-# Slack Gif Creator
-
-## Description
-Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like "make me a GIF of X doing Y for Slack.
-
-## When to Use
-Use this skill when the user asks about: Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like "make me a GIF of X doing Y for Slack.
-
-## Instructions
-
-# Slack GIF Creator
-
-A toolkit providing utilities and knowledge for creating animated GIFs optimized for Slack.
-
-## Slack Requirements
-
-**Dimensions:**
-- Emoji GIFs: 128x128 (recommended)
-- Message GIFs: 480x480
-
-**Parameters:**
-- FPS: 10-30 (lower is smaller file size)
-- Colors: 48-128 (fewer = smaller file size)
-- Duration: Keep under 3 seconds for emoji GIFs
-
-## Core Workflow
-
-```python
-from core.gif_builder import GIFBuilder
-from PIL import Image, ImageDraw
-
-# 1. Create builder
-builder = GIFBuilder(width=128, height=128, fps=10)
-
-# 2. Generate frames
-for i in range(12):
-    frame = Image.new('RGB', (128, 128), (240, 248, 255))
-    draw = ImageDraw.Draw(frame)
-
-    # Draw your animation using PIL primitives
-    # (circles, polygons, lines, etc.)
-
-    builder.add_frame(frame)
-
-# 3. Save with optimization
-builder.save('output.gif', num_colors=48, optimize_for_emoji=True)
-```
-
-## Drawing Graphics
-
-### Working with User-Uploaded Images
-If a user uploads an image, consider whether they want to:
-- **Use it directly** (e.g., "animate this", "split this into frames")
-- **Use it as inspiration** (e.g., "make something like this")
-
-Load and work with images using PIL:
-```python
-from PIL import Image
-
-uploaded = Image.open('file.png')
-# Use directly, or just as reference for colors/style
-```
-
-### Drawing from Scratch
-When drawing graphics from scratch, use PIL ImageDraw primitives:
-
-```python
-from PIL import ImageDraw
-
-draw = ImageDraw.Draw(frame)
-
-# Circles/ovals
-draw.ellipse([x1, y1, x2, y2], fill=(r, g, b), outline=(r, g, b), width=3)
-
-# Stars, triangles, any polygon
-points = [(x1, y1), (x2, y2), (x3, y3), ...]
-draw.polygon(points, fill=(r, g, b), outline=(r, g, b), width=3)
-
-# Lines
-draw.line([(x1, y1), (x2, y2)], fill=(r, g, b), width=5)
-
-# Rectangles
-draw.rectangle([x1, y1, x2, y2], fill=(r, g, b), outline=(r, g, b), width=3)
-```
-
-**Don't use:** Emoji fonts (unreliable across platforms) or assume pre-packaged graphics exist in this skill.
-
-### Making Graphics Look Good
-
-Graphics should look polished and creative, not basic. Here's how:
-
-**Use thicker lines** - Always set `width=2` or higher for outlines and lines. Thin lines (width=1) look choppy and amateurish.
-
-**Add visual depth**:
-- Use gradients for backgrounds (`create_gradient_background`)
-- Layer multiple shapes for complexity (e.g., a star with a smaller star inside)
-
-**Make shapes more interesting**:
-- Don't just draw a plain circle - add highlights, rings, or patterns
-- Stars can have glows (draw larger, semi-transparent versions behind)
-- Combine multiple shapes (stars + sparkles, circles + rings)
-
-**Pay attention to colors**:
-- Use vibrant, complementary colors
-- Add contrast (dark outlines on light shapes, light outlines on dark shapes)
-- Consider the overall composition
-
-**For complex shapes** (hearts, snowflakes, etc.):
-- Use combinations of polygons and ellipses
-- Calculate points carefully for symmetry
-- Add details (a heart can have a highlight curve, snowflakes have intricate branches)
-
-Be creative and detailed! A good Slack GIF should look polished, not like placeholder graphics.
-
-## Available Utilities
-
-### GIFBuilder (`core.gif_builder`)
-Assembles frames and optimizes for Slack:
-```python
-builder = GIFBuilder(width=128, height=128, fps=10)
-builder.add_frame(frame)  # Add PIL Image
-builder.add_frames(frames)  # Add list of frames
-builder.save('out.gif', num_colors=48, optimize_for_emoji=True, remove_duplicates=True)
-```
-
-### Validators (`core.validators`)
-Check if GIF meets Slack requirements:
-```python
-from core.validators import validate_gif, is_slack_ready
-
-# Detailed validation
-passes, info = validate_gif('my.gif', is_emoji=True, verbose=True)
-
-# Quick check
-if is_slack_ready('my.gif'):
-    print("Ready!")
-```
-
-### Easing Functions (`core.easing`)
-Smooth motion instead of linear:
-```python
-from core.easing import interpolate
-
-# Progress from 0.0 to 1.0
-t = i / (num_frames - 1)
-
-# Apply easing
-y = interpolate(start=0, end=400, t=t, easing='ease_out')
-
-# Available: linear, ease_in, ease_out, ease_in_out,
-#           bounce_out, elastic_out, back_out
-```
-
-### Frame Helpers (`core.frame_composer`)
-Convenience functions for common needs:
-```python
-from core.frame_composer import (
-    create_blank_frame,         # Solid color background
-    create_gradient_background,  # Vertical gradient
-    draw_circle,                # Helper for circles
-    draw_text,                  # Simple text rendering
-    draw_star                   # 5-pointed star
-)
-```
-
-## Animation Concepts
-
-### Shake/Vibrate
-Offset object position with oscillation:
-- Use `math.sin()` or `math.cos()` with frame index
-- Add small random variations for natural feel
-- Apply to x and/or y position
-
-### Pulse/Heartbeat
-Scale object size rhythmically:
-- Use `math.sin(t * frequency * 2 * math.pi)` for smooth pulse
-- For heartbeat: two quick pulses then pause (adjust sine wave)
-- Scale between 0.8 and 1.2 of base size
-
-### Bounce
-Object falls and bounces:
-- Use `interpolate()` with `easing='bounce_out'` for landing
-- Use `easing='ease_in'` for falling (accelerating)
-- Apply gravity by increasing y velocity each frame
-
-### Spin/Rotate
-Rotate object around center:
-- PIL: `image.rotate(angle, resample=Image.BICUBIC)`
-- For wobble: use sine wave for angle instead of linear
-
-### Fade In/Out
-Gradually appear or disappear:
-- Create RGBA image, adjust alpha channel
-- Or use `Image.blend(image1, image2, alpha)`
-- Fade in: alpha from 0 to 1
-- Fade out: alpha from 1 to 0
-
-### Slide
-Move object from off-screen to position:
-- Start position: outside frame bounds
-- End position: target location
-- Use `interpolate()` with `easing='ease_out'` for smooth stop
-- For overshoot: use `easing='back_out'`
-
-### Zoom
-Scale and position for zoom effect:
-- Zoom in: scale from 0.1 to 2.0, crop center
-- Zoom out: scale from 2.0 to 1.0
-- Can add motion blur for drama (PIL filter)
-
-### Explode/Particle Burst
-Create particles radiating outward:
-- Generate particles with random angles and velocities
-- Update each particle: `x += vx`, `y += vy`
-- Add gravity: `vy += gravity_constant`
-- Fade out particles over time (reduce alpha)
-
-## Optimization Strategies
-
-Only when asked to make the file size smaller, implement a few of the following methods:
-
-1. **Fewer frames** - Lower FPS (10 instead of 20) or shorter duration
-2. **Fewer colors** - `num_colors=48` instead of 128
-3. **Smaller dimensions** - 128x128 instead of 480x480
-4. **Remove duplicates** - `remove_duplicates=True` in save()
-5. **Emoji mode** - `optimize_for_emoji=True` auto-optimizes
-
-```python
-# Maximum optimization for emoji
-builder.save(
-    'emoji.gif',
-    num_colors=48,
-    optimize_for_emoji=True,
-    remove_duplicates=True
-)
-```
-
-## Philosophy
-
-This skill provides:
-- **Knowledge**: Slack's requirements and animation concepts
-- **Utilities**: GIFBuilder, validators, easing functions
-- **Flexibility**: Create the animation logic using PIL primitives
-
-It does NOT provide:
-- Rigid animation templates or pre-made functions
-- Emoji font rendering (unreliable across platforms)
-- A library of pre-packaged graphics built into the skill
-
-**Note on user uploads**: This skill doesn't include pre-built graphics, but if a user uploads an image, use PIL to load and work with it - interpret based on their request whether they want it used directly or just as inspiration.
-
-Be creative! Combine concepts (bouncing + rotating, pulsing + sliding, etc.) and use PIL's full capabilities.
-
-## Dependencies
-
-```bash
-pip install pillow imageio numpy
-```

+ 0 - 90
adapters-output/cursor/teaching-resource-generator.md

@@ -1,90 +0,0 @@
-# Teaching Resource Generator
-
-## Description
-帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。
-
-## When to Use
-Use this skill when the user asks about: 帮助生成各种教学资源,包括课件、练习题、教学案例、学习指南等。适用于快速创建高质量的教学材料。
-
-## Instructions
-
-# 教学资源生成技能
-
-## 概述
-
-本技能帮助您快速生成各种教学资源,包括课件、练习题、教学案例、学习指南等。
-
-**关键词**: 教学资源、课件制作、练习题、教学案例、学习指南、教学材料
-
-## 核心功能
-
-### 1. 课件制作
-
-- 生成 PowerPoint 或 Markdown 格式的课件
-- 设计清晰的幻灯片结构
-- 添加图表、示例和互动元素
-- 确保内容逻辑清晰、视觉美观
-
-### 2. 练习题生成
-
-- 生成各种类型的练习题
-- 设计不同难度级别的题目
-- 创建配套的答案和解析
-- 生成练习题集和测试卷
-
-### 3. 教学案例编写
-
-- 编写真实或模拟的教学案例
-- 设计案例讨论问题
-- 提供案例分析和解决方案
-- 创建案例库和案例集
-
-### 4. 学习指南创建
-
-- 编写学习指南和复习材料
-- 创建知识要点总结
-- 设计学习路径和计划
-- 生成学习检查清单
-
-## 使用指南
-
-### 课件制作流程
-
-1. **内容规划**: 确定课件主题和结构
-2. **内容生成**: 创建每张幻灯片的内容
-3. **视觉设计**: 添加图表、图片和视觉元素
-4. **互动设计**: 设计互动环节和讨论问题
-5. **优化完善**: 检查逻辑和视觉效果
-
-### 练习题生成原则
-
-- **多样性**: 使用多种题型
-- **层次性**: 覆盖不同难度级别
-- **针对性**: 针对具体知识点
-- **实用性**: 贴近实际应用场景
-
-### 教学案例要求
-
-- **真实性**: 基于真实或合理的场景
-- **典型性**: 具有代表性
-- **启发性**: 能引发思考和讨论
-- **完整性**: 包含背景、问题、分析、解决方案
-
-## 输出格式
-
-教学资源应包含:
-
-- **资源类型**: 明确资源类型(课件、练习题等)
-- **目标受众**: 适用对象和水平
-- **内容结构**: 清晰的目录和结构
-- **使用说明**: 如何使用该资源
-- **配套材料**: 相关的补充材料
-
-## 最佳实践
-
-- 确保内容准确、专业
-- 保持格式统一、美观
-- 注重实用性和可操作性
-- 考虑不同学习者的需求
-- 提供清晰的使用指导
-- 定期更新和完善资源

+ 0 - 91
adapters-output/cursor/test-writer.md

@@ -1,91 +0,0 @@
-# Test Writer
-
-## Description
-帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。
-
-## When to Use
-Use this skill when the user asks about: 帮助编写单元测试、集成测试和端到端测试。支持多种测试框架,生成测试用例、测试数据和测试报告。适用于确保代码质量和功能正确性。
-
-## Instructions
-
-# 测试编写技能
-
-## 概述
-
-本技能帮助您编写各种类型的测试,包括单元测试、集成测试和端到端测试。
-
-**关键词**: 测试编写、单元测试、集成测试、端到端测试、测试用例、测试框架
-
-## 核心功能
-
-### 1. 单元测试编写
-
-- 为函数和类编写单元测试
-- 设计测试用例覆盖各种场景
-- 使用 Mock 和 Stub 隔离依赖
-- 确保测试的独立性和可重复性
-
-### 2. 集成测试设计
-
-- 编写模块间的集成测试
-- 测试 API 接口和数据库交互
-- 验证系统组件的协作
-- 设计测试数据和测试环境
-
-### 3. 端到端测试
-
-- 编写完整的用户流程测试
-- 测试关键业务场景
-- 验证系统端到端的功能
-- 使用自动化测试工具
-
-### 4. 测试工具和框架
-
-- 支持主流测试框架(JUnit, pytest, Jest 等)
-- 生成测试报告和覆盖率报告
-- 创建测试配置和测试环境
-- 设计测试数据和 Fixture
-
-## 使用指南
-
-### 测试编写原则
-
-1. **全面性**: 覆盖正常流程、边界情况和异常情况
-2. **独立性**: 每个测试应独立运行,不依赖其他测试
-3. **可重复性**: 测试结果应一致,不受环境影响
-4. **清晰性**: 测试代码应清晰易懂
-5. **快速性**: 测试应快速执行
-
-### 测试用例设计
-
-- **正常场景**: 测试正常的功能流程
-- **边界情况**: 测试边界值和极限情况
-- **异常情况**: 测试错误处理和异常情况
-- **性能测试**: 测试性能和负载(如需要)
-
-### 测试覆盖率
-
-- 目标覆盖率: 80% 以上(根据项目需求)
-- 关键路径: 100% 覆盖
-- 边界情况: 重点覆盖
-- 异常处理: 确保覆盖
-
-## 输出格式
-
-测试代码应包含:
-
-- **测试文件**: 完整的测试代码文件
-- **测试用例**: 清晰的测试用例和描述
-- **测试数据**: 测试数据和 Fixture
-- **测试配置**: 测试配置文件
-- **测试报告**: 测试执行结果和覆盖率
-
-## 最佳实践
-
-- 使用 AAA 模式(Arrange-Act-Assert)
-- 测试名称应描述测试内容
-- 一个测试只测试一个功能点
-- 使用 Mock 隔离外部依赖
-- 保持测试代码简洁
-- 定期运行测试,确保通过
-- 关注测试覆盖率,但不盲目追求 100%

+ 0 - 62
adapters-output/cursor/theme-factory.md

@@ -1,62 +0,0 @@
-# Theme Factory
-
-## Description
-Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.
-
-## When to Use
-Use this skill when the user asks about: Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.
-
-## Instructions
-
-# Theme Factory Skill
-
-This skill provides a curated collection of professional font and color themes themes, each with carefully selected color palettes and font pairings. Once a theme is chosen, it can be applied to any artifact.
-
-## Purpose
-
-To apply consistent, professional styling to presentation slide decks, use this skill. Each theme includes:
-- A cohesive color palette with hex codes
-- Complementary font pairings for headers and body text
-- A distinct visual identity suitable for different contexts and audiences
-
-## Usage Instructions
-
-To apply styling to a slide deck or other artifact:
-
-1. **Show the theme showcase**: Display the `theme-showcase.pdf` file to allow users to see all available themes visually. Do not make any modifications to it; simply show the file for viewing.
-2. **Ask for their choice**: Ask which theme to apply to the deck
-3. **Wait for selection**: Get explicit confirmation about the chosen theme
-4. **Apply the theme**: Once a theme has been chosen, apply the selected theme's colors and fonts to the deck/artifact
-
-## Themes Available
-
-The following 10 themes are available, each showcased in `theme-showcase.pdf`:
-
-1. **Ocean Depths** - Professional and calming maritime theme
-2. **Sunset Boulevard** - Warm and vibrant sunset colors
-3. **Forest Canopy** - Natural and grounded earth tones
-4. **Modern Minimalist** - Clean and contemporary grayscale
-5. **Golden Hour** - Rich and warm autumnal palette
-6. **Arctic Frost** - Cool and crisp winter-inspired theme
-7. **Desert Rose** - Soft and sophisticated dusty tones
-8. **Tech Innovation** - Bold and modern tech aesthetic
-9. **Botanical Garden** - Fresh and organic garden colors
-10. **Midnight Galaxy** - Dramatic and cosmic deep tones
-
-## Theme Details
-
-Each theme is defined in the `themes/` directory with complete specifications including:
-- Cohesive color palette with hex codes
-- Complementary font pairings for headers and body text
-- Distinct visual identity suitable for different contexts and audiences
-
-## Application Process
-
-After a preferred theme is selected:
-1. Read the corresponding theme file from the `themes/` directory
-2. Apply the specified colors and fonts consistently throughout the deck
-3. Ensure proper contrast and readability
-4. Maintain the theme's visual identity across all slides
-
-## Create your Own Theme
-To handle cases where none of the existing themes work for an artifact, create a custom theme. Based on provided inputs, generate a new theme similar to the ones above. Give the theme a similar name describing what the font/color combinations represent. Use any basic description provided to choose appropriate colors/fonts. After generating the theme, show it for review and verification. Following that, apply the theme as described above.

+ 0 - 78
adapters-output/cursor/web-artifacts-builder.md

@@ -1,78 +0,0 @@
-# Web Artifacts Builder
-
-## Description
-Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
-
-## When to Use
-Use this skill when the user asks about: Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
-
-## Instructions
-
-# Web Artifacts Builder
-
-To build powerful frontend claude.ai artifacts, follow these steps:
-1. Initialize the frontend repo using `scripts/init-artifact.sh`
-2. Develop your artifact by editing the generated code
-3. Bundle all code into a single HTML file using `scripts/bundle-artifact.sh`
-4. Display artifact to user
-5. (Optional) Test the artifact
-
-**Stack**: React 18 + TypeScript + Vite + Parcel (bundling) + Tailwind CSS + shadcn/ui
-
-## Design & Style Guidelines
-
-VERY IMPORTANT: To avoid what is often referred to as "AI slop", avoid using excessive centered layouts, purple gradients, uniform rounded corners, and Inter font.
-
-## Quick Start
-
-### Step 1: Initialize Project
-
-Run the initialization script to create a new React project:
-```bash
-bash scripts/init-artifact.sh <project-name>
-cd <project-name>
-```
-
-This creates a fully configured project with:
-- ✅ React + TypeScript (via Vite)
-- ✅ Tailwind CSS 3.4.1 with shadcn/ui theming system
-- ✅ Path aliases (`@/`) configured
-- ✅ 40+ shadcn/ui components pre-installed
-- ✅ All Radix UI dependencies included
-- ✅ Parcel configured for bundling (via .parcelrc)
-- ✅ Node 18+ compatibility (auto-detects and pins Vite version)
-
-### Step 2: Develop Your Artifact
-
-To build the artifact, edit the generated files. See **Common Development Tasks** below for guidance.
-
-### Step 3: Bundle to Single HTML File
-
-To bundle the React app into a single HTML artifact:
-```bash
-bash scripts/bundle-artifact.sh
-```
-
-This creates `bundle.html` - a self-contained artifact with all JavaScript, CSS, and dependencies inlined. This file can be directly shared in Claude conversations as an artifact.
-
-**Requirements**: Your project must have an `index.html` in the root directory.
-
-**What the script does**:
-- Installs bundling dependencies (parcel, @parcel/config-default, parcel-resolver-tspaths, html-inline)
-- Creates `.parcelrc` config with path alias support
-- Builds with Parcel (no source maps)
-- Inlines all assets into single HTML using html-inline
-
-### Step 4: Share Artifact with User
-
-Finally, share the bundled HTML file in conversation with the user so they can view it as an artifact.
-
-### Step 5: Testing/Visualizing the Artifact (Optional)
-
-Note: This is a completely optional step. Only perform if necessary or requested.
-
-To test/visualize the artifact, use available tools (including other Skills or built-in tools like Playwright or Puppeteer). In general, avoid testing the artifact upfront as it adds latency between the request and when the finished artifact can be seen. Test later, after presenting the artifact, if requested or if issues arise.
-
-## Reference
-
-- **shadcn/ui components**: https://ui.shadcn.com/docs/components

+ 0 - 100
adapters-output/cursor/webapp-testing.md

@@ -1,100 +0,0 @@
-# Webapp Testing
-
-## Description
-Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
-
-## When to Use
-Use this skill when the user asks about: Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
-
-## Instructions
-
-# Web Application Testing
-
-To test local web applications, write native Python Playwright scripts.
-
-**Helper Scripts Available**:
-- `scripts/with_server.py` - Manages server lifecycle (supports multiple servers)
-
-**Always run scripts with `--help` first** to see usage. DO NOT read the source until you try running the script first and find that a customized solution is abslutely necessary. These scripts can be very large and thus pollute your context window. They exist to be called directly as black-box scripts rather than ingested into your context window.
-
-## Decision Tree: Choosing Your Approach
-
-```
-User task → Is it static HTML?
-    ├─ Yes → Read HTML file directly to identify selectors
-    │         ├─ Success → Write Playwright script using selectors
-    │         └─ Fails/Incomplete → Treat as dynamic (below)
-    │
-    └─ No (dynamic webapp) → Is the server already running?
-        ├─ No → Run: python scripts/with_server.py --help
-        │        Then use the helper + write simplified Playwright script
-        │
-        └─ Yes → Reconnaissance-then-action:
-            1. Navigate and wait for networkidle
-            2. Take screenshot or inspect DOM
-            3. Identify selectors from rendered state
-            4. Execute actions with discovered selectors
-```
-
-## Example: Using with_server.py
-
-To start a server, run `--help` first, then use the helper:
-
-**Single server:**
-```bash
-python scripts/with_server.py --server "npm run dev" --port 5173 -- python your_automation.py
-```
-
-**Multiple servers (e.g., backend + frontend):**
-```bash
-python scripts/with_server.py \
-  --server "cd backend && python server.py" --port 3000 \
-  --server "cd frontend && npm run dev" --port 5173 \
-  -- python your_automation.py
-```
-
-To create an automation script, include only Playwright logic (servers are managed automatically):
-```python
-from playwright.sync_api import sync_playwright
-
-with sync_playwright() as p:
-    browser = p.chromium.launch(headless=True) # Always launch chromium in headless mode
-    page = browser.new_page()
-    page.goto('http://localhost:5173') # Server already running and ready
-    page.wait_for_load_state('networkidle') # CRITICAL: Wait for JS to execute
-    # ... your automation logic
-    browser.close()
-```
-
-## Reconnaissance-Then-Action Pattern
-
-1. **Inspect rendered DOM**:
-   ```python
-   page.screenshot(path='/tmp/inspect.png', full_page=True)
-   content = page.content()
-   page.locator('button').all()
-   ```
-
-2. **Identify selectors** from inspection results
-
-3. **Execute actions** using discovered selectors
-
-## Common Pitfall
-
-❌ **Don't** inspect the DOM before waiting for `networkidle` on dynamic apps
-✅ **Do** wait for `page.wait_for_load_state('networkidle')` before inspection
-
-## Best Practices
-
-- **Use bundled scripts as black boxes** - To accomplish a task, consider whether one of the scripts available in `scripts/` can help. These scripts handle common, complex workflows reliably without cluttering the context window. Use `--help` to see usage, then invoke directly. 
-- Use `sync_playwright()` for synchronous scripts
-- Always close the browser when done
-- Use descriptive selectors: `text=`, `role=`, CSS selectors, or IDs
-- Add appropriate waits: `page.wait_for_selector()` or `page.wait_for_timeout()`
-
-## Reference Files
-
-- **examples/** - Examples showing common patterns:
-  - `element_discovery.py` - Discovering buttons, links, and inputs on a page
-  - `static_html_automation.py` - Using file:// URLs for local HTML
-  - `console_logging.py` - Capturing console logs during automation

+ 0 - 293
adapters-output/cursor/xlsx.md

@@ -1,293 +0,0 @@
-# Xlsx
-
-## Description
-Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas
-
-## When to Use
-Use this skill when the user asks about: Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas
-
-## Instructions
-
-# Requirements for Outputs
-
-## All Excel files
-
-### Zero Formula Errors
-- Every Excel model MUST be delivered with ZERO formula errors (#REF!, #DIV/0!, #VALUE!, #N/A, #NAME?)
-
-### Preserve Existing Templates (when updating templates)
-- Study and EXACTLY match existing format, style, and conventions when modifying files
-- Never impose standardized formatting on files with established patterns
-- Existing template conventions ALWAYS override these guidelines
-
-## Financial models
-
-### Color Coding Standards
-Unless otherwise stated by the user or existing template
-
-#### Industry-Standard Color Conventions
-- **Blue text (RGB: 0,0,255)**: Hardcoded inputs, and numbers users will change for scenarios
-- **Black text (RGB: 0,0,0)**: ALL formulas and calculations
-- **Green text (RGB: 0,128,0)**: Links pulling from other worksheets within same workbook
-- **Red text (RGB: 255,0,0)**: External links to other files
-- **Yellow background (RGB: 255,255,0)**: Key assumptions needing attention or cells that need to be updated
-
-### Number Formatting Standards
-
-#### Required Format Rules
-- **Years**: Format as text strings (e.g., "2024" not "2,024")
-- **Currency**: Use $#,##0 format; ALWAYS specify units in headers ("Revenue ($mm)")
-- **Zeros**: Use number formatting to make all zeros "-", including percentages (e.g., "$#,##0;($#,##0);-")
-- **Percentages**: Default to 0.0% format (one decimal)
-- **Multiples**: Format as 0.0x for valuation multiples (EV/EBITDA, P/E)
-- **Negative numbers**: Use parentheses (123) not minus -123
-
-### Formula Construction Rules
-
-#### Assumptions Placement
-- Place ALL assumptions (growth rates, margins, multiples, etc.) in separate assumption cells
-- Use cell references instead of hardcoded values in formulas
-- Example: Use =B5*(1+$B$6) instead of =B5*1.05
-
-#### Formula Error Prevention
-- Verify all cell references are correct
-- Check for off-by-one errors in ranges
-- Ensure consistent formulas across all projection periods
-- Test with edge cases (zero values, negative numbers)
-- Verify no unintended circular references
-
-#### Documentation Requirements for Hardcodes
-- Comment or in cells beside (if end of table). Format: "Source: [System/Document], [Date], [Specific Reference], [URL if applicable]"
-- Examples:
-  - "Source: Company 10-K, FY2024, Page 45, Revenue Note, [SEC EDGAR URL]"
-  - "Source: Company 10-Q, Q2 2025, Exhibit 99.1, [SEC EDGAR URL]"
-  - "Source: Bloomberg Terminal, 8/15/2025, AAPL US Equity"
-  - "Source: FactSet, 8/20/2025, Consensus Estimates Screen"
-
-# XLSX creation, editing, and analysis
-
-## Overview
-
-A user may ask you to create, edit, or analyze the contents of an .xlsx file. You have different tools and workflows available for different tasks.
-
-## Important Requirements
-
-**LibreOffice Required for Formula Recalculation**: You can assume LibreOffice is installed for recalculating formula values using the `recalc.py` script. The script automatically configures LibreOffice on first run
-
-## Reading and analyzing data
-
-### Data analysis with pandas
-For data analysis, visualization, and basic operations, use **pandas** which provides powerful data manipulation capabilities:
-
-```python
-import pandas as pd
-
-# Read Excel
-df = pd.read_excel('file.xlsx')  # Default: first sheet
-all_sheets = pd.read_excel('file.xlsx', sheet_name=None)  # All sheets as dict
-
-# Analyze
-df.head()      # Preview data
-df.info()      # Column info
-df.describe()  # Statistics
-
-# Write Excel
-df.to_excel('output.xlsx', index=False)
-```
-
-## Excel File Workflows
-
-## CRITICAL: Use Formulas, Not Hardcoded Values
-
-**Always use Excel formulas instead of calculating values in Python and hardcoding them.** This ensures the spreadsheet remains dynamic and updateable.
-
-### ❌ WRONG - Hardcoding Calculated Values
-```python
-# Bad: Calculating in Python and hardcoding result
-total = df['Sales'].sum()
-sheet['B10'] = total  # Hardcodes 5000
-
-# Bad: Computing growth rate in Python
-growth = (df.iloc[-1]['Revenue'] - df.iloc[0]['Revenue']) / df.iloc[0]['Revenue']
-sheet['C5'] = growth  # Hardcodes 0.15
-
-# Bad: Python calculation for average
-avg = sum(values) / len(values)
-sheet['D20'] = avg  # Hardcodes 42.5
-```
-
-### ✅ CORRECT - Using Excel Formulas
-```python
-# Good: Let Excel calculate the sum
-sheet['B10'] = '=SUM(B2:B9)'
-
-# Good: Growth rate as Excel formula
-sheet['C5'] = '=(C4-C2)/C2'
-
-# Good: Average using Excel function
-sheet['D20'] = '=AVERAGE(D2:D19)'
-```
-
-This applies to ALL calculations - totals, percentages, ratios, differences, etc. The spreadsheet should be able to recalculate when source data changes.
-
-## Common Workflow
-1. **Choose tool**: pandas for data, openpyxl for formulas/formatting
-2. **Create/Load**: Create new workbook or load existing file
-3. **Modify**: Add/edit data, formulas, and formatting
-4. **Save**: Write to file
-5. **Recalculate formulas (MANDATORY IF USING FORMULAS)**: Use the recalc.py script
-   ```bash
-   python recalc.py output.xlsx
-   ```
-6. **Verify and fix any errors**: 
-   - The script returns JSON with error details
-   - If `status` is `errors_found`, check `error_summary` for specific error types and locations
-   - Fix the identified errors and recalculate again
-   - Common errors to fix:
-     - `#REF!`: Invalid cell references
-     - `#DIV/0!`: Division by zero
-     - `#VALUE!`: Wrong data type in formula
-     - `#NAME?`: Unrecognized formula name
-
-### Creating new Excel files
-
-```python
-# Using openpyxl for formulas and formatting
-from openpyxl import Workbook
-from openpyxl.styles import Font, PatternFill, Alignment
-
-wb = Workbook()
-sheet = wb.active
-
-# Add data
-sheet['A1'] = 'Hello'
-sheet['B1'] = 'World'
-sheet.append(['Row', 'of', 'data'])
-
-# Add formula
-sheet['B2'] = '=SUM(A1:A10)'
-
-# Formatting
-sheet['A1'].font = Font(bold=True, color='FF0000')
-sheet['A1'].fill = PatternFill('solid', start_color='FFFF00')
-sheet['A1'].alignment = Alignment(horizontal='center')
-
-# Column width
-sheet.column_dimensions['A'].width = 20
-
-wb.save('output.xlsx')
-```
-
-### Editing existing Excel files
-
-```python
-# Using openpyxl to preserve formulas and formatting
-from openpyxl import load_workbook
-
-# Load existing file
-wb = load_workbook('existing.xlsx')
-sheet = wb.active  # or wb['SheetName'] for specific sheet
-
-# Working with multiple sheets
-for sheet_name in wb.sheetnames:
-    sheet = wb[sheet_name]
-    print(f"Sheet: {sheet_name}")
-
-# Modify cells
-sheet['A1'] = 'New Value'
-sheet.insert_rows(2)  # Insert row at position 2
-sheet.delete_cols(3)  # Delete column 3
-
-# Add new sheet
-new_sheet = wb.create_sheet('NewSheet')
-new_sheet['A1'] = 'Data'
-
-wb.save('modified.xlsx')
-```
-
-## Recalculating formulas
-
-Excel files created or modified by openpyxl contain formulas as strings but not calculated values. Use the provided `recalc.py` script to recalculate formulas:
-
-```bash
-python recalc.py <excel_file> [timeout_seconds]
-```
-
-Example:
-```bash
-python recalc.py output.xlsx 30
-```
-
-The script:
-- Automatically sets up LibreOffice macro on first run
-- Recalculates all formulas in all sheets
-- Scans ALL cells for Excel errors (#REF!, #DIV/0!, etc.)
-- Returns JSON with detailed error locations and counts
-- Works on both Linux and macOS
-
-## Formula Verification Checklist
-
-Quick checks to ensure formulas work correctly:
-
-### Essential Verification
-- [ ] **Test 2-3 sample references**: Verify they pull correct values before building full model
-- [ ] **Column mapping**: Confirm Excel columns match (e.g., column 64 = BL, not BK)
-- [ ] **Row offset**: Remember Excel rows are 1-indexed (DataFrame row 5 = Excel row 6)
-
-### Common Pitfalls
-- [ ] **NaN handling**: Check for null values with `pd.notna()`
-- [ ] **Far-right columns**: FY data often in columns 50+ 
-- [ ] **Multiple matches**: Search all occurrences, not just first
-- [ ] **Division by zero**: Check denominators before using `/` in formulas (#DIV/0!)
-- [ ] **Wrong references**: Verify all cell references point to intended cells (#REF!)
-- [ ] **Cross-sheet references**: Use correct format (Sheet1!A1) for linking sheets
-
-### Formula Testing Strategy
-- [ ] **Start small**: Test formulas on 2-3 cells before applying broadly
-- [ ] **Verify dependencies**: Check all cells referenced in formulas exist
-- [ ] **Test edge cases**: Include zero, negative, and very large values
-
-### Interpreting recalc.py Output
-The script returns JSON with error details:
-```json
-{
-  "status": "success",           // or "errors_found"
-  "total_errors": 0,              // Total error count
-  "total_formulas": 42,           // Number of formulas in file
-  "error_summary": {              // Only present if errors found
-    "#REF!": {
-      "count": 2,
-      "locations": ["Sheet1!B5", "Sheet1!C10"]
-    }
-  }
-}
-```
-
-## Best Practices
-
-### Library Selection
-- **pandas**: Best for data analysis, bulk operations, and simple data export
-- **openpyxl**: Best for complex formatting, formulas, and Excel-specific features
-
-### Working with openpyxl
-- Cell indices are 1-based (row=1, column=1 refers to cell A1)
-- Use `data_only=True` to read calculated values: `load_workbook('file.xlsx', data_only=True)`
-- **Warning**: If opened with `data_only=True` and saved, formulas are replaced with values and permanently lost
-- For large files: Use `read_only=True` for reading or `write_only=True` for writing
-- Formulas are preserved but not evaluated - use recalc.py to update values
-
-### Working with pandas
-- Specify data types to avoid inference issues: `pd.read_excel('file.xlsx', dtype={'id': str})`
-- For large files, read specific columns: `pd.read_excel('file.xlsx', usecols=['A', 'C', 'E'])`
-- Handle dates properly: `pd.read_excel('file.xlsx', parse_dates=['date_column'])`
-
-## Code Style Guidelines
-**IMPORTANT**: When generating Python code for Excel operations:
-- Write minimal, concise Python code without unnecessary comments
-- Avoid verbose variable names and redundant operations
-- Avoid unnecessary print statements
-
-**For Excel files themselves**:
-- Add comments to cells with complex formulas or important assumptions
-- Document data sources for hardcoded values
-- Include notes for key calculations and model sections

+ 0 - 188
adapters-output/cursor/zh-product-doc-generator.md

@@ -1,188 +0,0 @@
-# Zh Product Doc Generator
-
-## Description
-基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。
-
-## When to Use
-Use this skill when the user asks about: 基于标准模板快速生成项目文档,包括产品调研、需求分析、PRD、架构设计、技术文档等13种项目交付文档模板。适用于软件开发项目的全生命周期文档生成。
-
-## Instructions
-
-# 项目文档生成技能
-
-## 概述
-
-本技能提供了一套完整的项目文档模板集合,帮助快速生成软件开发项目所需的各种文档。模板基于 DDD(领域驱动设计)和 COLA 架构思想,适用于从产品调研到项目运维的全生命周期。
-
-**关键词**: 项目文档、PRD、需求文档、架构设计、技术文档、项目模板、文档生成、产品文档
-
-## 核心功能
-
-### 1. 产品阶段文档
-
-- **产品调研模板** - 市场调研、用户调研、竞品分析
-- **需求调研模板** - 需求收集、用户访谈、需求整理
-- **技术调研模板** - 技术选型、技术可行性分析、技术对比
-- **需求分析模板** - 需求拆解、优先级排序、需求评审
-
-### 2. 设计阶段文档
-
-- **PRD文档模板** - 产品需求文档,包含功能需求、用户故事、验收标准
-- **视觉与交互 DNA 规范模板** - 设计语言、交互规范、视觉规范
-- **UI 设计说明模板** - UI设计规范、组件库、设计系统
-
-### 3. 技术设计文档
-
-- **领域模型说明模板** - DDD领域模型、实体、值对象、聚合
-- **系统架构设计模板** - 技术架构、系统架构、部署架构
-- **技术细分模板** - 接口设计、数据库设计、技术实现细节
-
-### 4. 测试与交付文档
-
-- **功能提测模板** - 提测清单、测试环境、测试范围
-- **测试结果模板** - 测试报告、缺陷统计、测试结论
-- **上线通知模板** - 上线计划、上线检查清单、回滚方案
-- **项目运维模板** - 运维手册、监控告警、故障处理
-
-## 使用指南
-
-### 快速生成文档
-
-1. **指定文档类型**
-   ```
-   使用项目文档生成技能,帮我生成一个 PRD 文档
-   ```
-
-2. **指定项目信息**
-   ```
-   基于模板生成系统架构设计文档,项目名称是 TeachingAI 教学平台
-   ```
-
-3. **批量生成文档**
-   ```
-   为我的项目生成全套文档,包括 PRD、架构设计、技术文档
-   ```
-
-### 模板使用说明
-
-所有模板文件位于 `templates/` 目录下,包含以下14个模板:
-
-1. `1、产品调研模板.md` - 产品调研阶段文档
-2. `2、需求调研模板.md` - 需求调研阶段文档
-3. `3、技术调研模板.md` - 技术调研阶段文档(技术选型、技术可行性分析)
-4. `4、需求分析模板.md` - 需求分析阶段文档
-5. `5、PRD文档模板.md` - 产品需求文档
-6. `6、视觉与交互 DNA 规范模板.md` - 设计规范文档
-7. `7、UI 设计说明模板.md` - UI设计文档
-8. `8、领域模型说明模板.md` - 领域模型文档
-9. `9、系统架构设计模板.md` - 系统架构文档
-10. `10、技术细分模板.md` - 技术实现文档
-11. `11、功能提测模板.md` - 提测文档
-12. `12、测试结果模板.md` - 测试报告
-13. `13、上线通知模板.md` - 上线文档
-14. `14、项目运维模板.md` - 运维文档
-
-### 模板占位符说明
-
-模板中使用 `{}` 包裹的内容为占位符,需要替换为实际内容:
-
-- `{产品名称}` - 产品名称
-- `{项目名称}` - 项目名称
-- `{YYYY-MM-DD}` - 日期格式
-- `{姓名}` - 人员姓名
-- 其他 `{}` 包裹的内容 - 根据上下文替换
-
-### 文档生成流程
-
-1. **选择模板**
-   - 根据项目阶段选择合适的模板
-   - 可以同时使用多个模板生成完整文档集
-
-2. **填写占位符**
-   - 替换模板中的 `{}` 占位符
-   - 根据项目实际情况填写内容
-
-3. **定制化调整**
-   - 根据项目特点调整模板结构
-   - 添加或删除不需要的章节
-
-4. **文档评审**
-   - 与团队评审文档内容
-   - 根据反馈调整和完善
-
-## 使用示例
-
-### 示例 1: 生成 PRD 文档
-
-```
-用户: 使用项目文档生成技能,帮我生成一个 PRD 文档,产品名称是"智能教学助手"
-
-AI: 我将基于 PRD 文档模板为您生成产品需求文档...
-```
-
-### 示例 2: 生成架构设计文档
-
-```
-用户: 基于模板生成系统架构设计文档,项目名称是 TeachingAI 教学平台,使用 Spring Boot 和 Vue 3
-
-AI: 我将基于系统架构设计模板为您生成架构文档...
-```
-
-### 示例 3: 生成完整文档集
-
-```
-用户: 为我的新项目生成全套文档,包括产品调研、PRD、架构设计和技术文档
-
-AI: 我将为您生成以下文档:
-1. 产品调研文档
-2. PRD 文档
-3. 系统架构设计文档
-4. 技术细分文档
-...
-```
-
-## 模板特点
-
-### 1. 标准化结构
-
-- 统一的文档格式和结构
-- 清晰的章节划分
-- 完整的版本记录
-
-### 2. DDD 和 COLA 架构
-
-- 基于领域驱动设计思想
-- 遵循 COLA 架构原则
-- 支持微服务架构设计
-
-### 3. 全生命周期覆盖
-
-- 从产品调研到项目运维
-- 涵盖所有关键阶段
-- 文档之间相互关联
-
-### 4. 易于定制
-
-- 使用占位符便于替换
-- 结构清晰便于调整
-- 支持项目特定需求
-
-## 注意事项
-
-1. **占位符替换**: 确保所有 `{}` 占位符都被正确替换
-2. **文档关联**: 注意文档之间的关联关系,保持一致性
-3. **版本管理**: 使用版本记录表跟踪文档变更
-4. **团队协作**: 明确文档责任人,确保文档质量
-5. **持续更新**: 根据项目进展及时更新文档内容
-
-## 相关技能
-
-- `documentation-builder` - 通用文档构建技能
-- `code-generator` - 代码生成技能
-- `mcp-builder` - MCP 构建器技能
-
-## 参考资源
-
-- [DDD 领域驱动设计](https://domainlanguage.com/ddd/)
-- [COLA 架构](https://github.com/alibaba/COLA)
-- [产品文档最佳实践](https://www.atlassian.com/software/confluence)

+ 0 - 405
adapters-output/qoder/algorithmic-art-agent/SKILL.md

@@ -1,405 +0,0 @@
----
-name: algorithmic-art
-description: Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
-license: Complete terms in LICENSE.txt
----
-
-Algorithmic philosophies are computational aesthetic movements that are then expressed through code. Output .md files (philosophy), .html files (interactive viewer), and .js files (generative algorithms).
-
-This happens in two steps:
-1. Algorithmic Philosophy Creation (.md file)
-2. Express by creating p5.js generative art (.html + .js files)
-
-First, undertake this task:
-
-## ALGORITHMIC PHILOSOPHY CREATION
-
-To begin, create an ALGORITHMIC PHILOSOPHY (not static images or templates) that will be interpreted through:
-- Computational processes, emergent behavior, mathematical beauty
-- Seeded randomness, noise fields, organic systems
-- Particles, flows, fields, forces
-- Parametric variation and controlled chaos
-
-### THE CRITICAL UNDERSTANDING
-- What is received: Some subtle input or instructions by the user to take into account, but use as a foundation; it should not constrain creative freedom.
-- What is created: An algorithmic philosophy/generative aesthetic movement.
-- What happens next: The same version receives the philosophy and EXPRESSES IT IN CODE - creating p5.js sketches that are 90% algorithmic generation, 10% essential parameters.
-
-Consider this approach:
-- Write a manifesto for a generative art movement
-- The next phase involves writing the algorithm that brings it to life
-
-The philosophy must emphasize: Algorithmic expression. Emergent behavior. Computational beauty. Seeded variation.
-
-### HOW TO GENERATE AN ALGORITHMIC PHILOSOPHY
-
-**Name the movement** (1-2 words): "Organic Turbulence" / "Quantum Harmonics" / "Emergent Stillness"
-
-**Articulate the philosophy** (4-6 paragraphs - concise but complete):
-
-To capture the ALGORITHMIC essence, express how this philosophy manifests through:
-- Computational processes and mathematical relationships?
-- Noise functions and randomness patterns?
-- Particle behaviors and field dynamics?
-- Temporal evolution and system states?
-- Parametric variation and emergent complexity?
-
-**CRITICAL GUIDELINES:**
-- **Avoid redundancy**: Each algorithmic aspect should be mentioned once. Avoid repeating concepts about noise theory, particle dynamics, or mathematical principles unless adding new depth.
-- **Emphasize craftsmanship REPEATEDLY**: The philosophy MUST stress multiple times that the final algorithm should appear as though it took countless hours to develop, was refined with care, and comes from someone at the absolute top of their field. This framing is essential - repeat phrases like "meticulously crafted algorithm," "the product of deep computational expertise," "painstaking optimization," "master-level implementation."
-- **Leave creative space**: Be specific about the algorithmic direction, but concise enough that the next Claude has room to make interpretive implementation choices at an extremely high level of craftsmanship.
-
-The philosophy must guide the next version to express ideas ALGORITHMICALLY, not through static images. Beauty lives in the process, not the final frame.
-
-### PHILOSOPHY EXAMPLES
-
-**"Organic Turbulence"**
-Philosophy: Chaos constrained by natural law, order emerging from disorder.
-Algorithmic expression: Flow fields driven by layered Perlin noise. Thousands of particles following vector forces, their trails accumulating into organic density maps. Multiple noise octaves create turbulent regions and calm zones. Color emerges from velocity and density - fast particles burn bright, slow ones fade to shadow. The algorithm runs until equilibrium - a meticulously tuned balance where every parameter was refined through countless iterations by a master of computational aesthetics.
-
-**"Quantum Harmonics"**
-Philosophy: Discrete entities exhibiting wave-like interference patterns.
-Algorithmic expression: Particles initialized on a grid, each carrying a phase value that evolves through sine waves. When particles are near, their phases interfere - constructive interference creates bright nodes, destructive creates voids. Simple harmonic motion generates complex emergent mandalas. The result of painstaking frequency calibration where every ratio was carefully chosen to produce resonant beauty.
-
-**"Recursive Whispers"**
-Philosophy: Self-similarity across scales, infinite depth in finite space.
-Algorithmic expression: Branching structures that subdivide recursively. Each branch slightly randomized but constrained by golden ratios. L-systems or recursive subdivision generate tree-like forms that feel both mathematical and organic. Subtle noise perturbations break perfect symmetry. Line weights diminish with each recursion level. Every branching angle the product of deep mathematical exploration.
-
-**"Field Dynamics"**
-Philosophy: Invisible forces made visible through their effects on matter.
-Algorithmic expression: Vector fields constructed from mathematical functions or noise. Particles born at edges, flowing along field lines, dying when they reach equilibrium or boundaries. Multiple fields can attract, repel, or rotate particles. The visualization shows only the traces - ghost-like evidence of invisible forces. A computational dance meticulously choreographed through force balance.
-
-**"Stochastic Crystallization"**
-Philosophy: Random processes crystallizing into ordered structures.
-Algorithmic expression: Randomized circle packing or Voronoi tessellation. Start with random points, let them evolve through relaxation algorithms. Cells push apart until equilibrium. Color based on cell size, neighbor count, or distance from center. The organic tiling that emerges feels both random and inevitable. Every seed produces unique crystalline beauty - the mark of a master-level generative algorithm.
-
-*These are condensed examples. The actual algorithmic philosophy should be 4-6 substantial paragraphs.*
-
-### ESSENTIAL PRINCIPLES
-- **ALGORITHMIC PHILOSOPHY**: Creating a computational worldview to be expressed through code
-- **PROCESS OVER PRODUCT**: Always emphasize that beauty emerges from the algorithm's execution - each run is unique
-- **PARAMETRIC EXPRESSION**: Ideas communicate through mathematical relationships, forces, behaviors - not static composition
-- **ARTISTIC FREEDOM**: The next Claude interprets the philosophy algorithmically - provide creative implementation room
-- **PURE GENERATIVE ART**: This is about making LIVING ALGORITHMS, not static images with randomness
-- **EXPERT CRAFTSMANSHIP**: Repeatedly emphasize the final algorithm must feel meticulously crafted, refined through countless iterations, the product of deep expertise by someone at the absolute top of their field in computational aesthetics
-
-**The algorithmic philosophy should be 4-6 paragraphs long.** Fill it with poetic computational philosophy that brings together the intended vision. Avoid repeating the same points. Output this algorithmic philosophy as a .md file.
-
----
-
-## DEDUCING THE CONCEPTUAL SEED
-
-**CRITICAL STEP**: Before implementing the algorithm, identify the subtle conceptual thread from the original request.
-
-**THE ESSENTIAL PRINCIPLE**:
-The concept is a **subtle, niche reference embedded within the algorithm itself** - not always literal, always sophisticated. Someone familiar with the subject should feel it intuitively, while others simply experience a masterful generative composition. The algorithmic philosophy provides the computational language. The deduced concept provides the soul - the quiet conceptual DNA woven invisibly into parameters, behaviors, and emergence patterns.
-
-This is **VERY IMPORTANT**: The reference must be so refined that it enhances the work's depth without announcing itself. Think like a jazz musician quoting another song through algorithmic harmony - only those who know will catch it, but everyone appreciates the generative beauty.
-
----
-
-## P5.JS IMPLEMENTATION
-
-With the philosophy AND conceptual framework established, express it through code. Pause to gather thoughts before proceeding. Use only the algorithmic philosophy created and the instructions below.
-
-### ⚠️ STEP 0: READ THE TEMPLATE FIRST ⚠️
-
-**CRITICAL: BEFORE writing any HTML:**
-
-1. **Read** `templates/viewer.html` using the Read tool
-2. **Study** the exact structure, styling, and Anthropic branding
-3. **Use that file as the LITERAL STARTING POINT** - not just inspiration
-4. **Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)
-5. **Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)
-
-**Avoid:**
-- ❌ Creating HTML from scratch
-- ❌ Inventing custom styling or color schemes
-- ❌ Using system fonts or dark themes
-- ❌ Changing the sidebar structure
-
-**Follow these practices:**
-- ✅ Copy the template's exact HTML structure
-- ✅ Keep Anthropic branding (Poppins/Lora fonts, light colors, gradient backdrop)
-- ✅ Maintain the sidebar layout (Seed → Parameters → Colors? → Actions)
-- ✅ Replace only the p5.js algorithm and parameter controls
-
-The template is the foundation. Build on it, don't rebuild it.
-
----
-
-To create gallery-quality computational art that lives and breathes, use the algorithmic philosophy as the foundation.
-
-### TECHNICAL REQUIREMENTS
-
-**Seeded Randomness (Art Blocks Pattern)**:
-```javascript
-// ALWAYS use a seed for reproducibility
-let seed = 12345; // or hash from user input
-randomSeed(seed);
-noiseSeed(seed);
-```
-
-**Parameter Structure - FOLLOW THE PHILOSOPHY**:
-
-To establish parameters that emerge naturally from the algorithmic philosophy, consider: "What qualities of this system can be adjusted?"
-
-```javascript
-let params = {
-  seed: 12345,  // Always include seed for reproducibility
-  // colors
-  // Add parameters that control YOUR algorithm:
-  // - Quantities (how many?)
-  // - Scales (how big? how fast?)
-  // - Probabilities (how likely?)
-  // - Ratios (what proportions?)
-  // - Angles (what direction?)
-  // - Thresholds (when does behavior change?)
-};
-```
-
-**To design effective parameters, focus on the properties the system needs to be tunable rather than thinking in terms of "pattern types".**
-
-**Core Algorithm - EXPRESS THE PHILOSOPHY**:
-
-**CRITICAL**: The algorithmic philosophy should dictate what to build.
-
-To express the philosophy through code, avoid thinking "which pattern should I use?" and instead think "how to express this philosophy through code?"
-
-If the philosophy is about **organic emergence**, consider using:
-- Elements that accumulate or grow over time
-- Random processes constrained by natural rules
-- Feedback loops and interactions
-
-If the philosophy is about **mathematical beauty**, consider using:
-- Geometric relationships and ratios
-- Trigonometric functions and harmonics
-- Precise calculations creating unexpected patterns
-
-If the philosophy is about **controlled chaos**, consider using:
-- Random variation within strict boundaries
-- Bifurcation and phase transitions
-- Order emerging from disorder
-
-**The algorithm flows from the philosophy, not from a menu of options.**
-
-To guide the implementation, let the conceptual essence inform creative and original choices. Build something that expresses the vision for this particular request.
-
-**Canvas Setup**: Standard p5.js structure:
-```javascript
-function setup() {
-  createCanvas(1200, 1200);
-  // Initialize your system
-}
-
-function draw() {
-  // Your generative algorithm
-  // Can be static (noLoop) or animated
-}
-```
-
-### CRAFTSMANSHIP REQUIREMENTS
-
-**CRITICAL**: To achieve mastery, create algorithms that feel like they emerged through countless iterations by a master generative artist. Tune every parameter carefully. Ensure every pattern emerges with purpose. This is NOT random noise - this is CONTROLLED CHAOS refined through deep expertise.
-
-- **Balance**: Complexity without visual noise, order without rigidity
-- **Color Harmony**: Thoughtful palettes, not random RGB values
-- **Composition**: Even in randomness, maintain visual hierarchy and flow
-- **Performance**: Smooth execution, optimized for real-time if animated
-- **Reproducibility**: Same seed ALWAYS produces identical output
-
-### OUTPUT FORMAT
-
-Output:
-1. **Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic
-2. **Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)
-
-The HTML artifact contains everything: p5.js (from CDN), the algorithm, parameter controls, and UI - all in one file that works immediately in claude.ai artifacts or any browser. Start from the template file, not from scratch.
-
----
-
-## INTERACTIVE ARTIFACT CREATION
-
-**REMINDER: `templates/viewer.html` should have already been read (see STEP 0). Use that file as the starting point.**
-
-To allow exploration of the generative art, create a single, self-contained HTML artifact. Ensure this artifact works immediately in claude.ai or any browser - no setup required. Embed everything inline.
-
-### CRITICAL: WHAT'S FIXED VS VARIABLE
-
-The `templates/viewer.html` file is the foundation. It contains the exact structure and styling needed.
-
-**FIXED (always include exactly as shown):**
-- Layout structure (header, sidebar, main canvas area)
-- Anthropic branding (UI colors, fonts, gradients)
-- Seed section in sidebar:
-  - Seed display
-  - Previous/Next buttons
-  - Random button
-  - Jump to seed input + Go button
-- Actions section in sidebar:
-  - Regenerate button
-  - Reset button
-
-**VARIABLE (customize for each artwork):**
-- The entire p5.js algorithm (setup/draw/classes)
-- The parameters object (define what the art needs)
-- The Parameters section in sidebar:
-  - Number of parameter controls
-  - Parameter names
-  - Min/max/step values for sliders
-  - Control types (sliders, inputs, etc.)
-- Colors section (optional):
-  - Some art needs color pickers
-  - Some art might use fixed colors
-  - Some art might be monochrome (no color controls needed)
-  - Decide based on the art's needs
-
-**Every artwork should have unique parameters and algorithm!** The fixed parts provide consistent UX - everything else expresses the unique vision.
-
-### REQUIRED FEATURES
-
-**1. Parameter Controls**
-- Sliders for numeric parameters (particle count, noise scale, speed, etc.)
-- Color pickers for palette colors
-- Real-time updates when parameters change
-- Reset button to restore defaults
-
-**2. Seed Navigation**
-- Display current seed number
-- "Previous" and "Next" buttons to cycle through seeds
-- "Random" button for random seed
-- Input field to jump to specific seed
-- Generate 100 variations when requested (seeds 1-100)
-
-**3. Single Artifact Structure**
-```html
-<!DOCTYPE html>
-<html>
-<head>
-  <!-- p5.js from CDN - always available -->
-  <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script>
-  <style>
-    /* All styling inline - clean, minimal */
-    /* Canvas on top, controls below */
-  </style>
-</head>
-<body>
-  <div id="canvas-container"></div>
-  <div id="controls">
-    <!-- All parameter controls -->
-  </div>
-  <script>
-    // ALL p5.js code inline here
-    // Parameter objects, classes, functions
-    // setup() and draw()
-    // UI handlers
-    // Everything self-contained
-  </script>
-</body>
-</html>
-```
-
-**CRITICAL**: This is a single artifact. No external files, no imports (except p5.js CDN). Everything inline.
-
-**4. Implementation Details - BUILD THE SIDEBAR**
-
-The sidebar structure:
-
-**1. Seed (FIXED)** - Always include exactly as shown:
-- Seed display
-- Prev/Next/Random/Jump buttons
-
-**2. Parameters (VARIABLE)** - Create controls for the art:
-```html
-<div class="control-group">
-    <label>Parameter Name</label>
-    <input type="range" id="param" min="..." max="..." step="..." value="..." oninput="updateParam('param', this.value)">
-    <span class="value-display" id="param-value">...</span>
-</div>
-```
-Add as many control-group divs as there are parameters.
-
-**3. Colors (OPTIONAL/VARIABLE)** - Include if the art needs adjustable colors:
-- Add color pickers if users should control palette
-- Skip this section if the art uses fixed colors
-- Skip if the art is monochrome
-
-**4. Actions (FIXED)** - Always include exactly as shown:
-- Regenerate button
-- Reset button
-- Download PNG button
-
-**Requirements**:
-- Seed controls must work (prev/next/random/jump/display)
-- All parameters must have UI controls
-- Regenerate, Reset, Download buttons must work
-- Keep Anthropic branding (UI styling, not art colors)
-
-### USING THE ARTIFACT
-
-The HTML artifact works immediately:
-1. **In claude.ai**: Displayed as an interactive artifact - runs instantly
-2. **As a file**: Save and open in any browser - no server needed
-3. **Sharing**: Send the HTML file - it's completely self-contained
-
----
-
-## VARIATIONS & EXPLORATION
-
-The artifact includes seed navigation by default (prev/next/random buttons), allowing users to explore variations without creating multiple files. If the user wants specific variations highlighted:
-
-- Include seed presets (buttons for "Variation 1: Seed 42", "Variation 2: Seed 127", etc.)
-- Add a "Gallery Mode" that shows thumbnails of multiple seeds side-by-side
-- All within the same single artifact
-
-This is like creating a series of prints from the same plate - the algorithm is consistent, but each seed reveals different facets of its potential. The interactive nature means users discover their own favorites by exploring the seed space.
-
----
-
-## THE CREATIVE PROCESS
-
-**User request** → **Algorithmic philosophy** → **Implementation**
-
-Each request is unique. The process involves:
-
-1. **Interpret the user's intent** - What aesthetic is being sought?
-2. **Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach
-3. **Implement it in code** - Build the algorithm that expresses this philosophy
-4. **Design appropriate parameters** - What should be tunable?
-5. **Build matching UI controls** - Sliders/inputs for those parameters
-
-**The constants**:
-- Anthropic branding (colors, fonts, layout)
-- Seed navigation (always present)
-- Self-contained HTML artifact
-
-**Everything else is variable**:
-- The algorithm itself
-- The parameters
-- The UI controls
-- The visual outcome
-
-To achieve the best results, trust creativity and let the philosophy guide the implementation.
-
----
-
-## RESOURCES
-
-This skill includes helpful templates and documentation:
-
-- **templates/viewer.html**: REQUIRED STARTING POINT for all HTML artifacts.
-  - This is the foundation - contains the exact structure and Anthropic branding
-  - **Keep unchanged**: Layout structure, sidebar organization, Anthropic colors/fonts, seed controls, action buttons
-  - **Replace**: The p5.js algorithm, parameter definitions, and UI controls in Parameters section
-  - The extensive comments in the file mark exactly what to keep vs replace
-
-- **templates/generator_template.js**: Reference for p5.js best practices and code structure principles.
-  - Shows how to organize parameters, use seeded randomness, structure classes
-  - NOT a pattern menu - use these principles to build unique algorithms
-  - Embed algorithms inline in the HTML artifact (don't create separate .js files)
-
-**Critical reminder**:
-- The **template is the STARTING POINT**, not inspiration
-- The **algorithm is where to create** something unique
-- Don't copy the flow field example - build what the philosophy demands
-- But DO keep the exact UI structure and Anthropic branding from the template

+ 0 - 39
adapters-output/qoder/algorithmic-art-agent/algorithmic_art_agent.py

@@ -1,39 +0,0 @@
-"""
-Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations. for Qoder
-
-This agent module was automatically generated from Agent Skill.
-"""
-
-
-class AlgorithmicArtAgent:
-    """
-    Agent for Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
-    """
-    
-    def __init__(self):
-        self.name = "algorithmic-art"
-        self.description = "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations."
-    
-    def execute(self, task, context=None):
-        """
-        Execute the agent task
-        
-        Args:
-            task: Task description or parameters
-            context: Optional context information
-            
-        Returns:
-            Task execution result
-        """
-        # Read instructions from SKILL.md
-        # Execute skill workflow
-        # Return result
-        pass
-    
-    def get_capabilities(self):
-        """Get agent capabilities"""
-        return {
-            "name": self.name,
-            "description": self.description,
-            "capabilities": ["task-execution"]
-        }

+ 0 - 84
adapters-output/qoder/algorithmic-art-agent/qoder-agent-config.json

@@ -1,84 +0,0 @@
-{
-  "name": "algorithmic-art-agent",
-  "description": "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.",
-  "version": "1.0.0",
-  "type": "skill-agent",
-  "capabilities": [
-    "code-generation"
-  ],
-  "workflow": [
-    {
-      "step": "step-1",
-      "description": "Algorithmic Philosophy Creation (.md file)"
-    },
-    {
-      "step": "step-2",
-      "description": "Express by creating p5.js generative art (.html + .js files)"
-    },
-    {
-      "step": "step-1",
-      "description": "**Read** `templates/viewer.html` using the Read tool"
-    },
-    {
-      "step": "step-2",
-      "description": "**Study** the exact structure, styling, and Anthropic branding"
-    },
-    {
-      "step": "step-3",
-      "description": "**Use that file as the LITERAL STARTING POINT** - not just inspiration"
-    },
-    {
-      "step": "step-4",
-      "description": "**Keep all FIXED sections exactly as shown** (header, sidebar structure, Anthropic colors/fonts, seed controls, action buttons)"
-    },
-    {
-      "step": "step-5",
-      "description": "**Replace only the VARIABLE sections** marked in the file's comments (algorithm, parameters, UI controls for parameters)"
-    },
-    {
-      "step": "step-1",
-      "description": "**Algorithmic Philosophy** - As markdown or text explaining the generative aesthetic"
-    },
-    {
-      "step": "step-2",
-      "description": "**Single HTML Artifact** - Self-contained interactive generative art built from `templates/viewer.html` (see STEP 0 and next section)"
-    },
-    {
-      "step": "step-1",
-      "description": "**In claude.ai**: Displayed as an interactive artifact - runs instantly"
-    },
-    {
-      "step": "step-2",
-      "description": "**As a file**: Save and open in any browser - no server needed"
-    },
-    {
-      "step": "step-3",
-      "description": "**Sharing**: Send the HTML file - it's completely self-contained"
-    },
-    {
-      "step": "step-1",
-      "description": "**Interpret the user's intent** - What aesthetic is being sought?"
-    },
-    {
-      "step": "step-2",
-      "description": "**Create an algorithmic philosophy** (4-6 paragraphs) describing the computational approach"
-    },
-    {
-      "step": "step-3",
-      "description": "**Implement it in code** - Build the algorithm that expresses this philosophy"
-    },
-    {
-      "step": "step-4",
-      "description": "**Design appropriate parameters** - What should be tunable?"
-    },
-    {
-      "step": "step-5",
-      "description": "**Build matching UI controls** - Sliders/inputs for those parameters"
-    }
-  ],
-  "instructions": "SKILL.md",
-  "metadata": {
-    "source": "teaching-ai-skills",
-    "original_skill": "algorithmic-art"
-  }
-}

+ 0 - 73
adapters-output/qoder/brand-guidelines-agent/SKILL.md

@@ -1,73 +0,0 @@
----
-name: brand-guidelines
-description: Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
-license: Complete terms in LICENSE.txt
----
-
-# Anthropic Brand Styling
-
-## Overview
-
-To access Anthropic's official brand identity and style resources, use this skill.
-
-**Keywords**: branding, corporate identity, visual identity, post-processing, styling, brand colors, typography, Anthropic brand, visual formatting, visual design
-
-## Brand Guidelines
-
-### Colors
-
-**Main Colors:**
-
-- Dark: `#141413` - Primary text and dark backgrounds
-- Light: `#faf9f5` - Light backgrounds and text on dark
-- Mid Gray: `#b0aea5` - Secondary elements
-- Light Gray: `#e8e6dc` - Subtle backgrounds
-
-**Accent Colors:**
-
-- Orange: `#d97757` - Primary accent
-- Blue: `#6a9bcc` - Secondary accent
-- Green: `#788c5d` - Tertiary accent
-
-### Typography
-
-- **Headings**: Poppins (with Arial fallback)
-- **Body Text**: Lora (with Georgia fallback)
-- **Note**: Fonts should be pre-installed in your environment for best results
-
-## Features
-
-### Smart Font Application
-
-- Applies Poppins font to headings (24pt and larger)
-- Applies Lora font to body text
-- Automatically falls back to Arial/Georgia if custom fonts unavailable
-- Preserves readability across all systems
-
-### Text Styling
-
-- Headings (24pt+): Poppins font
-- Body text: Lora font
-- Smart color selection based on background
-- Preserves text hierarchy and formatting
-
-### Shape and Accent Colors
-
-- Non-text shapes use accent colors
-- Cycles through orange, blue, and green accents
-- Maintains visual interest while staying on-brand
-
-## Technical Details
-
-### Font Management
-
-- Uses system-installed Poppins and Lora fonts when available
-- Provides automatic fallback to Arial (headings) and Georgia (body)
-- No font installation required - works with existing system fonts
-- For best results, pre-install Poppins and Lora fonts in your environment
-
-### Color Application
-
-- Uses RGB color values for precise brand matching
-- Applied via python-pptx's RGBColor class
-- Maintains color fidelity across different systems

+ 0 - 39
adapters-output/qoder/brand-guidelines-agent/brand_guidelines_agent.py

@@ -1,39 +0,0 @@
-"""
-Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply. for Qoder
-
-This agent module was automatically generated from Agent Skill.
-"""
-
-
-class BrandGuidelinesAgent:
-    """
-    Agent for Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
-    """
-    
-    def __init__(self):
-        self.name = "brand-guidelines"
-        self.description = "Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply."
-    
-    def execute(self, task, context=None):
-        """
-        Execute the agent task
-        
-        Args:
-            task: Task description or parameters
-            context: Optional context information
-            
-        Returns:
-            Task execution result
-        """
-        # Read instructions from SKILL.md
-        # Execute skill workflow
-        # Return result
-        pass
-    
-    def get_capabilities(self):
-        """Get agent capabilities"""
-        return {
-            "name": self.name,
-            "description": self.description,
-            "capabilities": ["task-execution"]
-        }

+ 0 - 28
adapters-output/qoder/brand-guidelines-agent/qoder-agent-config.json

@@ -1,28 +0,0 @@
-{
-  "name": "brand-guidelines-agent",
-  "description": "Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.",
-  "version": "1.0.0",
-  "type": "skill-agent",
-  "capabilities": [
-    "brand-guidelines"
-  ],
-  "workflow": [
-    {
-      "step": "analyze",
-      "description": "Analyze requirements"
-    },
-    {
-      "step": "execute",
-      "description": "Execute skill task"
-    },
-    {
-      "step": "output",
-      "description": "Generate output"
-    }
-  ],
-  "instructions": "SKILL.md",
-  "metadata": {
-    "source": "teaching-ai-skills",
-    "original_skill": "brand-guidelines"
-  }
-}

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor