@jhm1909/ag-kit 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/ARCHITECTURE.md +189 -0
- package/.agent/known-registries.json +181 -0
- package/.agent/mcp_config.json +19 -0
- package/.agent/rules/clean-code.md +107 -0
- package/.agent/rules/documents.md +177 -0
- package/.agent/rules/git-workflow.md +68 -0
- package/.agent/rules/nano-banana.md +46 -0
- package/.agent/rules/research.md +35 -0
- package/.agent/rules/skill-loading.md +100 -0
- package/.agent/rules/skill-suggestion.md +47 -0
- package/.agent/rules/testing.md +52 -0
- package/.agent/rules/workflow-advisor.md +108 -0
- package/.agent/rules/workflow-skill-convention.md +127 -0
- package/.agent/skills/ai-engineer/SKILL.md +824 -0
- package/.agent/skills/ai-engineer/references/agentic-patterns.md +329 -0
- package/.agent/skills/ai-engineer/references/evaluation.md +493 -0
- package/.agent/skills/ai-engineer/references/llm.md +490 -0
- package/.agent/skills/ai-engineer/references/rag-advanced.md +444 -0
- package/.agent/skills/ai-engineer/references/serving-optimization.md +531 -0
- package/.agent/skills/ai-engineer/vector-db/README.md +137 -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/backend-developer/SKILL.md +763 -0
- package/.agent/skills/backend-developer/references/general-patterns.md +65 -0
- package/.agent/skills/backend-developer/references/go-echo.md +68 -0
- package/.agent/skills/backend-developer/references/go-gin.md +76 -0
- package/.agent/skills/backend-developer/references/java-springboot.md +83 -0
- package/.agent/skills/backend-developer/references/node-express.md +64 -0
- package/.agent/skills/backend-developer/references/node-nestjs.md +69 -0
- package/.agent/skills/backend-developer/references/python-django.md +67 -0
- package/.agent/skills/backend-developer/references/python-fastapi.md +80 -0
- package/.agent/skills/blockchain-engineer/SKILL.md +975 -0
- package/.agent/skills/blockchain-engineer/references/deployment.md +28 -0
- package/.agent/skills/blockchain-engineer/references/evm.md +14 -0
- package/.agent/skills/blockchain-engineer/references/mechanisms.md +32 -0
- package/.agent/skills/blockchain-engineer/references/solidity.md +32 -0
- package/.agent/skills/business-analysis/SKILL.md +85 -0
- package/.agent/skills/business-analysis/references/best-practices/diagrams.md +141 -0
- package/.agent/skills/business-analysis/references/domains/ai-agent.md +94 -0
- package/.agent/skills/business-analysis/references/domains/blockchain-dapp.md +86 -0
- package/.agent/skills/business-analysis/references/domains/ecommerce.md +77 -0
- package/.agent/skills/business-analysis/references/domains/education.md +42 -0
- package/.agent/skills/business-analysis/references/domains/fintech.md +44 -0
- package/.agent/skills/business-analysis/references/domains/fnb.md +82 -0
- package/.agent/skills/business-analysis/references/domains/healthtech.md +44 -0
- package/.agent/skills/business-analysis/references/domains/internal-tools.md +38 -0
- package/.agent/skills/business-analysis/references/domains/marketplace.md +52 -0
- package/.agent/skills/business-analysis/references/domains/saas.md +36 -0
- package/.agent/skills/business-analysis/references/workflows/collaboration.md +41 -0
- package/.agent/skills/business-analysis/scripts/verify_mermaid.py +86 -0
- package/.agent/skills/business-analysis/templates/brd.md +46 -0
- package/.agent/skills/business-analysis/templates/change-request.md +41 -0
- package/.agent/skills/business-analysis/templates/prd-functional.md +38 -0
- package/.agent/skills/business-analysis/templates/use-case.md +40 -0
- package/.agent/skills/business-analysis/templates/user-story-detailed.md +36 -0
- package/.agent/skills/code-review/SKILL.md +113 -0
- package/.agent/skills/code-review/references/code-review-reception.md +209 -0
- package/.agent/skills/code-review/references/differential_review.md +59 -0
- package/.agent/skills/code-review/references/requesting-code-review.md +105 -0
- package/.agent/skills/code-review/references/spec_compliance.md +43 -0
- package/.agent/skills/code-review/references/verification-before-completion.md +139 -0
- package/.agent/skills/context-engineering/SKILL.md +68 -0
- package/.agent/skills/context-engineering/references/context-compression.md +84 -0
- package/.agent/skills/context-engineering/references/context-degradation.md +93 -0
- package/.agent/skills/context-engineering/references/context-fundamentals.md +75 -0
- package/.agent/skills/context-engineering/references/context-optimization.md +82 -0
- package/.agent/skills/context-engineering/references/evaluation.md +89 -0
- package/.agent/skills/context-engineering/references/memory-systems.md +88 -0
- package/.agent/skills/context-engineering/references/multi-agent-patterns.md +90 -0
- package/.agent/skills/context-engineering/references/project-development.md +97 -0
- package/.agent/skills/context-engineering/references/tool-design.md +86 -0
- package/.agent/skills/debugging/SKILL.md +60 -0
- package/.agent/skills/debugging/references/defense-in-depth.md +130 -0
- package/.agent/skills/debugging/references/root-cause-tracing.md +177 -0
- package/.agent/skills/debugging/references/systematic-debugging.md +295 -0
- package/.agent/skills/debugging/references/verification-before-completion.md +142 -0
- package/.agent/skills/designer/SKILL.md +159 -0
- package/.agent/skills/designer/concepts/apple-glass.md +48 -0
- package/.agent/skills/designer/concepts/aurora-gradients.md +26 -0
- package/.agent/skills/designer/concepts/bento-grids.md +14 -0
- package/.agent/skills/designer/concepts/claymorphism.md +27 -0
- package/.agent/skills/designer/concepts/neo-brutalism.md +32 -0
- package/.agent/skills/designer/data/app-interface.csv +31 -0
- package/.agent/skills/designer/data/charts.csv +26 -0
- package/.agent/skills/designer/data/colors.csv +162 -0
- package/.agent/skills/designer/data/design.csv +1776 -0
- package/.agent/skills/designer/data/icons.csv +106 -0
- package/.agent/skills/designer/data/landing.csv +35 -0
- package/.agent/skills/designer/data/products.csv +162 -0
- package/.agent/skills/designer/data/react-performance.csv +45 -0
- package/.agent/skills/designer/data/styles.csv +85 -0
- package/.agent/skills/designer/data/typography.csv +74 -0
- package/.agent/skills/designer/data/ui-reasoning.csv +162 -0
- package/.agent/skills/designer/data/ux-guidelines.csv +100 -0
- package/.agent/skills/designer/references/accessibility.md +172 -0
- package/.agent/skills/designer/references/branding.md +88 -0
- package/.agent/skills/designer/references/color-theory.md +139 -0
- package/.agent/skills/designer/references/creation.md +118 -0
- package/.agent/skills/designer/references/design-systems.md +219 -0
- package/.agent/skills/designer/references/frontend_design_aesthetics.md +57 -0
- package/.agent/skills/designer/references/layout.md +200 -0
- package/.agent/skills/designer/references/motion.md +92 -0
- package/.agent/skills/designer/references/review.md +100 -0
- package/.agent/skills/designer/references/trends.md +209 -0
- package/.agent/skills/designer/references/typography.md +190 -0
- package/.agent/skills/designer/scripts/remove_background.py +135 -0
- package/.agent/skills/designer/scripts/ui-search/__pycache__/core.cpython-314.pyc +0 -0
- package/.agent/skills/designer/scripts/ui-search/__pycache__/design_system.cpython-314.pyc +0 -0
- package/.agent/skills/designer/scripts/ui-search/core.py +217 -0
- package/.agent/skills/designer/scripts/ui-search/design_system.py +1067 -0
- package/.agent/skills/designer/scripts/ui-search/search.py +114 -0
- package/.agent/skills/designer/templates/design-motion-spec.md +30 -0
- package/.agent/skills/devops-engineer/SKILL.md +90 -0
- package/.agent/skills/devops-engineer/docker-compose/README.md +47 -0
- package/.agent/skills/devops-engineer/references/ci-cd-pipelines.md +76 -0
- package/.agent/skills/devops-engineer/references/cloud-providers.md +57 -0
- package/.agent/skills/devops-engineer/references/codebase-normalization.md +104 -0
- package/.agent/skills/devops-engineer/references/container-orchestration.md +69 -0
- package/.agent/skills/devops-engineer/references/iac-tools.md +63 -0
- package/.agent/skills/devops-engineer/references/observability-security.md +45 -0
- package/.agent/skills/devops-engineer/references/vercel-supabase.md +17 -0
- package/.agent/skills/devops-engineer/templates/release-notes.md +8 -0
- package/.agent/skills/frontend-developer/SKILL.md +125 -0
- package/.agent/skills/frontend-developer/react-nextjs/README.md +90 -0
- package/.agent/skills/frontend-developer/references/angular.md +52 -0
- package/.agent/skills/frontend-developer/references/composition_patterns.md +60 -0
- package/.agent/skills/frontend-developer/references/core-performance.md +68 -0
- package/.agent/skills/frontend-developer/references/modern-signals.md +43 -0
- package/.agent/skills/frontend-developer/references/react_performance_rules.md +55 -0
- package/.agent/skills/frontend-developer/references/vue-nuxt.md +55 -0
- package/.agent/skills/frontend-developer/scripts/validate_compliance.py +65 -0
- package/.agent/skills/frontend-developer/threejs/README.md +89 -0
- package/.agent/skills/frontend-developer/threejs/animation.md +552 -0
- package/.agent/skills/frontend-developer/threejs/fundamentals.md +488 -0
- package/.agent/skills/frontend-developer/threejs/geometry.md +548 -0
- package/.agent/skills/frontend-developer/threejs/interaction.md +660 -0
- package/.agent/skills/frontend-developer/threejs/lighting.md +481 -0
- package/.agent/skills/frontend-developer/threejs/loaders.md +623 -0
- package/.agent/skills/frontend-developer/threejs/materials.md +520 -0
- package/.agent/skills/frontend-developer/threejs/postprocessing.md +602 -0
- package/.agent/skills/frontend-developer/threejs/router.json +181 -0
- package/.agent/skills/frontend-developer/threejs/shaders.md +642 -0
- package/.agent/skills/frontend-developer/threejs/textures.md +628 -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/lead-architect/SKILL.md +85 -0
- package/.agent/skills/lead-architect/references/application-architecture.md +70 -0
- package/.agent/skills/lead-architect/references/infrastructure.md +51 -0
- package/.agent/skills/lead-architect/references/process.md +42 -0
- package/.agent/skills/lead-architect/references/system-architecture.md +62 -0
- package/.agent/skills/lead-architect/references/web-fullstack.md +82 -0
- package/.agent/skills/lead-architect/templates/adr.md +62 -0
- package/.agent/skills/lead-architect/templates/rfc.md +46 -0
- package/.agent/skills/lead-architect/templates/sdd.md +62 -0
- package/.agent/skills/lead-architect/templates/technical-spec.md +61 -0
- package/.agent/skills/marketer/SKILL.md +66 -0
- package/.agent/skills/marketer/remotion-best-practices/SKILL.md +58 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/3d.md +86 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/animations.md +29 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +108 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/assets.md +78 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/audio.md +172 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/calculate-metadata.md +104 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/can-decode.md +75 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/charts.md +58 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/compositions.md +146 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/display-captions.md +126 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/extract-frames.md +229 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/fonts.md +152 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/get-audio-duration.md +58 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/get-video-dimensions.md +68 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/get-video-duration.md +58 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/gifs.md +138 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/images.md +130 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/import-srt-captions.md +67 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/lottie.md +68 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/measuring-dom-nodes.md +35 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/measuring-text.md +143 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/sequencing.md +106 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/tailwind.md +11 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/text-animations.md +20 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/timing.md +179 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/transcribe-captions.md +19 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/transitions.md +122 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/trimming.md +53 -0
- package/.agent/skills/marketer/remotion-best-practices/rules/videos.md +171 -0
- package/.agent/skills/mcp-builder/SKILL.md +76 -0
- package/.agent/skills/mcp-builder/references/evaluation.md +602 -0
- package/.agent/skills/mcp-builder/references/mcp_best_practices.md +249 -0
- package/.agent/skills/mcp-builder/references/node_mcp_server.md +970 -0
- package/.agent/skills/mcp-builder/references/python_mcp_server.md +719 -0
- package/.agent/skills/mobile-developer/SKILL.md +83 -0
- package/.agent/skills/mobile-developer/api-routes/SKILL.md +389 -0
- package/.agent/skills/mobile-developer/building-ui/SKILL.md +335 -0
- package/.agent/skills/mobile-developer/building-ui/references/animations.md +220 -0
- package/.agent/skills/mobile-developer/building-ui/references/controls.md +270 -0
- package/.agent/skills/mobile-developer/building-ui/references/form-sheet.md +227 -0
- package/.agent/skills/mobile-developer/building-ui/references/gradients.md +106 -0
- package/.agent/skills/mobile-developer/building-ui/references/icons.md +213 -0
- package/.agent/skills/mobile-developer/building-ui/references/media.md +198 -0
- package/.agent/skills/mobile-developer/building-ui/references/route-structure.md +229 -0
- package/.agent/skills/mobile-developer/building-ui/references/search.md +248 -0
- package/.agent/skills/mobile-developer/building-ui/references/storage.md +121 -0
- package/.agent/skills/mobile-developer/building-ui/references/tabs.md +368 -0
- package/.agent/skills/mobile-developer/building-ui/references/visual-effects.md +197 -0
- package/.agent/skills/mobile-developer/building-ui/references/webgpu-three.md +605 -0
- package/.agent/skills/mobile-developer/cicd-workflows/SKILL.md +107 -0
- package/.agent/skills/mobile-developer/cicd-workflows/scripts/fetch.js +109 -0
- package/.agent/skills/mobile-developer/cicd-workflows/scripts/package.json +11 -0
- package/.agent/skills/mobile-developer/cicd-workflows/scripts/validate.js +84 -0
- package/.agent/skills/mobile-developer/data-fetching/SKILL.md +508 -0
- package/.agent/skills/mobile-developer/deployment/SKILL.md +207 -0
- package/.agent/skills/mobile-developer/deployment/references/app-store-metadata.md +479 -0
- package/.agent/skills/mobile-developer/deployment/references/ios-app-store.md +355 -0
- package/.agent/skills/mobile-developer/deployment/references/play-store.md +246 -0
- package/.agent/skills/mobile-developer/deployment/references/testflight.md +58 -0
- package/.agent/skills/mobile-developer/deployment/references/workflows.md +200 -0
- package/.agent/skills/mobile-developer/dev-client/SKILL.md +181 -0
- package/.agent/skills/mobile-developer/tailwind-setup/SKILL.md +501 -0
- package/.agent/skills/mobile-developer/upgrading-expo/SKILL.md +116 -0
- package/.agent/skills/mobile-developer/upgrading-expo/references/new-architecture.md +79 -0
- package/.agent/skills/mobile-developer/upgrading-expo/references/react-19.md +79 -0
- package/.agent/skills/mobile-developer/upgrading-expo/references/react-compiler.md +59 -0
- package/.agent/skills/mobile-developer/use-dom/SKILL.md +434 -0
- package/.agent/skills/modern-python/SKILL.md +122 -0
- package/.agent/skills/project-manager/SKILL.md +110 -0
- package/.agent/skills/project-manager/references/ba-collaboration.md +62 -0
- package/.agent/skills/project-manager/references/discovery_process.md +52 -0
- package/.agent/skills/project-manager/references/jobs_to_be_done.md +51 -0
- package/.agent/skills/project-manager/references/prd_development.md +52 -0
- package/.agent/skills/project-manager/references/rules-guide.md +55 -0
- package/.agent/skills/project-manager/references/skill-creation.md +98 -0
- package/.agent/skills/project-manager/references/strategic-frameworks.md +62 -0
- package/.agent/skills/project-manager/references/task-decomposition.md +194 -0
- package/.agent/skills/project-manager/references/workflows-guide.md +44 -0
- package/.agent/skills/project-manager/router.json +160 -0
- package/.agent/skills/project-manager/scripts/compare_skill.py +177 -0
- package/.agent/skills/project-manager/scripts/encoding_utils.py +36 -0
- package/.agent/skills/project-manager/scripts/init_skill.py +190 -0
- package/.agent/skills/project-manager/scripts/quick_validate.py +123 -0
- package/.agent/skills/project-manager/templates/pm-strategy-one-pager.md +6 -0
- package/.agent/skills/project-manager/templates/prd-strategic.md +38 -0
- package/.agent/skills/project-manager/templates/skill-questionnaire.md +118 -0
- package/.agent/skills/project-manager/templates/user-story-simple.md +14 -0
- package/.agent/skills/prompt-engineer/SKILL.md +319 -0
- package/.agent/skills/prompt-engineer/skill-creator/README.md +47 -0
- package/.agent/skills/qa-tester/SKILL.md +142 -0
- package/.agent/skills/qa-tester/assets/README.md +8 -0
- package/.agent/skills/qa-tester/references/accessibility_testing.md +35 -0
- package/.agent/skills/qa-tester/references/agent_browser.md +38 -0
- package/.agent/skills/qa-tester/references/automation/api_testing.md +23 -0
- package/.agent/skills/qa-tester/references/automation/best_practices.md +14 -0
- package/.agent/skills/qa-tester/references/automation/jest_vitest.md +26 -0
- package/.agent/skills/qa-tester/references/automation/playwright.md +30 -0
- package/.agent/skills/qa-tester/references/e2e_testing.md +46 -0
- package/.agent/skills/qa-tester/references/integration_testing.md +39 -0
- package/.agent/skills/qa-tester/references/performance_testing.md +44 -0
- package/.agent/skills/qa-tester/references/property_based_testing.md +44 -0
- package/.agent/skills/qa-tester/references/security_audit.md +53 -0
- package/.agent/skills/qa-tester/references/security_testing.md +30 -0
- package/.agent/skills/qa-tester/references/sharp_edges.md +49 -0
- package/.agent/skills/qa-tester/references/static_analysis.md +52 -0
- package/.agent/skills/qa-tester/references/supply_chain_audit.md +54 -0
- package/.agent/skills/qa-tester/references/test_case_standards.md +96 -0
- package/.agent/skills/qa-tester/references/test_report_template.md +32 -0
- package/.agent/skills/qa-tester/references/unit_testing.md +50 -0
- package/.agent/skills/qa-tester/references/visual_testing.md +32 -0
- package/.agent/skills/qa-tester/templates/uat-plan.md +34 -0
- package/.agent/skills/research-first/SKILL.md +118 -0
- package/.agent/skills-manifest.json +264 -0
- package/.agent/workflows/absorb.md +176 -0
- package/.agent/workflows/bootstrap.md +91 -0
- package/.agent/workflows/brainstorm.md +168 -0
- package/.agent/workflows/break-tasks.md +77 -0
- package/.agent/workflows/commit.md +349 -0
- package/.agent/workflows/custom-behavior.md +64 -0
- package/.agent/workflows/debug.md +65 -0
- package/.agent/workflows/development.md +49 -0
- package/.agent/workflows/documentation.md +221 -0
- package/.agent/workflows/gen-tests.md +53 -0
- package/.agent/workflows/guide.md +196 -0
- package/.agent/workflows/implement-feature.md +182 -0
- package/.agent/workflows/install-skill.md +193 -0
- package/.agent/workflows/qa.md +54 -0
- package/.agent/workflows/ui-ux-design.md +108 -0
- package/LICENSE +21 -0
- package/README.md +258 -0
- package/cli/index.js +345 -0
- package/cli/migrate-skills.js +113 -0
- package/cli/verify.js +291 -0
- package/package.json +49 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
Skill Initializer - Creates a new skill from template
|
|
4
|
+
|
|
5
|
+
Usage:
|
|
6
|
+
init_skill.py <skill-name> --path <path>
|
|
7
|
+
|
|
8
|
+
Examples:
|
|
9
|
+
init_skill.py my-skill --path .agent/skills # Workspace skill
|
|
10
|
+
init_skill.py my-skill --path ~/.gemini/skills # Global skill
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
import sys
|
|
14
|
+
from pathlib import Path
|
|
15
|
+
|
|
16
|
+
from encoding_utils import configure_utf8_console, write_text_utf8
|
|
17
|
+
|
|
18
|
+
configure_utf8_console()
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
SKILL_TEMPLATE = """---
|
|
22
|
+
name: {skill_name}
|
|
23
|
+
description: [TODO: Describe what this skill does and when to use it. Include trigger keywords. 1-1024 chars]
|
|
24
|
+
# license: MIT
|
|
25
|
+
# compatibility: [Optional: environment requirements, 1-500 chars]
|
|
26
|
+
# metadata:
|
|
27
|
+
# author: your-name
|
|
28
|
+
# version: "1.0"
|
|
29
|
+
# allowed-tools: [Experimental: pre-approved tools list]
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# {skill_title}
|
|
33
|
+
|
|
34
|
+
[TODO: 1-2 sentences explaining what this skill enables]
|
|
35
|
+
|
|
36
|
+
## Workflow
|
|
37
|
+
|
|
38
|
+
[TODO: Step-by-step instructions for the agent]
|
|
39
|
+
|
|
40
|
+
1. **Step 1**: Description
|
|
41
|
+
2. **Step 2**: Description
|
|
42
|
+
3. **Step 3**: Description
|
|
43
|
+
|
|
44
|
+
## Examples
|
|
45
|
+
|
|
46
|
+
[TODO: Concrete examples with realistic user requests]
|
|
47
|
+
|
|
48
|
+
## Resources
|
|
49
|
+
|
|
50
|
+
- `scripts/` - Executable scripts for automation
|
|
51
|
+
- `references/` - Documentation loaded as needed
|
|
52
|
+
- `assets/` - Templates and files for output
|
|
53
|
+
|
|
54
|
+
Delete unused directories.
|
|
55
|
+
"""
|
|
56
|
+
|
|
57
|
+
EXAMPLE_SCRIPT = '''#!/usr/bin/env python3
|
|
58
|
+
"""
|
|
59
|
+
Example script for {skill_name}
|
|
60
|
+
|
|
61
|
+
Replace with actual implementation or delete if not needed.
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
def main():
|
|
65
|
+
print("Example script for {skill_name}")
|
|
66
|
+
# TODO: Add actual logic
|
|
67
|
+
|
|
68
|
+
if __name__ == "__main__":
|
|
69
|
+
main()
|
|
70
|
+
'''
|
|
71
|
+
|
|
72
|
+
EXAMPLE_REFERENCE = """# Reference: {skill_title}
|
|
73
|
+
|
|
74
|
+
[TODO: Add detailed documentation here]
|
|
75
|
+
|
|
76
|
+
## API Reference
|
|
77
|
+
|
|
78
|
+
[Document endpoints, functions, or schemas]
|
|
79
|
+
|
|
80
|
+
## Examples
|
|
81
|
+
|
|
82
|
+
[Provide code examples and usage patterns]
|
|
83
|
+
"""
|
|
84
|
+
|
|
85
|
+
EXAMPLE_ASSET = """# Asset Placeholder
|
|
86
|
+
|
|
87
|
+
Replace with actual assets (templates, images, fonts, etc.) or delete this file.
|
|
88
|
+
|
|
89
|
+
Common asset types:
|
|
90
|
+
- Templates: .pptx, .docx, boilerplate directories
|
|
91
|
+
- Images: .png, .jpg, .svg
|
|
92
|
+
- Data: .csv, .json, .yaml
|
|
93
|
+
"""
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def title_case_skill_name(skill_name):
|
|
97
|
+
"""Convert hyphenated skill name to Title Case."""
|
|
98
|
+
return ' '.join(word.capitalize() for word in skill_name.split('-'))
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
def init_skill(skill_name, path):
|
|
102
|
+
"""Initialize a new skill directory with template SKILL.md."""
|
|
103
|
+
skill_dir = Path(path).resolve() / skill_name
|
|
104
|
+
|
|
105
|
+
if skill_dir.exists():
|
|
106
|
+
print(f"❌ Error: Directory already exists: {skill_dir}")
|
|
107
|
+
return None
|
|
108
|
+
|
|
109
|
+
try:
|
|
110
|
+
skill_dir.mkdir(parents=True, exist_ok=False)
|
|
111
|
+
print(f"✅ Created: {skill_dir}")
|
|
112
|
+
except Exception as e:
|
|
113
|
+
print(f"❌ Error creating directory: {e}")
|
|
114
|
+
return None
|
|
115
|
+
|
|
116
|
+
# Create SKILL.md
|
|
117
|
+
skill_title = title_case_skill_name(skill_name)
|
|
118
|
+
skill_content = SKILL_TEMPLATE.format(
|
|
119
|
+
skill_name=skill_name,
|
|
120
|
+
skill_title=skill_title
|
|
121
|
+
)
|
|
122
|
+
|
|
123
|
+
skill_md_path = skill_dir / 'SKILL.md'
|
|
124
|
+
try:
|
|
125
|
+
write_text_utf8(skill_md_path, skill_content)
|
|
126
|
+
print("✅ Created SKILL.md")
|
|
127
|
+
except Exception as e:
|
|
128
|
+
print(f"❌ Error creating SKILL.md: {e}")
|
|
129
|
+
return None
|
|
130
|
+
|
|
131
|
+
# Create resource directories with examples
|
|
132
|
+
try:
|
|
133
|
+
# scripts/
|
|
134
|
+
scripts_dir = skill_dir / 'scripts'
|
|
135
|
+
scripts_dir.mkdir(exist_ok=True)
|
|
136
|
+
example_script = scripts_dir / 'example.py'
|
|
137
|
+
write_text_utf8(example_script, EXAMPLE_SCRIPT.format(skill_name=skill_name))
|
|
138
|
+
example_script.chmod(0o755)
|
|
139
|
+
print("✅ Created scripts/example.py")
|
|
140
|
+
|
|
141
|
+
# references/
|
|
142
|
+
references_dir = skill_dir / 'references'
|
|
143
|
+
references_dir.mkdir(exist_ok=True)
|
|
144
|
+
example_ref = references_dir / 'reference.md'
|
|
145
|
+
write_text_utf8(example_ref, EXAMPLE_REFERENCE.format(skill_title=skill_title))
|
|
146
|
+
print("✅ Created references/reference.md")
|
|
147
|
+
|
|
148
|
+
# assets/
|
|
149
|
+
assets_dir = skill_dir / 'assets'
|
|
150
|
+
assets_dir.mkdir(exist_ok=True)
|
|
151
|
+
example_asset = assets_dir / 'README.md'
|
|
152
|
+
write_text_utf8(example_asset, EXAMPLE_ASSET)
|
|
153
|
+
print("✅ Created assets/README.md")
|
|
154
|
+
except Exception as e:
|
|
155
|
+
print(f"❌ Error creating resources: {e}")
|
|
156
|
+
return None
|
|
157
|
+
|
|
158
|
+
print(f"\n✅ Skill '{skill_name}' initialized at {skill_dir}")
|
|
159
|
+
print("\nNext steps:")
|
|
160
|
+
print("1. Edit SKILL.md to complete TODO items")
|
|
161
|
+
print("2. Customize or delete example files")
|
|
162
|
+
print("3. Run: python scripts/quick_validate.py <skill-path>")
|
|
163
|
+
|
|
164
|
+
return skill_dir
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
def main():
|
|
168
|
+
if len(sys.argv) < 4 or sys.argv[2] != '--path':
|
|
169
|
+
print("Usage: init_skill.py <skill-name> --path <path>")
|
|
170
|
+
print("\nSkill name requirements:")
|
|
171
|
+
print(" - 1-64 characters")
|
|
172
|
+
print(" - Lowercase letters, digits, and hyphens only")
|
|
173
|
+
print(" - No starting/ending hyphens, no consecutive hyphens")
|
|
174
|
+
print("\nExamples:")
|
|
175
|
+
print(" init_skill.py my-skill --path .agent/skills")
|
|
176
|
+
print(" init_skill.py my-skill --path ~/.gemini/skills")
|
|
177
|
+
sys.exit(1)
|
|
178
|
+
|
|
179
|
+
skill_name = sys.argv[1]
|
|
180
|
+
path = sys.argv[3]
|
|
181
|
+
|
|
182
|
+
print(f"🚀 Initializing skill: {skill_name}")
|
|
183
|
+
print(f" Location: {path}\n")
|
|
184
|
+
|
|
185
|
+
result = init_skill(skill_name, path)
|
|
186
|
+
sys.exit(0 if result else 1)
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
if __name__ == "__main__":
|
|
190
|
+
main()
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
Skill Validator - Validates skill structure per Agent Skills spec
|
|
4
|
+
|
|
5
|
+
Usage:
|
|
6
|
+
python quick_validate.py <skill_directory>
|
|
7
|
+
|
|
8
|
+
Validates:
|
|
9
|
+
- SKILL.md exists with valid YAML frontmatter
|
|
10
|
+
- name: 1-64 chars, lowercase alphanumeric + hyphens, matches directory
|
|
11
|
+
- description: 1-1024 chars, no angle brackets
|
|
12
|
+
- Optional fields: license, compatibility (1-500 chars), metadata
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
import sys
|
|
16
|
+
import re
|
|
17
|
+
from pathlib import Path
|
|
18
|
+
|
|
19
|
+
from encoding_utils import configure_utf8_console, read_text_utf8
|
|
20
|
+
|
|
21
|
+
configure_utf8_console()
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def validate_skill(skill_path):
|
|
25
|
+
"""Validate a skill against Agent Skills specification."""
|
|
26
|
+
skill_path = Path(skill_path)
|
|
27
|
+
errors = []
|
|
28
|
+
warnings = []
|
|
29
|
+
|
|
30
|
+
# Check SKILL.md exists
|
|
31
|
+
skill_md = skill_path / 'SKILL.md'
|
|
32
|
+
if not skill_md.exists():
|
|
33
|
+
return False, "SKILL.md not found", []
|
|
34
|
+
|
|
35
|
+
content = read_text_utf8(skill_md)
|
|
36
|
+
|
|
37
|
+
# Check frontmatter exists
|
|
38
|
+
if not content.startswith('---'):
|
|
39
|
+
return False, "No YAML frontmatter found (must start with ---)", []
|
|
40
|
+
|
|
41
|
+
# Extract frontmatter
|
|
42
|
+
match = re.match(r'^---\n(.*?)\n---', content, re.DOTALL)
|
|
43
|
+
if not match:
|
|
44
|
+
return False, "Invalid frontmatter format (missing closing ---)", []
|
|
45
|
+
|
|
46
|
+
frontmatter = match.group(1)
|
|
47
|
+
|
|
48
|
+
# Validate name field (required)
|
|
49
|
+
name_match = re.search(r'^name:\s*(.+)$', frontmatter, re.MULTILINE)
|
|
50
|
+
if not name_match:
|
|
51
|
+
errors.append("Missing required 'name' field")
|
|
52
|
+
else:
|
|
53
|
+
name = name_match.group(1).strip()
|
|
54
|
+
|
|
55
|
+
# Length check: 1-64 characters
|
|
56
|
+
if len(name) < 1 or len(name) > 64:
|
|
57
|
+
errors.append(f"Name '{name}' must be 1-64 characters (got {len(name)})")
|
|
58
|
+
|
|
59
|
+
# Format check: lowercase alphanumeric + hyphens
|
|
60
|
+
if not re.match(r'^[a-z0-9-]+$', name):
|
|
61
|
+
errors.append(f"Name '{name}' must be lowercase alphanumeric with hyphens only")
|
|
62
|
+
|
|
63
|
+
# No invalid hyphen patterns
|
|
64
|
+
if name.startswith('-') or name.endswith('-'):
|
|
65
|
+
errors.append(f"Name '{name}' cannot start or end with hyphen")
|
|
66
|
+
if '--' in name:
|
|
67
|
+
errors.append(f"Name '{name}' cannot contain consecutive hyphens")
|
|
68
|
+
|
|
69
|
+
# Must match directory name
|
|
70
|
+
if name != skill_path.name:
|
|
71
|
+
errors.append(f"Name '{name}' must match directory name '{skill_path.name}'")
|
|
72
|
+
|
|
73
|
+
# Validate description field (required)
|
|
74
|
+
desc_match = re.search(r'^description:\s*(.+)$', frontmatter, re.MULTILINE)
|
|
75
|
+
if not desc_match:
|
|
76
|
+
errors.append("Missing required 'description' field")
|
|
77
|
+
else:
|
|
78
|
+
description = desc_match.group(1).strip()
|
|
79
|
+
|
|
80
|
+
# Length check: 1-1024 characters
|
|
81
|
+
if len(description) < 1:
|
|
82
|
+
errors.append("Description cannot be empty")
|
|
83
|
+
elif len(description) > 1024:
|
|
84
|
+
errors.append(f"Description exceeds 1024 characters (got {len(description)})")
|
|
85
|
+
|
|
86
|
+
# No angle brackets (common mistake)
|
|
87
|
+
if '<' in description or '>' in description:
|
|
88
|
+
errors.append("Description cannot contain angle brackets (< or >)")
|
|
89
|
+
|
|
90
|
+
# Warning for short descriptions
|
|
91
|
+
if len(description) < 50:
|
|
92
|
+
warnings.append(f"Description is short ({len(description)} chars). Consider adding more detail.")
|
|
93
|
+
|
|
94
|
+
# Validate optional compatibility field
|
|
95
|
+
compat_match = re.search(r'^compatibility:\s*(.+)$', frontmatter, re.MULTILINE)
|
|
96
|
+
if compat_match:
|
|
97
|
+
compatibility = compat_match.group(1).strip()
|
|
98
|
+
if len(compatibility) > 500:
|
|
99
|
+
errors.append(f"Compatibility exceeds 500 characters (got {len(compatibility)})")
|
|
100
|
+
|
|
101
|
+
if errors:
|
|
102
|
+
return False, "; ".join(errors), warnings
|
|
103
|
+
|
|
104
|
+
return True, "Skill is valid!", warnings
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
if __name__ == "__main__":
|
|
108
|
+
if len(sys.argv) != 2:
|
|
109
|
+
print("Usage: python quick_validate.py <skill_directory>")
|
|
110
|
+
sys.exit(1)
|
|
111
|
+
|
|
112
|
+
valid, message, warnings = validate_skill(sys.argv[1])
|
|
113
|
+
|
|
114
|
+
if warnings:
|
|
115
|
+
for w in warnings:
|
|
116
|
+
print(f"⚠️ Warning: {w}")
|
|
117
|
+
|
|
118
|
+
if valid:
|
|
119
|
+
print(f"✅ {message}")
|
|
120
|
+
else:
|
|
121
|
+
print(f"❌ {message}")
|
|
122
|
+
|
|
123
|
+
sys.exit(0 if valid else 1)
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# [PRD] Title of Feature
|
|
2
|
+
|
|
3
|
+
**Status**: Draft | In Review | Approved
|
|
4
|
+
**Owner**: @PM
|
|
5
|
+
**Date**: YYYY-MM-DD
|
|
6
|
+
|
|
7
|
+
## 1. Context & Goal
|
|
8
|
+
|
|
9
|
+
- **Problem**: What user problem are we solving? "As a [user], I cannot [action] because [roadblock]."
|
|
10
|
+
- **Goal**: What does success look like? (e.g., reduce support tickets by 20%)
|
|
11
|
+
- **Hypothesis**: If we build X, then Y will happen.
|
|
12
|
+
|
|
13
|
+
## 2. User Stories (Agile)
|
|
14
|
+
|
|
15
|
+
| ID | Story | Acceptance Criteria | Priority |
|
|
16
|
+
| ---- | -------------------------------------------------------- | -------------------------------- | -------- |
|
|
17
|
+
| US-1 | As a [role], I want to [action] so that [distinct value] | 1. Criterion A<br>2. Criterion B | Must |
|
|
18
|
+
| US-2 | ... | ... | Should |
|
|
19
|
+
|
|
20
|
+
## 3. Scope (In/Out)
|
|
21
|
+
|
|
22
|
+
- **In Scope**: Feature A, Feature B.
|
|
23
|
+
- **Out of Scope**: Mobile support (Phase 2), Localization.
|
|
24
|
+
|
|
25
|
+
## 4. Design & UX
|
|
26
|
+
|
|
27
|
+
- [Link to Figma/Mockups]
|
|
28
|
+
- Key Flows: Login -> Dashboard -> Settings.
|
|
29
|
+
|
|
30
|
+
## 5. Technical Constraints
|
|
31
|
+
|
|
32
|
+
- API latency requirements.
|
|
33
|
+
- Security/Permission requirements.
|
|
34
|
+
|
|
35
|
+
## 6. Analytics & Success Metrics
|
|
36
|
+
|
|
37
|
+
- **Primary Metric**: Conversion Rate.
|
|
38
|
+
- **Guardrail Metric**: Page Load Time.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Skill Requirements Questionnaire
|
|
2
|
+
|
|
3
|
+
> **For Agent:** This is a BASE TEMPLATE. You MUST customize with domain-specific questions before giving to user.
|
|
4
|
+
>
|
|
5
|
+
> **For User:** Fill in this form to help define your skill requirements clearly.
|
|
6
|
+
> Delete examples and replace with your answers.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Phase 1: Discovery (WHY & WHO)
|
|
11
|
+
|
|
12
|
+
### What specific problem needs to be solved?
|
|
13
|
+
|
|
14
|
+
<!-- Example: "I need a skill that helps write consistent unit tests for React components" -->
|
|
15
|
+
|
|
16
|
+
### Who will use this skill?
|
|
17
|
+
|
|
18
|
+
<!-- Options: agent, human, or both -->
|
|
19
|
+
|
|
20
|
+
### What triggers the need to create/upgrade this skill?
|
|
21
|
+
|
|
22
|
+
<!-- Example: "Current testing workflow is inconsistent across the team" -->
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Phase 2: Context (WHAT & WHERE)
|
|
27
|
+
|
|
28
|
+
### What is the specific domain?
|
|
29
|
+
|
|
30
|
+
<!-- Options: frontend, backend, devops, AI, blockchain, mobile, etc. -->
|
|
31
|
+
|
|
32
|
+
### What tech stack or frameworks are involved?
|
|
33
|
+
|
|
34
|
+
<!-- Example: "React, Jest, Testing Library, TypeScript" -->
|
|
35
|
+
|
|
36
|
+
### What constraints must be followed?
|
|
37
|
+
|
|
38
|
+
<!-- Example: "Must work with existing CI/CD pipeline, team of 5 developers" -->
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Phase 3: Scope (BOUNDARIES)
|
|
43
|
+
|
|
44
|
+
### What is IN scope?
|
|
45
|
+
|
|
46
|
+
<!-- List specific features/capabilities the skill MUST have -->
|
|
47
|
+
|
|
48
|
+
-
|
|
49
|
+
-
|
|
50
|
+
-
|
|
51
|
+
|
|
52
|
+
### What is OUT of scope?
|
|
53
|
+
|
|
54
|
+
<!-- List what the skill should NOT handle -->
|
|
55
|
+
|
|
56
|
+
-
|
|
57
|
+
-
|
|
58
|
+
-
|
|
59
|
+
|
|
60
|
+
### Upgrade type (for existing skills only)
|
|
61
|
+
|
|
62
|
+
<!-- Options: Minor Update / Major Upgrade / Restructure -->
|
|
63
|
+
|
|
64
|
+
### Dependencies with other skills/tools?
|
|
65
|
+
|
|
66
|
+
<!-- List any skills or tools this should integrate with -->
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Phase 4: Quality (STANDARDS)
|
|
71
|
+
|
|
72
|
+
### What level of expertise should this skill embody?
|
|
73
|
+
|
|
74
|
+
<!-- Options: junior, senior, expert (20+ years) -->
|
|
75
|
+
|
|
76
|
+
### Design Principle: Separation of Concerns
|
|
77
|
+
|
|
78
|
+
<!-- Reminder:
|
|
79
|
+
- Skill = Knowledge (Capabilities, Standards, Best Practices)
|
|
80
|
+
- Workflow = Process (Steps, Sequences, Lifecycles)
|
|
81
|
+
Do NOT ask for "Process" definitions here. Focus on "Knowledge".
|
|
82
|
+
-->
|
|
83
|
+
|
|
84
|
+
### Which best practices must be followed?
|
|
85
|
+
|
|
86
|
+
<!-- Example: "Follow Testing Trophy pattern, AAA structure for tests" -->
|
|
87
|
+
|
|
88
|
+
### What edge cases need to be handled?
|
|
89
|
+
|
|
90
|
+
<!-- List specific edge cases or error scenarios -->
|
|
91
|
+
|
|
92
|
+
-
|
|
93
|
+
-
|
|
94
|
+
- ***
|
|
95
|
+
|
|
96
|
+
## Phase 5: Validation (SUCCESS CRITERIA)
|
|
97
|
+
|
|
98
|
+
### What are the acceptance criteria?
|
|
99
|
+
|
|
100
|
+
<!-- List specific, measurable criteria for success -->
|
|
101
|
+
|
|
102
|
+
- [ ]
|
|
103
|
+
- [ ]
|
|
104
|
+
- [ ]
|
|
105
|
+
|
|
106
|
+
### How do we know the skill works correctly?
|
|
107
|
+
|
|
108
|
+
<!-- Example: "Successfully generates tests that pass CI, covers >80% of cases" -->
|
|
109
|
+
|
|
110
|
+
### What metrics measure improvement?
|
|
111
|
+
|
|
112
|
+
<!-- Example: "Time to write tests reduced by 50%, test coverage increased" -->
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Additional Notes
|
|
117
|
+
|
|
118
|
+
<!-- Any other context, examples, or references that would help -->
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
**Title**: [Action] - [Persona]
|
|
2
|
+
**Story**: As a **Guest User**, I want to **view specific product details** so that I can **make a purchase decision**.
|
|
3
|
+
|
|
4
|
+
**Acceptance Criteria**:
|
|
5
|
+
|
|
6
|
+
1. [ ] Clicking "View" on a product card opens the detail page.
|
|
7
|
+
2. [ ] Detail page shows Price, Title, Description, and "Add to Cart".
|
|
8
|
+
3. [ ] If product is OOS, "Add to Cart" is disabled.
|
|
9
|
+
|
|
10
|
+
**Definition of Done**:
|
|
11
|
+
|
|
12
|
+
- Unit tests passed.
|
|
13
|
+
- UI matches Figma.
|
|
14
|
+
- Accessibility tags checked.
|