@synapta/skills 0.1.0 → 0.1.2
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/dist/index.js +11 -4
- package/package.json +3 -4
- package/skills/ATTRIBUTION.md +80 -0
- package/skills/accessibility-audit/SKILL.md +325 -0
- package/skills/accessibility-audit/reference/wcag-checklist.md +103 -0
- package/skills/apns-notifier/SKILL.md +86 -0
- package/skills/approval-policy-enforcer/SKILL.md +66 -0
- package/skills/apps-sdk-builder/LICENSE.txt +201 -0
- package/skills/apps-sdk-builder/SKILL.md +328 -0
- package/skills/apps-sdk-builder/agents/openai.yaml +13 -0
- package/skills/apps-sdk-builder/references/app-archetypes.md +132 -0
- package/skills/apps-sdk-builder/references/apps-sdk-docs-workflow.md +135 -0
- package/skills/apps-sdk-builder/references/interactive-state-sync-patterns.md +113 -0
- package/skills/apps-sdk-builder/references/repo-contract-and-validation.md +93 -0
- package/skills/apps-sdk-builder/references/search-fetch-standard.md +67 -0
- package/skills/apps-sdk-builder/references/upstream-example-workflow.md +79 -0
- package/skills/apps-sdk-builder/references/window-openai-patterns.md +79 -0
- package/skills/apps-sdk-builder/scripts/scaffold_node_ext_apps.mjs +606 -0
- package/skills/architecture-selector/SKILL.md +64 -0
- package/skills/backlog-planner/SKILL.md +68 -0
- package/skills/carplay-entitlement-checker/SKILL.md +82 -0
- package/skills/concept-discovery/SKILL.md +517 -0
- package/skills/concept-discovery/assets/sample-analysis.json +81 -0
- package/skills/concept-discovery/expected_outputs/sample-enum-dictionary.md +25 -0
- package/skills/concept-discovery/expected_outputs/sample-page-user-list.md +83 -0
- package/skills/concept-discovery/expected_outputs/sample-prd-readme.md +43 -0
- package/skills/concept-discovery/references/framework-patterns.md +228 -0
- package/skills/concept-discovery/references/prd-quality-checklist.md +65 -0
- package/skills/concept-discovery/scripts/codebase_analyzer.py +732 -0
- package/skills/concept-discovery/scripts/prd_scaffolder.py +435 -0
- package/skills/dast-zap/SKILL.md +453 -0
- package/skills/dast-zap/assets/.gitkeep +9 -0
- package/skills/dast-zap/assets/github_action.yml +207 -0
- package/skills/dast-zap/assets/gitlab_ci.yml +226 -0
- package/skills/dast-zap/assets/zap_automation.yaml +196 -0
- package/skills/dast-zap/assets/zap_context.xml +192 -0
- package/skills/dast-zap/references/EXAMPLE.md +40 -0
- package/skills/dast-zap/references/api_testing_guide.md +475 -0
- package/skills/dast-zap/references/authentication_guide.md +431 -0
- package/skills/dast-zap/references/false_positive_handling.md +427 -0
- package/skills/dast-zap/references/owasp_mapping.md +255 -0
- package/skills/dep-sbom-scan/SKILL.md +466 -0
- package/skills/deploy-cloudflare/SKILL.md +930 -0
- package/skills/deploy-docker/SKILL.md +55 -0
- package/skills/deploy-fly/SKILL.md +228 -0
- package/skills/deploy-k8s/SKILL.md +108 -0
- package/skills/deploy-k8s/assets/logo.png +0 -0
- package/skills/deploy-k8s/docs/README.md +29 -0
- package/skills/deploy-k8s/docs/SUMMARY.md +56 -0
- package/skills/deploy-k8s/docs/advanced/token-efficiency.md +61 -0
- package/skills/deploy-k8s/docs/architecture/multi-tenancy.md +96 -0
- package/skills/deploy-k8s/docs/architecture/storage-and-state.md +102 -0
- package/skills/deploy-k8s/docs/architecture/workload-patterns.md +87 -0
- package/skills/deploy-k8s/docs/book.json +16 -0
- package/skills/deploy-k8s/docs/community/changelog.md +34 -0
- package/skills/deploy-k8s/docs/community/contributing.md +67 -0
- package/skills/deploy-k8s/docs/core-concepts/failure-modes.md +153 -0
- package/skills/deploy-k8s/docs/core-concepts/philosophy.md +83 -0
- package/skills/deploy-k8s/docs/core-concepts/workflow.md +124 -0
- package/skills/deploy-k8s/docs/examples/bad-patterns.md +47 -0
- package/skills/deploy-k8s/docs/examples/do-dont-checklist.md +37 -0
- package/skills/deploy-k8s/docs/examples/good-patterns.md +49 -0
- package/skills/deploy-k8s/docs/failure-modes/api-drift.md +104 -0
- package/skills/deploy-k8s/docs/failure-modes/fragile-rollouts.md +99 -0
- package/skills/deploy-k8s/docs/failure-modes/insecure-workload-defaults.md +80 -0
- package/skills/deploy-k8s/docs/failure-modes/network-exposure.md +98 -0
- package/skills/deploy-k8s/docs/failure-modes/privilege-sprawl.md +91 -0
- package/skills/deploy-k8s/docs/failure-modes/resource-starvation.md +85 -0
- package/skills/deploy-k8s/docs/getting-started/installation.md +152 -0
- package/skills/deploy-k8s/docs/getting-started/quick-start.md +115 -0
- package/skills/deploy-k8s/docs/guides/helm-patterns.md +71 -0
- package/skills/deploy-k8s/docs/guides/kustomize-patterns.md +65 -0
- package/skills/deploy-k8s/docs/guides/observability.md +67 -0
- package/skills/deploy-k8s/docs/guides/security-hardening.md +59 -0
- package/skills/deploy-k8s/docs/guides/validation-and-policy.md +66 -0
- package/skills/deploy-k8s/docs/integrations/mcp-integration.md +52 -0
- package/skills/deploy-k8s/docs/package-lock.json +2892 -0
- package/skills/deploy-k8s/docs/package.json +13 -0
- package/skills/deploy-k8s/references/api-drift.md +298 -0
- package/skills/deploy-k8s/references/conditional/aks-patterns.md +70 -0
- package/skills/deploy-k8s/references/conditional/eks-patterns.md +79 -0
- package/skills/deploy-k8s/references/conditional/gitops-controllers.md +71 -0
- package/skills/deploy-k8s/references/conditional/gke-patterns.md +74 -0
- package/skills/deploy-k8s/references/conditional/observability-stacks.md +80 -0
- package/skills/deploy-k8s/references/conditional/openshift-patterns.md +67 -0
- package/skills/deploy-k8s/references/daemonset-operator-patterns.md +155 -0
- package/skills/deploy-k8s/references/deployment-patterns.md +146 -0
- package/skills/deploy-k8s/references/do-dont-patterns.md +87 -0
- package/skills/deploy-k8s/references/examples-bad.md +282 -0
- package/skills/deploy-k8s/references/examples-good.md +440 -0
- package/skills/deploy-k8s/references/fragile-rollouts.md +303 -0
- package/skills/deploy-k8s/references/helm-patterns.md +203 -0
- package/skills/deploy-k8s/references/insecure-workload-defaults.md +300 -0
- package/skills/deploy-k8s/references/job-patterns.md +120 -0
- package/skills/deploy-k8s/references/kustomize-patterns.md +239 -0
- package/skills/deploy-k8s/references/multi-tenancy.md +343 -0
- package/skills/deploy-k8s/references/network-exposure.md +481 -0
- package/skills/deploy-k8s/references/observability.md +302 -0
- package/skills/deploy-k8s/references/privilege-sprawl.md +273 -0
- package/skills/deploy-k8s/references/resource-starvation.md +374 -0
- package/skills/deploy-k8s/references/security-hardening.md +209 -0
- package/skills/deploy-k8s/references/stateful-patterns.md +130 -0
- package/skills/deploy-k8s/references/storage-and-state.md +330 -0
- package/skills/deploy-k8s/references/validation-and-policy.md +242 -0
- package/skills/deploy-railway/SKILL.md +235 -0
- package/skills/deploy-railway/references/analyze-db-mongo.md +84 -0
- package/skills/deploy-railway/references/analyze-db-mysql.md +254 -0
- package/skills/deploy-railway/references/analyze-db-postgres.md +479 -0
- package/skills/deploy-railway/references/analyze-db-redis.md +208 -0
- package/skills/deploy-railway/references/analyze-db.md +344 -0
- package/skills/deploy-railway/references/configure.md +309 -0
- package/skills/deploy-railway/references/deploy.md +195 -0
- package/skills/deploy-railway/references/operate.md +214 -0
- package/skills/deploy-railway/references/request.md +248 -0
- package/skills/deploy-railway/references/setup.md +312 -0
- package/skills/deploy-railway/scripts/analyze-mongo.py +1549 -0
- package/skills/deploy-railway/scripts/analyze-mysql.py +1195 -0
- package/skills/deploy-railway/scripts/analyze-postgres.py +3058 -0
- package/skills/deploy-railway/scripts/analyze-redis.py +1090 -0
- package/skills/deploy-railway/scripts/dal.py +671 -0
- package/skills/deploy-railway/scripts/enable-pg-stats.py +170 -0
- package/skills/deploy-railway/scripts/pg-extensions.py +370 -0
- package/skills/deploy-railway/scripts/railway-api.sh +52 -0
- package/skills/deploy-ssh/SKILL.md +91 -0
- package/skills/deploy-vercel/SKILL.md +304 -0
- package/skills/deploy-vercel/resources/deploy-codex.sh +301 -0
- package/skills/deploy-vercel/resources/deploy.sh +301 -0
- package/skills/docs-runbooks/SKILL.md +399 -0
- package/skills/drive-status-renderer/SKILL.md +62 -0
- package/skills/iac-scan/SKILL.md +680 -0
- package/skills/iac-scan/assets/.gitkeep +9 -0
- package/skills/iac-scan/assets/checkov_config.yaml +94 -0
- package/skills/iac-scan/assets/github_actions.yml +199 -0
- package/skills/iac-scan/assets/gitlab_ci.yml +218 -0
- package/skills/iac-scan/assets/pre_commit_config.yaml +92 -0
- package/skills/iac-scan/references/EXAMPLE.md +40 -0
- package/skills/iac-scan/references/compliance_mapping.md +237 -0
- package/skills/iac-scan/references/custom_policies.md +460 -0
- package/skills/iac-scan/references/suppression_guide.md +431 -0
- package/skills/incident-briefing/SKILL.md +66 -0
- package/skills/incident-triage/SKILL.md +481 -0
- package/{LICENSE → skills/mcp-builder/LICENSE.txt} +15 -14
- package/skills/mcp-builder/SKILL.md +244 -0
- package/skills/mcp-builder/reference/evaluation.md +602 -0
- package/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
- package/skills/mcp-builder/reference/node_mcp_server.md +970 -0
- package/skills/mcp-builder/reference/python_mcp_server.md +719 -0
- package/skills/mcp-builder/scripts/connections.py +151 -0
- package/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/skills/mobile-pairing/SKILL.md +52 -0
- package/skills/ops-sre/SKILL.md +297 -0
- package/skills/playwright-qa/LICENSE.txt +201 -0
- package/skills/playwright-qa/NOTICE.txt +14 -0
- package/skills/playwright-qa/SKILL.md +156 -0
- package/skills/playwright-qa/agents/openai.yaml +6 -0
- package/skills/playwright-qa/assets/playwright-small.svg +3 -0
- package/skills/playwright-qa/assets/playwright.png +0 -0
- package/skills/playwright-qa/references/cli.md +116 -0
- package/skills/playwright-qa/references/workflows.md +95 -0
- package/skills/playwright-qa/scripts/playwright_cli.sh +25 -0
- package/skills/release-publish/SKILL.md +85 -0
- package/skills/repo-bootstrap/SKILL.md +92 -0
- package/skills/repo-bootstrap/assets/example-workflows/validate-agents.yml +89 -0
- package/skills/repo-bootstrap/assets/root-thin.md +141 -0
- package/skills/repo-bootstrap/assets/root-verbose.md +149 -0
- package/skills/repo-bootstrap/assets/scoped/backend-go.md +107 -0
- package/skills/repo-bootstrap/assets/scoped/backend-php.md +94 -0
- package/skills/repo-bootstrap/assets/scoped/backend-python.md +84 -0
- package/skills/repo-bootstrap/assets/scoped/backend-typescript.md +89 -0
- package/skills/repo-bootstrap/assets/scoped/claude-code-skill.md +101 -0
- package/skills/repo-bootstrap/assets/scoped/cli.md +83 -0
- package/skills/repo-bootstrap/assets/scoped/concourse.md +196 -0
- package/skills/repo-bootstrap/assets/scoped/ddev.md +68 -0
- package/skills/repo-bootstrap/assets/scoped/docker.md +160 -0
- package/skills/repo-bootstrap/assets/scoped/documentation.md +98 -0
- package/skills/repo-bootstrap/assets/scoped/examples.md +96 -0
- package/skills/repo-bootstrap/assets/scoped/frontend-typescript.md +88 -0
- package/skills/repo-bootstrap/assets/scoped/github-actions.md +174 -0
- package/skills/repo-bootstrap/assets/scoped/gitlab-ci.md +174 -0
- package/skills/repo-bootstrap/assets/scoped/oro-bundle.md +209 -0
- package/skills/repo-bootstrap/assets/scoped/oro-project.md +170 -0
- package/skills/repo-bootstrap/assets/scoped/python-modern.md +170 -0
- package/skills/repo-bootstrap/assets/scoped/resources.md +96 -0
- package/skills/repo-bootstrap/assets/scoped/skill-repo.md +139 -0
- package/skills/repo-bootstrap/assets/scoped/symfony.md +168 -0
- package/skills/repo-bootstrap/assets/scoped/testing.md +87 -0
- package/skills/repo-bootstrap/assets/scoped/typo3-docs.md +103 -0
- package/skills/repo-bootstrap/assets/scoped/typo3-extension.md +133 -0
- package/skills/repo-bootstrap/assets/scoped/typo3-project.md +137 -0
- package/skills/repo-bootstrap/assets/scoped/typo3-testing.md +80 -0
- package/skills/repo-bootstrap/checkpoints.yaml +279 -0
- package/skills/repo-bootstrap/evals/evals.json +385 -0
- package/skills/repo-bootstrap/references/ai-contribution-guidelines.md +63 -0
- package/skills/repo-bootstrap/references/ai-tool-compatibility.md +223 -0
- package/skills/repo-bootstrap/references/directory-coverage.md +82 -0
- package/skills/repo-bootstrap/references/examples/coding-agent-cli/AGENTS.md +70 -0
- package/skills/repo-bootstrap/references/examples/coding-agent-cli/go.mod +3 -0
- package/skills/repo-bootstrap/references/examples/coding-agent-cli/scripts-AGENTS.md +389 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/.env.example +13 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/AGENTS.md +91 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/package.json +33 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/pnpm-lock.yaml +3 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/AGENTS.md +91 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/config.ts +28 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/controllers/userController.ts +74 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/index.ts +26 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/middleware/errorHandler.ts +45 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/middleware/requestLogger.ts +18 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/routes/health.ts +18 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/routes/users.ts +13 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/utils/errors.ts +40 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/src/utils/logger.ts +14 -0
- package/skills/repo-bootstrap/references/examples/express-api-ts/tsconfig.json +24 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/.env.example +19 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/AGENTS.md +92 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/pyproject.toml +88 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/AGENTS.md +85 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/__init__.py +3 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/config.py +49 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/main.py +66 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/models/__init__.py +13 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/models/item.py +43 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/models/user.py +40 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/routes/__init__.py +5 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/routes/health.py +20 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/routes/items.py +61 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/routes/users.py +55 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/services/__init__.py +6 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/services/item_service.py +77 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/src/services/user_service.py +69 -0
- package/skills/repo-bootstrap/references/examples/fastapi-app/uv.lock +4 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/.scopes +3 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/AGENTS.md +86 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/admin/package.json +20 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/admin/src/App.tsx +5 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/cmd/api/main.go +7 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/go.mod +2 -0
- package/skills/repo-bootstrap/references/examples/go-api-with-react-admin/main.go +7 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/.scopes +3 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/AGENTS.md +89 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/go.mod +2 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/AGENTS.md +90 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/package.json +17 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/src/App.tsx +1 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/src/Button.tsx +1 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/src/Footer.tsx +1 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/src/Header.tsx +1 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/internal/web/src/Sidebar.tsx +1 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/main.go +7 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/package-lock.json +0 -0
- package/skills/repo-bootstrap/references/examples/go-with-internal-web-tsx/package.json +12 -0
- package/skills/repo-bootstrap/references/examples/ldap-selfservice/AGENTS.md +70 -0
- package/skills/repo-bootstrap/references/examples/ldap-selfservice/go.mod +3 -0
- package/skills/repo-bootstrap/references/examples/ldap-selfservice/internal-AGENTS.md +371 -0
- package/skills/repo-bootstrap/references/examples/ldap-selfservice/internal-web-AGENTS.md +448 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/.scopes +3 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/AGENTS.md +91 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/composer.json +8 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/package.json +15 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/pnpm-lock.yaml +0 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/src/Controller.php +3 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/AGENTS.md +92 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/package.json +26 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/src/App.tsx +3 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/src/Button.tsx +10 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/src/Footer.tsx +9 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/src/Header.tsx +9 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/src/main.tsx +3 -0
- package/skills/repo-bootstrap/references/examples/php-with-frontend/web/tsconfig.json +13 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/AGENTS.md +75 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/package.json +7 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/packages/web/package.json +11 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/packages/web/src/index.ts +11 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/pnpm-lock.yaml +42 -0
- package/skills/repo-bootstrap/references/examples/pnpm-workspace/pnpm-workspace.yaml +2 -0
- package/skills/repo-bootstrap/references/examples/simple-ldap-go/AGENTS.md +70 -0
- package/skills/repo-bootstrap/references/examples/simple-ldap-go/examples-AGENTS.md +45 -0
- package/skills/repo-bootstrap/references/examples/simple-ldap-go/go.mod +3 -0
- package/skills/repo-bootstrap/references/examples/t3x-rte-ckeditor-image/AGENTS.md +70 -0
- package/skills/repo-bootstrap/references/examples/t3x-rte-ckeditor-image/Classes-AGENTS.md +392 -0
- package/skills/repo-bootstrap/references/examples/t3x-rte-ckeditor-image/composer.json +8 -0
- package/skills/repo-bootstrap/references/feedback-memory-schema.md +135 -0
- package/skills/repo-bootstrap/references/git-hooks-setup.md +79 -0
- package/skills/repo-bootstrap/references/output-structure.md +124 -0
- package/skills/repo-bootstrap/references/scripts-guide.md +175 -0
- package/skills/repo-bootstrap/references/verification-guide.md +137 -0
- package/skills/repo-bootstrap/scripts/analyze-git-history.sh +315 -0
- package/skills/repo-bootstrap/scripts/check-freshness.sh +230 -0
- package/skills/repo-bootstrap/scripts/detect-golden-samples.sh +161 -0
- package/skills/repo-bootstrap/scripts/detect-heuristics.sh +93 -0
- package/skills/repo-bootstrap/scripts/detect-project.sh +486 -0
- package/skills/repo-bootstrap/scripts/detect-scopes.sh +330 -0
- package/skills/repo-bootstrap/scripts/detect-utilities.sh +133 -0
- package/skills/repo-bootstrap/scripts/extract-adrs.sh +194 -0
- package/skills/repo-bootstrap/scripts/extract-agent-configs.sh +331 -0
- package/skills/repo-bootstrap/scripts/extract-architecture-rules.sh +522 -0
- package/skills/repo-bootstrap/scripts/extract-ci-commands.sh +385 -0
- package/skills/repo-bootstrap/scripts/extract-ci-rules.sh +384 -0
- package/skills/repo-bootstrap/scripts/extract-commands.sh +358 -0
- package/skills/repo-bootstrap/scripts/extract-documentation.sh +308 -0
- package/skills/repo-bootstrap/scripts/extract-github-rulesets.sh +96 -0
- package/skills/repo-bootstrap/scripts/extract-github-settings.sh +88 -0
- package/skills/repo-bootstrap/scripts/extract-ide-settings.sh +228 -0
- package/skills/repo-bootstrap/scripts/extract-platform-files.sh +290 -0
- package/skills/repo-bootstrap/scripts/extract-quality-configs.sh +442 -0
- package/skills/repo-bootstrap/scripts/generate-agents.sh +2424 -0
- package/skills/repo-bootstrap/scripts/generate-file-map.sh +153 -0
- package/skills/repo-bootstrap/scripts/lib/config-root.sh +211 -0
- package/skills/repo-bootstrap/scripts/lib/summary.sh +244 -0
- package/skills/repo-bootstrap/scripts/lib/template.sh +397 -0
- package/skills/repo-bootstrap/scripts/validate-structure.sh +324 -0
- package/skills/repo-bootstrap/scripts/verify-commands.sh +615 -0
- package/skills/repo-bootstrap/scripts/verify-content.sh +302 -0
- package/skills/schema-api-contracts/SKILL.md +56 -0
- package/skills/secret-hygiene/SKILL.md +511 -0
- package/skills/secret-hygiene/assets/.gitkeep +9 -0
- package/skills/secret-hygiene/assets/config-balanced.toml +81 -0
- package/skills/secret-hygiene/assets/config-custom.toml +178 -0
- package/skills/secret-hygiene/assets/config-strict.toml +48 -0
- package/skills/secret-hygiene/assets/github-action.yml +181 -0
- package/skills/secret-hygiene/assets/gitlab-ci.yml +257 -0
- package/skills/secret-hygiene/assets/precommit-config.yaml +70 -0
- package/skills/secret-hygiene/references/EXAMPLE.md +40 -0
- package/skills/secret-hygiene/references/compliance_mapping.md +538 -0
- package/skills/secret-hygiene/references/detection_rules.md +276 -0
- package/skills/secret-hygiene/references/false_positives.md +598 -0
- package/skills/secret-hygiene/references/remediation_guide.md +530 -0
- package/skills/stack-selector/SKILL.md +56 -0
- package/skills/telegram-control/SKILL.md +110 -0
- package/skills/telegram-control/references/architecture.md +184 -0
- package/skills/telegram-control/references/convex.md +173 -0
- package/skills/telegram-control/references/error_handling.md +212 -0
- package/skills/telegram-control/references/initial_setup.md +165 -0
- package/skills/telegram-control/references/telegram_api.md +156 -0
- package/skills/telegram-control/scripts/cancel_message.ts +53 -0
- package/skills/telegram-control/scripts/list_scheduled.ts +103 -0
- package/skills/telegram-control/scripts/logger.ts +121 -0
- package/skills/telegram-control/scripts/proxy-util.ts +11 -0
- package/skills/telegram-control/scripts/schedule_message.ts +216 -0
- package/skills/telegram-control/scripts/send_message.ts +115 -0
- package/skills/telegram-control/scripts/setup.ts +185 -0
- package/skills/telegram-control/scripts/types.ts +75 -0
- package/skills/telegram-control/scripts/view_history.ts +74 -0
- package/skills/test-strategy/SKILL.md +352 -0
- package/skills/threat-model/SKILL.md +303 -0
- package/skills/threat-model/examples/example-output.md +196 -0
- package/skills/threat-model/template.md +96 -0
- package/skills/ts-lint/SKILL.md +80 -0
- package/skills/ui-flow/SKILL.md +668 -0
- package/skills/voice-command-router/SKILL.md +51 -0
- package/skills/widget-live-activity-sync/SKILL.md +66 -0
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skill_name": "agent-rules",
|
|
3
|
+
"evals": [
|
|
4
|
+
{
|
|
5
|
+
"id": 1,
|
|
6
|
+
"eval_name": "generate-agents-go-project",
|
|
7
|
+
"prompt": "Generate AGENTS.md for this Go project. It's a Docker job scheduler called Ofelia with go-cron integration, integration tests, and GitHub Actions CI.",
|
|
8
|
+
"expected_output": "A root AGENTS.md with Overview, Setup, Commands (make targets, go test), Architecture sections. Commands should be verified against the actual Makefile/go.mod. File paths should reference real files.",
|
|
9
|
+
"files": [],
|
|
10
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
11
|
+
"assertions": [
|
|
12
|
+
"Output file AGENTS.md exists in project root",
|
|
13
|
+
"Contains a top-level description section explaining the project",
|
|
14
|
+
"Contains a commands or build section with make targets",
|
|
15
|
+
"Listed make targets match actual Makefile targets",
|
|
16
|
+
"Contains go.mod Go version reference",
|
|
17
|
+
"File paths mentioned in AGENTS.md reference files that actually exist",
|
|
18
|
+
"Uses tables or structured format (not just prose paragraphs)",
|
|
19
|
+
"Does not duplicate content from README.md",
|
|
20
|
+
"Contains CI quality gates from GitHub Actions workflows"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": 2,
|
|
25
|
+
"eval_name": "generate-agents-typo3-extension",
|
|
26
|
+
"prompt": "Create AGENTS.md for this TYPO3 extension. It's a CKEditor plugin for image handling in the RTE.",
|
|
27
|
+
"expected_output": "A root AGENTS.md with TYPO3-specific sections. Should detect ext_emconf.php, composer.json with typo3-cms-extension type, Classes/ directory structure. Should list composer scripts and CI commands.",
|
|
28
|
+
"files": [],
|
|
29
|
+
"project_path": "/home/cybot/projects/t3x-cowriter/main",
|
|
30
|
+
"assertions": [
|
|
31
|
+
"Output file AGENTS.md exists in project root",
|
|
32
|
+
"Detects TYPO3 extension type",
|
|
33
|
+
"References ext_emconf.php or composer.json type",
|
|
34
|
+
"Lists composer scripts that exist in composer.json",
|
|
35
|
+
"Contains testing or CI section",
|
|
36
|
+
"Directory references match actual project structure",
|
|
37
|
+
"Uses Pointer Principle (references files, doesn't duplicate content)"
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"id": 3,
|
|
42
|
+
"eval_name": "generate-agents-skill-repo",
|
|
43
|
+
"prompt": "Generate AGENTS.md for this skill repository. It provides CLI tool management for AI agents.",
|
|
44
|
+
"expected_output": "An AGENTS.md appropriate for a skill repo - covering skill structure, SKILL.md location, scripts, references. Should NOT include setup/build sections typical of application projects since skills have no build step.",
|
|
45
|
+
"files": [],
|
|
46
|
+
"project_path": "/home/cybot/projects/cli-tools-skill/main",
|
|
47
|
+
"assertions": [
|
|
48
|
+
"Output file AGENTS.md exists in project root",
|
|
49
|
+
"Identifies project as a skill repository",
|
|
50
|
+
"References skills/cli-tools/SKILL.md",
|
|
51
|
+
"Lists scripts if any exist in the repo",
|
|
52
|
+
"Does NOT contain irrelevant build/compile instructions",
|
|
53
|
+
"Mentions the skill's purpose from SKILL.md description",
|
|
54
|
+
"Structure is concise (under 150 lines for a simple skill repo)"
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"id": 4,
|
|
59
|
+
"eval_name": "update-outdated-agents",
|
|
60
|
+
"prompt": "Check if the AGENTS.md in this project is current with the codebase. The project has changed since it was last updated. Identify what's outdated and fix it.",
|
|
61
|
+
"expected_output": "A freshness analysis identifying outdated sections, followed by an updated AGENTS.md. Should detect new files, changed commands, or removed components.",
|
|
62
|
+
"files": [],
|
|
63
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
64
|
+
"assertions": [
|
|
65
|
+
"Runs freshness check before modifying",
|
|
66
|
+
"Identifies specific outdated sections with evidence",
|
|
67
|
+
"Updated AGENTS.md preserves correct existing content",
|
|
68
|
+
"New content references files that actually exist",
|
|
69
|
+
"Commands listed in updated file actually execute"
|
|
70
|
+
]
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"id": 5,
|
|
74
|
+
"eval_name": "detect-scoped-files-needed",
|
|
75
|
+
"prompt": "This is a multi-language project with Go backend and TypeScript frontend. Determine if scoped AGENTS.md files are needed and create them if so.",
|
|
76
|
+
"expected_output": "Detection of distinct tech stacks requiring scoped files. Root AGENTS.md should be thin with pointers. Scoped files should have stack-specific details.",
|
|
77
|
+
"files": [],
|
|
78
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
79
|
+
"assertions": [
|
|
80
|
+
"Detects multiple tech stacks or distinct subsystems",
|
|
81
|
+
"Root AGENTS.md stays thin (under 80 lines)",
|
|
82
|
+
"Root AGENTS.md links to scoped files",
|
|
83
|
+
"Scoped files contain stack-specific commands and patterns",
|
|
84
|
+
"Each scoped file can stand alone for its directory"
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"id": 6,
|
|
89
|
+
"eval_name": "multi-language-hybrid-project",
|
|
90
|
+
"prompt": "Generate AGENTS.md for this TYPO3 extension that has both PHP backend (composer, PHPUnit, PHPStan) and JavaScript frontend (npm, Vitest, ESLint). Detect both stacks and organize accordingly.",
|
|
91
|
+
"expected_output": "An AGENTS.md that recognizes both PHP and JS toolchains. Should reference both composer.json and package.json commands. Root should stay focused and not bloated.",
|
|
92
|
+
"files": [],
|
|
93
|
+
"project_path": "/home/cybot/projects/t3x-cowriter/main",
|
|
94
|
+
"assertions": [
|
|
95
|
+
"Detects PHP stack (composer scripts, PHPUnit, ext_emconf.php)",
|
|
96
|
+
"Detects JavaScript stack (npm scripts, Vitest, ESLint)",
|
|
97
|
+
"Lists commands from both composer.json and package.json",
|
|
98
|
+
"Listed commands actually exist in respective config files",
|
|
99
|
+
"Root AGENTS.md stays thin and organized (not a wall of text)",
|
|
100
|
+
"Does not conflate PHP and JS testing commands"
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"id": 7,
|
|
105
|
+
"eval_name": "freshness-check-stale-agents",
|
|
106
|
+
"prompt": "The AGENTS.md in this project was written months ago. The project has since added new Makefile targets, changed CI workflows, and added new directories. Run a freshness check and update the AGENTS.md to reflect the current state.",
|
|
107
|
+
"expected_output": "A detailed freshness report identifying which sections are stale, what changed in the repo since AGENTS.md was last modified, and a surgically updated AGENTS.md that fixes only the outdated parts.",
|
|
108
|
+
"files": [],
|
|
109
|
+
"project_path": "/home/cybot/projects/t3x-cowriter/main",
|
|
110
|
+
"assertions": [
|
|
111
|
+
"Compares AGENTS.md modification time against recent git history",
|
|
112
|
+
"Identifies specific sections that reference outdated or missing files",
|
|
113
|
+
"Preserves sections that are still accurate",
|
|
114
|
+
"Updated content references files and commands that currently exist",
|
|
115
|
+
"Does not rewrite the entire file when only parts are stale"
|
|
116
|
+
]
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"id": 8,
|
|
120
|
+
"eval_name": "edge-case-minimal-project",
|
|
121
|
+
"prompt": "Generate AGENTS.md for this minimal project. It has very little structure - just a few files. Produce something useful without fabricating content.",
|
|
122
|
+
"expected_output": "A minimal but valid AGENTS.md that accurately reflects the sparse project. Should not invent build systems, test frameworks, or architecture that doesn't exist.",
|
|
123
|
+
"files": [],
|
|
124
|
+
"project_path": "/home/cybot/projects/agent-rules-skill/main",
|
|
125
|
+
"assertions": [
|
|
126
|
+
"Output file AGENTS.md exists and is valid markdown",
|
|
127
|
+
"Does not fabricate build commands that don't exist in the project",
|
|
128
|
+
"Does not invent test frameworks or CI pipelines not present",
|
|
129
|
+
"Accurately reflects actual project structure (skill repo layout)",
|
|
130
|
+
"Every file path mentioned actually exists in the project"
|
|
131
|
+
]
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"id": 9,
|
|
135
|
+
"eval_name": "verified-commands-principle",
|
|
136
|
+
"prompt": "Generate AGENTS.md for this project. Every command you list must actually work. After generating, verify each command by attempting to run it (dry-run where possible).",
|
|
137
|
+
"expected_output": "An AGENTS.md where every shell command, make target, and script listed has been verified to exist. No aspirational or copied-from-template commands.",
|
|
138
|
+
"files": [],
|
|
139
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
140
|
+
"assertions": [
|
|
141
|
+
"Every make target listed exists in the Makefile",
|
|
142
|
+
"Every go command listed is valid (go test, go build, etc.)",
|
|
143
|
+
"No commands from other projects or templates leak in",
|
|
144
|
+
"Commands include correct flags and paths for this specific project",
|
|
145
|
+
"Does not list commands like npm, composer, cargo that don't apply to this Go project"
|
|
146
|
+
]
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"id": 10,
|
|
150
|
+
"eval_name": "cross-platform-copilot-instructions",
|
|
151
|
+
"prompt": "Generate agent rules for this project. Create both AGENTS.md and .github/copilot-instructions.md. Ensure content is consistent between them but format-appropriate for each platform.",
|
|
152
|
+
"expected_output": "Two files: AGENTS.md and .github/copilot-instructions.md. Both should describe the same project accurately. copilot-instructions.md should follow GitHub Copilot prose format.",
|
|
153
|
+
"files": [],
|
|
154
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
155
|
+
"assertions": [
|
|
156
|
+
"AGENTS.md exists in outputs",
|
|
157
|
+
"copilot-instructions.md exists in outputs",
|
|
158
|
+
"Both files describe the same project with consistent facts",
|
|
159
|
+
"copilot-instructions.md follows GitHub Copilot prose format",
|
|
160
|
+
"No contradictions between the two files",
|
|
161
|
+
"copilot-instructions.md does not just copy AGENTS.md verbatim"
|
|
162
|
+
]
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"id": 11,
|
|
166
|
+
"eval_name": "ci-rules-extraction",
|
|
167
|
+
"prompt": "Generate AGENTS.md for this Go project. Include CI quality gates, required checks, and version requirements from the GitHub Actions workflows.",
|
|
168
|
+
"expected_output": "AGENTS.md includes CI/Quality Gates section extracted from .github/workflows/ with specific versions, required checks, and linting configs.",
|
|
169
|
+
"files": [],
|
|
170
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
171
|
+
"assertions": [
|
|
172
|
+
"Contains CI quality gates or required checks section",
|
|
173
|
+
"Lists Go version from CI matrix or go.mod",
|
|
174
|
+
"References specific CI workflow files",
|
|
175
|
+
"Mentions golangci-lint or linting configuration if present",
|
|
176
|
+
"Does not fabricate CI rules that don't exist in workflows"
|
|
177
|
+
]
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"id": 12,
|
|
181
|
+
"eval_name": "architecture-boundaries",
|
|
182
|
+
"prompt": "Generate AGENTS.md for this Go project. Include module boundaries and architectural constraints from the codebase structure.",
|
|
183
|
+
"expected_output": "AGENTS.md includes architecture section noting internal/ packages, module boundaries, and dependency patterns.",
|
|
184
|
+
"files": [],
|
|
185
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
186
|
+
"assertions": [
|
|
187
|
+
"Documents module or package boundaries from the codebase",
|
|
188
|
+
"Identifies architecture pattern from directory structure",
|
|
189
|
+
"References actual directory structure as evidence",
|
|
190
|
+
"Does not fabricate architectural rules not visible in code"
|
|
191
|
+
]
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"id": 13,
|
|
195
|
+
"eval_name": "adr-extraction",
|
|
196
|
+
"prompt": "Generate AGENTS.md for this project. Include any architectural decision records found in docs/adr/ or similar locations.",
|
|
197
|
+
"expected_output": "AGENTS.md includes Key Decisions section listing ADR titles with summaries and file links.",
|
|
198
|
+
"files": [],
|
|
199
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
200
|
+
"assertions": [
|
|
201
|
+
"Checks for docs/adr/ or similar ADR directories",
|
|
202
|
+
"If ADRs exist, lists titles with one-line summaries",
|
|
203
|
+
"Links to the ADR files rather than duplicating content",
|
|
204
|
+
"Does not fabricate decisions that don't exist"
|
|
205
|
+
]
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"id": 14,
|
|
209
|
+
"eval_name": "symlink-creation",
|
|
210
|
+
"prompt": "Generate AGENTS.md for this project with CLAUDE.md and GEMINI.md symlinks for cross-agent compatibility. Verify symlinks are correct at every level.",
|
|
211
|
+
"expected_output": "Root and scoped AGENTS.md files plus CLAUDE.md and GEMINI.md symlinks at every directory that has an AGENTS.md.",
|
|
212
|
+
"files": [],
|
|
213
|
+
"project_path": "/home/cybot/projects/ldap-selfservice-password-changer",
|
|
214
|
+
"assertions": [
|
|
215
|
+
"Root CLAUDE.md exists and is a symlink to AGENTS.md",
|
|
216
|
+
"Root GEMINI.md exists and is a symlink to AGENTS.md",
|
|
217
|
+
"Subdirectory AGENTS.md files also have CLAUDE.md symlinks",
|
|
218
|
+
"All symlinks use relative paths (not absolute)",
|
|
219
|
+
"Root AGENTS.md lists all scoped AGENTS.md paths in an index"
|
|
220
|
+
]
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"id": 15,
|
|
224
|
+
"eval_name": "symlink-safety-no-overwrite",
|
|
225
|
+
"prompt": "This project already has a CLAUDE.md with custom content (not a symlink). Generate AGENTS.md with --symlinks. Verify that the existing CLAUDE.md is NOT overwritten.",
|
|
226
|
+
"expected_output": "The existing non-symlink CLAUDE.md should be preserved. A warning should be logged.",
|
|
227
|
+
"files": [],
|
|
228
|
+
"project_path": "/home/cybot/projects/ldap-selfservice-password-changer",
|
|
229
|
+
"assertions": [
|
|
230
|
+
"Existing non-symlink CLAUDE.md is preserved without --force",
|
|
231
|
+
"A log message warns that CLAUDE.md exists and is not a symlink",
|
|
232
|
+
"AGENTS.md itself is not affected by --symlinks flag"
|
|
233
|
+
]
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"id": 16,
|
|
237
|
+
"eval_name": "git-hooks-detection",
|
|
238
|
+
"prompt": "I'm about to start working on this project -- what git hooks does it use and are they set up?",
|
|
239
|
+
"expected_output": "Should detect the hook framework (lefthook, husky, captainhook, or pre-commit) and explain how to install. If none exists, should flag the gap.",
|
|
240
|
+
"files": [],
|
|
241
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
242
|
+
"assertions": [
|
|
243
|
+
"Checks for lefthook.yml, .husky/, captainhook.json, .pre-commit-config.yaml",
|
|
244
|
+
"Reports which hook framework is found (or none)",
|
|
245
|
+
"If hooks exist, explains install command",
|
|
246
|
+
"If no hooks exist, recommends adding one",
|
|
247
|
+
"Does not assume a hook framework without evidence"
|
|
248
|
+
]
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"id": 17,
|
|
252
|
+
"eval_name": "pointer-principle-no-duplication",
|
|
253
|
+
"prompt": "Generate AGENTS.md for this project. The README.md already has extensive setup instructions. Do NOT duplicate README content -- point to it instead.",
|
|
254
|
+
"expected_output": "AGENTS.md should reference README.md for setup details rather than copying them. Uses the Pointer Principle.",
|
|
255
|
+
"files": [],
|
|
256
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
257
|
+
"assertions": [
|
|
258
|
+
"Does not copy setup instructions from README.md verbatim",
|
|
259
|
+
"Contains 'see README.md' or similar pointer for detailed setup",
|
|
260
|
+
"Root AGENTS.md stays under 80 lines",
|
|
261
|
+
"Focuses on agent-specific info (commands, boundaries, heuristics)",
|
|
262
|
+
"References README.md as a source but adds agent-specific value"
|
|
263
|
+
]
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"id": 18,
|
|
267
|
+
"eval_name": "validate-structure-compliance",
|
|
268
|
+
"prompt": "Run the validate-structure.sh script on this project and report any structural issues found in the existing AGENTS.md.",
|
|
269
|
+
"expected_output": "Script output showing which sections pass/fail validation. Should identify missing recommended sections and structural issues.",
|
|
270
|
+
"files": [],
|
|
271
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
272
|
+
"assertions": [
|
|
273
|
+
"Runs scripts/validate-structure.sh against the project",
|
|
274
|
+
"Reports pass/fail for each structural check",
|
|
275
|
+
"Identifies missing recommended sections",
|
|
276
|
+
"Does not crash on valid AGENTS.md files",
|
|
277
|
+
"Output is parseable and actionable"
|
|
278
|
+
]
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"id": 19,
|
|
282
|
+
"eval_name": "python-project-detection",
|
|
283
|
+
"prompt": "Generate AGENTS.md for this Python project. It uses poetry for dependency management, pytest for testing, and ruff for linting.",
|
|
284
|
+
"expected_output": "An AGENTS.md with Python-specific sections. Should detect pyproject.toml, poetry.lock, ruff config, and pytest settings.",
|
|
285
|
+
"files": [],
|
|
286
|
+
"project_path": "/home/cybot/projects/python-project/main",
|
|
287
|
+
"assertions": [
|
|
288
|
+
"Detects Python project from pyproject.toml or setup.py",
|
|
289
|
+
"Lists poetry commands if poetry.lock exists",
|
|
290
|
+
"References pytest configuration",
|
|
291
|
+
"Lists ruff or linting commands",
|
|
292
|
+
"Does not list npm/composer/go commands for a Python project"
|
|
293
|
+
]
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
"id": 20,
|
|
297
|
+
"eval_name": "template-selection-thin-vs-verbose",
|
|
298
|
+
"prompt": "Generate AGENTS.md for this small Go library. Use the thin template style -- the file should be minimal and focused.",
|
|
299
|
+
"expected_output": "A thin AGENTS.md under 50 lines with only essential sections: Commands, File Map, Heuristics, Boundaries.",
|
|
300
|
+
"files": [],
|
|
301
|
+
"project_path": "/home/cybot/projects/simple-ldap-go/main",
|
|
302
|
+
"assertions": [
|
|
303
|
+
"Output is under 50 lines",
|
|
304
|
+
"Contains Commands section with actual build/test commands",
|
|
305
|
+
"Contains precedence statement",
|
|
306
|
+
"Contains index of scoped files if any exist",
|
|
307
|
+
"Omits verbose sections like full architecture descriptions"
|
|
308
|
+
]
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"id": 21,
|
|
312
|
+
"eval_name": "verify-content-accuracy",
|
|
313
|
+
"prompt": "Run verify-content.sh on this project. Report any documented files that don't exist and any important undocumented files.",
|
|
314
|
+
"expected_output": "Content verification showing documented-but-missing files and undocumented-but-important files.",
|
|
315
|
+
"files": [],
|
|
316
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
317
|
+
"assertions": [
|
|
318
|
+
"Runs scripts/verify-content.sh against the project",
|
|
319
|
+
"Reports files referenced in AGENTS.md that don't exist",
|
|
320
|
+
"Reports important files not mentioned in AGENTS.md",
|
|
321
|
+
"Does not report false positives for valid paths",
|
|
322
|
+
"Output clearly distinguishes missing from undocumented"
|
|
323
|
+
]
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"id": 22,
|
|
327
|
+
"eval_name": "heuristics-table-generation",
|
|
328
|
+
"prompt": "Generate AGENTS.md for this project. Include a Heuristics table with project-specific quick-decision rules based on the codebase conventions.",
|
|
329
|
+
"expected_output": "A Heuristics section with When/Do table entries derived from actual project patterns (commit style, merge strategy, dependency policy).",
|
|
330
|
+
"files": [],
|
|
331
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
332
|
+
"assertions": [
|
|
333
|
+
"Contains a Heuristics section with table format",
|
|
334
|
+
"Heuristics are derived from actual project config (not generic)",
|
|
335
|
+
"Includes commit convention rule if conventional commits detected",
|
|
336
|
+
"Includes merge strategy if branch protection detected",
|
|
337
|
+
"Each heuristic is actionable (not vague advice)"
|
|
338
|
+
]
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"id": 23,
|
|
342
|
+
"eval_name": "no-fabrication-unknown-project",
|
|
343
|
+
"prompt": "Generate AGENTS.md for /tmp/empty-project which contains only a single README.md with 'Hello World'. Do not fabricate any content.",
|
|
344
|
+
"expected_output": "A minimal AGENTS.md acknowledging the sparse project. No fabricated commands, test frameworks, or architecture.",
|
|
345
|
+
"files": [],
|
|
346
|
+
"project_path": "/tmp/empty-project",
|
|
347
|
+
"assertions": [
|
|
348
|
+
"Does not list build commands that don't exist",
|
|
349
|
+
"Does not reference test frameworks not present",
|
|
350
|
+
"Does not invent CI pipelines",
|
|
351
|
+
"Produces a valid markdown file",
|
|
352
|
+
"May suggest next steps but does not pretend they exist"
|
|
353
|
+
]
|
|
354
|
+
},
|
|
355
|
+
{
|
|
356
|
+
"id": 24,
|
|
357
|
+
"eval_name": "scoped-agents-override-root",
|
|
358
|
+
"prompt": "This project has a root AGENTS.md saying 'use tabs for indentation'. The internal/web/ directory uses TypeScript with prettier configured for 2-space indentation. Generate a scoped AGENTS.md for internal/web/ that correctly overrides the root rule.",
|
|
359
|
+
"expected_output": "A scoped AGENTS.md that specifies 2-space indentation for TypeScript, overriding the root tab rule for this directory.",
|
|
360
|
+
"files": [],
|
|
361
|
+
"project_path": "/home/cybot/projects/ldap-selfservice-password-changer",
|
|
362
|
+
"assertions": [
|
|
363
|
+
"Scoped file mentions its own indentation convention",
|
|
364
|
+
"Does not blindly repeat root conventions that don't apply",
|
|
365
|
+
"References prettier or editorconfig as source of truth",
|
|
366
|
+
"Includes a note about scope override or precedence"
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
"id": 25,
|
|
371
|
+
"eval_name": "github-rulesets-extraction",
|
|
372
|
+
"prompt": "Generate AGENTS.md for this project. Extract GitHub repository rulesets and merge rules to document branch protection and required checks.",
|
|
373
|
+
"expected_output": "AGENTS.md includes repository settings section with merge strategy, branch protection rules, and required status checks.",
|
|
374
|
+
"files": [],
|
|
375
|
+
"project_path": "/home/cybot/projects/ofelia/main",
|
|
376
|
+
"assertions": [
|
|
377
|
+
"Contains repository settings or merge rules section",
|
|
378
|
+
"Documents merge strategy (squash/merge/rebase)",
|
|
379
|
+
"Documents required checks if available",
|
|
380
|
+
"Information matches actual GitHub settings",
|
|
381
|
+
"Does not fabricate branch protection rules"
|
|
382
|
+
]
|
|
383
|
+
}
|
|
384
|
+
]
|
|
385
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# AI Agent Contribution Guidelines
|
|
2
|
+
|
|
3
|
+
Guidelines for AI agents contributing to projects with AGENTS.md files. Based on the "3 Cs" framework from GitHub's open source mentorship research (March 2026).
|
|
4
|
+
|
|
5
|
+
## The 3 Cs
|
|
6
|
+
|
|
7
|
+
### Comprehension
|
|
8
|
+
|
|
9
|
+
Before submitting any code change, the agent must demonstrate understanding of the problem:
|
|
10
|
+
|
|
11
|
+
- Read the linked issue fully — understand the *why*, not just the symptoms
|
|
12
|
+
- Check if the issue is already assigned to someone
|
|
13
|
+
- Understand the trade-offs involved (performance vs readability, backwards compatibility, etc.)
|
|
14
|
+
- If the issue is unclear, ask for clarification rather than guessing
|
|
15
|
+
|
|
16
|
+
**Red flag**: Submitting code that "looks right" without understanding why the current behavior exists.
|
|
17
|
+
|
|
18
|
+
### Context
|
|
19
|
+
|
|
20
|
+
Every PR must provide enough context for efficient review:
|
|
21
|
+
|
|
22
|
+
- Link to the issue being addressed (Fixes #NNN)
|
|
23
|
+
- Explain the approach taken and alternatives considered
|
|
24
|
+
- If AI tools assisted the contribution, disclose this if the project requires it
|
|
25
|
+
- Include test evidence (test output, before/after screenshots)
|
|
26
|
+
- Note any side effects or breaking changes
|
|
27
|
+
|
|
28
|
+
**Red flag**: A PR with only "Fixes the bug" as description.
|
|
29
|
+
|
|
30
|
+
### Continuity
|
|
31
|
+
|
|
32
|
+
Contributions are not fire-and-forget:
|
|
33
|
+
|
|
34
|
+
- Respond to review comments within a reasonable timeframe
|
|
35
|
+
- Be willing to iterate on feedback
|
|
36
|
+
- Don't submit to many projects simultaneously without capacity to follow up
|
|
37
|
+
- If you can't continue, say so — maintainers prefer honesty over silence
|
|
38
|
+
|
|
39
|
+
**Red flag**: Opening a PR and never responding to review feedback.
|
|
40
|
+
|
|
41
|
+
## Detection Patterns
|
|
42
|
+
|
|
43
|
+
The agent-rules skill detects contribution requirements from:
|
|
44
|
+
|
|
45
|
+
| Source | What's extracted |
|
|
46
|
+
|--------|-----------------|
|
|
47
|
+
| `CONTRIBUTING.md` | Issue-first requirements, AI disclosure policy |
|
|
48
|
+
| PR templates (`.github/pull_request_template.md`) | Required fields (issue links, test plans) |
|
|
49
|
+
| Branch protection rules | Linked issue requirements |
|
|
50
|
+
| `AGENTS.md` | Agent-specific boundaries and conventions |
|
|
51
|
+
|
|
52
|
+
## What AGENTS.md Signals
|
|
53
|
+
|
|
54
|
+
Having an AGENTS.md file signals:
|
|
55
|
+
- The project is AI-contribution-ready
|
|
56
|
+
- Agents should follow the conventions documented in the file
|
|
57
|
+
- The closest AGENTS.md to the files being changed takes precedence
|
|
58
|
+
- Explicit user instructions override AGENTS.md
|
|
59
|
+
|
|
60
|
+
## References
|
|
61
|
+
|
|
62
|
+
- [Rethinking open source mentorship in the AI era](https://github.blog/open-source/maintainers/rethinking-open-source-mentorship-in-the-ai-era/) (GitHub Blog, March 2026)
|
|
63
|
+
- [agents.md convention](https://agents.md/) — the standard our skill implements
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
# AI Tool Compatibility
|
|
2
|
+
|
|
3
|
+
How AGENTS.md integrates with different AI coding tools, and what mitigations are needed for each.
|
|
4
|
+
|
|
5
|
+
## Compatibility Matrix (March 2026)
|
|
6
|
+
|
|
7
|
+
| Agent | Native AGENTS.md | Subdirectory Auto-Load | Own Format | Mitigation |
|
|
8
|
+
|-------|:-:|:-:|---|---|
|
|
9
|
+
| **Codex CLI** | Yes (creator) | Yes (best-in-class) | `AGENTS.md` | None |
|
|
10
|
+
| **GitHub Copilot** | Yes | Yes | `.github/copilot-instructions.md` | None |
|
|
11
|
+
| **Cursor** | Yes | Yes | `.cursor/rules/*.mdc` | None |
|
|
12
|
+
| **Windsurf** | Yes | Yes (auto-scoped) | `.windsurf/rules/` | None |
|
|
13
|
+
| **Devin** | Yes | Yes | AGENTS.md primary | None |
|
|
14
|
+
| **Augment Code** | Yes | Yes (hierarchical) | `.augment/rules/` | None |
|
|
15
|
+
| **Roo Code** | Yes | Partial (recursive) | `.roo/rules/` | None |
|
|
16
|
+
| **JetBrains Junie** | Yes | Needs config path | `.junie/guidelines.md` | Set Guidelines path for monorepos |
|
|
17
|
+
| **Gemini CLI** | Via config | Yes (excellent) | `GEMINI.md` | Symlink or settings.json config |
|
|
18
|
+
| **Aider** | Via config | No auto-discovery | `CONVENTIONS.md` | `.aider.conf.yml` config |
|
|
19
|
+
| **Claude Code** | **No** | On-demand (CLAUDE.md only) | `CLAUDE.md` | **Auto-created when `.claude/` detected** |
|
|
20
|
+
| **Continue.dev** | **No** | No | `.continue/rules/` | Copy/link into rules dir |
|
|
21
|
+
| **Amazon Q** | **No** | No | `.amazonq/rules/` | Copy into rules dir |
|
|
22
|
+
| **Cline** | **No** | No | `.clinerules/` | Copy/link into dir |
|
|
23
|
+
| **Sourcegraph Cody** | **No** | No | `.sourcegraph/*.rule.md` | Copy content |
|
|
24
|
+
| **Tabnine** | **No** | No | `.tabnine/guidelines/` | Copy content |
|
|
25
|
+
|
|
26
|
+
## Symlink Strategy (Recommended)
|
|
27
|
+
|
|
28
|
+
The most reliable cross-agent solution is to **symlink** agent-specific files to AGENTS.md.
|
|
29
|
+
This keeps AGENTS.md as the single source of truth while enabling native loading in each tool.
|
|
30
|
+
|
|
31
|
+
### What to create
|
|
32
|
+
|
|
33
|
+
At **every level** where an AGENTS.md exists (root AND subdirectories):
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# For each directory containing AGENTS.md:
|
|
37
|
+
ln -s AGENTS.md CLAUDE.md # Claude Code on-demand loading
|
|
38
|
+
ln -s AGENTS.md GEMINI.md # Gemini CLI on-demand loading
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Why subdirectory symlinks matter (verified behavior)
|
|
42
|
+
|
|
43
|
+
Claude Code loads CLAUDE.md files **on demand** when the agent reads files in that directory.
|
|
44
|
+
Without a CLAUDE.md symlink, subdirectory AGENTS.md files are **never auto-loaded** — even if
|
|
45
|
+
the root AGENTS.md explicitly links to them and says "read nearest AGENTS.md."
|
|
46
|
+
|
|
47
|
+
**Tested scenarios (March 2026):**
|
|
48
|
+
|
|
49
|
+
| Setup | Result |
|
|
50
|
+
|-------|--------|
|
|
51
|
+
| Root CLAUDE.md symlink only, no subdirectory symlinks | Subdirectory AGENTS.md NOT loaded. Agent sees root links but does not proactively read them. |
|
|
52
|
+
| Root + subdirectory CLAUDE.md symlinks | Subdirectory AGENTS.md auto-loaded when agent works in that directory. |
|
|
53
|
+
| Root instructions say "read nearest AGENTS.md" | Agent acknowledges instruction but does NOT act on it without explicit prompting. |
|
|
54
|
+
|
|
55
|
+
### Commit symlinks to git
|
|
56
|
+
|
|
57
|
+
Symlinks are tiny (9 bytes each) and should be committed:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
git add CLAUDE.md GEMINI.md
|
|
61
|
+
git add internal/CLAUDE.md internal/GEMINI.md # etc.
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
They work on all platforms (Linux, macOS, Windows with `core.symlinks=true`).
|
|
65
|
+
|
|
66
|
+
## Claude Code
|
|
67
|
+
|
|
68
|
+
Claude Code only reads `CLAUDE.md` files natively. AGENTS.md is not recognized.
|
|
69
|
+
|
|
70
|
+
**Feature request**: [anthropics/claude-code#6235](https://github.com/anthropics/claude-code/issues/6235) (3,294+ upvotes, no official response as of March 2026).
|
|
71
|
+
|
|
72
|
+
### Loading behavior
|
|
73
|
+
|
|
74
|
+
- **Root CLAUDE.md**: Auto-loaded at session start (always in context)
|
|
75
|
+
- **Subdirectory CLAUDE.md**: Loaded on demand when agent reads/edits files in that directory
|
|
76
|
+
- **AGENTS.md**: Never loaded natively — requires symlink
|
|
77
|
+
|
|
78
|
+
### Auto-detection (default behavior)
|
|
79
|
+
|
|
80
|
+
When `generate-agents.sh` detects a `.claude/` directory in the project, it **automatically creates
|
|
81
|
+
CLAUDE.md symlinks** at every level where an AGENTS.md is generated. No flags required.
|
|
82
|
+
|
|
83
|
+
This means Claude Code users get working agent instructions out of the box, without needing to
|
|
84
|
+
remember `--symlinks` or `--claude-shim` flags.
|
|
85
|
+
|
|
86
|
+
To opt out, pass `--no-symlinks` explicitly.
|
|
87
|
+
|
|
88
|
+
### Manual symlinks (if not using the generator)
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Root
|
|
92
|
+
ln -s AGENTS.md CLAUDE.md
|
|
93
|
+
|
|
94
|
+
# Every subdirectory with its own AGENTS.md
|
|
95
|
+
ln -s AGENTS.md src/CLAUDE.md
|
|
96
|
+
ln -s AGENTS.md internal/CLAUDE.md
|
|
97
|
+
ln -s AGENTS.md internal/web/CLAUDE.md
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Alternative: @import shim (root only, legacy)
|
|
101
|
+
|
|
102
|
+
If you need Claude-specific overrides on top of AGENTS.md:
|
|
103
|
+
|
|
104
|
+
```markdown
|
|
105
|
+
<!-- CLAUDE.md -->
|
|
106
|
+
@AGENTS.md
|
|
107
|
+
|
|
108
|
+
<!-- Claude-specific overrides below -->
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Note: `@import` only works at root level. Subdirectories still need symlinks for on-demand loading.
|
|
112
|
+
|
|
113
|
+
### Alternative: SessionStart hook
|
|
114
|
+
|
|
115
|
+
For skill users only — auto-create symlinks at session start:
|
|
116
|
+
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"hooks": {
|
|
120
|
+
"SessionStart": [{
|
|
121
|
+
"matcher": "",
|
|
122
|
+
"hooks": [{
|
|
123
|
+
"type": "command",
|
|
124
|
+
"command": "find . -name AGENTS.md -not -path './.git/*' | while read f; do dir=$(dirname \"$f\"); [ ! -e \"$dir/CLAUDE.md\" ] && ln -s AGENTS.md \"$dir/CLAUDE.md\"; done",
|
|
125
|
+
"timeout": 5
|
|
126
|
+
}]
|
|
127
|
+
}]
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
This only helps users who have the hook installed. Committed symlinks are more reliable.
|
|
133
|
+
|
|
134
|
+
## Google Gemini CLI
|
|
135
|
+
|
|
136
|
+
Gemini CLI reads `GEMINI.md` natively with excellent hierarchical support (global, project, subdirectory).
|
|
137
|
+
|
|
138
|
+
### Mitigation options
|
|
139
|
+
|
|
140
|
+
**Option A: Symlink** (recommended)
|
|
141
|
+
```bash
|
|
142
|
+
ln -s AGENTS.md GEMINI.md # At every level
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Option B: settings.json config**
|
|
146
|
+
```json
|
|
147
|
+
{
|
|
148
|
+
"context": {
|
|
149
|
+
"fileName": ["AGENTS.md", "GEMINI.md"]
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## OpenAI Codex
|
|
155
|
+
|
|
156
|
+
Codex is the creator of the AGENTS.md standard and has the best support.
|
|
157
|
+
|
|
158
|
+
- **Concatenation order**: `~/.codex/AGENTS.md` → root → nested directories → current dir
|
|
159
|
+
- **Override files**: `AGENTS.override.md` at any level temporarily replaces the base file
|
|
160
|
+
- **Size limit**: Default 32 KiB combined (`project_doc_max_bytes`)
|
|
161
|
+
- **Fallback filenames**: Configurable via `~/.codex/config.toml`
|
|
162
|
+
|
|
163
|
+
**Best practices:**
|
|
164
|
+
- Keep root AGENTS.md under 4 KiB (leaves room for 7+ nested files)
|
|
165
|
+
- Use `--style=thin` template for optimal Codex compatibility
|
|
166
|
+
- Use AGENTS.override.md for directory-specific behavior changes
|
|
167
|
+
|
|
168
|
+
## Aider
|
|
169
|
+
|
|
170
|
+
Aider reads `CONVENTIONS.md` by default. AGENTS.md requires explicit configuration.
|
|
171
|
+
|
|
172
|
+
### Mitigation: .aider.conf.yml
|
|
173
|
+
|
|
174
|
+
```yaml
|
|
175
|
+
# .aider.conf.yml
|
|
176
|
+
read:
|
|
177
|
+
- AGENTS.md
|
|
178
|
+
- internal/AGENTS.md # No auto-discovery — list each file explicitly
|
|
179
|
+
- internal/web/AGENTS.md
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
Or via CLI: `aider --read AGENTS.md`
|
|
183
|
+
|
|
184
|
+
## GitHub Copilot
|
|
185
|
+
|
|
186
|
+
Full native support for AGENTS.md including subdirectories (announced August 2025).
|
|
187
|
+
Also reads CLAUDE.md and GEMINI.md as fallbacks.
|
|
188
|
+
|
|
189
|
+
Additionally supports its own format:
|
|
190
|
+
- `.github/copilot-instructions.md` — repository-wide instructions
|
|
191
|
+
- `.github/instructions/*.instructions.md` — path-scoped via YAML frontmatter `applyTo` globs
|
|
192
|
+
|
|
193
|
+
## Agents Without Native Support
|
|
194
|
+
|
|
195
|
+
For **Continue.dev**, **Amazon Q**, **Cline**, **Sourcegraph Cody**, and **Tabnine**:
|
|
196
|
+
|
|
197
|
+
These agents use proprietary directory formats. The only mitigation is to copy or symlink
|
|
198
|
+
AGENTS.md content into their respective directories:
|
|
199
|
+
|
|
200
|
+
| Agent | Target |
|
|
201
|
+
|-------|--------|
|
|
202
|
+
| Continue.dev | `.continue/rules/agents.md` |
|
|
203
|
+
| Amazon Q | `.amazonq/rules/agents.md` |
|
|
204
|
+
| Cline | `.clinerules/agents.md` |
|
|
205
|
+
| Sourcegraph Cody | `.sourcegraph/agents.rule.md` |
|
|
206
|
+
| Tabnine | `.tabnine/guidelines/agents.md` |
|
|
207
|
+
|
|
208
|
+
Feature requests are open for most of these tools.
|
|
209
|
+
|
|
210
|
+
## Generation Script Integration
|
|
211
|
+
|
|
212
|
+
`generate-agents.sh` creates `CLAUDE.md` and `GEMINI.md` symlinks **by default** at every
|
|
213
|
+
level where an AGENTS.md is generated. Additionally, when a `.claude/` directory is detected
|
|
214
|
+
in the project (indicating a Claude Code environment), CLAUDE.md symlink creation is
|
|
215
|
+
**automatically enabled** even if `--no-symlinks` was passed.
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
scripts/generate-agents.sh /path/to/project # Symlinks created by default
|
|
219
|
+
scripts/generate-agents.sh /path/to/project --no-symlinks # Skip symlinks (unless .claude/ detected)
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
The `--claude-shim` flag creates a root-only CLAUDE.md with `@import` (legacy behavior).
|
|
223
|
+
Use the default symlink behavior instead for full subdirectory support.
|