novahiz 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 (1013) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE.md +46 -0
  3. package/README.md +123 -0
  4. package/adapters/README.md +13 -0
  5. package/adapters/opencode/agent/novahiz-agent.md +31 -0
  6. package/adapters/opencode/commands/novahiz-clean.md +15 -0
  7. package/adapters/opencode/commands/novahiz-doctor.md +9 -0
  8. package/adapters/opencode/commands/novahiz-plan.md +24 -0
  9. package/adapters/opencode/commands/novahiz-status.md +11 -0
  10. package/adapters/opencode/instructions.md +69 -0
  11. package/adapters/opencode/novahiz.ts +266 -0
  12. package/bin/novahiz.cmd +2 -0
  13. package/bin/novahiz.mjs +7 -0
  14. package/bundled-skills/AGENTS.md +50 -0
  15. package/bundled-skills/LICENSE +21 -0
  16. package/bundled-skills/README.md +202 -0
  17. package/bundled-skills/SKILL.md +313 -0
  18. package/bundled-skills/a11y-audit/SKILL.md +211 -0
  19. package/bundled-skills/a11y-audit/assets/sample-component.tsx +51 -0
  20. package/bundled-skills/a11y-audit/expected_outputs/sample-contrast-output.txt +39 -0
  21. package/bundled-skills/a11y-audit/expected_outputs/sample-scan-output.json +34 -0
  22. package/bundled-skills/a11y-audit/expected_outputs/sample-scan-report.md +63 -0
  23. package/bundled-skills/a11y-audit/references/aria-patterns.md +223 -0
  24. package/bundled-skills/a11y-audit/references/audit-report-template.md +46 -0
  25. package/bundled-skills/a11y-audit/references/ci-cd-integration.md +127 -0
  26. package/bundled-skills/a11y-audit/references/color-contrast-guide.md +83 -0
  27. package/bundled-skills/a11y-audit/references/examples-by-framework.md +312 -0
  28. package/bundled-skills/a11y-audit/references/framework-a11y-patterns.md +661 -0
  29. package/bundled-skills/a11y-audit/references/testing-checklist.md +41 -0
  30. package/bundled-skills/a11y-audit/references/wcag-22-new-criteria.md +79 -0
  31. package/bundled-skills/a11y-audit/references/wcag-quick-ref.md +113 -0
  32. package/bundled-skills/a11y-audit/scripts/a11y_scanner.py +684 -0
  33. package/bundled-skills/a11y-audit/scripts/contrast_checker.py +504 -0
  34. package/bundled-skills/ab-testing/SKILL.md +353 -0
  35. package/bundled-skills/ab-testing/evals/evals.json +105 -0
  36. package/bundled-skills/ab-testing/references/sample-size-guide.md +263 -0
  37. package/bundled-skills/ab-testing/references/test-templates.md +277 -0
  38. package/bundled-skills/ad-creative/SKILL.md +425 -0
  39. package/bundled-skills/ad-creative/assets/creative-review-template.html +400 -0
  40. package/bundled-skills/ad-creative/evals/evals.json +217 -0
  41. package/bundled-skills/ad-creative/references/creative-review-page.md +106 -0
  42. package/bundled-skills/ad-creative/references/creative-roadmap.md +118 -0
  43. package/bundled-skills/ad-creative/references/generative-tools.md +637 -0
  44. package/bundled-skills/ad-creative/references/hook-system.md +115 -0
  45. package/bundled-skills/ad-creative/references/imessage-video-ads.md +201 -0
  46. package/bundled-skills/ad-creative/references/meta-creative-formats.md +114 -0
  47. package/bundled-skills/ad-creative/references/motion-video-ads.md +126 -0
  48. package/bundled-skills/ad-creative/references/platform-specs.md +213 -0
  49. package/bundled-skills/ad-creative/references/short-form-video-specs.md +213 -0
  50. package/bundled-skills/ad-creative/references/static-ad-templates.md +308 -0
  51. package/bundled-skills/ads/SKILL.md +499 -0
  52. package/bundled-skills/ads/evals/evals.json +157 -0
  53. package/bundled-skills/ads/references/abm-playbook.md +93 -0
  54. package/bundled-skills/ads/references/ad-copy-templates.md +207 -0
  55. package/bundled-skills/ads/references/audience-targeting.md +243 -0
  56. package/bundled-skills/ads/references/audit-guardrails.md +83 -0
  57. package/bundled-skills/ads/references/b2b-paid-playbook.md +115 -0
  58. package/bundled-skills/ads/references/conversion-tracking.md +361 -0
  59. package/bundled-skills/ads/references/creative-research-automation.md +103 -0
  60. package/bundled-skills/ads/references/google-ads-audit-checklist.md +84 -0
  61. package/bundled-skills/ads/references/google-search-playbook.md +120 -0
  62. package/bundled-skills/ads/references/linkedin-b2b-playbook.md +107 -0
  63. package/bundled-skills/ads/references/meta-decision-system.md +176 -0
  64. package/bundled-skills/ads/references/payback-period.md +69 -0
  65. package/bundled-skills/ads/references/platform-setup-checklists.md +277 -0
  66. package/bundled-skills/ads/references/rsa-output-spec.md +88 -0
  67. package/bundled-skills/adversarial-reviewer/SKILL.md +247 -0
  68. package/bundled-skills/agent-device/SKILL.md +20 -0
  69. package/bundled-skills/ai-seo/SKILL.md +488 -0
  70. package/bundled-skills/ai-seo/evals/evals.json +135 -0
  71. package/bundled-skills/ai-seo/references/agent-readiness.md +57 -0
  72. package/bundled-skills/ai-seo/references/citations-vs-recommendations.md +85 -0
  73. package/bundled-skills/ai-seo/references/content-patterns.md +287 -0
  74. package/bundled-skills/ai-seo/references/content-types.md +71 -0
  75. package/bundled-skills/ai-seo/references/format-volatility.md +98 -0
  76. package/bundled-skills/ai-seo/references/okf.md +104 -0
  77. package/bundled-skills/ai-seo/references/platform-ranking-factors.md +154 -0
  78. package/bundled-skills/ai-seo/references/youtube-ai-citations.md +60 -0
  79. package/bundled-skills/analytics/SKILL.md +310 -0
  80. package/bundled-skills/analytics/evals/evals.json +90 -0
  81. package/bundled-skills/analytics/references/event-library.md +260 -0
  82. package/bundled-skills/analytics/references/ga4-implementation.md +300 -0
  83. package/bundled-skills/analytics/references/gtm-implementation.md +390 -0
  84. package/bundled-skills/android-emulator/SKILL.md +32 -0
  85. package/bundled-skills/anti-AI-design/SKILL.md +189 -0
  86. package/bundled-skills/anti-pattern-detector/SKILL.md +185 -0
  87. package/bundled-skills/anti-pattern-detector/references/async-network-patterns.md +581 -0
  88. package/bundled-skills/anti-pattern-detector/references/build-deploy-patterns.md +554 -0
  89. package/bundled-skills/anti-pattern-detector/references/cache-patterns.md +446 -0
  90. package/bundled-skills/anti-pattern-detector/references/cloud-infra-patterns.md +538 -0
  91. package/bundled-skills/anti-pattern-detector/references/concurrency-patterns.md +558 -0
  92. package/bundled-skills/anti-pattern-detector/references/language-specific-patterns.md +740 -0
  93. package/bundled-skills/anti-pattern-detector/references/monitoring-patterns.md +456 -0
  94. package/bundled-skills/api-design-reviewer/SKILL.md +433 -0
  95. package/bundled-skills/api-design-reviewer/references/api_antipatterns.md +680 -0
  96. package/bundled-skills/api-design-reviewer/references/rest_design_rules.md +487 -0
  97. package/bundled-skills/api-design-reviewer/scripts/api_linter.py +956 -0
  98. package/bundled-skills/api-design-reviewer/scripts/api_scorecard.py +1661 -0
  99. package/bundled-skills/api-design-reviewer/scripts/breaking_change_detector.py +1102 -0
  100. package/bundled-skills/apple-hig-expert/SKILL.md +108 -0
  101. package/bundled-skills/apple-hig-expert/references/accessibility.md +55 -0
  102. package/bundled-skills/apple-hig-expert/references/platform-specifics.md +48 -0
  103. package/bundled-skills/apple-hig-expert/references/visual-design.md +69 -0
  104. package/bundled-skills/apple-hig-expert/scripts/hig_checker.py +97 -0
  105. package/bundled-skills/apple-hig-expert/templates/hig-audit-template.md +83 -0
  106. package/bundled-skills/build-graph/SKILL.md +38 -0
  107. package/bundled-skills/claude-history-ingest/SKILL.md +463 -0
  108. package/bundled-skills/claude-history-ingest/references/claude-data-format.md +118 -0
  109. package/bundled-skills/clean-code/SKILL.md +99 -0
  110. package/bundled-skills/code-reviewer/README.md +92 -0
  111. package/bundled-skills/code-reviewer/SKILL.md +183 -0
  112. package/bundled-skills/code-reviewer/assets/sample_c_clean.c +71 -0
  113. package/bundled-skills/code-reviewer/assets/sample_c_smells.c +66 -0
  114. package/bundled-skills/code-reviewer/assets/sample_csharp_clean.cs +100 -0
  115. package/bundled-skills/code-reviewer/assets/sample_csharp_smells.cs +78 -0
  116. package/bundled-skills/code-reviewer/assets/sample_java_clean.java +55 -0
  117. package/bundled-skills/code-reviewer/assets/sample_java_smells.java +56 -0
  118. package/bundled-skills/code-reviewer/expected_outputs/sample_c_clean_quality.json +65 -0
  119. package/bundled-skills/code-reviewer/expected_outputs/sample_c_smells_quality.json +155 -0
  120. package/bundled-skills/code-reviewer/expected_outputs/sample_csharp_clean_quality.json +135 -0
  121. package/bundled-skills/code-reviewer/expected_outputs/sample_csharp_smells_quality.json +143 -0
  122. package/bundled-skills/code-reviewer/expected_outputs/sample_java_clean_quality.json +53 -0
  123. package/bundled-skills/code-reviewer/expected_outputs/sample_java_smells_quality.json +83 -0
  124. package/bundled-skills/code-reviewer/languages/c.md +103 -0
  125. package/bundled-skills/code-reviewer/languages/cpp.md +103 -0
  126. package/bundled-skills/code-reviewer/languages/csharp.md +97 -0
  127. package/bundled-skills/code-reviewer/languages/dart.md +108 -0
  128. package/bundled-skills/code-reviewer/languages/go.md +92 -0
  129. package/bundled-skills/code-reviewer/languages/java.md +103 -0
  130. package/bundled-skills/code-reviewer/languages/kotlin.md +88 -0
  131. package/bundled-skills/code-reviewer/languages/php.md +109 -0
  132. package/bundled-skills/code-reviewer/languages/python.md +94 -0
  133. package/bundled-skills/code-reviewer/languages/ruby.md +105 -0
  134. package/bundled-skills/code-reviewer/languages/rust.md +99 -0
  135. package/bundled-skills/code-reviewer/languages/swift.md +88 -0
  136. package/bundled-skills/code-reviewer/languages/typescript.md +97 -0
  137. package/bundled-skills/code-reviewer/rules/universal.md +49 -0
  138. package/bundled-skills/code-reviewer/scripts/code_quality_checker.py +1020 -0
  139. package/bundled-skills/code-reviewer/scripts/pr_analyzer.py +535 -0
  140. package/bundled-skills/code-reviewer/scripts/review_report_generator.py +505 -0
  141. package/bundled-skills/code-understand/SKILL.md +90 -0
  142. package/bundled-skills/codex-history-ingest/SKILL.md +248 -0
  143. package/bundled-skills/codex-history-ingest/references/codex-data-format.md +82 -0
  144. package/bundled-skills/cold-email/SKILL.md +159 -0
  145. package/bundled-skills/cold-email/evals/evals.json +94 -0
  146. package/bundled-skills/cold-email/references/benchmarks.md +83 -0
  147. package/bundled-skills/cold-email/references/follow-up-sequences.md +81 -0
  148. package/bundled-skills/cold-email/references/frameworks.md +90 -0
  149. package/bundled-skills/cold-email/references/personalization.md +79 -0
  150. package/bundled-skills/cold-email/references/subject-lines.md +53 -0
  151. package/bundled-skills/competitor-profiling/SKILL.md +415 -0
  152. package/bundled-skills/competitor-profiling/evals/evals.json +85 -0
  153. package/bundled-skills/competitor-profiling/references/templates.md +167 -0
  154. package/bundled-skills/competitor-profiling/references/tool-reference.md +179 -0
  155. package/bundled-skills/computer-use/SKILL.md +41 -0
  156. package/bundled-skills/content-strategy/SKILL.md +439 -0
  157. package/bundled-skills/content-strategy/evals/evals.json +116 -0
  158. package/bundled-skills/content-strategy/references/content-distribution.md +83 -0
  159. package/bundled-skills/content-strategy/references/headless-cms.md +194 -0
  160. package/bundled-skills/copilot-history-ingest/SKILL.md +376 -0
  161. package/bundled-skills/copilot-history-ingest/references/copilot-data-format.md +321 -0
  162. package/bundled-skills/copy-editing/SKILL.md +457 -0
  163. package/bundled-skills/copy-editing/evals/evals.json +89 -0
  164. package/bundled-skills/copy-editing/references/checklist.md +66 -0
  165. package/bundled-skills/copy-editing/references/content-refresh.md +38 -0
  166. package/bundled-skills/copy-editing/references/plain-english-alternatives.md +394 -0
  167. package/bundled-skills/copywriting/SKILL.md +256 -0
  168. package/bundled-skills/copywriting/evals/evals.json +126 -0
  169. package/bundled-skills/copywriting/references/copy-frameworks.md +433 -0
  170. package/bundled-skills/copywriting/references/natural-transitions.md +272 -0
  171. package/bundled-skills/cro/SKILL.md +187 -0
  172. package/bundled-skills/cro/evals/evals.json +111 -0
  173. package/bundled-skills/cro/references/experiments.md +248 -0
  174. package/bundled-skills/cro/references/form.md +422 -0
  175. package/bundled-skills/cross-linker/SKILL.md +309 -0
  176. package/bundled-skills/customer-research/SKILL.md +305 -0
  177. package/bundled-skills/customer-research/evals/evals.json +176 -0
  178. package/bundled-skills/customer-research/references/interviews-and-surveys.md +155 -0
  179. package/bundled-skills/customer-research/references/source-guides.md +401 -0
  180. package/bundled-skills/daily-update/SKILL.md +223 -0
  181. package/bundled-skills/dart-add-unit-test/SKILL.md +122 -0
  182. package/bundled-skills/dart-build-cli-app/SKILL.md +185 -0
  183. package/bundled-skills/dart-collect-coverage/SKILL.md +141 -0
  184. package/bundled-skills/dart-fix-runtime-errors/SKILL.md +166 -0
  185. package/bundled-skills/dart-generate-test-mocks/SKILL.md +155 -0
  186. package/bundled-skills/dart-migrate-to-checks-package/SKILL.md +528 -0
  187. package/bundled-skills/dart-resolve-package-conflicts/SKILL.md +116 -0
  188. package/bundled-skills/dart-run-static-analysis/SKILL.md +104 -0
  189. package/bundled-skills/dart-setup-ffi-assets/SKILL.md +419 -0
  190. package/bundled-skills/dart-use-doc-examples/SKILL.md +96 -0
  191. package/bundled-skills/dart-use-ffigen/SKILL.md +218 -0
  192. package/bundled-skills/dart-use-pattern-matching/SKILL.md +146 -0
  193. package/bundled-skills/dart-use-primary-constructors/SKILL.md +262 -0
  194. package/bundled-skills/dart-write-documentation/SKILL.md +136 -0
  195. package/bundled-skills/database-designer/README.md +388 -0
  196. package/bundled-skills/database-designer/SKILL.md +314 -0
  197. package/bundled-skills/database-designer/assets/sample_query_patterns.json +375 -0
  198. package/bundled-skills/database-designer/assets/sample_schema.json +372 -0
  199. package/bundled-skills/database-designer/assets/sample_schema.sql +207 -0
  200. package/bundled-skills/database-designer/expected_outputs/index_optimization_sample.txt +60 -0
  201. package/bundled-skills/database-designer/expected_outputs/migration_sample.txt +124 -0
  202. package/bundled-skills/database-designer/expected_outputs/schema_analysis_sample.txt +222 -0
  203. package/bundled-skills/database-designer/index_optimizer.py +926 -0
  204. package/bundled-skills/database-designer/migration_generator.py +1199 -0
  205. package/bundled-skills/database-designer/references/database-design-reference.md +476 -0
  206. package/bundled-skills/database-designer/references/database_selection_decision_tree.md +373 -0
  207. package/bundled-skills/database-designer/references/index_strategy_patterns.md +424 -0
  208. package/bundled-skills/database-designer/references/normalization_guide.md +354 -0
  209. package/bundled-skills/database-designer/schema_analyzer.py +982 -0
  210. package/bundled-skills/debug-issue/SKILL.md +28 -0
  211. package/bundled-skills/defuddle/SKILL.md +41 -0
  212. package/bundled-skills/dependency-auditor/README.md +524 -0
  213. package/bundled-skills/dependency-auditor/SKILL.md +85 -0
  214. package/bundled-skills/dependency-auditor/assets/sample_go.mod +53 -0
  215. package/bundled-skills/dependency-auditor/assets/sample_package.json +72 -0
  216. package/bundled-skills/dependency-auditor/assets/sample_requirements.txt +71 -0
  217. package/bundled-skills/dependency-auditor/expected_outputs/sample_license_report.txt +37 -0
  218. package/bundled-skills/dependency-auditor/expected_outputs/sample_upgrade_plan.txt +59 -0
  219. package/bundled-skills/dependency-auditor/expected_outputs/sample_vulnerability_report.json +71 -0
  220. package/bundled-skills/dependency-auditor/references/dependency_management_best_practices.md +643 -0
  221. package/bundled-skills/dependency-auditor/references/license_compatibility_matrix.md +238 -0
  222. package/bundled-skills/dependency-auditor/references/vulnerability_assessment_guide.md +461 -0
  223. package/bundled-skills/dependency-auditor/scripts/dep_scanner.py +794 -0
  224. package/bundled-skills/dependency-auditor/scripts/license_checker.py +996 -0
  225. package/bundled-skills/dependency-auditor/scripts/upgrade_planner.py +1029 -0
  226. package/bundled-skills/dependency-auditor/test-inventory.json +421 -0
  227. package/bundled-skills/dependency-auditor/test-project/package.json +72 -0
  228. package/bundled-skills/design-taste-frontend/SKILL.md +247 -0
  229. package/bundled-skills/dogfood/SKILL.md +27 -0
  230. package/bundled-skills/eas-app-stores/SKILL.md +176 -0
  231. package/bundled-skills/eas-app-stores/agents/openai.yaml +4 -0
  232. package/bundled-skills/eas-app-stores/references/app-store-metadata.md +497 -0
  233. package/bundled-skills/eas-app-stores/references/ios-app-store.md +376 -0
  234. package/bundled-skills/eas-app-stores/references/native-ios.md +167 -0
  235. package/bundled-skills/eas-app-stores/references/play-store.md +244 -0
  236. package/bundled-skills/eas-app-stores/references/testflight.md +62 -0
  237. package/bundled-skills/eas-app-stores/references/workflows.md +120 -0
  238. package/bundled-skills/eas-hosting/SKILL.md +431 -0
  239. package/bundled-skills/eas-hosting/agents/openai.yaml +4 -0
  240. package/bundled-skills/eas-observe/SKILL.md +54 -0
  241. package/bundled-skills/eas-observe/agents/openai.yaml +4 -0
  242. package/bundled-skills/eas-observe/references/metrics.md +98 -0
  243. package/bundled-skills/eas-observe/references/queries.md +403 -0
  244. package/bundled-skills/eas-observe/references/setup.md +476 -0
  245. package/bundled-skills/eas-observe/references/third-party.md +136 -0
  246. package/bundled-skills/eas-simulator/SKILL.md +208 -0
  247. package/bundled-skills/eas-simulator/agents/openai.yaml +4 -0
  248. package/bundled-skills/eas-simulator/references/controllers.md +106 -0
  249. package/bundled-skills/eas-simulator/references/run-your-app.md +224 -0
  250. package/bundled-skills/eas-simulator/references/troubleshooting.md +44 -0
  251. package/bundled-skills/eas-update/SKILL.md +146 -0
  252. package/bundled-skills/eas-update/agents/openai.yaml +4 -0
  253. package/bundled-skills/eas-update-insights/SKILL.md +238 -0
  254. package/bundled-skills/eas-update-insights/agents/openai.yaml +4 -0
  255. package/bundled-skills/eas-update-insights/references/channel-insights-schema.md +47 -0
  256. package/bundled-skills/eas-update-insights/references/update-insights-schema.md +69 -0
  257. package/bundled-skills/eas-workflows/SKILL.md +99 -0
  258. package/bundled-skills/eas-workflows/agents/openai.yaml +4 -0
  259. package/bundled-skills/eas-workflows/scripts/fetch.js +109 -0
  260. package/bundled-skills/eas-workflows/scripts/package.json +6 -0
  261. package/bundled-skills/emails/SKILL.md +311 -0
  262. package/bundled-skills/emails/evals/evals.json +93 -0
  263. package/bundled-skills/emails/references/copy-guidelines.md +113 -0
  264. package/bundled-skills/emails/references/email-types.md +515 -0
  265. package/bundled-skills/emails/references/sequence-templates.md +168 -0
  266. package/bundled-skills/engineering-standards/SKILL.md +736 -0
  267. package/bundled-skills/env-secrets-manager/SKILL.md +260 -0
  268. package/bundled-skills/env-secrets-manager/references/secret-patterns.md +41 -0
  269. package/bundled-skills/env-secrets-manager/references/validation-detection-rotation.md +358 -0
  270. package/bundled-skills/env-secrets-manager/scripts/env_auditor.py +145 -0
  271. package/bundled-skills/explore-codebase/SKILL.md +29 -0
  272. package/bundled-skills/expo-animation/LICENSE +21 -0
  273. package/bundled-skills/expo-animation/RECIPES.md +385 -0
  274. package/bundled-skills/expo-animation/SKILL.md +267 -0
  275. package/bundled-skills/expo-animation/agents/openai.yaml +4 -0
  276. package/bundled-skills/expo-app-clip/SKILL.md +290 -0
  277. package/bundled-skills/expo-app-clip/agents/openai.yaml +4 -0
  278. package/bundled-skills/expo-app-clip/references/native-module.md +96 -0
  279. package/bundled-skills/expo-brownfield/SKILL.md +62 -0
  280. package/bundled-skills/expo-brownfield/agents/openai.yaml +4 -0
  281. package/bundled-skills/expo-brownfield/references/brownfield-integrated.md +526 -0
  282. package/bundled-skills/expo-brownfield/references/brownfield-isolated.md +451 -0
  283. package/bundled-skills/expo-brownfield/references/comparison.md +63 -0
  284. package/bundled-skills/expo-brownfield/references/troubleshooting.md +88 -0
  285. package/bundled-skills/expo-data-fetching/SKILL.md +478 -0
  286. package/bundled-skills/expo-data-fetching/agents/openai.yaml +4 -0
  287. package/bundled-skills/expo-data-fetching/references/expo-router-loaders.md +341 -0
  288. package/bundled-skills/expo-data-fetching/references/offline-and-cancellation.md +68 -0
  289. package/bundled-skills/expo-design-system/SKILL.md +376 -0
  290. package/bundled-skills/expo-design-system/agents/openai.yaml +4 -0
  291. package/bundled-skills/expo-design-system/references/audit.md +190 -0
  292. package/bundled-skills/expo-design-system/references/native-slop.md +74 -0
  293. package/bundled-skills/expo-dev-client/SKILL.md +182 -0
  294. package/bundled-skills/expo-dev-client/agents/openai.yaml +4 -0
  295. package/bundled-skills/expo-dom/SKILL.md +425 -0
  296. package/bundled-skills/expo-dom/agents/openai.yaml +4 -0
  297. package/bundled-skills/expo-examples/SKILL.md +106 -0
  298. package/bundled-skills/expo-examples/agents/openai.yaml +4 -0
  299. package/bundled-skills/expo-examples/references/catalog.md +105 -0
  300. package/bundled-skills/expo-migrate-module/SKILL.md +113 -0
  301. package/bundled-skills/expo-migrate-module/agents/openai.yaml +4 -0
  302. package/bundled-skills/expo-migrate-module/references/compatibility.md +73 -0
  303. package/bundled-skills/expo-migrate-module/references/example.md +212 -0
  304. package/bundled-skills/expo-migrate-module/references/migration-map.md +306 -0
  305. package/bundled-skills/expo-module/SKILL.md +151 -0
  306. package/bundled-skills/expo-module/agents/openai.yaml +4 -0
  307. package/bundled-skills/expo-module/references/config-plugin.md +90 -0
  308. package/bundled-skills/expo-module/references/create-expo-module.md +206 -0
  309. package/bundled-skills/expo-module/references/lifecycle.md +127 -0
  310. package/bundled-skills/expo-module/references/module-config.md +48 -0
  311. package/bundled-skills/expo-module/references/native-module.md +286 -0
  312. package/bundled-skills/expo-module/references/native-view.md +171 -0
  313. package/bundled-skills/expo-native-ui/SKILL.md +201 -0
  314. package/bundled-skills/expo-native-ui/agents/openai.yaml +4 -0
  315. package/bundled-skills/expo-native-ui/references/controls.md +231 -0
  316. package/bundled-skills/expo-native-ui/references/gradients.md +106 -0
  317. package/bundled-skills/expo-native-ui/references/icons.md +232 -0
  318. package/bundled-skills/expo-native-ui/references/media.md +193 -0
  319. package/bundled-skills/expo-native-ui/references/storage.md +121 -0
  320. package/bundled-skills/expo-native-ui/references/visual-effects.md +198 -0
  321. package/bundled-skills/expo-native-ui/references/webgpu-three.md +605 -0
  322. package/bundled-skills/expo-overview/SKILL.md +115 -0
  323. package/bundled-skills/expo-overview/agents/openai.yaml +4 -0
  324. package/bundled-skills/expo-project-structure/SKILL.md +114 -0
  325. package/bundled-skills/expo-project-structure/agents/openai.yaml +4 -0
  326. package/bundled-skills/expo-router/SKILL.md +240 -0
  327. package/bundled-skills/expo-router/agents/openai.yaml +4 -0
  328. package/bundled-skills/expo-router/references/form-sheet.md +253 -0
  329. package/bundled-skills/expo-router/references/route-structure.md +229 -0
  330. package/bundled-skills/expo-router/references/search.md +248 -0
  331. package/bundled-skills/expo-router/references/tabs.md +433 -0
  332. package/bundled-skills/expo-router/references/toolbar-and-headers.md +284 -0
  333. package/bundled-skills/expo-router/references/zoom-transitions.md +158 -0
  334. package/bundled-skills/expo-skill-eval/SKILL.md +314 -0
  335. package/bundled-skills/expo-skill-eval/agents/visual-grader.md +52 -0
  336. package/bundled-skills/expo-skill-eval/references/design-rubric.md +45 -0
  337. package/bundled-skills/expo-skill-eval/references/runtime-matrix.md +34 -0
  338. package/bundled-skills/expo-skill-eval/scripts/check-static.sh +64 -0
  339. package/bundled-skills/expo-skill-eval/scripts/clean-fixture.sh +56 -0
  340. package/bundled-skills/expo-skill-eval/scripts/generate_viewer.py +450 -0
  341. package/bundled-skills/expo-skill-eval/scripts/latest-sdk.sh +46 -0
  342. package/bundled-skills/expo-skill-eval/scripts/make-fixture.sh +95 -0
  343. package/bundled-skills/expo-skill-eval/scripts/make-workspace.sh +31 -0
  344. package/bundled-skills/expo-skill-eval/scripts/snapshot-android.sh +284 -0
  345. package/bundled-skills/expo-skill-eval/scripts/snapshot-ios.sh +132 -0
  346. package/bundled-skills/expo-skill-eval/scripts/snapshot-web.sh +61 -0
  347. package/bundled-skills/expo-skill-feedback/SKILL.md +87 -0
  348. package/bundled-skills/expo-skill-feedback/agents/openai.yaml +4 -0
  349. package/bundled-skills/expo-skill-feedback/scripts/skill-event.cjs +180 -0
  350. package/bundled-skills/expo-skill-feedback/scripts/telemetry.cjs +65 -0
  351. package/bundled-skills/expo-skill-feedback/scripts/telemetry_common.cjs +171 -0
  352. package/bundled-skills/expo-ui/SKILL.md +101 -0
  353. package/bundled-skills/expo-ui/agents/openai.yaml +4 -0
  354. package/bundled-skills/expo-ui/references/drop-in-replacements.md +27 -0
  355. package/bundled-skills/expo-ui/references/jetpack-compose.md +73 -0
  356. package/bundled-skills/expo-ui/references/swift-ui.md +73 -0
  357. package/bundled-skills/expo-ui/references/universal.md +104 -0
  358. package/bundled-skills/expo-ui/scripts/list-components.js +193 -0
  359. package/bundled-skills/expo-upgrade/SKILL.md +150 -0
  360. package/bundled-skills/expo-upgrade/agents/openai.yaml +4 -0
  361. package/bundled-skills/expo-upgrade/references/expo-av-to-audio.md +132 -0
  362. package/bundled-skills/expo-upgrade/references/expo-av-to-video.md +160 -0
  363. package/bundled-skills/expo-upgrade/references/native-tabs.md +124 -0
  364. package/bundled-skills/expo-upgrade/references/new-architecture.md +79 -0
  365. package/bundled-skills/expo-upgrade/references/react-19.md +79 -0
  366. package/bundled-skills/expo-upgrade/references/react-compiler.md +59 -0
  367. package/bundled-skills/expo-upgrade/references/react-navigation-to-expo-router.md +61 -0
  368. package/bundled-skills/expo-web-to-native/SKILL.md +91 -0
  369. package/bundled-skills/expo-web-to-native/agents/openai.yaml +4 -0
  370. package/bundled-skills/expo-web-to-native/references/false-friends.md +119 -0
  371. package/bundled-skills/expo-web-to-native/references/native-patterns.md +39 -0
  372. package/bundled-skills/expo-web-to-native/references/run-as-goal.md +48 -0
  373. package/bundled-skills/expo-web-to-native/references/verify-on-device.md +45 -0
  374. package/bundled-skills/find-skills/SKILL.md +141 -0
  375. package/bundled-skills/fix/SKILL.md +113 -0
  376. package/bundled-skills/fix/flaky-taxonomy.md +134 -0
  377. package/bundled-skills/flutter-add-integration-test/SKILL.md +163 -0
  378. package/bundled-skills/flutter-add-widget-preview/SKILL.md +145 -0
  379. package/bundled-skills/flutter-add-widget-test/SKILL.md +154 -0
  380. package/bundled-skills/flutter-apply-architecture-best-practices/SKILL.md +162 -0
  381. package/bundled-skills/flutter-build-responsive-layout/SKILL.md +139 -0
  382. package/bundled-skills/flutter-fix-layout-issues/SKILL.md +130 -0
  383. package/bundled-skills/flutter-implement-json-serialization/SKILL.md +153 -0
  384. package/bundled-skills/flutter-setup-declarative-routing/SKILL.md +255 -0
  385. package/bundled-skills/flutter-setup-localization/SKILL.md +210 -0
  386. package/bundled-skills/flutter-use-http-package/SKILL.md +174 -0
  387. package/bundled-skills/gate/SKILL.md +13 -0
  388. package/bundled-skills/graph-colorize/SKILL.md +180 -0
  389. package/bundled-skills/hermes-history-ingest/SKILL.md +239 -0
  390. package/bundled-skills/hermes-history-ingest/references/hermes-data-format.md +131 -0
  391. package/bundled-skills/humanizer/SKILL.md +374 -0
  392. package/bundled-skills/impeccable/SKILL.md +89 -0
  393. package/bundled-skills/impeccable/reference/adapt.md +312 -0
  394. package/bundled-skills/impeccable/reference/adapt.native.md +58 -0
  395. package/bundled-skills/impeccable/reference/android.md +46 -0
  396. package/bundled-skills/impeccable/reference/animate.md +89 -0
  397. package/bundled-skills/impeccable/reference/audit.md +136 -0
  398. package/bundled-skills/impeccable/reference/audit.native.md +139 -0
  399. package/bundled-skills/impeccable/reference/bolder.md +33 -0
  400. package/bundled-skills/impeccable/reference/clarify.md +94 -0
  401. package/bundled-skills/impeccable/reference/colorize.md +86 -0
  402. package/bundled-skills/impeccable/reference/craft-floor.md +44 -0
  403. package/bundled-skills/impeccable/reference/craft.md +5 -0
  404. package/bundled-skills/impeccable/reference/critique.md +806 -0
  405. package/bundled-skills/impeccable/reference/degraded/asset-producer.md +37 -0
  406. package/bundled-skills/impeccable/reference/degraded/documenter.md +24 -0
  407. package/bundled-skills/impeccable/reference/degraded/finish-reviewer.md +38 -0
  408. package/bundled-skills/impeccable/reference/degraded/manual-edit-applier.md +92 -0
  409. package/bundled-skills/impeccable/reference/delight.md +70 -0
  410. package/bundled-skills/impeccable/reference/distill.md +111 -0
  411. package/bundled-skills/impeccable/reference/doctor.md +54 -0
  412. package/bundled-skills/impeccable/reference/document.md +416 -0
  413. package/bundled-skills/impeccable/reference/extract.md +69 -0
  414. package/bundled-skills/impeccable/reference/harden.md +336 -0
  415. package/bundled-skills/impeccable/reference/hooks.md +111 -0
  416. package/bundled-skills/impeccable/reference/init.md +131 -0
  417. package/bundled-skills/impeccable/reference/ios.md +51 -0
  418. package/bundled-skills/impeccable/reference/layout.md +84 -0
  419. package/bundled-skills/impeccable/reference/live-setup.md +104 -0
  420. package/bundled-skills/impeccable/reference/live.md +325 -0
  421. package/bundled-skills/impeccable/reference/new-work.md +145 -0
  422. package/bundled-skills/impeccable/reference/onboard.md +234 -0
  423. package/bundled-skills/impeccable/reference/operate.md +61 -0
  424. package/bundled-skills/impeccable/reference/optimize.md +258 -0
  425. package/bundled-skills/impeccable/reference/overdrive.md +127 -0
  426. package/bundled-skills/impeccable/reference/polish.md +105 -0
  427. package/bundled-skills/impeccable/reference/quieter.md +99 -0
  428. package/bundled-skills/impeccable/reference/routing.md +24 -0
  429. package/bundled-skills/impeccable/reference/shape.md +59 -0
  430. package/bundled-skills/impeccable/reference/typeset.md +80 -0
  431. package/bundled-skills/impeccable/reference/visualize.md +46 -0
  432. package/bundled-skills/impeccable/scripts/VERSION +1 -0
  433. package/bundled-skills/impeccable/scripts/bin/windows-x64/impeccable.exe +0 -0
  434. package/bundled-skills/impeccable/scripts/command-metadata.json +94 -0
  435. package/bundled-skills/impeccable/scripts/data/font-index-failures.json +121 -0
  436. package/bundled-skills/impeccable/scripts/data/font-index.json +1 -0
  437. package/bundled-skills/impeccable/scripts/impeccable +206 -0
  438. package/bundled-skills/impeccable/scripts/impeccable.cmd +214 -0
  439. package/bundled-skills/impeccable/scripts/live-browser-dom.js +167 -0
  440. package/bundled-skills/impeccable/scripts/live-browser-ignores.js +242 -0
  441. package/bundled-skills/impeccable/scripts/live-browser-session.js +144 -0
  442. package/bundled-skills/impeccable/scripts/live-browser.js +12990 -0
  443. package/bundled-skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
  444. package/bundled-skills/impl-validator/SKILL.md +118 -0
  445. package/bundled-skills/ios-simulator/SKILL.md +32 -0
  446. package/bundled-skills/json-canvas/SKILL.md +244 -0
  447. package/bundled-skills/json-canvas/references/EXAMPLES.md +329 -0
  448. package/bundled-skills/launch/SKILL.md +381 -0
  449. package/bundled-skills/launch/evals/evals.json +106 -0
  450. package/bundled-skills/llm-wiki/SKILL.md +661 -0
  451. package/bundled-skills/llm-wiki/references/WRITING.md +28 -0
  452. package/bundled-skills/llm-wiki/references/karpathy-pattern.md +45 -0
  453. package/bundled-skills/marketing-plan/SKILL.md +300 -0
  454. package/bundled-skills/marketing-plan/evals/evals.json +112 -0
  455. package/bundled-skills/marketing-plan/references/aarrr-framework.md +180 -0
  456. package/bundled-skills/marketing-plan/references/budget-planning.md +168 -0
  457. package/bundled-skills/marketing-plan/references/client-types.md +373 -0
  458. package/bundled-skills/marketing-plan/references/current-state-rubric.md +255 -0
  459. package/bundled-skills/marketing-plan/references/example-quietude.md +972 -0
  460. package/bundled-skills/marketing-plan/references/funding-stage-unlocks.md +230 -0
  461. package/bundled-skills/marketing-plan/references/growth-patterns.md +190 -0
  462. package/bundled-skills/marketing-plan/references/idea-cross-reference.md +265 -0
  463. package/bundled-skills/marketing-plan/references/measurement-framework.md +213 -0
  464. package/bundled-skills/marketing-plan/references/methodology.md +363 -0
  465. package/bundled-skills/marketing-plan/references/ops-stack-mapping.md +197 -0
  466. package/bundled-skills/marketing-plan/references/plan-template.md +494 -0
  467. package/bundled-skills/marketing-plan/references/team-and-agency-model.md +278 -0
  468. package/bundled-skills/marketing-psychology/SKILL.md +455 -0
  469. package/bundled-skills/marketing-psychology/evals/evals.json +88 -0
  470. package/bundled-skills/mcp-server-builder/README.md +50 -0
  471. package/bundled-skills/mcp-server-builder/SKILL.md +100 -0
  472. package/bundled-skills/mcp-server-builder/references/openapi-extraction-guide.md +34 -0
  473. package/bundled-skills/mcp-server-builder/references/production-hardening-guide.md +78 -0
  474. package/bundled-skills/mcp-server-builder/references/python-server-template.md +22 -0
  475. package/bundled-skills/mcp-server-builder/references/typescript-server-template.md +19 -0
  476. package/bundled-skills/mcp-server-builder/references/validation-checklist.md +30 -0
  477. package/bundled-skills/mcp-server-builder/scripts/mcp_validator.py +186 -0
  478. package/bundled-skills/mcp-server-builder/scripts/openapi_to_mcp.py +284 -0
  479. package/bundled-skills/memory/SKILL.md +10 -0
  480. package/bundled-skills/memory-bridge/SKILL.md +163 -0
  481. package/bundled-skills/memory-save/SKILL.md +88 -0
  482. package/bundled-skills/migrate/SKILL.md +135 -0
  483. package/bundled-skills/migrate/cypress-mapping.md +79 -0
  484. package/bundled-skills/migrate/selenium-mapping.md +94 -0
  485. package/bundled-skills/novahiz-analyse/SKILL.md +74 -0
  486. package/bundled-skills/novahiz-audit/SKILL.md +75 -0
  487. package/bundled-skills/novahiz-clarify/SKILL.md +94 -0
  488. package/bundled-skills/novahiz-converge/SKILL.md +76 -0
  489. package/bundled-skills/novahiz-gate/SKILL.md +82 -0
  490. package/bundled-skills/novahiz-implement/SKILL.md +80 -0
  491. package/bundled-skills/novahiz-memory/SKILL.md +58 -0
  492. package/bundled-skills/novahiz-plan/SKILL.md +100 -0
  493. package/bundled-skills/novahiz-planner/SKILL.md +104 -0
  494. package/bundled-skills/novahiz-task/SKILL.md +105 -0
  495. package/bundled-skills/obsidian-bases/SKILL.md +499 -0
  496. package/bundled-skills/obsidian-bases/references/FUNCTIONS_REFERENCE.md +173 -0
  497. package/bundled-skills/obsidian-cli/SKILL.md +106 -0
  498. package/bundled-skills/obsidian-layout-adjustment/SKILL.md +226 -0
  499. package/bundled-skills/obsidian-layout-adjustment/evals/evals.json +53 -0
  500. package/bundled-skills/obsidian-layout-adjustment/references/workflow-reference.md +212 -0
  501. package/bundled-skills/obsidian-markdown/SKILL.md +196 -0
  502. package/bundled-skills/obsidian-markdown/references/CALLOUTS.md +58 -0
  503. package/bundled-skills/obsidian-markdown/references/EMBEDS.md +70 -0
  504. package/bundled-skills/obsidian-markdown/references/PROPERTIES.md +61 -0
  505. package/bundled-skills/offers/SKILL.md +155 -0
  506. package/bundled-skills/offers/evals/evals.json +21 -0
  507. package/bundled-skills/offers/references/bonus-stacking.md +150 -0
  508. package/bundled-skills/offers/references/examples.md +215 -0
  509. package/bundled-skills/offers/references/guarantee-design.md +172 -0
  510. package/bundled-skills/offers/references/offer-anatomy.md +203 -0
  511. package/bundled-skills/offers/references/offer-formats.md +240 -0
  512. package/bundled-skills/offers/references/saas-offers.md +116 -0
  513. package/bundled-skills/offers/references/scarcity-urgency.md +175 -0
  514. package/bundled-skills/offers/references/value-equation.md +134 -0
  515. package/bundled-skills/onboarding/SKILL.md +261 -0
  516. package/bundled-skills/onboarding/evals/evals.json +108 -0
  517. package/bundled-skills/onboarding/references/activation-models.md +57 -0
  518. package/bundled-skills/onboarding/references/experiments.md +258 -0
  519. package/bundled-skills/onboarding/references/minimum-path-to-value.md +49 -0
  520. package/bundled-skills/openclaw-history-ingest/SKILL.md +257 -0
  521. package/bundled-skills/openclaw-history-ingest/references/openclaw-data-format.md +154 -0
  522. package/bundled-skills/orchestration/SKILL.md +69 -0
  523. package/bundled-skills/pi-history-ingest/SKILL.md +312 -0
  524. package/bundled-skills/playwright-agent/SKILL.md +142 -0
  525. package/bundled-skills/postgresql-optimization/SKILL.md +179 -0
  526. package/bundled-skills/pricing/SKILL.md +295 -0
  527. package/bundled-skills/pricing/evals/evals.json +119 -0
  528. package/bundled-skills/pricing/references/pricing-models.md +66 -0
  529. package/bundled-skills/pricing/references/pricing-page-teardown.md +85 -0
  530. package/bundled-skills/pricing/references/research-methods.md +152 -0
  531. package/bundled-skills/pricing/references/tier-structure.md +232 -0
  532. package/bundled-skills/product-marketing/SKILL.md +255 -0
  533. package/bundled-skills/product-marketing/evals/evals.json +98 -0
  534. package/bundled-skills/prospecting/SKILL.md +262 -0
  535. package/bundled-skills/prospecting/evals/evals.json +122 -0
  536. package/bundled-skills/prospecting/references/b2b-prospecting.md +106 -0
  537. package/bundled-skills/prospecting/references/compliance.md +123 -0
  538. package/bundled-skills/prospecting/references/data-sources.md +287 -0
  539. package/bundled-skills/prospecting/references/demand-signals.md +129 -0
  540. package/bundled-skills/prospecting/references/local-prospecting.md +165 -0
  541. package/bundled-skills/prospecting/references/saas-prospecting.md +123 -0
  542. package/bundled-skills/refactor-safely/SKILL.md +29 -0
  543. package/bundled-skills/review-changes/SKILL.md +30 -0
  544. package/bundled-skills/review-delta/SKILL.md +46 -0
  545. package/bundled-skills/review-pr/SKILL.md +66 -0
  546. package/bundled-skills/sales-enablement/SKILL.md +359 -0
  547. package/bundled-skills/sales-enablement/evals/evals.json +91 -0
  548. package/bundled-skills/sales-enablement/references/deck-frameworks.md +263 -0
  549. package/bundled-skills/sales-enablement/references/demo-scripts.md +355 -0
  550. package/bundled-skills/sales-enablement/references/objection-library.md +270 -0
  551. package/bundled-skills/sales-enablement/references/one-pager-templates.md +208 -0
  552. package/bundled-skills/security-guidance/SKILL.md +161 -0
  553. package/bundled-skills/security-guidance/references/pretooluse_hook_canon.md +141 -0
  554. package/bundled-skills/senior-architect/SKILL.md +343 -0
  555. package/bundled-skills/senior-architect/references/architecture_patterns.md +470 -0
  556. package/bundled-skills/senior-architect/references/system_design_workflows.md +536 -0
  557. package/bundled-skills/senior-architect/references/tech_decision_guide.md +412 -0
  558. package/bundled-skills/senior-architect/scripts/architecture_diagram_generator.py +660 -0
  559. package/bundled-skills/senior-architect/scripts/dependency_analyzer.py +615 -0
  560. package/bundled-skills/senior-architect/scripts/project_architect.py +749 -0
  561. package/bundled-skills/senior-backend/SKILL.md +467 -0
  562. package/bundled-skills/senior-backend/profiles/django-monolith.json +57 -0
  563. package/bundled-skills/senior-backend/profiles/fastapi-python.json +58 -0
  564. package/bundled-skills/senior-backend/profiles/go-or-rust-microservice.json +62 -0
  565. package/bundled-skills/senior-backend/profiles/node-express.json +57 -0
  566. package/bundled-skills/senior-backend/references/api_design_patterns.md +530 -0
  567. package/bundled-skills/senior-backend/references/backend_security_practices.md +1075 -0
  568. package/bundled-skills/senior-backend/references/composition_map.md +58 -0
  569. package/bundled-skills/senior-backend/references/database_optimization_guide.md +593 -0
  570. package/bundled-skills/senior-backend/references/forcing_questions.md +100 -0
  571. package/bundled-skills/senior-backend/scripts/api_load_tester.py +607 -0
  572. package/bundled-skills/senior-backend/scripts/api_scaffolder.py +645 -0
  573. package/bundled-skills/senior-backend/scripts/backend_decision_engine.py +397 -0
  574. package/bundled-skills/senior-backend/scripts/database_migration_tool.py +858 -0
  575. package/bundled-skills/seo-audit/SKILL.md +499 -0
  576. package/bundled-skills/seo-audit/evals/evals.json +136 -0
  577. package/bundled-skills/seo-audit/references/ai-writing-detection.md +200 -0
  578. package/bundled-skills/seo-audit/references/international-seo.md +230 -0
  579. package/bundled-skills/session-brain/SKILL.md +101 -0
  580. package/bundled-skills/session-search/SKILL.md +97 -0
  581. package/bundled-skills/skill-creator/LICENSE.txt +202 -0
  582. package/bundled-skills/skill-creator/SKILL.md +485 -0
  583. package/bundled-skills/skill-creator/agents/analyzer.md +274 -0
  584. package/bundled-skills/skill-creator/agents/comparator.md +202 -0
  585. package/bundled-skills/skill-creator/agents/grader.md +223 -0
  586. package/bundled-skills/skill-creator/assets/eval_review.html +146 -0
  587. package/bundled-skills/skill-creator/eval-viewer/generate_review.py +471 -0
  588. package/bundled-skills/skill-creator/eval-viewer/viewer.html +1325 -0
  589. package/bundled-skills/skill-creator/references/schemas.md +430 -0
  590. package/bundled-skills/skill-creator/scripts/__init__.py +0 -0
  591. package/bundled-skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  592. package/bundled-skills/skill-creator/scripts/generate_report.py +326 -0
  593. package/bundled-skills/skill-creator/scripts/improve_description.py +247 -0
  594. package/bundled-skills/skill-creator/scripts/package_skill.py +136 -0
  595. package/bundled-skills/skill-creator/scripts/quick_validate.py +103 -0
  596. package/bundled-skills/skill-creator/scripts/run_eval.py +310 -0
  597. package/bundled-skills/skill-creator/scripts/run_loop.py +328 -0
  598. package/bundled-skills/skill-creator/scripts/utils.py +47 -0
  599. package/bundled-skills/social/SKILL.md +413 -0
  600. package/bundled-skills/social/evals/evals.json +107 -0
  601. package/bundled-skills/social/references/carousel-frameworks.md +141 -0
  602. package/bundled-skills/social/references/listening-sources-template.md +123 -0
  603. package/bundled-skills/social/references/listening.md +283 -0
  604. package/bundled-skills/social/references/platform-limits.md +110 -0
  605. package/bundled-skills/social/references/platforms.md +170 -0
  606. package/bundled-skills/social/references/post-templates.md +179 -0
  607. package/bundled-skills/social/references/reverse-engineering.md +195 -0
  608. package/bundled-skills/social/references/short-form-video.md +237 -0
  609. package/bundled-skills/spec-driven-workflow/SKILL.md +333 -0
  610. package/bundled-skills/spec-driven-workflow/references/acceptance_criteria_patterns.md +497 -0
  611. package/bundled-skills/spec-driven-workflow/references/bounded_autonomy_rules.md +273 -0
  612. package/bundled-skills/spec-driven-workflow/references/spec_format_guide.md +531 -0
  613. package/bundled-skills/spec-driven-workflow/scripts/spec_generator.py +338 -0
  614. package/bundled-skills/spec-driven-workflow/scripts/spec_validator.py +461 -0
  615. package/bundled-skills/spec-driven-workflow/scripts/test_extractor.py +431 -0
  616. package/bundled-skills/supabase/CHANGELOG.md +78 -0
  617. package/bundled-skills/supabase/SKILL.md +149 -0
  618. package/bundled-skills/supabase/assets/feedback-issue-template.md +17 -0
  619. package/bundled-skills/supabase/references/skill-feedback.md +17 -0
  620. package/bundled-skills/supabase-postgres-best-practices/CHANGELOG.md +73 -0
  621. package/bundled-skills/supabase-postgres-best-practices/SKILL.md +64 -0
  622. package/bundled-skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  623. package/bundled-skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  624. package/bundled-skills/supabase-postgres-best-practices/references/_template.md +34 -0
  625. package/bundled-skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  626. package/bundled-skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  627. package/bundled-skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  628. package/bundled-skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  629. package/bundled-skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  630. package/bundled-skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  631. package/bundled-skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  632. package/bundled-skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  633. package/bundled-skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  634. package/bundled-skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  635. package/bundled-skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  636. package/bundled-skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  637. package/bundled-skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  638. package/bundled-skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  639. package/bundled-skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  640. package/bundled-skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  641. package/bundled-skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  642. package/bundled-skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  643. package/bundled-skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  644. package/bundled-skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  645. package/bundled-skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  646. package/bundled-skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  647. package/bundled-skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  648. package/bundled-skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  649. package/bundled-skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  650. package/bundled-skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  651. package/bundled-skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  652. package/bundled-skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  653. package/bundled-skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  654. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  655. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  656. package/bundled-skills/tag-taxonomy/SKILL.md +218 -0
  657. package/bundled-skills/typescript-expert/SKILL.md +431 -0
  658. package/bundled-skills/typescript-expert/references/tsconfig-strict.json +45 -0
  659. package/bundled-skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
  660. package/bundled-skills/typescript-expert/references/utility-types.ts +335 -0
  661. package/bundled-skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
  662. package/bundled-skills/ui-design-system/SKILL.md +379 -0
  663. package/bundled-skills/ui-design-system/assets/design_system_doc_template.md +180 -0
  664. package/bundled-skills/ui-design-system/references/component-architecture.md +396 -0
  665. package/bundled-skills/ui-design-system/references/developer-handoff.md +509 -0
  666. package/bundled-skills/ui-design-system/references/responsive-calculations.md +390 -0
  667. package/bundled-skills/ui-design-system/references/token-generation.md +324 -0
  668. package/bundled-skills/ui-design-system/scripts/design_token_generator.py +590 -0
  669. package/bundled-skills/vault-skill-factory/SKILL.md +143 -0
  670. package/bundled-skills/video/SKILL.md +346 -0
  671. package/bundled-skills/video/evals/evals.json +103 -0
  672. package/bundled-skills/video/references/ai-video-prompting.md +175 -0
  673. package/bundled-skills/video/references/edit-anatomy.md +84 -0
  674. package/bundled-skills/wiki-agent/SKILL.md +322 -0
  675. package/bundled-skills/wiki-capture/SKILL.md +337 -0
  676. package/bundled-skills/wiki-capture/references/RAW-FORMAT.md +115 -0
  677. package/bundled-skills/wiki-context-pack/SKILL.md +89 -0
  678. package/bundled-skills/wiki-dashboard/SKILL.md +472 -0
  679. package/bundled-skills/wiki-dedup/SKILL.md +320 -0
  680. package/bundled-skills/wiki-digest/SKILL.md +243 -0
  681. package/bundled-skills/wiki-export/SKILL.md +445 -0
  682. package/bundled-skills/wiki-history-ingest/SKILL.md +61 -0
  683. package/bundled-skills/wiki-import/SKILL.md +276 -0
  684. package/bundled-skills/wiki-ingest/SKILL.md +563 -0
  685. package/bundled-skills/wiki-ingest/references/ingest-prompts.md +54 -0
  686. package/bundled-skills/wiki-ingest/references/pageindex.md +72 -0
  687. package/bundled-skills/wiki-ingest/references/url-sources.md +295 -0
  688. package/bundled-skills/wiki-lint/SKILL.md +643 -0
  689. package/bundled-skills/wiki-narrate/SKILL.md +120 -0
  690. package/bundled-skills/wiki-narrate/references/voices.md +29 -0
  691. package/bundled-skills/wiki-query/SKILL.md +307 -0
  692. package/bundled-skills/wiki-rebuild/SKILL.md +212 -0
  693. package/bundled-skills/wiki-research/SKILL.md +319 -0
  694. package/bundled-skills/wiki-setup/SKILL.md +359 -0
  695. package/bundled-skills/wiki-stage-commit/SKILL.md +164 -0
  696. package/bundled-skills/wiki-status/SKILL.md +556 -0
  697. package/bundled-skills/wiki-switch/SKILL.md +115 -0
  698. package/bundled-skills/wiki-synthesize/SKILL.md +212 -0
  699. package/bundled-skills/wiki-update/SKILL.md +271 -0
  700. package/bundled-skills/write-a-skill/SKILL.md +141 -0
  701. package/bundled-skills/write-a-skill/references/companion_tooling.md +67 -0
  702. package/bundled-skills/write-a-skill/references/description_design_patterns.md +139 -0
  703. package/bundled-skills/write-a-skill/references/progressive_disclosure_principles.md +89 -0
  704. package/bundled-skills/write-a-skill/references/quality_gates_for_skills.md +158 -0
  705. package/bundled-skills/write-a-skill/scripts/skill_description_validator.py +255 -0
  706. package/bundled-skills/write-a-skill/scripts/skill_review_checklist_runner.py +268 -0
  707. package/bundled-skills/write-a-skill/scripts/skill_structure_validator.py +277 -0
  708. package/bundled-skills/zero-hallucination-coder/SKILL.md +271 -0
  709. package/catalog/categories.json +1030 -0
  710. package/catalog/overrides.json +525 -0
  711. package/catalog/providers.json +145 -0
  712. package/catalog/rules.json +112 -0
  713. package/docs/ARCHITECTURE.md +82 -0
  714. package/docs/CONSTITUTION.md +60 -0
  715. package/docs/EXECUTION.md +79 -0
  716. package/docs/HARNESSES.md +38 -0
  717. package/docs/INSTALL.md +123 -0
  718. package/docs/PROVIDERS.md +128 -0
  719. package/docs/ROADMAPS.md +74 -0
  720. package/docs/RULES.md +85 -0
  721. package/docs/TOKENS.md +48 -0
  722. package/install/bootstrap.mjs +273 -0
  723. package/install/install.mjs +466 -0
  724. package/install/install.ps1 +3 -0
  725. package/install/install.sh +4 -0
  726. package/install/lib.mjs +198 -0
  727. package/install/prompt.mjs +16 -0
  728. package/install/uninstall.mjs +109 -0
  729. package/mcp/novahiz-tools/README.md +26 -0
  730. package/mcp/novahiz-tools/index.mjs +452 -0
  731. package/novahiz.config.example.json +39 -0
  732. package/package.json +76 -0
  733. package/skills/a11y-audit/SKILL.md +211 -0
  734. package/skills/a11y-audit/assets/sample-component.tsx +51 -0
  735. package/skills/a11y-audit/expected_outputs/sample-contrast-output.txt +39 -0
  736. package/skills/a11y-audit/expected_outputs/sample-scan-output.json +34 -0
  737. package/skills/a11y-audit/expected_outputs/sample-scan-report.md +63 -0
  738. package/skills/a11y-audit/references/aria-patterns.md +223 -0
  739. package/skills/a11y-audit/references/audit-report-template.md +46 -0
  740. package/skills/a11y-audit/references/ci-cd-integration.md +127 -0
  741. package/skills/a11y-audit/references/color-contrast-guide.md +83 -0
  742. package/skills/a11y-audit/references/examples-by-framework.md +312 -0
  743. package/skills/a11y-audit/references/framework-a11y-patterns.md +661 -0
  744. package/skills/a11y-audit/references/testing-checklist.md +41 -0
  745. package/skills/a11y-audit/references/wcag-22-new-criteria.md +79 -0
  746. package/skills/a11y-audit/references/wcag-quick-ref.md +113 -0
  747. package/skills/a11y-audit/scripts/a11y_scanner.py +684 -0
  748. package/skills/a11y-audit/scripts/contrast_checker.py +504 -0
  749. package/skills/adversarial-reviewer/SKILL.md +247 -0
  750. package/skills/ai-security/SKILL.md +364 -0
  751. package/skills/ai-security/references/atlas-coverage.md +150 -0
  752. package/skills/ai-security/scripts/ai_threat_scanner.py +564 -0
  753. package/skills/anti-AI-design/SKILL.md +189 -0
  754. package/skills/anti-pattern-detector/SKILL.md +185 -0
  755. package/skills/anti-pattern-detector/references/async-network-patterns.md +581 -0
  756. package/skills/anti-pattern-detector/references/build-deploy-patterns.md +554 -0
  757. package/skills/anti-pattern-detector/references/cache-patterns.md +446 -0
  758. package/skills/anti-pattern-detector/references/cloud-infra-patterns.md +538 -0
  759. package/skills/anti-pattern-detector/references/concurrency-patterns.md +558 -0
  760. package/skills/anti-pattern-detector/references/language-specific-patterns.md +740 -0
  761. package/skills/anti-pattern-detector/references/monitoring-patterns.md +456 -0
  762. package/skills/api-design-reviewer/SKILL.md +433 -0
  763. package/skills/api-design-reviewer/references/api_antipatterns.md +680 -0
  764. package/skills/api-design-reviewer/references/rest_design_rules.md +487 -0
  765. package/skills/api-design-reviewer/scripts/api_linter.py +956 -0
  766. package/skills/api-design-reviewer/scripts/api_scorecard.py +1661 -0
  767. package/skills/api-design-reviewer/scripts/breaking_change_detector.py +1102 -0
  768. package/skills/apple-hig-expert/SKILL.md +108 -0
  769. package/skills/apple-hig-expert/references/accessibility.md +55 -0
  770. package/skills/apple-hig-expert/references/platform-specifics.md +48 -0
  771. package/skills/apple-hig-expert/references/visual-design.md +69 -0
  772. package/skills/apple-hig-expert/scripts/hig_checker.py +97 -0
  773. package/skills/apple-hig-expert/templates/hig-audit-template.md +83 -0
  774. package/skills/clean-code/SKILL.md +99 -0
  775. package/skills/code-reviewer/README.md +92 -0
  776. package/skills/code-reviewer/SKILL.md +183 -0
  777. package/skills/code-reviewer/assets/sample_c_clean.c +71 -0
  778. package/skills/code-reviewer/assets/sample_c_smells.c +66 -0
  779. package/skills/code-reviewer/assets/sample_csharp_clean.cs +100 -0
  780. package/skills/code-reviewer/assets/sample_csharp_smells.cs +78 -0
  781. package/skills/code-reviewer/assets/sample_java_clean.java +55 -0
  782. package/skills/code-reviewer/assets/sample_java_smells.java +56 -0
  783. package/skills/code-reviewer/expected_outputs/sample_c_clean_quality.json +65 -0
  784. package/skills/code-reviewer/expected_outputs/sample_c_smells_quality.json +155 -0
  785. package/skills/code-reviewer/expected_outputs/sample_csharp_clean_quality.json +135 -0
  786. package/skills/code-reviewer/expected_outputs/sample_csharp_smells_quality.json +143 -0
  787. package/skills/code-reviewer/expected_outputs/sample_java_clean_quality.json +53 -0
  788. package/skills/code-reviewer/expected_outputs/sample_java_smells_quality.json +83 -0
  789. package/skills/code-reviewer/languages/c.md +103 -0
  790. package/skills/code-reviewer/languages/cpp.md +103 -0
  791. package/skills/code-reviewer/languages/csharp.md +97 -0
  792. package/skills/code-reviewer/languages/dart.md +108 -0
  793. package/skills/code-reviewer/languages/go.md +92 -0
  794. package/skills/code-reviewer/languages/java.md +103 -0
  795. package/skills/code-reviewer/languages/kotlin.md +88 -0
  796. package/skills/code-reviewer/languages/php.md +109 -0
  797. package/skills/code-reviewer/languages/python.md +94 -0
  798. package/skills/code-reviewer/languages/ruby.md +105 -0
  799. package/skills/code-reviewer/languages/rust.md +99 -0
  800. package/skills/code-reviewer/languages/swift.md +88 -0
  801. package/skills/code-reviewer/languages/typescript.md +97 -0
  802. package/skills/code-reviewer/rules/universal.md +49 -0
  803. package/skills/code-reviewer/scripts/code_quality_checker.py +1020 -0
  804. package/skills/code-reviewer/scripts/pr_analyzer.py +535 -0
  805. package/skills/code-reviewer/scripts/review_report_generator.py +505 -0
  806. package/skills/code-understand/SKILL.md +90 -0
  807. package/skills/database-designer/README.md +388 -0
  808. package/skills/database-designer/SKILL.md +314 -0
  809. package/skills/database-designer/assets/sample_query_patterns.json +375 -0
  810. package/skills/database-designer/assets/sample_schema.json +372 -0
  811. package/skills/database-designer/assets/sample_schema.sql +207 -0
  812. package/skills/database-designer/expected_outputs/index_optimization_sample.txt +60 -0
  813. package/skills/database-designer/expected_outputs/migration_sample.txt +124 -0
  814. package/skills/database-designer/expected_outputs/schema_analysis_sample.txt +222 -0
  815. package/skills/database-designer/index_optimizer.py +926 -0
  816. package/skills/database-designer/migration_generator.py +1199 -0
  817. package/skills/database-designer/references/database-design-reference.md +476 -0
  818. package/skills/database-designer/references/database_selection_decision_tree.md +373 -0
  819. package/skills/database-designer/references/index_strategy_patterns.md +424 -0
  820. package/skills/database-designer/references/normalization_guide.md +354 -0
  821. package/skills/database-designer/schema_analyzer.py +982 -0
  822. package/skills/defuddle/SKILL.md +41 -0
  823. package/skills/dependency-auditor/README.md +524 -0
  824. package/skills/dependency-auditor/SKILL.md +85 -0
  825. package/skills/dependency-auditor/assets/sample_go.mod +53 -0
  826. package/skills/dependency-auditor/assets/sample_package.json +72 -0
  827. package/skills/dependency-auditor/assets/sample_requirements.txt +71 -0
  828. package/skills/dependency-auditor/expected_outputs/sample_license_report.txt +37 -0
  829. package/skills/dependency-auditor/expected_outputs/sample_upgrade_plan.txt +59 -0
  830. package/skills/dependency-auditor/expected_outputs/sample_vulnerability_report.json +71 -0
  831. package/skills/dependency-auditor/references/dependency_management_best_practices.md +643 -0
  832. package/skills/dependency-auditor/references/license_compatibility_matrix.md +238 -0
  833. package/skills/dependency-auditor/references/vulnerability_assessment_guide.md +461 -0
  834. package/skills/dependency-auditor/scripts/dep_scanner.py +794 -0
  835. package/skills/dependency-auditor/scripts/license_checker.py +996 -0
  836. package/skills/dependency-auditor/scripts/upgrade_planner.py +1029 -0
  837. package/skills/dependency-auditor/test-inventory.json +421 -0
  838. package/skills/dependency-auditor/test-project/package.json +72 -0
  839. package/skills/design-taste-frontend/SKILL.md +247 -0
  840. package/skills/engineering-standards/SKILL.md +736 -0
  841. package/skills/env-secrets-manager/SKILL.md +260 -0
  842. package/skills/env-secrets-manager/references/secret-patterns.md +41 -0
  843. package/skills/env-secrets-manager/references/validation-detection-rotation.md +358 -0
  844. package/skills/env-secrets-manager/scripts/env_auditor.py +145 -0
  845. package/skills/fix/SKILL.md +113 -0
  846. package/skills/fix/flaky-taxonomy.md +134 -0
  847. package/skills/gate/SKILL.md +13 -0
  848. package/skills/humanizer/SKILL.md +374 -0
  849. package/skills/mcp-server-builder/README.md +50 -0
  850. package/skills/mcp-server-builder/SKILL.md +100 -0
  851. package/skills/mcp-server-builder/references/openapi-extraction-guide.md +34 -0
  852. package/skills/mcp-server-builder/references/production-hardening-guide.md +78 -0
  853. package/skills/mcp-server-builder/references/python-server-template.md +22 -0
  854. package/skills/mcp-server-builder/references/typescript-server-template.md +19 -0
  855. package/skills/mcp-server-builder/references/validation-checklist.md +30 -0
  856. package/skills/mcp-server-builder/scripts/mcp_validator.py +186 -0
  857. package/skills/mcp-server-builder/scripts/openapi_to_mcp.py +284 -0
  858. package/skills/memory/SKILL.md +10 -0
  859. package/skills/migrate/SKILL.md +135 -0
  860. package/skills/migrate/cypress-mapping.md +79 -0
  861. package/skills/migrate/selenium-mapping.md +94 -0
  862. package/skills/novahiz-analyse/SKILL.md +74 -0
  863. package/skills/novahiz-audit/SKILL.md +75 -0
  864. package/skills/novahiz-clarify/SKILL.md +94 -0
  865. package/skills/novahiz-converge/SKILL.md +76 -0
  866. package/skills/novahiz-gate/SKILL.md +82 -0
  867. package/skills/novahiz-implement/SKILL.md +80 -0
  868. package/skills/novahiz-memory/SKILL.md +58 -0
  869. package/skills/novahiz-plan/SKILL.md +99 -0
  870. package/skills/novahiz-planner/SKILL.md +104 -0
  871. package/skills/novahiz-task/SKILL.md +105 -0
  872. package/skills/playwright-agent/SKILL.md +142 -0
  873. package/skills/postgresql-optimization/SKILL.md +179 -0
  874. package/skills/review-changes/SKILL.md +30 -0
  875. package/skills/security-guidance/SKILL.md +160 -0
  876. package/skills/security-guidance/references/pretooluse_hook_canon.md +141 -0
  877. package/skills/senior-architect/SKILL.md +343 -0
  878. package/skills/senior-architect/references/architecture_patterns.md +470 -0
  879. package/skills/senior-architect/references/system_design_workflows.md +536 -0
  880. package/skills/senior-architect/references/tech_decision_guide.md +412 -0
  881. package/skills/senior-architect/scripts/architecture_diagram_generator.py +660 -0
  882. package/skills/senior-architect/scripts/dependency_analyzer.py +615 -0
  883. package/skills/senior-architect/scripts/project_architect.py +749 -0
  884. package/skills/senior-backend/SKILL.md +467 -0
  885. package/skills/senior-backend/profiles/django-monolith.json +57 -0
  886. package/skills/senior-backend/profiles/fastapi-python.json +58 -0
  887. package/skills/senior-backend/profiles/go-or-rust-microservice.json +62 -0
  888. package/skills/senior-backend/profiles/node-express.json +57 -0
  889. package/skills/senior-backend/references/api_design_patterns.md +530 -0
  890. package/skills/senior-backend/references/backend_security_practices.md +1075 -0
  891. package/skills/senior-backend/references/composition_map.md +58 -0
  892. package/skills/senior-backend/references/database_optimization_guide.md +593 -0
  893. package/skills/senior-backend/references/forcing_questions.md +100 -0
  894. package/skills/senior-backend/scripts/api_load_tester.py +607 -0
  895. package/skills/senior-backend/scripts/api_scaffolder.py +645 -0
  896. package/skills/senior-backend/scripts/backend_decision_engine.py +397 -0
  897. package/skills/senior-backend/scripts/database_migration_tool.py +858 -0
  898. package/skills/senior-secops/SKILL.md +505 -0
  899. package/skills/senior-secops/references/compliance_requirements.md +792 -0
  900. package/skills/senior-secops/references/security_standards.md +718 -0
  901. package/skills/senior-secops/references/vulnerability_management_guide.md +487 -0
  902. package/skills/senior-secops/scripts/compliance_checker.py +1107 -0
  903. package/skills/senior-secops/scripts/security_scanner.py +471 -0
  904. package/skills/senior-secops/scripts/vulnerability_assessor.py +563 -0
  905. package/skills/skill-creator/LICENSE.txt +202 -0
  906. package/skills/skill-creator/SKILL.md +485 -0
  907. package/skills/skill-creator/agents/analyzer.md +274 -0
  908. package/skills/skill-creator/agents/comparator.md +202 -0
  909. package/skills/skill-creator/agents/grader.md +223 -0
  910. package/skills/skill-creator/assets/eval_review.html +146 -0
  911. package/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  912. package/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  913. package/skills/skill-creator/references/schemas.md +430 -0
  914. package/skills/skill-creator/scripts/__init__.py +0 -0
  915. package/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  916. package/skills/skill-creator/scripts/generate_report.py +326 -0
  917. package/skills/skill-creator/scripts/improve_description.py +247 -0
  918. package/skills/skill-creator/scripts/package_skill.py +136 -0
  919. package/skills/skill-creator/scripts/quick_validate.py +103 -0
  920. package/skills/skill-creator/scripts/run_eval.py +310 -0
  921. package/skills/skill-creator/scripts/run_loop.py +328 -0
  922. package/skills/skill-creator/scripts/utils.py +47 -0
  923. package/skills/spec-driven-workflow/SKILL.md +333 -0
  924. package/skills/spec-driven-workflow/references/acceptance_criteria_patterns.md +497 -0
  925. package/skills/spec-driven-workflow/references/bounded_autonomy_rules.md +273 -0
  926. package/skills/spec-driven-workflow/references/spec_format_guide.md +531 -0
  927. package/skills/spec-driven-workflow/scripts/spec_generator.py +338 -0
  928. package/skills/spec-driven-workflow/scripts/spec_validator.py +461 -0
  929. package/skills/spec-driven-workflow/scripts/test_extractor.py +431 -0
  930. package/skills/supabase/CHANGELOG.md +78 -0
  931. package/skills/supabase/SKILL.md +149 -0
  932. package/skills/supabase/assets/feedback-issue-template.md +17 -0
  933. package/skills/supabase/references/skill-feedback.md +17 -0
  934. package/skills/supabase-postgres-best-practices/CHANGELOG.md +73 -0
  935. package/skills/supabase-postgres-best-practices/SKILL.md +64 -0
  936. package/skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  937. package/skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  938. package/skills/supabase-postgres-best-practices/references/_template.md +34 -0
  939. package/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  940. package/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  941. package/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  942. package/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  943. package/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  944. package/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  945. package/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  946. package/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  947. package/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  948. package/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  949. package/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  950. package/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  951. package/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  952. package/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  953. package/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  954. package/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  955. package/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  956. package/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  957. package/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  958. package/skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  959. package/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  960. package/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  961. package/skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  962. package/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  963. package/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  964. package/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  965. package/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  966. package/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  967. package/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  968. package/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  969. package/skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  970. package/skills/typescript-expert/SKILL.md +431 -0
  971. package/skills/typescript-expert/references/tsconfig-strict.json +45 -0
  972. package/skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
  973. package/skills/typescript-expert/references/utility-types.ts +335 -0
  974. package/skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
  975. package/skills/ui-design-system/SKILL.md +379 -0
  976. package/skills/ui-design-system/assets/design_system_doc_template.md +180 -0
  977. package/skills/ui-design-system/references/component-architecture.md +396 -0
  978. package/skills/ui-design-system/references/developer-handoff.md +509 -0
  979. package/skills/ui-design-system/references/responsive-calculations.md +390 -0
  980. package/skills/ui-design-system/references/token-generation.md +324 -0
  981. package/skills/ui-design-system/scripts/design_token_generator.py +590 -0
  982. package/skills/write-a-skill/SKILL.md +141 -0
  983. package/skills/write-a-skill/references/companion_tooling.md +67 -0
  984. package/skills/write-a-skill/references/description_design_patterns.md +139 -0
  985. package/skills/write-a-skill/references/progressive_disclosure_principles.md +89 -0
  986. package/skills/write-a-skill/references/quality_gates_for_skills.md +158 -0
  987. package/skills/write-a-skill/scripts/skill_description_validator.py +255 -0
  988. package/skills/write-a-skill/scripts/skill_review_checklist_runner.py +268 -0
  989. package/skills/write-a-skill/scripts/skill_structure_validator.py +277 -0
  990. package/skills/zero-hallucination-coder/SKILL.md +271 -0
  991. package/src/catalog.ts +266 -0
  992. package/src/classify.ts +201 -0
  993. package/src/cli.ts +115 -0
  994. package/src/commands/clean.ts +114 -0
  995. package/src/commands/context.ts +130 -0
  996. package/src/commands/doctor.ts +191 -0
  997. package/src/commands/gate.ts +192 -0
  998. package/src/commands/inspect.ts +296 -0
  999. package/src/commands/report.ts +85 -0
  1000. package/src/commands/task.ts +310 -0
  1001. package/src/commands/tokens.ts +85 -0
  1002. package/src/content.ts +70 -0
  1003. package/src/db.ts +143 -0
  1004. package/src/deps.ts +36 -0
  1005. package/src/exec.ts +85 -0
  1006. package/src/gate.ts +261 -0
  1007. package/src/ledger.ts +468 -0
  1008. package/src/providers.ts +52 -0
  1009. package/src/relevance.ts +73 -0
  1010. package/src/render.ts +107 -0
  1011. package/src/spec.ts +306 -0
  1012. package/src/targets.ts +296 -0
  1013. package/tsconfig.json +15 -0
