flyee 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +134 -0
  3. package/bin/install.js +357 -0
  4. package/bridge/bridge.py +1780 -0
  5. package/bridge/local_tracker.py +722 -0
  6. package/core/agents/backend-specialist.md +266 -0
  7. package/core/agents/code-archaeologist.md +106 -0
  8. package/core/agents/database-architect.md +226 -0
  9. package/core/agents/debugger.md +225 -0
  10. package/core/agents/devops-engineer.md +323 -0
  11. package/core/agents/documentation-writer.md +104 -0
  12. package/core/agents/explorer-agent.md +73 -0
  13. package/core/agents/frontend-specialist.md +743 -0
  14. package/core/agents/game-developer.md +162 -0
  15. package/core/agents/mobile-developer.md +377 -0
  16. package/core/agents/orchestrator.md +416 -0
  17. package/core/agents/penetration-tester.md +188 -0
  18. package/core/agents/performance-optimizer.md +187 -0
  19. package/core/agents/product-manager.md +112 -0
  20. package/core/agents/product-owner.md +95 -0
  21. package/core/agents/project-planner.md +470 -0
  22. package/core/agents/qa-automation-engineer.md +103 -0
  23. package/core/agents/security-auditor.md +170 -0
  24. package/core/agents/seo-specialist.md +111 -0
  25. package/core/agents/stitch-designer.md +190 -0
  26. package/core/agents/tdd-reviewer.md +282 -0
  27. package/core/agents/test-engineer.md +158 -0
  28. package/core/scripts/auto_preview.py +148 -0
  29. package/core/scripts/checklist.py +243 -0
  30. package/core/scripts/cost_report.py +149 -0
  31. package/core/scripts/doc-sync-check.py +461 -0
  32. package/core/scripts/parse_user_stories.py +79 -0
  33. package/core/scripts/prepare_notion_updates.py +172 -0
  34. package/core/scripts/print_create_payload.py +18 -0
  35. package/core/scripts/session_manager.py +120 -0
  36. package/core/scripts/task_complete.py +127 -0
  37. package/core/scripts/verify_all.py +327 -0
  38. package/core/skills/analytics-strategy/SKILL.md +128 -0
  39. package/core/skills/api-patterns/SKILL.md +81 -0
  40. package/core/skills/api-patterns/api-style.md +42 -0
  41. package/core/skills/api-patterns/auth.md +24 -0
  42. package/core/skills/api-patterns/documentation.md +26 -0
  43. package/core/skills/api-patterns/graphql.md +41 -0
  44. package/core/skills/api-patterns/rate-limiting.md +31 -0
  45. package/core/skills/api-patterns/response.md +37 -0
  46. package/core/skills/api-patterns/rest.md +40 -0
  47. package/core/skills/api-patterns/scripts/api_validator.py +211 -0
  48. package/core/skills/api-patterns/security-testing.md +122 -0
  49. package/core/skills/api-patterns/trpc.md +41 -0
  50. package/core/skills/api-patterns/versioning.md +22 -0
  51. package/core/skills/app-builder/SKILL.md +75 -0
  52. package/core/skills/app-builder/agent-coordination.md +71 -0
  53. package/core/skills/app-builder/feature-building.md +53 -0
  54. package/core/skills/app-builder/project-detection.md +34 -0
  55. package/core/skills/app-builder/scaffolding.md +118 -0
  56. package/core/skills/app-builder/tech-stack.md +40 -0
  57. package/core/skills/app-builder/templates/SKILL.md +39 -0
  58. package/core/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
  59. package/core/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
  60. package/core/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
  61. package/core/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
  62. package/core/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
  63. package/core/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
  64. package/core/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
  65. package/core/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
  66. package/core/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
  67. package/core/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
  68. package/core/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
  69. package/core/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
  70. package/core/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
  71. package/core/skills/architecture/SKILL.md +55 -0
  72. package/core/skills/architecture/context-discovery.md +43 -0
  73. package/core/skills/architecture/examples.md +94 -0
  74. package/core/skills/architecture/pattern-selection.md +68 -0
  75. package/core/skills/architecture/patterns-reference.md +50 -0
  76. package/core/skills/architecture/trade-off-analysis.md +77 -0
  77. package/core/skills/atomic-design/SKILL.md +282 -0
  78. package/core/skills/atomic-design/references/classification-guide.md +132 -0
  79. package/core/skills/atomic-design/references/quality-checklist.md +60 -0
  80. package/core/skills/atomic-design/references/stacks/stack-blade.md +254 -0
  81. package/core/skills/atomic-design/references/stacks/stack-nextjs.md +272 -0
  82. package/core/skills/atomic-design/references/stacks/stack-react.md +239 -0
  83. package/core/skills/atomic-design/references/stacks/stack-vue.md +224 -0
  84. package/core/skills/bash-linux/SKILL.md +199 -0
  85. package/core/skills/behavioral-modes/SKILL.md +242 -0
  86. package/core/skills/brainstorming/SKILL.md +163 -0
  87. package/core/skills/brainstorming/dynamic-questioning.md +373 -0
  88. package/core/skills/checkpointing-patterns/SKILL.md +163 -0
  89. package/core/skills/clean-code/SKILL.md +201 -0
  90. package/core/skills/code-review-checklist/SKILL.md +109 -0
  91. package/core/skills/code-truth-validation/SKILL.md +149 -0
  92. package/core/skills/component-library-discovery/SKILL.md +154 -0
  93. package/core/skills/content-strategy/SKILL.md +222 -0
  94. package/core/skills/context-budget/SKILL.md +155 -0
  95. package/core/skills/context-gathering-patterns/SKILL.md +278 -0
  96. package/core/skills/cost-tracking/SKILL.md +206 -0
  97. package/core/skills/database-design/SKILL.md +52 -0
  98. package/core/skills/database-design/database-selection.md +43 -0
  99. package/core/skills/database-design/indexing.md +39 -0
  100. package/core/skills/database-design/migrations.md +48 -0
  101. package/core/skills/database-design/optimization.md +36 -0
  102. package/core/skills/database-design/orm-selection.md +30 -0
  103. package/core/skills/database-design/schema-design.md +56 -0
  104. package/core/skills/database-design/scripts/schema_validator.py +172 -0
  105. package/core/skills/deployment-procedures/SKILL.md +295 -0
  106. package/core/skills/design-md/README.md +34 -0
  107. package/core/skills/design-md/SKILL.md +172 -0
  108. package/core/skills/design-md/examples/DESIGN.md +154 -0
  109. package/core/skills/design-system-enforcement/SKILL.md +339 -0
  110. package/core/skills/doc.md +177 -0
  111. package/core/skills/document-registry/SKILL.md +130 -0
  112. package/core/skills/documentation-publishing/SKILL.md +174 -0
  113. package/core/skills/documentation-templates/SKILL.md +194 -0
  114. package/core/skills/enhance-prompt/README.md +34 -0
  115. package/core/skills/enhance-prompt/SKILL.md +204 -0
  116. package/core/skills/enhance-prompt/references/KEYWORDS.md +114 -0
  117. package/core/skills/frontend-design/SKILL.md +430 -0
  118. package/core/skills/frontend-design/animation-guide.md +331 -0
  119. package/core/skills/frontend-design/color-system.md +311 -0
  120. package/core/skills/frontend-design/decision-trees.md +418 -0
  121. package/core/skills/frontend-design/motion-graphics.md +306 -0
  122. package/core/skills/frontend-design/scripts/accessibility_checker.py +183 -0
  123. package/core/skills/frontend-design/scripts/ux_audit.py +722 -0
  124. package/core/skills/frontend-design/typography-system.md +345 -0
  125. package/core/skills/frontend-design/ux-psychology.md +541 -0
  126. package/core/skills/frontend-design/visual-effects.md +383 -0
  127. package/core/skills/game-development/2d-games/SKILL.md +119 -0
  128. package/core/skills/game-development/3d-games/SKILL.md +135 -0
  129. package/core/skills/game-development/SKILL.md +167 -0
  130. package/core/skills/game-development/game-art/SKILL.md +185 -0
  131. package/core/skills/game-development/game-audio/SKILL.md +190 -0
  132. package/core/skills/game-development/game-design/SKILL.md +129 -0
  133. package/core/skills/game-development/mobile-games/SKILL.md +108 -0
  134. package/core/skills/game-development/multiplayer/SKILL.md +132 -0
  135. package/core/skills/game-development/pc-games/SKILL.md +144 -0
  136. package/core/skills/game-development/vr-ar/SKILL.md +123 -0
  137. package/core/skills/game-development/web-games/SKILL.md +150 -0
  138. package/core/skills/geo-fundamentals/SKILL.md +156 -0
  139. package/core/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
  140. package/core/skills/git-workflow/SKILL.md +263 -0
  141. package/core/skills/history-check-patterns/SKILL.md +125 -0
  142. package/core/skills/i18n-localization/SKILL.md +154 -0
  143. package/core/skills/i18n-localization/scripts/i18n_checker.py +241 -0
  144. package/core/skills/integration-completeness/SKILL.md +219 -0
  145. package/core/skills/intelligent-routing/SKILL.md +370 -0
  146. package/core/skills/lint-and-validate/SKILL.md +45 -0
  147. package/core/skills/lint-and-validate/scripts/lint_runner.py +173 -0
  148. package/core/skills/lint-and-validate/scripts/type_coverage.py +173 -0
  149. package/core/skills/local-verification/SKILL.md +195 -0
  150. package/core/skills/mcp-builder/SKILL.md +176 -0
  151. package/core/skills/mobile-design/SKILL.md +394 -0
  152. package/core/skills/mobile-design/decision-trees.md +516 -0
  153. package/core/skills/mobile-design/mobile-backend.md +491 -0
  154. package/core/skills/mobile-design/mobile-color-system.md +420 -0
  155. package/core/skills/mobile-design/mobile-debugging.md +122 -0
  156. package/core/skills/mobile-design/mobile-design-thinking.md +357 -0
  157. package/core/skills/mobile-design/mobile-navigation.md +458 -0
  158. package/core/skills/mobile-design/mobile-performance.md +767 -0
  159. package/core/skills/mobile-design/mobile-testing.md +356 -0
  160. package/core/skills/mobile-design/mobile-typography.md +433 -0
  161. package/core/skills/mobile-design/platform-android.md +666 -0
  162. package/core/skills/mobile-design/platform-ios.md +561 -0
  163. package/core/skills/mobile-design/scripts/mobile_audit.py +670 -0
  164. package/core/skills/mobile-design/touch-psychology.md +537 -0
  165. package/core/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +312 -0
  166. package/core/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -0
  167. package/core/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -0
  168. package/core/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -0
  169. package/core/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
  170. package/core/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -0
  171. package/core/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -0
  172. package/core/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -0
  173. package/core/skills/nextjs-react-expert/SKILL.md +267 -0
  174. package/core/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
  175. package/core/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -0
  176. package/core/skills/nodejs-best-practices/SKILL.md +333 -0
  177. package/core/skills/notion-task-patterns/SKILL.md +2529 -0
  178. package/core/skills/page-specifications/SKILL.md +367 -0
  179. package/core/skills/parallel-agents/SKILL.md +175 -0
  180. package/core/skills/performance-profiling/SKILL.md +143 -0
  181. package/core/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
  182. package/core/skills/plan-writing/SKILL.md +190 -0
  183. package/core/skills/powershell-windows/SKILL.md +167 -0
  184. package/core/skills/project-foundation/SKILL.md +117 -0
  185. package/core/skills/project-setup/SKILL.md +141 -0
  186. package/core/skills/project-tracking-patterns/SKILL.md +357 -0
  187. package/core/skills/project-type-discovery/SKILL.md +239 -0
  188. package/core/skills/python-patterns/SKILL.md +441 -0
  189. package/core/skills/qa-test-generation/SKILL.md +156 -0
  190. package/core/skills/react-components/README.md +36 -0
  191. package/core/skills/react-components/SKILL.md +47 -0
  192. package/core/skills/react-components/examples/gold-standard-card.tsx +80 -0
  193. package/core/skills/react-components/package-lock.json +231 -0
  194. package/core/skills/react-components/package.json +16 -0
  195. package/core/skills/react-components/resources/architecture-checklist.md +15 -0
  196. package/core/skills/react-components/resources/component-template.tsx +37 -0
  197. package/core/skills/react-components/resources/stitch-api-reference.md +14 -0
  198. package/core/skills/react-components/resources/style-guide.json +27 -0
  199. package/core/skills/react-components/scripts/fetch-stitch.sh +30 -0
  200. package/core/skills/react-components/scripts/validate.js +68 -0
  201. package/core/skills/red-team-tactics/SKILL.md +199 -0
  202. package/core/skills/remotion/README.md +105 -0
  203. package/core/skills/remotion/SKILL.md +393 -0
  204. package/core/skills/remotion/examples/WalkthroughComposition.tsx +78 -0
  205. package/core/skills/remotion/examples/screens.json +56 -0
  206. package/core/skills/remotion/resources/composition-checklist.md +124 -0
  207. package/core/skills/remotion/resources/screen-slide-template.tsx +123 -0
  208. package/core/skills/remotion/scripts/download-stitch-asset.sh +38 -0
  209. package/core/skills/seo-fundamentals/SKILL.md +129 -0
  210. package/core/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
  211. package/core/skills/server-management/SKILL.md +161 -0
  212. package/core/skills/session-resilience/SKILL.md +199 -0
  213. package/core/skills/shadcn-ui/README.md +248 -0
  214. package/core/skills/shadcn-ui/SKILL.md +326 -0
  215. package/core/skills/shadcn-ui/examples/auth-layout.tsx +177 -0
  216. package/core/skills/shadcn-ui/examples/data-table.tsx +313 -0
  217. package/core/skills/shadcn-ui/examples/form-pattern.tsx +177 -0
  218. package/core/skills/shadcn-ui/resources/component-catalog.md +481 -0
  219. package/core/skills/shadcn-ui/resources/customization-guide.md +516 -0
  220. package/core/skills/shadcn-ui/resources/migration-guide.md +463 -0
  221. package/core/skills/shadcn-ui/resources/setup-guide.md +412 -0
  222. package/core/skills/shadcn-ui/scripts/verify-setup.sh +134 -0
  223. package/core/skills/state-machine/SKILL.md +264 -0
  224. package/core/skills/stitch-loop/README.md +54 -0
  225. package/core/skills/stitch-loop/SKILL.md +203 -0
  226. package/core/skills/stitch-loop/examples/SITE.md +73 -0
  227. package/core/skills/stitch-loop/examples/next-prompt.md +25 -0
  228. package/core/skills/stitch-loop/resources/baton-schema.md +61 -0
  229. package/core/skills/stitch-loop/resources/site-template.md +104 -0
  230. package/core/skills/systematic-debugging/SKILL.md +109 -0
  231. package/core/skills/tailwind-patterns/SKILL.md +284 -0
  232. package/core/skills/tdd-validation/SKILL.md +243 -0
  233. package/core/skills/tdd-workflow/SKILL.md +284 -0
  234. package/core/skills/testing-patterns/SKILL.md +196 -0
  235. package/core/skills/testing-patterns/scripts/test_runner.py +219 -0
  236. package/core/skills/ui-ux-discovery/SKILL.md +329 -0
  237. package/core/skills/ui-validation/SKILL.md +190 -0
  238. package/core/skills/ui-validation/scripts/ui_antipattern_check.py +317 -0
  239. package/core/skills/verification-gate/SKILL.md +205 -0
  240. package/core/skills/vulnerability-scanner/SKILL.md +276 -0
  241. package/core/skills/vulnerability-scanner/checklists.md +121 -0
  242. package/core/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
  243. package/core/skills/web-design-guidelines/SKILL.md +57 -0
  244. package/core/skills/webapp-testing/SKILL.md +187 -0
  245. package/core/skills/webapp-testing/scripts/playwright_runner.py +173 -0
  246. package/core/templates/ARCHITECTURE.template.md +407 -0
  247. package/core/templates/project-resources.example.json +71 -0
  248. package/core/workflows/atomic.md +182 -0
  249. package/core/workflows/brainstorm.md +134 -0
  250. package/core/workflows/check-task.md +242 -0
  251. package/core/workflows/copy-collect.md +306 -0
  252. package/core/workflows/create-agent.md +33 -0
  253. package/core/workflows/create-skill.md +39 -0
  254. package/core/workflows/create-workflow.md +33 -0
  255. package/core/workflows/create.md +92 -0
  256. package/core/workflows/debug.md +186 -0
  257. package/core/workflows/demand.md +443 -0
  258. package/core/workflows/deploy.md +260 -0
  259. package/core/workflows/discovery.md +267 -0
  260. package/core/workflows/document.md +272 -0
  261. package/core/workflows/ds-components.md +296 -0
  262. package/core/workflows/ds-init.md +58 -0
  263. package/core/workflows/ds-refactor.md +245 -0
  264. package/core/workflows/ds-references.md +197 -0
  265. package/core/workflows/ds-styleguide.md +237 -0
  266. package/core/workflows/ds-token-diff.md +103 -0
  267. package/core/workflows/ds-tokens.md +317 -0
  268. package/core/workflows/ds-validate.md +309 -0
  269. package/core/workflows/execute.md +483 -0
  270. package/core/workflows/extract-template.md +278 -0
  271. package/core/workflows/fix-failed-tests.md +160 -0
  272. package/core/workflows/init-project.md +386 -0
  273. package/core/workflows/legacy-project.md +849 -0
  274. package/core/workflows/log.md +97 -0
  275. package/core/workflows/new-project.md +610 -0
  276. package/core/workflows/new-project.md.bak +3292 -0
  277. package/core/workflows/new-task.md +404 -0
  278. package/core/workflows/orchestrate.md +237 -0
  279. package/core/workflows/page-build.md +296 -0
  280. package/core/workflows/plan.md +89 -0
  281. package/core/workflows/prd.md +255 -0
  282. package/core/workflows/preview.md +81 -0
  283. package/core/workflows/review-page.md +304 -0
  284. package/core/workflows/status.md +86 -0
  285. package/core/workflows/stitch.md +226 -0
  286. package/core/workflows/task-complete.md +473 -0
  287. package/core/workflows/task-update.md +163 -0
  288. package/core/workflows/tdd.md +344 -0
  289. package/core/workflows/test.md +251 -0
  290. package/core/workflows/ui-ux-pro-max.md +437 -0
  291. package/core/workflows/ux-mobile-optimize.md +262 -0
  292. package/core/workflows/ux-mobile-validate.md +297 -0
  293. package/engine-files/GEMINI.md +69 -0
  294. package/package.json +47 -0
  295. package/runtime-adapters/antigravity.js +26 -0
  296. package/runtime-adapters/claude.js +57 -0
  297. package/runtime-adapters/codex.js +51 -0
  298. package/runtime-adapters/copilot.js +51 -0
  299. package/runtime-adapters/cursor.js +51 -0
  300. package/runtime-adapters/gemini-cli.js +30 -0
  301. package/runtime-adapters/opencode.js +51 -0
  302. package/runtime-adapters/windsurf.js +51 -0
