@jetrabbits/agentic 0.0.1

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.
Files changed (440) hide show
  1. package/AGENTS.md +143 -0
  2. package/README.md +154 -0
  3. package/agentic +1615 -0
  4. package/areas/devops/ci-cd/AGENTS.md +48 -0
  5. package/areas/devops/ci-cd/PROMPTS.md +7 -0
  6. package/areas/devops/ci-cd/prompts/onboard-repo.md +97 -0
  7. package/areas/devops/ci-cd/prompts/pipeline-debug.md +103 -0
  8. package/areas/devops/ci-cd/prompts/release-pipeline.md +115 -0
  9. package/areas/devops/ci-cd/rules/pipeline-standards.md +33 -0
  10. package/areas/devops/ci-cd/rules/quality-gates.md +24 -0
  11. package/areas/devops/ci-cd/rules/supply-chain-security.md +34 -0
  12. package/areas/devops/ci-cd/skills/artifact-management/SKILL.md +157 -0
  13. package/areas/devops/ci-cd/skills/build-optimization/SKILL.md +168 -0
  14. package/areas/devops/ci-cd/skills/github-actions-patterns/SKILL.md +190 -0
  15. package/areas/devops/ci-cd/skills/gitlab-ci-patterns/SKILL.md +169 -0
  16. package/areas/devops/ci-cd/skills/pipeline-security/SKILL.md +161 -0
  17. package/areas/devops/ci-cd/workflows/onboard-repo.md +73 -0
  18. package/areas/devops/ci-cd/workflows/pipeline-debug.md +66 -0
  19. package/areas/devops/ci-cd/workflows/release-pipeline.md +115 -0
  20. package/areas/devops/database-ops/AGENTS.md +47 -0
  21. package/areas/devops/database-ops/prompts/backup-verify.md +83 -0
  22. package/areas/devops/database-ops/prompts/db-incident.md +127 -0
  23. package/areas/devops/database-ops/rules/access-control.md +20 -0
  24. package/areas/devops/database-ops/rules/backup-policy.md +33 -0
  25. package/areas/devops/database-ops/rules/migration-runbook.md +32 -0
  26. package/areas/devops/database-ops/skills/backup-restore/SKILL.md +226 -0
  27. package/areas/devops/database-ops/skills/db-performance/SKILL.md +205 -0
  28. package/areas/devops/database-ops/skills/migration-safety/SKILL.md +155 -0
  29. package/areas/devops/database-ops/skills/postgres-operations/SKILL.md +156 -0
  30. package/areas/devops/database-ops/skills/redis-operations/SKILL.md +174 -0
  31. package/areas/devops/database-ops/workflows/backup-verify.md +107 -0
  32. package/areas/devops/database-ops/workflows/db-incident.md +86 -0
  33. package/areas/devops/devsecops/AGENTS.md +47 -0
  34. package/areas/devops/devsecops/prompts/policy-onboard.md +79 -0
  35. package/areas/devops/devsecops/prompts/security-scan-pipeline.md +131 -0
  36. package/areas/devops/devsecops/rules/container-security.md +22 -0
  37. package/areas/devops/devsecops/rules/policy-as-code.md +37 -0
  38. package/areas/devops/devsecops/rules/shift-left-policy.md +26 -0
  39. package/areas/devops/devsecops/skills/container-hardening/SKILL.md +146 -0
  40. package/areas/devops/devsecops/skills/opa-policies/SKILL.md +188 -0
  41. package/areas/devops/devsecops/skills/sbom-supply-chain/SKILL.md +165 -0
  42. package/areas/devops/devsecops/skills/secret-detection/SKILL.md +190 -0
  43. package/areas/devops/devsecops/skills/sigstore-signing/SKILL.md +184 -0
  44. package/areas/devops/devsecops/workflows/policy-onboard.md +104 -0
  45. package/areas/devops/devsecops/workflows/security-scan-pipeline.md +155 -0
  46. package/areas/devops/infrastructure/AGENTS.md +50 -0
  47. package/areas/devops/infrastructure/prompts/destroy-environment.md +81 -0
  48. package/areas/devops/infrastructure/prompts/drift-remediation.md +71 -0
  49. package/areas/devops/infrastructure/prompts/module-development.md +69 -0
  50. package/areas/devops/infrastructure/prompts/provision-environment.md +121 -0
  51. package/areas/devops/infrastructure/rules/iac-standards.md +80 -0
  52. package/areas/devops/infrastructure/rules/immutability.md +28 -0
  53. package/areas/devops/infrastructure/rules/secret-hygiene.md +53 -0
  54. package/areas/devops/infrastructure/rules/state-management.md +47 -0
  55. package/areas/devops/infrastructure/skills/ansible-playbooks/SKILL.md +174 -0
  56. package/areas/devops/infrastructure/skills/cost-optimization/SKILL.md +177 -0
  57. package/areas/devops/infrastructure/skills/drift-detection/SKILL.md +178 -0
  58. package/areas/devops/infrastructure/skills/state-management/SKILL.md +159 -0
  59. package/areas/devops/infrastructure/skills/terraform-modules/SKILL.md +169 -0
  60. package/areas/devops/infrastructure/workflows/destroy-environment.md +96 -0
  61. package/areas/devops/infrastructure/workflows/drift-remediation.md +66 -0
  62. package/areas/devops/infrastructure/workflows/module-development.md +101 -0
  63. package/areas/devops/infrastructure/workflows/provision-environment.md +96 -0
  64. package/areas/devops/kubernetes/AGENTS.md +57 -0
  65. package/areas/devops/kubernetes/PROMPTS.md +9 -0
  66. package/areas/devops/kubernetes/prompts/cluster-bootstrap.md +67 -0
  67. package/areas/devops/kubernetes/prompts/debug-workload.md +91 -0
  68. package/areas/devops/kubernetes/prompts/onboard-service.md +101 -0
  69. package/areas/devops/kubernetes/prompts/upgrade-cluster.md +63 -0
  70. package/areas/devops/kubernetes/rules/cluster-standards.md +51 -0
  71. package/areas/devops/kubernetes/rules/resource-governance.md +80 -0
  72. package/areas/devops/kubernetes/rules/upgrade-policy.md +52 -0
  73. package/areas/devops/kubernetes/rules/workload-security.md +64 -0
  74. package/areas/devops/kubernetes/skills/cluster-operations/SKILL.md +136 -0
  75. package/areas/devops/kubernetes/skills/helm-charts/SKILL.md +152 -0
  76. package/areas/devops/kubernetes/skills/network-policies/SKILL.md +169 -0
  77. package/areas/devops/kubernetes/skills/pod-troubleshooting/SKILL.md +129 -0
  78. package/areas/devops/kubernetes/skills/rbac-design/SKILL.md +148 -0
  79. package/areas/devops/kubernetes/skills/resource-tuning/SKILL.md +156 -0
  80. package/areas/devops/kubernetes/workflows/cluster-bootstrap.md +194 -0
  81. package/areas/devops/kubernetes/workflows/debug-workload.md +108 -0
  82. package/areas/devops/kubernetes/workflows/onboard-service.md +124 -0
  83. package/areas/devops/kubernetes/workflows/upgrade-cluster.md +165 -0
  84. package/areas/devops/networking/AGENTS.md +47 -0
  85. package/areas/devops/networking/prompts/onboard-ingress.md +119 -0
  86. package/areas/devops/networking/prompts/service-mesh-onboard.md +77 -0
  87. package/areas/devops/networking/rules/ingress-standards.md +17 -0
  88. package/areas/devops/networking/rules/network-segmentation.md +24 -0
  89. package/areas/devops/networking/rules/tls-policy.md +32 -0
  90. package/areas/devops/networking/skills/dns-management/SKILL.md +169 -0
  91. package/areas/devops/networking/skills/ingress-patterns/SKILL.md +165 -0
  92. package/areas/devops/networking/skills/service-mesh/SKILL.md +206 -0
  93. package/areas/devops/networking/skills/tls-termination/SKILL.md +198 -0
  94. package/areas/devops/networking/skills/vpc-design/SKILL.md +132 -0
  95. package/areas/devops/networking/workflows/onboard-ingress.md +64 -0
  96. package/areas/devops/networking/workflows/service-mesh-onboard.md +122 -0
  97. package/areas/devops/observability/AGENTS.md +48 -0
  98. package/areas/devops/observability/prompts/alert-investigation.md +117 -0
  99. package/areas/devops/observability/prompts/observability-stack-setup.md +99 -0
  100. package/areas/devops/observability/prompts/onboard-service-monitoring.md +79 -0
  101. package/areas/devops/observability/rules/alerting-standards.md +36 -0
  102. package/areas/devops/observability/rules/data-retention.md +19 -0
  103. package/areas/devops/observability/rules/golden-signals.md +28 -0
  104. package/areas/devops/observability/skills/distributed-tracing/SKILL.md +149 -0
  105. package/areas/devops/observability/skills/grafana-dashboards/SKILL.md +201 -0
  106. package/areas/devops/observability/skills/log-aggregation/SKILL.md +159 -0
  107. package/areas/devops/observability/skills/prometheus-alertmanager/SKILL.md +188 -0
  108. package/areas/devops/observability/skills/slo-implementation/SKILL.md +189 -0
  109. package/areas/devops/observability/workflows/alert-investigation.md +98 -0
  110. package/areas/devops/observability/workflows/observability-stack-setup.md +156 -0
  111. package/areas/devops/observability/workflows/onboard-service-monitoring.md +83 -0
  112. package/areas/devops/sre/AGENTS.md +48 -0
  113. package/areas/devops/sre/prompts/incident-response.md +129 -0
  114. package/areas/devops/sre/prompts/postmortem.md +101 -0
  115. package/areas/devops/sre/prompts/slo-review.md +125 -0
  116. package/areas/devops/sre/rules/error-budget-policy.md +25 -0
  117. package/areas/devops/sre/rules/on-call-standards.md +25 -0
  118. package/areas/devops/sre/rules/slo-policy.md +31 -0
  119. package/areas/devops/sre/skills/capacity-planning/SKILL.md +162 -0
  120. package/areas/devops/sre/skills/chaos-engineering/SKILL.md +186 -0
  121. package/areas/devops/sre/skills/incident-command/SKILL.md +119 -0
  122. package/areas/devops/sre/skills/postmortem-analysis/SKILL.md +104 -0
  123. package/areas/devops/sre/skills/slo-sli-design/SKILL.md +145 -0
  124. package/areas/devops/sre/workflows/incident-response.md +66 -0
  125. package/areas/devops/sre/workflows/postmortem.md +90 -0
  126. package/areas/devops/sre/workflows/slo-review.md +95 -0
  127. package/areas/software/backend/AGENTS.md +59 -0
  128. package/areas/software/backend/PROMPTS.md +50 -0
  129. package/areas/software/backend/README.md +48 -0
  130. package/areas/software/backend/prompts/add-migration.md +93 -0
  131. package/areas/software/backend/prompts/create-endpoint.md +97 -0
  132. package/areas/software/backend/prompts/debug-issue.md +87 -0
  133. package/areas/software/backend/prompts/develop-epic.md +83 -0
  134. package/areas/software/backend/prompts/develop-feature.md +91 -0
  135. package/areas/software/backend/prompts/refactor-module.md +79 -0
  136. package/areas/software/backend/prompts/test-feature.md +89 -0
  137. package/areas/software/backend/rules/architecture.md +20 -0
  138. package/areas/software/backend/rules/data_access.md +20 -0
  139. package/areas/software/backend/rules/security.md +20 -0
  140. package/areas/software/backend/rules/testing.md +19 -0
  141. package/areas/software/backend/skills/api-design/SKILL.md +170 -0
  142. package/areas/software/backend/skills/async-processing/SKILL.md +152 -0
  143. package/areas/software/backend/skills/database-modeling/SKILL.md +173 -0
  144. package/areas/software/backend/skills/observability/SKILL.md +162 -0
  145. package/areas/software/backend/skills/troubleshooting/SKILL.md +139 -0
  146. package/areas/software/backend/workflows/add-migration.md +79 -0
  147. package/areas/software/backend/workflows/create-endpoint.md +89 -0
  148. package/areas/software/backend/workflows/debug-issue.md +77 -0
  149. package/areas/software/backend/workflows/develop-epic.md +78 -0
  150. package/areas/software/backend/workflows/develop-feature.md +98 -0
  151. package/areas/software/backend/workflows/refactor-module.md +73 -0
  152. package/areas/software/backend/workflows/test-feature.md +67 -0
  153. package/areas/software/data-engineering/AGENTS.md +59 -0
  154. package/areas/software/data-engineering/PROMPTS.md +32 -0
  155. package/areas/software/data-engineering/prompts/backfill-data.md +107 -0
  156. package/areas/software/data-engineering/prompts/data-quality-incident.md +109 -0
  157. package/areas/software/data-engineering/prompts/lineage-trace.md +121 -0
  158. package/areas/software/data-engineering/prompts/new-model.md +117 -0
  159. package/areas/software/data-engineering/prompts/schema-migration.md +111 -0
  160. package/areas/software/data-engineering/rules/data-governance.md +11 -0
  161. package/areas/software/data-engineering/rules/pii-handling.md +19 -0
  162. package/areas/software/data-engineering/rules/pipeline-integrity.md +11 -0
  163. package/areas/software/data-engineering/rules/schema-management.md +21 -0
  164. package/areas/software/data-engineering/skills/data-modeling/SKILL.md +49 -0
  165. package/areas/software/data-engineering/skills/dbt-patterns/SKILL.md +43 -0
  166. package/areas/software/data-engineering/skills/lineage-governance/SKILL.md +38 -0
  167. package/areas/software/data-engineering/skills/orchestration/SKILL.md +35 -0
  168. package/areas/software/data-engineering/skills/quality-checks/SKILL.md +50 -0
  169. package/areas/software/data-engineering/skills/sql-optimization/SKILL.md +47 -0
  170. package/areas/software/data-engineering/skills/streaming-patterns/SKILL.md +48 -0
  171. package/areas/software/data-engineering/workflows/backfill-data.md +59 -0
  172. package/areas/software/data-engineering/workflows/data-quality-incident.md +64 -0
  173. package/areas/software/data-engineering/workflows/lineage-trace.md +56 -0
  174. package/areas/software/data-engineering/workflows/new-model.md +71 -0
  175. package/areas/software/data-engineering/workflows/schema-migration.md +67 -0
  176. package/areas/software/frontend/AGENTS.md +60 -0
  177. package/areas/software/frontend/PROMPTS.md +32 -0
  178. package/areas/software/frontend/prompts/a11y-fix.md +75 -0
  179. package/areas/software/frontend/prompts/bundle-analyze.md +75 -0
  180. package/areas/software/frontend/prompts/release-prep.md +83 -0
  181. package/areas/software/frontend/prompts/scaffold-component.md +69 -0
  182. package/areas/software/frontend/prompts/visual-regression.md +73 -0
  183. package/areas/software/frontend/rules/accessibility.md +16 -0
  184. package/areas/software/frontend/rules/architecture.md +29 -0
  185. package/areas/software/frontend/rules/performance.md +23 -0
  186. package/areas/software/frontend/rules/quality.md +12 -0
  187. package/areas/software/frontend/skills/a11y-audit/SKILL.md +61 -0
  188. package/areas/software/frontend/skills/api-integration/SKILL.md +58 -0
  189. package/areas/software/frontend/skills/component-design/SKILL.md +171 -0
  190. package/areas/software/frontend/skills/css-architecture/SKILL.md +146 -0
  191. package/areas/software/frontend/skills/error-handling/SKILL.md +55 -0
  192. package/areas/software/frontend/skills/performance-tuning/SKILL.md +58 -0
  193. package/areas/software/frontend/skills/state-management/SKILL.md +54 -0
  194. package/areas/software/frontend/skills/testing-patterns/SKILL.md +69 -0
  195. package/areas/software/frontend/workflows/a11y-fix.md +63 -0
  196. package/areas/software/frontend/workflows/bundle-analyze.md +56 -0
  197. package/areas/software/frontend/workflows/release-prep.md +66 -0
  198. package/areas/software/frontend/workflows/scaffold-component.md +67 -0
  199. package/areas/software/frontend/workflows/visual-regression.md +65 -0
  200. package/areas/software/full-stack/AGENTS.md +72 -0
  201. package/areas/software/full-stack/PROMPTS.md +66 -0
  202. package/areas/software/full-stack/prompts/backend-project-full-cycle.md +141 -0
  203. package/areas/software/full-stack/prompts/debug-issue.md +115 -0
  204. package/areas/software/full-stack/prompts/develop-feature.md +119 -0
  205. package/areas/software/full-stack/prompts/feature-implementation-flow.md +137 -0
  206. package/areas/software/full-stack/prompts/testing-ci-pipeline.md +119 -0
  207. package/areas/software/full-stack/rules/api-design-guide.md +24 -0
  208. package/areas/software/full-stack/rules/async-concurrency-guide.md +21 -0
  209. package/areas/software/full-stack/rules/backend-architecture-rule.md +41 -0
  210. package/areas/software/full-stack/rules/background-jobs-guide.md +20 -0
  211. package/areas/software/full-stack/rules/code-quality-guide.md +22 -0
  212. package/areas/software/full-stack/rules/database-access-guide.md +24 -0
  213. package/areas/software/full-stack/rules/database-migrations-guide.md +24 -0
  214. package/areas/software/full-stack/rules/domain-models-guide.md +28 -0
  215. package/areas/software/full-stack/rules/e2e-test-guide.md +18 -0
  216. package/areas/software/full-stack/rules/env-settings-guide.md +34 -0
  217. package/areas/software/full-stack/rules/error-handling-guide.md +20 -0
  218. package/areas/software/full-stack/rules/logging-observability-guide.md +22 -0
  219. package/areas/software/full-stack/rules/project-guide.md +34 -0
  220. package/areas/software/full-stack/rules/python-venv-guide.md +23 -0
  221. package/areas/software/full-stack/rules/security-guide.md +22 -0
  222. package/areas/software/full-stack/rules/svt-test-guide.md +17 -0
  223. package/areas/software/full-stack/rules/testing-ci-guide.md +25 -0
  224. package/areas/software/full-stack/skills/api-design-principles/SKILL.md +125 -0
  225. package/areas/software/full-stack/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  226. package/areas/software/full-stack/skills/api-design-principles/assets/rest-api-template.py +182 -0
  227. package/areas/software/full-stack/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  228. package/areas/software/full-stack/skills/api-design-principles/references/rest-best-practices.md +408 -0
  229. package/areas/software/full-stack/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  230. package/areas/software/full-stack/skills/api-patterns/SKILL.md +81 -0
  231. package/areas/software/full-stack/skills/api-patterns/api-style.md +42 -0
  232. package/areas/software/full-stack/skills/api-patterns/auth.md +24 -0
  233. package/areas/software/full-stack/skills/api-patterns/documentation.md +26 -0
  234. package/areas/software/full-stack/skills/api-patterns/graphql.md +41 -0
  235. package/areas/software/full-stack/skills/api-patterns/rate-limiting.md +31 -0
  236. package/areas/software/full-stack/skills/api-patterns/response.md +37 -0
  237. package/areas/software/full-stack/skills/api-patterns/rest.md +40 -0
  238. package/areas/software/full-stack/skills/api-patterns/scripts/api_validator.py +211 -0
  239. package/areas/software/full-stack/skills/api-patterns/security-testing.md +122 -0
  240. package/areas/software/full-stack/skills/api-patterns/trpc.md +41 -0
  241. package/areas/software/full-stack/skills/api-patterns/versioning.md +22 -0
  242. package/areas/software/full-stack/skills/app-builder/SKILL.md +135 -0
  243. package/areas/software/full-stack/skills/app-builder/agent-coordination.md +71 -0
  244. package/areas/software/full-stack/skills/app-builder/feature-building.md +53 -0
  245. package/areas/software/full-stack/skills/app-builder/project-detection.md +34 -0
  246. package/areas/software/full-stack/skills/app-builder/scaffolding.md +118 -0
  247. package/areas/software/full-stack/skills/app-builder/tech-stack.md +40 -0
  248. package/areas/software/full-stack/skills/app-builder/templates/SKILL.md +39 -0
  249. package/areas/software/full-stack/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
  250. package/areas/software/full-stack/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
  251. package/areas/software/full-stack/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
  252. package/areas/software/full-stack/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
  253. package/areas/software/full-stack/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
  254. package/areas/software/full-stack/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
  255. package/areas/software/full-stack/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
  256. package/areas/software/full-stack/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
  257. package/areas/software/full-stack/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
  258. package/areas/software/full-stack/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
  259. package/areas/software/full-stack/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
  260. package/areas/software/full-stack/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
  261. package/areas/software/full-stack/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
  262. package/areas/software/full-stack/skills/backend-developer/SKILL.md +58 -0
  263. package/areas/software/full-stack/skills/bash-pro/SKILL.md +310 -0
  264. package/areas/software/full-stack/skills/blackbox-test/SKILL.md +84 -0
  265. package/areas/software/full-stack/skills/prompt-project-planner/SKILL.md +130 -0
  266. package/areas/software/full-stack/skills/prompt-project-planner/output.schema.md +68 -0
  267. package/areas/software/full-stack/skills/prompt-project-planner/questions.md +80 -0
  268. package/areas/software/full-stack/skills/python-pro/SKILL.md +158 -0
  269. package/areas/software/full-stack/skills/skill-creator/LICENSE.txt +202 -0
  270. package/areas/software/full-stack/skills/skill-creator/SKILL.md +356 -0
  271. package/areas/software/full-stack/skills/skill-creator/references/output-patterns.md +82 -0
  272. package/areas/software/full-stack/skills/skill-creator/references/workflows.md +28 -0
  273. package/areas/software/full-stack/skills/skill-creator/scripts/init_skill.py +303 -0
  274. package/areas/software/full-stack/skills/skill-creator/scripts/package_skill.py +110 -0
  275. package/areas/software/full-stack/skills/skill-creator/scripts/quick_validate.py +95 -0
  276. package/areas/software/full-stack/workflows/backend-project-full-cycle.md +132 -0
  277. package/areas/software/full-stack/workflows/debug-issue.md +70 -0
  278. package/areas/software/full-stack/workflows/develop-feature.md +85 -0
  279. package/areas/software/full-stack/workflows/feature-implementation-flow.md +78 -0
  280. package/areas/software/full-stack/workflows/testing-ci-pipeline.md +65 -0
  281. package/areas/software/general/AGENTS.md +68 -0
  282. package/areas/software/general/prompts/code-review-workflow.md +87 -0
  283. package/areas/software/general/prompts/development-cycle-workflow.md +83 -0
  284. package/areas/software/general/prompts/project-setup-workflow.md +93 -0
  285. package/areas/software/general/rules/code-style-guide.md +31 -0
  286. package/areas/software/general/rules/docker-compose-guide.md +27 -0
  287. package/areas/software/general/rules/git-workflow-guide.md +27 -0
  288. package/areas/software/general/rules/github-workflow-guide.md +27 -0
  289. package/areas/software/general/rules/gitlab-ci-guide.md +27 -0
  290. package/areas/software/general/rules/lint-format-guide.md +29 -0
  291. package/areas/software/general/rules/makefile-guide.md +34 -0
  292. package/areas/software/general/rules/readme-sync-guide.md +40 -0
  293. package/areas/software/general/rules/sdlc-methodology-guide.md +27 -0
  294. package/areas/software/general/rules/sdlc-role-responsibilities.md +108 -0
  295. package/areas/software/general/skills/general-dev-tools/SKILL.md +324 -0
  296. package/areas/software/general/workflows/code-review-workflow.md +84 -0
  297. package/areas/software/general/workflows/development-cycle-workflow.md +85 -0
  298. package/areas/software/general/workflows/project-setup-workflow.md +94 -0
  299. package/areas/software/mlops/AGENTS.md +57 -0
  300. package/areas/software/mlops/PROMPTS.md +32 -0
  301. package/areas/software/mlops/prompts/champion-challenger.md +87 -0
  302. package/areas/software/mlops/prompts/deploy-endpoint.md +91 -0
  303. package/areas/software/mlops/prompts/evaluate-model.md +87 -0
  304. package/areas/software/mlops/prompts/model-incident.md +87 -0
  305. package/areas/software/mlops/prompts/train-experiment.md +83 -0
  306. package/areas/software/mlops/rules/data-integrity.md +9 -0
  307. package/areas/software/mlops/rules/model-governance.md +9 -0
  308. package/areas/software/mlops/rules/production-safety.md +9 -0
  309. package/areas/software/mlops/rules/reproducibility.md +9 -0
  310. package/areas/software/mlops/skills/experiment-tracking/SKILL.md +29 -0
  311. package/areas/software/mlops/skills/feature-engineering/SKILL.md +44 -0
  312. package/areas/software/mlops/skills/inference-serving/SKILL.md +35 -0
  313. package/areas/software/mlops/skills/model-evaluation/SKILL.md +40 -0
  314. package/areas/software/mlops/skills/model-monitoring/SKILL.md +32 -0
  315. package/areas/software/mlops/workflows/champion-challenger.md +65 -0
  316. package/areas/software/mlops/workflows/deploy-endpoint.md +70 -0
  317. package/areas/software/mlops/workflows/evaluate-model.md +63 -0
  318. package/areas/software/mlops/workflows/model-incident.md +64 -0
  319. package/areas/software/mlops/workflows/train-experiment.md +56 -0
  320. package/areas/software/mobile/AGENTS.md +58 -0
  321. package/areas/software/mobile/PROMPTS.md +32 -0
  322. package/areas/software/mobile/prompts/crash-triage.md +63 -0
  323. package/areas/software/mobile/prompts/device-testing.md +83 -0
  324. package/areas/software/mobile/prompts/ota-update.md +75 -0
  325. package/areas/software/mobile/prompts/release-build.md +67 -0
  326. package/areas/software/mobile/prompts/store-submission.md +79 -0
  327. package/areas/software/mobile/rules/offline-first.md +10 -0
  328. package/areas/software/mobile/rules/performance-budget.md +20 -0
  329. package/areas/software/mobile/rules/platform-compliance.md +17 -0
  330. package/areas/software/mobile/rules/security-mobile.md +9 -0
  331. package/areas/software/mobile/skills/app-store-prep/SKILL.md +27 -0
  332. package/areas/software/mobile/skills/mobile-testing/SKILL.md +36 -0
  333. package/areas/software/mobile/skills/native-modules/SKILL.md +38 -0
  334. package/areas/software/mobile/skills/navigation-patterns/SKILL.md +49 -0
  335. package/areas/software/mobile/skills/push-notifications/SKILL.md +40 -0
  336. package/areas/software/mobile/skills/state-sync/SKILL.md +48 -0
  337. package/areas/software/mobile/workflows/crash-triage.md +63 -0
  338. package/areas/software/mobile/workflows/device-testing.md +54 -0
  339. package/areas/software/mobile/workflows/ota-update.md +54 -0
  340. package/areas/software/mobile/workflows/release-build.md +67 -0
  341. package/areas/software/mobile/workflows/store-submission.md +63 -0
  342. package/areas/software/platform/AGENTS.md +67 -0
  343. package/areas/software/platform/PROMPTS.md +32 -0
  344. package/areas/software/platform/prompts/cost-audit.md +117 -0
  345. package/areas/software/platform/prompts/deploy-production.md +109 -0
  346. package/areas/software/platform/prompts/drift-check.md +107 -0
  347. package/areas/software/platform/prompts/incident-response.md +121 -0
  348. package/areas/software/platform/prompts/provision-env.md +113 -0
  349. package/areas/software/platform/rules/cost-governance.md +11 -0
  350. package/areas/software/platform/rules/immutability.md +17 -0
  351. package/areas/software/platform/rules/reliability.md +19 -0
  352. package/areas/software/platform/rules/security-posture.md +12 -0
  353. package/areas/software/platform/skills/ci-cd-pipelines/SKILL.md +58 -0
  354. package/areas/software/platform/skills/incident-response/SKILL.md +41 -0
  355. package/areas/software/platform/skills/k8s-manifests/SKILL.md +56 -0
  356. package/areas/software/platform/skills/networking/SKILL.md +44 -0
  357. package/areas/software/platform/skills/observability-setup/SKILL.md +49 -0
  358. package/areas/software/platform/skills/secrets-management/SKILL.md +43 -0
  359. package/areas/software/platform/skills/terraform-patterns/SKILL.md +75 -0
  360. package/areas/software/platform/workflows/cost-audit.md +61 -0
  361. package/areas/software/platform/workflows/deploy-production.md +67 -0
  362. package/areas/software/platform/workflows/drift-check.md +61 -0
  363. package/areas/software/platform/workflows/incident-response.md +69 -0
  364. package/areas/software/platform/workflows/provision-env.md +77 -0
  365. package/areas/software/qa/AGENTS.md +58 -0
  366. package/areas/software/qa/PROMPTS.md +32 -0
  367. package/areas/software/qa/prompts/flakiness-investigation.md +61 -0
  368. package/areas/software/qa/prompts/performance-audit.md +65 -0
  369. package/areas/software/qa/prompts/regression-suite.md +61 -0
  370. package/areas/software/qa/prompts/smoke-test.md +65 -0
  371. package/areas/software/qa/prompts/test-coverage-report.md +61 -0
  372. package/areas/software/qa/rules/flakiness-policy.md +12 -0
  373. package/areas/software/qa/rules/quality-gates.md +28 -0
  374. package/areas/software/qa/rules/test-data.md +9 -0
  375. package/areas/software/qa/rules/test-strategy.md +11 -0
  376. package/areas/software/qa/skills/accessibility-testing/SKILL.md +139 -0
  377. package/areas/software/qa/skills/api-testing/SKILL.md +140 -0
  378. package/areas/software/qa/skills/e2e-patterns/SKILL.md +152 -0
  379. package/areas/software/qa/skills/performance-testing/SKILL.md +177 -0
  380. package/areas/software/qa/skills/test-data-management/SKILL.md +161 -0
  381. package/areas/software/qa/skills/test-pyramid/SKILL.md +127 -0
  382. package/areas/software/qa/workflows/flakiness-investigation.md +63 -0
  383. package/areas/software/qa/workflows/performance-audit.md +59 -0
  384. package/areas/software/qa/workflows/regression-suite.md +59 -0
  385. package/areas/software/qa/workflows/smoke-test.md +64 -0
  386. package/areas/software/qa/workflows/test-coverage-report.md +57 -0
  387. package/areas/software/security/AGENTS.md +58 -0
  388. package/areas/software/security/PROMPTS.md +32 -0
  389. package/areas/software/security/prompts/compliance-report.md +113 -0
  390. package/areas/software/security/prompts/pen-test-sim.md +113 -0
  391. package/areas/software/security/prompts/secret-rotation.md +115 -0
  392. package/areas/software/security/prompts/security-scan.md +91 -0
  393. package/areas/software/security/prompts/threat-model-review.md +105 -0
  394. package/areas/software/security/rules/compliance-baseline.md +23 -0
  395. package/areas/software/security/rules/dependency-policy.md +12 -0
  396. package/areas/software/security/rules/secrets-policy.md +22 -0
  397. package/areas/software/security/rules/secure-coding.md +22 -0
  398. package/areas/software/security/skills/auth-patterns/SKILL.md +42 -0
  399. package/areas/software/security/skills/crypto-standards/SKILL.md +42 -0
  400. package/areas/software/security/skills/dependency-audit/SKILL.md +29 -0
  401. package/areas/software/security/skills/sast-dast-interpretation/SKILL.md +33 -0
  402. package/areas/software/security/skills/security-headers/SKILL.md +29 -0
  403. package/areas/software/security/skills/threat-modeling/SKILL.md +36 -0
  404. package/areas/software/security/workflows/compliance-report.md +57 -0
  405. package/areas/software/security/workflows/pen-test-sim.md +63 -0
  406. package/areas/software/security/workflows/secret-rotation.md +67 -0
  407. package/areas/software/security/workflows/security-scan.md +64 -0
  408. package/areas/software/security/workflows/threat-model-review.md +62 -0
  409. package/areas/template/AGENTS-area.tmpl.md +61 -0
  410. package/areas/template/AGENTS.tmpl.md +67 -0
  411. package/areas/template/GUIDE.md +102 -0
  412. package/areas/template/PROMPTS.tmpl.md +29 -0
  413. package/areas/template/README.md +57 -0
  414. package/areas/template/README.tmpl.md +51 -0
  415. package/areas/template/prompt.tmpl.md +101 -0
  416. package/areas/template/rule.tmpl.md +71 -0
  417. package/areas/template/skill.tmpl.md +108 -0
  418. package/areas/template/workflow.tmpl.md +104 -0
  419. package/bin/agentic.js +24 -0
  420. package/extensions/antigravity/GEMINI.md +10 -0
  421. package/extensions/claude/CLAUDE.md +10 -0
  422. package/extensions/codex/AGENTS.override.md +93 -0
  423. package/extensions/gemini/GEMINI.md +10 -0
  424. package/extensions/opencode/agents/designer.md +65 -0
  425. package/extensions/opencode/agents/developer.md +63 -0
  426. package/extensions/opencode/agents/devops-engineer.md +69 -0
  427. package/extensions/opencode/agents/pm.md +61 -0
  428. package/extensions/opencode/agents/product-owner.md +76 -0
  429. package/extensions/opencode/agents/qa.md +66 -0
  430. package/extensions/opencode/agents/team-lead.md +67 -0
  431. package/extensions/opencode/commands/feature.md +75 -0
  432. package/extensions/opencode/opencode.json +93 -0
  433. package/extensions/opencode/plugins/model-checker.json +14 -0
  434. package/extensions/opencode/plugins/model-checker.ts +279 -0
  435. package/extensions/opencode/plugins/sound-notification.ts +13 -0
  436. package/extensions/opencode/plugins/telegram-notification.ts +86 -0
  437. package/extensions/opencode/skills/code_review_expert/SKILL.md +144 -0
  438. package/extensions/opencode/skills/design_expert/SKILL.md +42 -0
  439. package/extensions/opencode/skills/qa_expert/SKILL.md +116 -0
  440. package/package.json +19 -0