@@ -0,0 +1,661 @@
1
+ ---
2
+ name: llm-wiki
3
+ description: >
4
+ The foundational knowledge distillation pattern for building and maintaining an AI-powered Obsidian wiki.
5
+ Based on Andrej Karpathy's LLM Wiki architecture. Use this skill whenever the user wants to understand the
6
+ wiki pattern, set up a new knowledge base, or needs guidance on the three-layer architecture (raw sources →
7
+ wiki → schema). Also use when discussing knowledge management strategy, wiki structure decisions, or how
8
+ to organize distilled knowledge. This is the "theory" skill — other skills handle specific operations
9
+ (ingesting, querying, linting).
10
+ ---
11
+
12
+ # LLM Wiki — Knowledge Distillation Pattern
13
+
14
+ You are maintaining a persistent, compounding knowledge base. The wiki is not a chatbot — it is a **compiled artifact** where knowledge is distilled once and kept current, not re-derived on every query.
15
+
16
+ ## Three-Layer Architecture
17
+
18
+ ### Layer 1: Raw Sources (immutable)
19
+
20
+ The user's original documents — articles, papers, notes, PDFs, conversation logs, bookmarks, **and images** (screenshots, whiteboard photos, diagrams, slide captures). These are never modified by the system. They live wherever the user keeps them (configured via `OBSIDIAN_SOURCES_DIR` in `.env`). Images are first-class sources: the ingest skills read them via the Read tool's vision support and treat their interpreted content as inferred unless it's verbatim transcribed text. Image ingestion requires a vision-capable model — models without vision support should skip image sources and report which files were skipped.
21
+
22
+ Think of raw sources as the "source code" — authoritative but hard to query directly.
23
+
24
+ Don't confuse this with the in-vault `_raw/` staging folder, which is a different thing: a scratch inbox for quick captures and drafts awaiting promotion (see `wiki-capture` and `wiki-ingest`). Files there aren't Layer 1 sources, but `wiki-ingest` still moves rather than deletes them on promotion, since some have no other copy.
25
+
26
+ ### Layer 2: The Wiki (LLM-maintained)
27
+
28
+ A collection of interconnected Obsidian-compatible markdown files organized by category. This is the compiled knowledge — synthesized, cross-referenced, and navigable. Each page has:
29
+
30
+ - YAML frontmatter (title, category, tags, sources, timestamps)
31
+ - Obsidian `[[wikilinks]]` connecting related concepts
32
+ - Clear provenance — every claim traces back to a source
33
+
34
+ The wiki lives at the path configured via `OBSIDIAN_VAULT_PATH` in `.env`.
35
+
36
+ ### Layer 3: The Schema (this skill + config)
37
+
38
+ The rules governing how the wiki is structured — categories, conventions, page templates, and operational workflows. The schema tells the LLM *how* to maintain the wiki.
39
+
40
+ ## Wiki Organization
41
+
42
+ The vault has two levels of structure: **categories** (what kind of knowledge) and **projects** (where the knowledge came from).
43
+
44
+ ### Categories
45
+
46
+ Organize pages into these default categories (customizable in `.env`):
47
+
48
+ | Category | Purpose | Example |
49
+ |---|---|---|
50
+ | `concepts/` | Ideas, theories, mental models | `concepts/transformer-architecture.md` |
51
+ | `entities/` | People, orgs, tools, projects | `entities/andrej-karpathy.md` |
52
+ | `skills/` | How-to knowledge, procedures | `skills/fine-tuning-llms.md` |
53
+ | `references/` | Summaries of specific sources; academic papers use the Paper Deep-Dive Template (below) | `references/attention-is-all-you-need.md` |
54
+ | `synthesis/` | Cross-cutting analysis across sources | `synthesis/scaling-laws-debate.md` |
55
+ | `journal/` | Timestamped observations, session logs | `journal/2024-03-15.md` |
56
+
57
+ ### Projects
58
+
59
+ Knowledge often belongs to a specific project. The `projects/` directory mirrors this:
60
+
61
+ ```
62
+ $OBSIDIAN_VAULT_PATH/
63
+ ├── projects/
64
+ │ ├── my-project/
65
+ │ │ ├── my-project.md ← project overview (named after project)
66
+ │ │ ├── concepts/ ← project-scoped category pages
67
+ │ │ ├── skills/
68
+ │ │ └── ...
69
+ │ ├── another-project/
70
+ │ │ └── ...
71
+ │ └── side-project/
72
+ │ └── ...
73
+ ├── concepts/ ← global (cross-project) knowledge
74
+ ├── entities/
75
+ ├── skills/
76
+ └── ...
77
+ ```
78
+
79
+ **When knowledge is project-specific** (a debugging technique that only applies to one codebase, a project-specific architecture decision), put it under `projects/<project-name>/<category>/`.
80
+
81
+ **When knowledge is general** (a concept like "React Server Components", a person like "Andrej Karpathy", a widely applicable skill), put it in the global category directory.
82
+
83
+ **Cross-referencing:** Project pages should `[[wikilink]]` to global pages and vice versa. A project's overview page should link to the key concept, skill, and entity pages relevant to that project — whether they live under the project or globally.
84
+
85
+ **Naming rule:** The project overview file must be named `<project-name>.md`, not `_project.md`. Obsidian's graph view uses the filename as the node label — `_project.md` makes every project appear as `_project` in the graph, making it unreadable. So `projects/my-project/my-project.md`, `projects/another-project/another-project.md`, etc.
86
+
87
+ Each project directory has an overview page structured like this:
88
+
89
+ ```markdown
90
+ ---
91
+ title: >-
92
+ My Project
93
+ category: project
94
+ tags: [ai, web, backend]
95
+ source_path: ~/.claude/projects/-Users-name-Documents-projects-my-project
96
+ created: 2026-03-01T00:00:00Z
97
+ updated: 2026-04-06T00:00:00Z
98
+ ---
99
+
100
+ # My Project
101
+
102
+ One-paragraph summary of what this project is.
103
+
104
+ ## Key Concepts
105
+ - [[concepts/some-api]] — used for core functionality
106
+ - [[projects/my-project/concepts/main-architecture]] — project-specific architecture
107
+
108
+ ## Related
109
+ - [[entities/some-service]] — deployment platform
110
+ ```
111
+
112
+ ## Special Files
113
+
114
+ Every wiki has these files at its root:
115
+
116
+ ### `index.md`
117
+ A content-oriented catalog organized by category. Each entry has a one-line summary and tags. Rebuild this after every ingest operation. Format:
118
+
119
+ ```markdown
120
+ # Wiki Index
121
+
122
+ ## Concepts
123
+ - [[transformer-architecture]] — The dominant architecture for sequence modeling ( #ml #architecture)
124
+ - [[attention-mechanism]] — Core building block of transformers ( #ml #fundamentals)
125
+
126
+ ## Entities
127
+ - [[andrej-karpathy]] — AI researcher, educator, former Tesla AI director ( #person #ml)
128
+ ```
129
+ **Format rule**: Add a space after the opening `(` and tags.
130
+ ❌ Don't: `description (#tag)` — breaks tag parsing
131
+ ✅ Do: `description ( #tag)` — proper spacing and tag parsing
132
+
133
+ ### `log.md`
134
+ Chronological append-only record tracking every operation. Each entry is parseable:
135
+
136
+ ```markdown
137
+ ## Log
138
+
139
+ - [2024-03-15T10:30:00Z] INGEST source="papers/attention.pdf" pages_updated=12 pages_created=3
140
+ - [2024-03-15T11:00:00Z] QUERY query="How do transformers handle long sequences?" result_pages=4
141
+ - [2024-03-16T09:00:00Z] LINT issues_found=2 orphans=1 contradictions=1
142
+ - [2024-03-17T10:00:00Z] ARCHIVE reason="rebuild" pages=87 destination="_archives/..."
143
+ - [2024-03-17T10:05:00Z] REBUILD archived_to="_archives/..." previous_pages=87
144
+ ```
145
+
146
+ ### `.manifest.json`
147
+ Tracks every source file that has been ingested — path, timestamps, what wiki pages it produced. This is the backbone of the delta system. See the `wiki-status` skill for the full schema.
148
+
149
+ The manifest enables:
150
+ - **Delta computation** — what's new or modified since last ingest
151
+ - **Append mode** — only process the delta, not everything
152
+ - **Audit** — which source produced which wiki page
153
+ - **Staleness detection** — source changed but wiki page hasn't been updated
154
+
155
+ **Canonical source keys.** Source keys MUST be stored in a single canonical form: **absolute paths with `~` and env vars expanded** (e.g. `/Users/me/.claude/projects/.../abc.jsonl`, never `~/.claude/...`). The manifest is keyed by the raw string, so a mix of `~`-relative and absolute keys lets the *same file* be tracked twice — and the delta check then re-ingests an already-processed file because the lookup misses the other-form key. Always expand before you compare against the manifest and before you write a new entry. To repair an existing vault that already has both forms, run `scripts/manifest.py normalize <vault>` (merges colliding entries, keeps the newest `ingested_at`).
156
+
157
+ **Recording provenance.** When you write a manifest entry, populate `pages_created` and `pages_updated` with the vault-relative page paths that source contributed to. This is what makes re-ingestion (when a source changes) able to find the pages to revisit, instead of guessing.
158
+
159
+ ## Page Template
160
+
161
+ When creating a new wiki page, use this structure:
162
+
163
+ ```markdown
164
+ ---
165
+ title: >-
166
+ Page Title
167
+ category: concepts
168
+ tags: [ml, architecture]
169
+ aliases: [alternate name]
170
+ relationships:
171
+ - target: "[[concepts/related-concept]]"
172
+ type: extends
173
+ sources: [papers/attention.pdf]
174
+ summary: >-
175
+ One or two sentences, ≤200 chars, so a reader (or another skill) can preview this page without opening it.
176
+ provenance:
177
+ extracted: 0.72
178
+ inferred: 0.25
179
+ ambiguous: 0.03
180
+ base_confidence: 0.65
181
+ lifecycle: draft
182
+ lifecycle_changed: 2024-03-15
183
+ tier: supporting
184
+ created: 2024-03-15T10:30:00Z
185
+ updated: 2024-03-15T10:30:00Z
186
+ ---
187
+
188
+ # Page Title
189
+
190
+ One-paragraph summary of what this page covers.
191
+
192
+ ## Key Ideas
193
+
194
+ - The source's central claim, paraphrased directly.
195
+ - A generalization the source implies but doesn't state outright. ^[inferred]
196
+ - A figure two sources disagree on. ^[ambiguous]
197
+
198
+ Use [[wikilinks]] to connect to related pages.
199
+
200
+ ## Open Questions
201
+
202
+ Things that are unresolved or need more sources.
203
+
204
+ ## Sources
205
+
206
+ - [[references/attention-is-all-you-need]] — Original paper
207
+ ```
208
+
209
+ **Parser-safe scalars.** Write free-text frontmatter values — at minimum `title` and `summary` — with folded scalar syntax (`>-`) as shown above: a bare scalar containing `: ` (colon + space), `#`, or quotes breaks YAML parsing, and Obsidian then reports "Invalid properties" and hides the frontmatter. Keep the value indented on the line(s) following `title: >-` / `summary: >-`.
210
+
211
+ ## Paper Deep-Dive Template
212
+
213
+ The generic template suits most sources. **Academic papers are the exception.** For ML/AI/LLM/VLM (and similar) papers landing in `references/`, the substance lives in the architecture, the equations, and the results table — exactly what a terse "Key Ideas" list flattens away. For these, use the richer template below. This is the one place where *"compile, don't retrieve"* yields to a thorough, self-contained walkthrough a reader could study instead of the paper.
214
+
215
+ Obsidian renders the needed primitives natively, so no extra tooling is required: Mermaid fenced diagrams, `$$…$$` LaTeX (MathJax), markdown tables, and `![[image]]` / `![[paper.pdf#page=N]]` embeds.
216
+
217
+ Use this template only when the source is an academic paper (arXiv/conference) with load-bearing figures or equations. Everything else uses the generic Page Template above. Frontmatter, provenance markers, confidence, lifecycle, and `relationships:` are unchanged — only the body sections differ.
218
+
219
+ ````markdown
220
+ ---
221
+ # ...required frontmatter, same as the generic template; category: references...
222
+ ---
223
+
224
+ # Paper Title
225
+
226
+ > [!tldr] One sentence: what's new, plus the headline result.
227
+
228
+ ## Problem & Motivation
229
+
230
+ What's broken or missing that this paper addresses.
231
+
232
+ ## Method / Architecture
233
+
234
+ Prose walkthrough. Embed the paper's real architecture figure as the primary
235
+ visual (see *Academic papers* in `wiki-ingest` for the PyMuPDF extraction recipe).
236
+ Fall back to a Mermaid flowchart only when no figure can be extracted.
237
+
238
+ ![[attachments/<slug>-fig1.png]]
239
+ *Figure N (Author Year): one-line caption.*
240
+
241
+ ## Key Equations
242
+
243
+ The 1–3 core equations as display math, not backtick code:
244
+
245
+ $$ \mathcal{L} = \mathbb{E}_{x}\!\left[-\log p_\theta(y \mid z)\right] $$
246
+
247
+ ## Results
248
+
249
+ Headline numbers as a table, not a comma-separated blob — and embed a key
250
+ results/motivating figure (scaling plot, benchmark chart, capability collage)
251
+ when the paper has one:
252
+
253
+ | Method | Benchmark | Metric | Cost |
254
+ |---|---|---|---|
255
+ | Baseline | … | … | … |
256
+ | **This paper** | … | … | … |
257
+
258
+ ![[attachments/<slug>-resultsN.png]]
259
+ *Figure N (Author Year): one-line caption.*
260
+
261
+ ## Limitations
262
+
263
+ What the paper concedes or sidesteps. Mark reading-between-the-lines as ^[inferred].
264
+
265
+ ## Related
266
+
267
+ Typed `[[wikilinks]]` to neighbouring work.
268
+
269
+ ## Sources
270
+
271
+ - Clickable canonical link, e.g. <https://arxiv.org/abs/XXXX.XXXXX>
272
+ ````
273
+
274
+ A Mermaid diagram reconstructed from the paper's prose is a synthesis, not a transcription — treat it as `^[inferred]` when the interpretation is non-trivial.
275
+
276
+ ## Provenance Markers
277
+
278
+ Every claim on a wiki page has one of three provenance states. Mark them inline so the reader (and future ingest passes) can tell signal from synthesis.
279
+
280
+ These are framework defaults. A vault's `AGENTS.md` may add markers or workflow flags. Preserve owner extensions and treat orthogonal workflow flags separately from the extracted/inferred/ambiguous truth-state axis.
281
+
282
+ | State | Marker | Meaning |
283
+ |---|---|---|
284
+ | **Extracted** | *(no marker — default)* | A paraphrase of something a source actually says. |
285
+ | **Inferred** | `^[inferred]` suffix | An LLM-synthesized claim — a connection, generalization, or implication the source doesn't state directly. |
286
+ | **Ambiguous** | `^[ambiguous]` suffix | Sources disagree, or the source is unclear. |
287
+
288
+ Example:
289
+
290
+ ```markdown
291
+ - Transformers parallelize across positions, unlike RNNs.
292
+ - This is why they scale better on modern hardware. ^[inferred]
293
+ - GPT-4 was trained on roughly 13T tokens. ^[ambiguous]
294
+ ```
295
+
296
+ **Why this syntax:**
297
+ - `^[...]` is footnote-adjacent in Obsidian — renders cleanly and never collides with `[[wikilinks]]`.
298
+ - Inline (suffix) so a single bullet stays a single bullet.
299
+ - Default = extracted means existing pages without markers stay valid.
300
+
301
+ **Frontmatter summary:** Optionally surface the rough mix at the page level so the user can scan for speculation-heavy pages without reading them:
302
+
303
+ ```yaml
304
+ provenance:
305
+ extracted: 0.72 # rough fraction of sentences/bullets with no marker
306
+ inferred: 0.25
307
+ ambiguous: 0.03
308
+ ```
309
+
310
+ These are best-effort numbers written by the ingest skill at create/update time. `wiki-lint` recomputes them and flags drift. The block is optional — pages without it are treated as fully extracted by convention.
311
+
312
+ ## Typed Relationships
313
+
314
+ Plain `[[wikilinks]]` in page bodies carry no semantic weight — they indicate "related to" but not *how*. The optional `relationships:` frontmatter block adds typed, directional edges to the knowledge graph.
315
+
316
+ ### The `relationships:` block
317
+
318
+ ```yaml
319
+ relationships:
320
+ - target: "[[Transformer Architecture]]"
321
+ type: extends
322
+ - target: "[[LSTM]]"
323
+ type: contradicts
324
+ - target: "[[Attention Mechanism]]"
325
+ type: implements
326
+ ```
327
+
328
+ Each entry has two required fields:
329
+ - `target` — a wikilink (using the same format as `OBSIDIAN_LINK_FORMAT`) to the related page
330
+ - `type` — one of the allowed semantic types below
331
+
332
+ ### Allowed relationship types
333
+
334
+ The table below is the framework default allowlist. A vault's `AGENTS.md` may extend it; consumers must use the effective allowlist and preserve owner semantics without coercion.
335
+
336
+ | Type | Meaning | Example |
337
+ |---|---|---|
338
+ | `extends` | This page builds on or generalises the target | GPT extends Transformer Architecture |
339
+ | `implements` | This page is a concrete realisation of the target concept | BERT implements Masked Language Modelling |
340
+ | `contradicts` | This page's claims conflict with or refute the target | Evidence A contradicts Evidence B |
341
+ | `derived_from` | This page is based on or adapted from the target | Fine-tuning is derived from Transfer Learning |
342
+ | `uses` | This page depends on or relies on the target | RAG uses Vector Databases |
343
+ | `replaces` | This page supersedes or deprecates the target | GPT-4 replaces GPT-3 |
344
+ | `related_to` | Catch-all: related but no stronger directional type applies | Concept A is related to Concept B |
345
+
346
+ ### Rules
347
+
348
+ - **Optional field** — omit the block entirely if no typed relationships are known. Untagged wikilinks remain valid and are treated as `related_to` by `wiki-export`.
349
+ - **Don't duplicate** — if `[[foo]]` already appears as an inline wikilink, the `relationships:` entry just enriches it with a type; it is not a second link.
350
+ - **Direction matters** — the page declaring the entry is the *source*; `target` is the destination. Only declare relationships from this page's perspective.
351
+ - **Don't fabricate** — only add a typed entry when the source material makes the relationship direction and type clear. When in doubt, use `related_to` or omit.
352
+
353
+ Skills that read `relationships:`: `wiki-export` (emits typed edges), `cross-linker` (writes typed entries when inferring links), `wiki-query` (surfaces type in answers and walks the typed-edge graph for multi-hop "how is X connected to Y" path queries — bounded BFS over the `relationships:` adjacency, frontmatter-only).
354
+
355
+ ## Confidence and Lifecycle
356
+
357
+ Every page carries two orthogonal trust signals plus an optional supersession link.
358
+
359
+ The requiredness and lifecycle values below are framework defaults. A vault's `AGENTS.md` may extend lifecycle values or make trust fields optional. Validators must apply that effective owner schema while still validating any trust value that is present.
360
+
361
+ The deterministic lint/trust consumer accepts owner schema through `OBSIDIAN_ALLOWED_LIFECYCLES`, `OBSIDIAN_ALLOWED_RELATIONSHIP_TYPES`, `OBSIDIAN_REQUIRED_TRUST_FIELDS`, and `OBSIDIAN_SCHEMA_SOURCE`. Resolution precedence is CLI > environment/config > these framework defaults (with lifecycle and relationship extensions additive). Explicit blank or whitespace-only values fail closed; omit the variable to select defaults. `wiki-lint/SKILL.md` owns the operational invocation contract.
362
+
363
+ ### Required fields
364
+
365
+ ```yaml
366
+ base_confidence: 0.65 # [0.0, 1.0] — time-independent quality estimate. Stored once, recomputed on content change.
367
+ lifecycle: draft # draft | reviewed | verified | disputed | archived
368
+ lifecycle_changed: 2024-03-15 # ISO date of last state transition
369
+ # lifecycle_reason: "..." # optional free-text — why the state changed; surfaced by wiki-query
370
+ # superseded_by: "[[new-page]]" # wikilink; only when lifecycle=archived
371
+ ```
372
+
373
+ `lifecycle_reason` and `superseded_by` are optional. Never fabricate them.
374
+
375
+ ### Confidence formula
376
+
377
+ The formula is a **manual base score**, not a deterministic URL classifier:
378
+
379
+ ```
380
+ base_confidence = lineage_count_score * 0.5 + source_quality_score * 0.5
381
+
382
+ lineage_count_score = min(independent_evidence_lineages / 3, 1.0)
383
+ source_quality_score = avg(reviewed quality score per independent lineage)
384
+ ```
385
+
386
+ After calculating the raw score, assess whether the evidence covers the page's material claims. Partial coverage may justify keeping or lowering the score; unsupported material claims require source/claim repair before any confidence change. Avoid small score churn without meaningful epistemic change.
387
+
388
+ **Source-quality scores** (use the highest-matching bucket):
389
+
390
+ | Bucket | Score | Examples |
391
+ |---|---|---|
392
+ | `paper` | 1.0 | arXiv, conference proceedings |
393
+ | `official` | 0.9 | `*.gov`, vendor docs |
394
+ | `documentation` | 0.85 | well-maintained third-party docs |
395
+ | `book` | 0.8 | books, technical references |
396
+ | `repository` | 0.75 | content-addressed repository/code evidence |
397
+ | `blog` | 0.55 | personal blogs |
398
+ | `session_transcript` | 0.5 | conversation history or completed operation |
399
+ | `forum` | 0.4 | Stack Overflow, HN, Reddit, issue-grade reports |
400
+ | `unknown` | 0.4 | catch-all/current config |
401
+ | `llm_generated` | 0.3 | LLM synthesis or unvalidated memory seed |
402
+
403
+ **An independent evidence lineage** is an origin that can corroborate a claim independently. Canonical source IDs remain useful for identity, but identity alone does not prove independence. Collapse dependent evidence before counting:
404
+
405
+ - files, releases, and commits from one repository → one repository lineage;
406
+ - retry/review/fix tasks in one workstream → one task lineage;
407
+ - parent/child Kanban records → one task lineage;
408
+ - byte-identical memories across profiles → one memory lineage;
409
+ - a snapshot plus the mutable source it captures → one lineage;
410
+ - aliases or metadata references resolving to one origin → one lineage.
411
+
412
+ The deterministic `wiki-lint` path validates `_meta/trust-ledger.json`; it does not recompute confidence from source strings. New or materially changed pages are marked for manual review. Refresh the ledger only after explicit human approval.
413
+
414
+ **Per-skill defaults** (ingest skills compute this automatically):
415
+
416
+ | Skill | base_confidence | lifecycle |
417
+ |---|---|---|
418
+ | `wiki-ingest` (URL) | `0.17 + 0.5 × classify(url)` | `draft` |
419
+ | `wiki-ingest` (single doc) | per-source classifier | `draft` |
420
+ | `wiki-ingest` (multi-doc) | `min(N/3,1)×0.5 + avg_q×0.5` | `draft` |
421
+ | `wiki-research` | varies, often 0.85+ | `draft` |
422
+ | `wiki-capture` | 0.42 | `draft` |
423
+ | `*-history-ingest` | 0.42 | `draft` |
424
+ | `wiki-update` | 0.59 | `draft` |
425
+ | `wiki-synthesize` | `min(input_pages.base_confidence)` | `draft` |
426
+
427
+ ### Lifecycle state machine
428
+
429
+ Five states. **`stale` is not a state** — it is a computed overlay: `is_stale = (today − updated) > 90 days`.
430
+
431
+ | State | Entered by | Notes |
432
+ |---|---|---|
433
+ | `draft` | Any ingest skill on first write | Default for all new pages |
434
+ | `reviewed` | Human edit only | |
435
+ | `verified` | Human edit only | Time alone never demotes verified pages |
436
+ | `disputed` | Manual edit only | Overrides every state except `archived` in display |
437
+ | `archived` | Manual edit, or ingest skill setting `superseded_by` | Terminal |
438
+
439
+ Only ingest skills set `draft`. All other transitions require a human editor. Update `lifecycle_changed` whenever the state changes.
440
+
441
+ Two edge classes are therefore **illegal** and are reported by `obsidian-wiki lint` as `illegal_lifecycle_transitions`: anything falling back to `draft` (`reviewed|verified|disputed → draft`), and any exit from `archived` (it is terminal — restoring a page is a deliberate delete-and-recreate, not a transition). The check compares against the lifecycle recorded in `_meta/trust-ledger.json` at the page's last review, so it only sees pages that have been reviewed at least once.
442
+
443
+ ## Importance Tiering
444
+
445
+ The `tier:` field controls which pages get updated on each ingest pass and their priority in retrieval. As wikis grow, re-reading every page on every ingest wastes tokens — tiering lets ingest and query skills focus effort where it matters most.
446
+
447
+ ### Three tiers
448
+
449
+ | Tier | Meaning | Ingest behavior | Query priority |
450
+ |---|---|---|---|
451
+ | `core` | Load-bearing pages — many other pages depend on them (high incoming-link count or bridge position). Always worth updating. | Always update if the source is even marginally relevant | Surfaced first in index and full-read passes |
452
+ | `supporting` *(default)* | Standard wiki pages with moderate connectivity | Update when the source has clear new claims for this page | Standard priority |
453
+ | `peripheral` | Low-connectivity pages — rarely linked, narrowly scoped | Skip unless the source is *primarily* about this topic | Last resort; skipped when trimming to context budget |
454
+
455
+ ### Assignment rules
456
+
457
+ - **New pages:** default to `tier: supporting`
458
+ - **Promote to `core`:** when a page accumulates ≥5 incoming wikilinks **or** is flagged as a bridge by `wiki-status` insights mode
459
+ - **Demote to `peripheral`:** when a page has ≤1 incoming link and hasn't been updated in 90+ days
460
+ - **Human override always wins** — edit `tier:` manually to lock a page at any level
461
+ - Existing pages without `tier:` are treated as `supporting` (backward compatible — no migration needed)
462
+
463
+ ### Who manages tier
464
+
465
+ - `wiki-ingest` reads `tier:` to decide whether to update a page on the current pass
466
+ - `wiki-query` uses `tier:` to order candidates in the index pass and trim to context budget
467
+ - `wiki-status` insights mode computes graph metrics and **suggests** tier assignments — it never writes them automatically
468
+ - `wiki-lint` flags missing `tier:` on newly created pages (Phase 2 enforcement, same timeline as `base_confidence`)
469
+
470
+ ## Retrieval Primitives
471
+
472
+ Reading the vault is the dominant cost of every read-side skill. Use the cheapest primitive that can answer the question and **escalate only when the cheaper one is insufficient**. Any skill that needs content from the vault should follow this table rather than jumping straight to full-page reads.
473
+
474
+ | Need | Primitive | Relative cost |
475
+ |---|---|---|
476
+ | Does a page exist? What's its title/category/tags? | Read `index.md`; `Grep` frontmatter blocks (scope with a pattern that targets `^---` blocks at file heads) | **Cheapest** |
477
+ | 1–2 sentence preview of a page | Read the `summary:` field in its frontmatter | **Cheap** |
478
+ | A specific claim or section inside a page | `Grep -A <n> -B <n> "<term>" <file>` — returns only the matching lines plus context | **Medium** |
479
+ | Whole-page content | `Read <file>` | **Expensive** — last resort |
480
+ | Relationships across pages | `Grep "\[\[.*?\]\]"` across the vault, or walk wikilinks from a known page | Case-by-case |
481
+
482
+ **Search command preference:** for shell/file searches, use ripgrep (`rg`, `rg --files`) when available; if not, fall back to `grep`/`find`. Capitalized `Grep`/`Glob` names in these skills are tool-generic primitives for agents that expose those tools.
483
+
484
+ **The rule:** escalate only when the cheaper primitive can't answer the question. If you can answer from `summary:` fields alone, don't read page bodies. If a grepped section with `-A 10 -B 2` gives you the claim, don't read the whole page. A 500-line page opened to read 15 lines is 485 lines of wasted tokens.
485
+
486
+ **Why this matters:** a 20-page vault lets you get away with full-vault scans. A 200-page vault does not. The primitives above are how the skills framework scales to large vaults without a database.
487
+
488
+ Skills that consume this table: `wiki-query`, `cross-linker`, `wiki-lint`, `wiki-status` (insights mode). Any new skill that reads the vault should cite this section rather than reinvent the pattern.
489
+
490
+ ## QMD Index Freshness
491
+
492
+ QMD is an optional search index layered on top of the vault. The markdown vault is the source of truth. Any skill that writes wiki markdown should refresh QMD after the vault write completes, but only when `QMD_WIKI_COLLECTION` is configured and the local QMD transport is available. If QMD refresh fails, keep the vault changes and report the QMD status separately.
493
+
494
+ Use the cheapest verification path that proves the new content is visible: `qmd update`, `qmd embed` only if vectors are stale or missing, then a targeted `qmd get` or `qmd ls` check for one written page or the collection root. Read-only skills should not refresh QMD.
495
+
496
+ ## Core Principles
497
+
498
+ 1. **Compile, don't retrieve.** The wiki is pre-compiled knowledge. When you ingest a source, update every relevant page — don't just create a summary of the source.
499
+
500
+ 2. **Compound over time.** Each ingest should make the wiki smarter, not just bigger. Merge new information into existing pages, resolve contradictions, strengthen cross-references.
501
+
502
+ 3. **Provenance matters.** Every claim should trace to a source. When updating a page, note which source prompted the update.
503
+
504
+ 4. **Mark inferences.** Default sentences are extracted. Mark synthesized claims with `^[inferred]` and contested claims with `^[ambiguous]`. A wiki that hides its guessing rots silently; one that marks it stays trustworthy.
505
+
506
+ 5. **Human curates, LLM maintains.** The human decides what sources to add and what questions to ask. The LLM handles the bookkeeping — updating cross-references, maintaining consistency, noting contradictions.
507
+
508
+ 6. **Obsidian is the IDE.** The user browses and explores the wiki in Obsidian. Everything must be valid Obsidian markdown with working wikilinks.
509
+
510
+ ## Link Format
511
+
512
+ All internal links connecting wiki pages are controlled by `OBSIDIAN_LINK_FORMAT` from the resolved config (default: `wikilink`).
513
+
514
+ | Setting | Syntax | Example |
515
+ |---|---|---|
516
+ | `wikilink` *(default)* | `[[path/to/page]]` or `[[path/to/page\|display text]]` | `[[concepts/foo\|foo]]` |
517
+ | `markdown` | `[display text](relative/path.md)` | `[foo](../concepts/foo.md)` |
518
+
519
+ ### Generating markdown-format links
520
+
521
+ When `OBSIDIAN_LINK_FORMAT=markdown`:
522
+ 1. Compute the path from the **current file's directory** to the **target `.md` file** using `..` to climb up as needed.
523
+ 2. Use the page title or a natural phrase as display text.
524
+ 3. Always include the `.md` extension.
525
+
526
+ | Current file | Target | Relative link |
527
+ |---|---|---|
528
+ | `index.md` | `concepts/foo.md` | `[foo](concepts/foo.md)` |
529
+ | `concepts/foo.md` | `entities/bar.md` | `[bar](../entities/bar.md)` |
530
+ | `projects/my-project/my-project.md` | `concepts/foo.md` | `[foo](../../concepts/foo.md)` |
531
+ | `projects/my-project/concepts/arch.md` | `entities/bar.md` | `[bar](../../../entities/bar.md)` |
532
+
533
+ The `[[path\|display text]]` wikilink form maps to `[display text](relative/path.md)` in Markdown mode.
534
+
535
+ **Scope:** this setting affects only newly written or updated links. Existing vault content is never automatically migrated — users who want to convert old links can run the `cross-linker` or `wiki-lint` skill.
536
+
537
+ Every write skill reads `OBSIDIAN_LINK_FORMAT` from config before generating links and applies the correct format.
538
+
539
+ ## Config Resolution Protocol
540
+
541
+ **All skills must resolve config using this algorithm — do not hard-code `.env` or the global config path directly.** This ensures single-vault, multi-vault, project-local, and VPS setups all work correctly.
542
+
543
+ ### Global config directory
544
+
545
+ The global config directory is **XDG-style**: `$XDG_CONFIG_HOME/obsidian-wiki` (default `~/.config/obsidian-wiki`). Installs that already have a `~/.obsidian-wiki` directory keep using it — so an existing setup never breaks — but any **new** install lands under the XDG path. Resolve it with:
546
+
547
+ ```
548
+ obsidian_wiki_config_dir() {
549
+ local xdg_dir="${XDG_CONFIG_HOME:-$HOME/.config}/obsidian-wiki"
550
+ local legacy_dir="$HOME/.obsidian-wiki"
551
+ if [[ -d "$legacy_dir" && ! -e "$xdg_dir" ]]; then
552
+ echo "$legacy_dir"
553
+ else
554
+ echo "$xdg_dir"
555
+ fi
556
+ }
557
+ ```
558
+
559
+ Everywhere below, "the global config dir" means `$(obsidian_wiki_config_dir)`, and "the global config" means `$(obsidian_wiki_config_dir)/config`.
560
+
561
+ ### Resolution order
562
+
563
+ 0. **Inline vault override (`@name`)** — if the user's request contains an `@<name>` token (e.g. `@work save this`, `query @personal about X`), resolve `<global config dir>/config.<name>` directly and use its `OBSIDIAN_VAULT_PATH`. This **overrides** both the CWD `.env` walk-up and the active symlink, and applies to **that invocation only** — never run `ln -sf` or otherwise change the active vault for an `@name` request. If `<global config dir>/config.<name>` doesn't exist, tell the user it doesn't exist and list the available vaults (the `wiki-switch` **List** logic), then stop — do **not** silently fall back to the default. The `@name` is a routing directive, not content: strip it out before treating the rest of the request as the actual instruction or page text.
564
+ 1. **Walk up from CWD** — look for a `.env` file in the current directory, then each parent, up to `$HOME`. Stop at the first `.env` that contains `OBSIDIAN_VAULT_PATH`.
565
+ 2. **Global config** — if no local `.env` found, read the global config (`$(obsidian_wiki_config_dir)/config`).
566
+ 3. **Prompt setup** — if neither exists, tell the user: "No config found. Run `wiki-setup` to initialize your wiki."
567
+
568
+ `@name` is a **per-invocation override** — it targets one vault for one request. `/wiki-switch <name>` is the **persistent default** — it re-points the active symlink for all future requests. Use `@name` to touch the other vault from anywhere without disturbing your default ("brain") vault.
569
+
570
+ ```
571
+ find_config() {
572
+ # $1 = parsed @name from the request, if any (else empty)
573
+ local config_dir
574
+ config_dir="$(obsidian_wiki_config_dir)"
575
+ if [[ -n "$1" ]]; then
576
+ [[ -f "$config_dir/config.$1" ]] && { echo "$config_dir/config.$1"; return; }
577
+ echo ""; return # named vault missing → caller reports + lists, no fallback
578
+ fi
579
+ dir="$PWD"
580
+ while [[ "$dir" != "$HOME" && "$dir" != "/" ]]; do
581
+ [[ -f "$dir/.env" ]] && grep -q "OBSIDIAN_VAULT_PATH" "$dir/.env" && { echo "$dir/.env"; return; }
582
+ dir="$(dirname "$dir")"
583
+ done
584
+ [[ -f "$config_dir/config" ]] && { echo "$config_dir/config"; return; }
585
+ echo ""
586
+ }
587
+ ```
588
+
589
+ ### Vault-scoped state
590
+
591
+ Skills that write runtime state (e.g. `daily-update`) must scope that state to the resolved vault, not to a global path. Use:
592
+
593
+ ```
594
+ VAULT_ID=$(echo "$OBSIDIAN_VAULT_PATH" | md5sum 2>/dev/null || md5 -q - <<< "$OBSIDIAN_VAULT_PATH" | cut -c1-8)
595
+ STATE_DIR="$(obsidian_wiki_config_dir)/state/$VAULT_ID"
596
+ ```
597
+
598
+ ### Standard "Before You Start" block
599
+
600
+ Every skill's setup section should read:
601
+
602
+ > **Resolve config** — follow the Config Resolution Protocol in `llm-wiki/SKILL.md`. Honor an inline `@name` override first, then walk up from CWD for `.env`, fall back to the global config, else prompt setup. This gives `OBSIDIAN_VAULT_PATH` and any tool-specific path overrides.
603
+
604
+ ## Writing Profile Resolution
605
+
606
+ Before drafting or rewriting natural-language Markdown, resolve the global config directory with the XDG/legacy algorithm above, then read `<global config dir>/WRITING.md` when it exists. A missing or empty `WRITING.md` means there are no custom writing preferences. If that optional read fails, warn and continue with the default framework guidance.
607
+
608
+ The effective precedence is framework invariants > current task/skill requirements > current project `AGENTS.md` > vault `AGENTS.md` > global `WRITING.md`. Framework invariants include schema, provenance, and safety; operation-specific requirements remain authoritative for the current task. Unspecified project and vault rules are inherited from less-specific layers, and more specific same-topic rules win.
609
+
610
+ Writing preferences apply only to newly drafted or rewritten natural-language fields and body content. This includes natural-language title and summary values in YAML frontmatter, but preferences cannot alter YAML syntax, required keys, structure, types, or machine-generated fields. JSON, structured logs, and pass-through content remain unchanged and retain their required formats and source fidelity.
611
+
612
+ ## Environment Variables
613
+
614
+ The wiki is configured through environment variables (see `.env.example`). The only required variable is the vault path — everything else has sensible defaults.
615
+
616
+ - `OBSIDIAN_VAULT_PATH` — Where the wiki lives **(required)**
617
+ - `OBSIDIAN_SOURCES_DIR` — Where raw source documents are
618
+ - `OBSIDIAN_CATEGORIES` — Comma-separated list of categories
619
+ - `WIKI_SKIP_PROJECTS` — Comma-separated substrings; any project dir whose name contains one is excluded from history ingest (scan + delta + manifest). See the "Project Scoping" step in the history-ingest skills.
620
+ - `CLAUDE_HISTORY_PATH` — Where to find Claude conversation data
621
+ - `CODEX_HISTORY_PATH` — Where to find Codex session data
622
+ - `HERMES_HOME` — Where to find Hermes agent data
623
+ - `OPENCLAW_HOME` — Where to find OpenClaw data
624
+ - `COPILOT_HISTORY_PATH` — Where to find Copilot session data
625
+ - `OBSIDIAN_LINK_FORMAT` — Internal link syntax: `wikilink` (default) or `markdown`
626
+ - `WIKI_TOKEN_WARN_THRESHOLD` — Emit a warning in `wiki-status` when the full-wiki token estimate exceeds this value (default: `100000`). Set to `0` to disable. See `wiki-status` for the token footprint report.
627
+ - `WIKI_STAGED_WRITES` — When `true`, all LLM-written pages go to `_staging/<category>/` for human review before promotion. See `wiki-setup` and `wiki-stage-commit` for details.
628
+ - `CODE_UNDERSTANDING_BACKEND` — how wiki-update understands a project before distilling: `auto` (CodeGraph when available, else builtin ast-extract + rg; default), `builtin`, or `codegraph` (explicitly require; warn/error if unavailable).
629
+ - `CODE_UNDERSTANDING_CODEGRAPH_BIN` — optional path to the codegraph binary when it isn't on PATH.
630
+ - `CODE_UNDERSTANDING_CODEGRAPH_BIN` — optional path to the codegraph binary when it isn't on PATH.
631
+ Both resolve like `OBSIDIAN_VAULT_PATH`: a real environment variable wins (empty counts as
632
+ unset), then the nearest `.env` walking up from the project directory, then the global config
633
+ (`$(obsidian_wiki_config_dir)/config`), then the default.
634
+ - `OBSIDIAN_MAX_PAGES_PER_INGEST` — cap on pages created/updated per `wiki-ingest` run (default: `15`). See `wiki-ingest`, Step 4.
635
+ - `LINT_SCHEDULE` — how often `daily-update` also runs `wiki-lint`: `daily` \| `weekly` (default) \| `manual`. See `daily-update`, Step 4a.
636
+
637
+ No API keys are needed — the agent running these skills already has LLM access built in.
638
+
639
+ ## Modes of Operation
640
+
641
+ The wiki supports three ingest modes:
642
+
643
+ | Mode | When to use | What happens |
644
+ |---|---|---|
645
+ | **Append** | Small delta, incremental updates | Compute delta via manifest, ingest only new/modified sources |
646
+ | **Rebuild** | Major drift, fresh start needed | Archive current wiki to `_archives/`, clear, reprocess all sources |
647
+ | **Restore** | Need to go back | Bring back a previous archive |
648
+
649
+ Use `wiki-status` to see the delta and get a recommendation. Use `wiki-rebuild` for archive/rebuild/restore operations.
650
+
651
+ ## Reference
652
+
653
+ For details on specific operations, see the companion skills:
654
+ - **wiki-status** — Audit what's ingested, compute delta, recommend append vs rebuild
655
+ - **wiki-rebuild** — Archive current wiki, rebuild from scratch, or restore from archive
656
+ - **wiki-ingest** — Distill source documents into wiki pages and raw text/chat/log data
657
+ - **claude-history-ingest** — Ingest Claude conversation history
658
+ - **codex-history-ingest** — Ingest Codex CLI session history
659
+ - **wiki-query** — Answer questions against the wiki
660
+ - **wiki-lint** — Audit and maintain wiki health
661
+ - **wiki-setup** — Initialize a new vault