heraspec 0.1.14 → 0.1.15

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 (174) hide show
  1. package/LICENSE +187 -0
  2. package/README.md +94 -95
  3. package/bin/heraspec.js +195 -80
  4. package/bin/heraspec.js.map +2 -2
  5. package/dist/core/templates/skills/README.md +41 -38
  6. package/dist/core/templates/skills/campaign-plan/skill.md +76 -0
  7. package/dist/core/templates/skills/campaign-plan/skill.vi.md +76 -0
  8. package/dist/core/templates/skills/campaign-plan-skill.md +76 -0
  9. package/dist/core/templates/skills/campaign-plan-skill.vi.md +76 -0
  10. package/dist/core/templates/skills/code-review/skill.md +70 -0
  11. package/dist/core/templates/skills/code-review/skill.vi.md +70 -0
  12. package/dist/core/templates/skills/code-review-skill.md +70 -0
  13. package/dist/core/templates/skills/code-review-skill.vi.md +70 -0
  14. package/dist/core/templates/skills/content-creation/skill.md +69 -0
  15. package/dist/core/templates/skills/content-creation/skill.vi.md +69 -0
  16. package/dist/core/templates/skills/content-creation-skill.md +69 -0
  17. package/dist/core/templates/skills/content-creation-skill.vi.md +69 -0
  18. package/dist/core/templates/skills/content-optimization/skill.md +104 -0
  19. package/dist/core/templates/skills/debug/skill.md +69 -0
  20. package/dist/core/templates/skills/debug/skill.vi.md +69 -0
  21. package/dist/core/templates/skills/debug-skill.md +69 -0
  22. package/dist/core/templates/skills/debug-skill.vi.md +69 -0
  23. package/dist/core/templates/skills/deploy-documentation/skill.md +408 -0
  24. package/dist/core/templates/skills/design-system/knowledge/design-systems/airbnb/DESIGN.md +246 -0
  25. package/dist/core/templates/skills/design-system/knowledge/design-systems/airtable/DESIGN.md +89 -0
  26. package/dist/core/templates/skills/design-system/knowledge/design-systems/apple/DESIGN.md +313 -0
  27. package/dist/core/templates/skills/design-system/knowledge/design-systems/bmw/DESIGN.md +180 -0
  28. package/dist/core/templates/skills/design-system/knowledge/design-systems/cal/DESIGN.md +259 -0
  29. package/dist/core/templates/skills/design-system/knowledge/design-systems/claude/DESIGN.md +312 -0
  30. package/dist/core/templates/skills/design-system/knowledge/design-systems/clay/DESIGN.md +304 -0
  31. package/dist/core/templates/skills/design-system/knowledge/design-systems/clickhouse/DESIGN.md +281 -0
  32. package/dist/core/templates/skills/design-system/knowledge/design-systems/cohere/DESIGN.md +266 -0
  33. package/dist/core/templates/skills/design-system/knowledge/design-systems/coinbase/DESIGN.md +129 -0
  34. package/dist/core/templates/skills/design-system/knowledge/design-systems/composio/DESIGN.md +307 -0
  35. package/dist/core/templates/skills/design-system/knowledge/design-systems/cursor/DESIGN.md +309 -0
  36. package/dist/core/templates/skills/design-system/knowledge/design-systems/elevenlabs/DESIGN.md +265 -0
  37. package/dist/core/templates/skills/design-system/knowledge/design-systems/expo/DESIGN.md +281 -0
  38. package/dist/core/templates/skills/design-system/knowledge/design-systems/figma/DESIGN.md +220 -0
  39. package/dist/core/templates/skills/design-system/knowledge/design-systems/framer/DESIGN.md +246 -0
  40. package/dist/core/templates/skills/design-system/knowledge/design-systems/hashicorp/DESIGN.md +278 -0
  41. package/dist/core/templates/skills/design-system/knowledge/design-systems/ibm/DESIGN.md +332 -0
  42. package/dist/core/templates/skills/design-system/knowledge/design-systems/index.json +72 -0
  43. package/dist/core/templates/skills/design-system/knowledge/design-systems/intercom/DESIGN.md +146 -0
  44. package/dist/core/templates/skills/design-system/knowledge/design-systems/kraken/DESIGN.md +125 -0
  45. package/dist/core/templates/skills/design-system/knowledge/design-systems/linear.app/DESIGN.md +367 -0
  46. package/dist/core/templates/skills/design-system/knowledge/design-systems/lovable/DESIGN.md +298 -0
  47. package/dist/core/templates/skills/design-system/knowledge/design-systems/minimax/DESIGN.md +257 -0
  48. package/dist/core/templates/skills/design-system/knowledge/design-systems/mintlify/DESIGN.md +326 -0
  49. package/dist/core/templates/skills/design-system/knowledge/design-systems/miro/DESIGN.md +108 -0
  50. package/dist/core/templates/skills/design-system/knowledge/design-systems/mistral.ai/DESIGN.md +261 -0
  51. package/dist/core/templates/skills/design-system/knowledge/design-systems/mongodb/DESIGN.md +266 -0
  52. package/dist/core/templates/skills/design-system/knowledge/design-systems/notion/DESIGN.md +309 -0
  53. package/dist/core/templates/skills/design-system/knowledge/design-systems/nvidia/DESIGN.md +293 -0
  54. package/dist/core/templates/skills/design-system/knowledge/design-systems/ollama/DESIGN.md +267 -0
  55. package/dist/core/templates/skills/design-system/knowledge/design-systems/opencode.ai/DESIGN.md +281 -0
  56. package/dist/core/templates/skills/design-system/knowledge/design-systems/pinterest/DESIGN.md +230 -0
  57. package/dist/core/templates/skills/design-system/knowledge/design-systems/posthog/DESIGN.md +256 -0
  58. package/dist/core/templates/skills/design-system/knowledge/design-systems/raycast/DESIGN.md +268 -0
  59. package/dist/core/templates/skills/design-system/knowledge/design-systems/replicate/DESIGN.md +261 -0
  60. package/dist/core/templates/skills/design-system/knowledge/design-systems/resend/DESIGN.md +303 -0
  61. package/dist/core/templates/skills/design-system/knowledge/design-systems/revolut/DESIGN.md +185 -0
  62. package/dist/core/templates/skills/design-system/knowledge/design-systems/runwayml/DESIGN.md +244 -0
  63. package/dist/core/templates/skills/design-system/knowledge/design-systems/sanity/DESIGN.md +357 -0
  64. package/dist/core/templates/skills/design-system/knowledge/design-systems/sentry/DESIGN.md +262 -0
  65. package/dist/core/templates/skills/design-system/knowledge/design-systems/spacex/DESIGN.md +194 -0
  66. package/dist/core/templates/skills/design-system/knowledge/design-systems/spotify/DESIGN.md +246 -0
  67. package/dist/core/templates/skills/design-system/knowledge/design-systems/stripe/DESIGN.md +322 -0
  68. package/dist/core/templates/skills/design-system/knowledge/design-systems/supabase/DESIGN.md +255 -0
  69. package/dist/core/templates/skills/design-system/knowledge/design-systems/superhuman/DESIGN.md +252 -0
  70. package/dist/core/templates/skills/design-system/knowledge/design-systems/together.ai/DESIGN.md +263 -0
  71. package/dist/core/templates/skills/design-system/knowledge/design-systems/uber/DESIGN.md +295 -0
  72. package/dist/core/templates/skills/design-system/knowledge/design-systems/vercel/DESIGN.md +310 -0
  73. package/dist/core/templates/skills/design-system/knowledge/design-systems/voltagent/DESIGN.md +323 -0
  74. package/dist/core/templates/skills/design-system/knowledge/design-systems/warp/DESIGN.md +253 -0
  75. package/dist/core/templates/skills/design-system/knowledge/design-systems/webflow/DESIGN.md +92 -0
  76. package/dist/core/templates/skills/design-system/knowledge/design-systems/wise/DESIGN.md +173 -0
  77. package/dist/core/templates/skills/design-system/knowledge/design-systems/x.ai/DESIGN.md +257 -0
  78. package/dist/core/templates/skills/design-system/knowledge/design-systems/zapier/DESIGN.md +328 -0
  79. package/dist/core/templates/skills/design-system/skill.md +176 -0
  80. package/dist/core/templates/skills/documents/skill.md +104 -0
  81. package/dist/core/templates/skills/e2e-test/skill.md +119 -0
  82. package/dist/core/templates/skills/email-sequence/skill.md +68 -0
  83. package/dist/core/templates/skills/email-sequence/skill.vi.md +68 -0
  84. package/dist/core/templates/skills/email-sequence-skill.md +68 -0
  85. package/dist/core/templates/skills/email-sequence-skill.vi.md +68 -0
  86. package/dist/core/templates/skills/git-embed/skill.md +57 -0
  87. package/dist/core/templates/skills/integration-test/skill.md +118 -0
  88. package/dist/core/templates/skills/knowledge/README.md +63 -63
  89. package/dist/core/templates/skills/knowledge/design-systems/index.json +72 -72
  90. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/profile.json +27 -27
  91. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/structure.md +137 -137
  92. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/profile.json +39 -39
  93. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/structure.md +207 -207
  94. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/profile.json +51 -51
  95. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/structure.md +369 -369
  96. package/dist/core/templates/skills/knowledge/index.json +65 -65
  97. package/dist/core/templates/skills/perfex-module/module-codebase/skill.md +110 -0
  98. package/dist/core/templates/skills/project-memory/skill.md +222 -0
  99. package/dist/core/templates/skills/project-memory/skill.vi.md +223 -0
  100. package/dist/core/templates/skills/seo-audit/skill.md +75 -0
  101. package/dist/core/templates/skills/seo-audit/skill.vi.md +75 -0
  102. package/dist/core/templates/skills/seo-audit-skill.md +75 -0
  103. package/dist/core/templates/skills/seo-audit-skill.vi.md +75 -0
  104. package/dist/core/templates/skills/smart-explore/skill.md +141 -0
  105. package/dist/core/templates/skills/sourcecode-analyzer/skill.md +210 -0
  106. package/dist/core/templates/skills/sourcecode-analyzer/skill.vi.md +210 -0
  107. package/dist/core/templates/skills/spec-writer/skill.md +61 -0
  108. package/dist/core/templates/skills/spec-writer/skill.vi.md +61 -0
  109. package/dist/core/templates/skills/spec-writer-skill.md +61 -0
  110. package/dist/core/templates/skills/spec-writer-skill.vi.md +61 -0
  111. package/dist/core/templates/skills/sql-queries/skill.md +67 -0
  112. package/dist/core/templates/skills/sql-queries/skill.vi.md +67 -0
  113. package/dist/core/templates/skills/sql-queries-skill.md +67 -0
  114. package/dist/core/templates/skills/sql-queries-skill.vi.md +67 -0
  115. package/dist/core/templates/skills/suggestion/skill.md +118 -0
  116. package/dist/core/templates/skills/system-design/skill.md +70 -0
  117. package/dist/core/templates/skills/system-design/skill.vi.md +70 -0
  118. package/dist/core/templates/skills/system-design-skill.md +70 -0
  119. package/dist/core/templates/skills/system-design-skill.vi.md +70 -0
  120. package/dist/core/templates/skills/tech-debt/skill.md +70 -0
  121. package/dist/core/templates/skills/tech-debt/skill.vi.md +70 -0
  122. package/dist/core/templates/skills/tech-debt-skill.md +70 -0
  123. package/dist/core/templates/skills/tech-debt-skill.vi.md +70 -0
  124. package/dist/core/templates/skills/ui-ux/data/charts.csv +26 -0
  125. package/dist/core/templates/skills/ui-ux/data/colors.csv +97 -0
  126. package/dist/core/templates/skills/ui-ux/data/design-systems.csv +54 -0
  127. package/dist/core/templates/skills/ui-ux/data/landing.csv +31 -0
  128. package/dist/core/templates/skills/ui-ux/data/pages-proposed.csv +22 -0
  129. package/dist/core/templates/skills/ui-ux/data/pages.csv +10 -0
  130. package/dist/core/templates/skills/ui-ux/data/products.csv +97 -0
  131. package/dist/core/templates/skills/ui-ux/data/prompts.csv +24 -0
  132. package/dist/core/templates/skills/ui-ux/data/stacks/flutter.csv +53 -0
  133. package/dist/core/templates/skills/ui-ux/data/stacks/html-tailwind.csv +56 -0
  134. package/dist/core/templates/skills/ui-ux/data/stacks/nextjs.csv +53 -0
  135. package/dist/core/templates/skills/ui-ux/data/stacks/react-native.csv +52 -0
  136. package/dist/core/templates/skills/ui-ux/data/stacks/react.csv +54 -0
  137. package/dist/core/templates/skills/ui-ux/data/stacks/svelte.csv +54 -0
  138. package/dist/core/templates/skills/ui-ux/data/stacks/swiftui.csv +51 -0
  139. package/dist/core/templates/skills/ui-ux/data/stacks/vue.csv +50 -0
  140. package/dist/core/templates/skills/ui-ux/data/styles.csv +59 -0
  141. package/dist/core/templates/skills/ui-ux/data/typography.csv +58 -0
  142. package/dist/core/templates/skills/ui-ux/data/ux-guidelines.csv +100 -0
  143. package/dist/core/templates/skills/ui-ux/scripts/CODE_EXPLANATION.md +394 -0
  144. package/dist/core/templates/skills/ui-ux/scripts/SEARCH_ALGORITHMS_COMPARISON.md +421 -0
  145. package/dist/core/templates/skills/ui-ux/scripts/SEARCH_MODES_GUIDE.md +238 -0
  146. package/dist/core/templates/skills/ui-ux/scripts/core.py +391 -0
  147. package/dist/core/templates/skills/ui-ux/scripts/search.py +73 -0
  148. package/dist/core/templates/skills/ui-ux/skill.md +595 -0
  149. package/dist/core/templates/skills/ui-ux/templates/accessibility-checklist.md +40 -0
  150. package/dist/core/templates/skills/ui-ux/templates/example-prompt-full-theme.md +333 -0
  151. package/dist/core/templates/skills/ui-ux/templates/page-types-guide.md +338 -0
  152. package/dist/core/templates/skills/ui-ux/templates/pages-proposed-summary.md +273 -0
  153. package/dist/core/templates/skills/ui-ux/templates/pre-delivery-checklist.md +42 -0
  154. package/dist/core/templates/skills/ui-ux/templates/prompt-template-full-theme.md +313 -0
  155. package/dist/core/templates/skills/ui-ux/templates/responsive-design.md +40 -0
  156. package/dist/core/templates/skills/unit-test/skill.md +111 -0
  157. package/dist/core/templates/skills/wordpress/plugin-check/skill.md +151 -0
  158. package/dist/core/templates/skills/wordpress/plugin-directory/skill.md +396 -0
  159. package/dist/core/templates/skills/wordpress/plugin-standard/skill.md +100 -0
  160. package/dist/core/templates/skills/wordpress/plugin-standard/templates/admin-dashboard.php +47 -0
  161. package/dist/core/templates/skills/wordpress/plugin-standard/templates/admin-settings.php +60 -0
  162. package/dist/core/templates/skills/wordpress/plugin-standard/templates/assets/admin-css.css +22 -0
  163. package/dist/core/templates/skills/wordpress/plugin-standard/templates/assets/admin-js.js +15 -0
  164. package/dist/core/templates/skills/wordpress/plugin-standard/templates/plugin-main.php +169 -0
  165. package/dist/core/templates/skills/wordpress/plugin-standard/templates/readme.txt +41 -0
  166. package/dist/core/templates/skills/wordpress/plugin-standard/templates/uninstall.php +21 -0
  167. package/dist/core/templates/skills/wordpress/ux-element/skill.md +83 -0
  168. package/dist/core/templates/skills/wordpress/ux-element/templates/Controller.php +50 -0
  169. package/dist/core/templates/skills/wordpress/ux-element/templates/Shortcode.php +23 -0
  170. package/dist/core/templates/skills/wordpress/ux-element/templates/Template.html +20 -0
  171. package/dist/core/templates/skills/wordpress/ux-element/templates/Thumbnail.svg +8 -0
  172. package/dist/core/templates/skills/wordpress/ux-element/templates/View.php +21 -0
  173. package/dist/index.js +195 -79
  174. package/package.json +1 -1