@@ -0,0 +1,165 @@
1
+ ---
2
+ name: sbom-supply-chain
3
+ type: skill
4
+ description: Generate, attach, and verify SBOMs (CycloneDX/SPDX) for container images; implement SLSA provenance; harden software supply chain.
5
+ related-rules:
6
+ - supply-chain-security.md (ci-cd)
7
+ - shift-left-policy.md
8
+ allowed-tools: Read, Write, Edit, Bash
9
+ ---
10
+
11
+ # Skill: SBOM & Supply Chain Security
12
+
13
+ > **Expertise:** Syft/Trivy SBOM generation, cosign SBOM attestation, SLSA provenance, dependency pinning, OCI attestations.
14
+
15
+ ## When to load
16
+
17
+ When generating SBOMs for images, attaching attestations to OCI registry, verifying supply chain integrity, or achieving SLSA compliance.
18
+
19
+ ## SBOM Generation (Syft)
20
+
21
+ ```bash
22
+ # Generate CycloneDX SBOM from image (OCI)
23
+ syft registry.example.com/myorg/order-service:v1.2.3 \
24
+ -o cyclonedx-json=sbom.cdx.json
25
+
26
+ # Generate SPDX SBOM from image
27
+ syft registry.example.com/myorg/order-service:v1.2.3 \
28
+ -o spdx-json=sbom.spdx.json
29
+
30
+ # Generate from local directory (during build)
31
+ syft dir:. -o cyclonedx-json=sbom.cdx.json
32
+
33
+ # Generate from Dockerfile build context (before push)
34
+ syft packages docker:myimage:latest -o cyclonedx-json=sbom.cdx.json
35
+ ```
36
+
37
+ ## SBOM Attestation via cosign
38
+
39
+ ```bash
40
+ # Sign image and attach SBOM as OCI attestation
41
+ # Step 1: Build and push image
42
+ docker buildx build --push \
43
+ -t registry.example.com/myorg/order-service:v1.2.3 .
44
+
45
+ # Step 2: Get digest
46
+ DIGEST=$(crane digest registry.example.com/myorg/order-service:v1.2.3)
47
+
48
+ # Step 3: Generate SBOM
49
+ syft registry.example.com/myorg/order-service:v1.2.3 \
50
+ -o cyclonedx-json=sbom.cdx.json
51
+
52
+ # Step 4: Attach SBOM as attestation (Sigstore keyless)
53
+ cosign attest \
54
+ --predicate sbom.cdx.json \
55
+ --type cyclonedx \
56
+ registry.example.com/myorg/order-service@${DIGEST}
57
+
58
+ # Step 5: Verify attestation exists
59
+ cosign verify-attestation \
60
+ --type cyclonedx \
61
+ --certificate-identity-regexp ".*" \
62
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
63
+ registry.example.com/myorg/order-service@${DIGEST} \
64
+ | jq '.payload | @base64d | fromjson | .predicate.metadata'
65
+ ```
66
+
67
+ ## GitHub Actions: Full Supply Chain Pipeline
68
+
69
+ ```yaml
70
+ # .github/workflows/supply-chain.yml
71
+ jobs:
72
+ build-sign-attest:
73
+ runs-on: ubuntu-latest
74
+ permissions:
75
+ contents: read
76
+ packages: write
77
+ id-token: write # for cosign keyless signing
78
+
79
+ steps:
80
+ - uses: actions/checkout@v4
81
+
82
+ - name: Install cosign
83
+ uses: sigstore/cosign-installer@v3
84
+
85
+ - name: Install syft
86
+ uses: anchore/sbom-action/download-syft@v0
87
+
88
+ - name: Build and push
89
+ id: build
90
+ uses: docker/build-push-action@v6
91
+ with:
92
+ push: true
93
+ tags: registry.example.com/myorg/order-service:${{ github.sha }}
94
+
95
+ - name: Sign image (keyless via OIDC)
96
+ run: |
97
+ cosign sign \
98
+ registry.example.com/myorg/order-service@${{ steps.build.outputs.digest }}
99
+
100
+ - name: Generate SBOM
101
+ run: |
102
+ syft registry.example.com/myorg/order-service@${{ steps.build.outputs.digest }} \
103
+ -o cyclonedx-json=sbom.cdx.json
104
+
105
+ - name: Attach SBOM attestation
106
+ run: |
107
+ cosign attest \
108
+ --predicate sbom.cdx.json \
109
+ --type cyclonedx \
110
+ registry.example.com/myorg/order-service@${{ steps.build.outputs.digest }}
111
+
112
+ - name: Generate SLSA provenance
113
+ uses: slsa-framework/slsa-github-generator/.github/workflows/generator_container_slsa3.yml@v2
114
+ with:
115
+ image: registry.example.com/myorg/order-service
116
+ digest: ${{ steps.build.outputs.digest }}
117
+ ```
118
+
119
+ ## Verify Before Deploy (admission check)
120
+
121
+ ```bash
122
+ # Verify image is signed before deploying
123
+ cosign verify \
124
+ --certificate-identity-regexp "https://github.com/myorg/myrepo" \
125
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
126
+ registry.example.com/myorg/order-service@sha256:<digest>
127
+
128
+ # Kyverno policy: enforce signed images in production
129
+ # (see opa-policies skill for full Kyverno policy)
130
+ ```
131
+
132
+ ## Dependency Pinning (supply chain hardening)
133
+
134
+ ```dockerfile
135
+ # Pin base image to digest — not just tag
136
+ FROM python:3.12-slim@sha256:abc123... # ✅
137
+ FROM python:3.12-slim # ❌ tag can be replaced
138
+
139
+ # Verify base image digest in CI
140
+ crane digest python:3.12-slim
141
+ ```
142
+
143
+ ```bash
144
+ # Python: generate requirements with hashes (pip-compile)
145
+ pip-compile --generate-hashes requirements.in -o requirements.txt
146
+
147
+ # Install with hash verification
148
+ pip install -r requirements.txt --require-hashes
149
+
150
+ # Node: lock file with integrity hashes (automatic in npm/yarn)
151
+ npm ci # uses package-lock.json with sha512 integrity hashes
152
+ ```
153
+
154
+ ## SBOM Analysis
155
+
156
+ ```bash
157
+ # Scan SBOM for vulnerabilities (without re-pulling image)
158
+ grype sbom:sbom.cdx.json --fail-on high
159
+
160
+ # List all packages in SBOM
161
+ cat sbom.cdx.json | jq '.components[] | {name: .name, version: .version, purl: .purl}'
162
+
163
+ # Check for GPL licenses in SBOM
164
+ cat sbom.cdx.json | jq '.components[] | select(.licenses[]?.license.id | startswith("GPL"))'
165
+ ```
@@ -0,0 +1,190 @@
1
+ ---
2
+ name: secret-detection
3
+ type: skill
4
+ description: Detect secrets in code, git history, and running containers — pre-commit hooks, CI scanning, and incident response for exposed credentials.
5
+ related-rules:
6
+ - shift-left-policy.md
7
+ - secret-hygiene.md (infrastructure)
8
+ allowed-tools: Read, Write, Edit, Bash
9
+ ---
10
+
11
+ # Skill: Secret Detection
12
+
13
+ > **Expertise:** trufflehog, gitleaks, git-secrets, pre-commit hooks, CI scanning, secret rotation playbook.
14
+
15
+ ## When to load
16
+
17
+ When setting up secret scanning pre-commit or in CI, investigating a potential credential leak, or remediating secrets found in git history.
18
+
19
+ ## Pre-Commit Hook Setup
20
+
21
+ ```bash
22
+ # Install pre-commit
23
+ pip install pre-commit
24
+
25
+ # .pre-commit-config.yaml
26
+ repos:
27
+ - repo: https://github.com/trufflesecurity/trufflehog
28
+ rev: v3.88.0
29
+ hooks:
30
+ - id: trufflehog
31
+ name: TruffleHog — secret scan
32
+ entry: trufflehog git file://. --since-commit HEAD --only-verified --fail
33
+ language: system
34
+ pass_filenames: false
35
+
36
+ - repo: https://github.com/gitleaks/gitleaks
37
+ rev: v8.21.0
38
+ hooks:
39
+ - id: gitleaks
40
+ name: Gitleaks — detect hardcoded secrets
41
+ ```
42
+
43
+ ```bash
44
+ # Install hooks for all team members (add to onboarding docs)
45
+ pre-commit install
46
+ pre-commit install --hook-type commit-msg
47
+
48
+ # Run against all files (one-time audit)
49
+ pre-commit run trufflehog --all-files
50
+ pre-commit run gitleaks --all-files
51
+ ```
52
+
53
+ ## CI: trufflehog (GitHub Actions)
54
+
55
+ ```yaml
56
+ - name: Scan for secrets (trufflehog)
57
+ uses: trufflesecurity/trufflehog@main
58
+ with:
59
+ path: ./
60
+ base: ${{ github.event.repository.default_branch }}
61
+ head: HEAD
62
+ extra_args: >
63
+ --only-verified
64
+ --fail
65
+ --format json
66
+ --json-output trufflehog-results.json
67
+ continue-on-error: false # hard fail
68
+
69
+ - name: Upload results
70
+ if: failure()
71
+ uses: actions/upload-artifact@v4
72
+ with:
73
+ name: secret-scan-results
74
+ path: trufflehog-results.json
75
+ ```
76
+
77
+ ## CI: gitleaks (GitLab CI)
78
+
79
+ ```yaml
80
+ secret-scan:
81
+ stage: validate
82
+ image: zricethezav/gitleaks:latest
83
+ script:
84
+ - gitleaks detect
85
+ --source .
86
+ --config .gitleaks.toml
87
+ --redact
88
+ --exit-code 1
89
+ --report-format json
90
+ --report-path gitleaks-report.json
91
+ artifacts:
92
+ when: on_failure
93
+ paths: [gitleaks-report.json]
94
+ ```
95
+
96
+ ## gitleaks Configuration (.gitleaks.toml)
97
+
98
+ ```toml
99
+ # .gitleaks.toml
100
+ title = "MyProject Gitleaks Config"
101
+
102
+ [extend]
103
+ useDefault = true # use built-in rules + extend
104
+
105
+ # Custom rule: internal API keys
106
+ [[rules]]
107
+ id = "internal-api-key"
108
+ description = "Internal API Key"
109
+ regex = '''MYCOMPANY_API_KEY_[A-Za-z0-9]{32}'''
110
+ tags = ["key", "internal"]
111
+
112
+ # Allowlist: suppress known false positives
113
+ [allowlist]
114
+ description = "Global allowlist"
115
+ regexes = [
116
+ '''EXAMPLE_.*''', # example values in docs
117
+ '''test_.*_key''', # test fixtures
118
+ ]
119
+ paths = [
120
+ '''.gitleaks.toml''', # this file itself
121
+ '''tests/fixtures/''', # test data
122
+ ]
123
+ commits = [
124
+ "abc123def456" # specific commit with known false positive
125
+ ]
126
+ ```
127
+
128
+ ## Full Repo Audit (historical scan)
129
+
130
+ ```bash
131
+ # Scan all branches and full history
132
+ trufflehog git file://. \
133
+ --only-verified \
134
+ --format json | tee trufflehog-full-audit.json
135
+
136
+ # Gitleaks: scan full history
137
+ gitleaks detect \
138
+ --source . \
139
+ --log-opts "--all" \
140
+ --report-format json \
141
+ --report-path gitleaks-full-audit.json
142
+
143
+ # Summary: count findings by type
144
+ cat trufflehog-full-audit.json | jq 'group_by(.DetectorName) | map({type: .[0].DetectorName, count: length})'
145
+ ```
146
+
147
+ ## Incident Response: Secret Exposed in Git
148
+
149
+ ```bash
150
+ # STOP: rotate the secret FIRST, before anything else
151
+ # Only after rotation (new secret is active and old one invalid):
152
+
153
+ # 1. Remove from git history using git-filter-repo (safer than filter-branch)
154
+ pip install git-filter-repo
155
+
156
+ git filter-repo \
157
+ --replace-text <(echo 'EXPOSED_SECRET==>REMOVED') \
158
+ --force
159
+
160
+ # 2. Force push (coordinate with team — everyone must re-clone)
161
+ git push --force --all
162
+ git push --force --tags
163
+
164
+ # 3. Notify all contributors to re-clone (old clones have the secret in history)
165
+
166
+ # 4. Check if GitHub/GitLab cached the secret (check forks, PRs, CI logs)
167
+ # GitHub: check cached pipelines in CI for the old secret
168
+ # GitLab: check CI job logs, pipeline artifacts
169
+
170
+ # 5. Audit: who may have cloned or cached the repo during exposure window
171
+ # Check VCS audit logs for clone events
172
+
173
+ # 6. File security incident report
174
+ ```
175
+
176
+ ## False Positive Management
177
+
178
+ ```bash
179
+ # Inline suppression (trufflehog)
180
+ SOME_VAR="obviously-not-a-secret" # trufflehog:ignore
181
+
182
+ # Inline suppression (gitleaks)
183
+ SOME_VAR="test-value" # gitleaks:allow
184
+
185
+ # .gitleaksignore file (commit-hash based)
186
+ # Get commit hash of false positive commit:
187
+ git log --oneline | grep "Add example config"
188
+ # Add to .gitleaksignore:
189
+ echo "abc123def456:path/to/file.yaml" >> .gitleaksignore
190
+ ```
@@ -0,0 +1,184 @@
1
+ ---
2
+ name: sigstore-signing
3
+ type: skill
4
+ description: Sign container images and artifacts with cosign (keyless via OIDC and key-based); verify signatures in CD pipelines and admission policies.
5
+ related-rules:
6
+ - supply-chain-security.md (ci-cd)
7
+ - shift-left-policy.md
8
+ allowed-tools: Read, Write, Edit, Bash
9
+ ---
10
+
11
+ # Skill: Sigstore / cosign Signing
12
+
13
+ > **Expertise:** cosign keyless signing (Sigstore), key-based signing, signature verification, Kyverno/OPA enforcement, Rekor transparency log.
14
+
15
+ ## When to load
16
+
17
+ When setting up image signing in CI, verifying signatures before deploy, or enforcing signature policies in K8s admission.
18
+
19
+ ## Keyless Signing (OIDC — GitHub Actions)
20
+
21
+ ```yaml
22
+ # .github/workflows/sign.yml
23
+ jobs:
24
+ sign:
25
+ runs-on: ubuntu-latest
26
+ permissions:
27
+ contents: read
28
+ packages: write
29
+ id-token: write # ← required for keyless OIDC signing
30
+
31
+ steps:
32
+ - name: Install cosign
33
+ uses: sigstore/cosign-installer@v3
34
+
35
+ - name: Build and push
36
+ id: build
37
+ uses: docker/build-push-action@v6
38
+ with:
39
+ push: true
40
+ tags: ghcr.io/myorg/order-service:${{ github.sha }}
41
+
42
+ - name: Sign image (keyless)
43
+ run: |
44
+ cosign sign \
45
+ --yes \
46
+ ghcr.io/myorg/order-service@${{ steps.build.outputs.digest }}
47
+ # Signature stored in Rekor transparency log
48
+ # No private key needed — OIDC token proves identity
49
+ ```
50
+
51
+ ## Key-Based Signing (when OIDC not available)
52
+
53
+ ```bash
54
+ # Generate signing key pair (do once; store private key in Vault)
55
+ cosign generate-key-pair
56
+ # Creates: cosign.key (private — store in Vault) + cosign.pub (public — commit to repo)
57
+
58
+ # Sign with key
59
+ cosign sign \
60
+ --key cosign.key \
61
+ registry.example.com/myorg/order-service:v1.2.3
62
+
63
+ # Sign in CI using secret
64
+ cosign sign \
65
+ --key env://COSIGN_PRIVATE_KEY \ # inject from CI secret
66
+ registry.example.com/myorg/order-service:v1.2.3
67
+ ```
68
+
69
+ ## Verification
70
+
71
+ ```bash
72
+ # Verify keyless signature (GitHub Actions OIDC)
73
+ cosign verify \
74
+ --certificate-identity-regexp "https://github.com/myorg/myrepo/.github/workflows/.*" \
75
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
76
+ ghcr.io/myorg/order-service:v1.2.3
77
+
78
+ # Verify key-based signature
79
+ cosign verify \
80
+ --key cosign.pub \
81
+ registry.example.com/myorg/order-service:v1.2.3
82
+
83
+ # Verify and show full certificate info
84
+ cosign verify \
85
+ --certificate-identity-regexp ".*" \
86
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
87
+ ghcr.io/myorg/order-service:v1.2.3 | jq '.[0].optional'
88
+
89
+ # Check Rekor transparency log entry
90
+ cosign verify \
91
+ --rekor-url https://rekor.sigstore.dev \
92
+ ... | jq '.[0].rekorLogIndex'
93
+ ```
94
+
95
+ ## Verification in CD Pipeline (before deploy)
96
+
97
+ ```bash
98
+ # Add to Helm pre-upgrade hook or CD pipeline
99
+ DIGEST=$(crane digest registry.example.com/myorg/order-service:${VERSION})
100
+
101
+ cosign verify \
102
+ --certificate-identity-regexp "https://github.com/myorg/.*" \
103
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
104
+ registry.example.com/myorg/order-service@${DIGEST} || {
105
+ echo "Image signature verification FAILED — aborting deploy"
106
+ exit 1
107
+ }
108
+
109
+ echo "Signature verified — proceeding with deploy"
110
+ helm upgrade ...
111
+ ```
112
+
113
+ ## Kyverno Policy: Enforce Signed Images
114
+
115
+ ```yaml
116
+ apiVersion: kyverno.io/v1
117
+ kind: ClusterPolicy
118
+ metadata:
119
+ name: require-signed-images
120
+ spec:
121
+ validationFailureAction: Enforce
122
+ background: false
123
+ rules:
124
+ - name: verify-image-signature
125
+ match:
126
+ any:
127
+ - resources:
128
+ kinds: [Pod]
129
+ namespaces: [production, staging]
130
+ verifyImages:
131
+ - imageReferences:
132
+ - "registry.example.com/myorg/*"
133
+ attestors:
134
+ - count: 1
135
+ entries:
136
+ - keyless:
137
+ subject: "https://github.com/myorg/*"
138
+ issuer: "https://token.actions.githubusercontent.com"
139
+ rekor:
140
+ url: https://rekor.sigstore.dev
141
+ ```
142
+
143
+ ## Custom Attestations (beyond SBOM)
144
+
145
+ ```bash
146
+ # Attach custom attestation (e.g., test results, compliance evidence)
147
+ cat > test-results.json << 'EOF'
148
+ {
149
+ "tests_passed": 142,
150
+ "tests_failed": 0,
151
+ "coverage_pct": 84.2,
152
+ "timestamp": "2024-11-15T14:22:00Z"
153
+ }
154
+ EOF
155
+
156
+ cosign attest \
157
+ --predicate test-results.json \
158
+ --type https://example.com/predicates/test-results/v1 \
159
+ registry.example.com/myorg/order-service@${DIGEST}
160
+
161
+ # Verify custom attestation
162
+ cosign verify-attestation \
163
+ --type https://example.com/predicates/test-results/v1 \
164
+ --certificate-identity-regexp ".*" \
165
+ --certificate-oidc-issuer https://token.actions.githubusercontent.com \
166
+ registry.example.com/myorg/order-service@${DIGEST} \
167
+ | jq '.payload | @base64d | fromjson | .predicate'
168
+ ```
169
+
170
+ ## Signing Key Rotation
171
+
172
+ ```bash
173
+ # 1. Generate new key pair
174
+ cosign generate-key-pair # → new cosign.key + cosign.pub
175
+
176
+ # 2. Re-sign all production images with new key
177
+ for image in $(cat production-images.txt); do
178
+ cosign sign --key new-cosign.key $image
179
+ done
180
+
181
+ # 3. Update Kyverno policy to accept BOTH old and new key during transition
182
+ # 4. After all images re-signed: remove old key from policy
183
+ # 5. Revoke old key in Vault; delete from CI secrets
184
+ ```
@@ -0,0 +1,104 @@
1
+ ---
2
+ name: policy-onboard
3
+ type: workflow
4
+ trigger: /policy-onboard
5
+ description: Deploy OPA/Gatekeeper or Kyverno admission policies to a cluster or namespace — design, test, dry-run, enforce.
6
+ inputs:
7
+ - policy_name
8
+ - engine (gatekeeper|kyverno)
9
+ - target_namespaces
10
+ - enforcement_action (deny|warn|dryrun)
11
+ outputs:
12
+ - deployed_policies
13
+ - test_results
14
+ roles:
15
+ - devops-engineer
16
+ execution:
17
+ initiator: developer
18
+ related-rules:
19
+ - policy-as-code.md
20
+ - container-security.md
21
+ uses-skills:
22
+ - opa-policies
23
+ - container-hardening
24
+ quality-gates:
25
+ - each policy tested with passing AND failing manifest before deploy
26
+ - dryrun in staging before enforce in production
27
+ - existing workloads checked for compliance before switching to enforce
28
+ ---
29
+
30
+ ## Steps
31
+
32
+ ### 1. Design Policy — `@devops-engineer`
33
+ - What is the policy checking? (privilege escalation / missing limits / bad image tag)
34
+ - Which resource types and namespaces does it apply to?
35
+ - What is the enforcement mode for each environment?
36
+ - staging: `warn` or `dryrun` → gather data, don't break things
37
+ - production: `deny` (after staging validation)
38
+ - Write policy in Rego (Gatekeeper) or YAML (Kyverno)
39
+
40
+ ### 2. Unit Test — `@devops-engineer`
41
+ ```bash
42
+ # Gatekeeper / OPA
43
+ opa test policies/ -v --ignore='*_test.rego'
44
+
45
+ # Kyverno
46
+ kyverno test . --test-case-selector "policy=${POLICY_NAME}"
47
+
48
+ # Manual: apply failing manifest and expect rejection
49
+ kubectl apply --dry-run=server -f test/failing-manifest.yaml
50
+ # Should output: "admission webhook ... denied"
51
+
52
+ kubectl apply --dry-run=server -f test/passing-manifest.yaml
53
+ # Should output: "... configured (dry run)"
54
+ ```
55
+ - **Done when:** unit tests pass; both positive and negative cases covered
56
+
57
+ ### 3. Dryrun in Staging — `@devops-engineer`
58
+ ```bash
59
+ # Gatekeeper: deploy with dryrun enforcement
60
+ kubectl apply -f policies/gatekeeper/constraints/${POLICY}-staging.yaml
61
+ # enforcement_action: dryrun ← logs violations, does not block
62
+
63
+ # Wait 10 minutes, then check for violations
64
+ kubectl get constraint ${POLICY} -o json | \
65
+ jq '.status.violations'
66
+
67
+ # Kyverno: audit mode
68
+ # spec.validationFailureAction: Audit ← logs, does not block
69
+ kubectl get polr -n ${NAMESPACE} # policy reports
70
+ ```
71
+ - Document: which existing workloads would be blocked if set to `deny`?
72
+ - For each violation: fix workload OR create documented exception
73
+
74
+ ### 4. Fix Existing Violations — `@developer` + `@devops-engineer`
75
+ - For each dryrun violation: fix the workload manifest (add securityContext, resource limits, etc.)
76
+ - Create tracking tickets for violations that require code changes
77
+ - **Do not proceed to enforce until existing violations are resolved**
78
+
79
+ ### 5. Switch to Enforce — `@devops-engineer` + `@team-lead`
80
+ ```bash
81
+ # After all violations resolved in staging:
82
+ # Update constraint enforcement action
83
+ kubectl patch constraint ${POLICY} \
84
+ --type=merge \
85
+ -p '{"spec":{"enforcementAction":"deny"}}'
86
+
87
+ # Verify: try deploying a non-compliant manifest
88
+ kubectl apply --dry-run=server -f test/failing-manifest.yaml
89
+ # Must be rejected
90
+ ```
91
+ - Apply same enforce mode to production after staging confirmed clean
92
+ - Announce in #devops-changes: "Policy ${POLICY} now enforcing in production"
93
+
94
+ ### 6. Monitor Policy Health — `@devops-engineer`
95
+ ```bash
96
+ # Gatekeeper: ongoing violation audit (runs every 60s)
97
+ kubectl get constraint ${POLICY} -o jsonpath='{.status.byPod}'
98
+
99
+ # Set up Prometheus alert for policy violations
100
+ # metric: gatekeeper_violations_total{enforcement_action="deny"}
101
+ ```
102
+
103
+ ## Exit
104
+ Policy tested + existing violations resolved + enforce mode active + monitoring in place = policy onboarded.