heraspec 0.1.12 → 0.1.14
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.
- package/LICENSE +22 -22
- package/README.md +188 -103
- package/bin/heraspec.js +4805 -1122
- package/bin/heraspec.js.map +4 -4
- package/dist/core/templates/skills/CHANGELOG.md +117 -117
- package/dist/core/templates/skills/README-template.md +58 -58
- package/dist/core/templates/skills/README.md +38 -38
- package/dist/core/templates/skills/content-optimization-skill.md +104 -104
- package/dist/core/templates/skills/data/design-systems.csv +54 -0
- package/dist/core/templates/skills/data/pages-proposed.csv +21 -21
- package/dist/core/templates/skills/data/pages.csv +9 -9
- package/dist/core/templates/skills/data/typography.csv +57 -57
- package/dist/core/templates/skills/deploy-documentation-skill.md +408 -0
- package/dist/core/templates/skills/design-system-skill.md +176 -0
- package/dist/core/templates/skills/documents/templates/documentation-landing-page.html +63 -63
- package/dist/core/templates/skills/documents/templates/documentation.html +49 -49
- package/dist/core/templates/skills/documents/templates/landing-script.js +38 -38
- package/dist/core/templates/skills/documents/templates/landing-style.css +158 -158
- package/dist/core/templates/skills/documents/templates/script.js +56 -56
- package/dist/core/templates/skills/documents/templates/style.css +155 -155
- package/dist/core/templates/skills/documents/templates/technical-doc-template.md +16 -16
- package/dist/core/templates/skills/documents/templates/user-guide-template.md +16 -16
- package/dist/core/templates/skills/documents-skill.md +104 -104
- package/dist/core/templates/skills/e2e-test-skill.md +119 -119
- package/dist/core/templates/skills/git-embed-skill.md +57 -0
- package/dist/core/templates/skills/integration-test-skill.md +118 -118
- package/dist/core/templates/skills/knowledge/README.md +63 -0
- package/dist/core/templates/skills/knowledge/design-systems/airbnb/DESIGN.md +246 -0
- package/dist/core/templates/skills/knowledge/design-systems/airtable/DESIGN.md +89 -0
- package/dist/core/templates/skills/knowledge/design-systems/apple/DESIGN.md +313 -0
- package/dist/core/templates/skills/knowledge/design-systems/bmw/DESIGN.md +180 -0
- package/dist/core/templates/skills/knowledge/design-systems/cal/DESIGN.md +259 -0
- package/dist/core/templates/skills/knowledge/design-systems/claude/DESIGN.md +312 -0
- package/dist/core/templates/skills/knowledge/design-systems/clay/DESIGN.md +304 -0
- package/dist/core/templates/skills/knowledge/design-systems/clickhouse/DESIGN.md +281 -0
- package/dist/core/templates/skills/knowledge/design-systems/cohere/DESIGN.md +266 -0
- package/dist/core/templates/skills/knowledge/design-systems/coinbase/DESIGN.md +129 -0
- package/dist/core/templates/skills/knowledge/design-systems/composio/DESIGN.md +307 -0
- package/dist/core/templates/skills/knowledge/design-systems/cursor/DESIGN.md +309 -0
- package/dist/core/templates/skills/knowledge/design-systems/elevenlabs/DESIGN.md +265 -0
- package/dist/core/templates/skills/knowledge/design-systems/expo/DESIGN.md +281 -0
- package/dist/core/templates/skills/knowledge/design-systems/figma/DESIGN.md +220 -0
- package/dist/core/templates/skills/knowledge/design-systems/framer/DESIGN.md +246 -0
- package/dist/core/templates/skills/knowledge/design-systems/hashicorp/DESIGN.md +278 -0
- package/dist/core/templates/skills/knowledge/design-systems/ibm/DESIGN.md +332 -0
- package/dist/core/templates/skills/knowledge/design-systems/index.json +72 -0
- package/dist/core/templates/skills/knowledge/design-systems/intercom/DESIGN.md +146 -0
- package/dist/core/templates/skills/knowledge/design-systems/kraken/DESIGN.md +125 -0
- package/dist/core/templates/skills/knowledge/design-systems/linear.app/DESIGN.md +367 -0
- package/dist/core/templates/skills/knowledge/design-systems/lovable/DESIGN.md +298 -0
- package/dist/core/templates/skills/knowledge/design-systems/minimax/DESIGN.md +257 -0
- package/dist/core/templates/skills/knowledge/design-systems/mintlify/DESIGN.md +326 -0
- package/dist/core/templates/skills/knowledge/design-systems/miro/DESIGN.md +108 -0
- package/dist/core/templates/skills/knowledge/design-systems/mistral.ai/DESIGN.md +261 -0
- package/dist/core/templates/skills/knowledge/design-systems/mongodb/DESIGN.md +266 -0
- package/dist/core/templates/skills/knowledge/design-systems/notion/DESIGN.md +309 -0
- package/dist/core/templates/skills/knowledge/design-systems/nvidia/DESIGN.md +293 -0
- package/dist/core/templates/skills/knowledge/design-systems/ollama/DESIGN.md +267 -0
- package/dist/core/templates/skills/knowledge/design-systems/opencode.ai/DESIGN.md +281 -0
- package/dist/core/templates/skills/knowledge/design-systems/pinterest/DESIGN.md +230 -0
- package/dist/core/templates/skills/knowledge/design-systems/posthog/DESIGN.md +256 -0
- package/dist/core/templates/skills/knowledge/design-systems/raycast/DESIGN.md +268 -0
- package/dist/core/templates/skills/knowledge/design-systems/replicate/DESIGN.md +261 -0
- package/dist/core/templates/skills/knowledge/design-systems/resend/DESIGN.md +303 -0
- package/dist/core/templates/skills/knowledge/design-systems/revolut/DESIGN.md +185 -0
- package/dist/core/templates/skills/knowledge/design-systems/runwayml/DESIGN.md +244 -0
- package/dist/core/templates/skills/knowledge/design-systems/sanity/DESIGN.md +357 -0
- package/dist/core/templates/skills/knowledge/design-systems/sentry/DESIGN.md +262 -0
- package/dist/core/templates/skills/knowledge/design-systems/spacex/DESIGN.md +194 -0
- package/dist/core/templates/skills/knowledge/design-systems/spotify/DESIGN.md +246 -0
- package/dist/core/templates/skills/knowledge/design-systems/stripe/DESIGN.md +322 -0
- package/dist/core/templates/skills/knowledge/design-systems/supabase/DESIGN.md +255 -0
- package/dist/core/templates/skills/knowledge/design-systems/superhuman/DESIGN.md +252 -0
- package/dist/core/templates/skills/knowledge/design-systems/together.ai/DESIGN.md +263 -0
- package/dist/core/templates/skills/knowledge/design-systems/uber/DESIGN.md +295 -0
- package/dist/core/templates/skills/knowledge/design-systems/vercel/DESIGN.md +310 -0
- package/dist/core/templates/skills/knowledge/design-systems/voltagent/DESIGN.md +323 -0
- package/dist/core/templates/skills/knowledge/design-systems/warp/DESIGN.md +253 -0
- package/dist/core/templates/skills/knowledge/design-systems/webflow/DESIGN.md +92 -0
- package/dist/core/templates/skills/knowledge/design-systems/wise/DESIGN.md +173 -0
- package/dist/core/templates/skills/knowledge/design-systems/x.ai/DESIGN.md +257 -0
- package/dist/core/templates/skills/knowledge/design-systems/zapier/DESIGN.md +328 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/profile.json +27 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/structure.md +137 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/profile.json +39 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/structure.md +208 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/profile.json +51 -0
- package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/structure.md +369 -0
- package/dist/core/templates/skills/knowledge/index.json +65 -0
- package/dist/core/templates/skills/module-codebase-skill.md +110 -110
- package/dist/core/templates/skills/plugin-directory-skill.md +396 -396
- package/dist/core/templates/skills/project-memory-skill.md +222 -0
- package/dist/core/templates/skills/project-memory-skill.vi.md +223 -0
- package/dist/core/templates/skills/scripts/CODE_EXPLANATION.md +394 -394
- package/dist/core/templates/skills/scripts/SEARCH_ALGORITHMS_COMPARISON.md +421 -421
- package/dist/core/templates/skills/scripts/SEARCH_MODES_GUIDE.md +238 -238
- package/dist/core/templates/skills/scripts/__pycache__/core.cpython-311.pyc +0 -0
- package/dist/core/templates/skills/scripts/core.py +391 -385
- package/dist/core/templates/skills/scripts/search.py +1 -1
- package/dist/core/templates/skills/smart-explore-skill.md +141 -0
- package/dist/core/templates/skills/sourcecode-analyzer-skill.md +210 -0
- package/dist/core/templates/skills/sourcecode-analyzer-skill.vi.md +210 -0
- package/dist/core/templates/skills/suggestion-skill.md +118 -118
- package/dist/core/templates/skills/templates/accessibility-checklist.md +40 -40
- package/dist/core/templates/skills/templates/example-prompt-full-theme.md +333 -333
- package/dist/core/templates/skills/templates/page-types-guide.md +338 -338
- package/dist/core/templates/skills/templates/pages-proposed-summary.md +273 -273
- package/dist/core/templates/skills/templates/pre-delivery-checklist.md +42 -42
- package/dist/core/templates/skills/templates/prompt-template-full-theme.md +313 -313
- package/dist/core/templates/skills/templates/responsive-design.md +40 -40
- package/dist/core/templates/skills/ui-ux-skill.md +595 -584
- package/dist/core/templates/skills/unit-test-skill.md +111 -111
- package/dist/core/templates/skills/ux-element/templates/Controller.php +50 -50
- package/dist/core/templates/skills/ux-element/templates/Shortcode.php +23 -23
- package/dist/core/templates/skills/ux-element/templates/Template.html +20 -20
- package/dist/core/templates/skills/ux-element/templates/Thumbnail.svg +8 -8
- package/dist/core/templates/skills/ux-element/templates/View.php +21 -21
- package/dist/core/templates/skills/ux-element-skill.md +83 -83
- package/dist/core/templates/skills/wordpress-plugin-check-skill.md +151 -76
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-dashboard.php +47 -47
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-settings.php +60 -60
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-css.css +22 -22
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-js.js +15 -15
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/plugin-main.php +169 -169
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/readme.txt +41 -41
- package/dist/core/templates/skills/wordpress-plugin-standard/templates/uninstall.php +21 -21
- package/dist/core/templates/skills/wordpress-plugin-standard-skill.md +100 -100
- package/dist/index.js +4068 -278
- package/package.json +75 -72
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
# Skill: Documents (Cross-Cutting & Multi-Format)
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
This skill is used to create comprehensive documentation for both technical and end-user audiences. It supports parallel generation of Markdown files (for repository/GitHub) and interactive HTML files (for browser-based manuals).
|
|
6
|
-
|
|
7
|
-
## Core Requirements
|
|
8
|
-
|
|
9
|
-
### 1. Multi-Format Output
|
|
10
|
-
Every documentation task should ideally generate four versions:
|
|
11
|
-
- `documentation.txt`: A concise, text-only overview for quick reading and AI context.
|
|
12
|
-
- `documentation.md`: High-quality Markdown for version control and GitHub READMEs.
|
|
13
|
-
- `documentation.html`: An interactive, premium documentation page with sidebar navigation.
|
|
14
|
-
- `documentation-landing-page.html`: A visual, high-end landing page to showcase the project/plugin.
|
|
15
|
-
|
|
16
|
-
### 2. Dynamic Design (Not Fixed Templates)
|
|
17
|
-
- **Do NOT follow a rigid template**: The Agent must **design** the documentation layout and content structure specifically for the project.
|
|
18
|
-
- **Synergy with ui-ux**: use of the `ui-ux` skill is **MANDATORY** for `documentation.html` and `documentation-landing-page.html`.
|
|
19
|
-
|
|
20
|
-
### 3. Standard Quality Structure (Mandatory)
|
|
21
|
-
To ensure clarity and completeness, the generated documentation MUST include:
|
|
22
|
-
|
|
23
|
-
#### A. Interactive Documentation (documentation.html)
|
|
24
|
-
1. **Quick Start**: Clear steps to get running in < 2 minutes.
|
|
25
|
-
2. **System Requirements**: OS, versions, dependencies.
|
|
26
|
-
3. **Installation & Setup**: Detailed step-by-step guide.
|
|
27
|
-
4. **Configuration**: Explanation of all settings (config files, UI settings).
|
|
28
|
-
5. **Core Features**: Deep dive into each component found in `heraspec/specs/`.
|
|
29
|
-
6. **Technical Reference**: (For Devs) API endpoints, Hooks, Filters, Functions.
|
|
30
|
-
7. **Troubleshooting & FAQ**: Common issues and solutions.
|
|
31
|
-
|
|
32
|
-
#### B. Premium Landing Page (documentation-landing-page.html)
|
|
33
|
-
1. **Hero Section**: High-impact headline and clear sub-headline.
|
|
34
|
-
2. **Value Proposition**: Briefly explain "The Problem" vs "The Solution".
|
|
35
|
-
3. **Feature Showcase**: A visual grid of key benefits with icons/images.
|
|
36
|
-
4. **How It Works**: A simplified 1-2-3 step process of using the project.
|
|
37
|
-
5. **CTA (Call to Action)**: Prominent buttons to "Get Started" or "View Docs".
|
|
38
|
-
|
|
39
|
-
### 4. Visual Excellence
|
|
40
|
-
- Use gradients, smooth animations (fade-in, slide), and premium fonts (e.g., Inter, Montserrat).
|
|
41
|
-
- The HTML documentation should feel like a modern SaaS dashboard or a high-end technical manual.
|
|
42
|
-
|
|
43
|
-
### 4. Project-Wide Scope
|
|
44
|
-
When tasked with generating documentation for the entire project:
|
|
45
|
-
- **Data Source**: Agent MUST read `heraspec/project.md` and ALL files in `heraspec/specs/`.
|
|
46
|
-
- **Synthesis**: Agent must combine information from all components and features into a unified manual.
|
|
47
|
-
- **Landing Page**: Should serve as the project homepage, summarizing the main value proposition and key features across all modules.
|
|
48
|
-
|
|
49
|
-
## Implementation Steps
|
|
50
|
-
|
|
51
|
-
### Step 1: Intelligence Gathering & Design Planning
|
|
52
|
-
1. **Analyze Project**: Scan all relevant `.md` files in the project. Understand the core purpose and technical details.
|
|
53
|
-
2. **Enforce UI/UX Dependency**:
|
|
54
|
-
- Check if `heraspec/skills/ui-ux/` exists.
|
|
55
|
-
- If missing: **Execute `heraspec skill add ui-ux`** immediately. Do NOT proceed with HTML generation until this skill is available.
|
|
56
|
-
3. **Define Design System**: Consult the `ui-ux` skill to establish a visual language (colors, fonts, animation styles).
|
|
57
|
-
4. **Plan Structures**: Outline what needs to go into the `.txt`, `.md`, and `.html` versions.
|
|
58
|
-
|
|
59
|
-
### Step 2: Constructing Documentation Assets
|
|
60
|
-
1. **Compose documentation.txt & .md**: Focus on clarity and technical accuracy.
|
|
61
|
-
2. **Develop documentation.html**: Build a split-panel layout (Sidebar + Content). DO NOT just fill a template; **write the HTML/CSS/JS** needed to make it look premium and project-specific.
|
|
62
|
-
3. **Design documentation-landing-page.html**: Create a compelling Hero section and feature showcase. Link to the main docs.
|
|
63
|
-
|
|
64
|
-
## Required Input
|
|
65
|
-
|
|
66
|
-
- **Project Context**: The name of the plugin/project (e.g., "polyutilities").
|
|
67
|
-
- **Specs/Docs**: All existing documentation and specification files.
|
|
68
|
-
- **Design Guidelines**: Inputs from the `ui-ux` skill.
|
|
69
|
-
|
|
70
|
-
## Expected Output (Save to /documentations/)
|
|
71
|
-
|
|
72
|
-
**CRITICAL**: All files MUST be placed in a `/documentations` folder at the project root. If this folder does not exist, the Agent MUST create it first.
|
|
73
|
-
|
|
74
|
-
- `/documentations/documentation.txt`: Plain text overview.
|
|
75
|
-
- `/documentations/documentation.md`: Markdown version.
|
|
76
|
-
- `/documentations/documentation.html`: Interactive split-panel HTML.
|
|
77
|
-
- `/documentations/documentation-landing-page.html`: Visual landing page.
|
|
78
|
-
- `/documentations/style.css` & `/documentations/landing-style.css`: Custom-generated styles.
|
|
79
|
-
- `/documentations/script.js` & `/documentations/landing-script.js`: Interactive logic.
|
|
80
|
-
|
|
81
|
-
## Tone & Rules
|
|
82
|
-
|
|
83
|
-
- **Consistent Content**: The core information must be synchronized across all formats.
|
|
84
|
-
- **Design Autonomy**: The Agent is responsible for the final aesthetic and structural quality.
|
|
85
|
-
- **Visual Impact**: Documentation must WOW the user with its premium feel.
|
|
86
|
-
|
|
87
|
-
## Reference Templates
|
|
88
|
-
These are provided as starting points or inspiration. The Agent should feel free to expand or modify them to suit the project:
|
|
89
|
-
|
|
90
|
-
- `templates/documentation.html` - Base HTML documentation layout
|
|
91
|
-
- `templates/documentation-landing-page.html` - Premium Landing Page layout
|
|
92
|
-
- `templates/style.css` - Premium styles for HTML documentation
|
|
93
|
-
- `templates/landing-style.css` - Premium styles for Landing Page
|
|
94
|
-
- `templates/script.js` - Interactive logic for HTML documentation
|
|
95
|
-
- `templates/landing-script.js` - Interactive logic for Landing Page
|
|
96
|
-
- `templates/technical-doc-template.md` - Technical documentation
|
|
97
|
-
- `templates/user-guide-template.md` - User guide
|
|
98
|
-
- `templates/api-doc-template.md` - API documentation
|
|
99
|
-
- `templates/changelog-template.md` - Changelog template
|
|
100
|
-
|
|
101
|
-
## Links to Other Skills
|
|
102
|
-
|
|
103
|
-
- **ui-ux**: ESSENTIAL. Use this to determine the look and feel of the HTML documentation.
|
|
104
|
-
- **content-optimization**: Use to ensure the text is clear and professional.
|
|
1
|
+
# Skill: Documents (Cross-Cutting & Multi-Format)
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
This skill is used to create comprehensive documentation for both technical and end-user audiences. It supports parallel generation of Markdown files (for repository/GitHub) and interactive HTML files (for browser-based manuals).
|
|
6
|
+
|
|
7
|
+
## Core Requirements
|
|
8
|
+
|
|
9
|
+
### 1. Multi-Format Output
|
|
10
|
+
Every documentation task should ideally generate four versions:
|
|
11
|
+
- `documentation.txt`: A concise, text-only overview for quick reading and AI context.
|
|
12
|
+
- `documentation.md`: High-quality Markdown for version control and GitHub READMEs.
|
|
13
|
+
- `documentation.html`: An interactive, premium documentation page with sidebar navigation.
|
|
14
|
+
- `documentation-landing-page.html`: A visual, high-end landing page to showcase the project/plugin.
|
|
15
|
+
|
|
16
|
+
### 2. Dynamic Design (Not Fixed Templates)
|
|
17
|
+
- **Do NOT follow a rigid template**: The Agent must **design** the documentation layout and content structure specifically for the project.
|
|
18
|
+
- **Synergy with ui-ux**: use of the `ui-ux` skill is **MANDATORY** for `documentation.html` and `documentation-landing-page.html`.
|
|
19
|
+
|
|
20
|
+
### 3. Standard Quality Structure (Mandatory)
|
|
21
|
+
To ensure clarity and completeness, the generated documentation MUST include:
|
|
22
|
+
|
|
23
|
+
#### A. Interactive Documentation (documentation.html)
|
|
24
|
+
1. **Quick Start**: Clear steps to get running in < 2 minutes.
|
|
25
|
+
2. **System Requirements**: OS, versions, dependencies.
|
|
26
|
+
3. **Installation & Setup**: Detailed step-by-step guide.
|
|
27
|
+
4. **Configuration**: Explanation of all settings (config files, UI settings).
|
|
28
|
+
5. **Core Features**: Deep dive into each component found in `heraspec/specs/`.
|
|
29
|
+
6. **Technical Reference**: (For Devs) API endpoints, Hooks, Filters, Functions.
|
|
30
|
+
7. **Troubleshooting & FAQ**: Common issues and solutions.
|
|
31
|
+
|
|
32
|
+
#### B. Premium Landing Page (documentation-landing-page.html)
|
|
33
|
+
1. **Hero Section**: High-impact headline and clear sub-headline.
|
|
34
|
+
2. **Value Proposition**: Briefly explain "The Problem" vs "The Solution".
|
|
35
|
+
3. **Feature Showcase**: A visual grid of key benefits with icons/images.
|
|
36
|
+
4. **How It Works**: A simplified 1-2-3 step process of using the project.
|
|
37
|
+
5. **CTA (Call to Action)**: Prominent buttons to "Get Started" or "View Docs".
|
|
38
|
+
|
|
39
|
+
### 4. Visual Excellence
|
|
40
|
+
- Use gradients, smooth animations (fade-in, slide), and premium fonts (e.g., Inter, Montserrat).
|
|
41
|
+
- The HTML documentation should feel like a modern SaaS dashboard or a high-end technical manual.
|
|
42
|
+
|
|
43
|
+
### 4. Project-Wide Scope
|
|
44
|
+
When tasked with generating documentation for the entire project:
|
|
45
|
+
- **Data Source**: Agent MUST read `heraspec/project.md` and ALL files in `heraspec/specs/`.
|
|
46
|
+
- **Synthesis**: Agent must combine information from all components and features into a unified manual.
|
|
47
|
+
- **Landing Page**: Should serve as the project homepage, summarizing the main value proposition and key features across all modules.
|
|
48
|
+
|
|
49
|
+
## Implementation Steps
|
|
50
|
+
|
|
51
|
+
### Step 1: Intelligence Gathering & Design Planning
|
|
52
|
+
1. **Analyze Project**: Scan all relevant `.md` files in the project. Understand the core purpose and technical details.
|
|
53
|
+
2. **Enforce UI/UX Dependency**:
|
|
54
|
+
- Check if `heraspec/skills/ui-ux/` exists.
|
|
55
|
+
- If missing: **Execute `heraspec skill add ui-ux`** immediately. Do NOT proceed with HTML generation until this skill is available.
|
|
56
|
+
3. **Define Design System**: Consult the `ui-ux` skill to establish a visual language (colors, fonts, animation styles).
|
|
57
|
+
4. **Plan Structures**: Outline what needs to go into the `.txt`, `.md`, and `.html` versions.
|
|
58
|
+
|
|
59
|
+
### Step 2: Constructing Documentation Assets
|
|
60
|
+
1. **Compose documentation.txt & .md**: Focus on clarity and technical accuracy.
|
|
61
|
+
2. **Develop documentation.html**: Build a split-panel layout (Sidebar + Content). DO NOT just fill a template; **write the HTML/CSS/JS** needed to make it look premium and project-specific.
|
|
62
|
+
3. **Design documentation-landing-page.html**: Create a compelling Hero section and feature showcase. Link to the main docs.
|
|
63
|
+
|
|
64
|
+
## Required Input
|
|
65
|
+
|
|
66
|
+
- **Project Context**: The name of the plugin/project (e.g., "polyutilities").
|
|
67
|
+
- **Specs/Docs**: All existing documentation and specification files.
|
|
68
|
+
- **Design Guidelines**: Inputs from the `ui-ux` skill.
|
|
69
|
+
|
|
70
|
+
## Expected Output (Save to /documentations/)
|
|
71
|
+
|
|
72
|
+
**CRITICAL**: All files MUST be placed in a `/documentations` folder at the project root. If this folder does not exist, the Agent MUST create it first.
|
|
73
|
+
|
|
74
|
+
- `/documentations/documentation.txt`: Plain text overview.
|
|
75
|
+
- `/documentations/documentation.md`: Markdown version.
|
|
76
|
+
- `/documentations/documentation.html`: Interactive split-panel HTML.
|
|
77
|
+
- `/documentations/documentation-landing-page.html`: Visual landing page.
|
|
78
|
+
- `/documentations/style.css` & `/documentations/landing-style.css`: Custom-generated styles.
|
|
79
|
+
- `/documentations/script.js` & `/documentations/landing-script.js`: Interactive logic.
|
|
80
|
+
|
|
81
|
+
## Tone & Rules
|
|
82
|
+
|
|
83
|
+
- **Consistent Content**: The core information must be synchronized across all formats.
|
|
84
|
+
- **Design Autonomy**: The Agent is responsible for the final aesthetic and structural quality.
|
|
85
|
+
- **Visual Impact**: Documentation must WOW the user with its premium feel.
|
|
86
|
+
|
|
87
|
+
## Reference Templates
|
|
88
|
+
These are provided as starting points or inspiration. The Agent should feel free to expand or modify them to suit the project:
|
|
89
|
+
|
|
90
|
+
- `templates/documentation.html` - Base HTML documentation layout
|
|
91
|
+
- `templates/documentation-landing-page.html` - Premium Landing Page layout
|
|
92
|
+
- `templates/style.css` - Premium styles for HTML documentation
|
|
93
|
+
- `templates/landing-style.css` - Premium styles for Landing Page
|
|
94
|
+
- `templates/script.js` - Interactive logic for HTML documentation
|
|
95
|
+
- `templates/landing-script.js` - Interactive logic for Landing Page
|
|
96
|
+
- `templates/technical-doc-template.md` - Technical documentation
|
|
97
|
+
- `templates/user-guide-template.md` - User guide
|
|
98
|
+
- `templates/api-doc-template.md` - API documentation
|
|
99
|
+
- `templates/changelog-template.md` - Changelog template
|
|
100
|
+
|
|
101
|
+
## Links to Other Skills
|
|
102
|
+
|
|
103
|
+
- **ui-ux**: ESSENTIAL. Use this to determine the look and feel of the HTML documentation.
|
|
104
|
+
- **content-optimization**: Use to ensure the text is clear and professional.
|
|
@@ -1,119 +1,119 @@
|
|
|
1
|
-
# Skill: End-to-End (E2E) Testing (Cross-Cutting)
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
This skill is used to create end-to-end tests that verify complete user workflows from start to finish. E2E tests simulate real user interactions with the application.
|
|
6
|
-
|
|
7
|
-
## When to Use
|
|
8
|
-
|
|
9
|
-
- When testing complete user workflows
|
|
10
|
-
- When testing critical user journeys
|
|
11
|
-
- When testing UI interactions
|
|
12
|
-
- When verifying application behavior from user perspective
|
|
13
|
-
- When testing authentication flows
|
|
14
|
-
- When testing payment/transaction flows
|
|
15
|
-
|
|
16
|
-
## Step-by-Step Process
|
|
17
|
-
|
|
18
|
-
### Step 1: Identify User Journeys
|
|
19
|
-
- Map critical user workflows
|
|
20
|
-
- Identify key user scenarios
|
|
21
|
-
- List user personas and their goals
|
|
22
|
-
- Determine test priorities (critical paths first)
|
|
23
|
-
- Document expected user behavior
|
|
24
|
-
|
|
25
|
-
### Step 2: Set Up E2E Testing Framework
|
|
26
|
-
- Choose E2E testing tool (Playwright, Cypress, Selenium, etc.)
|
|
27
|
-
- Configure test environment
|
|
28
|
-
- Set up test browser/headless mode
|
|
29
|
-
- Configure test data and user accounts
|
|
30
|
-
- Set up test application instance
|
|
31
|
-
|
|
32
|
-
### Step 3: Write E2E Tests
|
|
33
|
-
- Create test files for each user journey
|
|
34
|
-
- Write tests simulating user actions (click, type, navigate)
|
|
35
|
-
- Test complete workflows from start to finish
|
|
36
|
-
- Verify UI elements and feedback
|
|
37
|
-
- Test error scenarios and edge cases
|
|
38
|
-
- Use page objects for maintainability
|
|
39
|
-
|
|
40
|
-
### Step 4: Run and Verify
|
|
41
|
-
- Run E2E tests
|
|
42
|
-
- Verify tests pass consistently
|
|
43
|
-
- Check test execution time
|
|
44
|
-
- Review test failures and flakiness
|
|
45
|
-
- Ensure tests are stable and reliable
|
|
46
|
-
|
|
47
|
-
### Step 5: Maintain Tests
|
|
48
|
-
- Update tests when UI changes
|
|
49
|
-
- Keep page objects synchronized with UI
|
|
50
|
-
- Document test scenarios
|
|
51
|
-
- Monitor test stability
|
|
52
|
-
|
|
53
|
-
## Required Input
|
|
54
|
-
|
|
55
|
-
- **User journeys**: List of critical user workflows
|
|
56
|
-
- **Test environment**: Application URL and test environment setup
|
|
57
|
-
- **Test accounts**: User accounts for testing
|
|
58
|
-
- **E2E framework**: Testing framework to use
|
|
59
|
-
- **Browser**: Browser to test in (Chrome, Firefox, etc.)
|
|
60
|
-
|
|
61
|
-
## Expected Output
|
|
62
|
-
|
|
63
|
-
- E2E test files
|
|
64
|
-
- Test scenarios covering user journeys
|
|
65
|
-
- Page objects for UI elements
|
|
66
|
-
- Passing E2E test suite
|
|
67
|
-
- Documentation of E2E test scenarios
|
|
68
|
-
|
|
69
|
-
## Tone & Rules
|
|
70
|
-
|
|
71
|
-
### Test Scope
|
|
72
|
-
- Focus on critical user journeys
|
|
73
|
-
- Test from user perspective
|
|
74
|
-
- Verify complete workflows
|
|
75
|
-
- Test happy paths and error scenarios
|
|
76
|
-
|
|
77
|
-
### Test Stability
|
|
78
|
-
- Use reliable selectors (data-testid, stable IDs)
|
|
79
|
-
- Add appropriate waits for async operations
|
|
80
|
-
- Handle flaky elements (retries, explicit waits)
|
|
81
|
-
- Keep tests independent and isolated
|
|
82
|
-
|
|
83
|
-
### Performance
|
|
84
|
-
- E2E tests are slowest (run separately)
|
|
85
|
-
- Use headless mode for CI
|
|
86
|
-
- Parallelize tests when possible
|
|
87
|
-
- Consider test execution time
|
|
88
|
-
|
|
89
|
-
### Limitations
|
|
90
|
-
- ❌ DO NOT test every UI element (focus on journeys)
|
|
91
|
-
- ❌ DO NOT use brittle selectors (XPath with complex paths)
|
|
92
|
-
- ❌ DO NOT skip error handling
|
|
93
|
-
- ❌ DO NOT write tests that depend on timing
|
|
94
|
-
- ❌ DO NOT test implementation details
|
|
95
|
-
|
|
96
|
-
## Available Templates
|
|
97
|
-
|
|
98
|
-
- `templates/e2e-test-template.js` - JavaScript/Playwright template
|
|
99
|
-
- `templates/e2e-test-template.ts` - TypeScript/Cypress template
|
|
100
|
-
- `templates/e2e-test-template.py` - Python/Selenium template
|
|
101
|
-
|
|
102
|
-
## Available Scripts
|
|
103
|
-
|
|
104
|
-
- `scripts/setup-e2e-env.sh` - Set up E2E test environment
|
|
105
|
-
- `scripts/run-e2e-tests.sh` - Run E2E test suite
|
|
106
|
-
|
|
107
|
-
## Examples
|
|
108
|
-
|
|
109
|
-
See `examples/` directory for reference:
|
|
110
|
-
- `good-e2e-test/` - Well-structured E2E tests
|
|
111
|
-
- `bad-e2e-test/` - Examples to avoid
|
|
112
|
-
|
|
113
|
-
## Links to Other Skills
|
|
114
|
-
|
|
115
|
-
- **unit-test**: Use for testing individual components
|
|
116
|
-
- **integration-test**: Use for testing component interactions
|
|
117
|
-
- **ui-ux**: Reference when testing UI interactions
|
|
118
|
-
- **documents**: Use to document E2E test strategy
|
|
119
|
-
|
|
1
|
+
# Skill: End-to-End (E2E) Testing (Cross-Cutting)
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
This skill is used to create end-to-end tests that verify complete user workflows from start to finish. E2E tests simulate real user interactions with the application.
|
|
6
|
+
|
|
7
|
+
## When to Use
|
|
8
|
+
|
|
9
|
+
- When testing complete user workflows
|
|
10
|
+
- When testing critical user journeys
|
|
11
|
+
- When testing UI interactions
|
|
12
|
+
- When verifying application behavior from user perspective
|
|
13
|
+
- When testing authentication flows
|
|
14
|
+
- When testing payment/transaction flows
|
|
15
|
+
|
|
16
|
+
## Step-by-Step Process
|
|
17
|
+
|
|
18
|
+
### Step 1: Identify User Journeys
|
|
19
|
+
- Map critical user workflows
|
|
20
|
+
- Identify key user scenarios
|
|
21
|
+
- List user personas and their goals
|
|
22
|
+
- Determine test priorities (critical paths first)
|
|
23
|
+
- Document expected user behavior
|
|
24
|
+
|
|
25
|
+
### Step 2: Set Up E2E Testing Framework
|
|
26
|
+
- Choose E2E testing tool (Playwright, Cypress, Selenium, etc.)
|
|
27
|
+
- Configure test environment
|
|
28
|
+
- Set up test browser/headless mode
|
|
29
|
+
- Configure test data and user accounts
|
|
30
|
+
- Set up test application instance
|
|
31
|
+
|
|
32
|
+
### Step 3: Write E2E Tests
|
|
33
|
+
- Create test files for each user journey
|
|
34
|
+
- Write tests simulating user actions (click, type, navigate)
|
|
35
|
+
- Test complete workflows from start to finish
|
|
36
|
+
- Verify UI elements and feedback
|
|
37
|
+
- Test error scenarios and edge cases
|
|
38
|
+
- Use page objects for maintainability
|
|
39
|
+
|
|
40
|
+
### Step 4: Run and Verify
|
|
41
|
+
- Run E2E tests
|
|
42
|
+
- Verify tests pass consistently
|
|
43
|
+
- Check test execution time
|
|
44
|
+
- Review test failures and flakiness
|
|
45
|
+
- Ensure tests are stable and reliable
|
|
46
|
+
|
|
47
|
+
### Step 5: Maintain Tests
|
|
48
|
+
- Update tests when UI changes
|
|
49
|
+
- Keep page objects synchronized with UI
|
|
50
|
+
- Document test scenarios
|
|
51
|
+
- Monitor test stability
|
|
52
|
+
|
|
53
|
+
## Required Input
|
|
54
|
+
|
|
55
|
+
- **User journeys**: List of critical user workflows
|
|
56
|
+
- **Test environment**: Application URL and test environment setup
|
|
57
|
+
- **Test accounts**: User accounts for testing
|
|
58
|
+
- **E2E framework**: Testing framework to use
|
|
59
|
+
- **Browser**: Browser to test in (Chrome, Firefox, etc.)
|
|
60
|
+
|
|
61
|
+
## Expected Output
|
|
62
|
+
|
|
63
|
+
- E2E test files
|
|
64
|
+
- Test scenarios covering user journeys
|
|
65
|
+
- Page objects for UI elements
|
|
66
|
+
- Passing E2E test suite
|
|
67
|
+
- Documentation of E2E test scenarios
|
|
68
|
+
|
|
69
|
+
## Tone & Rules
|
|
70
|
+
|
|
71
|
+
### Test Scope
|
|
72
|
+
- Focus on critical user journeys
|
|
73
|
+
- Test from user perspective
|
|
74
|
+
- Verify complete workflows
|
|
75
|
+
- Test happy paths and error scenarios
|
|
76
|
+
|
|
77
|
+
### Test Stability
|
|
78
|
+
- Use reliable selectors (data-testid, stable IDs)
|
|
79
|
+
- Add appropriate waits for async operations
|
|
80
|
+
- Handle flaky elements (retries, explicit waits)
|
|
81
|
+
- Keep tests independent and isolated
|
|
82
|
+
|
|
83
|
+
### Performance
|
|
84
|
+
- E2E tests are slowest (run separately)
|
|
85
|
+
- Use headless mode for CI
|
|
86
|
+
- Parallelize tests when possible
|
|
87
|
+
- Consider test execution time
|
|
88
|
+
|
|
89
|
+
### Limitations
|
|
90
|
+
- ❌ DO NOT test every UI element (focus on journeys)
|
|
91
|
+
- ❌ DO NOT use brittle selectors (XPath with complex paths)
|
|
92
|
+
- ❌ DO NOT skip error handling
|
|
93
|
+
- ❌ DO NOT write tests that depend on timing
|
|
94
|
+
- ❌ DO NOT test implementation details
|
|
95
|
+
|
|
96
|
+
## Available Templates
|
|
97
|
+
|
|
98
|
+
- `templates/e2e-test-template.js` - JavaScript/Playwright template
|
|
99
|
+
- `templates/e2e-test-template.ts` - TypeScript/Cypress template
|
|
100
|
+
- `templates/e2e-test-template.py` - Python/Selenium template
|
|
101
|
+
|
|
102
|
+
## Available Scripts
|
|
103
|
+
|
|
104
|
+
- `scripts/setup-e2e-env.sh` - Set up E2E test environment
|
|
105
|
+
- `scripts/run-e2e-tests.sh` - Run E2E test suite
|
|
106
|
+
|
|
107
|
+
## Examples
|
|
108
|
+
|
|
109
|
+
See `examples/` directory for reference:
|
|
110
|
+
- `good-e2e-test/` - Well-structured E2E tests
|
|
111
|
+
- `bad-e2e-test/` - Examples to avoid
|
|
112
|
+
|
|
113
|
+
## Links to Other Skills
|
|
114
|
+
|
|
115
|
+
- **unit-test**: Use for testing individual components
|
|
116
|
+
- **integration-test**: Use for testing component interactions
|
|
117
|
+
- **ui-ux**: Reference when testing UI interactions
|
|
118
|
+
- **documents**: Use to document E2E test strategy
|
|
119
|
+
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Skill: Git Embed
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
This skill establishes a nested Git repository structure (Monorepo) where the outer (parent) repository physically tracks and stores the source code of an inner (child) repository, without using the standard Git Submodule mechanism. This allows the child repository to retain its own `.git` directory for independent committing and pushing.
|
|
6
|
+
|
|
7
|
+
## When to Use
|
|
8
|
+
|
|
9
|
+
- When migrating an existing Git repository to be embedded within a parent Monorepo.
|
|
10
|
+
- When the parent repository needs full direct physical access to the child's source files.
|
|
11
|
+
- When you need to avoid "empty folder" issues caused by standard Git submodules during cloning.
|
|
12
|
+
- When you want to commit and push independently from both the parent root and the child root.
|
|
13
|
+
|
|
14
|
+
## Step-by-Step Process
|
|
15
|
+
|
|
16
|
+
### Step 1: Remove Submodule References (If Any)
|
|
17
|
+
- Ensure the inner repository is not tracked as a submodule.
|
|
18
|
+
- Run `git rm -r --cached <child-folder>` from the parent root.
|
|
19
|
+
- Remove `.gitmodules` if it exists: `rm .gitmodules` and `git add .gitmodules` (if tracked).
|
|
20
|
+
|
|
21
|
+
### Step 2: Temporary `.git` Relocation
|
|
22
|
+
- Move the inner repository's `.git` directory out of the way to prevent Git from treating it as an embedded repo.
|
|
23
|
+
- Run `mv <child-folder>/.git /tmp/<child-name>_git_bak`.
|
|
24
|
+
|
|
25
|
+
### Step 3: Embed Source Code into Parent
|
|
26
|
+
- Add the inner folder directly to the parent repository.
|
|
27
|
+
- Run `git add <child-folder>/`.
|
|
28
|
+
- Commit the changes: `git commit -m "Embed full source of <child-name> independent of submodule"`.
|
|
29
|
+
|
|
30
|
+
### Step 4: Restore Independent `.git`
|
|
31
|
+
- Move the inner repository's `.git` directory back to its original location.
|
|
32
|
+
- Run `mv /tmp/<child-name>_git_bak <child-folder>/.git`.
|
|
33
|
+
|
|
34
|
+
### Step 5: Verification
|
|
35
|
+
- Run `git status` in the parent directory to ensure no submodule links are shown.
|
|
36
|
+
- Navigate into `<child-folder>` and run `git status` to verify the independent repository tracking is intact.
|
|
37
|
+
|
|
38
|
+
## Required Input
|
|
39
|
+
|
|
40
|
+
- **Child folder path**: The relative path to the nested repository.
|
|
41
|
+
- **Child name**: A short identifier used for the backup directory.
|
|
42
|
+
|
|
43
|
+
## Expected Output
|
|
44
|
+
|
|
45
|
+
- The parent's remote repository will contain all physical files natively without gitlinks.
|
|
46
|
+
- The child folder will retain its `.git` folder for completely independent repository operations.
|
|
47
|
+
|
|
48
|
+
## Tone & Rules
|
|
49
|
+
|
|
50
|
+
### Git Rules
|
|
51
|
+
- The child folder's `.gitignore` MUST be preserved, as the parent git will natively respect `.gitignore` rules in subdirectories.
|
|
52
|
+
- Ensure all uncommitted changes in the parent repo are stashed or committed before starting.
|
|
53
|
+
|
|
54
|
+
### Limitations
|
|
55
|
+
- ❌ DO NOT use `git submodule add` under any circumstances for this skill.
|
|
56
|
+
- ❌ DO NOT delete the inner `.git` folder permanently.
|
|
57
|
+
- ❌ DO NOT use `git subtree` as it creates a different tracking model.
|