aios-core 2.1.6 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.aios-core/core/README.md +229 -229
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/core/data/aios-kb.md +923 -923
- package/.aios-core/core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/core/docs/component-creation-guide.md +457 -457
- package/.aios-core/core/docs/session-update-pattern.md +307 -307
- package/.aios-core/core/docs/template-syntax.md +266 -266
- package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
- package/.aios-core/core/index.esm.js +42 -42
- package/.aios-core/core/index.js +1 -1
- package/.aios-core/core/migration/migration-config.yaml +83 -83
- package/.aios-core/core/migration/module-mapping.yaml +89 -89
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
- package/.aios-core/core/registry/README.md +179 -179
- package/.aios-core/core/utils/security-utils.js +1 -1
- package/.aios-core/core-config.yaml +391 -382
- package/.aios-core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/data/aios-kb.md +923 -923
- package/.aios-core/data/technical-preferences.md +3 -3
- package/.aios-core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/development/README.md +142 -142
- package/.aios-core/development/agent-teams/team-all.yaml +15 -15
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
- package/.aios-core/development/agents/aios-master.md +339 -339
- package/.aios-core/development/agents/analyst.md +195 -195
- package/.aios-core/development/agents/architect.md +359 -359
- package/.aios-core/development/agents/data-engineer.md +468 -468
- package/.aios-core/development/agents/dev.md +390 -390
- package/.aios-core/development/agents/devops.md +398 -398
- package/.aios-core/development/agents/pm.md +198 -198
- package/.aios-core/development/agents/po.md +256 -256
- package/.aios-core/development/agents/qa.md +312 -312
- package/.aios-core/development/agents/sm.md +220 -220
- package/.aios-core/development/agents/ux-design-expert.md +451 -451
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
- package/.aios-core/development/tasks/add-mcp.md +319 -319
- package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
- package/.aios-core/development/tasks/analyze-framework.md +696 -696
- package/.aios-core/development/tasks/analyze-performance.md +637 -637
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
- package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
- package/.aios-core/development/tasks/audit-codebase.md +429 -429
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
- package/.aios-core/development/tasks/audit-utilities.md +358 -358
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
- package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
- package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
- package/.aios-core/development/tasks/build-component.md +478 -478
- package/.aios-core/development/tasks/calculate-roi.md +455 -455
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
- package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
- package/.aios-core/development/tasks/compose-molecule.md +284 -284
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
- package/.aios-core/development/tasks/correct-course.md +279 -279
- package/.aios-core/development/tasks/create-agent.md +321 -321
- package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
- package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
- package/.aios-core/development/tasks/create-doc.md +316 -316
- package/.aios-core/development/tasks/create-next-story.md +774 -774
- package/.aios-core/development/tasks/create-suite.md +283 -283
- package/.aios-core/development/tasks/create-task.md +371 -371
- package/.aios-core/development/tasks/create-workflow.md +370 -370
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
- package/.aios-core/development/tasks/db-apply-migration.md +381 -381
- package/.aios-core/development/tasks/db-bootstrap.md +642 -642
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
- package/.aios-core/development/tasks/db-dry-run.md +293 -293
- package/.aios-core/development/tasks/db-env-check.md +260 -260
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
- package/.aios-core/development/tasks/db-explain.md +631 -631
- package/.aios-core/development/tasks/db-impersonate.md +495 -495
- package/.aios-core/development/tasks/db-load-csv.md +593 -593
- package/.aios-core/development/tasks/db-policy-apply.md +653 -653
- package/.aios-core/development/tasks/db-rls-audit.md +411 -411
- package/.aios-core/development/tasks/db-rollback.md +739 -739
- package/.aios-core/development/tasks/db-run-sql.md +613 -613
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
- package/.aios-core/development/tasks/db-seed.md +390 -390
- package/.aios-core/development/tasks/db-smoke-test.md +351 -351
- package/.aios-core/development/tasks/db-snapshot.md +569 -569
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
- package/.aios-core/development/tasks/db-verify-order.md +515 -515
- package/.aios-core/development/tasks/deprecate-component.md +956 -956
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
- package/.aios-core/development/tasks/dev-develop-story.md +846 -846
- package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
- package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
- package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
- package/.aios-core/development/tasks/document-project.md +552 -552
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
- package/.aios-core/development/tasks/execute-checklist.md +301 -301
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
- package/.aios-core/development/tasks/extend-pattern.md +269 -269
- package/.aios-core/development/tasks/extract-tokens.md +467 -467
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
- package/.aios-core/development/tasks/generate-documentation.md +284 -284
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
- package/.aios-core/development/tasks/generate-shock-report.md +501 -501
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
- package/.aios-core/development/tasks/improve-self.md +822 -822
- package/.aios-core/development/tasks/index-docs.md +387 -387
- package/.aios-core/development/tasks/init-project-status.md +506 -506
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
- package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
- package/.aios-core/development/tasks/learn-patterns.md +900 -900
- package/.aios-core/development/tasks/mcp-workflow.md +437 -437
- package/.aios-core/development/tasks/modify-agent.md +381 -381
- package/.aios-core/development/tasks/modify-task.md +424 -424
- package/.aios-core/development/tasks/modify-workflow.md +465 -465
- package/.aios-core/development/tasks/po-backlog-add.md +370 -370
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
- package/.aios-core/development/tasks/po-pull-story.md +316 -316
- package/.aios-core/development/tasks/po-stories-index.md +351 -351
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
- package/.aios-core/development/tasks/po-sync-story.md +303 -303
- package/.aios-core/development/tasks/pr-automation.md +701 -701
- package/.aios-core/development/tasks/propose-modification.md +842 -842
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
- package/.aios-core/development/tasks/qa-gate.md +373 -373
- package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
- package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
- package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
- package/.aios-core/development/tasks/qa-review-story.md +682 -682
- package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
- package/.aios-core/development/tasks/qa-run-tests.md +277 -277
- package/.aios-core/development/tasks/qa-test-design.md +387 -387
- package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
- package/.aios-core/development/tasks/release-management.md +723 -723
- package/.aios-core/development/tasks/security-audit.md +554 -554
- package/.aios-core/development/tasks/security-scan.md +790 -790
- package/.aios-core/development/tasks/setup-database.md +741 -741
- package/.aios-core/development/tasks/setup-design-system.md +462 -462
- package/.aios-core/development/tasks/setup-github.md +874 -874
- package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
- package/.aios-core/development/tasks/setup-project-docs.md +1 -1
- package/.aios-core/development/tasks/shard-doc.md +537 -537
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
- package/.aios-core/development/tasks/sync-documentation.md +864 -864
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
- package/.aios-core/development/tasks/test-as-user.md +621 -621
- package/.aios-core/development/tasks/test-validation-task.md +171 -171
- package/.aios-core/development/tasks/undo-last.md +346 -346
- package/.aios-core/development/tasks/update-manifest.md +409 -409
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
- package/.aios-core/development/tasks/ux-user-research.md +559 -559
- package/.aios-core/development/tasks/validate-next-story.md +422 -422
- package/.aios-core/development/workflows/README.md +83 -83
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/docs/component-creation-guide.md +457 -457
- package/.aios-core/docs/session-update-pattern.md +307 -307
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
- package/.aios-core/docs/template-syntax.md +266 -266
- package/.aios-core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/index.esm.js +15 -15
- package/.aios-core/index.js +1 -1
- package/.aios-core/infrastructure/README.md +126 -126
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
- package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
- package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
- package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
- package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
- package/.aios-core/infrastructure/scripts/component-search.js +1 -1
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
- package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
- package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
- package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
- package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
- package/.aios-core/infrastructure/tools/README.md +222 -222
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
- package/.aios-core/install-manifest.yaml +347 -347
- package/.aios-core/product/README.md +56 -56
- package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
- package/.aios-core/product/checklists/architect-checklist.md +443 -443
- package/.aios-core/product/checklists/change-checklist.md +182 -182
- package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -119
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
- package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
- package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
- package/.aios-core/product/checklists/pm-checklist.md +375 -375
- package/.aios-core/product/checklists/po-master-checklist.md +441 -441
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
- package/.aios-core/product/checklists/release-checklist.md +122 -122
- package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
- package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
- package/.aios-core/product/data/atomic-design-principles.md +108 -0
- package/.aios-core/product/data/brainstorming-techniques.md +36 -36
- package/.aios-core/product/data/consolidation-algorithms.md +142 -0
- package/.aios-core/product/data/database-best-practices.md +182 -0
- package/.aios-core/product/data/design-token-best-practices.md +107 -0
- package/.aios-core/product/data/elicitation-methods.md +134 -134
- package/.aios-core/product/data/integration-patterns.md +207 -0
- package/.aios-core/product/data/migration-safety-guide.md +329 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
- package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
- package/.aios-core/product/data/rls-security-patterns.md +333 -0
- package/.aios-core/product/data/roi-calculation-guide.md +142 -0
- package/.aios-core/product/data/supabase-patterns.md +330 -0
- package/.aios-core/product/data/test-levels-framework.md +148 -148
- package/.aios-core/product/data/test-priorities-matrix.md +174 -174
- package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -225
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
- package/.aios-core/product/templates/activation-instructions-template.md +258 -258
- package/.aios-core/product/templates/agent-template.yaml +120 -120
- package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
- package/.aios-core/product/templates/changelog-template.md +134 -134
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
- package/.aios-core/product/templates/github-pr-template.md +67 -67
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
- package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
- package/.aios-core/product/templates/mcp-workflow.js +271 -271
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
- package/.aios-core/product/templates/personalized-agent-template.md +258 -258
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
- package/.aios-core/product/templates/personalized-task-template.md +344 -344
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
- package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
- package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
- package/.aios-core/product/templates/story-tmpl.yaml +331 -331
- package/.aios-core/product/templates/task-execution-report.md +495 -495
- package/.aios-core/product/templates/task-template.md +122 -122
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
- package/.aios-core/product/templates/workflow-template.yaml +133 -133
- package/.aios-core/scripts/README.md +354 -354
- package/.aios-core/scripts/aios-doc-template.md +325 -325
- package/.aios-core/scripts/elicitation-engine.js +1 -1
- package/.aios-core/scripts/test-template-system.js +1 -1
- package/.aios-core/scripts/workflow-management.md +69 -69
- package/.aios-core/user-guide.md +1413 -1413
- package/.aios-core/working-in-the-brownfield.md +361 -361
- package/LICENSE +1 -1
- package/README.md +702 -703
- package/bin/aios-init-old.js +3 -3
- package/bin/aios-init-v4.js +1 -1
- package/bin/aios-init.backup-v1.1.4.js +1 -1
- package/bin/aios-init.js +3 -3
- package/bin/aios.js +279 -279
- package/bin/utils/install-errors.js +339 -339
- package/bin/utils/install-transaction.js +445 -445
- package/index.d.ts +18 -18
- package/index.esm.js +20 -20
- package/index.js +6 -6
- package/package.json +8 -10
- package/packages/installer/src/config/templates/env-template.js +27 -4
- package/packages/installer/src/detection/detect-project-type.js +81 -81
- package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
- package/packages/installer/tests/unit/env-template.test.js +8 -8
- package/src/config/ide-configs.js +1 -1
- package/src/wizard/feedback.js +2 -2
- package/src/wizard/index.js +1 -1
- package/src/wizard/validation/report-generator.js +1 -1
- package/src/wizard/validation/troubleshooting-system.js +13 -13
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
- package/.aios-core/tasks/find-component.md.legacy +0 -391
- package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
- package/.aios-core/tasks/generate-migration.md.legacy +0 -382
- package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
- package/.aios-core/tasks/update-tests.md.legacy +0 -283
|
@@ -1,764 +1,764 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: ci-cd-configuration
|
|
3
|
-
name: Configure CI/CD Pipeline
|
|
4
|
-
agent: github-devops
|
|
5
|
-
category: devops
|
|
6
|
-
complexity: high
|
|
7
|
-
tools:
|
|
8
|
-
- github-cli # Manage workflows and repository settings
|
|
9
|
-
- coderabbit-free # Automated code review (FREE tier)
|
|
10
|
-
checklists:
|
|
11
|
-
- github-devops-checklist.md
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
# Configure CI/CD Pipeline
|
|
15
|
-
|
|
16
|
-
## Purpose
|
|
17
|
-
|
|
18
|
-
To set up a complete, production-ready CI/CD pipeline for a repository, including linting, testing, building, code review (CodeRabbit Free), and deployment automation.
|
|
19
|
-
|
|
20
|
-
## Supported CI Providers
|
|
21
|
-
|
|
22
|
-
- **GitHub Actions** (primary, recommended)
|
|
23
|
-
- **GitLab CI/CD**
|
|
24
|
-
- **CircleCI**
|
|
25
|
-
- **Jenkins** (basic support)
|
|
26
|
-
|
|
27
|
-
## Input
|
|
28
|
-
|
|
29
|
-
### Required Parameters
|
|
30
|
-
|
|
31
|
-
- **repository_path**: `string`
|
|
32
|
-
- **Description**: Local path or GitHub URL of the repository
|
|
33
|
-
- **Example**: `/path/to/project` or `https://github.com/user/repo`
|
|
34
|
-
- **Validation**: Must be valid Git repository
|
|
35
|
-
|
|
36
|
-
- **ci_provider**: `string`
|
|
37
|
-
- **Description**: CI/CD provider to configure
|
|
38
|
-
- **Options**: `"github-actions"`, `"gitlab-ci"`, `"circleci"`, `"jenkins"`
|
|
39
|
-
- **Default**: `"github-actions"`
|
|
40
|
-
|
|
41
|
-
- **project_type**: `string`
|
|
42
|
-
- **Description**: Type of project (determines pipeline stages)
|
|
43
|
-
- **Options**: `"nodejs"`, `"python"`, `"fullstack"`, `"monorepo"`
|
|
44
|
-
- **Required**: true
|
|
45
|
-
|
|
46
|
-
### Optional Parameters
|
|
47
|
-
|
|
48
|
-
- **testing_framework**: `string`
|
|
49
|
-
- **Description**: Primary testing framework
|
|
50
|
-
- **Examples**: `"jest"`, `"pytest"`, `"vitest"`, `"mocha"`
|
|
51
|
-
- **Auto-detect**: true (scans package.json or requirements.txt)
|
|
52
|
-
|
|
53
|
-
- **deployment_target**: `string`
|
|
54
|
-
- **Description**: Where to deploy
|
|
55
|
-
- **Options**: `"vercel"`, `"netlify"`, `"aws"`, `"none"`
|
|
56
|
-
- **Default**: `"none"`
|
|
57
|
-
|
|
58
|
-
- **enable_coderabbit**: `boolean`
|
|
59
|
-
- **Description**: Enable CodeRabbit Free for automated code review
|
|
60
|
-
- **Default**: `true`
|
|
61
|
-
- **Note**: **FREE tier** - No cost, no API keys needed for public repos
|
|
62
|
-
|
|
63
|
-
- **branch_protection**: `boolean`
|
|
64
|
-
- **Description**: Enable branch protection rules
|
|
65
|
-
- **Default**: `true`
|
|
66
|
-
- **Rules**: Require PR, require status checks, no force push
|
|
67
|
-
|
|
68
|
-
- **required_checks**: `array<string>`
|
|
69
|
-
- **Description**: Status checks that must pass
|
|
70
|
-
- **Default**: `["lint", "test", "build"]`
|
|
71
|
-
|
|
72
|
-
- **secrets**: `object`
|
|
73
|
-
- **Description**: Environment secrets (will be stored securely)
|
|
74
|
-
- **Example**: `{ VERCEL_TOKEN: "xxx", DATABASE_URL: "postgres://..." }`
|
|
75
|
-
|
|
76
|
-
## Output
|
|
77
|
-
|
|
78
|
-
- **workflow_files**: `array<string>`
|
|
79
|
-
- **Description**: Created workflow/config files
|
|
80
|
-
- **Example**: `[".github/workflows/ci.yml", ".github/workflows/deploy.yml"]`
|
|
81
|
-
|
|
82
|
-
- **branch_protection_rules**: `object`
|
|
83
|
-
- **Description**: Applied branch protection settings
|
|
84
|
-
- **Structure**: `{ branch, required_checks, enforce_admins, allow_force_push }`
|
|
85
|
-
|
|
86
|
-
- **coderabbit_config**: `object` (if enabled)
|
|
87
|
-
- **Description**: CodeRabbit configuration
|
|
88
|
-
- **Structure**: `{ enabled: true, config_file: ".coderabbit.yaml", integration_status: "active" }`
|
|
89
|
-
|
|
90
|
-
- **secrets_configured**: `array<string>`
|
|
91
|
-
- **Description**: List of secrets successfully stored
|
|
92
|
-
- **Note**: Values not included (security)
|
|
93
|
-
|
|
94
|
-
- **pipeline_url**: `string`
|
|
95
|
-
- **Description**: URL to view pipeline runs
|
|
96
|
-
- **Example**: `"https://github.com/user/repo/actions"`
|
|
97
|
-
|
|
98
|
-
- **README_section**: `string`
|
|
99
|
-
- **Description**: Markdown section to add to README.md
|
|
100
|
-
- **Content**: CI/CD badges, status, setup instructions
|
|
101
|
-
|
|
102
|
-
## Process
|
|
103
|
-
|
|
104
|
-
### Phase 1: Repository Analysis & Validation (2 min)
|
|
105
|
-
|
|
106
|
-
1. **Validate Repository**
|
|
107
|
-
- Check if valid Git repository
|
|
108
|
-
- Verify remote origin exists
|
|
109
|
-
- Check CI provider compatibility
|
|
110
|
-
|
|
111
|
-
2. **Detect Project Structure**
|
|
112
|
-
- Auto-detect project type (if not provided)
|
|
113
|
-
- Scan for package.json, requirements.txt, pom.xml, etc.
|
|
114
|
-
- Identify testing framework
|
|
115
|
-
- Identify build commands
|
|
116
|
-
|
|
117
|
-
3. **Check Existing CI Configuration**
|
|
118
|
-
- Look for existing workflows
|
|
119
|
-
- Warn if overwriting: "⚠️ Found existing CI config. Backup created at: {path}"
|
|
120
|
-
|
|
121
|
-
### Phase 2: CodeRabbit Free Setup (2 min) 🆓
|
|
122
|
-
|
|
123
|
-
**Note**: CodeRabbit Free is **100% FREE** for public repositories. No API keys, no credit card, no costs.
|
|
124
|
-
|
|
125
|
-
4. **Install CodeRabbit GitHub App**
|
|
126
|
-
- Guide user: "To enable CodeRabbit Free:
|
|
127
|
-
1. Visit: https://github.com/apps/coderabbitai
|
|
128
|
-
2. Click 'Install' (FREE for public repos)
|
|
129
|
-
3. Grant access to repository: {repo_name}
|
|
130
|
-
4. Return here when done"
|
|
131
|
-
- Wait for user confirmation
|
|
132
|
-
- Verify installation via GitHub API
|
|
133
|
-
|
|
134
|
-
5. **Create CodeRabbit Configuration**
|
|
135
|
-
- Generate `.coderabbit.yaml`:
|
|
136
|
-
```yaml
|
|
137
|
-
# CodeRabbit Free Configuration
|
|
138
|
-
# 🆓 FREE for public repositories - No costs, no limits
|
|
139
|
-
|
|
140
|
-
language: "en-US"
|
|
141
|
-
|
|
142
|
-
reviews:
|
|
143
|
-
profile: "chill" # balanced review depth
|
|
144
|
-
request_changes_workflow: false
|
|
145
|
-
high_level_summary: true
|
|
146
|
-
poem: false
|
|
147
|
-
review_status: true
|
|
148
|
-
collapse_walkthrough: false
|
|
149
|
-
auto_review:
|
|
150
|
-
enabled: true
|
|
151
|
-
ignore_title_keywords:
|
|
152
|
-
- "WIP"
|
|
153
|
-
- "DO NOT REVIEW"
|
|
154
|
-
|
|
155
|
-
chat:
|
|
156
|
-
auto_reply: true
|
|
157
|
-
|
|
158
|
-
# Focus areas (adjust based on project type)
|
|
159
|
-
focus:
|
|
160
|
-
- security
|
|
161
|
-
- performance
|
|
162
|
-
- best_practices
|
|
163
|
-
- testing
|
|
164
|
-
- documentation
|
|
165
|
-
|
|
166
|
-
# Ignore patterns
|
|
167
|
-
ignore:
|
|
168
|
-
- "**/*.min.js"
|
|
169
|
-
- "**/*.min.css"
|
|
170
|
-
- "**/dist/**"
|
|
171
|
-
- "**/build/**"
|
|
172
|
-
- "**/.next/**"
|
|
173
|
-
- "**/node_modules/**"
|
|
174
|
-
- "**/.git/**"
|
|
175
|
-
```
|
|
176
|
-
- Commit and push `.coderabbit.yaml`
|
|
177
|
-
- Log: "✅ CodeRabbit Free configured (Focus: security, performance, best practices)"
|
|
178
|
-
|
|
179
|
-
6. **Add CodeRabbit Commands to README**
|
|
180
|
-
- Document available commands:
|
|
181
|
-
```markdown
|
|
182
|
-
## Code Review (CodeRabbit Free 🆓)
|
|
183
|
-
|
|
184
|
-
**Automatic Reviews**: CodeRabbit automatically reviews all PRs
|
|
185
|
-
|
|
186
|
-
**Manual Commands** (comment on PR):
|
|
187
|
-
- `@coderabbitai review` - Request full review
|
|
188
|
-
- `@coderabbitai summary` - Get PR summary
|
|
189
|
-
- `@coderabbitai resolve` - Mark suggestions as resolved
|
|
190
|
-
- `@coderabbitai help` - Show available commands
|
|
191
|
-
|
|
192
|
-
**Local Pre-Commit Check** (optional):
|
|
193
|
-
```bash
|
|
194
|
-
# Install CodeRabbit CLI (optional, for local checks)
|
|
195
|
-
npm install -g @coderabbitai/cli
|
|
196
|
-
|
|
197
|
-
# Run pre-commit review
|
|
198
|
-
coderabbit --prompt-only -t uncommitted
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
[CodeRabbit Docs](https://docs.coderabbit.ai)
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
### Phase 3: GitHub Actions Workflow Creation (5 min)
|
|
205
|
-
|
|
206
|
-
7. **Create Lint + Test + Build Workflow**
|
|
207
|
-
- Generate `.github/workflows/ci.yml`:
|
|
208
|
-
|
|
209
|
-
```yaml
|
|
210
|
-
name: CI Pipeline
|
|
211
|
-
|
|
212
|
-
on:
|
|
213
|
-
push:
|
|
214
|
-
branches: [ main, develop ]
|
|
215
|
-
pull_request:
|
|
216
|
-
branches: [ main, develop ]
|
|
217
|
-
|
|
218
|
-
jobs:
|
|
219
|
-
lint:
|
|
220
|
-
runs-on: ubuntu-latest
|
|
221
|
-
steps:
|
|
222
|
-
- uses: actions/checkout@v4
|
|
223
|
-
|
|
224
|
-
- name: Setup Node.js
|
|
225
|
-
uses: actions/setup-node@v4
|
|
226
|
-
with:
|
|
227
|
-
node-version: '20'
|
|
228
|
-
cache: 'npm'
|
|
229
|
-
|
|
230
|
-
- name: Install dependencies
|
|
231
|
-
run: npm ci
|
|
232
|
-
|
|
233
|
-
- name: Run linter
|
|
234
|
-
run: npm run lint
|
|
235
|
-
|
|
236
|
-
test:
|
|
237
|
-
runs-on: ubuntu-latest
|
|
238
|
-
needs: lint
|
|
239
|
-
steps:
|
|
240
|
-
- uses: actions/checkout@v4
|
|
241
|
-
|
|
242
|
-
- name: Setup Node.js
|
|
243
|
-
uses: actions/setup-node@v4
|
|
244
|
-
with:
|
|
245
|
-
node-version: '20'
|
|
246
|
-
cache: 'npm'
|
|
247
|
-
|
|
248
|
-
- name: Install dependencies
|
|
249
|
-
run: npm ci
|
|
250
|
-
|
|
251
|
-
- name: Run tests
|
|
252
|
-
run: npm test -- --coverage
|
|
253
|
-
|
|
254
|
-
- name: Upload coverage
|
|
255
|
-
uses: codecov/codecov-action@v3
|
|
256
|
-
with:
|
|
257
|
-
files: ./coverage/coverage-final.json
|
|
258
|
-
|
|
259
|
-
build:
|
|
260
|
-
runs-on: ubuntu-latest
|
|
261
|
-
needs: test
|
|
262
|
-
steps:
|
|
263
|
-
- uses: actions/checkout@v4
|
|
264
|
-
|
|
265
|
-
- name: Setup Node.js
|
|
266
|
-
uses: actions/setup-node@v4
|
|
267
|
-
with:
|
|
268
|
-
node-version: '20'
|
|
269
|
-
cache: 'npm'
|
|
270
|
-
|
|
271
|
-
- name: Install dependencies
|
|
272
|
-
run: npm ci
|
|
273
|
-
|
|
274
|
-
- name: Build project
|
|
275
|
-
run: npm run build
|
|
276
|
-
|
|
277
|
-
- name: Upload build artifacts
|
|
278
|
-
uses: actions/upload-artifact@v3
|
|
279
|
-
with:
|
|
280
|
-
name: build
|
|
281
|
-
path: dist/
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
8. **Create Deployment Workflow** (if deployment_target provided)
|
|
285
|
-
- Generate `.github/workflows/deploy.yml`:
|
|
286
|
-
|
|
287
|
-
```yaml
|
|
288
|
-
name: Deploy
|
|
289
|
-
|
|
290
|
-
on:
|
|
291
|
-
push:
|
|
292
|
-
branches: [ main ]
|
|
293
|
-
workflow_dispatch:
|
|
294
|
-
|
|
295
|
-
jobs:
|
|
296
|
-
deploy:
|
|
297
|
-
runs-on: ubuntu-latest
|
|
298
|
-
environment: production
|
|
299
|
-
steps:
|
|
300
|
-
- uses: actions/checkout@v4
|
|
301
|
-
|
|
302
|
-
- name: Setup Node.js
|
|
303
|
-
uses: actions/setup-node@v4
|
|
304
|
-
with:
|
|
305
|
-
node-version: '20'
|
|
306
|
-
cache: 'npm'
|
|
307
|
-
|
|
308
|
-
- name: Install dependencies
|
|
309
|
-
run: npm ci
|
|
310
|
-
|
|
311
|
-
- name: Build
|
|
312
|
-
run: npm run build
|
|
313
|
-
|
|
314
|
-
- name: Deploy to {deployment_target}
|
|
315
|
-
uses: {deployment_action}
|
|
316
|
-
with:
|
|
317
|
-
token: ${{ secrets.DEPLOY_TOKEN }}
|
|
318
|
-
```
|
|
319
|
-
|
|
320
|
-
### Phase 4: Branch Protection Rules (3 min)
|
|
321
|
-
|
|
322
|
-
9. **Configure Branch Protection** (if enabled)
|
|
323
|
-
- Use GitHub API to set rules on `main`:
|
|
324
|
-
- Require pull request reviews (1 approval)
|
|
325
|
-
- Require status checks to pass:
|
|
326
|
-
- `lint`
|
|
327
|
-
- `test`
|
|
328
|
-
- `build`
|
|
329
|
-
- `coderabbitai` (CodeRabbit review)
|
|
330
|
-
- Enforce for administrators: false (for emergency fixes)
|
|
331
|
-
- Require linear history: true
|
|
332
|
-
- Allow force pushes: false
|
|
333
|
-
- Allow deletions: false
|
|
334
|
-
|
|
335
|
-
10. **Store Secrets** (if provided)
|
|
336
|
-
- Use GitHub CLI to set secrets:
|
|
337
|
-
```bash
|
|
338
|
-
gh secret set VERCEL_TOKEN --body="xxx"
|
|
339
|
-
gh secret set DATABASE_URL --body="postgres://..."
|
|
340
|
-
```
|
|
341
|
-
- Verify secrets stored: `gh secret list`
|
|
342
|
-
|
|
343
|
-
### Phase 5: Documentation & Testing (3 min)
|
|
344
|
-
|
|
345
|
-
11. **Update README.md**
|
|
346
|
-
- Add CI/CD badges:
|
|
347
|
-
```markdown
|
|
348
|
-
[](https://github.com/user/repo/actions/workflows/ci.yml)
|
|
349
|
-
[](https://github.com/apps/coderabbitai)
|
|
350
|
-
```
|
|
351
|
-
- Add CI/CD section (from output)
|
|
352
|
-
|
|
353
|
-
12. **Create Test PR**
|
|
354
|
-
- Create branch: `ci-cd-test-{timestamp}`
|
|
355
|
-
- Make trivial change (e.g., update README)
|
|
356
|
-
- Push and create PR
|
|
357
|
-
- Verify:
|
|
358
|
-
- CI workflow triggers
|
|
359
|
-
- All checks run
|
|
360
|
-
- CodeRabbit reviews PR
|
|
361
|
-
- Branch protection enforced
|
|
362
|
-
- Close PR after validation
|
|
363
|
-
|
|
364
|
-
13. **Generate Setup Report**
|
|
365
|
-
- Document what was configured
|
|
366
|
-
- List workflow files created
|
|
367
|
-
- Show pipeline URL
|
|
368
|
-
- Confirm CodeRabbit active
|
|
369
|
-
- List next steps
|
|
370
|
-
|
|
371
|
-
## Checklist
|
|
372
|
-
|
|
373
|
-
### Pre-conditions
|
|
374
|
-
|
|
375
|
-
- [ ] Repository is valid Git repository
|
|
376
|
-
- **Validation**: `.git` directory exists
|
|
377
|
-
- **Error**: "Not a Git repository"
|
|
378
|
-
|
|
379
|
-
- [ ] CI provider is supported
|
|
380
|
-
- **Validation**: `ci_provider in ["github-actions", "gitlab-ci", "circleci", "jenkins"]`
|
|
381
|
-
- **Error**: "CI provider '{provider}' not supported"
|
|
382
|
-
|
|
383
|
-
- [ ] Project has package.json or equivalent
|
|
384
|
-
- **Validation**: File exists at root
|
|
385
|
-
- **Error**: "Cannot detect project type. Add package.json or specify project_type manually"
|
|
386
|
-
|
|
387
|
-
### Post-conditions
|
|
388
|
-
|
|
389
|
-
- [ ] Workflow files created and committed
|
|
390
|
-
- **Validation**: Files exist and are tracked by Git
|
|
391
|
-
- **Test**: `git ls-files | grep -E "\.github/workflows|\.gitlab-ci\.yml"`
|
|
392
|
-
|
|
393
|
-
- [ ] CodeRabbit configuration valid (if enabled)
|
|
394
|
-
- **Validation**: `.coderabbit.yaml` is valid YAML
|
|
395
|
-
- **Test**: `yamllint .coderabbit.yaml`
|
|
396
|
-
|
|
397
|
-
- [ ] Branch protection active (if enabled)
|
|
398
|
-
- **Validation**: GitHub API returns protection rules
|
|
399
|
-
- **Test**: `gh api repos/{owner}/{repo}/branches/main/protection`
|
|
400
|
-
|
|
401
|
-
- [ ] Test PR passes all checks
|
|
402
|
-
- **Validation**: All required checks green
|
|
403
|
-
- **Manual Check**: true
|
|
404
|
-
|
|
405
|
-
### Acceptance Criteria
|
|
406
|
-
|
|
407
|
-
- [ ] CI pipeline runs on every push
|
|
408
|
-
- **Type**: acceptance
|
|
409
|
-
- **Test**: Push to branch → workflow triggers
|
|
410
|
-
|
|
411
|
-
- [ ] CodeRabbit reviews all PRs automatically (if enabled)
|
|
412
|
-
- **Type**: acceptance
|
|
413
|
-
- **Manual Check**: true
|
|
414
|
-
- **Test**: Create PR → CodeRabbit comments within 2 min
|
|
415
|
-
|
|
416
|
-
- [ ] Branch protection prevents direct pushes to main
|
|
417
|
-
- **Type**: acceptance
|
|
418
|
-
- **Test**: Try `git push origin main` → rejected
|
|
419
|
-
|
|
420
|
-
## Templates
|
|
421
|
-
|
|
422
|
-
### README CI/CD Section
|
|
423
|
-
|
|
424
|
-
```markdown
|
|
425
|
-
## CI/CD Pipeline
|
|
426
|
-
|
|
427
|
-
This repository uses automated CI/CD with {ci_provider}.
|
|
428
|
-
|
|
429
|
-
### Status
|
|
430
|
-
|
|
431
|
-
[](https://github.com/{owner}/{repo}/actions/workflows/ci.yml)
|
|
432
|
-
{deployment_badge if applicable}
|
|
433
|
-
|
|
434
|
-
### Pipeline Stages
|
|
435
|
-
|
|
436
|
-
1. **Lint**: ESLint + Prettier
|
|
437
|
-
2. **Test**: {testing_framework} with coverage
|
|
438
|
-
3. **Build**: Production build
|
|
439
|
-
{4. **Deploy**: Automatic deployment to {deployment_target} (main branch only) if applicable}
|
|
440
|
-
|
|
441
|
-
### Code Review (CodeRabbit Free 🆓)
|
|
442
|
-
|
|
443
|
-
Every PR is automatically reviewed by [CodeRabbit](https://github.com/apps/coderabbitai):
|
|
444
|
-
- Security vulnerabilities
|
|
445
|
-
- Performance issues
|
|
446
|
-
- Best practices
|
|
447
|
-
- Test coverage
|
|
448
|
-
- Documentation
|
|
449
|
-
|
|
450
|
-
**Commands** (comment on PR):
|
|
451
|
-
- `@coderabbitai review` - Request review
|
|
452
|
-
- `@coderabbitai summary` - Get summary
|
|
453
|
-
- `@coderabbitai resolve` - Mark as resolved
|
|
454
|
-
|
|
455
|
-
### Branch Protection
|
|
456
|
-
|
|
457
|
-
- `main` branch requires:
|
|
458
|
-
- ✅ 1 PR approval
|
|
459
|
-
- ✅ All CI checks passing
|
|
460
|
-
- ✅ CodeRabbit review complete
|
|
461
|
-
- ❌ No direct pushes
|
|
462
|
-
- ❌ No force pushes
|
|
463
|
-
|
|
464
|
-
### Setup Instructions
|
|
465
|
-
|
|
466
|
-
1. Clone repository
|
|
467
|
-
2. Install dependencies: `npm install`
|
|
468
|
-
3. Run tests locally: `npm test`
|
|
469
|
-
4. Create feature branch: `git checkout -b feature/my-feature`
|
|
470
|
-
5. Make changes and commit
|
|
471
|
-
6. Push and create PR
|
|
472
|
-
7. Wait for CI + CodeRabbit review
|
|
473
|
-
8. Merge after approval
|
|
474
|
-
```
|
|
475
|
-
|
|
476
|
-
## Tools
|
|
477
|
-
|
|
478
|
-
- **github-cli**:
|
|
479
|
-
- **Version**: 2.0.0
|
|
480
|
-
- **Used For**: Manage workflows, secrets, branch protection
|
|
481
|
-
- **Required**: true (for GitHub Actions)
|
|
482
|
-
|
|
483
|
-
- **coderabbit-free**:
|
|
484
|
-
- **Version**: Latest (GitHub App)
|
|
485
|
-
- **Used For**: Automated code review on every PR
|
|
486
|
-
- **Cost**: $0 (FREE for public repositories)
|
|
487
|
-
- **Setup**: Install GitHub App (one-time, 2 minutes)
|
|
488
|
-
- **Features**:
|
|
489
|
-
- Automatic PR reviews
|
|
490
|
-
- Security scanning
|
|
491
|
-
- Performance analysis
|
|
492
|
-
- Best practices checks
|
|
493
|
-
- Interactive chat
|
|
494
|
-
- **Limitations**: None for open-source (FREE tier is full-featured)
|
|
495
|
-
|
|
496
|
-
## Performance
|
|
497
|
-
|
|
498
|
-
- **Duration Expected**: 15 minutes (including CodeRabbit setup)
|
|
499
|
-
- **Cost Estimated**: $0 (CodeRabbit Free is free, GitHub Actions has 2,000 free minutes/month)
|
|
500
|
-
- **Cacheable**: false (configuration is per-repository)
|
|
501
|
-
- **Parallelizable**: false (sequential setup required)
|
|
502
|
-
|
|
503
|
-
## Error Handling
|
|
504
|
-
|
|
505
|
-
- **Strategy**: retry + fallback
|
|
506
|
-
- **Fallback**: If CodeRabbit setup fails, continue without it (can add later)
|
|
507
|
-
- **Retry**:
|
|
508
|
-
- **Max Attempts**: 3
|
|
509
|
-
- **Backoff**: exponential
|
|
510
|
-
- **Backoff MS**: 2000
|
|
511
|
-
- **Abort Workflow**: false (continue even if optional features fail)
|
|
512
|
-
- **Notification**: log + setup report
|
|
513
|
-
|
|
514
|
-
## Metadata
|
|
515
|
-
|
|
516
|
-
- **Story**: Epic 10 (Critical Dependency Resolution)
|
|
517
|
-
- **Version**: 1.0.0
|
|
518
|
-
- **Dependencies**: `github-cli` tool
|
|
519
|
-
- **Author**: Brad Frost Clone
|
|
520
|
-
- **Created**: 2025-11-13
|
|
521
|
-
- **Updated**: 2025-11-13
|
|
522
|
-
- **Breaking Changes**: None (new task)
|
|
523
|
-
|
|
524
|
-
---
|
|
525
|
-
|
|
526
|
-
## Execution Modes
|
|
527
|
-
|
|
528
|
-
**Choose your execution mode:**
|
|
529
|
-
|
|
530
|
-
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
531
|
-
- Autonomous decision making with logging
|
|
532
|
-
- Minimal user interaction
|
|
533
|
-
- **Best for:** Simple, deterministic tasks
|
|
534
|
-
|
|
535
|
-
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
536
|
-
- Explicit decision checkpoints
|
|
537
|
-
- Educational explanations
|
|
538
|
-
- **Best for:** Learning, complex decisions
|
|
539
|
-
|
|
540
|
-
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
541
|
-
- Task analysis phase (identify all ambiguities)
|
|
542
|
-
- Zero ambiguity execution
|
|
543
|
-
- **Best for:** Ambiguous requirements, critical work
|
|
544
|
-
|
|
545
|
-
**Parameter:** `mode` (optional, default: `interactive`)
|
|
546
|
-
|
|
547
|
-
---
|
|
548
|
-
|
|
549
|
-
## Task Definition (AIOS Task Format V1.0)
|
|
550
|
-
|
|
551
|
-
```yaml
|
|
552
|
-
task: ciCdConfiguration()
|
|
553
|
-
responsável: Gage (Automator)
|
|
554
|
-
responsavel_type: Agente
|
|
555
|
-
atomic_layer: Organism
|
|
556
|
-
|
|
557
|
-
**Entrada:**
|
|
558
|
-
- campo: task
|
|
559
|
-
tipo: string
|
|
560
|
-
origem: User Input
|
|
561
|
-
obrigatório: true
|
|
562
|
-
validação: Must be registered task
|
|
563
|
-
|
|
564
|
-
- campo: parameters
|
|
565
|
-
tipo: object
|
|
566
|
-
origem: User Input
|
|
567
|
-
obrigatório: false
|
|
568
|
-
validação: Valid task parameters
|
|
569
|
-
|
|
570
|
-
- campo: mode
|
|
571
|
-
tipo: string
|
|
572
|
-
origem: User Input
|
|
573
|
-
obrigatório: false
|
|
574
|
-
validação: yolo|interactive|pre-flight
|
|
575
|
-
|
|
576
|
-
**Saída:**
|
|
577
|
-
- campo: execution_result
|
|
578
|
-
tipo: object
|
|
579
|
-
destino: Memory
|
|
580
|
-
persistido: false
|
|
581
|
-
|
|
582
|
-
- campo: logs
|
|
583
|
-
tipo: array
|
|
584
|
-
destino: File (.ai/logs/*)
|
|
585
|
-
persistido: true
|
|
586
|
-
|
|
587
|
-
- campo: state
|
|
588
|
-
tipo: object
|
|
589
|
-
destino: State management
|
|
590
|
-
persistido: true
|
|
591
|
-
```
|
|
592
|
-
|
|
593
|
-
---
|
|
594
|
-
|
|
595
|
-
## Pre-Conditions
|
|
596
|
-
|
|
597
|
-
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
598
|
-
|
|
599
|
-
**Checklist:**
|
|
600
|
-
|
|
601
|
-
```yaml
|
|
602
|
-
pre-conditions:
|
|
603
|
-
- [ ] Task is registered; required parameters provided; dependencies met
|
|
604
|
-
tipo: pre-condition
|
|
605
|
-
blocker: true
|
|
606
|
-
validação: |
|
|
607
|
-
Check task is registered; required parameters provided; dependencies met
|
|
608
|
-
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
609
|
-
```
|
|
610
|
-
|
|
611
|
-
---
|
|
612
|
-
|
|
613
|
-
## Post-Conditions
|
|
614
|
-
|
|
615
|
-
**Purpose:** Validate execution success AFTER task completes
|
|
616
|
-
|
|
617
|
-
**Checklist:**
|
|
618
|
-
|
|
619
|
-
```yaml
|
|
620
|
-
post-conditions:
|
|
621
|
-
- [ ] Task completed; exit code 0; expected outputs created
|
|
622
|
-
tipo: post-condition
|
|
623
|
-
blocker: true
|
|
624
|
-
validação: |
|
|
625
|
-
Verify task completed; exit code 0; expected outputs created
|
|
626
|
-
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
627
|
-
```
|
|
628
|
-
|
|
629
|
-
---
|
|
630
|
-
|
|
631
|
-
## Acceptance Criteria
|
|
632
|
-
|
|
633
|
-
**Purpose:** Definitive pass/fail criteria for task completion
|
|
634
|
-
|
|
635
|
-
**Checklist:**
|
|
636
|
-
|
|
637
|
-
```yaml
|
|
638
|
-
acceptance-criteria:
|
|
639
|
-
- [ ] Task completed as expected; side effects documented
|
|
640
|
-
tipo: acceptance-criterion
|
|
641
|
-
blocker: true
|
|
642
|
-
validação: |
|
|
643
|
-
Assert task completed as expected; side effects documented
|
|
644
|
-
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
645
|
-
```
|
|
646
|
-
|
|
647
|
-
---
|
|
648
|
-
|
|
649
|
-
## Scripts
|
|
650
|
-
|
|
651
|
-
**Agent-specific code for this task:**
|
|
652
|
-
|
|
653
|
-
- **Script:** execute-task.js
|
|
654
|
-
- **Purpose:** Generic task execution wrapper
|
|
655
|
-
- **Language:** JavaScript
|
|
656
|
-
- **Location:** .aios-core/scripts/execute-task.js
|
|
657
|
-
|
|
658
|
-
---
|
|
659
|
-
|
|
660
|
-
## Error Handling
|
|
661
|
-
|
|
662
|
-
**Strategy:** retry
|
|
663
|
-
|
|
664
|
-
**Common Errors:**
|
|
665
|
-
|
|
666
|
-
1. **Error:** Task Not Found
|
|
667
|
-
- **Cause:** Specified task not registered in system
|
|
668
|
-
- **Resolution:** Verify task name and registration
|
|
669
|
-
- **Recovery:** List available tasks, suggest similar
|
|
670
|
-
|
|
671
|
-
2. **Error:** Invalid Parameters
|
|
672
|
-
- **Cause:** Task parameters do not match expected schema
|
|
673
|
-
- **Resolution:** Validate parameters against task definition
|
|
674
|
-
- **Recovery:** Provide parameter template, reject execution
|
|
675
|
-
|
|
676
|
-
3. **Error:** Execution Timeout
|
|
677
|
-
- **Cause:** Task exceeds maximum execution time
|
|
678
|
-
- **Resolution:** Optimize task or increase timeout
|
|
679
|
-
- **Recovery:** Kill task, cleanup resources, log state
|
|
680
|
-
|
|
681
|
-
---
|
|
682
|
-
|
|
683
|
-
## Performance
|
|
684
|
-
|
|
685
|
-
**Expected Metrics:**
|
|
686
|
-
|
|
687
|
-
```yaml
|
|
688
|
-
duration_expected: 5-15 min (estimated)
|
|
689
|
-
cost_estimated: $0.003-0.010
|
|
690
|
-
token_usage: ~3,000-10,000 tokens
|
|
691
|
-
```
|
|
692
|
-
|
|
693
|
-
**Optimization Notes:**
|
|
694
|
-
- Break into smaller workflows; implement checkpointing; use async processing where possible
|
|
695
|
-
|
|
696
|
-
---
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
## Usage Examples
|
|
700
|
-
|
|
701
|
-
### Example 1: Node.js Project with CodeRabbit
|
|
702
|
-
|
|
703
|
-
```bash
|
|
704
|
-
aios activate Otto # github-devops agent
|
|
705
|
-
aios ci-cd setup \
|
|
706
|
-
--repo="." \
|
|
707
|
-
--provider="github-actions" \
|
|
708
|
-
--type="nodejs" \
|
|
709
|
-
--enable-coderabbit=true \
|
|
710
|
-
--deploy="vercel"
|
|
711
|
-
```
|
|
712
|
-
|
|
713
|
-
**Output**: Complete CI/CD with CodeRabbit Free, Vercel deployment
|
|
714
|
-
|
|
715
|
-
### Example 2: Python Project (GitLab CI)
|
|
716
|
-
|
|
717
|
-
```bash
|
|
718
|
-
aios ci-cd setup \
|
|
719
|
-
--repo="/path/to/python-project" \
|
|
720
|
-
--provider="gitlab-ci" \
|
|
721
|
-
--type="python" \
|
|
722
|
-
--testing="pytest"
|
|
723
|
-
```
|
|
724
|
-
|
|
725
|
-
**Output**: GitLab CI pipeline with pytest
|
|
726
|
-
|
|
727
|
-
### Example 3: Monorepo with Turborepo
|
|
728
|
-
|
|
729
|
-
```bash
|
|
730
|
-
aios ci-cd setup \
|
|
731
|
-
--repo="." \
|
|
732
|
-
--provider="github-actions" \
|
|
733
|
-
--type="monorepo" \
|
|
734
|
-
--enable-coderabbit=true \
|
|
735
|
-
--branch-protection=true
|
|
736
|
-
```
|
|
737
|
-
|
|
738
|
-
**Output**: Optimized monorepo pipeline with caching
|
|
739
|
-
|
|
740
|
-
---
|
|
741
|
-
|
|
742
|
-
## CodeRabbit Free: Key Benefits 🆓
|
|
743
|
-
|
|
744
|
-
1. **Zero Cost**: FREE forever for public repos
|
|
745
|
-
2. **No Setup Complexity**: Just install GitHub App (2 minutes)
|
|
746
|
-
3. **Automatic Reviews**: Every PR reviewed within minutes
|
|
747
|
-
4. **Security Focus**: Catches vulnerabilities early
|
|
748
|
-
5. **Performance Insights**: Identifies bottlenecks
|
|
749
|
-
6. **Best Practices**: Enforces code quality standards
|
|
750
|
-
7. **Interactive**: Chat with CodeRabbit about suggestions
|
|
751
|
-
|
|
752
|
-
**Why CodeRabbit Free?**
|
|
753
|
-
- Competitor (Copilot, CodeGuru) costs $10-19/month/user
|
|
754
|
-
- CodeRabbit Free: $0 for open-source
|
|
755
|
-
- Better security coverage than most paid tools
|
|
756
|
-
- Integrated with GitHub (no external tools needed)
|
|
757
|
-
|
|
758
|
-
---
|
|
759
|
-
|
|
760
|
-
**Related Tasks:**
|
|
761
|
-
- `release-management` - Automate releases after CI passes
|
|
762
|
-
- `pr-automation` - Help users create PRs with proper format
|
|
763
|
-
- `setup-repository` - Initialize repository with best practices
|
|
764
|
-
|
|
1
|
+
---
|
|
2
|
+
id: ci-cd-configuration
|
|
3
|
+
name: Configure CI/CD Pipeline
|
|
4
|
+
agent: github-devops
|
|
5
|
+
category: devops
|
|
6
|
+
complexity: high
|
|
7
|
+
tools:
|
|
8
|
+
- github-cli # Manage workflows and repository settings
|
|
9
|
+
- coderabbit-free # Automated code review (FREE tier)
|
|
10
|
+
checklists:
|
|
11
|
+
- github-devops-checklist.md
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Configure CI/CD Pipeline
|
|
15
|
+
|
|
16
|
+
## Purpose
|
|
17
|
+
|
|
18
|
+
To set up a complete, production-ready CI/CD pipeline for a repository, including linting, testing, building, code review (CodeRabbit Free), and deployment automation.
|
|
19
|
+
|
|
20
|
+
## Supported CI Providers
|
|
21
|
+
|
|
22
|
+
- **GitHub Actions** (primary, recommended)
|
|
23
|
+
- **GitLab CI/CD**
|
|
24
|
+
- **CircleCI**
|
|
25
|
+
- **Jenkins** (basic support)
|
|
26
|
+
|
|
27
|
+
## Input
|
|
28
|
+
|
|
29
|
+
### Required Parameters
|
|
30
|
+
|
|
31
|
+
- **repository_path**: `string`
|
|
32
|
+
- **Description**: Local path or GitHub URL of the repository
|
|
33
|
+
- **Example**: `/path/to/project` or `https://github.com/user/repo`
|
|
34
|
+
- **Validation**: Must be valid Git repository
|
|
35
|
+
|
|
36
|
+
- **ci_provider**: `string`
|
|
37
|
+
- **Description**: CI/CD provider to configure
|
|
38
|
+
- **Options**: `"github-actions"`, `"gitlab-ci"`, `"circleci"`, `"jenkins"`
|
|
39
|
+
- **Default**: `"github-actions"`
|
|
40
|
+
|
|
41
|
+
- **project_type**: `string`
|
|
42
|
+
- **Description**: Type of project (determines pipeline stages)
|
|
43
|
+
- **Options**: `"nodejs"`, `"python"`, `"fullstack"`, `"monorepo"`
|
|
44
|
+
- **Required**: true
|
|
45
|
+
|
|
46
|
+
### Optional Parameters
|
|
47
|
+
|
|
48
|
+
- **testing_framework**: `string`
|
|
49
|
+
- **Description**: Primary testing framework
|
|
50
|
+
- **Examples**: `"jest"`, `"pytest"`, `"vitest"`, `"mocha"`
|
|
51
|
+
- **Auto-detect**: true (scans package.json or requirements.txt)
|
|
52
|
+
|
|
53
|
+
- **deployment_target**: `string`
|
|
54
|
+
- **Description**: Where to deploy
|
|
55
|
+
- **Options**: `"vercel"`, `"netlify"`, `"aws"`, `"none"`
|
|
56
|
+
- **Default**: `"none"`
|
|
57
|
+
|
|
58
|
+
- **enable_coderabbit**: `boolean`
|
|
59
|
+
- **Description**: Enable CodeRabbit Free for automated code review
|
|
60
|
+
- **Default**: `true`
|
|
61
|
+
- **Note**: **FREE tier** - No cost, no API keys needed for public repos
|
|
62
|
+
|
|
63
|
+
- **branch_protection**: `boolean`
|
|
64
|
+
- **Description**: Enable branch protection rules
|
|
65
|
+
- **Default**: `true`
|
|
66
|
+
- **Rules**: Require PR, require status checks, no force push
|
|
67
|
+
|
|
68
|
+
- **required_checks**: `array<string>`
|
|
69
|
+
- **Description**: Status checks that must pass
|
|
70
|
+
- **Default**: `["lint", "test", "build"]`
|
|
71
|
+
|
|
72
|
+
- **secrets**: `object`
|
|
73
|
+
- **Description**: Environment secrets (will be stored securely)
|
|
74
|
+
- **Example**: `{ VERCEL_TOKEN: "xxx", DATABASE_URL: "postgres://..." }`
|
|
75
|
+
|
|
76
|
+
## Output
|
|
77
|
+
|
|
78
|
+
- **workflow_files**: `array<string>`
|
|
79
|
+
- **Description**: Created workflow/config files
|
|
80
|
+
- **Example**: `[".github/workflows/ci.yml", ".github/workflows/deploy.yml"]`
|
|
81
|
+
|
|
82
|
+
- **branch_protection_rules**: `object`
|
|
83
|
+
- **Description**: Applied branch protection settings
|
|
84
|
+
- **Structure**: `{ branch, required_checks, enforce_admins, allow_force_push }`
|
|
85
|
+
|
|
86
|
+
- **coderabbit_config**: `object` (if enabled)
|
|
87
|
+
- **Description**: CodeRabbit configuration
|
|
88
|
+
- **Structure**: `{ enabled: true, config_file: ".coderabbit.yaml", integration_status: "active" }`
|
|
89
|
+
|
|
90
|
+
- **secrets_configured**: `array<string>`
|
|
91
|
+
- **Description**: List of secrets successfully stored
|
|
92
|
+
- **Note**: Values not included (security)
|
|
93
|
+
|
|
94
|
+
- **pipeline_url**: `string`
|
|
95
|
+
- **Description**: URL to view pipeline runs
|
|
96
|
+
- **Example**: `"https://github.com/user/repo/actions"`
|
|
97
|
+
|
|
98
|
+
- **README_section**: `string`
|
|
99
|
+
- **Description**: Markdown section to add to README.md
|
|
100
|
+
- **Content**: CI/CD badges, status, setup instructions
|
|
101
|
+
|
|
102
|
+
## Process
|
|
103
|
+
|
|
104
|
+
### Phase 1: Repository Analysis & Validation (2 min)
|
|
105
|
+
|
|
106
|
+
1. **Validate Repository**
|
|
107
|
+
- Check if valid Git repository
|
|
108
|
+
- Verify remote origin exists
|
|
109
|
+
- Check CI provider compatibility
|
|
110
|
+
|
|
111
|
+
2. **Detect Project Structure**
|
|
112
|
+
- Auto-detect project type (if not provided)
|
|
113
|
+
- Scan for package.json, requirements.txt, pom.xml, etc.
|
|
114
|
+
- Identify testing framework
|
|
115
|
+
- Identify build commands
|
|
116
|
+
|
|
117
|
+
3. **Check Existing CI Configuration**
|
|
118
|
+
- Look for existing workflows
|
|
119
|
+
- Warn if overwriting: "⚠️ Found existing CI config. Backup created at: {path}"
|
|
120
|
+
|
|
121
|
+
### Phase 2: CodeRabbit Free Setup (2 min) 🆓
|
|
122
|
+
|
|
123
|
+
**Note**: CodeRabbit Free is **100% FREE** for public repositories. No API keys, no credit card, no costs.
|
|
124
|
+
|
|
125
|
+
4. **Install CodeRabbit GitHub App**
|
|
126
|
+
- Guide user: "To enable CodeRabbit Free:
|
|
127
|
+
1. Visit: https://github.com/apps/coderabbitai
|
|
128
|
+
2. Click 'Install' (FREE for public repos)
|
|
129
|
+
3. Grant access to repository: {repo_name}
|
|
130
|
+
4. Return here when done"
|
|
131
|
+
- Wait for user confirmation
|
|
132
|
+
- Verify installation via GitHub API
|
|
133
|
+
|
|
134
|
+
5. **Create CodeRabbit Configuration**
|
|
135
|
+
- Generate `.coderabbit.yaml`:
|
|
136
|
+
```yaml
|
|
137
|
+
# CodeRabbit Free Configuration
|
|
138
|
+
# 🆓 FREE for public repositories - No costs, no limits
|
|
139
|
+
|
|
140
|
+
language: "en-US"
|
|
141
|
+
|
|
142
|
+
reviews:
|
|
143
|
+
profile: "chill" # balanced review depth
|
|
144
|
+
request_changes_workflow: false
|
|
145
|
+
high_level_summary: true
|
|
146
|
+
poem: false
|
|
147
|
+
review_status: true
|
|
148
|
+
collapse_walkthrough: false
|
|
149
|
+
auto_review:
|
|
150
|
+
enabled: true
|
|
151
|
+
ignore_title_keywords:
|
|
152
|
+
- "WIP"
|
|
153
|
+
- "DO NOT REVIEW"
|
|
154
|
+
|
|
155
|
+
chat:
|
|
156
|
+
auto_reply: true
|
|
157
|
+
|
|
158
|
+
# Focus areas (adjust based on project type)
|
|
159
|
+
focus:
|
|
160
|
+
- security
|
|
161
|
+
- performance
|
|
162
|
+
- best_practices
|
|
163
|
+
- testing
|
|
164
|
+
- documentation
|
|
165
|
+
|
|
166
|
+
# Ignore patterns
|
|
167
|
+
ignore:
|
|
168
|
+
- "**/*.min.js"
|
|
169
|
+
- "**/*.min.css"
|
|
170
|
+
- "**/dist/**"
|
|
171
|
+
- "**/build/**"
|
|
172
|
+
- "**/.next/**"
|
|
173
|
+
- "**/node_modules/**"
|
|
174
|
+
- "**/.git/**"
|
|
175
|
+
```
|
|
176
|
+
- Commit and push `.coderabbit.yaml`
|
|
177
|
+
- Log: "✅ CodeRabbit Free configured (Focus: security, performance, best practices)"
|
|
178
|
+
|
|
179
|
+
6. **Add CodeRabbit Commands to README**
|
|
180
|
+
- Document available commands:
|
|
181
|
+
```markdown
|
|
182
|
+
## Code Review (CodeRabbit Free 🆓)
|
|
183
|
+
|
|
184
|
+
**Automatic Reviews**: CodeRabbit automatically reviews all PRs
|
|
185
|
+
|
|
186
|
+
**Manual Commands** (comment on PR):
|
|
187
|
+
- `@coderabbitai review` - Request full review
|
|
188
|
+
- `@coderabbitai summary` - Get PR summary
|
|
189
|
+
- `@coderabbitai resolve` - Mark suggestions as resolved
|
|
190
|
+
- `@coderabbitai help` - Show available commands
|
|
191
|
+
|
|
192
|
+
**Local Pre-Commit Check** (optional):
|
|
193
|
+
```bash
|
|
194
|
+
# Install CodeRabbit CLI (optional, for local checks)
|
|
195
|
+
npm install -g @coderabbitai/cli
|
|
196
|
+
|
|
197
|
+
# Run pre-commit review
|
|
198
|
+
coderabbit --prompt-only -t uncommitted
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
[CodeRabbit Docs](https://docs.coderabbit.ai)
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Phase 3: GitHub Actions Workflow Creation (5 min)
|
|
205
|
+
|
|
206
|
+
7. **Create Lint + Test + Build Workflow**
|
|
207
|
+
- Generate `.github/workflows/ci.yml`:
|
|
208
|
+
|
|
209
|
+
```yaml
|
|
210
|
+
name: CI Pipeline
|
|
211
|
+
|
|
212
|
+
on:
|
|
213
|
+
push:
|
|
214
|
+
branches: [ main, develop ]
|
|
215
|
+
pull_request:
|
|
216
|
+
branches: [ main, develop ]
|
|
217
|
+
|
|
218
|
+
jobs:
|
|
219
|
+
lint:
|
|
220
|
+
runs-on: ubuntu-latest
|
|
221
|
+
steps:
|
|
222
|
+
- uses: actions/checkout@v4
|
|
223
|
+
|
|
224
|
+
- name: Setup Node.js
|
|
225
|
+
uses: actions/setup-node@v4
|
|
226
|
+
with:
|
|
227
|
+
node-version: '20'
|
|
228
|
+
cache: 'npm'
|
|
229
|
+
|
|
230
|
+
- name: Install dependencies
|
|
231
|
+
run: npm ci
|
|
232
|
+
|
|
233
|
+
- name: Run linter
|
|
234
|
+
run: npm run lint
|
|
235
|
+
|
|
236
|
+
test:
|
|
237
|
+
runs-on: ubuntu-latest
|
|
238
|
+
needs: lint
|
|
239
|
+
steps:
|
|
240
|
+
- uses: actions/checkout@v4
|
|
241
|
+
|
|
242
|
+
- name: Setup Node.js
|
|
243
|
+
uses: actions/setup-node@v4
|
|
244
|
+
with:
|
|
245
|
+
node-version: '20'
|
|
246
|
+
cache: 'npm'
|
|
247
|
+
|
|
248
|
+
- name: Install dependencies
|
|
249
|
+
run: npm ci
|
|
250
|
+
|
|
251
|
+
- name: Run tests
|
|
252
|
+
run: npm test -- --coverage
|
|
253
|
+
|
|
254
|
+
- name: Upload coverage
|
|
255
|
+
uses: codecov/codecov-action@v3
|
|
256
|
+
with:
|
|
257
|
+
files: ./coverage/coverage-final.json
|
|
258
|
+
|
|
259
|
+
build:
|
|
260
|
+
runs-on: ubuntu-latest
|
|
261
|
+
needs: test
|
|
262
|
+
steps:
|
|
263
|
+
- uses: actions/checkout@v4
|
|
264
|
+
|
|
265
|
+
- name: Setup Node.js
|
|
266
|
+
uses: actions/setup-node@v4
|
|
267
|
+
with:
|
|
268
|
+
node-version: '20'
|
|
269
|
+
cache: 'npm'
|
|
270
|
+
|
|
271
|
+
- name: Install dependencies
|
|
272
|
+
run: npm ci
|
|
273
|
+
|
|
274
|
+
- name: Build project
|
|
275
|
+
run: npm run build
|
|
276
|
+
|
|
277
|
+
- name: Upload build artifacts
|
|
278
|
+
uses: actions/upload-artifact@v3
|
|
279
|
+
with:
|
|
280
|
+
name: build
|
|
281
|
+
path: dist/
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
8. **Create Deployment Workflow** (if deployment_target provided)
|
|
285
|
+
- Generate `.github/workflows/deploy.yml`:
|
|
286
|
+
|
|
287
|
+
```yaml
|
|
288
|
+
name: Deploy
|
|
289
|
+
|
|
290
|
+
on:
|
|
291
|
+
push:
|
|
292
|
+
branches: [ main ]
|
|
293
|
+
workflow_dispatch:
|
|
294
|
+
|
|
295
|
+
jobs:
|
|
296
|
+
deploy:
|
|
297
|
+
runs-on: ubuntu-latest
|
|
298
|
+
environment: production
|
|
299
|
+
steps:
|
|
300
|
+
- uses: actions/checkout@v4
|
|
301
|
+
|
|
302
|
+
- name: Setup Node.js
|
|
303
|
+
uses: actions/setup-node@v4
|
|
304
|
+
with:
|
|
305
|
+
node-version: '20'
|
|
306
|
+
cache: 'npm'
|
|
307
|
+
|
|
308
|
+
- name: Install dependencies
|
|
309
|
+
run: npm ci
|
|
310
|
+
|
|
311
|
+
- name: Build
|
|
312
|
+
run: npm run build
|
|
313
|
+
|
|
314
|
+
- name: Deploy to {deployment_target}
|
|
315
|
+
uses: {deployment_action}
|
|
316
|
+
with:
|
|
317
|
+
token: ${{ secrets.DEPLOY_TOKEN }}
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Phase 4: Branch Protection Rules (3 min)
|
|
321
|
+
|
|
322
|
+
9. **Configure Branch Protection** (if enabled)
|
|
323
|
+
- Use GitHub API to set rules on `main`:
|
|
324
|
+
- Require pull request reviews (1 approval)
|
|
325
|
+
- Require status checks to pass:
|
|
326
|
+
- `lint`
|
|
327
|
+
- `test`
|
|
328
|
+
- `build`
|
|
329
|
+
- `coderabbitai` (CodeRabbit review)
|
|
330
|
+
- Enforce for administrators: false (for emergency fixes)
|
|
331
|
+
- Require linear history: true
|
|
332
|
+
- Allow force pushes: false
|
|
333
|
+
- Allow deletions: false
|
|
334
|
+
|
|
335
|
+
10. **Store Secrets** (if provided)
|
|
336
|
+
- Use GitHub CLI to set secrets:
|
|
337
|
+
```bash
|
|
338
|
+
gh secret set VERCEL_TOKEN --body="xxx"
|
|
339
|
+
gh secret set DATABASE_URL --body="postgres://..."
|
|
340
|
+
```
|
|
341
|
+
- Verify secrets stored: `gh secret list`
|
|
342
|
+
|
|
343
|
+
### Phase 5: Documentation & Testing (3 min)
|
|
344
|
+
|
|
345
|
+
11. **Update README.md**
|
|
346
|
+
- Add CI/CD badges:
|
|
347
|
+
```markdown
|
|
348
|
+
[](https://github.com/user/repo/actions/workflows/ci.yml)
|
|
349
|
+
[](https://github.com/apps/coderabbitai)
|
|
350
|
+
```
|
|
351
|
+
- Add CI/CD section (from output)
|
|
352
|
+
|
|
353
|
+
12. **Create Test PR**
|
|
354
|
+
- Create branch: `ci-cd-test-{timestamp}`
|
|
355
|
+
- Make trivial change (e.g., update README)
|
|
356
|
+
- Push and create PR
|
|
357
|
+
- Verify:
|
|
358
|
+
- CI workflow triggers
|
|
359
|
+
- All checks run
|
|
360
|
+
- CodeRabbit reviews PR
|
|
361
|
+
- Branch protection enforced
|
|
362
|
+
- Close PR after validation
|
|
363
|
+
|
|
364
|
+
13. **Generate Setup Report**
|
|
365
|
+
- Document what was configured
|
|
366
|
+
- List workflow files created
|
|
367
|
+
- Show pipeline URL
|
|
368
|
+
- Confirm CodeRabbit active
|
|
369
|
+
- List next steps
|
|
370
|
+
|
|
371
|
+
## Checklist
|
|
372
|
+
|
|
373
|
+
### Pre-conditions
|
|
374
|
+
|
|
375
|
+
- [ ] Repository is valid Git repository
|
|
376
|
+
- **Validation**: `.git` directory exists
|
|
377
|
+
- **Error**: "Not a Git repository"
|
|
378
|
+
|
|
379
|
+
- [ ] CI provider is supported
|
|
380
|
+
- **Validation**: `ci_provider in ["github-actions", "gitlab-ci", "circleci", "jenkins"]`
|
|
381
|
+
- **Error**: "CI provider '{provider}' not supported"
|
|
382
|
+
|
|
383
|
+
- [ ] Project has package.json or equivalent
|
|
384
|
+
- **Validation**: File exists at root
|
|
385
|
+
- **Error**: "Cannot detect project type. Add package.json or specify project_type manually"
|
|
386
|
+
|
|
387
|
+
### Post-conditions
|
|
388
|
+
|
|
389
|
+
- [ ] Workflow files created and committed
|
|
390
|
+
- **Validation**: Files exist and are tracked by Git
|
|
391
|
+
- **Test**: `git ls-files | grep -E "\.github/workflows|\.gitlab-ci\.yml"`
|
|
392
|
+
|
|
393
|
+
- [ ] CodeRabbit configuration valid (if enabled)
|
|
394
|
+
- **Validation**: `.coderabbit.yaml` is valid YAML
|
|
395
|
+
- **Test**: `yamllint .coderabbit.yaml`
|
|
396
|
+
|
|
397
|
+
- [ ] Branch protection active (if enabled)
|
|
398
|
+
- **Validation**: GitHub API returns protection rules
|
|
399
|
+
- **Test**: `gh api repos/{owner}/{repo}/branches/main/protection`
|
|
400
|
+
|
|
401
|
+
- [ ] Test PR passes all checks
|
|
402
|
+
- **Validation**: All required checks green
|
|
403
|
+
- **Manual Check**: true
|
|
404
|
+
|
|
405
|
+
### Acceptance Criteria
|
|
406
|
+
|
|
407
|
+
- [ ] CI pipeline runs on every push
|
|
408
|
+
- **Type**: acceptance
|
|
409
|
+
- **Test**: Push to branch → workflow triggers
|
|
410
|
+
|
|
411
|
+
- [ ] CodeRabbit reviews all PRs automatically (if enabled)
|
|
412
|
+
- **Type**: acceptance
|
|
413
|
+
- **Manual Check**: true
|
|
414
|
+
- **Test**: Create PR → CodeRabbit comments within 2 min
|
|
415
|
+
|
|
416
|
+
- [ ] Branch protection prevents direct pushes to main
|
|
417
|
+
- **Type**: acceptance
|
|
418
|
+
- **Test**: Try `git push origin main` → rejected
|
|
419
|
+
|
|
420
|
+
## Templates
|
|
421
|
+
|
|
422
|
+
### README CI/CD Section
|
|
423
|
+
|
|
424
|
+
```markdown
|
|
425
|
+
## CI/CD Pipeline
|
|
426
|
+
|
|
427
|
+
This repository uses automated CI/CD with {ci_provider}.
|
|
428
|
+
|
|
429
|
+
### Status
|
|
430
|
+
|
|
431
|
+
[](https://github.com/{owner}/{repo}/actions/workflows/ci.yml)
|
|
432
|
+
{deployment_badge if applicable}
|
|
433
|
+
|
|
434
|
+
### Pipeline Stages
|
|
435
|
+
|
|
436
|
+
1. **Lint**: ESLint + Prettier
|
|
437
|
+
2. **Test**: {testing_framework} with coverage
|
|
438
|
+
3. **Build**: Production build
|
|
439
|
+
{4. **Deploy**: Automatic deployment to {deployment_target} (main branch only) if applicable}
|
|
440
|
+
|
|
441
|
+
### Code Review (CodeRabbit Free 🆓)
|
|
442
|
+
|
|
443
|
+
Every PR is automatically reviewed by [CodeRabbit](https://github.com/apps/coderabbitai):
|
|
444
|
+
- Security vulnerabilities
|
|
445
|
+
- Performance issues
|
|
446
|
+
- Best practices
|
|
447
|
+
- Test coverage
|
|
448
|
+
- Documentation
|
|
449
|
+
|
|
450
|
+
**Commands** (comment on PR):
|
|
451
|
+
- `@coderabbitai review` - Request review
|
|
452
|
+
- `@coderabbitai summary` - Get summary
|
|
453
|
+
- `@coderabbitai resolve` - Mark as resolved
|
|
454
|
+
|
|
455
|
+
### Branch Protection
|
|
456
|
+
|
|
457
|
+
- `main` branch requires:
|
|
458
|
+
- ✅ 1 PR approval
|
|
459
|
+
- ✅ All CI checks passing
|
|
460
|
+
- ✅ CodeRabbit review complete
|
|
461
|
+
- ❌ No direct pushes
|
|
462
|
+
- ❌ No force pushes
|
|
463
|
+
|
|
464
|
+
### Setup Instructions
|
|
465
|
+
|
|
466
|
+
1. Clone repository
|
|
467
|
+
2. Install dependencies: `npm install`
|
|
468
|
+
3. Run tests locally: `npm test`
|
|
469
|
+
4. Create feature branch: `git checkout -b feature/my-feature`
|
|
470
|
+
5. Make changes and commit
|
|
471
|
+
6. Push and create PR
|
|
472
|
+
7. Wait for CI + CodeRabbit review
|
|
473
|
+
8. Merge after approval
|
|
474
|
+
```
|
|
475
|
+
|
|
476
|
+
## Tools
|
|
477
|
+
|
|
478
|
+
- **github-cli**:
|
|
479
|
+
- **Version**: 2.0.0
|
|
480
|
+
- **Used For**: Manage workflows, secrets, branch protection
|
|
481
|
+
- **Required**: true (for GitHub Actions)
|
|
482
|
+
|
|
483
|
+
- **coderabbit-free**:
|
|
484
|
+
- **Version**: Latest (GitHub App)
|
|
485
|
+
- **Used For**: Automated code review on every PR
|
|
486
|
+
- **Cost**: $0 (FREE for public repositories)
|
|
487
|
+
- **Setup**: Install GitHub App (one-time, 2 minutes)
|
|
488
|
+
- **Features**:
|
|
489
|
+
- Automatic PR reviews
|
|
490
|
+
- Security scanning
|
|
491
|
+
- Performance analysis
|
|
492
|
+
- Best practices checks
|
|
493
|
+
- Interactive chat
|
|
494
|
+
- **Limitations**: None for open-source (FREE tier is full-featured)
|
|
495
|
+
|
|
496
|
+
## Performance
|
|
497
|
+
|
|
498
|
+
- **Duration Expected**: 15 minutes (including CodeRabbit setup)
|
|
499
|
+
- **Cost Estimated**: $0 (CodeRabbit Free is free, GitHub Actions has 2,000 free minutes/month)
|
|
500
|
+
- **Cacheable**: false (configuration is per-repository)
|
|
501
|
+
- **Parallelizable**: false (sequential setup required)
|
|
502
|
+
|
|
503
|
+
## Error Handling
|
|
504
|
+
|
|
505
|
+
- **Strategy**: retry + fallback
|
|
506
|
+
- **Fallback**: If CodeRabbit setup fails, continue without it (can add later)
|
|
507
|
+
- **Retry**:
|
|
508
|
+
- **Max Attempts**: 3
|
|
509
|
+
- **Backoff**: exponential
|
|
510
|
+
- **Backoff MS**: 2000
|
|
511
|
+
- **Abort Workflow**: false (continue even if optional features fail)
|
|
512
|
+
- **Notification**: log + setup report
|
|
513
|
+
|
|
514
|
+
## Metadata
|
|
515
|
+
|
|
516
|
+
- **Story**: Epic 10 (Critical Dependency Resolution)
|
|
517
|
+
- **Version**: 1.0.0
|
|
518
|
+
- **Dependencies**: `github-cli` tool
|
|
519
|
+
- **Author**: Brad Frost Clone
|
|
520
|
+
- **Created**: 2025-11-13
|
|
521
|
+
- **Updated**: 2025-11-13
|
|
522
|
+
- **Breaking Changes**: None (new task)
|
|
523
|
+
|
|
524
|
+
---
|
|
525
|
+
|
|
526
|
+
## Execution Modes
|
|
527
|
+
|
|
528
|
+
**Choose your execution mode:**
|
|
529
|
+
|
|
530
|
+
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
531
|
+
- Autonomous decision making with logging
|
|
532
|
+
- Minimal user interaction
|
|
533
|
+
- **Best for:** Simple, deterministic tasks
|
|
534
|
+
|
|
535
|
+
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
536
|
+
- Explicit decision checkpoints
|
|
537
|
+
- Educational explanations
|
|
538
|
+
- **Best for:** Learning, complex decisions
|
|
539
|
+
|
|
540
|
+
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
541
|
+
- Task analysis phase (identify all ambiguities)
|
|
542
|
+
- Zero ambiguity execution
|
|
543
|
+
- **Best for:** Ambiguous requirements, critical work
|
|
544
|
+
|
|
545
|
+
**Parameter:** `mode` (optional, default: `interactive`)
|
|
546
|
+
|
|
547
|
+
---
|
|
548
|
+
|
|
549
|
+
## Task Definition (AIOS Task Format V1.0)
|
|
550
|
+
|
|
551
|
+
```yaml
|
|
552
|
+
task: ciCdConfiguration()
|
|
553
|
+
responsável: Gage (Automator)
|
|
554
|
+
responsavel_type: Agente
|
|
555
|
+
atomic_layer: Organism
|
|
556
|
+
|
|
557
|
+
**Entrada:**
|
|
558
|
+
- campo: task
|
|
559
|
+
tipo: string
|
|
560
|
+
origem: User Input
|
|
561
|
+
obrigatório: true
|
|
562
|
+
validação: Must be registered task
|
|
563
|
+
|
|
564
|
+
- campo: parameters
|
|
565
|
+
tipo: object
|
|
566
|
+
origem: User Input
|
|
567
|
+
obrigatório: false
|
|
568
|
+
validação: Valid task parameters
|
|
569
|
+
|
|
570
|
+
- campo: mode
|
|
571
|
+
tipo: string
|
|
572
|
+
origem: User Input
|
|
573
|
+
obrigatório: false
|
|
574
|
+
validação: yolo|interactive|pre-flight
|
|
575
|
+
|
|
576
|
+
**Saída:**
|
|
577
|
+
- campo: execution_result
|
|
578
|
+
tipo: object
|
|
579
|
+
destino: Memory
|
|
580
|
+
persistido: false
|
|
581
|
+
|
|
582
|
+
- campo: logs
|
|
583
|
+
tipo: array
|
|
584
|
+
destino: File (.ai/logs/*)
|
|
585
|
+
persistido: true
|
|
586
|
+
|
|
587
|
+
- campo: state
|
|
588
|
+
tipo: object
|
|
589
|
+
destino: State management
|
|
590
|
+
persistido: true
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
---
|
|
594
|
+
|
|
595
|
+
## Pre-Conditions
|
|
596
|
+
|
|
597
|
+
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
598
|
+
|
|
599
|
+
**Checklist:**
|
|
600
|
+
|
|
601
|
+
```yaml
|
|
602
|
+
pre-conditions:
|
|
603
|
+
- [ ] Task is registered; required parameters provided; dependencies met
|
|
604
|
+
tipo: pre-condition
|
|
605
|
+
blocker: true
|
|
606
|
+
validação: |
|
|
607
|
+
Check task is registered; required parameters provided; dependencies met
|
|
608
|
+
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
609
|
+
```
|
|
610
|
+
|
|
611
|
+
---
|
|
612
|
+
|
|
613
|
+
## Post-Conditions
|
|
614
|
+
|
|
615
|
+
**Purpose:** Validate execution success AFTER task completes
|
|
616
|
+
|
|
617
|
+
**Checklist:**
|
|
618
|
+
|
|
619
|
+
```yaml
|
|
620
|
+
post-conditions:
|
|
621
|
+
- [ ] Task completed; exit code 0; expected outputs created
|
|
622
|
+
tipo: post-condition
|
|
623
|
+
blocker: true
|
|
624
|
+
validação: |
|
|
625
|
+
Verify task completed; exit code 0; expected outputs created
|
|
626
|
+
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
627
|
+
```
|
|
628
|
+
|
|
629
|
+
---
|
|
630
|
+
|
|
631
|
+
## Acceptance Criteria
|
|
632
|
+
|
|
633
|
+
**Purpose:** Definitive pass/fail criteria for task completion
|
|
634
|
+
|
|
635
|
+
**Checklist:**
|
|
636
|
+
|
|
637
|
+
```yaml
|
|
638
|
+
acceptance-criteria:
|
|
639
|
+
- [ ] Task completed as expected; side effects documented
|
|
640
|
+
tipo: acceptance-criterion
|
|
641
|
+
blocker: true
|
|
642
|
+
validação: |
|
|
643
|
+
Assert task completed as expected; side effects documented
|
|
644
|
+
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
645
|
+
```
|
|
646
|
+
|
|
647
|
+
---
|
|
648
|
+
|
|
649
|
+
## Scripts
|
|
650
|
+
|
|
651
|
+
**Agent-specific code for this task:**
|
|
652
|
+
|
|
653
|
+
- **Script:** execute-task.js
|
|
654
|
+
- **Purpose:** Generic task execution wrapper
|
|
655
|
+
- **Language:** JavaScript
|
|
656
|
+
- **Location:** .aios-core/scripts/execute-task.js
|
|
657
|
+
|
|
658
|
+
---
|
|
659
|
+
|
|
660
|
+
## Error Handling
|
|
661
|
+
|
|
662
|
+
**Strategy:** retry
|
|
663
|
+
|
|
664
|
+
**Common Errors:**
|
|
665
|
+
|
|
666
|
+
1. **Error:** Task Not Found
|
|
667
|
+
- **Cause:** Specified task not registered in system
|
|
668
|
+
- **Resolution:** Verify task name and registration
|
|
669
|
+
- **Recovery:** List available tasks, suggest similar
|
|
670
|
+
|
|
671
|
+
2. **Error:** Invalid Parameters
|
|
672
|
+
- **Cause:** Task parameters do not match expected schema
|
|
673
|
+
- **Resolution:** Validate parameters against task definition
|
|
674
|
+
- **Recovery:** Provide parameter template, reject execution
|
|
675
|
+
|
|
676
|
+
3. **Error:** Execution Timeout
|
|
677
|
+
- **Cause:** Task exceeds maximum execution time
|
|
678
|
+
- **Resolution:** Optimize task or increase timeout
|
|
679
|
+
- **Recovery:** Kill task, cleanup resources, log state
|
|
680
|
+
|
|
681
|
+
---
|
|
682
|
+
|
|
683
|
+
## Performance
|
|
684
|
+
|
|
685
|
+
**Expected Metrics:**
|
|
686
|
+
|
|
687
|
+
```yaml
|
|
688
|
+
duration_expected: 5-15 min (estimated)
|
|
689
|
+
cost_estimated: $0.003-0.010
|
|
690
|
+
token_usage: ~3,000-10,000 tokens
|
|
691
|
+
```
|
|
692
|
+
|
|
693
|
+
**Optimization Notes:**
|
|
694
|
+
- Break into smaller workflows; implement checkpointing; use async processing where possible
|
|
695
|
+
|
|
696
|
+
---
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
## Usage Examples
|
|
700
|
+
|
|
701
|
+
### Example 1: Node.js Project with CodeRabbit
|
|
702
|
+
|
|
703
|
+
```bash
|
|
704
|
+
aios activate Otto # github-devops agent
|
|
705
|
+
aios ci-cd setup \
|
|
706
|
+
--repo="." \
|
|
707
|
+
--provider="github-actions" \
|
|
708
|
+
--type="nodejs" \
|
|
709
|
+
--enable-coderabbit=true \
|
|
710
|
+
--deploy="vercel"
|
|
711
|
+
```
|
|
712
|
+
|
|
713
|
+
**Output**: Complete CI/CD with CodeRabbit Free, Vercel deployment
|
|
714
|
+
|
|
715
|
+
### Example 2: Python Project (GitLab CI)
|
|
716
|
+
|
|
717
|
+
```bash
|
|
718
|
+
aios ci-cd setup \
|
|
719
|
+
--repo="/path/to/python-project" \
|
|
720
|
+
--provider="gitlab-ci" \
|
|
721
|
+
--type="python" \
|
|
722
|
+
--testing="pytest"
|
|
723
|
+
```
|
|
724
|
+
|
|
725
|
+
**Output**: GitLab CI pipeline with pytest
|
|
726
|
+
|
|
727
|
+
### Example 3: Monorepo with Turborepo
|
|
728
|
+
|
|
729
|
+
```bash
|
|
730
|
+
aios ci-cd setup \
|
|
731
|
+
--repo="." \
|
|
732
|
+
--provider="github-actions" \
|
|
733
|
+
--type="monorepo" \
|
|
734
|
+
--enable-coderabbit=true \
|
|
735
|
+
--branch-protection=true
|
|
736
|
+
```
|
|
737
|
+
|
|
738
|
+
**Output**: Optimized monorepo pipeline with caching
|
|
739
|
+
|
|
740
|
+
---
|
|
741
|
+
|
|
742
|
+
## CodeRabbit Free: Key Benefits 🆓
|
|
743
|
+
|
|
744
|
+
1. **Zero Cost**: FREE forever for public repos
|
|
745
|
+
2. **No Setup Complexity**: Just install GitHub App (2 minutes)
|
|
746
|
+
3. **Automatic Reviews**: Every PR reviewed within minutes
|
|
747
|
+
4. **Security Focus**: Catches vulnerabilities early
|
|
748
|
+
5. **Performance Insights**: Identifies bottlenecks
|
|
749
|
+
6. **Best Practices**: Enforces code quality standards
|
|
750
|
+
7. **Interactive**: Chat with CodeRabbit about suggestions
|
|
751
|
+
|
|
752
|
+
**Why CodeRabbit Free?**
|
|
753
|
+
- Competitor (Copilot, CodeGuru) costs $10-19/month/user
|
|
754
|
+
- CodeRabbit Free: $0 for open-source
|
|
755
|
+
- Better security coverage than most paid tools
|
|
756
|
+
- Integrated with GitHub (no external tools needed)
|
|
757
|
+
|
|
758
|
+
---
|
|
759
|
+
|
|
760
|
+
**Related Tasks:**
|
|
761
|
+
- `release-management` - Automate releases after CI passes
|
|
762
|
+
- `pr-automation` - Help users create PRs with proper format
|
|
763
|
+
- `setup-repository` - Initialize repository with best practices
|
|
764
|
+
|