aidevops 2.52.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 (329) hide show
  1. package/.agent/AGENTS.md +614 -0
  2. package/.agent/accounts.md +65 -0
  3. package/.agent/aidevops/add-new-mcp-to-aidevops.md +456 -0
  4. package/.agent/aidevops/api-integrations.md +335 -0
  5. package/.agent/aidevops/architecture.md +510 -0
  6. package/.agent/aidevops/configs.md +274 -0
  7. package/.agent/aidevops/docs.md +244 -0
  8. package/.agent/aidevops/extension.md +311 -0
  9. package/.agent/aidevops/mcp-integrations.md +340 -0
  10. package/.agent/aidevops/mcp-troubleshooting.md +162 -0
  11. package/.agent/aidevops/memory-patterns.md +172 -0
  12. package/.agent/aidevops/providers.md +217 -0
  13. package/.agent/aidevops/recommendations.md +321 -0
  14. package/.agent/aidevops/requirements.md +301 -0
  15. package/.agent/aidevops/resources.md +214 -0
  16. package/.agent/aidevops/security-requirements.md +174 -0
  17. package/.agent/aidevops/security.md +350 -0
  18. package/.agent/aidevops/service-links.md +400 -0
  19. package/.agent/aidevops/services.md +357 -0
  20. package/.agent/aidevops/setup.md +153 -0
  21. package/.agent/aidevops/troubleshooting.md +389 -0
  22. package/.agent/aidevops.md +124 -0
  23. package/.agent/build-plus.md +244 -0
  24. package/.agent/content/guidelines.md +109 -0
  25. package/.agent/content.md +87 -0
  26. package/.agent/health.md +59 -0
  27. package/.agent/legal.md +59 -0
  28. package/.agent/loop-state/full-loop.local.md +16 -0
  29. package/.agent/loop-state/ralph-loop.local.md +10 -0
  30. package/.agent/marketing.md +440 -0
  31. package/.agent/memory/README.md +260 -0
  32. package/.agent/onboarding.md +796 -0
  33. package/.agent/plan-plus.md +245 -0
  34. package/.agent/research.md +100 -0
  35. package/.agent/sales.md +333 -0
  36. package/.agent/scripts/101domains-helper.sh +701 -0
  37. package/.agent/scripts/add-missing-returns.sh +140 -0
  38. package/.agent/scripts/agent-browser-helper.sh +311 -0
  39. package/.agent/scripts/agno-setup.sh +712 -0
  40. package/.agent/scripts/ahrefs-mcp-wrapper.js +168 -0
  41. package/.agent/scripts/aidevops-update-check.sh +71 -0
  42. package/.agent/scripts/ampcode-cli.sh +522 -0
  43. package/.agent/scripts/auto-version-bump.sh +156 -0
  44. package/.agent/scripts/autogen-helper.sh +512 -0
  45. package/.agent/scripts/beads-sync-helper.sh +596 -0
  46. package/.agent/scripts/closte-helper.sh +5 -0
  47. package/.agent/scripts/cloudron-helper.sh +321 -0
  48. package/.agent/scripts/codacy-cli-chunked.sh +581 -0
  49. package/.agent/scripts/codacy-cli.sh +442 -0
  50. package/.agent/scripts/code-audit-helper.sh +5 -0
  51. package/.agent/scripts/coderabbit-cli.sh +417 -0
  52. package/.agent/scripts/coderabbit-pro-analysis.sh +238 -0
  53. package/.agent/scripts/commands/code-simplifier.md +86 -0
  54. package/.agent/scripts/commands/full-loop.md +246 -0
  55. package/.agent/scripts/commands/postflight-loop.md +103 -0
  56. package/.agent/scripts/commands/recall.md +182 -0
  57. package/.agent/scripts/commands/remember.md +132 -0
  58. package/.agent/scripts/commands/save-todo.md +175 -0
  59. package/.agent/scripts/commands/session-review.md +154 -0
  60. package/.agent/scripts/comprehensive-quality-fix.sh +106 -0
  61. package/.agent/scripts/context-builder-helper.sh +522 -0
  62. package/.agent/scripts/coolify-cli-helper.sh +674 -0
  63. package/.agent/scripts/coolify-helper.sh +380 -0
  64. package/.agent/scripts/crawl4ai-examples.sh +401 -0
  65. package/.agent/scripts/crawl4ai-helper.sh +1078 -0
  66. package/.agent/scripts/crewai-helper.sh +681 -0
  67. package/.agent/scripts/dev-browser-helper.sh +513 -0
  68. package/.agent/scripts/dns-helper.sh +396 -0
  69. package/.agent/scripts/domain-research-helper.sh +917 -0
  70. package/.agent/scripts/dspy-helper.sh +285 -0
  71. package/.agent/scripts/dspyground-helper.sh +291 -0
  72. package/.agent/scripts/eeat-score-helper.sh +1242 -0
  73. package/.agent/scripts/efficient-return-fix.sh +92 -0
  74. package/.agent/scripts/extract-opencode-prompts.sh +128 -0
  75. package/.agent/scripts/find-missing-returns.sh +113 -0
  76. package/.agent/scripts/fix-auth-headers.sh +104 -0
  77. package/.agent/scripts/fix-common-strings.sh +254 -0
  78. package/.agent/scripts/fix-content-type.sh +100 -0
  79. package/.agent/scripts/fix-error-messages.sh +130 -0
  80. package/.agent/scripts/fix-misplaced-returns.sh +74 -0
  81. package/.agent/scripts/fix-remaining-literals.sh +152 -0
  82. package/.agent/scripts/fix-return-statements.sh +41 -0
  83. package/.agent/scripts/fix-s131-default-cases.sh +249 -0
  84. package/.agent/scripts/fix-sc2155-simple.sh +102 -0
  85. package/.agent/scripts/fix-shellcheck-critical.sh +187 -0
  86. package/.agent/scripts/fix-string-literals.sh +273 -0
  87. package/.agent/scripts/full-loop-helper.sh +773 -0
  88. package/.agent/scripts/generate-opencode-agents.sh +497 -0
  89. package/.agent/scripts/generate-opencode-commands.sh +1629 -0
  90. package/.agent/scripts/generate-skills.sh +366 -0
  91. package/.agent/scripts/git-platforms-helper.sh +640 -0
  92. package/.agent/scripts/gitea-cli-helper.sh +743 -0
  93. package/.agent/scripts/github-cli-helper.sh +702 -0
  94. package/.agent/scripts/gitlab-cli-helper.sh +682 -0
  95. package/.agent/scripts/gsc-add-user-helper.sh +325 -0
  96. package/.agent/scripts/gsc-sitemap-helper.sh +678 -0
  97. package/.agent/scripts/hetzner-helper.sh +485 -0
  98. package/.agent/scripts/hostinger-helper.sh +229 -0
  99. package/.agent/scripts/keyword-research-helper.sh +1815 -0
  100. package/.agent/scripts/langflow-helper.sh +544 -0
  101. package/.agent/scripts/linkedin-automation.py +241 -0
  102. package/.agent/scripts/linter-manager.sh +599 -0
  103. package/.agent/scripts/linters-local.sh +434 -0
  104. package/.agent/scripts/list-keys-helper.sh +488 -0
  105. package/.agent/scripts/local-browser-automation.py +339 -0
  106. package/.agent/scripts/localhost-helper.sh +744 -0
  107. package/.agent/scripts/loop-common.sh +806 -0
  108. package/.agent/scripts/mainwp-helper.sh +728 -0
  109. package/.agent/scripts/markdown-formatter.sh +338 -0
  110. package/.agent/scripts/markdown-lint-fix.sh +311 -0
  111. package/.agent/scripts/mass-fix-returns.sh +58 -0
  112. package/.agent/scripts/mcp-diagnose.sh +167 -0
  113. package/.agent/scripts/mcp-inspector-helper.sh +449 -0
  114. package/.agent/scripts/memory-helper.sh +650 -0
  115. package/.agent/scripts/monitor-code-review.sh +255 -0
  116. package/.agent/scripts/onboarding-helper.sh +706 -0
  117. package/.agent/scripts/opencode-github-setup-helper.sh +797 -0
  118. package/.agent/scripts/opencode-test-helper.sh +213 -0
  119. package/.agent/scripts/pagespeed-helper.sh +464 -0
  120. package/.agent/scripts/pandoc-helper.sh +362 -0
  121. package/.agent/scripts/postflight-check.sh +555 -0
  122. package/.agent/scripts/pre-commit-hook.sh +259 -0
  123. package/.agent/scripts/pre-edit-check.sh +169 -0
  124. package/.agent/scripts/qlty-cli.sh +356 -0
  125. package/.agent/scripts/quality-cli-manager.sh +525 -0
  126. package/.agent/scripts/quality-feedback-helper.sh +462 -0
  127. package/.agent/scripts/quality-fix.sh +263 -0
  128. package/.agent/scripts/quality-loop-helper.sh +1108 -0
  129. package/.agent/scripts/ralph-loop-helper.sh +836 -0
  130. package/.agent/scripts/ralph-upstream-check.sh +341 -0
  131. package/.agent/scripts/secretlint-helper.sh +847 -0
  132. package/.agent/scripts/servers-helper.sh +241 -0
  133. package/.agent/scripts/ses-helper.sh +619 -0
  134. package/.agent/scripts/session-review-helper.sh +404 -0
  135. package/.agent/scripts/setup-linters-wizard.sh +379 -0
  136. package/.agent/scripts/setup-local-api-keys.sh +330 -0
  137. package/.agent/scripts/setup-mcp-integrations.sh +472 -0
  138. package/.agent/scripts/shared-constants.sh +246 -0
  139. package/.agent/scripts/site-crawler-helper.sh +1487 -0
  140. package/.agent/scripts/snyk-helper.sh +940 -0
  141. package/.agent/scripts/sonarcloud-autofix.sh +193 -0
  142. package/.agent/scripts/sonarcloud-cli.sh +191 -0
  143. package/.agent/scripts/sonarscanner-cli.sh +455 -0
  144. package/.agent/scripts/spaceship-helper.sh +747 -0
  145. package/.agent/scripts/stagehand-helper.sh +321 -0
  146. package/.agent/scripts/stagehand-python-helper.sh +321 -0
  147. package/.agent/scripts/stagehand-python-setup.sh +441 -0
  148. package/.agent/scripts/stagehand-setup.sh +439 -0
  149. package/.agent/scripts/system-cleanup.sh +340 -0
  150. package/.agent/scripts/terminal-title-helper.sh +388 -0
  151. package/.agent/scripts/terminal-title-setup.sh +549 -0
  152. package/.agent/scripts/test-stagehand-both-integration.sh +317 -0
  153. package/.agent/scripts/test-stagehand-integration.sh +309 -0
  154. package/.agent/scripts/test-stagehand-python-integration.sh +341 -0
  155. package/.agent/scripts/todo-ready.sh +263 -0
  156. package/.agent/scripts/tool-version-check.sh +362 -0
  157. package/.agent/scripts/toon-helper.sh +469 -0
  158. package/.agent/scripts/twilio-helper.sh +917 -0
  159. package/.agent/scripts/updown-helper.sh +279 -0
  160. package/.agent/scripts/validate-mcp-integrations.sh +250 -0
  161. package/.agent/scripts/validate-version-consistency.sh +131 -0
  162. package/.agent/scripts/vaultwarden-helper.sh +597 -0
  163. package/.agent/scripts/vercel-cli-helper.sh +816 -0
  164. package/.agent/scripts/verify-mirrors.sh +169 -0
  165. package/.agent/scripts/version-manager.sh +831 -0
  166. package/.agent/scripts/webhosting-helper.sh +471 -0
  167. package/.agent/scripts/webhosting-verify.sh +238 -0
  168. package/.agent/scripts/wordpress-mcp-helper.sh +508 -0
  169. package/.agent/scripts/worktree-helper.sh +595 -0
  170. package/.agent/scripts/worktree-sessions.sh +577 -0
  171. package/.agent/seo/dataforseo.md +215 -0
  172. package/.agent/seo/domain-research.md +532 -0
  173. package/.agent/seo/eeat-score.md +659 -0
  174. package/.agent/seo/google-search-console.md +366 -0
  175. package/.agent/seo/gsc-sitemaps.md +282 -0
  176. package/.agent/seo/keyword-research.md +521 -0
  177. package/.agent/seo/serper.md +278 -0
  178. package/.agent/seo/site-crawler.md +387 -0
  179. package/.agent/seo.md +236 -0
  180. package/.agent/services/accounting/quickfile.md +159 -0
  181. package/.agent/services/communications/telfon.md +470 -0
  182. package/.agent/services/communications/twilio.md +569 -0
  183. package/.agent/services/crm/fluentcrm.md +449 -0
  184. package/.agent/services/email/ses.md +399 -0
  185. package/.agent/services/hosting/101domains.md +378 -0
  186. package/.agent/services/hosting/closte.md +177 -0
  187. package/.agent/services/hosting/cloudflare.md +251 -0
  188. package/.agent/services/hosting/cloudron.md +478 -0
  189. package/.agent/services/hosting/dns-providers.md +335 -0
  190. package/.agent/services/hosting/domain-purchasing.md +344 -0
  191. package/.agent/services/hosting/hetzner.md +327 -0
  192. package/.agent/services/hosting/hostinger.md +287 -0
  193. package/.agent/services/hosting/localhost.md +419 -0
  194. package/.agent/services/hosting/spaceship.md +353 -0
  195. package/.agent/services/hosting/webhosting.md +330 -0
  196. package/.agent/social-media.md +69 -0
  197. package/.agent/templates/plans-template.md +114 -0
  198. package/.agent/templates/prd-template.md +129 -0
  199. package/.agent/templates/tasks-template.md +108 -0
  200. package/.agent/templates/todo-template.md +89 -0
  201. package/.agent/tools/ai-assistants/agno.md +471 -0
  202. package/.agent/tools/ai-assistants/capsolver.md +326 -0
  203. package/.agent/tools/ai-assistants/configuration.md +221 -0
  204. package/.agent/tools/ai-assistants/overview.md +209 -0
  205. package/.agent/tools/ai-assistants/status.md +171 -0
  206. package/.agent/tools/ai-assistants/windsurf.md +193 -0
  207. package/.agent/tools/ai-orchestration/autogen.md +406 -0
  208. package/.agent/tools/ai-orchestration/crewai.md +445 -0
  209. package/.agent/tools/ai-orchestration/langflow.md +405 -0
  210. package/.agent/tools/ai-orchestration/openprose.md +487 -0
  211. package/.agent/tools/ai-orchestration/overview.md +362 -0
  212. package/.agent/tools/ai-orchestration/packaging.md +647 -0
  213. package/.agent/tools/browser/agent-browser.md +464 -0
  214. package/.agent/tools/browser/browser-automation.md +400 -0
  215. package/.agent/tools/browser/chrome-devtools.md +282 -0
  216. package/.agent/tools/browser/crawl4ai-integration.md +422 -0
  217. package/.agent/tools/browser/crawl4ai-resources.md +277 -0
  218. package/.agent/tools/browser/crawl4ai-usage.md +416 -0
  219. package/.agent/tools/browser/crawl4ai.md +585 -0
  220. package/.agent/tools/browser/dev-browser.md +341 -0
  221. package/.agent/tools/browser/pagespeed.md +260 -0
  222. package/.agent/tools/browser/playwright.md +266 -0
  223. package/.agent/tools/browser/playwriter.md +310 -0
  224. package/.agent/tools/browser/stagehand-examples.md +456 -0
  225. package/.agent/tools/browser/stagehand-python.md +483 -0
  226. package/.agent/tools/browser/stagehand.md +421 -0
  227. package/.agent/tools/build-agent/agent-review.md +224 -0
  228. package/.agent/tools/build-agent/build-agent.md +784 -0
  229. package/.agent/tools/build-mcp/aidevops-plugin.md +476 -0
  230. package/.agent/tools/build-mcp/api-wrapper.md +445 -0
  231. package/.agent/tools/build-mcp/build-mcp.md +240 -0
  232. package/.agent/tools/build-mcp/deployment.md +401 -0
  233. package/.agent/tools/build-mcp/server-patterns.md +632 -0
  234. package/.agent/tools/build-mcp/transports.md +366 -0
  235. package/.agent/tools/code-review/auditing.md +383 -0
  236. package/.agent/tools/code-review/automation.md +219 -0
  237. package/.agent/tools/code-review/best-practices.md +203 -0
  238. package/.agent/tools/code-review/codacy.md +151 -0
  239. package/.agent/tools/code-review/code-simplifier.md +174 -0
  240. package/.agent/tools/code-review/code-standards.md +309 -0
  241. package/.agent/tools/code-review/coderabbit.md +101 -0
  242. package/.agent/tools/code-review/management.md +155 -0
  243. package/.agent/tools/code-review/qlty.md +248 -0
  244. package/.agent/tools/code-review/secretlint.md +565 -0
  245. package/.agent/tools/code-review/setup.md +250 -0
  246. package/.agent/tools/code-review/snyk.md +563 -0
  247. package/.agent/tools/code-review/tools.md +230 -0
  248. package/.agent/tools/content/summarize.md +353 -0
  249. package/.agent/tools/context/augment-context-engine.md +468 -0
  250. package/.agent/tools/context/context-builder-agent.md +76 -0
  251. package/.agent/tools/context/context-builder.md +375 -0
  252. package/.agent/tools/context/context7.md +371 -0
  253. package/.agent/tools/context/dspy.md +302 -0
  254. package/.agent/tools/context/dspyground.md +374 -0
  255. package/.agent/tools/context/llm-tldr.md +219 -0
  256. package/.agent/tools/context/osgrep.md +488 -0
  257. package/.agent/tools/context/prompt-optimization.md +338 -0
  258. package/.agent/tools/context/toon.md +292 -0
  259. package/.agent/tools/conversion/pandoc.md +304 -0
  260. package/.agent/tools/credentials/api-key-management.md +154 -0
  261. package/.agent/tools/credentials/api-key-setup.md +224 -0
  262. package/.agent/tools/credentials/environment-variables.md +180 -0
  263. package/.agent/tools/credentials/vaultwarden.md +382 -0
  264. package/.agent/tools/data-extraction/outscraper.md +974 -0
  265. package/.agent/tools/deployment/coolify-cli.md +388 -0
  266. package/.agent/tools/deployment/coolify-setup.md +353 -0
  267. package/.agent/tools/deployment/coolify.md +345 -0
  268. package/.agent/tools/deployment/vercel.md +390 -0
  269. package/.agent/tools/git/authentication.md +132 -0
  270. package/.agent/tools/git/gitea-cli.md +193 -0
  271. package/.agent/tools/git/github-actions.md +207 -0
  272. package/.agent/tools/git/github-cli.md +223 -0
  273. package/.agent/tools/git/gitlab-cli.md +190 -0
  274. package/.agent/tools/git/opencode-github-security.md +350 -0
  275. package/.agent/tools/git/opencode-github.md +328 -0
  276. package/.agent/tools/git/opencode-gitlab.md +252 -0
  277. package/.agent/tools/git/security.md +196 -0
  278. package/.agent/tools/git.md +207 -0
  279. package/.agent/tools/opencode/oh-my-opencode.md +375 -0
  280. package/.agent/tools/opencode/opencode-anthropic-auth.md +446 -0
  281. package/.agent/tools/opencode/opencode.md +651 -0
  282. package/.agent/tools/social-media/bird.md +437 -0
  283. package/.agent/tools/task-management/beads.md +336 -0
  284. package/.agent/tools/terminal/terminal-title.md +251 -0
  285. package/.agent/tools/ui/shadcn.md +196 -0
  286. package/.agent/tools/ui/ui-skills.md +115 -0
  287. package/.agent/tools/wordpress/localwp.md +311 -0
  288. package/.agent/tools/wordpress/mainwp.md +391 -0
  289. package/.agent/tools/wordpress/scf.md +527 -0
  290. package/.agent/tools/wordpress/wp-admin.md +729 -0
  291. package/.agent/tools/wordpress/wp-dev.md +940 -0
  292. package/.agent/tools/wordpress/wp-preferred.md +398 -0
  293. package/.agent/tools/wordpress.md +95 -0
  294. package/.agent/workflows/branch/bugfix.md +63 -0
  295. package/.agent/workflows/branch/chore.md +95 -0
  296. package/.agent/workflows/branch/experiment.md +115 -0
  297. package/.agent/workflows/branch/feature.md +59 -0
  298. package/.agent/workflows/branch/hotfix.md +98 -0
  299. package/.agent/workflows/branch/refactor.md +92 -0
  300. package/.agent/workflows/branch/release.md +96 -0
  301. package/.agent/workflows/branch.md +347 -0
  302. package/.agent/workflows/bug-fixing.md +267 -0
  303. package/.agent/workflows/changelog.md +129 -0
  304. package/.agent/workflows/code-audit-remote.md +279 -0
  305. package/.agent/workflows/conversation-starter.md +69 -0
  306. package/.agent/workflows/error-feedback.md +578 -0
  307. package/.agent/workflows/feature-development.md +355 -0
  308. package/.agent/workflows/git-workflow.md +702 -0
  309. package/.agent/workflows/multi-repo-workspace.md +268 -0
  310. package/.agent/workflows/plans.md +709 -0
  311. package/.agent/workflows/postflight.md +604 -0
  312. package/.agent/workflows/pr.md +571 -0
  313. package/.agent/workflows/preflight.md +278 -0
  314. package/.agent/workflows/ralph-loop.md +773 -0
  315. package/.agent/workflows/release.md +498 -0
  316. package/.agent/workflows/session-manager.md +254 -0
  317. package/.agent/workflows/session-review.md +311 -0
  318. package/.agent/workflows/sql-migrations.md +631 -0
  319. package/.agent/workflows/version-bump.md +283 -0
  320. package/.agent/workflows/wiki-update.md +333 -0
  321. package/.agent/workflows/worktree.md +477 -0
  322. package/LICENSE +21 -0
  323. package/README.md +1446 -0
  324. package/VERSION +1 -0
  325. package/aidevops.sh +1746 -0
  326. package/bin/aidevops +21 -0
  327. package/package.json +75 -0
  328. package/scripts/npm-postinstall.js +60 -0
  329. package/setup.sh +2366 -0
