@raishin/vanguard-frontier-agentic 1.7.1 → 1.9.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/.agents/plugins/README.md +87 -0
- package/.agents/plugins/marketplace.json +32 -0
- package/.claude-plugin/README.md +60 -0
- package/.claude-plugin/marketplace.json +29 -0
- package/.claude-plugin/plugin.json +365 -0
- package/.cursor-plugin/README.md +51 -0
- package/.cursor-plugin/plugin.json +364 -0
- package/.github/plugin/README.md +64 -0
- package/.github/plugin/marketplace.json +17 -0
- package/README.md +301 -3
- package/agents/alibaba/README.md +17 -0
- package/agents/contabo/contabo-capacity-planner-agent/metadata.json +15 -4
- package/agents/contabo/contabo-cost-optimization-analyst-agent/metadata.json +15 -4
- package/agents/contabo/contabo-live-instance-lifecycle-guard-agent/metadata.json +15 -4
- package/agents/contabo/contabo-live-storage-operations-guard-agent/metadata.json +15 -4
- package/agents/contabo/contabo-maestro-agent/metadata.json +15 -4
- package/agents/contabo/contabo-security-hardening-agent/metadata.json +15 -4
- package/agents/finops/AGENTS.md +19 -9
- package/agents/finops/README.md +75 -5
- package/agents/finops/finops-ai-economist-agent/AGENT.md +71 -0
- package/agents/finops/finops-ai-economist-agent/PERMISSIONS.md +138 -0
- package/agents/finops/finops-ai-economist-agent/README.md +27 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/claude-code.agent.md +50 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/codex.toml +40 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/copilot.agent.md +58 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/cursor.agent.md +50 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/gemini.agent.md +50 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/kiro-cli.agent.json +1 -0
- package/agents/finops/finops-ai-economist-agent/harnesses/kiro-ide.agent.md +50 -0
- package/agents/finops/finops-ai-economist-agent/metadata.json +45 -0
- package/agents/finops/finops-cloud-price-advisor-agent/AGENT.md +4 -3
- package/agents/finops/finops-cloud-price-advisor-agent/PERMISSIONS.md +46 -0
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/claude-code.agent.md +2 -2
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/codex.toml +3 -3
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/copilot.agent.md +2 -2
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/cursor.agent.md +2 -2
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/gemini.agent.md +2 -2
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/kiro-cli.agent.json +1 -1
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/kiro-ide.agent.md +2 -2
- package/agents/finops/finops-cloud-price-advisor-agent/metadata.json +14 -5
- package/agents/finops/finops-kubernetes-rightsizer-agent/AGENT.md +102 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/PERMISSIONS.md +143 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/README.md +37 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/claude-code.agent.md +46 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/codex.toml +47 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/copilot.agent.md +54 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/cursor.agent.md +46 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/gemini.agent.md +46 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/kiro-cli.agent.json +1 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/kiro-ide.agent.md +46 -0
- package/agents/finops/finops-kubernetes-rightsizer-agent/metadata.json +46 -0
- package/agents/finops/finops-maestro-agent/AGENT.md +61 -0
- package/agents/finops/finops-maestro-agent/PERMISSIONS.md +64 -0
- package/agents/finops/finops-maestro-agent/README.md +52 -0
- package/agents/finops/finops-maestro-agent/harnesses/claude-code.agent.md +42 -0
- package/agents/finops/finops-maestro-agent/harnesses/codex.toml +34 -0
- package/agents/finops/finops-maestro-agent/harnesses/copilot.agent.md +49 -0
- package/agents/finops/finops-maestro-agent/harnesses/cursor.agent.md +42 -0
- package/agents/finops/finops-maestro-agent/harnesses/gemini.agent.md +42 -0
- package/agents/finops/finops-maestro-agent/harnesses/kiro-cli.agent.json +1 -0
- package/agents/finops/finops-maestro-agent/harnesses/kiro-ide.agent.md +42 -0
- package/agents/finops/finops-maestro-agent/metadata.json +38 -0
- package/agents/hetzner/hetzner-capacity-planner-agent/metadata.json +15 -4
- package/agents/hetzner/hetzner-cost-optimization-analyst-agent/metadata.json +15 -4
- package/agents/hetzner/hetzner-infrastructure-reviewer-agent/metadata.json +15 -4
- package/agents/hetzner/hetzner-live-firewall-rule-guard-agent/metadata.json +15 -4
- package/agents/hetzner/hetzner-live-server-lifecycle-guard-agent/metadata.json +15 -4
- package/agents/hetzner/hetzner-maestro-agent/metadata.json +15 -4
- package/agents/huawei/README.md +17 -0
- package/agents/nvidia/README.md +53 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-ai-operations-day2-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/AGENT.md +53 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/claude-code.agent.md +30 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/codex.toml +27 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/copilot.agent.md +30 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/cursor.agent.md +30 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/gemini.agent.md +30 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/kiro-cli.agent.json +20 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/kiro-ide.agent.md +30 -0
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/metadata.json +40 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-maestro-agent/AGENT.md +55 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/codex.toml +34 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/copilot.agent.md +52 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/cursor.agent.md +40 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/gemini.agent.md +39 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/nvidia/nvidia-maestro-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/nvidia/nvidia-maestro-agent/metadata.json +40 -0
- package/agents/nvidia/nvidia-model-promotion-gatekeeper-agent/AGENT.md +78 -0
- package/agents/nvidia/nvidia-model-promotion-gatekeeper-agent/harnesses/claude-code.agent.md +37 -0
- package/agents/nvidia/nvidia-model-promotion-gatekeeper-agent/harnesses/cursor.agent.md +37 -0
- package/agents/nvidia/nvidia-model-promotion-gatekeeper-agent/metadata.json +35 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/AGENT.md +51 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/claude-code.agent.md +28 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/codex.toml +26 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/copilot.agent.md +28 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/cursor.agent.md +28 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/gemini.agent.md +28 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/kiro-cli.agent.json +18 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/kiro-ide.agent.md +28 -0
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/metadata.json +42 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/AGENT.md +53 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/claude-code.agent.md +30 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/codex.toml +27 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/copilot.agent.md +30 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/cursor.agent.md +30 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/gemini.agent.md +30 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/kiro-cli.agent.json +20 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/kiro-ide.agent.md +30 -0
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/metadata.json +40 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/AGENT.md +53 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/claude-code.agent.md +30 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/codex.toml +27 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/copilot.agent.md +30 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/cursor.agent.md +30 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/gemini.agent.md +30 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/kiro-cli.agent.json +20 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/kiro-ide.agent.md +30 -0
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/metadata.json +40 -0
- package/catalog/agents.json +707 -29
- package/catalog/asset-integrity.json +20301 -0
- package/catalog/install-roles.json +215 -39
- package/catalog/skill-manifest.json +456 -13
- package/catalog/skills.json +554 -6
- package/mcp/official/aws-mcp-servers.metadata.json +16 -2
- package/mcp/official/azure-mcp-server.metadata.json +16 -2
- package/mcp/official/oracle-mcp-servers.metadata.json +16 -2
- package/package.json +27 -4
- package/plugins/cross-platform-agent-template/.codex-plugin/plugin.json +0 -1
- package/plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json +46 -0
- package/powers/README.md +104 -0
- package/powers/vanguard-alibaba/POWER.md +47 -0
- package/powers/vanguard-aws/POWER.md +46 -0
- package/powers/vanguard-azure/POWER.md +48 -0
- package/powers/vanguard-contabo/POWER.md +42 -0
- package/powers/vanguard-gcp/POWER.md +47 -0
- package/powers/vanguard-hetzner/POWER.md +42 -0
- package/powers/vanguard-huawei/POWER.md +47 -0
- package/powers/vanguard-ionos/POWER.md +41 -0
- package/powers/vanguard-kubernetes/POWER.md +48 -0
- package/powers/vanguard-nvidia/POWER.md +42 -0
- package/powers/vanguard-oci/POWER.md +48 -0
- package/powers/vanguard-ovhcloud/POWER.md +41 -0
- package/powers/vanguard-scaleway/POWER.md +41 -0
- package/powers/vanguard-terraform/POWER.md +42 -0
- package/schemas/agent.schema.json +13 -0
- package/schemas/attestation.schema.json +157 -0
- package/schemas/mcp-reference.schema.json +36 -0
- package/schemas/skill.frontmatter.schema.json +42 -1
- package/scripts/export-marketplace-agents.mjs +81 -7
- package/scripts/generate-cursor-plugin.mjs +130 -0
- package/scripts/generate-kiro-powers.mjs +324 -0
- package/scripts/generate-plugin-manifest.mjs +151 -0
- package/scripts/release-prepare.mjs +88 -0
- package/skills/claude/README.md +7 -0
- package/skills/claude/add-educational-comments/SKILL.md +138 -0
- package/skills/claude/add-educational-comments/metadata.json +26 -0
- package/skills/finops/README.md +60 -9
- package/skills/finops/carbon-cost-pair/README.md +25 -0
- package/skills/finops/carbon-cost-pair/SKILL.md +96 -0
- package/skills/finops/carbon-cost-pair/metadata.json +27 -0
- package/skills/finops/carbon-cost-pair/references/methodology.md +78 -0
- package/skills/finops/carbon-cost-pair/references/sources.md +103 -0
- package/skills/finops/fetch-foundation-model-pricing/README.md +25 -0
- package/skills/finops/fetch-foundation-model-pricing/SKILL.md +85 -0
- package/skills/finops/fetch-foundation-model-pricing/metadata.json +30 -0
- package/skills/finops/fetch-foundation-model-pricing/references/providers.md +88 -0
- package/skills/finops/fetch-foundation-model-pricing/references/token-economics.md +94 -0
- package/skills/finops/finops-cloud-price-advisor/SKILL.md +25 -16
- package/skills/finops/finops-cloud-price-advisor/metadata.json +11 -5
- package/skills/finops/finops-cloud-price-advisor/references/currency-handling.md +73 -0
- package/skills/finops/finops-cloud-price-advisor/references/estimation-workflow.md +106 -7
- package/skills/finops/finops-cloud-price-advisor/references/official-sources.md +71 -0
- package/skills/finops/finops-cloud-price-advisor/references/pricing-apis.md +299 -10
- package/skills/finops/finops-cloud-price-advisor/references/provider-fallbacks.md +400 -0
- package/skills/finops/finops-maestro/README.md +27 -0
- package/skills/finops/finops-maestro/SKILL.md +49 -0
- package/skills/finops/finops-maestro/metadata.json +26 -0
- package/skills/finops/finops-maestro/references/safety-checklist.md +67 -0
- package/skills/finops/finops-maestro/references/workflow-and-output.md +107 -0
- package/skills/finops/focus-spec-normalizer/README.md +25 -0
- package/skills/finops/focus-spec-normalizer/SKILL.md +113 -0
- package/skills/finops/focus-spec-normalizer/metadata.json +26 -0
- package/skills/finops/focus-spec-normalizer/references/focus-columns.md +69 -0
- package/skills/finops/focus-spec-normalizer/references/vendor-mapping.md +229 -0
- package/skills/finops/kubernetes-allocation-report/README.md +23 -0
- package/skills/finops/kubernetes-allocation-report/SKILL.md +95 -0
- package/skills/finops/kubernetes-allocation-report/metadata.json +26 -0
- package/skills/finops/kubernetes-allocation-report/references/attribution-workflow.md +90 -0
- package/skills/finops/kubernetes-allocation-report/references/opencost-mapping.md +70 -0
- package/skills/finops/rightsize-recommendation/README.md +23 -0
- package/skills/finops/rightsize-recommendation/SKILL.md +139 -0
- package/skills/finops/rightsize-recommendation/metadata.json +27 -0
- package/skills/finops/rightsize-recommendation/references/karpenter-consolidation.md +79 -0
- package/skills/finops/rightsize-recommendation/references/metric-sources.md +124 -0
- package/skills/nvidia/README.md +79 -0
- package/skills/nvidia/nvidia-agentic-ai-platform-review/SKILL.md +38 -0
- package/skills/nvidia/nvidia-agentic-ai-platform-review/metadata.json +34 -0
- package/skills/nvidia/nvidia-ai-infrastructure-operations/SKILL.md +43 -0
- package/skills/nvidia/nvidia-ai-infrastructure-operations/metadata.json +22 -0
- package/skills/nvidia/nvidia-ai-networking-fabric-review/SKILL.md +37 -0
- package/skills/nvidia/nvidia-ai-networking-fabric-review/metadata.json +34 -0
- package/skills/nvidia/nvidia-ai-operations-day2/SKILL.md +37 -0
- package/skills/nvidia/nvidia-ai-operations-day2/metadata.json +25 -0
- package/skills/nvidia/nvidia-cuda-kernel-performance-review/SKILL.md +36 -0
- package/skills/nvidia/nvidia-cuda-kernel-performance-review/metadata.json +30 -0
- package/skills/nvidia/nvidia-generative-ai-platform-review/SKILL.md +38 -0
- package/skills/nvidia/nvidia-generative-ai-platform-review/metadata.json +36 -0
- package/skills/nvidia/nvidia-gpu-operator-kubernetes-hardening/SKILL.md +38 -0
- package/skills/nvidia/nvidia-gpu-operator-kubernetes-hardening/metadata.json +32 -0
- package/skills/nvidia/nvidia-maestro/SKILL.md +50 -0
- package/skills/nvidia/nvidia-maestro/metadata.json +28 -0
- package/skills/nvidia/nvidia-maestro/references/official-sources.md +54 -0
- package/skills/nvidia/nvidia-maestro/references/safety-checklist.md +41 -0
- package/skills/nvidia/nvidia-maestro/references/workflow-and-output.md +121 -0
- package/skills/nvidia/nvidia-model-promotion-gatekeeper/SKILL.md +90 -0
- package/skills/nvidia/nvidia-model-promotion-gatekeeper/metadata.json +30 -0
- package/skills/nvidia/nvidia-model-promotion-gatekeeper/references/allowlist-commands.md +44 -0
- package/skills/nvidia/nvidia-model-promotion-gatekeeper/references/attestation-format.md +84 -0
- package/skills/nvidia/nvidia-ngc-nim-supply-chain-governor/SKILL.md +41 -0
- package/skills/nvidia/nvidia-ngc-nim-supply-chain-governor/metadata.json +32 -0
- package/skills/nvidia/nvidia-tensorrt-llm-deployment-review/SKILL.md +35 -0
- package/skills/nvidia/nvidia-tensorrt-llm-deployment-review/metadata.json +30 -0
- package/skills/nvidia/nvidia-triton-inference-serving-review/SKILL.md +36 -0
- package/skills/nvidia/nvidia-triton-inference-serving-review/metadata.json +30 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Generate .claude-plugin/plugin.json from catalog/agents.json.
|
|
4
|
+
*
|
|
5
|
+
* The Claude Code plugin spec lets a manifest declare its agents via an
|
|
6
|
+
* explicit array of file paths (see code.claude.com/docs/en/plugins-reference,
|
|
7
|
+
* field `agents`). The repo's agents live at
|
|
8
|
+
* agents/<provider>/<agent>/harnesses/claude-code.agent.md
|
|
9
|
+
* which is one nesting level deeper than the conventional flat
|
|
10
|
+
* agents/<agent>.md
|
|
11
|
+
* Rather than restructuring the catalog (which would break the multi-harness
|
|
12
|
+
* design and the npm package layout), this script enumerates every
|
|
13
|
+
* claude-code adapter file and writes it into plugin.json's `agents` array.
|
|
14
|
+
*
|
|
15
|
+
* Output is sorted and deterministic so the manifest is reproducible across
|
|
16
|
+
* runs and reviewable in PR diffs.
|
|
17
|
+
*
|
|
18
|
+
* Mode:
|
|
19
|
+
* --check exit 1 if the on-disk manifest does not match the generated one
|
|
20
|
+
* (default) overwrite the on-disk manifest
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
import { readFileSync, writeFileSync, existsSync } from "node:fs";
|
|
24
|
+
import { dirname, isAbsolute, join, relative, sep } from "node:path";
|
|
25
|
+
import { fileURLToPath } from "node:url";
|
|
26
|
+
|
|
27
|
+
const repoRoot = join(dirname(fileURLToPath(import.meta.url)), "..");
|
|
28
|
+
const catalogPath = join(repoRoot, "catalog", "agents.json");
|
|
29
|
+
const skillManifestPath = join(repoRoot, "catalog", "skill-manifest.json");
|
|
30
|
+
const manifestPath = join(repoRoot, ".claude-plugin", "plugin.json");
|
|
31
|
+
const pkgPath = join(repoRoot, "package.json");
|
|
32
|
+
|
|
33
|
+
const check = process.argv.includes("--check");
|
|
34
|
+
|
|
35
|
+
const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
|
|
36
|
+
const catalog = JSON.parse(readFileSync(catalogPath, "utf8"));
|
|
37
|
+
|
|
38
|
+
function manifestPathForAdapter(entry, adapter) {
|
|
39
|
+
// Note 1: Treat catalog paths as untrusted input. Even though this repo
|
|
40
|
+
// owns catalog/agents.json, release tooling should fail closed because a
|
|
41
|
+
// future PR can change metadata without touching the generator itself.
|
|
42
|
+
if (
|
|
43
|
+
typeof adapter !== "string"
|
|
44
|
+
|| adapter.trim() === ""
|
|
45
|
+
|| isAbsolute(adapter)
|
|
46
|
+
) {
|
|
47
|
+
throw new Error(
|
|
48
|
+
`Agent ${entry.id} has an invalid claude-code harness path: ${adapter}`,
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
// Note 2: Joining against repoRoot normalizes ordinary relative paths, but
|
|
52
|
+
// it does not by itself prove containment. For example, "../x" resolves
|
|
53
|
+
// successfully; the relative() check below is what detects the escape.
|
|
54
|
+
const resolved = join(repoRoot, adapter);
|
|
55
|
+
const rel = relative(repoRoot, resolved);
|
|
56
|
+
// Note 3: A path is inside repoRoot only when the normalized relative path
|
|
57
|
+
// is not "..", does not start with "../", and is not absolute. This mirrors
|
|
58
|
+
// the defensive pattern used by the export CLI for install destinations.
|
|
59
|
+
if (rel === "" || rel.startsWith(`..${sep}`) || rel === ".." || isAbsolute(rel)) {
|
|
60
|
+
throw new Error(
|
|
61
|
+
`Agent ${entry.id} claude-code harness path escapes the repository: ${adapter}`,
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
// Note 4: Plugin manifests use POSIX-style paths even when generated on
|
|
65
|
+
// Windows, so split/join converts platform separators into stable JSON.
|
|
66
|
+
return `./${rel.split(sep).join("/")}`;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
const agentEntries = catalog
|
|
70
|
+
.filter((entry) => entry.type === "agent")
|
|
71
|
+
.filter((entry) => Array.isArray(entry.harnesses) && entry.harnesses.includes("claude-code"))
|
|
72
|
+
.map((entry) => {
|
|
73
|
+
const adapter = entry.harness_variants?.["claude-code"]
|
|
74
|
+
?? `${entry.path}/harnesses/claude-code.agent.md`;
|
|
75
|
+
return manifestPathForAdapter(entry, adapter);
|
|
76
|
+
})
|
|
77
|
+
.sort();
|
|
78
|
+
|
|
79
|
+
// Validate every adapter file actually exists. A missing adapter would let
|
|
80
|
+
// Claude Code register a phantom agent that errors on first invocation.
|
|
81
|
+
const missing = agentEntries.filter((p) => !existsSync(join(repoRoot, p)));
|
|
82
|
+
if (missing.length > 0) {
|
|
83
|
+
console.error("ERROR: plugin manifest references files that do not exist:");
|
|
84
|
+
missing.forEach((p) => console.error(" " + p));
|
|
85
|
+
process.exit(2);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Skills are nested under skills/<provider>/<skill>/SKILL.md. Claude Code's
|
|
89
|
+
// plugin loader expects skills/<skill>/SKILL.md (one level less). Until
|
|
90
|
+
// the skill tree is flattened or Claude Code adds nested discovery, we
|
|
91
|
+
// omit `skills` from the manifest to avoid silently shipping zero skills
|
|
92
|
+
// under a misleading declaration. The catalog/skill-manifest.json remains
|
|
93
|
+
// authoritative for the npm install path.
|
|
94
|
+
const skillCount = existsSync(skillManifestPath)
|
|
95
|
+
? JSON.parse(readFileSync(skillManifestPath, "utf8")).length ?? 0
|
|
96
|
+
: 0;
|
|
97
|
+
|
|
98
|
+
const manifest = {
|
|
99
|
+
name: "vanguard-frontier-agentic",
|
|
100
|
+
version: pkg.version,
|
|
101
|
+
description: pkg.description,
|
|
102
|
+
author: {
|
|
103
|
+
name: "Raishin",
|
|
104
|
+
url: "https://github.com/Raishin",
|
|
105
|
+
},
|
|
106
|
+
homepage: "https://github.com/Raishin/vanguard-frontier-agentic",
|
|
107
|
+
repository: "https://github.com/Raishin/vanguard-frontier-agentic",
|
|
108
|
+
license: pkg.license,
|
|
109
|
+
keywords: [
|
|
110
|
+
"agentic",
|
|
111
|
+
"agents",
|
|
112
|
+
"marketplace",
|
|
113
|
+
"cloud",
|
|
114
|
+
"aws",
|
|
115
|
+
"azure",
|
|
116
|
+
"gcp",
|
|
117
|
+
"oci",
|
|
118
|
+
"alibaba",
|
|
119
|
+
"huawei",
|
|
120
|
+
"kubernetes",
|
|
121
|
+
"terraform",
|
|
122
|
+
"zero-trust",
|
|
123
|
+
"compliance",
|
|
124
|
+
"claude-code",
|
|
125
|
+
],
|
|
126
|
+
agents: agentEntries,
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
const next = JSON.stringify(manifest, null, 2) + "\n";
|
|
130
|
+
|
|
131
|
+
if (check) {
|
|
132
|
+
if (!existsSync(manifestPath)) {
|
|
133
|
+
console.error(`ERROR: ${manifestPath} is missing; run npm run plugin-manifest:write`);
|
|
134
|
+
process.exit(1);
|
|
135
|
+
}
|
|
136
|
+
const current = readFileSync(manifestPath, "utf8");
|
|
137
|
+
if (current !== next) {
|
|
138
|
+
console.error(
|
|
139
|
+
`ERROR: ${relative(repoRoot, manifestPath)} is stale (${agentEntries.length} agents in catalog, manifest is out of sync); run npm run plugin-manifest:write`,
|
|
140
|
+
);
|
|
141
|
+
process.exit(1);
|
|
142
|
+
}
|
|
143
|
+
console.log(
|
|
144
|
+
`OK: plugin manifest is in sync (${agentEntries.length} agents, ${skillCount} skills tracked in catalog/skill-manifest.json)`,
|
|
145
|
+
);
|
|
146
|
+
} else {
|
|
147
|
+
writeFileSync(manifestPath, next);
|
|
148
|
+
console.log(
|
|
149
|
+
`OK: wrote ${relative(repoRoot, manifestPath)} (${agentEntries.length} agents)`,
|
|
150
|
+
);
|
|
151
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Semantic-release prepare-step bridge.
|
|
4
|
+
*
|
|
5
|
+
* Runs AFTER `@semantic-release/npm` writes the bumped version to
|
|
6
|
+
* `package.json`, and BEFORE `@semantic-release/npm` packs+publishes the
|
|
7
|
+
* tarball. Synchronizes every published artifact whose content depends on
|
|
8
|
+
* `package.json.version` or on file hashes that include `package.json`:
|
|
9
|
+
*
|
|
10
|
+
* 1. .claude-plugin/plugin.json — version-parity (validate:plugin-manifest)
|
|
11
|
+
* 2. .cursor-plugin/plugin.json — version-parity (validate:multi-harness-marketplace)
|
|
12
|
+
* 3. plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json
|
|
13
|
+
* — version-parity (validate:codex-marketplace)
|
|
14
|
+
* 4. catalog/asset-integrity.json — includes package.json sha256
|
|
15
|
+
*
|
|
16
|
+
* Without this step the released tarball would ship plugin manifests whose
|
|
17
|
+
* version diverges from `package.json` (breaks every harness's version-parity
|
|
18
|
+
* gate) and an asset-integrity manifest whose package.json hash no longer
|
|
19
|
+
* matches the released tree (breaks downstream attestation verification).
|
|
20
|
+
*
|
|
21
|
+
* Idempotent: re-running on an already-synced tree is a no-op.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
import { readFileSync, writeFileSync } from "node:fs";
|
|
25
|
+
import { spawnSync } from "node:child_process";
|
|
26
|
+
import { dirname, join } from "node:path";
|
|
27
|
+
import { fileURLToPath } from "node:url";
|
|
28
|
+
|
|
29
|
+
const REPO = dirname(dirname(fileURLToPath(import.meta.url)));
|
|
30
|
+
const PKG = JSON.parse(readFileSync(join(REPO, "package.json"), "utf8"));
|
|
31
|
+
const NEXT_VERSION = process.argv[2] || PKG.version;
|
|
32
|
+
|
|
33
|
+
// Defense-in-depth: reject non-semver version strings before they are
|
|
34
|
+
// written into plugin JSON files. The primary caller (@semantic-release/exec)
|
|
35
|
+
// always supplies a strict semver string, but manual invocations have no
|
|
36
|
+
// other guard. JSON.stringify escapes the value safely, so there is no
|
|
37
|
+
// injection risk, but a bogus string would silently corrupt plugin manifests.
|
|
38
|
+
if (!/^\d+\.\d+\.\d+(-[\w.]+)?(\+[\w.]+)?$/.test(NEXT_VERSION)) {
|
|
39
|
+
console.error(`[release-prepare] Refusing unsafe version string: ${NEXT_VERSION}`);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const VERSION_PINNED_PLUGINS = [
|
|
44
|
+
".claude-plugin/plugin.json",
|
|
45
|
+
".cursor-plugin/plugin.json",
|
|
46
|
+
"plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json",
|
|
47
|
+
];
|
|
48
|
+
|
|
49
|
+
function syncPluginVersion(relPath) {
|
|
50
|
+
const abs = join(REPO, relPath);
|
|
51
|
+
const data = JSON.parse(readFileSync(abs, "utf8"));
|
|
52
|
+
if (data.version === NEXT_VERSION) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
data.version = NEXT_VERSION;
|
|
56
|
+
writeFileSync(abs, JSON.stringify(data, null, 2) + "\n", "utf8");
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function regenerate(cmd, args) {
|
|
61
|
+
const result = spawnSync(cmd, args, { cwd: REPO, stdio: "inherit" });
|
|
62
|
+
if (result.status !== 0) {
|
|
63
|
+
process.exit(result.status ?? 1);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
console.log(`[release-prepare] syncing artifacts to version ${NEXT_VERSION}`);
|
|
68
|
+
|
|
69
|
+
let touched = 0;
|
|
70
|
+
for (const rel of VERSION_PINNED_PLUGINS) {
|
|
71
|
+
if (syncPluginVersion(rel)) {
|
|
72
|
+
console.log(`[release-prepare] updated ${rel}`);
|
|
73
|
+
touched += 1;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Re-run the Claude Code + Cursor manifest generators so any other
|
|
78
|
+
// catalog-derived fields (agents[] list, etc.) stay in sync alongside
|
|
79
|
+
// the version bump.
|
|
80
|
+
regenerate("node", ["scripts/generate-plugin-manifest.mjs"]);
|
|
81
|
+
regenerate("node", ["scripts/generate-cursor-plugin.mjs"]);
|
|
82
|
+
|
|
83
|
+
// Regenerate the cross-asset integrity manifest LAST so it covers the
|
|
84
|
+
// freshly bumped package.json plus the freshly synchronized plugin
|
|
85
|
+
// manifests.
|
|
86
|
+
regenerate("python3", ["tests/validate-asset-integrity.py", "--write"]);
|
|
87
|
+
|
|
88
|
+
console.log(`[release-prepare] done (touched ${touched} plugin manifests)`);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Claude Skills
|
|
2
|
+
|
|
3
|
+
Skills designed to enhance Claude's capabilities in code education, analysis, and development workflows.
|
|
4
|
+
|
|
5
|
+
## Skills Included
|
|
6
|
+
|
|
7
|
+
- `add-educational-comments` — Transform code files into effective learning resources by adding contextual educational comments tailored to learner knowledge levels and educational goals.
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: add-educational-comments
|
|
3
|
+
description: Add educational comments to code files to transform them into effective learning resources. Explains the "why" behind syntax, idioms, and design choices, aligned with the learner's knowledge level and educational goals.
|
|
4
|
+
allowed-tools: Read Write Edit Bash
|
|
5
|
+
metadata:
|
|
6
|
+
author: "Claude"
|
|
7
|
+
version: "1.0.0"
|
|
8
|
+
updated: "2026-05-11"
|
|
9
|
+
category: delivery
|
|
10
|
+
lifecycle: stable
|
|
11
|
+
execution_tier: local
|
|
12
|
+
output_format: annotated-code
|
|
13
|
+
eval_fixtures: tests/fixtures/add-educational-comments/
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Add Educational Comments
|
|
17
|
+
|
|
18
|
+
Add educational comments to code files so they become effective learning resources. When no file is provided, request one and offer a numbered list of close matches for quick selection.
|
|
19
|
+
|
|
20
|
+
## Role
|
|
21
|
+
|
|
22
|
+
You are an expert educator and technical writer. You can explain programming topics to beginners, intermediate learners, and advanced practitioners. You adapt tone and detail to match the user's configured knowledge levels while keeping guidance encouraging and instructional.
|
|
23
|
+
|
|
24
|
+
- Provide foundational explanations for beginners
|
|
25
|
+
- Add practical insights and best practices for intermediate users
|
|
26
|
+
- Offer deeper context (performance, architecture, language internals) for advanced users
|
|
27
|
+
- Suggest improvements only when they meaningfully support understanding
|
|
28
|
+
- Always obey the **Educational Commenting Rules**
|
|
29
|
+
|
|
30
|
+
## Objectives
|
|
31
|
+
|
|
32
|
+
1. Transform the provided file by adding educational comments aligned with the configuration.
|
|
33
|
+
2. Maintain the file's structure, encoding, and build correctness.
|
|
34
|
+
3. Increase the total line count by **125%** using educational comments only (up to 400 new lines). For files already processed with this prompt, update existing notes instead of reapplying the 125% rule.
|
|
35
|
+
|
|
36
|
+
### Line Count Guidance
|
|
37
|
+
|
|
38
|
+
- Default: add lines so the file reaches 125% of its original length.
|
|
39
|
+
- Hard limit: never add more than 400 educational comment lines.
|
|
40
|
+
- Large files: when the file exceeds 1,000 lines, aim for no more than 300 educational comment lines.
|
|
41
|
+
- Previously processed files: revise and improve current comments; do not chase the 125% increase again.
|
|
42
|
+
|
|
43
|
+
## Educational Commenting Rules
|
|
44
|
+
|
|
45
|
+
### Encoding and Formatting
|
|
46
|
+
|
|
47
|
+
- Determine the file's encoding before editing and keep it unchanged.
|
|
48
|
+
- Use only characters available on a standard QWERTY keyboard.
|
|
49
|
+
- Do not insert emojis or other special symbols.
|
|
50
|
+
- Preserve the original end-of-line style (LF or CRLF).
|
|
51
|
+
- Keep single-line comments on a single line.
|
|
52
|
+
- Maintain the indentation style required by the language (Python, Haskell, F#, Nim, Cobra, YAML, Makefiles, etc.).
|
|
53
|
+
- When instructed with `Line Number Referencing = yes`, prefix each new comment with `Note <number>` (e.g., `Note 1`).
|
|
54
|
+
|
|
55
|
+
### Content Expectations
|
|
56
|
+
|
|
57
|
+
- Focus on lines and blocks that best illustrate language or platform concepts.
|
|
58
|
+
- Explain the "why" behind syntax, idioms, and design choices.
|
|
59
|
+
- Reinforce previous concepts only when it improves comprehension (`Repetitiveness`).
|
|
60
|
+
- Highlight potential improvements gently and only when they serve an educational purpose.
|
|
61
|
+
- If `Line Number Referencing = yes`, use note numbers to connect related explanations.
|
|
62
|
+
|
|
63
|
+
### Safety and Compliance
|
|
64
|
+
|
|
65
|
+
- Do not alter namespaces, imports, module declarations, or encoding headers in a way that breaks execution.
|
|
66
|
+
- Avoid introducing syntax errors (for example, Python encoding errors per [PEP 263](https://peps.python.org/pep-0263/)).
|
|
67
|
+
- Input data as if typed on the user's keyboard.
|
|
68
|
+
|
|
69
|
+
## Workflow
|
|
70
|
+
|
|
71
|
+
1. **Confirm Inputs** – Ensure at least one target file is provided. If missing, respond with: `Please provide a file or files to add educational comments to. Preferably as chat variable or attached context.`
|
|
72
|
+
2. **Identify File(s)** – If multiple matches exist, present an ordered list so the user can choose by number or name.
|
|
73
|
+
3. **Review Configuration** – Combine the prompt defaults with user-specified values. Interpret obvious typos (e.g., `Line Number`) using context.
|
|
74
|
+
4. **Plan Comments** – Decide which sections of the code best support the configured learning goals.
|
|
75
|
+
5. **Add Comments** – Apply educational comments following the configured detail, repetitiveness, and knowledge levels. Respect indentation and language syntax.
|
|
76
|
+
6. **Validate** – Confirm formatting, encoding, and syntax remain intact. Ensure the 125% rule and line limits are satisfied.
|
|
77
|
+
|
|
78
|
+
## Configuration Reference
|
|
79
|
+
|
|
80
|
+
### Properties
|
|
81
|
+
|
|
82
|
+
- **Numeric Scale**: `1-3`
|
|
83
|
+
- **Numeric Sequence**: `ordered` (higher numbers represent higher knowledge or intensity)
|
|
84
|
+
|
|
85
|
+
### Parameters
|
|
86
|
+
|
|
87
|
+
- **File Name** (required): Target file(s) for commenting.
|
|
88
|
+
- **Comment Detail** (`1-3`): Depth of each explanation (default `2`).
|
|
89
|
+
- **Repetitiveness** (`1-3`): Frequency of revisiting similar concepts (default `2`).
|
|
90
|
+
- **Educational Nature**: Domain focus (default `Computer Science`).
|
|
91
|
+
- **User Knowledge** (`1-3`): General CS/SE familiarity (default `2`).
|
|
92
|
+
- **Educational Level** (`1-3`): Familiarity with the specific language or framework (default `1`).
|
|
93
|
+
- **Line Number Referencing** (`yes/no`): Prepend comments with note numbers when `yes` (default `yes`).
|
|
94
|
+
- **Nest Comments** (`yes/no`): Whether to indent comments inside code blocks (default `yes`).
|
|
95
|
+
- **Fetch List**: Optional URLs for authoritative references.
|
|
96
|
+
|
|
97
|
+
If a configurable element is missing, use the default value. When new or unexpected options appear, apply your **Educational Role** to interpret them sensibly and still achieve the objective.
|
|
98
|
+
|
|
99
|
+
### Default Configuration
|
|
100
|
+
|
|
101
|
+
- File Name
|
|
102
|
+
- Comment Detail = 2
|
|
103
|
+
- Repetitiveness = 2
|
|
104
|
+
- Educational Nature = Computer Science
|
|
105
|
+
- User Knowledge = 2
|
|
106
|
+
- Educational Level = 1
|
|
107
|
+
- Line Number Referencing = yes
|
|
108
|
+
- Nest Comments = yes
|
|
109
|
+
- Fetch List:
|
|
110
|
+
- https://peps.python.org/pep-0263/
|
|
111
|
+
|
|
112
|
+
## Examples
|
|
113
|
+
|
|
114
|
+
### Missing File
|
|
115
|
+
|
|
116
|
+
```text
|
|
117
|
+
[user]
|
|
118
|
+
> /add-educational-comments
|
|
119
|
+
[agent]
|
|
120
|
+
> Please provide a file or files to add educational comments to. Preferably as chat variable or attached context.
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Custom Configuration
|
|
124
|
+
|
|
125
|
+
```text
|
|
126
|
+
[user]
|
|
127
|
+
> /add-educational-comments #file:output_name.py Comment Detail = 1, Repetitiveness = 1, Line Number = no
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Interpret `Line Number = no` as `Line Number Referencing = no` and adjust behavior accordingly while maintaining all rules above.
|
|
131
|
+
|
|
132
|
+
## Final Checklist
|
|
133
|
+
|
|
134
|
+
- Ensure the transformed file satisfies the 125% rule without exceeding limits.
|
|
135
|
+
- Keep encoding, end-of-line style, and indentation unchanged.
|
|
136
|
+
- Confirm all educational comments follow the configuration and the **Educational Commenting Rules**.
|
|
137
|
+
- Provide clarifying suggestions only when they aid learning.
|
|
138
|
+
- When a file has been processed before, refine existing comments instead of expanding line count.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "add-educational-comments",
|
|
3
|
+
"name": "Add Educational Comments",
|
|
4
|
+
"type": "skill",
|
|
5
|
+
"provider": "claude",
|
|
6
|
+
"harnesses": [
|
|
7
|
+
"claude-code",
|
|
8
|
+
"cursor",
|
|
9
|
+
"copilot"
|
|
10
|
+
],
|
|
11
|
+
"summary": "Transform code files into effective learning resources by adding contextual educational comments. Explains the 'why' behind syntax, idioms, and design choices, tailored to the learner's knowledge level and learning goals.",
|
|
12
|
+
"source_type": "original",
|
|
13
|
+
"official_docs": [
|
|
14
|
+
"https://peps.python.org/pep-0263/",
|
|
15
|
+
"https://en.wikipedia.org/wiki/Comment_(programming)"
|
|
16
|
+
],
|
|
17
|
+
"security_notes": "Read-only skill. Only reads and annotates files with educational comments. Does not execute code, modify system state, or access sensitive data. All modifications are educational in nature and maintain original code semantics.",
|
|
18
|
+
"last_verified": "2026-05-11",
|
|
19
|
+
"path": "skills/claude/add-educational-comments/",
|
|
20
|
+
"category": "education",
|
|
21
|
+
"lifecycle": "stable",
|
|
22
|
+
"execution_tier": "local",
|
|
23
|
+
"certifications": [],
|
|
24
|
+
"author": "github: Claude",
|
|
25
|
+
"version": "1.0.0"
|
|
26
|
+
}
|
package/skills/finops/README.md
CHANGED
|
@@ -5,26 +5,77 @@
|
|
|
5
5
|
<span style="font-size:3.5em">💰</span>
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
|
+
> ⚠️ **ALPHA RELEASE** — All FinOps skills are currently at `lifecycle: experimental`. Use at your own risk in pre-production environments only. [Board readiness memo](../../docs/strategy/finops-maestro-board-memo.md) documents known limitations and 30-day diligence requirements.
|
|
9
|
+
|
|
8
10
|
This folder contains cross-cloud FinOps skills curated for this marketplace.
|
|
9
11
|
|
|
10
12
|
## Local marketplace portfolio
|
|
11
13
|
|
|
12
|
-
This folder contains **
|
|
14
|
+
This folder contains **7** local FinOps skills (all alpha):
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
| Skill | Purpose | Lifecycle | Tools |
|
|
17
|
+
|---|---|---|---|
|
|
18
|
+
| `finops-maestro` | Route FinOps tasks to the narrowest specialist or parallel team (max 4) | **experimental** | Agent Skill Read Grep Glob |
|
|
19
|
+
| `finops-cloud-price-advisor` | Live public pricing across AWS, Azure, OCI, Scaleway, Gandi, Alibaba, Tencent, Hetzner, Contabo, Ionos, OVHcloud | **experimental** | Read Grep Glob WebFetch |
|
|
20
|
+
| `fetch-foundation-model-pricing` | Live per-token, per-image, per-GPU-hour pricing across Anthropic, OpenAI, Google, Bedrock, Azure OpenAI, OCI, and Vertex | **experimental** | Read Grep Glob WebFetch |
|
|
21
|
+
| `kubernetes-allocation-report` | OpenCost-compatible namespace/pod/workload cost allocation mapped to FOCUS v1.2 columns | **experimental** | Read Grep Glob WebFetch |
|
|
22
|
+
| `rightsize-recommendation` | Pod request/limit recommendations from user-supplied p50/p95/p99 metrics; Karpenter consolidation eligibility | **experimental** | Read Grep Glob |
|
|
23
|
+
| `carbon-cost-pair` | Pair $ values with kgCO2e by region and service category for CSRD/SEC climate disclosure | **experimental** | Read Grep Glob WebFetch |
|
|
24
|
+
| `focus-spec-normalizer` | Normalize vendor bills (AWS CUR, Azure Cost Management, GCP Billing Export, OCI) into FOCUS v1.2 columns | **experimental** | Read Grep Glob |
|
|
15
25
|
|
|
16
26
|
## Portfolio posture
|
|
17
27
|
|
|
18
|
-
Cross-cloud FinOps skills
|
|
28
|
+
Cross-cloud, harness-portable FinOps skills covering AI workload economics, Kubernetes rightsizing, cross-cloud price advisory, FOCUS-spec normalization, and carbon-cost pairing.
|
|
19
29
|
|
|
20
30
|
These skills are intentionally conservative:
|
|
21
31
|
|
|
22
|
-
- fetch prices from public unauthenticated APIs only — no billing credentials
|
|
32
|
+
- fetch prices from public unauthenticated APIs only — no billing credentials, kubeconfig, bearer tokens, or tenant data accepted
|
|
23
33
|
- always distinguish on-demand list price from effective price (reserved instances, savings plans, committed use discounts not included by default)
|
|
24
|
-
- prefer live API lookups over cached or memory-based price estimates — cloud prices change frequently
|
|
25
|
-
- when comparing providers, normalize compute specs (vCPU, RAM, storage type) before comparing price
|
|
26
|
-
- flag GPU and accelerated compute costs explicitly — they dominate
|
|
34
|
+
- prefer live API lookups over cached or memory-based price estimates — foundation-model and cloud prices change frequently
|
|
35
|
+
- when comparing providers, normalize compute specs (vCPU, RAM, GPU SKU, storage type) before comparing price
|
|
36
|
+
- flag GPU and accelerated compute costs explicitly — they dominate AI workload bills
|
|
37
|
+
- label every numeric output: `live-price` / `live-evidence` / `documentation-based` / `assumed` / `excluded`
|
|
38
|
+
- emit FOCUS v1.2 column mappings where applicable — vendor-column adapters are explicit, not assumed
|
|
39
|
+
|
|
40
|
+
### Provider coverage matrix
|
|
41
|
+
|
|
42
|
+
| Category | Providers | Skill | Status |
|
|
43
|
+
|---|---|---|---|
|
|
44
|
+
| **Foundation models** | Anthropic, OpenAI, Google, AWS Bedrock, Azure OpenAI, OCI Generative AI, Vertex | `fetch-foundation-model-pricing` | experimental |
|
|
45
|
+
| **Cloud compute (on-demand)** | AWS, Azure, OCI | `finops-cloud-price-advisor` | experimental |
|
|
46
|
+
| **Cloud compute (regional)** | Scaleway (EU), Gandi (EU), Alibaba Cloud (CN/APAC), Tencent Cloud (CN/APAC), Hetzner (EU), Contabo (EU), Ionos (EU), OVHcloud (EU) | `finops-cloud-price-advisor` | experimental |
|
|
47
|
+
| **Kubernetes cost** | EKS, AKS, GKE, OKE (vendor-agnostic allocation) | `kubernetes-allocation-report` + `rightsize-recommendation` | experimental |
|
|
48
|
+
| **Bill normalization** | AWS CUR, Azure Cost Management, GCP Billing Export, OCI Cost Analysis | `focus-spec-normalizer` | experimental |
|
|
49
|
+
| **Carbon tracking** | AWS, Azure, GCP, OCI | `carbon-cost-pair` | experimental |
|
|
50
|
+
|
|
51
|
+
## 🧭 Routing taxonomy
|
|
52
|
+
|
|
53
|
+
See [agents/finops/README.md](../agents/README.md) for the complete 120+ keyword taxonomy used by `finops-maestro` to classify and dispatch tasks to the right specialist skill or agent.
|
|
54
|
+
|
|
55
|
+
## ⚠️ Known limitations and disclaimers
|
|
56
|
+
|
|
57
|
+
**Alpha status**: These skills support pre-production research and estimation use cases. Production deployment requires:
|
|
58
|
+
1. Signed design-partner SOW with cost verification clause
|
|
59
|
+
2. AT-C 215 AUP report from Big 4 accounting firm documenting hard savings
|
|
60
|
+
3. SOC 2 Type II observation (≥150 days) on infrastructure
|
|
61
|
+
4. FOCUS v1.2 column-mapping audit by compliance reviewer
|
|
62
|
+
|
|
63
|
+
**Data freshness**: Cloud and foundation-model prices are live-fetched on every invocation. Pricing APIs are public and unauthenticated; no caching across sessions. If a pricing API is unavailable, the skill returns a documented-based fallback with a timestamp.
|
|
64
|
+
|
|
65
|
+
**Scope limitations**:
|
|
66
|
+
- Reserved instances, savings plans, committed use discounts require separate calculation (not included in base list-price estimates)
|
|
67
|
+
- Volume discounts (multi-year, enterprise agreements) not modeled
|
|
68
|
+
- Spot/preemptible pricing not included (separate query required)
|
|
69
|
+
- Custom pricing (e.g., negotiated cloud contracts) not discoverable
|
|
70
|
+
|
|
71
|
+
**Accuracy**: Cost estimates from these skills are **indicative only**. Use them for:
|
|
72
|
+
- Budget planning (±20% accuracy acceptable)
|
|
73
|
+
- Comparative analysis (which cloud is cheaper?)
|
|
74
|
+
- Anomaly detection (which workload got expensive?)
|
|
27
75
|
|
|
28
|
-
|
|
76
|
+
Do not use for:
|
|
77
|
+
- Chargeback / cost allocation without human review
|
|
78
|
+
- SLA-level cost forecasting
|
|
79
|
+
- Contractual billing disputes
|
|
29
80
|
|
|
30
|
-
|
|
81
|
+
**See also**: [Board readiness memo Section 8](../../docs/strategy/finops-maestro-board-memo.md#8-risk-catalog) enumerates all 21 operational risks with contractual mitigations.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Carbon Cost Pair
|
|
2
|
+
|
|
3
|
+
A FinOps skill that pairs cloud spend values with kgCO2e carbon estimates by region and service category, with mandatory confidence labels and source citations for CSRD and SEC climate disclosure.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
For every cloud spend line item, produce a paired kgCO2e estimate using the best available carbon factor for the cloud region and service category. Confidence is labeled as `vendor-published`, `third-party`, or `estimated`, and every output includes a source URL and data period acknowledgment.
|
|
8
|
+
|
|
9
|
+
## Allowed tools
|
|
10
|
+
|
|
11
|
+
`Read` `Grep` `Glob` `WebFetch`
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
**Single line item:** Provide cloud provider, region, service category, and dollar value (e.g., "Pair $1,200 of AWS us-east-1 compute spend with a carbon estimate"). The skill fetches the latest available carbon factor, applies it, and returns a labeled kgCO2e output with FOCUS tag mapping.
|
|
16
|
+
|
|
17
|
+
**Multi-line comparison:** Provide multiple regions or providers (e.g., "Compare carbon intensity for the same $10,000 compute spend across AWS us-east-1, Azure eastus, and GCP us-central1"). The skill returns one estimate block per line item plus a summary comparison table.
|
|
18
|
+
|
|
19
|
+
## Trust posture
|
|
20
|
+
|
|
21
|
+
Read-only. No cloud credentials, billing account IDs, or tenant data accepted. Carbon factors are fetched from public provider sustainability pages or third-party sources. Provider data typically lags 60-90 days; the data period is stated in every output.
|
|
22
|
+
|
|
23
|
+
Defaults to Scope 2 electricity-only, market-based factors. Location-based and Scope 1+2 available on request.
|
|
24
|
+
|
|
25
|
+
See [SKILL.md](SKILL.md) for the full operating rules, confidence label decision tree, regulatory context, and output shape.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: carbon-cost-pair
|
|
3
|
+
description: Pair every cloud spend value with a kgCO2e estimate by region and service category for CSRD and SEC climate disclosure. Input is region, service category, and dollar value; output is paired kgCO2e with confidence label (vendor-published, third-party, or estimated) and source citation. Defaults to electricity-only Scope 2 market-based factors.
|
|
4
|
+
allowed-tools: Read Grep Glob WebFetch
|
|
5
|
+
metadata:
|
|
6
|
+
author: "github: Raishin"
|
|
7
|
+
version: "0.1.1"
|
|
8
|
+
updated: "2026-05-13"
|
|
9
|
+
category: finops
|
|
10
|
+
lifecycle: experimental
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Carbon Cost Pair
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
|
|
17
|
+
For every cloud spend line item, produce a paired kgCO2e estimate suitable for CSRD and SEC climate disclosure. The skill pairs a dollar value (or resource quantity) with the best available carbon emissions factor for the given cloud region and service category, and returns the estimate with a mandatory confidence label and source citation.
|
|
18
|
+
|
|
19
|
+
No cloud credentials accepted. Carbon factors are fetched from provider sustainability pages or third-party sources.
|
|
20
|
+
|
|
21
|
+
## When to use
|
|
22
|
+
|
|
23
|
+
Use this skill when:
|
|
24
|
+
|
|
25
|
+
- The user needs to pair a cloud spend or usage figure with a carbon estimate for sustainability reporting (CSRD Article 29a, SEC climate rule, GHG Protocol Scope 2)
|
|
26
|
+
- The user wants to compare the carbon intensity of the same workload across cloud regions or providers
|
|
27
|
+
- The user wants to understand the confidence level of a carbon estimate before including it in a regulatory disclosure
|
|
28
|
+
|
|
29
|
+
## Operating rules
|
|
30
|
+
|
|
31
|
+
- **Default to electricity-only Scope 2, market-based.** Unless the caller specifies otherwise, compute Scope 2 emissions using market-based electricity factors (renewable energy certificate or PPA-adjusted). Location-based factors are available on request.
|
|
32
|
+
- **Fetch live data first.** Use WebFetch to retrieve the latest carbon factor data from the provider's sustainability API or dashboard before falling back to documentation-based estimates.
|
|
33
|
+
- **Confidence labels mandatory.** Every kgCO2e output must carry exactly one label:
|
|
34
|
+
- `vendor-published` — factor sourced from the provider's own sustainability API, dashboard, or data export within this session (include source URL and ISO 8601 timestamp)
|
|
35
|
+
- `third-party` — factor sourced from Electricity Maps, Cloud Carbon Footprint project, or equivalent third-party source (include source URL and timestamp)
|
|
36
|
+
- `estimated` — factor derived from regional grid average or published industry emission factors where no provider or third-party data is available (state the factor, source, and assumptions)
|
|
37
|
+
- **No credentials accepted.** No cloud credentials, billing account IDs, tenant data, or sustainability API tokens are accepted or required.
|
|
38
|
+
- **Acknowledge data lag.** Provider carbon data typically lags 60-90 days or more. State the data period whenever citing vendor-published factors.
|
|
39
|
+
- **FOCUS column mapping.** There are no native FOCUS v1.2 carbon columns. Represent carbon estimates as FOCUS tags: `Tags/kgco2e`, `Tags/carbon_confidence`, `Tags/carbon_source`.
|
|
40
|
+
- **Load references only when needed.**
|
|
41
|
+
|
|
42
|
+
## Input
|
|
43
|
+
|
|
44
|
+
| Field | Required | Description |
|
|
45
|
+
|---|---|---|
|
|
46
|
+
| Cloud provider | Yes | AWS, Azure, Google Cloud, OCI, or multi-cloud |
|
|
47
|
+
| Region | Yes | Provider region name (e.g., `us-east-1`, `eastus`, `us-central1`, `ap-sydney-1`) |
|
|
48
|
+
| Service category | Yes | Compute, Storage, Networking, AI and Machine Learning, Databases, or Other |
|
|
49
|
+
| Dollar value ($) | Yes | The spend amount to pair with a carbon estimate |
|
|
50
|
+
| Resource quantity | Optional | If available, the underlying resource quantity (e.g., vCPU-hours, GiB-hours, GB transferred) for a more precise estimate |
|
|
51
|
+
| Scope preference | Optional | Default: Scope 2 market-based. Options: `scope2-market`, `scope2-location`, `scope1+2` |
|
|
52
|
+
|
|
53
|
+
## Output shape
|
|
54
|
+
|
|
55
|
+
Return, per line item:
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
Region: <provider region>
|
|
59
|
+
Service category: <category>
|
|
60
|
+
Dollar value: $<amount>
|
|
61
|
+
kgCO2e estimate: <value> kgCO2e [<confidence label>]
|
|
62
|
+
Scope: Scope 2 (market-based) | Scope 2 (location-based)
|
|
63
|
+
Data period: <e.g., Q3 2025 or "Current as of 2026-05-13">
|
|
64
|
+
Source: <URL> (fetched: <ISO 8601 timestamp> | documentation date: <date>)
|
|
65
|
+
Methodology note: <one sentence describing the emission factor used>
|
|
66
|
+
|
|
67
|
+
FOCUS tags:
|
|
68
|
+
Tags/kgco2e: <value>
|
|
69
|
+
Tags/carbon_confidence: <vendor-published | third-party | estimated>
|
|
70
|
+
Tags/carbon_source: <URL>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
If multiple regions or service categories are provided, return one block per line item followed by a summary table.
|
|
74
|
+
|
|
75
|
+
## Confidence label decision tree
|
|
76
|
+
|
|
77
|
+
1. Does the cloud provider publish a region-level carbon factor or API for this region and service?
|
|
78
|
+
- Yes, and it was fetched this session → `vendor-published`
|
|
79
|
+
- Yes, but the fetch failed or data is not current → proceed to step 2
|
|
80
|
+
2. Is Electricity Maps data available for the grid region, or is Cloud Carbon Footprint data available for this provider/region?
|
|
81
|
+
- Yes → `third-party`
|
|
82
|
+
3. Fall back to IEA regional grid average emission factor or the provider's country-level average.
|
|
83
|
+
- → `estimated`; state the factor used (e.g., `0.386 kgCO2e/kWh — IEA 2023 US average`)
|
|
84
|
+
|
|
85
|
+
## Regulatory context
|
|
86
|
+
|
|
87
|
+
- **CSRD (Corporate Sustainability Reporting Directive)**: requires disclosure of Scope 1, 2, and 3 emissions under ESRS E1. Cloud compute is typically Scope 2 (purchased electricity) and may contribute to Scope 3 Category 1 (purchased goods/services) for customers.
|
|
88
|
+
- **SEC Climate Rule**: requires material climate-related disclosures including Scope 1 and 2 emissions for large accelerated filers.
|
|
89
|
+
- **GHG Protocol**: defines market-based and location-based approaches for Scope 2. Both may be required; market-based is the default here.
|
|
90
|
+
|
|
91
|
+
## References
|
|
92
|
+
|
|
93
|
+
Load these only when needed:
|
|
94
|
+
|
|
95
|
+
- [Carbon data sources](references/sources.md) — provider sustainability API URLs, third-party data sources, and fallback options.
|
|
96
|
+
- [Methodology](references/methodology.md) — market-based vs location-based Scope 2, data lag, and uncertainty labeling.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "carbon-cost-pair",
|
|
3
|
+
"name": "Carbon Cost Pair",
|
|
4
|
+
"type": "skill",
|
|
5
|
+
"provider": "multi-cloud",
|
|
6
|
+
"harnesses": [
|
|
7
|
+
"codex",
|
|
8
|
+
"claude-code",
|
|
9
|
+
"cursor",
|
|
10
|
+
"gemini",
|
|
11
|
+
"kiro",
|
|
12
|
+
"other"
|
|
13
|
+
],
|
|
14
|
+
"summary": "Pair cloud spend values with kgCO2e estimates by region and service category for CSRD and SEC climate disclosure. Outputs confidence-labeled carbon estimates (vendor-published, third-party, or estimated) with source citations. Defaults to Scope 2 market-based electricity factors.",
|
|
15
|
+
"source_type": "original",
|
|
16
|
+
"official_docs": [
|
|
17
|
+
"https://aws.amazon.com/aws-cost-management/aws-customer-carbon-footprint-tool/",
|
|
18
|
+
"https://learn.microsoft.com/en-us/industry/sustainability/",
|
|
19
|
+
"https://cloud.google.com/carbon-footprint/docs"
|
|
20
|
+
],
|
|
21
|
+
"security_notes": "No cloud credentials, billing account IDs, sustainability API tokens, or tenant-specific data are accepted or required. All carbon factors are fetched from public provider sustainability pages or third-party data sources. No write operations to any system are performed.",
|
|
22
|
+
"last_verified": "2026-05-13",
|
|
23
|
+
"path": "skills/finops/carbon-cost-pair",
|
|
24
|
+
"author": "github: Raishin",
|
|
25
|
+
"version": "0.1.1",
|
|
26
|
+
"lifecycle": "experimental"
|
|
27
|
+
}
|