@@ -0,0 +1,76 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ Skill: performance-profiling
4
+ Script: lighthouse_audit.py
5
+ Purpose: Run Lighthouse performance audit on a URL
6
+ Usage: python lighthouse_audit.py https://example.com
7
+ Output: JSON with performance scores
8
+ Note: Requires lighthouse CLI (npm install -g lighthouse)
9
+ """
10
+ import subprocess
11
+ import json
12
+ import sys
13
+ import os
14
+ import tempfile
15
+
16
+ def run_lighthouse(url: str) -> dict:
17
+ """Run Lighthouse audit on URL."""
18
+ try:
19
+ with tempfile.NamedTemporaryFile(suffix='.json', delete=False) as f:
20
+ output_path = f.name
21
+
22
+ result = subprocess.run(
23
+ [
24
+ "lighthouse",
25
+ url,
26
+ "--output=json",
27
+ f"--output-path={output_path}",
28
+ "--chrome-flags=--headless",
29
+ "--only-categories=performance,accessibility,best-practices,seo"
30
+ ],
31
+ capture_output=True,
32
+ text=True,
33
+ timeout=120
34
+ )
35
+
36
+ if os.path.exists(output_path):
37
+ with open(output_path, 'r') as f:
38
+ report = json.load(f)
39
+ os.unlink(output_path)
40
+
41
+ categories = report.get("categories", {})
42
+ return {
43
+ "url": url,
44
+ "scores": {
45
+ "performance": int(categories.get("performance", {}).get("score", 0) * 100),
46
+ "accessibility": int(categories.get("accessibility", {}).get("score", 0) * 100),
47
+ "best_practices": int(categories.get("best-practices", {}).get("score", 0) * 100),
48
+ "seo": int(categories.get("seo", {}).get("score", 0) * 100)
49
+ },
50
+ "summary": get_summary(categories)
51
+ }
52
+ else:
53
+ return {"error": "Lighthouse failed to generate report", "stderr": result.stderr[:500]}
54
+
55
+ except subprocess.TimeoutExpired:
56
+ return {"error": "Lighthouse audit timed out"}
57
+ except FileNotFoundError:
58
+ return {"error": "Lighthouse CLI not found. Install with: npm install -g lighthouse"}
59
+
60
+ def get_summary(categories: dict) -> str:
61
+ """Generate summary based on scores."""
62
+ perf = categories.get("performance", {}).get("score", 0) * 100
63
+ if perf >= 90:
64
+ return "[OK] Excellent performance"
65
+ elif perf >= 50:
66
+ return "[!] Needs improvement"
67
+ else:
68
+ return "[X] Poor performance"
69
+
70
+ if __name__ == "__main__":
71
+ if len(sys.argv) < 2:
72
+ print(json.dumps({"error": "Usage: python lighthouse_audit.py <url>"}))
73
+ sys.exit(1)
74
+
75
+ result = run_lighthouse(sys.argv[1])
76
+ print(json.dumps(result, indent=2))
@@ -0,0 +1,190 @@
1
+ ---
2
+ name: plan-writing
3
+ description: Structured task planning with clear breakdowns, dependencies, and verification criteria. Use when implementing features, refactoring, or any multi-step work.
4
+ allowed-tools: Read, Glob, Grep
5
+ ---
6
+
7
+ # Plan Writing
8
+
9
+ > Source: obra/superpowers
10
+
11
+ ## Overview
12
+ This skill provides a framework for breaking down work into clear, actionable tasks with verification criteria.
13
+
14
+ ## Task Breakdown Principles
15
+
16
+ ### 1. Small, Focused Tasks
17
+ - Each task should take 2-5 minutes
18
+ - One clear outcome per task
19
+ - Independently verifiable
20
+
21
+ ### 2. Clear Verification
22
+ - How do you know it's done?
23
+ - What can you check/test?
24
+ - What's the expected output?
25
+
26
+ ### 3. Logical Ordering
27
+ - Dependencies identified
28
+ - Parallel work where possible
29
+ - Critical path highlighted
30
+ - **Phase X: Verification is always LAST**
31
+
32
+ ### 4. Dynamic Naming in Project Root
33
+ - Plan files are saved as `{task-slug}.md` in the PROJECT ROOT
34
+ - Name derived from task (e.g., "add auth" → `auth-feature.md`)
35
+ - **NEVER** inside `.claude/`, `docs/`, or temp folders
36
+
37
+ ## Planning Principles (NOT Templates!)
38
+
39
+ > 🔴 **NO fixed templates. Each plan is UNIQUE to the task.**
40
+
41
+ ### Principle 1: Keep It SHORT
42
+
43
+ | ❌ Wrong | ✅ Right |
44
+ |----------|----------|
45
+ | 50 tasks with sub-sub-tasks | 5-10 clear tasks max |
46
+ | Every micro-step listed | Only actionable items |
47
+ | Verbose descriptions | One-line per task |
48
+
49
+ > **Rule:** If plan is longer than 1 page, it's too long. Simplify.
50
+
51
+ ---
52
+
53
+ ### Principle 2: Be SPECIFIC, Not Generic
54
+
55
+ | ❌ Wrong | ✅ Right |
56
+ |----------|----------|
57
+ | "Set up project" | "Run `npx create-next-app`" |
58
+ | "Add authentication" | "Install next-auth, create `/api/auth/[...nextauth].ts`" |
59
+ | "Style the UI" | "Add Tailwind classes to `Header.tsx`" |
60
+
61
+ > **Rule:** Each task should have a clear, verifiable outcome.
62
+
63
+ ---
64
+
65
+ ### Principle 3: Dynamic Content Based on Project Type
66
+
67
+ **For NEW PROJECT:**
68
+ - What tech stack? (decide first)
69
+ - What's the MVP? (minimal features)
70
+ - What's the file structure?
71
+
72
+ **For FEATURE ADDITION:**
73
+ - Which files are affected?
74
+ - What dependencies needed?
75
+ - How to verify it works?
76
+
77
+ **For BUG FIX:**
78
+ - What's the root cause?
79
+ - What file/line to change?
80
+ - How to test the fix?
81
+
82
+ ---
83
+
84
+ ### Principle 4: Scripts Are Project-Specific
85
+
86
+ > 🔴 **DO NOT copy-paste script commands. Choose based on project type.**
87
+
88
+ | Project Type | Relevant Scripts |
89
+ |--------------|------------------|
90
+ | Frontend/React | `ux_audit.py`, `accessibility_checker.py` |
91
+ | Backend/API | `api_validator.py`, `security_scan.py` |
92
+ | Mobile | `mobile_audit.py` |
93
+ | Database | `schema_validator.py` |
94
+ | Full-stack | Mix of above based on what you touched |
95
+
96
+ **Wrong:** Adding all scripts to every plan
97
+ **Right:** Only scripts relevant to THIS task
98
+
99
+ ---
100
+
101
+ ### Principle 5: Verification is Simple
102
+
103
+ | ❌ Wrong | ✅ Right |
104
+ |----------|----------|
105
+ | "Verify the component works correctly" | "Run `npm run dev`, click button, see toast" |
106
+ | "Test the API" | "curl localhost:3000/api/users returns 200" |
107
+ | "Check styles" | "Open browser, verify dark mode toggle works" |
108
+
109
+ ---
110
+
111
+ ## Plan Structure (Flexible, Not Fixed!)
112
+
113
+ ```
114
+ # [Task Name]
115
+
116
+ ## Goal
117
+ One sentence: What are we building/fixing?
118
+
119
+ ## Tasks
120
+ - [ ] Task 1: [Specific action] → Verify: [How to check]
121
+ - [ ] Task 2: [Specific action] → Verify: [How to check]
122
+ - [ ] Task 3: [Specific action] → Verify: [How to check]
123
+
124
+ ## Done When
125
+ - [ ] [Main success criteria]
126
+ ```
127
+
128
+ > **That's it.** No phases, no sub-sections unless truly needed.
129
+ > Keep it minimal. Add complexity only when required.
130
+
131
+ ## Notes
132
+ [Any important considerations]
133
+ ```
134
+
135
+ ---
136
+
137
+ ### Principle 6: UI Component Decomposition Gate (MANDATORY for UI tasks)
138
+
139
+ > 🔴 **Before listing ANY `[NEW]` UI component in the plan, classify it.**
140
+ > A plan that puts a generic visual concept (Timeline, KpiCard, DataTable) directly inside
141
+ > `features/{name}/components/` without extracting the reusable primitive is **INVALID**.
142
+
143
+ **For EACH new UI component in the plan, ask:**
144
+
145
+ | # | Question | If YES | If NO |
146
+ |---|----------|--------|-------|
147
+ | 1 | Is the **visual concept** usable in 2+ features? (e.g. Timeline, StatCard, DataTable) | → Extract generic primitive to `components/ui/` | Continue ↓ |
148
+ | 2 | Could another dev reuse the visual without knowing the business context? | → Extract to `components/ui/` | Continue ↓ |
149
+ | 3 | Is it purely business-specific with no reusable visual? | → OK in `features/{name}/components/` | → `components/ui/` |
150
+
151
+ **Plan format when decomposition applies:**
152
+
153
+ ```markdown
154
+ ## New Components
155
+
156
+ ### Generic (components/ui/) — reusable primitives
157
+ - [NEW] `components/ui/Timeline/` — Vertical timeline with connectors (Atom/Molecule)
158
+ - [NEW] `components/ui/KpiCard/` — Stat card with label, value, trend (Molecule)
159
+
160
+ ### Feature-specific (features/progress/components/) — business orchestrators
161
+ - [NEW] `SprintTimeline.tsx` — Maps sprint data → `<Timeline>` items
162
+ - [NEW] `ProgressOverview.tsx` — Maps project KPIs → grid of `<KpiCard>`
163
+ ```
164
+
165
+ > **Anti-pattern:** `[NEW] features/progress/components/SprintTimeline.tsx` with its own
166
+ > `.module.css` that builds a full timeline visual from scratch. This locks the Timeline
167
+ > concept inside one feature and guarantees duplication when Activity or Deployments need it.
168
+
169
+ > **Historical Lesson:** `SprintTimeline` and `ProgressOverview` were planned entirely inside
170
+ > `features/progress/` without extracting `Timeline` and `KpiCard` as generic primitives.
171
+ > Result: the visual concepts would be trapped in one feature, forcing duplication later.
172
+
173
+ ---
174
+
175
+ ## Best Practices (Quick Reference)
176
+
177
+ 1. **Start with goal** - What are we building/fixing?
178
+ 2. **Max 10 tasks** - If more, break into multiple plans
179
+ 3. **Each task verifiable** - Clear "done" criteria
180
+ 4. **Project-specific** - No copy-paste templates
181
+ 5. **Update as you go** - Mark `[x]` when complete
182
+
183
+ ---
184
+
185
+ ## When to Use
186
+
187
+ - New project from scratch
188
+ - Adding a feature
189
+ - Fixing a bug (if complex)
190
+ - Refactoring multiple files
@@ -0,0 +1,167 @@
1
+ ---
2
+ name: powershell-windows
3
+ description: PowerShell Windows patterns. Critical pitfalls, operator syntax, error handling.
4
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash
5
+ ---
6
+
7
+ # PowerShell Windows Patterns
8
+
9
+ > Critical patterns and pitfalls for Windows PowerShell.
10
+
11
+ ---
12
+
13
+ ## 1. Operator Syntax Rules
14
+
15
+ ### CRITICAL: Parentheses Required
16
+
17
+ | ❌ Wrong | ✅ Correct |
18
+ |----------|-----------|
19
+ | `if (Test-Path "a" -or Test-Path "b")` | `if ((Test-Path "a") -or (Test-Path "b"))` |
20
+ | `if (Get-Item $x -and $y -eq 5)` | `if ((Get-Item $x) -and ($y -eq 5))` |
21
+
22
+ **Rule:** Each cmdlet call MUST be in parentheses when using logical operators.
23
+
24
+ ---
25
+
26
+ ## 2. Unicode/Emoji Restriction
27
+
28
+ ### CRITICAL: No Unicode in Scripts
29
+
30
+ | Purpose | ❌ Don't Use | ✅ Use |
31
+ |---------|-------------|--------|
32
+ | Success | ✅ ✓ | [OK] [+] |
33
+ | Error | ❌ ✗ 🔴 | [!] [X] |
34
+ | Warning | ⚠️ 🟡 | [*] [WARN] |
35
+ | Info | ℹ️ 🔵 | [i] [INFO] |
36
+ | Progress | ⏳ | [...] |
37
+
38
+ **Rule:** Use ASCII characters only in PowerShell scripts.
39
+
40
+ ---
41
+
42
+ ## 3. Null Check Patterns
43
+
44
+ ### Always Check Before Access
45
+
46
+ | ❌ Wrong | ✅ Correct |
47
+ |----------|-----------|
48
+ | `$array.Count -gt 0` | `$array -and $array.Count -gt 0` |
49
+ | `$text.Length` | `if ($text) { $text.Length }` |
50
+
51
+ ---
52
+
53
+ ## 4. String Interpolation
54
+
55
+ ### Complex Expressions
56
+
57
+ | ❌ Wrong | ✅ Correct |
58
+ |----------|-----------|
59
+ | `"Value: $($obj.prop.sub)"` | Store in variable first |
60
+
61
+ **Pattern:**
62
+ ```
63
+ $value = $obj.prop.sub
64
+ Write-Output "Value: $value"
65
+ ```
66
+
67
+ ---
68
+
69
+ ## 5. Error Handling
70
+
71
+ ### ErrorActionPreference
72
+
73
+ | Value | Use |
74
+ |-------|-----|
75
+ | Stop | Development (fail fast) |
76
+ | Continue | Production scripts |
77
+ | SilentlyContinue | When errors expected |
78
+
79
+ ### Try/Catch Pattern
80
+
81
+ - Don't return inside try block
82
+ - Use finally for cleanup
83
+ - Return after try/catch
84
+
85
+ ---
86
+
87
+ ## 6. File Paths
88
+
89
+ ### Windows Path Rules
90
+
91
+ | Pattern | Use |
92
+ |---------|-----|
93
+ | Literal path | `C:\Users\User\file.txt` |
94
+ | Variable path | `Join-Path $env:USERPROFILE "file.txt"` |
95
+ | Relative | `Join-Path $ScriptDir "data"` |
96
+
97
+ **Rule:** Use Join-Path for cross-platform safety.
98
+
99
+ ---
100
+
101
+ ## 7. Array Operations
102
+
103
+ ### Correct Patterns
104
+
105
+ | Operation | Syntax |
106
+ |-----------|--------|
107
+ | Empty array | `$array = @()` |
108
+ | Add item | `$array += $item` |
109
+ | ArrayList add | `$list.Add($item) | Out-Null` |
110
+
111
+ ---
112
+
113
+ ## 8. JSON Operations
114
+
115
+ ### CRITICAL: Depth Parameter
116
+
117
+ | ❌ Wrong | ✅ Correct |
118
+ |----------|-----------|
119
+ | `ConvertTo-Json` | `ConvertTo-Json -Depth 10` |
120
+
121
+ **Rule:** Always specify `-Depth` for nested objects.
122
+
123
+ ### File Operations
124
+
125
+ | Operation | Pattern |
126
+ |-----------|---------|
127
+ | Read | `Get-Content "file.json" -Raw | ConvertFrom-Json` |
128
+ | Write | `$data | ConvertTo-Json -Depth 10 | Out-File "file.json" -Encoding UTF8` |
129
+
130
+ ---
131
+
132
+ ## 9. Common Errors
133
+
134
+ | Error Message | Cause | Fix |
135
+ |---------------|-------|-----|
136
+ | "parameter 'or'" | Missing parentheses | Wrap cmdlets in () |
137
+ | "Unexpected token" | Unicode character | Use ASCII only |
138
+ | "Cannot find property" | Null object | Check null first |
139
+ | "Cannot convert" | Type mismatch | Use .ToString() |
140
+
141
+ ---
142
+
143
+ ## 10. Script Template
144
+
145
+ ```powershell
146
+ # Strict mode
147
+ Set-StrictMode -Version Latest
148
+ $ErrorActionPreference = "Continue"
149
+
150
+ # Paths
151
+ $ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
152
+
153
+ # Main
154
+ try {
155
+ # Logic here
156
+ Write-Output "[OK] Done"
157
+ exit 0
158
+ }
159
+ catch {
160
+ Write-Warning "Error: $_"
161
+ exit 1
162
+ }
163
+ ```
164
+
165
+ ---
166
+
167
+ > **Remember:** PowerShell has unique syntax rules. Parentheses, ASCII-only, and null checks are non-negotiable.
@@ -0,0 +1,117 @@
1
+ ---
2
+ name: project-foundation
3
+ description: Protocolo para gerar os arquivos de fundação de qualquer projeto (README, .env.example, SECURITY.md, docs/INDEX.md, ADR-000). Usado por new-project (Phase 2.05) e legacy-project (Phase 0.7). Context-aware para projetos novos vs legados.
4
+ ---
5
+
6
+ # Skill: project-foundation
7
+
8
+ ## Propósito
9
+
10
+ Garantir que todo projeto tenha a infraestrutura mínima de documentação **antes** de qualquer trabalho de feature ou análise. Um agente que abrir o projeto futuramente precisa de um ponto de entrada claro.
11
+
12
+ > [!IMPORTANT]
13
+ > Este skill é chamado automaticamente por workflows. Não pule nenhum dos 5 artefatos — todos são necessários para que agentes futuros funcionem corretamente.
14
+
15
+ ---
16
+
17
+ ## Contextos de Uso
18
+
19
+ | Contexto | Trigger | Comportamento |
20
+ |----------|---------|---------------|
21
+ | `new` | `new-project` Phase 2.05 | Gera todos os arquivos do zero a partir dos templates |
22
+ | `legacy` | `legacy-project` Phase 0.7 | Adapta ao que já existe: README existente é atualizado, `.env.example` é extraído das variáveis detectadas no código |
23
+
24
+ ---
25
+
26
+ ## Protocolo de Execução
27
+
28
+ ### Passo 1: README.md
29
+
30
+ **Modo `new`:**
31
+ > Gerar do zero usando `readme-template.md`. Preencher stack, comandos de run/test/build e environments.
32
+
33
+ **Modo `legacy`:**
34
+ > 1. Verificar se `README.md` já existe
35
+ > 2. Se existe: atualizar seções desatualizadas (stack, comandos, envs) sem destruir conteúdo
36
+ > 3. Se não existe: gerar do zero como se fosse modo `new`
37
+
38
+ **Gate:** README deve ter no mínimo: descrição, stack, como rodar localmente, environments.
39
+
40
+ ---
41
+
42
+ ### Passo 2: .env.example
43
+
44
+ **Modo `new`:**
45
+ > Gerar do zero usando `env-template.md`. Preencher com as variáveis já conhecidas (DB, auth, ports).
46
+
47
+ **Modo `legacy`:**
48
+ > 1. Buscar variáveis de ambiente no código (`process.env.*`, `os.environ`, `config(*)`)
49
+ > 2. Buscar `.env`, `.env.local`, `.env.development` (se existirem e não estiverem no .gitignore, ler)
50
+ > 3. Gerar `.env.example` preenchido com as variáveis encontradas (valores = placeholders)
51
+ > 4. Anotar quais são REQUIRED vs OPTIONAL com base no uso
52
+
53
+ **Gate:** `.env.example` deve cobrir todas as variáveis usadas no código.
54
+
55
+ ---
56
+
57
+ ### Passo 3: SECURITY.md
58
+
59
+ **Ambos os modos:**
60
+ > Gerar usando `security-template.md`. Preencher:
61
+ > - Versões suportadas (detectar versão atual do projeto)
62
+ > - Email de segurança (perguntar ao usuário se não encontrado no repo)
63
+ > - Stack-specific items (ex: se Python → `pip-audit`; se Node → `npm audit`)
64
+
65
+ **Modo `legacy`:**
66
+ > Adicionar nota na seção "Security Practices" sobre dívida de segurança conhecida (a ser preenchida após Phase 5.6).
67
+
68
+ ---
69
+
70
+ ### Passo 4: docs/INDEX.md (Document Registry)
71
+
72
+ **Ambos os modos:**
73
+ > Criar `docs/INDEX.md` usando `docs-index-template.md`.
74
+
75
+ **Modo `new`:**
76
+ > INDEX começa com entries `pending` para todos os documentos que serão gerados pelo workflow.
77
+
78
+ **Modo `legacy`:**
79
+ > INDEX começa vazio (status = pending) e é preenchido incrementalmente conforme documentos são criados.
80
+ > Adicionar entry inicial:
81
+ > ```
82
+ > | LEGACY-ANALYSIS | Analysis | docs/LEGACY-PROGRESS.md | in_progress | - | - |
83
+ > ```
84
+
85
+ **Gate:** `docs/INDEX.md` criado e commitável (não vazio, com pelo menos a entry de foundation).
86
+
87
+ ---
88
+
89
+ ### Passo 5: docs/adr/ADR-000.md
90
+
91
+ **Modo `new`:**
92
+ > Criar `docs/adr/ADR-000-initial-setup.md` documentando as decisões de stack e arquitetura
93
+ > iniciais. Status: `accepted`.
94
+
95
+ **Modo `legacy`:**
96
+ > Criar `docs/adr/ADR-000-legacy-analysis.md` documentando a decisão de iniciar engenharia
97
+ > reversa. Preencher template com:
98
+ > - **Context:** Projeto existente sem documentação
99
+ > - **Decision:** Iniciar reverse engineering com `/legacy-project`
100
+ > - **Consequences:** Processo incremental por módulo, análise pode levar múltiplas sessões
101
+
102
+ ---
103
+
104
+ ## Checklist de Conclusão
105
+
106
+ ```
107
+ [ ] README.md gerado/atualizado
108
+ [ ] .env.example gerado (todas as variáveis cobertas)
109
+ [ ] SECURITY.md gerado
110
+ [ ] docs/INDEX.md criado com entries iniciais
111
+ [ ] docs/adr/ADR-000.md criado
112
+ [ ] Skill document-registry carregado para registrar cada doc criado acima no INDEX
113
+ ```
114
+
115
+ > [!CAUTION]
116
+ > **NÃO prosseguir para o próximo workflow step** sem todos os itens marcados.
117
+ > Se `docs/` não existir: criar o diretório antes de gerar os arquivos.
@@ -0,0 +1,141 @@
1
+ ---
2
+ name: project-setup
3
+ description: Project initialization and infrastructure setup. Init commands by stack, test runner config, folder structure, and environment separation. Used before TDD methodology phase.
4
+ ---
5
+
6
+ # Project Setup
7
+
8
+ > Prepare base infrastructure before writing tests. No tests without a working project.
9
+
10
+ ---
11
+
12
+ ## 🎯 When to Use
13
+
14
+ | Workflow | Phase | Trigger |
15
+ |----------|-------|---------|
16
+ | `/new-project` | Phase 3.5 | After Breakdown |
17
+ | `/legacy-project` | Verify setup | Ensure test runner exists |
18
+ | `/new-task` | If missing infra | Before adding feature |
19
+
20
+ > [!CAUTION]
21
+ > Do NOT start TDD (Phase 4) without infrastructure configured.
22
+ > Cannot write tests without an initialized project.
23
+
24
+ ---
25
+
26
+ ## 🆕 New Project (No Existing Code)
27
+
28
+ ### 1. Initialize Project
29
+
30
+ ```bash
31
+ # Web (Next.js)
32
+ npx -y create-next-app@latest ./ --typescript --tailwind --app --src-dir --import-alias "@/*"
33
+
34
+ # Mobile (React Native)
35
+ npx react-native init {ProjectName} --template react-native-template-typescript
36
+
37
+ # Package (TypeScript)
38
+ npm init -y && npm install -D typescript tsup vitest
39
+ ```
40
+
41
+ ### 2. Configure Test Runner
42
+
43
+ ```bash
44
+ # Next.js / React
45
+ npm install -D vitest @testing-library/react @testing-library/dom jsdom @vitejs/plugin-react
46
+ ```
47
+
48
+ ### 3. Create Base Structure
49
+
50
+ ```
51
+ src/
52
+ ├── app/ # Routes (Next.js)
53
+ ├── components/ # UI components
54
+ ├── lib/ # Business logic
55
+ ├── tests/ # Tests
56
+ └── types/ # TypeScript types
57
+ ```
58
+
59
+ ### 4. Configure vitest.config.ts
60
+
61
+ ```typescript
62
+ import { defineConfig } from 'vitest/config';
63
+ import react from '@vitejs/plugin-react';
64
+
65
+ export default defineConfig({
66
+ plugins: [react()],
67
+ test: {
68
+ environment: 'jsdom',
69
+ globals: true,
70
+ },
71
+ });
72
+ ```
73
+
74
+ ### 5. Verify Setup
75
+
76
+ ```bash
77
+ npm test -- --run # Must run without errors (0 tests ok)
78
+ ```
79
+
80
+ ### 6. Configure Environment Separation (MANDATORY)
81
+
82
+ > Delegate to skill `deployment-procedures` section "Environment Separation".
83
+ > Follow all rules for `.env.local`, `.env.example`, and `.env.production`.
84
+
85
+ **Quick checklist:**
86
+
87
+ ```markdown
88
+ ⚠️ ENVIRONMENT VALIDATION GATE
89
+
90
+ [ ] `.env.example` exists with generic placeholders
91
+ [ ] `.env.local` exists with DEVELOPMENT credentials
92
+ [ ] `.env.local` does NOT point to production projects
93
+ [ ] `.gitignore` includes `.env.local` and `.env.production`
94
+ [ ] Production variables will be configured ONLY on deploy platform (Vercel)
95
+ ```
96
+
97
+ **If dev projects don't exist, ask the user:**
98
+
99
+ ```markdown
100
+ ## 🔐 Environment Separation
101
+
102
+ For security, I need **DEVELOPMENT** credentials (not production).
103
+
104
+ | Service | Required Action |
105
+ |---------|----------------|
106
+ | **Supabase** | Create project `{name}-dev` in Supabase dashboard |
107
+ | **Stripe** | Use `test` keys (already available in dashboard) |
108
+ | **Sanity** | Create `development` dataset (Settings → Datasets) |
109
+
110
+ When you have the dev credentials, let me know to configure `.env.local`.
111
+ ```
112
+
113
+ ---
114
+
115
+ ## 🔄 Existing Project (Has Code)
116
+
117
+ 1. Verify test runner exists
118
+ 2. If missing → install (step 2 above)
119
+ 3. Verify folder structure
120
+ 4. **Verify environment separation (step 6 above)**
121
+ 5. Proceed to TDD phase
122
+
123
+ > [!TIP]
124
+ > If project already exists and has tests configured, this phase is automatic (verification only).
125
+
126
+ ---
127
+
128
+ ## 🔴 Exit Gate
129
+
130
+ ```markdown
131
+ [ ] Project initialized (package.json exists)
132
+ [ ] Test runner configured (vitest/jest)
133
+ [ ] Folder structure created
134
+ [ ] `npm test` runs without errors
135
+ [ ] **Environments separated (dev ≠ prod)** ⭐
136
+ [ ] **`.env.local` with DEVELOPMENT credentials only** ⭐
137
+ [ ] **`.env.example` with generic placeholders** ⭐
138
+ ```
139
+
140
+ > After passing this gate, sync setup tasks with tracker.
141
+ > Follow skill `project-tracking-patterns` for sync protocol.