@@ -0,0 +1,210 @@
1
+ ---
2
+ name: sourcecode-analyzer
3
+ description: Multi-agent deep source code analysis for architecture, coding style, design patterns, languages, frameworks, libraries, module structure, extension points, and integration readiness. Use when agents must understand a codebase before planning features, refactoring, integration, migration, auditing, or documentation.
4
+ projectType: all
5
+ ---
6
+
7
+ # Source Code Analyzer
8
+
9
+ ## Objective
10
+ Produce a high-confidence architecture and integration analysis of the repository with evidence from real files.
11
+
12
+ ## Scope
13
+ Analyze:
14
+ - Architecture boundaries and layering
15
+ - Framework/CMS/runtime and dependency stack
16
+ - Coding style and conventions
17
+ - Modules/themes/plugins and extension points
18
+ - API surfaces (REST/GraphQL/webhooks/events/CLI/jobs)
19
+ - Data layer and configuration model
20
+ - Security and operational posture
21
+ - Integration capability and constraints
22
+
23
+ Do not:
24
+ - Modify business logic
25
+ - Run destructive commands
26
+ - Install or upgrade dependencies unless requested
27
+
28
+ ## Required Output
29
+ Write a report to `_analytics/structure.md` (or user-provided path) with the exact section order defined in "Report Template".
30
+
31
+ ## Evidence Rules
32
+ For every important claim:
33
+ - Include concrete evidence (file path, symbol/class/function, and short snippet summary)
34
+ - Mark confidence as `High`, `Medium`, or `Low`
35
+ - Label statement type:
36
+ - `Observed`: Directly confirmed in source
37
+ - `Inferred`: Derived from multiple observed facts
38
+ - `Assumed`: Plausible but not yet confirmed
39
+
40
+ Avoid ungrounded conclusions.
41
+
42
+ ## Multi-Agent Orchestration
43
+ If subagents are available, split work in parallel:
44
+
45
+ 1. `Architecture lane`
46
+ - Map directory topology, layers, modules/plugins/themes
47
+ - Identify entry points and dependency direction
48
+
49
+ 2. `Style and design lane`
50
+ - Detect naming conventions, folder conventions, patterns, anti-patterns
51
+ - Detect coding standards and linting/testing quality gates
52
+
53
+ 3. `Dependency and runtime lane`
54
+ - Detect language/runtime/framework versions
55
+ - Inventory key libraries and their roles
56
+
57
+ 4. `Integration and security lane`
58
+ - Map APIs, events/hooks, queues, cron/jobs, webhooks, third-party SDKs
59
+ - Assess authN/authZ, input validation, secrets handling, and attack surface
60
+
61
+ Coordinator responsibilities:
62
+ - Normalize lane outputs
63
+ - Resolve contradictions
64
+ - Produce one final report with evidence and confidence
65
+
66
+ If subagents are unavailable, execute the same lanes sequentially.
67
+
68
+ ## Workflow
69
+
70
+ ### Step 0 — Knowledge Lookup (Pre-Analysis)
71
+ Before starting full analysis, check if pre-analyzed knowledge exists:
72
+
73
+ 1. Check if `heraspec/knowledge/index.json` exists in the project
74
+ 2. Read all entries and match against the current project:
75
+ - For `file-contains` signals: check if the file exists AND contains the specified string
76
+ - For `directory-exists` signals: check if the directory exists
77
+ - Each matched signal = +1 to the match score
78
+ 3. If `score >= minMatchScore` for any entry:
79
+ - Read the corresponding `structure.md` from `heraspec/knowledge/<knowledgePath>/`
80
+ - Use it as the **baseline analysis** — skip redundant Steps 1-8 for sections already covered
81
+ - Focus only on **project-specific differences** (custom plugins, configs, .env, custom code)
82
+ - Output: merge baseline knowledge + project-specific delta into final report
83
+ 4. Also check `heraspec/knowledge/custom/index.json` for project-specific knowledge entries
84
+ 5. If no match found in either index: proceed with full analysis from Step 1
85
+
86
+ Knowledge hierarchy: `heraspec/knowledge/<category>/<runtime>/<framework>/<cms>/`
87
+
88
+ ### Step 1 - Baseline Metadata
89
+ Read root metadata first:
90
+ - `composer.json`, `composer.lock`
91
+ - `package.json`, lockfiles
92
+ - `docker*`, `Makefile`, CI configs
93
+ - `.env.example`, config directories
94
+
95
+ Capture:
96
+ - Language/runtime versions
97
+ - Framework/CMS versions
98
+ - Build and deployment model
99
+
100
+ ### Step 2 - Repository Topology
101
+ Map major folders and responsibilities:
102
+ - Core/domain/infrastructure boundaries
103
+ - Plugin/module/theme architecture
104
+ - Shared libraries and cross-cutting concerns
105
+ - Bootstrapping and entry points
106
+
107
+ ### Step 3 - Architectural Patterns
108
+ Identify and evaluate:
109
+ - Layered/hexagonal/modular/monolith/microservice patterns
110
+ - Service container/DI usage
111
+ - Event-driven flows
112
+ - Boundaries and coupling hotspots
113
+
114
+ ### Step 4 - Coding Style and Design Conventions
115
+ Inspect representative files from each major layer:
116
+ - Naming conventions (class/function/file)
117
+ - Folder and namespace strategy
118
+ - Error handling patterns
119
+ - Test style and coverage signals
120
+ - Static analysis/lint/format rules
121
+
122
+ ### Step 5 - Extension Model
123
+ Map extensibility mechanisms:
124
+ - Hooks/filters/events/listeners
125
+ - Plugin/module registration and lifecycle
126
+ - Theme/template override model
127
+ - Custom providers, middleware, policies
128
+
129
+ ### Step 6 - API and Interaction Surfaces
130
+ Inventory internal and external interfaces:
131
+ - REST/GraphQL routes and controllers
132
+ - Command bus, queues, jobs, schedulers
133
+ - CLI commands, webhooks, callbacks
134
+ - Public SDK/service abstractions
135
+
136
+ ### Step 7 - Data and State
137
+ Analyze:
138
+ - ORM/data access strategy
139
+ - Migration and seeding patterns
140
+ - Cache/session/queue drivers
141
+ - Transaction boundaries and consistency risks
142
+
143
+ ### Step 8 - Security and Compliance Signals
144
+ Check:
145
+ - Authentication and authorization model
146
+ - CSRF/XSS/SQLi protections
147
+ - Secrets and credential handling
148
+ - Rate limiting and abuse protection
149
+ - Audit logging and sensitive operation traces
150
+
151
+ ### Step 9 - Integration Readiness
152
+ Evaluate integration capability across:
153
+ - Data integration
154
+ - API integration
155
+ - Event integration
156
+ - UI/theme integration
157
+ - Deployment/infra integration
158
+
159
+ For each integration type, summarize:
160
+ - Available entry points
161
+ - Required adapters
162
+ - Estimated complexity (`Low`/`Medium`/`High`)
163
+ - Major risks and mitigations
164
+
165
+ ### Step 10 - Synthesis
166
+ Consolidate findings into one report, prioritize evidence-backed conclusions, and list unknowns that block confidence.
167
+
168
+ ## Report Template
169
+
170
+ Use this exact section order in `_analytics/structure.md`:
171
+
172
+ 1. `Executive Summary`
173
+ 2. `Technology Profile`
174
+ 3. `Repository Topology`
175
+ 4. `Architecture and Dependency Flow`
176
+ 5. `Coding Style and Conventions`
177
+ 6. `Extension Points (Modules/Themes/Plugins/Hooks)`
178
+ 7. `API and Interaction Surfaces`
179
+ 8. `Data Model and State Management`
180
+ 9. `Security Posture`
181
+ 10. `Integration Capability Matrix`
182
+ 11. `Strengths, Weaknesses, Risks`
183
+ 12. `Top 10 Evidence Items`
184
+ 13. `Unknowns and Verification Plan`
185
+ 14. `Recommended Next Actions (30/60/90 day)`
186
+
187
+ ## Integration Capability Matrix Format
188
+
189
+ Use one row per integration domain:
190
+
191
+ | Domain | Entry Points | Required Adapters | Complexity | Risks | Confidence |
192
+ |---|---|---|---|---|---|
193
+
194
+ Domains to include:
195
+ - External APIs
196
+ - Authentication/SSO
197
+ - Payment
198
+ - Messaging/Queue
199
+ - Storage/CDN
200
+ - Observability
201
+ - Admin/UI customization
202
+ - Content/data migration
203
+
204
+ ## Completion Checklist
205
+ Complete the skill execution only when all conditions are met:
206
+ - Report file exists at target path
207
+ - Every critical claim has evidence
208
+ - Assumptions are explicitly marked
209
+ - Integration matrix is complete
210
+ - Top risks include mitigation guidance
@@ -0,0 +1,210 @@
1
+ ---
2
+ name: sourcecode-analyzer
3
+ description: Phân tích sâu source code theo mô hình đa agent cho kiến trúc, coding style, design pattern, ngôn ngữ, framework, thư viện, cấu trúc module, extension point và khả năng tích hợp. Sử dụng khi agent cần hiểu tối đa codebase trước khi lập kế hoạch feature, refactor, integration, migration, audit hoặc documentation.
4
+ projectType: all
5
+ ---
6
+
7
+ # Source Code Analyzer (Tiếng Việt)
8
+
9
+ ## Mục tiêu
10
+ Tạo báo cáo phân tích kiến trúc và khả năng tích hợp có độ tin cậy cao, dựa trên bằng chứng trực tiếp từ source code.
11
+
12
+ ## Phạm vi
13
+ Phân tích:
14
+ - Ranh giới kiến trúc và phân lớp
15
+ - Stack framework/CMS/runtime và dependency
16
+ - Coding style và conventions
17
+ - Modules/themes/plugins và extension points
18
+ - API surfaces (REST/GraphQL/webhooks/events/CLI/jobs)
19
+ - Data layer và mô hình cấu hình
20
+ - Bảo mật và vận hành
21
+ - Khả năng tích hợp và các ràng buộc
22
+
23
+ Không:
24
+ - Sửa business logic
25
+ - Chạy lệnh hủy hoại
26
+ - Cài đặt hoặc nâng cấp dependency nếu chưa được yêu cầu
27
+
28
+ ## Đầu ra bắt buộc
29
+ Ghi báo cáo vào `_analytics/structure.md` (hoặc đường dẫn do người dùng chỉ định), đúng thứ tự section như trong `Report Template`.
30
+
31
+ ## Quy tắc bằng chứng
32
+ Mỗi nhận định quan trọng phải:
33
+ - Có bằng chứng cụ thể (đường dẫn file, symbol/class/function, tóm tắt snippet ngắn)
34
+ - Gán mức độ tin cậy `High`, `Medium` hoặc `Low`
35
+ - Gán loại nhận định:
36
+ - `Observed`: Xác nhận trực tiếp trong source
37
+ - `Inferred`: Suy ra từ nhiều quan sát đã xác thực
38
+ - `Assumed`: Giả định hợp lý nhưng chưa xác thực
39
+
40
+ Không đưa ra kết luận không có cơ sở.
41
+
42
+ ## Điều phối đa agent
43
+ Nếu có subagents, tách song song 4 lane:
44
+
45
+ 1. `Architecture lane`
46
+ - Lập bản đồ topology thư mục, layers, modules/plugins/themes
47
+ - Xác định entry points và hướng phụ thuộc
48
+
49
+ 2. `Style and design lane`
50
+ - Xác định naming conventions, folder conventions, patterns, anti-patterns
51
+ - Xác định coding standards và quality gates (lint/test/static check)
52
+
53
+ 3. `Dependency and runtime lane`
54
+ - Xác định ngôn ngữ/runtime/framework versions
55
+ - Inventory thư viện quan trọng và vai trò
56
+
57
+ 4. `Integration and security lane`
58
+ - Lập bản đồ APIs, events/hooks, queues, cron/jobs, webhooks, third-party SDKs
59
+ - Đánh giá authN/authZ, input validation, secrets handling và attack surface
60
+
61
+ Nhiệm vụ của coordinator:
62
+ - Chuẩn hóa output của các lane
63
+ - Xử lý mâu thuẫn giữa các lane
64
+ - Tổng hợp 1 báo cáo cuối cùng có bằng chứng và confidence
65
+
66
+ Nếu không có subagents, chạy tuần tự theo cùng quy trình lane.
67
+
68
+ ## Workflow
69
+
70
+ ### Step 0 — Knowledge Lookup (Tra cứu kiến thức sẵn có)
71
+ Trước khi phân tích toàn bộ, kiểm tra knowledge base đã có sẵn:
72
+
73
+ 1. Kiểm tra `heraspec/knowledge/index.json` có tồn tại trong dự án không
74
+ 2. Đọc tất cả entries và đối chiếu với dự án hiện tại:
75
+ - Với signal `file-contains`: kiểm tra file tồn tại VÀ chứa chuỗi chỉ định
76
+ - Với signal `directory-exists`: kiểm tra thư mục tồn tại
77
+ - Mỗi signal khớp = +1 điểm match score
78
+ 3. Nếu `score >= minMatchScore` cho bất kỳ entry nào:
79
+ - Đọc `structure.md` tương ứng từ `heraspec/knowledge/<knowledgePath>/`
80
+ - Sử dụng làm **baseline phân tích** — bỏ qua Steps 1-8 cho các section đã có
81
+ - Chỉ tập trung vào **khác biệt riêng dự án** (custom plugins, configs, .env, custom code)
82
+ - Đầu ra: gộp baseline knowledge + delta riêng dự án thành báo cáo cuối
83
+ 4. Kiểm tra thêm `heraspec/knowledge/custom/index.json` cho knowledge riêng dự án
84
+ 5. Nếu không match: tiến hành phân tích đầy đủ từ Step 1
85
+
86
+ Phân cấp knowledge: `heraspec/knowledge/<category>/<runtime>/<framework>/<cms>/`
87
+
88
+ ### Step 1 - Baseline Metadata
89
+ Đọc metadata ở root trước:
90
+ - `composer.json`, `composer.lock`
91
+ - `package.json`, lockfiles
92
+ - `docker*`, `Makefile`, CI configs
93
+ - `.env.example`, config directories
94
+
95
+ Thu thập:
96
+ - Language/runtime versions
97
+ - Framework/CMS versions
98
+ - Build và deployment model
99
+
100
+ ### Step 2 - Repository Topology
101
+ Lập bản đồ thư mục chính và trách nhiệm:
102
+ - Core/domain/infrastructure boundaries
103
+ - Kiến trúc plugin/module/theme
104
+ - Shared libraries và cross-cutting concerns
105
+ - Bootstrapping và entry points
106
+
107
+ ### Step 3 - Architectural Patterns
108
+ Xác định và đánh giá:
109
+ - Layered/hexagonal/modular/monolith/microservice patterns
110
+ - Sử dụng service container/DI
111
+ - Event-driven flows
112
+ - Điểm nóng coupling và boundaries
113
+
114
+ ### Step 4 - Coding Style and Design Conventions
115
+ Kiểm tra các file đại diện mỗi layer:
116
+ - Naming conventions (class/function/file)
117
+ - Folder và namespace strategy
118
+ - Error handling patterns
119
+ - Test style và coverage signals
120
+ - Static analysis/lint/format rules
121
+
122
+ ### Step 5 - Extension Model
123
+ Lập bản đồ cơ chế mở rộng:
124
+ - Hooks/filters/events/listeners
125
+ - Đăng ký module/plugin và lifecycle
126
+ - Theme/template override model
127
+ - Custom providers, middleware, policies
128
+
129
+ ### Step 6 - API and Interaction Surfaces
130
+ Thống kê interfaces nội bộ và bên ngoài:
131
+ - REST/GraphQL routes và controllers
132
+ - Command bus, queues, jobs, schedulers
133
+ - CLI commands, webhooks, callbacks
134
+ - Public SDK/service abstractions
135
+
136
+ ### Step 7 - Data and State
137
+ Phân tích:
138
+ - ORM/data access strategy
139
+ - Migration và seeding patterns
140
+ - Cache/session/queue drivers
141
+ - Transaction boundaries và consistency risks
142
+
143
+ ### Step 8 - Security and Compliance Signals
144
+ Kiểm tra:
145
+ - Authentication và authorization model
146
+ - CSRF/XSS/SQLi protections
147
+ - Secrets và credential handling
148
+ - Rate limiting và abuse protection
149
+ - Audit logging và trace các thao tác nhạy cảm
150
+
151
+ ### Step 9 - Integration Readiness
152
+ Đánh giá khả năng tích hợp theo:
153
+ - Data integration
154
+ - API integration
155
+ - Event integration
156
+ - UI/theme integration
157
+ - Deployment/infra integration
158
+
159
+ Mỗi loại tích hợp cần tóm tắt:
160
+ - Entry points hiện có
161
+ - Adapters cần bổ sung
162
+ - Độ phức tạp ước tính (`Low`/`Medium`/`High`)
163
+ - Rủi ro chính và hướng giảm thiểu
164
+
165
+ ### Step 10 - Synthesis
166
+ Tổng hợp findings vào một báo cáo, ưu tiên kết luận có bằng chứng, và liệt kê unknowns đang cần xác minh.
167
+
168
+ ## Report Template
169
+
170
+ Sử dụng đúng thứ tự section sau trong `_analytics/structure.md`:
171
+
172
+ 1. `Executive Summary`
173
+ 2. `Technology Profile`
174
+ 3. `Repository Topology`
175
+ 4. `Architecture and Dependency Flow`
176
+ 5. `Coding Style and Conventions`
177
+ 6. `Extension Points (Modules/Themes/Plugins/Hooks)`
178
+ 7. `API and Interaction Surfaces`
179
+ 8. `Data Model and State Management`
180
+ 9. `Security Posture`
181
+ 10. `Integration Capability Matrix`
182
+ 11. `Strengths, Weaknesses, Risks`
183
+ 12. `Top 10 Evidence Items`
184
+ 13. `Unknowns and Verification Plan`
185
+ 14. `Recommended Next Actions (30/60/90 day)`
186
+
187
+ ## Integration Capability Matrix Format
188
+
189
+ Mỗi integration domain là 1 dòng:
190
+
191
+ | Domain | Entry Points | Required Adapters | Complexity | Risks | Confidence |
192
+ |---|---|---|---|---|---|
193
+
194
+ Bắt buộc gồm:
195
+ - External APIs
196
+ - Authentication/SSO
197
+ - Payment
198
+ - Messaging/Queue
199
+ - Storage/CDN
200
+ - Observability
201
+ - Admin/UI customization
202
+ - Content/data migration
203
+
204
+ ## Completion Checklist
205
+ Chỉ kết thúc skill khi đủ các điều kiện:
206
+ - Report tồn tại ở đường dẫn mục tiêu
207
+ - Mỗi nhận định quan trọng đều có bằng chứng
208
+ - Giả định được đánh dấu rõ ràng
209
+ - Integration matrix đầy đủ
210
+ - Top risks có hướng giảm thiểu đề xuất
@@ -0,0 +1,61 @@
1
+ # Skill: Specification Writing (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write and refine high-quality functional/technical specifications, user stories, and delta specs for consumption by AI agents.
6
+
7
+ ## When to Use
8
+
9
+ - When starting a new feature change (Step 1 of the HeraSpec workflow)
10
+ - When converting high-level business ideas into structured technical specs
11
+ - When refining delta specs during parallel merge validation
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Define User Story & Scenarios
16
+ - Structure the core requirement as a User Story (As a... I want to... So that...)
17
+ - Formulate behavioral scenarios using GIVEN-WHEN-THEN syntax (Gherkin style)
18
+ - Define happy paths, error paths, and edge cases
19
+
20
+ ### Step 2: Structure metadata
21
+ - Specify target components, domains, and technical stacks
22
+ - Verify requirements match the architectural conventions defined in `project.md`
23
+
24
+ ### Step-3: Write Delta Spec
25
+ - Segment new, modified, and removed requirements clearly:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (must specify the exact Before vs. After states)
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Required Input
31
+
32
+ - Business requirement description or user prompt
33
+ - Technical stack metadata from `project.md`
34
+
35
+ ## Expected Output
36
+
37
+ - Clean markdown specification following the HeraSpec format
38
+ - Complete Delta Spec with GIVEN-WHEN-THEN scenarios
39
+
40
+ ## Tone & Rules
41
+
42
+ - Be extremely precise. Avoid ambiguous language like "user-friendly" or "fast".
43
+ - Always define exact failure states (e.g. "returns 401 Unauthorized" instead of "shows error").
44
+ - Scenarios MUST be testable and actionable.
45
+
46
+ ## Available Templates
47
+
48
+ - None
49
+
50
+ ## Available Scripts
51
+
52
+ - None
53
+
54
+ ## Examples
55
+
56
+ See `examples/` directory.
57
+
58
+ ## Links to Other Skills
59
+
60
+ - **documents**: Use to format the specifications into product manuals.
61
+ - **suggestion**: Use to identify gaps in existing specs.
@@ -0,0 +1,61 @@
1
+ # Kỹ năng: Viết Đặc tả (Specification Writing) (Cross-Cutting)
2
+
3
+ ## Mục đích
4
+
5
+ Viết và tinh chỉnh các đặc tả chức năng/kỹ thuật chất lượng cao, các user stories và các delta specs để các AI agent có thể đọc hiểu và thực thi hiệu quả.
6
+
7
+ ## Khi nào sử dụng
8
+
9
+ - Khi bắt đầu tạo một Change mới (Bước 1 của quy trình HeraSpec)
10
+ - Khi chuyển đổi các ý tưởng nghiệp vụ mức cao thành tài liệu spec có cấu trúc kỹ thuật
11
+ - Khi tinh chỉnh delta specs trong quá trình giải quyết xung đột song song (parallel merge)
12
+
13
+ ## Quy trình từng bước
14
+
15
+ ### Bước 1: Định nghĩa User Story & Scenarios
16
+ - Cấu trúc yêu cầu cốt lõi dưới dạng User Story (Với vai trò là... Tôi muốn... Để...)
17
+ - Xây dựng các kịch bản hành vi (scenarios) sử dụng cú pháp GIVEN-WHEN-THEN (phong cách Gherkin)
18
+ - Định nghĩa rõ luồng xử lý thành công (happy path), luồng lỗi (error path) và trường hợp biên (edge cases)
19
+
20
+ ### Bước 2: Cấu trúc phần Meta
21
+ - Chỉ định rõ các component mục tiêu, domain và technical stack
22
+ - Xác minh các yêu cầu phải khớp với quy ước kiến trúc được định nghĩa trong `project.md`
23
+
24
+ ### Bước 3: Viết Delta Spec
25
+ - Phân đoạn rõ ràng các yêu cầu mới, sửa đổi và loại bỏ:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (phải nêu rõ trạng thái Trước đây (Before) vs. Bây giờ (After))
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Input yêu cầu
31
+
32
+ - Mô tả yêu cầu nghiệp vụ hoặc prompt yêu cầu từ người dùng
33
+ - Thông tin về tech stack lấy từ `project.md`
34
+
35
+ ## Output mong đợi
36
+
37
+ - File đặc tả markdown sạch sẽ tuân thủ đúng định dạng của HeraSpec
38
+ - File Delta Spec hoàn chỉnh với các kịch bản GIVEN-WHEN-THEN
39
+
40
+ ## Giọng điệu & Quy tắc
41
+
42
+ - Cực kỳ chính xác. Tránh các từ ngữ mơ hồ như "thân thiện với người dùng" hoặc "nhanh chóng".
43
+ - Luôn định nghĩa rõ các trạng thái lỗi cụ thể (ví dụ: "trả về lỗi 401 Unauthorized" thay vị "hiển thị lỗi").
44
+ - Các kịch bản (scenarios) BẮT BUỘC phải kiểm thử được và có thể triển khai được.
45
+
46
+ ## Templates có sẵn
47
+
48
+ - Không có
49
+
50
+ ## Scripts có sẵn
51
+
52
+ - Không có
53
+
54
+ ## Ví dụ
55
+
56
+ Xem thư mục `examples/`.
57
+
58
+ ## Liên kết với các kỹ năng khác
59
+
60
+ - **documents**: Dùng để định dạng các đặc tả kỹ thuật thành hướng dẫn sản phẩm.
61
+ - **suggestion**: Dùng để phát hiện các lỗ hổng trong các spec hiện có.
@@ -0,0 +1,61 @@
1
+ # Skill: Specification Writing (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write and refine high-quality functional/technical specifications, user stories, and delta specs for consumption by AI agents.
6
+
7
+ ## When to Use
8
+
9
+ - When starting a new feature change (Step 1 of the HeraSpec workflow)
10
+ - When converting high-level business ideas into structured technical specs
11
+ - When refining delta specs during parallel merge validation
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Define User Story & Scenarios
16
+ - Structure the core requirement as a User Story (As a... I want to... So that...)
17
+ - Formulate behavioral scenarios using GIVEN-WHEN-THEN syntax (Gherkin style)
18
+ - Define happy paths, error paths, and edge cases
19
+
20
+ ### Step 2: Structure metadata
21
+ - Specify target components, domains, and technical stacks
22
+ - Verify requirements match the architectural conventions defined in `project.md`
23
+
24
+ ### Step-3: Write Delta Spec
25
+ - Segment new, modified, and removed requirements clearly:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (must specify the exact Before vs. After states)
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Required Input
31
+
32
+ - Business requirement description or user prompt
33
+ - Technical stack metadata from `project.md`
34
+
35
+ ## Expected Output
36
+
37
+ - Clean markdown specification following the HeraSpec format
38
+ - Complete Delta Spec with GIVEN-WHEN-THEN scenarios
39
+
40
+ ## Tone & Rules
41
+
42
+ - Be extremely precise. Avoid ambiguous language like "user-friendly" or "fast".
43
+ - Always define exact failure states (e.g. "returns 401 Unauthorized" instead of "shows error").
44
+ - Scenarios MUST be testable and actionable.
45
+
46
+ ## Available Templates
47
+
48
+ - None
49
+
50
+ ## Available Scripts
51
+
52
+ - None
53
+
54
+ ## Examples
55
+
56
+ See `examples/` directory.
57
+
58
+ ## Links to Other Skills
59
+
60
+ - **documents**: Use to format the specifications into product manuals.
61
+ - **suggestion**: Use to identify gaps in existing specs.
@@ -0,0 +1,61 @@
1
+ # Kỹ năng: Viết Đặc tả (Specification Writing) (Cross-Cutting)
2
+
3
+ ## Mục đích
4
+
5
+ Viết và tinh chỉnh các đặc tả chức năng/kỹ thuật chất lượng cao, các user stories và các delta specs để các AI agent có thể đọc hiểu và thực thi hiệu quả.
6
+
7
+ ## Khi nào sử dụng
8
+
9
+ - Khi bắt đầu tạo một Change mới (Bước 1 của quy trình HeraSpec)
10
+ - Khi chuyển đổi các ý tưởng nghiệp vụ mức cao thành tài liệu spec có cấu trúc kỹ thuật
11
+ - Khi tinh chỉnh delta specs trong quá trình giải quyết xung đột song song (parallel merge)
12
+
13
+ ## Quy trình từng bước
14
+
15
+ ### Bước 1: Định nghĩa User Story & Scenarios
16
+ - Cấu trúc yêu cầu cốt lõi dưới dạng User Story (Với vai trò là... Tôi muốn... Để...)
17
+ - Xây dựng các kịch bản hành vi (scenarios) sử dụng cú pháp GIVEN-WHEN-THEN (phong cách Gherkin)
18
+ - Định nghĩa rõ luồng xử lý thành công (happy path), luồng lỗi (error path) và trường hợp biên (edge cases)
19
+
20
+ ### Bước 2: Cấu trúc phần Meta
21
+ - Chỉ định rõ các component mục tiêu, domain và technical stack
22
+ - Xác minh các yêu cầu phải khớp với quy ước kiến trúc được định nghĩa trong `project.md`
23
+
24
+ ### Bước 3: Viết Delta Spec
25
+ - Phân đoạn rõ ràng các yêu cầu mới, sửa đổi và loại bỏ:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (phải nêu rõ trạng thái Trước đây (Before) vs. Bây giờ (After))
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Input yêu cầu
31
+
32
+ - Mô tả yêu cầu nghiệp vụ hoặc prompt yêu cầu từ người dùng
33
+ - Thông tin về tech stack lấy từ `project.md`
34
+
35
+ ## Output mong đợi
36
+
37
+ - File đặc tả markdown sạch sẽ tuân thủ đúng định dạng của HeraSpec
38
+ - File Delta Spec hoàn chỉnh với các kịch bản GIVEN-WHEN-THEN
39
+
40
+ ## Giọng điệu & Quy tắc
41
+
42
+ - Cực kỳ chính xác. Tránh các từ ngữ mơ hồ như "thân thiện với người dùng" hoặc "nhanh chóng".
43
+ - Luôn định nghĩa rõ các trạng thái lỗi cụ thể (ví dụ: "trả về lỗi 401 Unauthorized" thay vị "hiển thị lỗi").
44
+ - Các kịch bản (scenarios) BẮT BUỘC phải kiểm thử được và có thể triển khai được.
45
+
46
+ ## Templates có sẵn
47
+
48
+ - Không có
49
+
50
+ ## Scripts có sẵn
51
+
52
+ - Không có
53
+
54
+ ## Ví dụ
55
+
56
+ Xem thư mục `examples/`.
57
+
58
+ ## Liên kết với các kỹ năng khác
59
+
60
+ - **documents**: Dùng để định dạng các đặc tả kỹ thuật thành hướng dẫn sản phẩm.
61
+ - **suggestion**: Dùng để phát hiện các lỗ hổng trong các spec hiện có.