@@ -0,0 +1,207 @@
1
+ ---
2
+ description: GitHub Actions CI/CD workflow setup and management
3
+ mode: subagent
4
+ tools:
5
+ read: true
6
+ write: true
7
+ edit: true
8
+ bash: true
9
+ glob: true
10
+ grep: true
11
+ webfetch: true
12
+ task: true
13
+ ---
14
+
15
+ # GitHub Actions Setup Guide
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **Workflow File**: `.github/workflows/code-quality.yml`
22
+ - **Triggers**: Push to main/develop, PRs to main
23
+ - **Jobs**: Framework validation, SonarCloud analysis, Codacy analysis
24
+ - **Required Secrets**: `SONAR_TOKEN` (configured), `CODACY_API_TOKEN` (needs setup)
25
+ - **Auto-Provided**: `GITHUB_TOKEN` by GitHub
26
+ - **SonarCloud Dashboard**: https://sonarcloud.io/project/overview?id=marcusquinn_aidevops
27
+ - **Codacy Dashboard**: https://app.codacy.com/gh/marcusquinn/aidevops
28
+ - **Actions URL**: https://github.com/marcusquinn/aidevops/actions
29
+ - **Add Secrets**: Repository Settings → Secrets and variables → Actions
30
+ <!-- AI-CONTEXT-END -->
31
+
32
+ ## Automated Code Quality Analysis
33
+
34
+ ### Current GitHub Actions Status
35
+
36
+ #### ✅ Configured and Working:
37
+
38
+ - **SonarCloud Analysis**: ✅ Runs on every push and PR
39
+ - **Framework Validation**: ✅ Validates repository structure
40
+ - **Security Scanning**: ✅ Checks for hardcoded API keys
41
+
42
+ #### Requires Setup:
43
+
44
+ - **Codacy Analysis**: Requires `CODACY_API_TOKEN` secret
45
+
46
+ ## Required GitHub Repository Secrets
47
+
48
+ ### **1. SONAR_TOKEN (Already Configured)**
49
+
50
+ - **Status**: ✅ **CONFIGURED**
51
+ - **Purpose**: SonarCloud analysis in GitHub Actions
52
+ - **Value**: Your SonarCloud API token
53
+ - **Source**: https://sonarcloud.io/account/security
54
+
55
+ ### **2. CODACY_API_TOKEN (Needs Setup)**
56
+
57
+ - **Status**: ❌ **NEEDS CONFIGURATION**
58
+ - **Purpose**: Codacy analysis in GitHub Actions
59
+ - **Value**: Your Codacy API token
60
+ - **Source**: https://app.codacy.com/account/api-tokens
61
+
62
+ ## Setup Instructions
63
+
64
+ ### **Add Missing GitHub Secret:**
65
+
66
+ 1. **Go to Repository Settings**:
67
+
68
+ ```text
69
+ https://github.com/marcusquinn/aidevops/settings/secrets/actions
70
+ ```
71
+
72
+ 2. **Click "New repository secret"**
73
+
74
+ 3. **Add Codacy Secret**:
75
+ - **Name**: `CODACY_API_TOKEN`
76
+ - **Value**: Your Codacy API token (get from secure local storage)
77
+
78
+ ## Workflow Triggers
79
+
80
+ ### **Automatic Execution:**
81
+
82
+ - **Push to main**: ✅ Triggers full analysis
83
+ - **Push to develop**: ✅ Triggers full analysis
84
+ - **Pull Request to main**: ✅ Triggers full analysis
85
+
86
+ ### **Analysis Jobs:**
87
+
88
+ 1. **Framework Validation**: Repository structure and security checks
89
+ 2. **SonarCloud Analysis**: Code quality, security, and maintainability
90
+ 3. **Codacy Analysis**: Code quality and complexity analysis
91
+
92
+ ## Viewing Results
93
+
94
+ ### **SonarCloud Dashboard:**
95
+
96
+ ```text
97
+ https://sonarcloud.io/project/overview?id=marcusquinn_aidevops
98
+ ```
99
+
100
+ ### **Codacy Dashboard:**
101
+
102
+ ```text
103
+ https://app.codacy.com/gh/marcusquinn/aidevops
104
+ ```
105
+
106
+ ### **GitHub Actions:**
107
+
108
+ ```text
109
+ https://github.com/marcusquinn/aidevops/actions
110
+ ```
111
+
112
+ ## Workflow Configuration
113
+
114
+ ### **File**: `.github/workflows/code-quality.yml`
115
+
116
+ #### **Key Features:**
117
+
118
+ - **Multi-job workflow** with framework validation and code analysis
119
+ - **Security scanning** to prevent API key exposure
120
+ - **Conditional Codacy analysis** (runs only if token is configured)
121
+ - **Comprehensive reporting** with links to analysis dashboards
122
+ - **Fail-fast security** checks to prevent credential exposure
123
+
124
+ #### **Environment Variables Used:**
125
+
126
+ - `GITHUB_TOKEN`: Automatic (provided by GitHub)
127
+ - `SONAR_TOKEN`: From repository secrets
128
+ - `CODACY_API_TOKEN`: From repository secrets (optional)
129
+
130
+ ## Security Features
131
+
132
+ ### **Automated Security Checks:**
133
+
134
+ - **API Key Detection**: Scans for hardcoded credentials
135
+ - **Repository Structure**: Validates framework integrity
136
+ - **Secret Management**: Uses GitHub Secrets for sensitive data
137
+
138
+ ### **Security Best Practices:**
139
+
140
+ - **No secrets in code**: All API keys use GitHub Secrets
141
+ - **Conditional execution**: Graceful handling of missing secrets
142
+ - **Fail-fast security**: Stops workflow if security issues detected
143
+
144
+ ## Workflow Patterns
145
+
146
+ ### Handling Concurrent Push Failures
147
+
148
+ When GitHub Actions workflows push to repositories, concurrent runs can cause push failures due to race conditions. Use these patterns for workflows that commit and push:
149
+
150
+ #### Full Retry Pattern (Recommended for External Repos)
151
+
152
+ ```yaml
153
+ # Retry loop to handle concurrent pushes (up to 3 attempts)
154
+ for i in 1 2 3; do
155
+ echo "Push attempt $i..."
156
+ git pull --rebase origin main || true
157
+ if git push; then
158
+ echo "Push succeeded on attempt $i"
159
+ exit 0
160
+ fi
161
+ echo "Push failed, waiting before retry..."
162
+ sleep $((i * 5)) # Exponential backoff: 5s, 10s, 15s
163
+ done
164
+
165
+ echo "All push attempts failed"
166
+ exit 1
167
+ ```
168
+
169
+ #### Simple Pattern (For Same-Repo Auto-Fixes)
170
+
171
+ ```yaml
172
+ # Pull with rebase to handle concurrent pushes, then push
173
+ git pull --rebase origin main || true
174
+ git push
175
+ ```
176
+
177
+ #### When to Use Each Pattern
178
+
179
+ | Scenario | Pattern | Rationale |
180
+ |----------|---------|-----------|
181
+ | Pushing to external repo | Full retry | Higher chance of conflicts |
182
+ | Auto-fix commits to same repo | Simple | Usually succeeds |
183
+ | Wiki sync | Full retry | Wiki can have manual edits |
184
+ | Release workflows | Simple | Should be serialized anyway |
185
+
186
+ #### Key Points
187
+
188
+ - Always `git pull --rebase` before pushing to incorporate remote changes
189
+ - Use `|| true` after pull to continue even if pull fails (empty repo, etc.)
190
+ - Exponential backoff (`sleep $((i * 5))`) reduces collision probability
191
+ - Exit with error after all retries fail to surface the issue
192
+
193
+ ## Next Steps
194
+
195
+ 1. **Add CODACY_API_TOKEN** to GitHub repository secrets
196
+ 2. **Push a commit** to trigger the workflow
197
+ 3. **Verify analysis results** in SonarCloud and Codacy dashboards
198
+ 4. **Monitor workflow runs** in GitHub Actions
199
+
200
+ ## Benefits
201
+
202
+ - **Automated Quality Gates**: Every commit analyzed for quality
203
+ - **Security Monitoring**: Prevents credential exposure
204
+ - **Multi-Platform Analysis**: SonarCloud + Codacy coverage
205
+ - **Professional Standards**: Industry-grade CI/CD pipeline
206
+
207
+ **Your repository now has comprehensive automated code quality analysis running on every commit!**
@@ -0,0 +1,223 @@
1
+ ---
2
+ description: GitHub CLI (gh) for repos, PRs, issues, and actions
3
+ mode: subagent
4
+ tools:
5
+ read: true
6
+ write: false
7
+ edit: false
8
+ bash: true
9
+ glob: true
10
+ grep: true
11
+ webfetch: true
12
+ task: true
13
+ ---
14
+
15
+ # GitHub CLI Guide
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **CLI Tool**: `gh` (GitHub CLI) - the official GitHub CLI
22
+ - **Install**: `brew install gh` (macOS) | `apt install gh` (Ubuntu)
23
+ - **Auth**: `gh auth login` (stores token in keyring)
24
+ - **Status**: `gh auth status`
25
+ - **Docs**: https://cli.github.com/manual
26
+
27
+ **Common Commands**:
28
+
29
+ ```bash
30
+ gh repo list # List your repos
31
+ gh repo create NAME # Create repo
32
+ gh issue list # List issues
33
+ gh issue create # Create issue
34
+ gh pr list # List PRs
35
+ gh pr create # Create PR
36
+ gh pr merge # Merge PR
37
+ gh release create TAG # Create release
38
+ gh release list # List releases
39
+ ```
40
+
41
+ **Multi-Account**: `gh auth login` supports multiple accounts via keyring
42
+ <!-- AI-CONTEXT-END -->
43
+
44
+ ## Overview
45
+
46
+ The `gh` CLI is the official GitHub command-line tool. It handles authentication securely via your system keyring and provides comprehensive access to GitHub features. **Use `gh` directly rather than wrapper scripts.**
47
+
48
+ ## Installation
49
+
50
+ ```bash
51
+ # macOS
52
+ brew install gh
53
+
54
+ # Ubuntu/Debian
55
+ sudo apt install gh
56
+
57
+ # Other platforms
58
+ # See: https://cli.github.com/manual/installation
59
+ ```
60
+
61
+ ## Authentication
62
+
63
+ ```bash
64
+ # Login (interactive - stores token in keyring)
65
+ gh auth login
66
+
67
+ # Check auth status
68
+ gh auth status
69
+
70
+ # Get current token (for scripts that need GITHUB_TOKEN)
71
+ gh auth token
72
+ ```
73
+
74
+ Authentication is stored securely in your system keyring. No need for `GITHUB_TOKEN` environment variable for normal `gh` operations.
75
+
76
+ ## Repository Management
77
+
78
+ ```bash
79
+ # List your repositories
80
+ gh repo list
81
+
82
+ # Create new repository
83
+ gh repo create my-repo --public --description "My project"
84
+
85
+ # Clone a repository
86
+ gh repo clone owner/repo
87
+
88
+ # View repository info
89
+ gh repo view owner/repo
90
+
91
+ # Fork a repository
92
+ gh repo fork owner/repo
93
+ ```
94
+
95
+ ## Issue Management
96
+
97
+ ```bash
98
+ # List issues
99
+ gh issue list
100
+ gh issue list --state open --label bug
101
+
102
+ # Create issue
103
+ gh issue create --title "Bug report" --body "Description"
104
+
105
+ # View issue
106
+ gh issue view 123
107
+
108
+ # Close issue
109
+ gh issue close 123
110
+ ```
111
+
112
+ ## Pull Request Management
113
+
114
+ ```bash
115
+ # List PRs
116
+ gh pr list
117
+ gh pr list --state open
118
+
119
+ # Create PR
120
+ gh pr create --title "Feature X" --body "Description"
121
+ gh pr create --fill # Auto-fill from commits
122
+
123
+ # View PR
124
+ gh pr view 123
125
+
126
+ # Merge PR
127
+ gh pr merge 123 --squash
128
+ gh pr merge 123 --merge
129
+ gh pr merge 123 --rebase
130
+ ```
131
+
132
+ ## Release Management
133
+
134
+ ```bash
135
+ # Create release with auto-generated notes
136
+ gh release create v1.2.3 --generate-notes
137
+
138
+ # Create release with custom notes
139
+ gh release create v1.2.3 --notes "Release notes here"
140
+
141
+ # Create draft release
142
+ gh release create v1.2.3 --draft --generate-notes
143
+
144
+ # List releases
145
+ gh release list
146
+
147
+ # View latest release
148
+ gh release view
149
+
150
+ # Download release assets
151
+ gh release download v1.2.3
152
+ ```
153
+
154
+ ## Workflow/Actions
155
+
156
+ ```bash
157
+ # List workflow runs
158
+ gh run list
159
+
160
+ # View run details
161
+ gh run view 123456
162
+
163
+ # Watch a running workflow
164
+ gh run watch
165
+
166
+ # Re-run failed jobs
167
+ gh run rerun 123456 --failed
168
+ ```
169
+
170
+ ## API Access
171
+
172
+ ```bash
173
+ # Make API calls directly
174
+ gh api repos/owner/repo
175
+ gh api repos/owner/repo/issues
176
+
177
+ # Create via API
178
+ gh api repos/owner/repo/issues -f title="Bug" -f body="Details"
179
+ ```
180
+
181
+ ## Multi-Account Support
182
+
183
+ The `gh` CLI supports multiple accounts:
184
+
185
+ ```bash
186
+ # Login to additional account
187
+ gh auth login
188
+
189
+ # Switch between accounts
190
+ gh auth switch
191
+
192
+ # List authenticated accounts
193
+ gh auth status
194
+ ```
195
+
196
+ ## Environment Variables
197
+
198
+ For scripts that need a token:
199
+
200
+ ```bash
201
+ # Get token from gh auth
202
+ export GITHUB_TOKEN=$(gh auth token)
203
+
204
+ # Or use GH_TOKEN (preferred by gh)
205
+ export GH_TOKEN=$(gh auth token)
206
+ ```
207
+
208
+ ## Troubleshooting
209
+
210
+ | Issue | Solution |
211
+ |-------|----------|
212
+ | "not logged in" | Run `gh auth login` |
213
+ | "token expired" | Run `gh auth refresh` |
214
+ | Wrong account | Run `gh auth switch` |
215
+ | Need token for script | Use `$(gh auth token)` |
216
+
217
+ ## Best Practices
218
+
219
+ 1. **Use `gh` directly** - No wrapper scripts needed
220
+ 2. **Use keyring auth** - More secure than env vars
221
+ 3. **Use `--generate-notes`** - Auto-generate release notes from commits/PRs
222
+ 4. **Use `gh api`** - For advanced GitHub API access
223
+ 5. **Use `gh pr create --fill`** - Auto-fill PR details from commits
@@ -0,0 +1,190 @@
1
+ ---
2
+ description: GitLab CLI (glab) for repos, MRs, issues, and pipelines
3
+ mode: subagent
4
+ tools:
5
+ read: true
6
+ write: false
7
+ edit: false
8
+ bash: true
9
+ glob: true
10
+ grep: true
11
+ webfetch: true
12
+ task: true
13
+ ---
14
+
15
+ # GitLab CLI Helper Documentation
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **CLI Tool**: `glab` (GitLab CLI)
22
+ - **Install**: `brew install glab` (macOS) | `apt install glab` (Ubuntu)
23
+ - **Auth**: `glab auth login` (GitLab.com) | `glab auth login --hostname gitlab.company.com` (self-hosted)
24
+ - **Config**: `configs/gitlab-cli-config.json`
25
+ - **Script**: `.agent/scripts/gitlab-cli-helper.sh`
26
+ - **Requires**: `jq` for JSON parsing
27
+
28
+ **Commands**: `list-projects|create-project|delete-project|list-issues|create-issue|close-issue|list-mrs|create-mr|merge-mr|list-branches|create-branch`
29
+
30
+ **Usage**: `./providers/gitlab-cli-helper.sh [command] [account] [args]`
31
+
32
+ **Multi-Instance**: Supports GitLab.com + self-hosted via instance_url in config
33
+ <!-- AI-CONTEXT-END -->
34
+
35
+ ## Overview
36
+
37
+ The GitLab CLI Helper provides a comprehensive interface for managing GitLab projects, issues, merge requests, and branches directly from the command line. It leverages the `glab` CLI tool to offer a seamless experience for developers working with GitLab.com and self-hosted instances.
38
+
39
+ ## Prerequisites
40
+
41
+ 1. **GitLab CLI (`glab`)**: Must be installed.
42
+ - **macOS**: `brew install glab`
43
+ - **Ubuntu/Debian**: `sudo apt install glab`
44
+ - **Other**: See [GitLab CLI Installation](https://glab.readthedocs.io/en/latest/installation/)
45
+ 2. **`jq`**: JSON processor (required for configuration parsing).
46
+ 3. **Authentication**: You must authenticate `glab` with your GitLab instance(s).
47
+
48
+ ## Configuration
49
+
50
+ The helper uses a JSON configuration file located at `configs/gitlab-cli-config.json`.
51
+
52
+ ### Setup
53
+
54
+ 1. Copy the template:
55
+
56
+ ```bash
57
+ cp configs/gitlab-cli-config.json.txt configs/gitlab-cli-config.json
58
+ ```
59
+
60
+ 2. Edit `configs/gitlab-cli-config.json` with your account details.
61
+
62
+ ### Multi-Account/Instance Support
63
+
64
+ The configuration supports multiple accounts and instances (e.g., `primary` for GitLab.com, `work` for self-hosted).
65
+
66
+ **1. Authenticate `glab`:**
67
+
68
+ ```bash
69
+ # For GitLab.com
70
+ glab auth login
71
+
72
+ # For Self-Hosted
73
+ glab auth login --hostname gitlab.company.com
74
+ ```
75
+
76
+ **2. Update `configs/gitlab-cli-config.json`:**
77
+
78
+ ```json
79
+ {
80
+ "accounts": {
81
+ "primary": {
82
+ "instance_url": "https://gitlab.com",
83
+ "owner": "your-username",
84
+ "default_visibility": "public"
85
+ },
86
+ "work": {
87
+ "instance_url": "https://gitlab.company.com",
88
+ "owner": "work-username",
89
+ "default_visibility": "private"
90
+ }
91
+ }
92
+ }
93
+ ```
94
+
95
+ ## Usage
96
+
97
+ Run the helper script:
98
+
99
+ ```bash
100
+ ./providers/gitlab-cli-helper.sh [command] [account] [arguments]
101
+ ```
102
+
103
+ ### Project Management
104
+
105
+ - **List Projects**:
106
+
107
+ ```bash
108
+ ./providers/gitlab-cli-helper.sh list-projects primary
109
+ ```
110
+
111
+ - **Create Project**:
112
+
113
+ ```bash
114
+ # Usage: create-project <account> <name> [desc] [visibility] [init]
115
+ ./providers/gitlab-cli-helper.sh create-project primary my-new-project "Description" private true
116
+ ```
117
+
118
+ - **Get Project Details**:
119
+
120
+ ```bash
121
+ ./providers/gitlab-cli-helper.sh get-project primary my-new-project
122
+ ```
123
+
124
+ - **Delete Project**:
125
+
126
+ ```bash
127
+ ./providers/gitlab-cli-helper.sh delete-project primary my-new-project
128
+ ```
129
+
130
+ ### Issue Management
131
+
132
+ - **List Issues**:
133
+
134
+ ```bash
135
+ ./providers/gitlab-cli-helper.sh list-issues primary my-project opened
136
+ ```
137
+
138
+ - **Create Issue**:
139
+
140
+ ```bash
141
+ ./providers/gitlab-cli-helper.sh create-issue primary my-project "Bug Title" "Issue description"
142
+ ```
143
+
144
+ - **Close Issue**:
145
+
146
+ ```bash
147
+ ./providers/gitlab-cli-helper.sh close-issue primary my-project 1
148
+ ```
149
+
150
+ ### Merge Request Management
151
+
152
+ - **List Merge Requests**:
153
+
154
+ ```bash
155
+ ./providers/gitlab-cli-helper.sh list-mrs primary my-project opened
156
+ ```
157
+
158
+ - **Create Merge Request**:
159
+
160
+ ```bash
161
+ # Usage: create-mr <account> <project> <title> <source> [target] [desc]
162
+ ./providers/gitlab-cli-helper.sh create-mr primary my-project "Feature X" feature-branch main "Description"
163
+ ```
164
+
165
+ - **Merge Merge Request**:
166
+
167
+ ```bash
168
+ # Usage: merge-mr <account> <project> <mr_number> [method]
169
+ ./providers/gitlab-cli-helper.sh merge-mr primary my-project 1 squash
170
+ ```
171
+
172
+ ### Branch Management
173
+
174
+ - **List Branches**:
175
+
176
+ ```bash
177
+ ./providers/gitlab-cli-helper.sh list-branches primary my-project
178
+ ```
179
+
180
+ - **Create Branch**:
181
+
182
+ ```bash
183
+ # Usage: create-branch <account> <project> <new_branch> [source_branch]
184
+ ./providers/gitlab-cli-helper.sh create-branch primary my-project feature-branch main
185
+ ```
186
+
187
+ ## Troubleshooting
188
+
189
+ - **"GitLab CLI is not authenticated"**: Run `glab auth status` to check your login status for the configured hostname.
190
+ - **"Instance URL not configured"**: Check `configs/gitlab-cli-config.json` and ensure the `instance_url` is correct for the account you are using.