d1337-kit 3.0.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.
- package/.agent/.shared/ui-ux-pro-max/data/charts.csv +26 -0
- package/.agent/.shared/ui-ux-pro-max/data/colors.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/icons.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/landing.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/data/products.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/prompts.csv +24 -0
- package/.agent/.shared/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.agent/.shared/ui-ux-pro-max/data/styles.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/typography.csv +58 -0
- package/.agent/.shared/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.agent/.shared/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/core.py +258 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/search.py +106 -0
- package/.agent/ARCHITECTURE.md +288 -0
- package/.agent/agents/backend-specialist.md +240 -0
- package/.agent/agents/code-archaeologist.md +104 -0
- package/.agent/agents/database-architect.md +224 -0
- package/.agent/agents/debugger.md +225 -0
- package/.agent/agents/devops-engineer.md +238 -0
- package/.agent/agents/documentation-writer.md +102 -0
- package/.agent/agents/explorer-agent.md +76 -0
- package/.agent/agents/frontend-specialist.md +595 -0
- package/.agent/agents/game-developer.md +160 -0
- package/.agent/agents/mobile-developer.md +377 -0
- package/.agent/agents/orchestrator.md +418 -0
- package/.agent/agents/penetration-tester.md +370 -0
- package/.agent/agents/performance-optimizer.md +185 -0
- package/.agent/agents/product-manager.md +110 -0
- package/.agent/agents/product-owner.md +93 -0
- package/.agent/agents/project-planner.md +408 -0
- package/.agent/agents/qa-automation-engineer.md +101 -0
- package/.agent/agents/security-auditor.md +251 -0
- package/.agent/agents/seo-specialist.md +109 -0
- package/.agent/agents/test-engineer.md +156 -0
- package/.agent/mcp_config.json +25 -0
- package/.agent/modules/README.md +74 -0
- package/.agent/modules/installed/README.md +9 -0
- package/.agent/modules/module-template/SKILL.md +40 -0
- package/.agent/modules/module-template/scripts/README.md +11 -0
- package/.agent/modules/registry.md +34 -0
- package/.agent/rules/GEMINI.md +206 -0
- package/.agent/scripts/auto_preview.py +148 -0
- package/.agent/scripts/checklist.py +217 -0
- package/.agent/scripts/session_manager.py +120 -0
- package/.agent/scripts/verify_all.py +327 -0
- package/.agent/skills/api-patterns/SKILL.md +81 -0
- package/.agent/skills/api-patterns/api-style.md +42 -0
- package/.agent/skills/api-patterns/auth.md +24 -0
- package/.agent/skills/api-patterns/documentation.md +26 -0
- package/.agent/skills/api-patterns/graphql.md +41 -0
- package/.agent/skills/api-patterns/rate-limiting.md +31 -0
- package/.agent/skills/api-patterns/response.md +37 -0
- package/.agent/skills/api-patterns/rest.md +40 -0
- package/.agent/skills/api-patterns/scripts/api_validator.py +211 -0
- package/.agent/skills/api-patterns/security-testing.md +122 -0
- package/.agent/skills/api-patterns/trpc.md +41 -0
- package/.agent/skills/api-patterns/versioning.md +22 -0
- package/.agent/skills/app-builder/SKILL.md +75 -0
- package/.agent/skills/app-builder/agent-coordination.md +71 -0
- package/.agent/skills/app-builder/feature-building.md +53 -0
- package/.agent/skills/app-builder/project-detection.md +34 -0
- package/.agent/skills/app-builder/scaffolding.md +118 -0
- package/.agent/skills/app-builder/tech-stack.md +41 -0
- package/.agent/skills/app-builder/templates/SKILL.md +39 -0
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -0
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -0
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -0
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -0
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -0
- package/.agent/skills/architecture/SKILL.md +55 -0
- package/.agent/skills/architecture/context-discovery.md +43 -0
- package/.agent/skills/architecture/examples.md +94 -0
- package/.agent/skills/architecture/pattern-selection.md +68 -0
- package/.agent/skills/architecture/patterns-reference.md +50 -0
- package/.agent/skills/architecture/trade-off-analysis.md +77 -0
- package/.agent/skills/bash-linux/SKILL.md +199 -0
- package/.agent/skills/behavioral-modes/SKILL.md +242 -0
- package/.agent/skills/brainstorming/SKILL.md +163 -0
- package/.agent/skills/brainstorming/dynamic-questioning.md +350 -0
- package/.agent/skills/clean-code/SKILL.md +201 -0
- package/.agent/skills/code-review-checklist/SKILL.md +109 -0
- package/.agent/skills/database-design/SKILL.md +52 -0
- package/.agent/skills/database-design/database-selection.md +43 -0
- package/.agent/skills/database-design/indexing.md +39 -0
- package/.agent/skills/database-design/migrations.md +48 -0
- package/.agent/skills/database-design/optimization.md +36 -0
- package/.agent/skills/database-design/orm-selection.md +30 -0
- package/.agent/skills/database-design/schema-design.md +56 -0
- package/.agent/skills/database-design/scripts/schema_validator.py +172 -0
- package/.agent/skills/deployment-procedures/SKILL.md +241 -0
- package/.agent/skills/doc.md +177 -0
- package/.agent/skills/documentation-templates/SKILL.md +194 -0
- package/.agent/skills/frontend-design/SKILL.md +452 -0
- package/.agent/skills/frontend-design/animation-guide.md +331 -0
- package/.agent/skills/frontend-design/color-system.md +311 -0
- package/.agent/skills/frontend-design/decision-trees.md +418 -0
- package/.agent/skills/frontend-design/motion-graphics.md +306 -0
- package/.agent/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/.agent/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/.agent/skills/frontend-design/typography-system.md +345 -0
- package/.agent/skills/frontend-design/ux-psychology.md +1116 -0
- package/.agent/skills/frontend-design/visual-effects.md +383 -0
- package/.agent/skills/game-development/2d-games/SKILL.md +119 -0
- package/.agent/skills/game-development/3d-games/SKILL.md +135 -0
- package/.agent/skills/game-development/SKILL.md +167 -0
- package/.agent/skills/game-development/game-art/SKILL.md +185 -0
- package/.agent/skills/game-development/game-audio/SKILL.md +190 -0
- package/.agent/skills/game-development/game-design/SKILL.md +129 -0
- package/.agent/skills/game-development/mobile-games/SKILL.md +108 -0
- package/.agent/skills/game-development/multiplayer/SKILL.md +132 -0
- package/.agent/skills/game-development/pc-games/SKILL.md +144 -0
- package/.agent/skills/game-development/vr-ar/SKILL.md +123 -0
- package/.agent/skills/game-development/web-games/SKILL.md +150 -0
- package/.agent/skills/geo-fundamentals/SKILL.md +156 -0
- package/.agent/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/.agent/skills/i18n-localization/SKILL.md +154 -0
- package/.agent/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/.agent/skills/intelligent-routing/SKILL.md +335 -0
- package/.agent/skills/lint-and-validate/SKILL.md +45 -0
- package/.agent/skills/lint-and-validate/scripts/lint_runner.py +184 -0
- package/.agent/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/.agent/skills/mcp-builder/SKILL.md +176 -0
- package/.agent/skills/mobile-design/SKILL.md +394 -0
- package/.agent/skills/mobile-design/decision-trees.md +516 -0
- package/.agent/skills/mobile-design/mobile-backend.md +491 -0
- package/.agent/skills/mobile-design/mobile-color-system.md +420 -0
- package/.agent/skills/mobile-design/mobile-debugging.md +122 -0
- package/.agent/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/.agent/skills/mobile-design/mobile-navigation.md +458 -0
- package/.agent/skills/mobile-design/mobile-performance.md +767 -0
- package/.agent/skills/mobile-design/mobile-testing.md +356 -0
- package/.agent/skills/mobile-design/mobile-typography.md +433 -0
- package/.agent/skills/mobile-design/platform-android.md +666 -0
- package/.agent/skills/mobile-design/platform-ios.md +561 -0
- package/.agent/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/.agent/skills/mobile-design/touch-psychology.md +537 -0
- package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +351 -0
- package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -0
- package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -0
- package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -0
- package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
- package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -0
- package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -0
- package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -0
- package/.agent/skills/nextjs-react-expert/9-cache-components.md +103 -0
- package/.agent/skills/nextjs-react-expert/SKILL.md +293 -0
- package/.agent/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
- package/.agent/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -0
- package/.agent/skills/nodejs-best-practices/SKILL.md +333 -0
- package/.agent/skills/parallel-agents/SKILL.md +175 -0
- package/.agent/skills/performance-profiling/SKILL.md +143 -0
- package/.agent/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/.agent/skills/plan-writing/SKILL.md +152 -0
- package/.agent/skills/powershell-windows/SKILL.md +167 -0
- package/.agent/skills/python-patterns/SKILL.md +441 -0
- package/.agent/skills/red-team-tactics/SKILL.md +388 -0
- package/.agent/skills/rust-pro/SKILL.md +176 -0
- package/.agent/skills/seo-fundamentals/SKILL.md +129 -0
- package/.agent/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/.agent/skills/server-management/SKILL.md +161 -0
- package/.agent/skills/systematic-debugging/SKILL.md +109 -0
- package/.agent/skills/tailwind-patterns/SKILL.md +269 -0
- package/.agent/skills/tdd-workflow/SKILL.md +149 -0
- package/.agent/skills/testing-patterns/SKILL.md +178 -0
- package/.agent/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/.agent/skills/vulnerability-scanner/SKILL.md +276 -0
- package/.agent/skills/vulnerability-scanner/checklists.md +121 -0
- package/.agent/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/.agent/skills/web-design-guidelines/SKILL.md +57 -0
- package/.agent/skills/webapp-testing/SKILL.md +187 -0
- package/.agent/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/.agent/workflows/brainstorm.md +113 -0
- package/.agent/workflows/create.md +59 -0
- package/.agent/workflows/cve-intel.md +84 -0
- package/.agent/workflows/debug.md +103 -0
- package/.agent/workflows/deploy.md +176 -0
- package/.agent/workflows/enhance.md +63 -0
- package/.agent/workflows/orchestrate.md +237 -0
- package/.agent/workflows/plan.md +89 -0
- package/.agent/workflows/preview.md +81 -0
- package/.agent/workflows/recon.md +116 -0
- package/.agent/workflows/scan.md +107 -0
- package/.agent/workflows/status.md +86 -0
- package/.agent/workflows/test.md +144 -0
- package/.agent/workflows/ui-ux-pro-max.md +296 -0
- package/LICENSE +21 -0
- package/README.md +146 -0
- package/bin/d1337-init.js +236 -0
- package/package.json +31 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
Skill: webapp-testing
|
|
4
|
+
Script: playwright_runner.py
|
|
5
|
+
Purpose: Run basic Playwright browser tests
|
|
6
|
+
Usage: python playwright_runner.py <url> [--screenshot]
|
|
7
|
+
Output: JSON with page info, health status, and optional screenshot path
|
|
8
|
+
Note: Requires playwright (pip install playwright && playwright install chromium)
|
|
9
|
+
Screenshots: Saved to system temp directory (auto-cleaned by OS)
|
|
10
|
+
"""
|
|
11
|
+
import sys
|
|
12
|
+
import json
|
|
13
|
+
import os
|
|
14
|
+
import tempfile
|
|
15
|
+
from datetime import datetime
|
|
16
|
+
|
|
17
|
+
# Fix Windows console encoding for Unicode output
|
|
18
|
+
try:
|
|
19
|
+
sys.stdout.reconfigure(encoding='utf-8', errors='replace')
|
|
20
|
+
sys.stderr.reconfigure(encoding='utf-8', errors='replace')
|
|
21
|
+
except AttributeError:
|
|
22
|
+
pass # Python < 3.7
|
|
23
|
+
|
|
24
|
+
try:
|
|
25
|
+
from playwright.sync_api import sync_playwright
|
|
26
|
+
PLAYWRIGHT_AVAILABLE = True
|
|
27
|
+
except ImportError:
|
|
28
|
+
PLAYWRIGHT_AVAILABLE = False
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def run_basic_test(url: str, take_screenshot: bool = False) -> dict:
|
|
32
|
+
"""Run basic browser test on URL."""
|
|
33
|
+
if not PLAYWRIGHT_AVAILABLE:
|
|
34
|
+
return {
|
|
35
|
+
"error": "Playwright not installed",
|
|
36
|
+
"fix": "pip install playwright && playwright install chromium"
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
result = {
|
|
40
|
+
"url": url,
|
|
41
|
+
"timestamp": datetime.now().isoformat(),
|
|
42
|
+
"status": "pending"
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
try:
|
|
46
|
+
with sync_playwright() as p:
|
|
47
|
+
browser = p.chromium.launch(headless=True)
|
|
48
|
+
context = browser.new_context(
|
|
49
|
+
viewport={"width": 1280, "height": 720},
|
|
50
|
+
user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
|
|
51
|
+
)
|
|
52
|
+
page = context.new_page()
|
|
53
|
+
|
|
54
|
+
# Navigate
|
|
55
|
+
response = page.goto(url, wait_until="networkidle", timeout=30000)
|
|
56
|
+
|
|
57
|
+
# Basic info
|
|
58
|
+
result["page"] = {
|
|
59
|
+
"title": page.title(),
|
|
60
|
+
"url": page.url,
|
|
61
|
+
"status_code": response.status if response else None
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
# Health checks
|
|
65
|
+
result["health"] = {
|
|
66
|
+
"loaded": response.ok if response else False,
|
|
67
|
+
"has_title": bool(page.title()),
|
|
68
|
+
"has_h1": page.locator("h1").count() > 0,
|
|
69
|
+
"has_links": page.locator("a").count() > 0,
|
|
70
|
+
"has_images": page.locator("img").count() > 0
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
# Console errors
|
|
74
|
+
console_errors = []
|
|
75
|
+
page.on("console", lambda msg: console_errors.append(msg.text) if msg.type == "error" else None)
|
|
76
|
+
|
|
77
|
+
# Performance metrics
|
|
78
|
+
result["performance"] = {
|
|
79
|
+
"dom_content_loaded": page.evaluate("window.performance.timing.domContentLoadedEventEnd - window.performance.timing.navigationStart"),
|
|
80
|
+
"load_complete": page.evaluate("window.performance.timing.loadEventEnd - window.performance.timing.navigationStart")
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
# Screenshot - uses system temp directory (cross-platform, auto-cleaned)
|
|
84
|
+
if take_screenshot:
|
|
85
|
+
# Cross-platform: Windows=%TEMP%, Linux/macOS=/tmp
|
|
86
|
+
screenshot_dir = os.path.join(tempfile.gettempdir(), "maestro_screenshots")
|
|
87
|
+
os.makedirs(screenshot_dir, exist_ok=True)
|
|
88
|
+
screenshot_path = os.path.join(screenshot_dir, f"screenshot_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png")
|
|
89
|
+
page.screenshot(path=screenshot_path, full_page=True)
|
|
90
|
+
result["screenshot"] = screenshot_path
|
|
91
|
+
result["screenshot_note"] = "Saved to temp directory (auto-cleaned by OS)"
|
|
92
|
+
|
|
93
|
+
# Element counts
|
|
94
|
+
result["elements"] = {
|
|
95
|
+
"links": page.locator("a").count(),
|
|
96
|
+
"buttons": page.locator("button").count(),
|
|
97
|
+
"inputs": page.locator("input").count(),
|
|
98
|
+
"images": page.locator("img").count(),
|
|
99
|
+
"forms": page.locator("form").count()
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
browser.close()
|
|
103
|
+
|
|
104
|
+
result["status"] = "success" if result["health"]["loaded"] else "failed"
|
|
105
|
+
result["summary"] = "[OK] Page loaded successfully" if result["status"] == "success" else "[X] Page failed to load"
|
|
106
|
+
|
|
107
|
+
except Exception as e:
|
|
108
|
+
result["status"] = "error"
|
|
109
|
+
result["error"] = str(e)
|
|
110
|
+
result["summary"] = f"[X] Error: {str(e)[:100]}"
|
|
111
|
+
|
|
112
|
+
return result
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def run_accessibility_check(url: str) -> dict:
|
|
116
|
+
"""Run basic accessibility check."""
|
|
117
|
+
if not PLAYWRIGHT_AVAILABLE:
|
|
118
|
+
return {"error": "Playwright not installed"}
|
|
119
|
+
|
|
120
|
+
result = {"url": url, "accessibility": {}}
|
|
121
|
+
|
|
122
|
+
try:
|
|
123
|
+
with sync_playwright() as p:
|
|
124
|
+
browser = p.chromium.launch(headless=True)
|
|
125
|
+
page = browser.new_page()
|
|
126
|
+
page.goto(url, wait_until="networkidle", timeout=30000)
|
|
127
|
+
|
|
128
|
+
# Basic a11y checks
|
|
129
|
+
result["accessibility"] = {
|
|
130
|
+
"images_with_alt": page.locator("img[alt]").count(),
|
|
131
|
+
"images_without_alt": page.locator("img:not([alt])").count(),
|
|
132
|
+
"buttons_with_label": page.locator("button[aria-label], button:has-text('')").count(),
|
|
133
|
+
"links_with_text": page.locator("a:has-text('')").count(),
|
|
134
|
+
"form_labels": page.locator("label").count(),
|
|
135
|
+
"headings": {
|
|
136
|
+
"h1": page.locator("h1").count(),
|
|
137
|
+
"h2": page.locator("h2").count(),
|
|
138
|
+
"h3": page.locator("h3").count()
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
browser.close()
|
|
143
|
+
result["status"] = "success"
|
|
144
|
+
|
|
145
|
+
except Exception as e:
|
|
146
|
+
result["status"] = "error"
|
|
147
|
+
result["error"] = str(e)
|
|
148
|
+
|
|
149
|
+
return result
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
if __name__ == "__main__":
|
|
153
|
+
if len(sys.argv) < 2:
|
|
154
|
+
print(json.dumps({
|
|
155
|
+
"error": "Usage: python playwright_runner.py <url> [--screenshot] [--a11y]",
|
|
156
|
+
"examples": [
|
|
157
|
+
"python playwright_runner.py https://example.com",
|
|
158
|
+
"python playwright_runner.py https://example.com --screenshot",
|
|
159
|
+
"python playwright_runner.py https://example.com --a11y"
|
|
160
|
+
]
|
|
161
|
+
}, indent=2))
|
|
162
|
+
sys.exit(1)
|
|
163
|
+
|
|
164
|
+
url = sys.argv[1]
|
|
165
|
+
take_screenshot = "--screenshot" in sys.argv
|
|
166
|
+
check_a11y = "--a11y" in sys.argv
|
|
167
|
+
|
|
168
|
+
if check_a11y:
|
|
169
|
+
result = run_accessibility_check(url)
|
|
170
|
+
else:
|
|
171
|
+
result = run_basic_test(url, take_screenshot)
|
|
172
|
+
|
|
173
|
+
print(json.dumps(result, indent=2))
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Structured brainstorming for projects and features. Explores multiple options before implementation.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /brainstorm - Structured Idea Exploration
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command activates BRAINSTORM mode for structured idea exploration. Use when you need to explore options before committing to an implementation.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Behavior
|
|
18
|
+
|
|
19
|
+
When `/brainstorm` is triggered:
|
|
20
|
+
|
|
21
|
+
1. **Understand the goal**
|
|
22
|
+
- What problem are we solving?
|
|
23
|
+
- Who is the user?
|
|
24
|
+
- What constraints exist?
|
|
25
|
+
|
|
26
|
+
2. **Generate options**
|
|
27
|
+
- Provide at least 3 different approaches
|
|
28
|
+
- Each with pros and cons
|
|
29
|
+
- Consider unconventional solutions
|
|
30
|
+
|
|
31
|
+
3. **Compare and recommend**
|
|
32
|
+
- Summarize tradeoffs
|
|
33
|
+
- Give a recommendation with reasoning
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Output Format
|
|
38
|
+
|
|
39
|
+
```markdown
|
|
40
|
+
## 🧠 Brainstorm: [Topic]
|
|
41
|
+
|
|
42
|
+
### Context
|
|
43
|
+
[Brief problem statement]
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
### Option A: [Name]
|
|
48
|
+
[Description]
|
|
49
|
+
|
|
50
|
+
✅ **Pros:**
|
|
51
|
+
- [benefit 1]
|
|
52
|
+
- [benefit 2]
|
|
53
|
+
|
|
54
|
+
❌ **Cons:**
|
|
55
|
+
- [drawback 1]
|
|
56
|
+
|
|
57
|
+
📊 **Effort:** Low | Medium | High
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
### Option B: [Name]
|
|
62
|
+
[Description]
|
|
63
|
+
|
|
64
|
+
✅ **Pros:**
|
|
65
|
+
- [benefit 1]
|
|
66
|
+
|
|
67
|
+
❌ **Cons:**
|
|
68
|
+
- [drawback 1]
|
|
69
|
+
- [drawback 2]
|
|
70
|
+
|
|
71
|
+
📊 **Effort:** Low | Medium | High
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
### Option C: [Name]
|
|
76
|
+
[Description]
|
|
77
|
+
|
|
78
|
+
✅ **Pros:**
|
|
79
|
+
- [benefit 1]
|
|
80
|
+
|
|
81
|
+
❌ **Cons:**
|
|
82
|
+
- [drawback 1]
|
|
83
|
+
|
|
84
|
+
📊 **Effort:** Low | Medium | High
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## 💡 Recommendation
|
|
89
|
+
|
|
90
|
+
**Option [X]** because [reasoning].
|
|
91
|
+
|
|
92
|
+
What direction would you like to explore?
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Examples
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
/brainstorm authentication system
|
|
101
|
+
/brainstorm state management for complex form
|
|
102
|
+
/brainstorm database schema for social app
|
|
103
|
+
/brainstorm caching strategy
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Key Principles
|
|
109
|
+
|
|
110
|
+
- **No code** - this is about ideas, not implementation
|
|
111
|
+
- **Visual when helpful** - use diagrams for architecture
|
|
112
|
+
- **Honest tradeoffs** - don't hide complexity
|
|
113
|
+
- **Defer to user** - present options, let them decide
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create new application command. Triggers App Builder skill and starts interactive dialogue with user.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /create - Create Application
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
This command starts a new application creation process.
|
|
14
|
+
|
|
15
|
+
### Steps:
|
|
16
|
+
|
|
17
|
+
1. **Request Analysis**
|
|
18
|
+
- Understand what the user wants
|
|
19
|
+
- If information is missing, use `conversation-manager` skill to ask
|
|
20
|
+
|
|
21
|
+
2. **Project Planning**
|
|
22
|
+
- Use `project-planner` agent for task breakdown
|
|
23
|
+
- Determine tech stack
|
|
24
|
+
- Plan file structure
|
|
25
|
+
- Create plan file and proceed to building
|
|
26
|
+
|
|
27
|
+
3. **Application Building (After Approval)**
|
|
28
|
+
- Orchestrate with `app-builder` skill
|
|
29
|
+
- Coordinate expert agents:
|
|
30
|
+
- `database-architect` → Schema
|
|
31
|
+
- `backend-specialist` → API
|
|
32
|
+
- `frontend-specialist` → UI
|
|
33
|
+
|
|
34
|
+
4. **Preview**
|
|
35
|
+
- Start with `auto_preview.py` when complete
|
|
36
|
+
- Present URL to user
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Usage Examples
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
/create blog site
|
|
44
|
+
/create e-commerce app with product listing and cart
|
|
45
|
+
/create todo app
|
|
46
|
+
/create Instagram clone
|
|
47
|
+
/create crm system with customer management
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Before Starting
|
|
53
|
+
|
|
54
|
+
If request is unclear, ask these questions:
|
|
55
|
+
- What type of application?
|
|
56
|
+
- What are the basic features?
|
|
57
|
+
- Who will use it?
|
|
58
|
+
|
|
59
|
+
Use defaults, add details later.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: CVE/exploit research — cari PoC terbaru, validate, document findings
|
|
3
|
+
---
|
|
4
|
+
// turbo-all
|
|
5
|
+
|
|
6
|
+
> CONTEXT: Deep research CVE dan exploit terbaru. Cari, validate, compile. Output = actionable intel.
|
|
7
|
+
|
|
8
|
+
# /cve-intel — D1337 CVE Research
|
|
9
|
+
|
|
10
|
+
## Prerequisites
|
|
11
|
+
|
|
12
|
+
- Target tech/version dari Ketua/Abangda
|
|
13
|
+
- Atau CVE number spesifik
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Step 1: Search Latest CVEs
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# search_web: "$TECH CVE 2024 2025 vulnerability"
|
|
21
|
+
# search_web: "$TECH RCE exploit PoC"
|
|
22
|
+
# search_web: "site:nvd.nist.gov $TECH"
|
|
23
|
+
# search_web: "site:github.com $TECH CVE PoC"
|
|
24
|
+
# search_web: "site:exploit-db.com $TECH"
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Step 2: Cross-Reference Sources
|
|
28
|
+
|
|
29
|
+
**Minimal 3 sumber:**
|
|
30
|
+
1. NVD (nvd.nist.gov)
|
|
31
|
+
2. GitHub PoC repos
|
|
32
|
+
3. Exploit-DB / PacketStorm
|
|
33
|
+
|
|
34
|
+
**Optional:**
|
|
35
|
+
- Nuclei templates (github.com/projectdiscovery/nuclei-templates)
|
|
36
|
+
- Sploitus.com
|
|
37
|
+
- AttackerKB
|
|
38
|
+
|
|
39
|
+
## Step 3: Validate PoC
|
|
40
|
+
|
|
41
|
+
Buat setiap CVE yang ditemuin:
|
|
42
|
+
- [ ] Cek affected versions
|
|
43
|
+
- [ ] Cek apakah target version vulnerable
|
|
44
|
+
- [ ] Baca PoC code — pahami logic-nya
|
|
45
|
+
- [ ] Identifikasi prerequisites
|
|
46
|
+
- [ ] Assess exploitability (Easy/Medium/Hard)
|
|
47
|
+
|
|
48
|
+
## Step 4: Compile Intel Report
|
|
49
|
+
|
|
50
|
+
```markdown
|
|
51
|
+
# CVE Intel Report: $TECH
|
|
52
|
+
|
|
53
|
+
## Summary
|
|
54
|
+
- Total CVEs found: X
|
|
55
|
+
- Critical: X | High: X | Medium: X
|
|
56
|
+
- Exploitable with public PoC: X
|
|
57
|
+
|
|
58
|
+
## CVE Details
|
|
59
|
+
|
|
60
|
+
### CVE-XXXX-XXXXX
|
|
61
|
+
- **Severity**: Critical (CVSS 9.8)
|
|
62
|
+
- **Type**: RCE / SQLi / Auth Bypass
|
|
63
|
+
- **Affected**: $TECH <= version X.Y.Z
|
|
64
|
+
- **PoC**: [GitHub link]
|
|
65
|
+
- **Exploitability**: Easy — public PoC available
|
|
66
|
+
- **Patched in**: version X.Y.Z+1
|
|
67
|
+
- **Attack Vector**: Network / Adjacent / Local
|
|
68
|
+
|
|
69
|
+
### CVE-XXXX-XXXXX
|
|
70
|
+
...
|
|
71
|
+
|
|
72
|
+
## Recommended Attack Order
|
|
73
|
+
1. CVE-X (RCE, Easy) → Try first
|
|
74
|
+
2. CVE-Y (Auth Bypass, Medium) → Chain with #1
|
|
75
|
+
3. CVE-Z (SQLi, Easy) → Fallback
|
|
76
|
+
|
|
77
|
+
## Tools Needed
|
|
78
|
+
- exploit script from [repo]
|
|
79
|
+
- nuclei template: [template-id]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
> **CVE research yang DANGKAL = serangan yang GAGAL. RISET DALAM, SERANG TEPAT.**
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Debugging command. Activates DEBUG mode for systematic problem investigation.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /debug - Systematic Problem Investigation
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command activates DEBUG mode for systematic investigation of issues, errors, or unexpected behavior.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Behavior
|
|
18
|
+
|
|
19
|
+
When `/debug` is triggered:
|
|
20
|
+
|
|
21
|
+
1. **Gather information**
|
|
22
|
+
- Error message
|
|
23
|
+
- Reproduction steps
|
|
24
|
+
- Expected vs actual behavior
|
|
25
|
+
- Recent changes
|
|
26
|
+
|
|
27
|
+
2. **Form hypotheses**
|
|
28
|
+
- List possible causes
|
|
29
|
+
- Order by likelihood
|
|
30
|
+
|
|
31
|
+
3. **Investigate systematically**
|
|
32
|
+
- Test each hypothesis
|
|
33
|
+
- Check logs, data flow
|
|
34
|
+
- Use elimination method
|
|
35
|
+
|
|
36
|
+
4. **Fix and prevent**
|
|
37
|
+
- Apply fix
|
|
38
|
+
- Explain root cause
|
|
39
|
+
- Add prevention measures
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Output Format
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
## 🔍 Debug: [Issue]
|
|
47
|
+
|
|
48
|
+
### 1. Symptom
|
|
49
|
+
[What's happening]
|
|
50
|
+
|
|
51
|
+
### 2. Information Gathered
|
|
52
|
+
- Error: `[error message]`
|
|
53
|
+
- File: `[filepath]`
|
|
54
|
+
- Line: [line number]
|
|
55
|
+
|
|
56
|
+
### 3. Hypotheses
|
|
57
|
+
1. ❓ [Most likely cause]
|
|
58
|
+
2. ❓ [Second possibility]
|
|
59
|
+
3. ❓ [Less likely cause]
|
|
60
|
+
|
|
61
|
+
### 4. Investigation
|
|
62
|
+
|
|
63
|
+
**Testing hypothesis 1:**
|
|
64
|
+
[What I checked] → [Result]
|
|
65
|
+
|
|
66
|
+
**Testing hypothesis 2:**
|
|
67
|
+
[What I checked] → [Result]
|
|
68
|
+
|
|
69
|
+
### 5. Root Cause
|
|
70
|
+
🎯 **[Explanation of why this happened]**
|
|
71
|
+
|
|
72
|
+
### 6. Fix
|
|
73
|
+
```[language]
|
|
74
|
+
// Before
|
|
75
|
+
[broken code]
|
|
76
|
+
|
|
77
|
+
// After
|
|
78
|
+
[fixed code]
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### 7. Prevention
|
|
82
|
+
🛡️ [How to prevent this in the future]
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Examples
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
/debug login not working
|
|
91
|
+
/debug API returns 500
|
|
92
|
+
/debug form doesn't submit
|
|
93
|
+
/debug data not saving
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Key Principles
|
|
99
|
+
|
|
100
|
+
- **Ask before assuming** - get full error context
|
|
101
|
+
- **Test hypotheses** - don't guess randomly
|
|
102
|
+
- **Explain why** - not just what to fix
|
|
103
|
+
- **Prevent recurrence** - add tests, validation
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Deployment command for production releases. Pre-flight checks and deployment execution.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /deploy - Production Deployment
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command handles production deployment with pre-flight checks, deployment execution, and verification.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Sub-commands
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/deploy - Interactive deployment wizard
|
|
21
|
+
/deploy check - Run pre-deployment checks only
|
|
22
|
+
/deploy preview - Deploy to preview/staging
|
|
23
|
+
/deploy production - Deploy to production
|
|
24
|
+
/deploy rollback - Rollback to previous version
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Pre-Deployment Checklist
|
|
30
|
+
|
|
31
|
+
Before any deployment:
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
## 🚀 Pre-Deploy Checklist
|
|
35
|
+
|
|
36
|
+
### Code Quality
|
|
37
|
+
- [ ] No TypeScript errors (`npx tsc --noEmit`)
|
|
38
|
+
- [ ] ESLint passing (`npx eslint .`)
|
|
39
|
+
- [ ] All tests passing (`npm test`)
|
|
40
|
+
|
|
41
|
+
### Security
|
|
42
|
+
- [ ] No hardcoded secrets
|
|
43
|
+
- [ ] Environment variables documented
|
|
44
|
+
- [ ] Dependencies audited (`npm audit`)
|
|
45
|
+
|
|
46
|
+
### Performance
|
|
47
|
+
- [ ] Bundle size acceptable
|
|
48
|
+
- [ ] No console.log statements
|
|
49
|
+
- [ ] Images optimized
|
|
50
|
+
|
|
51
|
+
### Documentation
|
|
52
|
+
- [ ] README updated
|
|
53
|
+
- [ ] CHANGELOG updated
|
|
54
|
+
- [ ] API docs current
|
|
55
|
+
|
|
56
|
+
### Ready to deploy? (y/n)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Deployment Flow
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
┌─────────────────┐
|
|
65
|
+
│ /deploy │
|
|
66
|
+
└────────┬────────┘
|
|
67
|
+
│
|
|
68
|
+
▼
|
|
69
|
+
┌─────────────────┐
|
|
70
|
+
│ Pre-flight │
|
|
71
|
+
│ checks │
|
|
72
|
+
└────────┬────────┘
|
|
73
|
+
│
|
|
74
|
+
Pass? ──No──► Fix issues
|
|
75
|
+
│
|
|
76
|
+
Yes
|
|
77
|
+
│
|
|
78
|
+
▼
|
|
79
|
+
┌─────────────────┐
|
|
80
|
+
│ Build │
|
|
81
|
+
│ application │
|
|
82
|
+
└────────┬────────┘
|
|
83
|
+
│
|
|
84
|
+
▼
|
|
85
|
+
┌─────────────────┐
|
|
86
|
+
│ Deploy to │
|
|
87
|
+
│ platform │
|
|
88
|
+
└────────┬────────┘
|
|
89
|
+
│
|
|
90
|
+
▼
|
|
91
|
+
┌─────────────────┐
|
|
92
|
+
│ Health check │
|
|
93
|
+
│ & verify │
|
|
94
|
+
└────────┬────────┘
|
|
95
|
+
│
|
|
96
|
+
▼
|
|
97
|
+
┌─────────────────┐
|
|
98
|
+
│ ✅ Complete │
|
|
99
|
+
└─────────────────┘
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Output Format
|
|
105
|
+
|
|
106
|
+
### Successful Deploy
|
|
107
|
+
|
|
108
|
+
```markdown
|
|
109
|
+
## 🚀 Deployment Complete
|
|
110
|
+
|
|
111
|
+
### Summary
|
|
112
|
+
- **Version:** v1.2.3
|
|
113
|
+
- **Environment:** production
|
|
114
|
+
- **Duration:** 47 seconds
|
|
115
|
+
- **Platform:** Vercel
|
|
116
|
+
|
|
117
|
+
### URLs
|
|
118
|
+
- 🌐 Production: https://app.example.com
|
|
119
|
+
- 📊 Dashboard: https://vercel.com/project
|
|
120
|
+
|
|
121
|
+
### What Changed
|
|
122
|
+
- Added user profile feature
|
|
123
|
+
- Fixed login bug
|
|
124
|
+
- Updated dependencies
|
|
125
|
+
|
|
126
|
+
### Health Check
|
|
127
|
+
✅ API responding (200 OK)
|
|
128
|
+
✅ Database connected
|
|
129
|
+
✅ All services healthy
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Failed Deploy
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
## ❌ Deployment Failed
|
|
136
|
+
|
|
137
|
+
### Error
|
|
138
|
+
Build failed at step: TypeScript compilation
|
|
139
|
+
|
|
140
|
+
### Details
|
|
141
|
+
```
|
|
142
|
+
error TS2345: Argument of type 'string' is not assignable...
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Resolution
|
|
146
|
+
1. Fix TypeScript error in `src/services/user.ts:45`
|
|
147
|
+
2. Run `npm run build` locally to verify
|
|
148
|
+
3. Try `/deploy` again
|
|
149
|
+
|
|
150
|
+
### Rollback Available
|
|
151
|
+
Previous version (v1.2.2) is still active.
|
|
152
|
+
Run `/deploy rollback` if needed.
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Platform Support
|
|
158
|
+
|
|
159
|
+
| Platform | Command | Notes |
|
|
160
|
+
|----------|---------|-------|
|
|
161
|
+
| Vercel | `vercel --prod` | Auto-detected for Next.js |
|
|
162
|
+
| Railway | `railway up` | Needs Railway CLI |
|
|
163
|
+
| Fly.io | `fly deploy` | Needs flyctl |
|
|
164
|
+
| Docker | `docker compose up -d` | For self-hosted |
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Examples
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
/deploy
|
|
172
|
+
/deploy check
|
|
173
|
+
/deploy preview
|
|
174
|
+
/deploy production --skip-tests
|
|
175
|
+
/deploy rollback
|
|
176
|
+
```
|