@raishin/vanguard-frontier-agentic 3.12.0 → 3.13.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/.github/plugin/marketplace.json +1 -1
- package/agents/accounting/accounting-business-combinations-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-close-cycle-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-consolidation-intercompany-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-equity-compensation-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-fixed-assets-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-fx-translation-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-hedge-accounting-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-indirect-tax-einvoicing-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-lease-accounting-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-payroll-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-procure-to-pay-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-revenue-recognition-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/accounting/accounting-tax-provision-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-ack-container-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-actiontrail-audit-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-analyticdb-realtime-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-certificate-manager-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-change-impact-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-china-compliance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-cost-anomaly-watch-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-cost-finops-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-daily-operations-briefing-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-devops-cicd-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-ecs-compute-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-event-driven-architecture-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-function-serverless-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-iac-change-safety-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-kms-secret-lifecycle-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-landing-zone-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-ack-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-cost-budget-action-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-kms-key-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-oss-bucket-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-ram-policy-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-live-rds-polardb-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-load-balancer-traffic-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-maxcompute-dataworks-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-migration-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-mse-microservice-engine-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-observability-incident-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-oss-data-perimeter-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-oss-storage-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-polardb-rds-dba-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-ram-iam-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-registry-artifact-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-resilience-bcdr-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-security-center-hardening-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-serverless-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-support-incident-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-ticket-triage-escalation-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-waf-reliability-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/alibaba/alibaba-waf-security-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/argocd/argo-rollouts-progressive-delivery-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/argocd/argocd-gitops-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-agentcore-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-api-edge-delivery-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-bedrock-agent-security-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-change-impact-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-ci-cd-release-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-compliance-evidence-mapper-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-cost-anomaly-watch-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-cost-optimization-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-daily-operations-briefing-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-data-protection-backup-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-deployment-hotfix-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-devops-agent-skill-designer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-dynamodb-data-modeling-performance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-ec2-compute-operations-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-ecs-fargate-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-ecs-service-remediation-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-eks-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-event-driven-architecture-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-generative-ai-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-iac-change-safety-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-iac-patch-executor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-iam-least-privilege-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-kms-secrets-lifecycle-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-landing-zone-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-live-deployment-guarded-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-live-ecs-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-live-iac-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-live-pipeline-approval-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-live-serverless-release-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-migration-cutover-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-non-destructive-task-automation-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-observability-incident-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-pipeline-fix-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-private-ca-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-rds-aurora-performance-investigator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-resilience-bcdr-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-s3-data-perimeter-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-security-posture-hardening-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-serverless-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-serverless-rollout-corrector-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-ticket-triage-escalation-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-waf-reliability-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/aws/aws-waf-security-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-ai-foundry-ops-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-aks-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-app-service-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-cosmosdb-application-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-cosmosdb-performance-investigator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-cosmosdb-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-cost-estimation-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-cost-optimization-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-entra-id-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-governance-policy-guardrails-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-identity-governance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-key-vault-secret-lifecycle-auditor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-keyvault-certificate-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-landing-zone-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-aks-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-app-service-slot-swap-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-arm-deployment-stack-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-cost-budget-action-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-entra-role-assignment-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-keyvault-rotation-purge-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/azure/azure-live-pim-jit-activation-guard-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-live-pim-jit-activation-guard-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-live-pim-jit-activation-guard-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-live-pim-jit-activation-guard-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-live-pim-jit-activation-guard-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-maestro-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-maestro-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-maestro-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-maestro-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-maestro-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-migrate-landing-zone-cutover-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-migrate-landing-zone-cutover-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-migrate-landing-zone-cutover-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-migrate-landing-zone-cutover-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-migrate-landing-zone-cutover-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-network-topology-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-network-topology-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-network-topology-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-network-topology-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-network-topology-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-observability-investigator-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-observability-investigator-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-observability-investigator-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-observability-investigator-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-observability-investigator-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-platform-automation-devops-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-platform-automation-devops-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-platform-automation-devops-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-platform-automation-devops-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-platform-automation-devops-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-private-endpoint-adoption-planner-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-private-endpoint-adoption-planner-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-private-endpoint-adoption-planner-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-private-endpoint-adoption-planner-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-private-endpoint-adoption-planner-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-rbac-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-rbac-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-rbac-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-rbac-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-rbac-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-resilience-bcdr-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-resilience-bcdr-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-resilience-bcdr-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-resilience-bcdr-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-resilience-bcdr-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-resource-health-incident-triage-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-resource-health-incident-triage-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-resource-health-incident-triage-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-resource-health-incident-triage-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-resource-health-incident-triage-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-role-selector-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-role-selector-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-role-selector-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-role-selector-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-role-selector-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-security-posture-hardening-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-security-posture-hardening-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-security-posture-hardening-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-security-posture-hardening-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-security-posture-hardening-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-subscription-resource-organization-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-subscription-resource-organization-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-subscription-resource-organization-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-subscription-resource-organization-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-subscription-resource-organization-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-waf-cost-optimization-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-waf-cost-optimization-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-waf-cost-optimization-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-waf-cost-optimization-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-waf-reliability-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-waf-reliability-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-waf-reliability-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-waf-reliability-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-waf-reliability-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/azure/azure-waf-security-review-agent/harnesses/claude-code.agent.md +2 -4
- package/agents/azure/azure-waf-security-review-agent/harnesses/copilot.agent.md +2 -4
- package/agents/azure/azure-waf-security-review-agent/harnesses/cursor.agent.md +2 -4
- package/agents/azure/azure-waf-security-review-agent/harnesses/gemini.agent.md +3 -4
- package/agents/azure/azure-waf-security-review-agent/harnesses/kiro-ide.agent.md +2 -4
- package/agents/backstage/backstage-scaffolder-template-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/cert-manager/cert-manager-issuer-trust-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/cilium/cilium-network-policy-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-capacity-planner-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-cost-optimization-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-live-instance-lifecycle-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-live-storage-operations-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/contabo/contabo-security-hardening-agent/harnesses/gemini.agent.md +2 -1
- package/agents/cross-functional/revenue-critical-journey-integrity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-ai-bi-genie-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-data-protection-privacy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-data-quality-observability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-developer-platform-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-finops-cost-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-genai-agent-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-genai-evaluation-observability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-identity-network-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-lakeflow-pipeline-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-mlops-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-platform-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-platform-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-sql-performance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-streaming-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-unity-catalog-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/databricks/databricks-value-realization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-aspire-cloud-native-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-aspnetcore-identity-authz-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-observability-otel-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-performance-aot-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-supply-chain-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/dotnet/dotnet-testing-quality-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/falco/falco-runtime-threat-rules-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-capital-allocation-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-debt-capital-structure-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-fpa-forecasting-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-transfer-pricing-pillar-two-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-treasury-liquidity-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-variance-analysis-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finance/finance-working-capital-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finops/finops-ai-economist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finops/finops-cloud-price-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finops/finops-kubernetes-rightsizer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/finops/finops-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/fluxcd/fluxcd-kustomization-helmrelease-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/accessibility-wcag-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/ai-assisted-frontend-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/angular-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/api-integration-bff-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/browser-compatibility-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/build-tooling-bundling-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/css-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/design-systems-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/enterprise-red-team-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-board-chair-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-finops-cost-to-serve-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-migration-modernization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-observability-rum-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-platform-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/frontend-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/html-semantics-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/internationalization-localization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/javascript-runtime-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/monorepo-dx-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/nextjs-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/package-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/product-analytics-experimentation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/pwa-offline-capability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/react-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/routing-navigation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/ssr-hydration-streaming-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/state-management-data-flow-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/svelte-sveltekit-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/testing-quality-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/typescript-contracts-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/visual-regression-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/vue-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/web-performance-core-vitals-agent/harnesses/gemini.agent.md +2 -1
- package/agents/frontend/web-platform-foundation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-alloydb-ai-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-alloydb-cloudsql-dba-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-anthos-multicloud-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-apigee-api-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-bigquery-cost-performance-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-certificate-manager-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-change-impact-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-cloud-auth-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-cloud-run-functions-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-cloudbuild-deploy-cicd-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-compliance-assured-workloads-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-compute-engine-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-cost-anomaly-watch-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-cost-finops-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-daily-operations-briefing-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-data-pipeline-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-event-driven-architecture-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-firebase-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-gcs-data-perimeter-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-gemini-api-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-gke-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-iac-change-safety-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-iam-least-privilege-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-landing-zone-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-bigquery-dataset-deletion-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-cloud-run-traffic-migration-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-cost-budget-action-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-gke-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-iam-policy-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-live-kms-key-destruction-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-load-balancer-traffic-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-migration-cutover-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-networking-observability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-observability-incident-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-registry-artifact-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-resilience-bcdr-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-resource-inventory-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-secret-kms-lifecycle-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-security-posture-hardening-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-serverless-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-spanner-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-support-incident-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-ticket-triage-escalation-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-vertex-ai-mlops-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-vpc-service-controls-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-waf-reliability-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/gcp/gcp-waf-security-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-capacity-planner-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-cost-optimization-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-infrastructure-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-live-firewall-rule-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-live-server-lifecycle-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hetzner/hetzner-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-analytics-people-data-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-benefits-payroll-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-compensation-equity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-culture-dei-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-employee-relations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-hris-process-controls-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-learning-policy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-leave-accommodation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-performance-management-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-recruiting-selection-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-risk-triage-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-termination-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-workforce-planning-rif-agent/harnesses/gemini.agent.md +2 -1
- package/agents/hr/hr-workplace-investigations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-cce-container-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-certificate-manager-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-change-impact-advisor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-codearts-devops-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-compliance-sovereignty-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-cost-anomaly-watch-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-cost-finops-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-daily-operations-briefing-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-dew-kms-lifecycle-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-drs-data-replication-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-dws-dli-data-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-ecs-compute-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-event-driven-architecture-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-functiongraph-serverless-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-gaussdb-rds-dba-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-iac-change-safety-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-iam-least-privilege-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-ief-edge-computing-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-landing-zone-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-cce-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-cost-budget-action-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-gaussdb-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-iam-policy-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-kms-key-destruction-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-live-obs-bucket-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-load-balancer-traffic-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-migration-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-modelarts-mlops-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-obs-data-perimeter-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-obs-storage-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-observability-incident-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-registry-artifact-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-resilience-bcdr-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-secmaster-security-operations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-serverless-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-support-incident-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-ticket-triage-escalation-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-waf-reliability-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/huawei/huawei-waf-security-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-cost-optimization-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-datacenter-designer-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-kubernetes-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-live-database-lifecycle-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ionos/ionos-security-compliance-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-ambient-mesh-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-authorization-policy-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-dataplane-diagnostics-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-gateway-api-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-traffic-resilience-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/istio/istio-upgrade-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-application-server-exit-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-concurrency-and-virtual-thread-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-container-and-kubernetes-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-database-migration-safety-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-deserialization-and-parser-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-framework-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-jdk-lifecycle-and-upgrade-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-jpa-hibernate-performance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-jvm-performance-and-gc-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-kafka-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-resilience-pattern-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-spring-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-test-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/java/java-transaction-and-consistency-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-android-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-android-performance-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-android-security-privacy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-backend-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-compose-ui-quality-accessibility-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-coroutines-flow-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-estate-modernization-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-gradle-build-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-kmp-boundary-interop-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-kmp-portfolio-decision-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-language-api-correctness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-library-api-abi-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-serialization-wire-contract-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-supply-chain-release-integrity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kotlin/kotlin-test-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/external-secrets-operator-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubecost-chargeback-allocation-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-admission-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-argocd-sync-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-mesh-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-network-architecture-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-network-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-rbac-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-live-velero-restore-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-network-architecture-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-pod-spec-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-psa-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-rbac-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kubernetes/kubernetes-workload-identity-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/kyverno/kyverno-policy-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-contract-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-counsel-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-employment-law-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-ethics-investigations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-ip-open-source-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-knowledge-management-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-litigation-discovery-hold-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-policy-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-privacy-data-protection-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-public-disclosure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-regulatory-compliance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/legal/legal-vendor-procurement-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/ai-advertising-targeting-fairness-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/analytics-data-minimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/email-sender-authentication-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/eu-ai-act-marketing-system-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/influencer-disclosure-compliance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/lookalike-audience-upload-compliance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-consent-data-collection-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-conversion-flow-dark-pattern-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-email-list-retention-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-gpc-signal-honoring-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/marketing-pixel-data-leakage-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/martech-access-governance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/marketing/programmatic-supply-chain-integrity-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-commerce-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-project-operations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/microsoft-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/microsoft/power-platform-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-administrator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-ai-connector-mcp-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-ai-foundations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-application-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-audit-controls-sox-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-bi-reporting-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-data-governance-privacy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-enterprise-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-erp-consultant-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-evidence-release-drift-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-financial-foundations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-identity-access-role-permission-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-integration-migration-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-live-org-mutation-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-oneworld-multisubsidiary-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-sandbox-nonproduction-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-saved-searches-workbook-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-sdf-devops-release-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-sso-oauth-tba-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-suitecloud-developer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-suiteflow-automation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-suitefoundation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-suitescript-secure-code-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/netsuite/netsuite-web-services-integration-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-agentic-ai-platform-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-ai-infrastructure-operations-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-ai-networking-fabric-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-ai-operations-day2-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-cuda-kernel-performance-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-generative-ai-platform-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-gpu-operator-kubernetes-hardening-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-ngc-nim-supply-chain-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-tensorrt-llm-deployment-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/nvidia/nvidia-triton-inference-serving-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-autonomous-database-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-certificates-issuer-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-cloud-guard-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-compute-instance-agent-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-compute-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-cost-finops-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-database-platform-dba-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-dbtools-sql-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-devops-container-platform-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-exadata-platform-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-fusion-apps-environment-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-goldengate-replication-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-identity-access-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-iot-digital-twin-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-limits-capacity-planner-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-autonomous-db-lifecycle-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-cost-budget-runaway-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-iam-policy-compartment-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-network-security-rule-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-oke-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-resource-manager-stack-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-live-vault-key-destruction-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-load-balancer-traffic-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-migration-cutover-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-multi-cloud-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-mysql-heatwave-ai-specialist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-observability-incident-responder-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-recovery-service-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-registry-artifact-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-resource-search-inventory-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-security-compliance-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-storage-backup-steward-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-support-incident-coordinator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-waf-cost-optimization-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-waf-reliability-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/oci/oci-waf-security-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/opentelemetry/opentelemetry-collector-config-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-cost-finops-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-iam-policy-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-kubernetes-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-live-kms-key-destruction-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/ovhcloud/ovhcloud-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/php/composer-supply-chain-agent/harnesses/gemini.agent.md +2 -1
- package/agents/php/php-application-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/php/php-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/php/php-runtime-upgrade-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/php/wordpress-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/prometheus/prometheus-alerting-cardinality-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-application-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-async-concurrency-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-business-critical-automation-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-container-serverless-runtime-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-data-access-transaction-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-data-pipeline-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-developer-tooling-build-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-distributed-task-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-estate-modernization-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-free-threading-parallelism-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-language-contracts-typing-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-change-plan-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-code-remediation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-continuous-control-testing-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-control-evidence-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-data-change-control-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-exception-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-governance-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-identity-authority-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-job-control-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-model-promotion-control-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-policy-gate-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-release-control-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-rollback-and-recovery-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-runtime-control-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-live-system-inventory-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-ml-ai-production-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-native-extension-interop-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-numerical-scientific-correctness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-observability-sre-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-packaging-supply-chain-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-performance-memory-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-testing-quality-engineering-agent/harnesses/gemini.agent.md +2 -1
- package/agents/python/python-web-service-production-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/ci-test-pipeline-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/helm-chart-quality-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/kubernetes-manifest-quality-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/llm-ai-pipeline-test-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/playwright-e2e-suite-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/plc-control-logic-safety-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/rpa-workflow-resilience-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/test-coverage-quality-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/qa/test-flakiness-triage-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-business-analyst-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-data-architecture-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-development-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-devops-release-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/gemini.agent.md +2 -1
- package/agents/salesforce/salesforce-service-field-service-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-abap-cloud-rap-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-ai-core-genai-hub-governance-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-analytics-cloud-planning-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-audit-evidence-packager-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-btp-account-entitlement-governance-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-btp-entitlement-guarded-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-cap-architecture-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-clean-core-debt-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-cloud-alm-sre-incident-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-custom-code-remediation-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-data-migration-cutover-readiness-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-datasphere-data-product-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-ewm-tm-logistics-execution-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-finance-fico-controls-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-fiori-ui5-ux-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-guarded-transport-import-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-hana-cloud-performance-cost-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-hypercare-incident-commander-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-integration-flow-guarded-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-integration-suite-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-joule-governance-adoption-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-license-btp-consumption-finops-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-live-readonly-identity-trust-discovery-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-live-readonly-landscape-discovery-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-manufacturing-execution-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-mdg-master-data-quality-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-order-to-cash-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-procurement-ariba-value-leakage-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-release-change-collision-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-rise-sla-vendor-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-role-assignment-guarded-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-s4hana-transformation-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-security-iam-grc-sod-reviewer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-signavio-process-mining-value-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-successfactors-hr-process-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-supply-chain-ibp-resilience-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-testing-quality-gate-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-transformation-portfolio-triage-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sap/sap-treasury-cash-risk-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-cost-optimizer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-iam-policy-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-kapsule-platform-operator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-live-kapsule-rollout-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/scaleway/scaleway-network-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/sigstore/sigstore-cosign-supply-chain-review-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-analytics-semantic-data-product-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-bcdr-resilience-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-business-value-adoption-strategist-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-compliance-evidence-auditor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-cortex-ai-agent-security-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-data-engineering-pipelines-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-data-science-ml-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-devops-iac-release-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-finops-cost-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-governance-privacy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-identity-access-security-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-auth-network-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-data-protection-policy-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-failover-promotion-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-pipeline-streaming-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-rbac-grant-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-live-warehouse-cost-change-guard-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-migration-modernization-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-native-app-marketplace-product-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-network-private-connectivity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-platform-administrator-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-query-performance-engineer-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-solution-architect-agent/harnesses/gemini.agent.md +2 -1
- package/agents/snowflake/snowflake-streaming-ingestion-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-engine-compatibility-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-estate-reconciliation-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-execution-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-plan-blast-radius-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-policy-evidence-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-reviewer/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-state-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/terraform/terraform-supply-chain-integrity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-async-contract-reliability-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-build-graph-performance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-business-critical-automation-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-engineering-economics-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-estate-modernization-governor-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-maestro-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-module-resolution-and-emit-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-node-execution-compatibility-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-package-publication-integrity-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-public-api-and-declaration-governance-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-runtime-boundary-contract-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-static-enforcement-policy-agent/harnesses/gemini.agent.md +2 -1
- package/agents/typescript/typescript-type-soundness-agent/harnesses/gemini.agent.md +2 -1
- package/catalog/asset-integrity.json +1645 -1635
- package/catalog/mcp-references.json +48 -6
- package/catalog/model-registry.json +16 -9
- package/package.json +19 -4
- package/plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json +1 -1
- package/schemas/model-policy.schema.json +2 -2
- package/scripts/export-marketplace-agents.mjs +261 -68
- package/scripts/gen_azure_live_guards.py +2 -1
- package/scripts/gen_databricks_agents.py +8 -1
- package/scripts/gen_kotlin_agents.py +8 -1
- package/scripts/gen_netsuite_agents.py +8 -1
- package/scripts/gen_oci_live_guards.py +2 -1
- package/scripts/gen_python_agents.py +8 -1
- package/scripts/gen_python_live_agents.py +8 -1
- package/scripts/gen_snowflake_agents.py +8 -1
- package/scripts/gen_terraform_agents.py +8 -1
- package/scripts/gen_typescript_agents.py +8 -1
- package/scripts/generate-board-counts.mjs +17 -1
- package/scripts/install-codex-home.mjs +33 -7
- package/scripts/model-policy.mjs +44 -2
- package/tests/_generate_maestro_routing_fixtures.py +344 -15
- package/tests/fixtures/README.md +20 -4
- package/tests/fuzz-properties.test.mjs +11 -31
- package/tests/integration/rbac-pre-flight/README.md +92 -25
- package/tests/integration/rbac-pre-flight/fixtures/crds.yaml +565 -0
- package/tests/integration/rbac-pre-flight/guards/network-arch.sh +8 -7
- package/tests/integration/rbac-pre-flight/lib/common.sh +225 -92
- package/tests/integration/rbac-pre-flight/run-all.sh +67 -13
- package/tests/integration/rbac-pre-flight/self-test.sh +181 -0
- package/tests/validate-agent-frontmatter-schema.py +80 -0
- package/tests/validate-mcp-trust-matrix.py +62 -2
- package/tests/validate-release-notes.mjs +124 -9
- package/tests/validate-tracked-secrets.py +151 -0
- package/tests/integration/rbac-pre-flight/ci/kind-rbac-preflight.yaml +0 -49
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import process from "node:process";
|
|
6
|
-
import { fileURLToPath } from "node:url";
|
|
6
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
7
7
|
import { parseArgs as utilParseArgs } from "node:util";
|
|
8
8
|
|
|
9
9
|
const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
@@ -38,6 +38,13 @@ const PLATFORM_CONFIG = {
|
|
|
38
38
|
},
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
+
// Security-critical validation patterns. These are exported so the
|
|
42
|
+
// property-based fuzz suite can exercise the *shipped* definitions instead of
|
|
43
|
+
// redeclaring its own copies, which silently drift from production.
|
|
44
|
+
export const AGENT_ID_PATTERN = /^[a-z0-9][a-z0-9-]*$/;
|
|
45
|
+
|
|
46
|
+
export const HARNESS_PATH_TRAVERSAL = /[\\/]\.\.[\\/]|^\.\.[\\/]|[\\/]\.\.$|^\.\.$/;
|
|
47
|
+
|
|
41
48
|
const PLATFORM_ALIASES = {
|
|
42
49
|
claude: "claude-code",
|
|
43
50
|
kiroide: "kiro-ide",
|
|
@@ -247,6 +254,9 @@ function loadAgents() {
|
|
|
247
254
|
name: metadata.name,
|
|
248
255
|
provider: metadata.provider,
|
|
249
256
|
summary: metadata.summary,
|
|
257
|
+
// Carried into the `# VFA-EXPORT:` marker so the console can report the
|
|
258
|
+
// installed version; without it every marker held only the id.
|
|
259
|
+
version: metadata.version,
|
|
250
260
|
harness_variants: metadata.harness_variants ?? {},
|
|
251
261
|
companion_skills: Array.isArray(metadata.companion_skills) ? metadata.companion_skills : undefined,
|
|
252
262
|
metadataPath,
|
|
@@ -257,7 +267,7 @@ function loadAgents() {
|
|
|
257
267
|
return { agents, byId };
|
|
258
268
|
}
|
|
259
269
|
|
|
260
|
-
function normalizePlatform(platform) {
|
|
270
|
+
export function normalizePlatform(platform) {
|
|
261
271
|
const lowered = platform.toLowerCase();
|
|
262
272
|
return Object.hasOwn(PLATFORM_ALIASES, lowered) ? PLATFORM_ALIASES[lowered] : lowered;
|
|
263
273
|
}
|
|
@@ -272,7 +282,59 @@ function ensurePlatform(platform) {
|
|
|
272
282
|
return normalized;
|
|
273
283
|
}
|
|
274
284
|
|
|
275
|
-
|
|
285
|
+
/**
|
|
286
|
+
* Build the `# VFA-EXPORT:` marker line the console looks for.
|
|
287
|
+
*
|
|
288
|
+
* `federation/scanner.rs` confirms an installed asset only when two independent
|
|
289
|
+
* detection signals agree. Filename matching supplies one; this marker supplies
|
|
290
|
+
* the second. Without it the only other candidate, ContentSignature, needs
|
|
291
|
+
* canonical template content that the headless catalog never loads, so nothing
|
|
292
|
+
* an export wrote could reach "confirmed" and `require_asset` reported
|
|
293
|
+
* correctly installed agents as missing.
|
|
294
|
+
*
|
|
295
|
+
* The payload is deterministic on purpose: `ExportMeta` requires only `id` and
|
|
296
|
+
* treats `version` and `installed_at` as optional, so the timestamp the original
|
|
297
|
+
* spec mentioned is omitted. Two exports of the same catalog produce identical
|
|
298
|
+
* bytes, which keeps content hashing and drift detection meaningful.
|
|
299
|
+
*/
|
|
300
|
+
export function exportMetadataLine(assetId, version) {
|
|
301
|
+
const payload = version ? { id: assetId, version } : { id: assetId };
|
|
302
|
+
return `# VFA-EXPORT: ${JSON.stringify(payload)}`;
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* Insert the marker in a way each destination format actually tolerates.
|
|
307
|
+
*
|
|
308
|
+
* - `.json` is skipped: neither `#` nor `//` is legal JSON, and CLAUDE.md
|
|
309
|
+
* forbids inventing metadata fields in executable agent files.
|
|
310
|
+
* - Markdown carries YAML frontmatter, where a `#` line is a valid comment and
|
|
311
|
+
* renders as nothing. Prepending above the opening `---` would instead break
|
|
312
|
+
* frontmatter parsing for every harness that reads it.
|
|
313
|
+
* - TOML and other `#`-commentable formats take the line at the top.
|
|
314
|
+
*
|
|
315
|
+
* Idempotent: re-exporting over a previous export does not stack markers.
|
|
316
|
+
*/
|
|
317
|
+
export function injectExportMetadata(content, destination, assetId, version) {
|
|
318
|
+
if (content.includes("VFA-EXPORT:")) return content;
|
|
319
|
+
// `.json` is left untouched. CLAUDE.md's cross-platform rule forbids
|
|
320
|
+
// inventing unsupported metadata fields in executable agent files, and a
|
|
321
|
+
// kiro-cli agent document is executable. Confirming kiro-cli exports needs a
|
|
322
|
+
// sidecar manifest or an officially supported field, not a key this repo
|
|
323
|
+
// invented; until then those exports raise one detection signal and stay
|
|
324
|
+
// unconfirmed.
|
|
325
|
+
if (destination.endsWith(".json")) return content;
|
|
326
|
+
|
|
327
|
+
const line = exportMetadataLine(assetId, version);
|
|
328
|
+
if (destination.endsWith(".md")) {
|
|
329
|
+
if (content.startsWith("---\n")) {
|
|
330
|
+
return content.replace("---\n", `---\n${line}\n`);
|
|
331
|
+
}
|
|
332
|
+
return `${line}\n${content}`;
|
|
333
|
+
}
|
|
334
|
+
return `${line}\n${content}`;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
export function assertWithin(parent, child, label) {
|
|
276
338
|
const resolvedParent = path.resolve(parent);
|
|
277
339
|
const resolvedChild = path.resolve(child);
|
|
278
340
|
const sep = path.sep;
|
|
@@ -386,6 +448,51 @@ function copySkillTree(sourceDir, destDir, force, targetRoot) {
|
|
|
386
448
|
}
|
|
387
449
|
}
|
|
388
450
|
|
|
451
|
+
function pathExists(p) {
|
|
452
|
+
try {
|
|
453
|
+
fs.lstatSync(p);
|
|
454
|
+
return true;
|
|
455
|
+
} catch {
|
|
456
|
+
return false;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
// The files copySkillTree would write for one skill, mirroring its walk.
|
|
461
|
+
function skillTreeDestinations(sourceDir, destDir, out = []) {
|
|
462
|
+
for (const entry of fs.readdirSync(sourceDir, { withFileTypes: true })) {
|
|
463
|
+
const src = path.join(sourceDir, entry.name);
|
|
464
|
+
const dst = path.join(destDir, entry.name);
|
|
465
|
+
if (entry.isSymbolicLink()) {
|
|
466
|
+
throw new Error(`Refusing to copy symbolic link in skill tree: ${src}`);
|
|
467
|
+
}
|
|
468
|
+
if (entry.isDirectory()) skillTreeDestinations(src, dst, out);
|
|
469
|
+
else if (entry.isFile()) out.push(dst);
|
|
470
|
+
}
|
|
471
|
+
return out;
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
/**
|
|
475
|
+
* Every destination this run would write that already exists.
|
|
476
|
+
*
|
|
477
|
+
* Without --force, copyFile and copySkillTree refuse an existing destination,
|
|
478
|
+
* but they do so one file at a time inside the copy loop, so a collision on a
|
|
479
|
+
* late file left every earlier file already written: a partial install. The
|
|
480
|
+
* run checks all destinations first and writes nothing if any collide. The
|
|
481
|
+
* per-file refusal stays in place, so a file created between this check and
|
|
482
|
+
* the write is still refused.
|
|
483
|
+
*/
|
|
484
|
+
function findCollisions(operations, skillPlan, skillsDestRoot, repo) {
|
|
485
|
+
const targets = operations.map((operation) => operation.dest);
|
|
486
|
+
if (skillPlan) {
|
|
487
|
+
for (const skillName of skillPlan.skillNames) {
|
|
488
|
+
const sourceDir = skillPlan.skillsByName.get(skillName)?.dir;
|
|
489
|
+
if (!sourceDir) continue;
|
|
490
|
+
skillTreeDestinations(sourceDir, path.join(repo, skillsDestRoot, skillName), targets);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
return targets.filter(pathExists);
|
|
494
|
+
}
|
|
495
|
+
|
|
389
496
|
function resolveCompanionSkills(selectedAgents, skillsByName, role, includeAll, selectedProvider) {
|
|
390
497
|
const skillNames = new Set();
|
|
391
498
|
if (includeAll) {
|
|
@@ -436,30 +543,86 @@ function resolveCompanionSkills(selectedAgents, skillsByName, role, includeAll,
|
|
|
436
543
|
return { skillNames: [...skillNames].sort(), orphans };
|
|
437
544
|
}
|
|
438
545
|
|
|
439
|
-
function copyFile(source, destination, force, targetRoot) {
|
|
546
|
+
function copyFile(source, destination, force, targetRoot, metadata) {
|
|
440
547
|
assertSafeWriteDestination(targetRoot, destination, "write file destination");
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
548
|
+
fs.mkdirSync(path.dirname(destination), { recursive: true });
|
|
549
|
+
|
|
550
|
+
// Read the source through one descriptor opened with O_NOFOLLOW, for the same
|
|
551
|
+
// reason the destination is opened with it below: an lstatSync() that rejects
|
|
552
|
+
// symlinks followed by a separate readFileSync() leaves a window in which the
|
|
553
|
+
// path can be swapped for a symlink between the check and the read. Making
|
|
554
|
+
// "not a symlink" a property of the open() closes it, so the bytes we copy are
|
|
555
|
+
// provably the ones we vetted.
|
|
556
|
+
//
|
|
557
|
+
// O_NOFOLLOW does not exist on Windows; `|| 0` keeps the flag set valid there,
|
|
558
|
+
// where this degrades to the previous semantics.
|
|
559
|
+
let sourceBuffer;
|
|
560
|
+
let sourceFd;
|
|
561
|
+
try {
|
|
562
|
+
sourceFd = fs.openSync(source, fs.constants.O_RDONLY | (fs.constants.O_NOFOLLOW || 0));
|
|
563
|
+
sourceBuffer = fs.readFileSync(sourceFd);
|
|
564
|
+
} catch (error) {
|
|
565
|
+
if (error.code === "ELOOP") {
|
|
566
|
+
throw new Error(`Refusing to copy symbolic link as harness source: ${source}`);
|
|
567
|
+
}
|
|
568
|
+
throw error;
|
|
569
|
+
} finally {
|
|
570
|
+
if (sourceFd !== undefined) fs.closeSync(sourceFd);
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
const payload =
|
|
574
|
+
metadata && metadata.assetId
|
|
575
|
+
? Buffer.from(
|
|
576
|
+
injectExportMetadata(
|
|
577
|
+
sourceBuffer.toString("utf8"),
|
|
578
|
+
destination,
|
|
579
|
+
metadata.assetId,
|
|
580
|
+
metadata.version
|
|
581
|
+
),
|
|
582
|
+
"utf8"
|
|
583
|
+
)
|
|
584
|
+
: sourceBuffer;
|
|
585
|
+
|
|
586
|
+
// Decide the destination's fate in the open() itself rather than checking it
|
|
587
|
+
// first and writing afterwards. The previous shape — existsSync/lstatSync and
|
|
588
|
+
// then a write — left a window in which the path could be swapped for a
|
|
589
|
+
// symlink between the check and the write, which CodeQL flags as a file
|
|
590
|
+
// system race and which is genuinely exploitable on a shared checkout.
|
|
591
|
+
//
|
|
592
|
+
// O_EXCL makes "refuse to overwrite" a property of the syscall.
|
|
593
|
+
// O_NOFOLLOW refuses a symlinked destination in the same syscall, so a
|
|
594
|
+
// symlink can never redirect the write outside the target root
|
|
595
|
+
// regardless of --force.
|
|
596
|
+
//
|
|
597
|
+
// O_NOFOLLOW does not exist on Windows; `|| 0` keeps the flag set valid
|
|
598
|
+
// there, where this degrades to the ordinary overwrite semantics.
|
|
599
|
+
const flags =
|
|
600
|
+
fs.constants.O_WRONLY |
|
|
601
|
+
fs.constants.O_CREAT |
|
|
602
|
+
(force ? fs.constants.O_TRUNC : fs.constants.O_EXCL) |
|
|
603
|
+
(fs.constants.O_NOFOLLOW || 0);
|
|
604
|
+
|
|
605
|
+
let fd;
|
|
606
|
+
try {
|
|
607
|
+
fd = fs.openSync(destination, flags);
|
|
608
|
+
} catch (error) {
|
|
609
|
+
if (error.code === "EEXIST") {
|
|
610
|
+
throw new Error(`Refusing to overwrite existing file without --force: ${destination}`);
|
|
611
|
+
}
|
|
612
|
+
if (error.code === "ELOOP") {
|
|
452
613
|
throw new Error(
|
|
453
614
|
`Refusing to write to symbolic link destination: ${destination}. ` +
|
|
454
615
|
`Remove the symlink and retry.`
|
|
455
616
|
);
|
|
456
617
|
}
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
618
|
+
throw error;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
try {
|
|
622
|
+
fs.writeFileSync(fd, payload);
|
|
623
|
+
} finally {
|
|
624
|
+
fs.closeSync(fd);
|
|
460
625
|
}
|
|
461
|
-
fs.mkdirSync(path.dirname(destination), { recursive: true });
|
|
462
|
-
fs.copyFileSync(source, destination);
|
|
463
626
|
}
|
|
464
627
|
|
|
465
628
|
function rewriteCodexAgentSkillPaths(agentFile, targetRoot) {
|
|
@@ -518,13 +681,13 @@ function buildDestinations(agent, platform) {
|
|
|
518
681
|
if (!relativeSource) {
|
|
519
682
|
throw new Error(`Agent ${agent.id} does not have a ${variantKey} harness variant.`);
|
|
520
683
|
}
|
|
521
|
-
if (typeof relativeSource !== "string" ||
|
|
684
|
+
if (typeof relativeSource !== "string" || HARNESS_PATH_TRAVERSAL.test(relativeSource) || path.isAbsolute(relativeSource)) {
|
|
522
685
|
throw new Error(
|
|
523
686
|
`Agent ${agent.id} ${variantKey} harness path '${relativeSource}' is invalid: ` +
|
|
524
687
|
`must be a relative path within the repository, no '..' traversal, no absolute paths.`
|
|
525
688
|
);
|
|
526
689
|
}
|
|
527
|
-
if (
|
|
690
|
+
if (!AGENT_ID_PATTERN.test(agent.id)) {
|
|
528
691
|
throw new Error(
|
|
529
692
|
`Agent id '${agent.id}' fails schema pattern ^[a-z0-9][a-z0-9-]*$. ` +
|
|
530
693
|
`Cannot derive a safe destination filename.`
|
|
@@ -576,7 +739,7 @@ function main() {
|
|
|
576
739
|
|
|
577
740
|
// Validate --provider early so the standalone path and the role-filter path
|
|
578
741
|
// share the same error surface.
|
|
579
|
-
if (args.provider &&
|
|
742
|
+
if (args.provider && !AGENT_ID_PATTERN.test(args.provider)) {
|
|
580
743
|
throw new Error(`Invalid --provider value '${args.provider}'. Must match /^[a-z0-9][a-z0-9-]*$/.`);
|
|
581
744
|
}
|
|
582
745
|
if (args.provider) {
|
|
@@ -653,26 +816,61 @@ function main() {
|
|
|
653
816
|
throw new Error("No agents selected. Use --agents, --role, --provider, or --all.");
|
|
654
817
|
}
|
|
655
818
|
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
819
|
+
const operations = [];
|
|
820
|
+
for (const agent of selectedAgents) {
|
|
821
|
+
for (const destination of buildDestinations(agent, platform)) {
|
|
822
|
+
operations.push({
|
|
823
|
+
...destination,
|
|
824
|
+
dest: path.join(args.repo, destination.destRelative),
|
|
825
|
+
agentId: agent.id,
|
|
826
|
+
version: agent.version,
|
|
827
|
+
});
|
|
659
828
|
}
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
const skillsDestRoot = SKILLS_PLATFORM_CONFIG[platform];
|
|
832
|
+
let skillPlan = null;
|
|
833
|
+
if (!args.noSkills && skillsDestRoot) {
|
|
834
|
+
const skillsByName = loadSkills();
|
|
835
|
+
// includeAll bundles every skill in the catalog. When --provider is set,
|
|
836
|
+
// selectedAgents is already scoped to that provider — bundling every
|
|
837
|
+
// skill would mix in hundreds of unrelated provider skills, violating
|
|
838
|
+
// the documented "provider install" contract. Scope skills to the
|
|
839
|
+
// selected agents' companion_skills in that case.
|
|
840
|
+
const includeAllSkills = args.all && !args.provider;
|
|
841
|
+
skillPlan = {
|
|
842
|
+
skillsByName,
|
|
843
|
+
...resolveCompanionSkills(
|
|
666
844
|
selectedAgents,
|
|
667
845
|
skillsByName,
|
|
668
846
|
selectedRole,
|
|
669
847
|
includeAllSkills,
|
|
670
848
|
args.provider ?? null
|
|
671
|
-
)
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
849
|
+
),
|
|
850
|
+
};
|
|
851
|
+
}
|
|
852
|
+
|
|
853
|
+
if (!args.force) {
|
|
854
|
+
const collisions = findCollisions(operations, skillPlan, skillsDestRoot, args.repo);
|
|
855
|
+
if (collisions.length > 0) {
|
|
856
|
+
const shown = collisions.slice(0, 10).map((p) => ` ${path.relative(args.repo, p)}`);
|
|
857
|
+
if (collisions.length > shown.length) {
|
|
858
|
+
shown.push(` ... and ${collisions.length - shown.length} more`);
|
|
675
859
|
}
|
|
860
|
+
throw new Error(
|
|
861
|
+
`Refusing to install: ${collisions.length} destination(s) already exist and ` +
|
|
862
|
+
`--force was not given. Nothing was written.\n${shown.join("\n")}`
|
|
863
|
+
);
|
|
864
|
+
}
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
if (args.dryRun) {
|
|
868
|
+
for (const agent of selectedAgents) {
|
|
869
|
+
console.log(`export agent: ${agent.id} [provider=${agent.provider}]`);
|
|
870
|
+
}
|
|
871
|
+
const dryRunSkillCount = skillPlan ? skillPlan.skillNames.length : 0;
|
|
872
|
+
for (const skillName of skillPlan ? skillPlan.skillNames : []) {
|
|
873
|
+
console.log(`export skill: ${skillName}`);
|
|
676
874
|
}
|
|
677
875
|
process.stderr.write(
|
|
678
876
|
`[vfa] --dry-run: ${selectedAgents.length} agent(s)` +
|
|
@@ -682,20 +880,12 @@ function main() {
|
|
|
682
880
|
return;
|
|
683
881
|
}
|
|
684
882
|
|
|
685
|
-
const operations = [];
|
|
686
|
-
for (const agent of selectedAgents) {
|
|
687
|
-
for (const destination of buildDestinations(agent, platform)) {
|
|
688
|
-
operations.push({
|
|
689
|
-
...destination,
|
|
690
|
-
dest: path.join(args.repo, destination.destRelative),
|
|
691
|
-
agentId: agent.id,
|
|
692
|
-
});
|
|
693
|
-
}
|
|
694
|
-
}
|
|
695
|
-
|
|
696
883
|
for (const operation of operations) {
|
|
697
884
|
assertWithin(args.repo, operation.dest, "write destination");
|
|
698
|
-
copyFile(operation.source, operation.dest, args.force, args.repo
|
|
885
|
+
copyFile(operation.source, operation.dest, args.force, args.repo, {
|
|
886
|
+
assetId: operation.agentId,
|
|
887
|
+
version: operation.version,
|
|
888
|
+
});
|
|
699
889
|
if (platform === "codex") {
|
|
700
890
|
rewriteCodexAgentSkillPaths(operation.dest, args.repo);
|
|
701
891
|
}
|
|
@@ -704,7 +894,6 @@ function main() {
|
|
|
704
894
|
);
|
|
705
895
|
}
|
|
706
896
|
|
|
707
|
-
const skillsDestRoot = SKILLS_PLATFORM_CONFIG[platform];
|
|
708
897
|
if (args.noSkills) {
|
|
709
898
|
process.stderr.write(`[vfa] --no-skills: companion skills not bundled.\n`);
|
|
710
899
|
} else if (!skillsDestRoot) {
|
|
@@ -718,20 +907,7 @@ function main() {
|
|
|
718
907
|
);
|
|
719
908
|
}
|
|
720
909
|
} else {
|
|
721
|
-
const skillsByName =
|
|
722
|
-
// includeAll bundles every skill in the catalog. When --provider is set,
|
|
723
|
-
// selectedAgents is already scoped to that provider — bundling every
|
|
724
|
-
// skill would mix in hundreds of unrelated provider skills, violating
|
|
725
|
-
// the documented "provider install" contract. Scope skills to the
|
|
726
|
-
// selected agents' companion_skills in that case.
|
|
727
|
-
const includeAllSkills = args.all && !args.provider;
|
|
728
|
-
const { skillNames, orphans } = resolveCompanionSkills(
|
|
729
|
-
selectedAgents,
|
|
730
|
-
skillsByName,
|
|
731
|
-
selectedRole,
|
|
732
|
-
includeAllSkills,
|
|
733
|
-
args.provider ?? null
|
|
734
|
-
);
|
|
910
|
+
const { skillsByName, skillNames, orphans } = skillPlan;
|
|
735
911
|
let bundled = 0;
|
|
736
912
|
for (const skillName of skillNames) {
|
|
737
913
|
const sourceDir = skillsByName.get(skillName)?.dir;
|
|
@@ -753,9 +929,26 @@ function main() {
|
|
|
753
929
|
}
|
|
754
930
|
}
|
|
755
931
|
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
932
|
+
// Run the CLI only when this file is the entry point. Without this guard the
|
|
933
|
+
// module could not be imported by tests without executing an export.
|
|
934
|
+
// npm installs the CLI as a symlink in node_modules/.bin, so process.argv[1] is
|
|
935
|
+
// the link while import.meta.url is the real file. Comparing them raw made the
|
|
936
|
+
// guard false for every packaged install, and `vfa-export-agents` silently
|
|
937
|
+
// produced no output. Resolve the link before comparing.
|
|
938
|
+
const invokedDirectly = (() => {
|
|
939
|
+
if (!process.argv[1]) return false;
|
|
940
|
+
try {
|
|
941
|
+
return import.meta.url === pathToFileURL(fs.realpathSync(process.argv[1])).href;
|
|
942
|
+
} catch {
|
|
943
|
+
return false;
|
|
944
|
+
}
|
|
945
|
+
})();
|
|
946
|
+
|
|
947
|
+
if (invokedDirectly) {
|
|
948
|
+
try {
|
|
949
|
+
main();
|
|
950
|
+
} catch (error) {
|
|
951
|
+
console.error(error.message);
|
|
952
|
+
process.exit(1);
|
|
953
|
+
}
|
|
761
954
|
}
|
|
@@ -1403,7 +1403,8 @@ def build():
|
|
|
1403
1403
|
|
|
1404
1404
|
write(os.path.join(hdir, "claude-code.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1405
1405
|
write(os.path.join(hdir, "cursor.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1406
|
-
|
|
1406
|
+
# Gemini CLI requires a slug `name`; see gemini_harness in gen_python_agents.py.
|
|
1407
|
+
write(os.path.join(hdir, "gemini.agent.md"), f"---\nname: \"{aid}-agent\"\ndisplay_name: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1407
1408
|
write(os.path.join(hdir, "kiro-ide.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1408
1409
|
write(os.path.join(hdir, "copilot.agent.md"), HARNESS_TEMPLATE_COPILOT.format(name=ag["name"], summary=ag["summary"], body=body))
|
|
1409
1410
|
write(os.path.join(hdir, "codex.toml"), codex_toml(ag))
|
|
@@ -358,6 +358,13 @@ def md_harness(a: dict) -> str:
|
|
|
358
358
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
359
359
|
|
|
360
360
|
|
|
361
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
362
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
363
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
364
|
+
def gemini_harness(a: dict) -> str:
|
|
365
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
366
|
+
|
|
367
|
+
|
|
361
368
|
def copilot_md(a: dict) -> str:
|
|
362
369
|
# static-review tier: read/search only. tests/validate-agent-tool-tiers.py fails any
|
|
363
370
|
# execution tool (execute/*, run_terminal_command, runCommands, terminal) here.
|
|
@@ -685,7 +692,7 @@ def build() -> None:
|
|
|
685
692
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
686
693
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
687
694
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
688
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
695
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
689
696
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
690
697
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
691
698
|
if a.get("is_maestro"):
|
|
@@ -317,6 +317,13 @@ def md_harness(a: dict) -> str:
|
|
|
317
317
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
318
318
|
|
|
319
319
|
|
|
320
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
321
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
322
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
323
|
+
def gemini_harness(a: dict) -> str:
|
|
324
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
325
|
+
|
|
326
|
+
|
|
320
327
|
def copilot_md(a: dict) -> str:
|
|
321
328
|
fm = (
|
|
322
329
|
"---\n"
|
|
@@ -519,7 +526,7 @@ def build() -> None:
|
|
|
519
526
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
520
527
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
521
528
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
522
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
529
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
523
530
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
524
531
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
525
532
|
if a.get("is_maestro"):
|
|
@@ -308,6 +308,13 @@ def md_harness(a: dict) -> str:
|
|
|
308
308
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
309
309
|
|
|
310
310
|
|
|
311
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
312
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
313
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
314
|
+
def gemini_harness(a: dict) -> str:
|
|
315
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
316
|
+
|
|
317
|
+
|
|
311
318
|
def copilot_md(a: dict) -> str:
|
|
312
319
|
fm = (
|
|
313
320
|
"---\n"
|
|
@@ -516,7 +523,7 @@ def build() -> None:
|
|
|
516
523
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
517
524
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
518
525
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
519
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
526
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
520
527
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
521
528
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
522
529
|
if a.get("is_maestro"):
|
|
@@ -1490,7 +1490,8 @@ def build():
|
|
|
1490
1490
|
|
|
1491
1491
|
write(os.path.join(hdir, "claude-code.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1492
1492
|
write(os.path.join(hdir, "cursor.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1493
|
-
|
|
1493
|
+
# Gemini CLI requires a slug `name`; see gemini_harness in gen_python_agents.py.
|
|
1494
|
+
write(os.path.join(hdir, "gemini.agent.md"), f"---\nname: \"{aid}-agent\"\ndisplay_name: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1494
1495
|
write(os.path.join(hdir, "kiro-ide.agent.md"), f"---\nname: \"{ag['name']}\"\ndescription: \"{ag['summary']}\"\n---\n\n{body}\n")
|
|
1495
1496
|
write(os.path.join(hdir, "copilot.agent.md"), HARNESS_TEMPLATE_COPILOT.format(name=ag["name"], summary=ag["summary"], body=body))
|
|
1496
1497
|
write(os.path.join(hdir, "codex.toml"), codex_toml(ag))
|
|
@@ -313,6 +313,13 @@ def md_harness(a: dict) -> str:
|
|
|
313
313
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
314
314
|
|
|
315
315
|
|
|
316
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
317
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
318
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
319
|
+
def gemini_harness(a: dict) -> str:
|
|
320
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
321
|
+
|
|
322
|
+
|
|
316
323
|
def copilot_md(a: dict) -> str:
|
|
317
324
|
fm = (
|
|
318
325
|
"---\n"
|
|
@@ -534,7 +541,7 @@ def build() -> None:
|
|
|
534
541
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
535
542
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
536
543
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
537
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
544
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
538
545
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
539
546
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
540
547
|
if a.get("is_maestro"):
|
|
@@ -332,6 +332,13 @@ def md_harness(a: dict) -> str:
|
|
|
332
332
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
333
333
|
|
|
334
334
|
|
|
335
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
336
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
337
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
338
|
+
def gemini_harness(a: dict) -> str:
|
|
339
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
340
|
+
|
|
341
|
+
|
|
335
342
|
# Copilot tool grants follow the execution tier, matching the repo's guarded-live precedent
|
|
336
343
|
# (agents/aws/aws-live-deployment-guarded-operator-agent grants execute/* ; the SAP
|
|
337
344
|
# read-only discovery agents grant read-only tools). A mutating-runtime operator with no
|
|
@@ -547,7 +554,7 @@ def build() -> None:
|
|
|
547
554
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
548
555
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
549
556
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
550
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
557
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
551
558
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
552
559
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
553
560
|
if a.get("is_maestro"):
|
|
@@ -859,6 +859,13 @@ def md_harness(a: dict) -> str:
|
|
|
859
859
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
860
860
|
|
|
861
861
|
|
|
862
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
863
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
864
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
865
|
+
def gemini_harness(a: dict) -> str:
|
|
866
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
867
|
+
|
|
868
|
+
|
|
862
869
|
def copilot_md(a: dict) -> str:
|
|
863
870
|
# No execution tool for any tier on this board — including the live guards, which
|
|
864
871
|
# emit an approved statement for a human to run rather than running it themselves.
|
|
@@ -1136,7 +1143,7 @@ def build() -> None:
|
|
|
1136
1143
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
1137
1144
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
1138
1145
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
1139
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
1146
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
1140
1147
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
1141
1148
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
1142
1149
|
if is_guard(a):
|
|
@@ -348,6 +348,13 @@ def md_harness(a: dict) -> str:
|
|
|
348
348
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
349
349
|
|
|
350
350
|
|
|
351
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
352
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
353
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
354
|
+
def gemini_harness(a: dict) -> str:
|
|
355
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
356
|
+
|
|
357
|
+
|
|
351
358
|
def copilot_md(a: dict) -> str:
|
|
352
359
|
fm = (
|
|
353
360
|
"---\n"
|
|
@@ -663,7 +670,7 @@ def build() -> None:
|
|
|
663
670
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
664
671
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
665
672
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
666
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
673
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
667
674
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
668
675
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
669
676
|
if a.get("is_maestro"):
|
|
@@ -326,6 +326,13 @@ def md_harness(a: dict) -> str:
|
|
|
326
326
|
return f"---\nname: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
327
327
|
|
|
328
328
|
|
|
329
|
+
# Gemini CLI requires `name` to be a slug (/^[a-z0-9-_]+$/ in
|
|
330
|
+
# packages/core/src/agents/agentLoader.ts) and skips any agent file that fails
|
|
331
|
+
# it, so the agent id goes there and the readable name moves to `display_name`.
|
|
332
|
+
def gemini_harness(a: dict) -> str:
|
|
333
|
+
return f"---\nname: {y(a['id'])}\ndisplay_name: {y(a['name'])}\ndescription: {y(a['summary'])}\n---\n\n{agent_body(a)}\n"
|
|
334
|
+
|
|
335
|
+
|
|
329
336
|
def copilot_md(a: dict) -> str:
|
|
330
337
|
fm = (
|
|
331
338
|
"---\n"
|
|
@@ -550,7 +557,7 @@ def build() -> None:
|
|
|
550
557
|
write(os.path.join(hdir, "copilot.agent.md"), copilot_md(a))
|
|
551
558
|
write(os.path.join(hdir, "claude-code.agent.md"), md_harness(a))
|
|
552
559
|
write(os.path.join(hdir, "cursor.agent.md"), md_harness(a))
|
|
553
|
-
write(os.path.join(hdir, "gemini.agent.md"),
|
|
560
|
+
write(os.path.join(hdir, "gemini.agent.md"), gemini_harness(a))
|
|
554
561
|
write(os.path.join(hdir, "kiro-ide.agent.md"), md_harness(a))
|
|
555
562
|
write(os.path.join(hdir, "kiro-cli.agent.json"), kiro_cli_json(a))
|
|
556
563
|
if a.get("is_maestro"):
|