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,252 @@
1
+ ---
2
+ description: OpenCode GitLab integration for AI-powered issue/MR automation
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
+ # OpenCode GitLab Integration
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **Trigger**: `@opencode` in any issue/MR comment
22
+ - **Runs on**: Your GitLab CI runners (secure)
23
+ - **Docs**: https://opencode.ai/docs/gitlab/
24
+
25
+ **What It Does**:
26
+
27
+ | Command | Result |
28
+ |---------|--------|
29
+ | `@opencode explain this` | AI analyzes issue/MR and replies |
30
+ | `@opencode fix this` | Creates branch, implements fix, opens MR |
31
+ | `@opencode review this MR` | Reviews code, suggests improvements |
32
+
33
+ **Requirements**:
34
+ - GitLab CI/CD pipeline configured
35
+ - CI/CD Variables: `ANTHROPIC_API_KEY`, `GITLAB_TOKEN_OPENCODE`, `GITLAB_HOST`
36
+ - Service account for git operations
37
+
38
+ <!-- AI-CONTEXT-END -->
39
+
40
+ ## Overview
41
+
42
+ OpenCode's GitLab integration enables AI-powered automation directly from GitLab issues and merge requests. When you comment `@opencode fix this` on an issue, OpenCode:
43
+
44
+ 1. Analyzes the issue context
45
+ 2. Creates a new branch
46
+ 3. Implements the fix
47
+ 4. Opens a merge request with the changes
48
+
49
+ All execution happens securely on YOUR GitLab CI runners.
50
+
51
+ ## Installation
52
+
53
+ ### Prerequisites
54
+
55
+ 1. GitLab repository with CI/CD enabled
56
+ 2. AI provider API key (Anthropic, OpenAI, etc.)
57
+ 3. GitLab access token for the service account
58
+ 4. `glab` CLI available in your CI image
59
+
60
+ ### Step 1: Create Service Account
61
+
62
+ Create a GitLab user or use a project access token for OpenCode operations.
63
+
64
+ Required scopes:
65
+ - `api` - Full API access
66
+ - `read_repository` - Read repository
67
+ - `write_repository` - Write repository
68
+
69
+ ### Step 2: Configure CI/CD Variables
70
+
71
+ Go to: Settings → CI/CD → Variables
72
+
73
+ Add these variables:
74
+
75
+ | Variable | Value | Protected | Masked |
76
+ |----------|-------|-----------|--------|
77
+ | `ANTHROPIC_API_KEY` | Your API key | Yes | Yes |
78
+ | `GITLAB_TOKEN_OPENCODE` | Service account token | Yes | Yes |
79
+ | `GITLAB_HOST` | `gitlab.com` or your instance | No | No |
80
+
81
+ ### Step 3: Create CI/CD Pipeline
82
+
83
+ Create `.gitlab-ci.yml` or add to existing:
84
+
85
+ ```yaml
86
+ stages:
87
+ - opencode
88
+
89
+ opencode:
90
+ stage: opencode
91
+ image: node:22-slim
92
+ rules:
93
+ # Trigger on issue/MR comments containing @opencode
94
+ - if: '$CI_PIPELINE_SOURCE == "trigger"'
95
+ when: always
96
+ before_script:
97
+ - npm install --global opencode-ai
98
+ - apt-get update && apt-get install -y git
99
+ # Install glab CLI
100
+ - |
101
+ curl -sL https://github.com/profclems/glab/releases/latest/download/glab_Linux_x86_64.tar.gz | tar xz
102
+ mv glab /usr/local/bin/
103
+ # Configure git
104
+ - git config --global user.email "opencode@gitlab.com"
105
+ - git config --global user.name "OpenCode"
106
+ # Setup OpenCode auth
107
+ - mkdir -p ~/.local/share/opencode
108
+ - |
109
+ cat > ~/.local/share/opencode/auth.json << EOF
110
+ { "anthropic": { "apiKey": "$ANTHROPIC_API_KEY" } }
111
+ EOF
112
+ script:
113
+ # Run OpenCode with the trigger context
114
+ - opencode run "$AI_FLOW_INPUT"
115
+ # Commit and push any changes
116
+ - |
117
+ if [ -n "$(git status --porcelain)" ]; then
118
+ git add -A
119
+ git commit -m "OpenCode changes"
120
+ git push origin HEAD:"$CI_WORKLOAD_REF"
121
+ fi
122
+ variables:
123
+ GIT_STRATEGY: clone
124
+ GIT_DEPTH: 1
125
+ ```
126
+
127
+ ### Step 4: Configure Webhook (Optional)
128
+
129
+ For automatic triggering on comments, configure a webhook:
130
+
131
+ 1. Go to: Settings → Webhooks
132
+ 2. URL: Your pipeline trigger URL
133
+ 3. Trigger: Note events (issues and MRs)
134
+
135
+ ## Usage
136
+
137
+ ### In Issues
138
+
139
+ Comment on any issue:
140
+
141
+ ```text
142
+ @opencode explain this issue
143
+ ```
144
+
145
+ OpenCode reads the issue and replies with an explanation.
146
+
147
+ ```text
148
+ @opencode fix this
149
+ ```
150
+
151
+ OpenCode creates a branch, implements a fix, and opens an MR.
152
+
153
+ ### In Merge Requests
154
+
155
+ Comment on an MR:
156
+
157
+ ```text
158
+ @opencode review this merge request
159
+ ```
160
+
161
+ OpenCode analyzes the changes and provides feedback.
162
+
163
+ ## Configuration
164
+
165
+ ### Using Different AI Providers
166
+
167
+ Update the auth.json creation in your pipeline:
168
+
169
+ ```yaml
170
+ # For OpenAI
171
+ - |
172
+ cat > ~/.local/share/opencode/auth.json << EOF
173
+ { "openai": { "apiKey": "$OPENAI_API_KEY" } }
174
+ EOF
175
+
176
+ # For multiple providers
177
+ - |
178
+ cat > ~/.local/share/opencode/auth.json << EOF
179
+ {
180
+ "anthropic": { "apiKey": "$ANTHROPIC_API_KEY" },
181
+ "openai": { "apiKey": "$OPENAI_API_KEY" }
182
+ }
183
+ EOF
184
+ ```
185
+
186
+ ### Custom Model
187
+
188
+ Specify model in the opencode run command:
189
+
190
+ ```yaml
191
+ script:
192
+ - opencode run --model anthropic/claude-sonnet-4-20250514 "$AI_FLOW_INPUT"
193
+ ```
194
+
195
+ ### Self-Hosted GitLab
196
+
197
+ Set `GITLAB_HOST` to your instance URL:
198
+
199
+ ```yaml
200
+ variables:
201
+ GITLAB_HOST: gitlab.company.com
202
+ ```
203
+
204
+ ## Security
205
+
206
+ - **Runs on YOUR runners**: Code never leaves your GitLab CI environment
207
+ - **Secrets in CI/CD Variables**: API keys stored securely
208
+ - **Service account isolation**: Dedicated account for OpenCode operations
209
+ - **Audit trail**: All pipeline runs visible in CI/CD → Pipelines
210
+
211
+ ## Troubleshooting
212
+
213
+ ### Pipeline Not Triggering
214
+
215
+ 1. Check webhook configuration
216
+ 2. Verify trigger rules in `.gitlab-ci.yml`
217
+ 3. Check CI/CD is enabled for the project
218
+
219
+ ### Authentication Errors
220
+
221
+ 1. Verify `GITLAB_TOKEN_OPENCODE` has correct scopes
222
+ 2. Check token hasn't expired
223
+ 3. Verify `GITLAB_HOST` is correct
224
+
225
+ ### OpenCode Errors
226
+
227
+ 1. Check `ANTHROPIC_API_KEY` is set correctly
228
+ 2. Verify auth.json is created properly
229
+ 3. Check pipeline logs for specific errors
230
+
231
+ ## Integration with aidevops
232
+
233
+ When using aidevops workflows:
234
+
235
+ 1. **Branch naming**: Configure OpenCode to use aidevops conventions
236
+ 2. **MR format**: Use custom prompts for aidevops-style MR descriptions
237
+ 3. **Quality checks**: OpenCode MRs trigger your existing CI pipelines
238
+
239
+ ## Comparison with GitHub Integration
240
+
241
+ | Feature | GitHub | GitLab |
242
+ |---------|--------|--------|
243
+ | Trigger command | `/oc` or `/opencode` | `@opencode` |
244
+ | Setup method | GitHub App + workflow | CI/CD pipeline |
245
+ | Line-specific reviews | Yes (Files tab) | Limited |
246
+ | Auto-setup | `opencode github install` | Manual |
247
+
248
+ ## Related
249
+
250
+ - **GitHub integration**: `git/opencode-github.md`
251
+ - **GitLab CLI**: `git/gitlab-cli.md`
252
+ - **Git workflow**: `workflows/git-workflow.md`
@@ -0,0 +1,196 @@
1
+ ---
2
+ description: Git security practices and secret scanning
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: false
12
+ task: true
13
+ ---
14
+
15
+ # Git Security Practices
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **Token storage**: `~/.config/aidevops/` (600 permissions)
22
+ - **Never commit**: API keys, tokens, passwords, secrets
23
+ - **Branch protection**: Enable for `main` branch
24
+ - **Signed commits**: Use GPG signing for verification
25
+ - **2FA**: Enable on all Git platforms
26
+
27
+ **Pre-commit check**:
28
+
29
+ ```bash
30
+ git diff --cached | grep -iE "(api_key|token|password|secret)" && echo "WARNING: Possible secret!"
31
+ ```
32
+
33
+ <!-- AI-CONTEXT-END -->
34
+
35
+ ## Authentication Security
36
+
37
+ ### Use CLI Authentication
38
+
39
+ ```bash
40
+ # Stores tokens in system keyring (secure)
41
+ gh auth login
42
+ glab auth login
43
+ tea login add
44
+ ```
45
+
46
+ Avoid environment variables when possible - CLI auth is more secure.
47
+
48
+ ### Token Management
49
+
50
+ ```bash
51
+ # Store tokens securely
52
+ mkdir -p ~/.config/aidevops
53
+ chmod 700 ~/.config/aidevops
54
+ echo "GITHUB_TOKEN=xxx" >> ~/.config/aidevops/mcp-env.sh
55
+ chmod 600 ~/.config/aidevops/mcp-env.sh
56
+ ```
57
+
58
+ ### Token Rotation
59
+
60
+ - Rotate tokens every 6-12 months
61
+ - Immediately rotate if exposed
62
+ - Use short-lived tokens for CI/CD
63
+
64
+ ## Repository Security
65
+
66
+ ### Branch Protection
67
+
68
+ Enable for `main` branch:
69
+
70
+ ```bash
71
+ # Via GitHub CLI
72
+ gh api repos/{owner}/{repo}/branches/main/protection -X PUT \
73
+ -f required_status_checks='{"strict":true,"contexts":[]}' \
74
+ -f enforce_admins=true \
75
+ -f required_pull_request_reviews='{"required_approving_review_count":1}'
76
+ ```
77
+
78
+ Or via web UI:
79
+ 1. Settings → Branches → Add rule
80
+ 2. Branch name pattern: `main`
81
+ 3. Enable:
82
+ - Require pull request reviews
83
+ - Require status checks
84
+ - Require signed commits (optional)
85
+
86
+ ### Required Reviews
87
+
88
+ - Require at least 1 approval before merge
89
+ - Dismiss stale reviews on new commits
90
+ - Require review from code owners
91
+
92
+ ### Status Checks
93
+
94
+ - Require CI to pass before merge
95
+ - Include security scanning
96
+ - Include linting/tests
97
+
98
+ ## Commit Security
99
+
100
+ ### Signed Commits
101
+
102
+ ```bash
103
+ # Generate GPG key
104
+ gpg --full-generate-key
105
+
106
+ # Get key ID
107
+ gpg --list-secret-keys --keyid-format=long
108
+
109
+ # Configure git
110
+ git config --global user.signingkey YOUR_KEY_ID
111
+ git config --global commit.gpgsign true
112
+
113
+ # Sign commits
114
+ git commit -S -m "Signed commit"
115
+ ```
116
+
117
+ ### Pre-commit Hooks
118
+
119
+ Prevent accidental secret commits:
120
+
121
+ ```bash
122
+ # .git/hooks/pre-commit
123
+ #!/bin/bash
124
+ if git diff --cached | grep -iE "(api_key|token|password|secret|private_key)" > /dev/null; then
125
+ echo "ERROR: Possible secret detected in commit!"
126
+ echo "Review your changes before committing."
127
+ exit 1
128
+ fi
129
+ ```
130
+
131
+ ## Secret Detection
132
+
133
+ ### Tools
134
+
135
+ - **secretlint**: `.agent/scripts/secretlint-helper.sh`
136
+ - **git-secrets**: AWS secret detection
137
+ - **trufflehog**: Historical secret scanning
138
+
139
+ ### Scanning
140
+
141
+ ```bash
142
+ # Scan for secrets
143
+ ./.agent/scripts/secretlint-helper.sh scan
144
+
145
+ # Scan git history
146
+ trufflehog git file://. --only-verified
147
+ ```
148
+
149
+ ## Access Control
150
+
151
+ ### Team Permissions
152
+
153
+ | Role | Permissions |
154
+ |------|-------------|
155
+ | Read | View code, issues |
156
+ | Triage | Manage issues, no code push |
157
+ | Write | Push to non-protected branches |
158
+ | Maintain | Push to protected, manage settings |
159
+ | Admin | Full access |
160
+
161
+ ### Principle of Least Privilege
162
+
163
+ - Grant minimum necessary permissions
164
+ - Review access quarterly
165
+ - Remove inactive collaborators
166
+ - Use teams for group permissions
167
+
168
+ ## Incident Response
169
+
170
+ ### If Token Exposed
171
+
172
+ 1. **Immediately revoke** the token
173
+ 2. Generate new token
174
+ 3. Update all systems using it
175
+ 4. Audit for unauthorized access
176
+ 5. Review how exposure happened
177
+
178
+ ### If Secrets Committed
179
+
180
+ 1. **Rotate the secret immediately**
181
+ 2. Remove from git history:
182
+
183
+ ```bash
184
+ git filter-branch --force --index-filter \
185
+ "git rm --cached --ignore-unmatch path/to/secret" \
186
+ --prune-empty --tag-name-filter cat -- --all
187
+ git push origin --force --all
188
+ ```
189
+
190
+ 3. Force-push to all remotes
191
+ 4. Notify affected parties
192
+
193
+ ## Related
194
+
195
+ - **Token setup**: `git/authentication.md`
196
+ - **CLI tools**: `tools/git.md`
@@ -0,0 +1,207 @@
1
+ ---
2
+ description: Git platform tools for GitHub, GitLab, and Gitea
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: false
12
+ task: true
13
+ ---
14
+
15
+ # Git Tools
16
+
17
+ <!-- AI-CONTEXT-START -->
18
+
19
+ ## Quick Reference
20
+
21
+ - **Platforms**: GitHub, GitLab, Gitea
22
+ - **CLIs**: `gh` (GitHub), `glab` (GitLab), `tea` (Gitea)
23
+ - **Branching**: See `workflows/branch.md`
24
+
25
+ | Platform | CLI | Install | Auth |
26
+ |----------|-----|---------|------|
27
+ | GitHub | `gh` | `brew install gh` | `gh auth login` |
28
+ | GitLab | `glab` | `brew install glab` | `glab auth login` |
29
+ | Gitea | `tea` | `brew install tea` | `tea login add` |
30
+
31
+ **Subagents**:
32
+ - `git/github-cli.md` - GitHub CLI details
33
+ - `git/gitlab-cli.md` - GitLab CLI details
34
+ - `git/gitea-cli.md` - Gitea CLI details
35
+ - `git/github-actions.md` - CI/CD workflows
36
+ - `git/authentication.md` - Token setup
37
+ - `git/security.md` - Security practices
38
+ - `git/opencode-github.md` - OpenCode GitHub App integration
39
+ - `git/opencode-gitlab.md` - OpenCode GitLab CI integration
40
+
41
+ <!-- AI-CONTEXT-END -->
42
+
43
+ ## Overview
44
+
45
+ Use official CLI tools for each Git platform. They handle authentication securely via system keyring and are actively maintained.
46
+
47
+ ## Platform CLIs
48
+
49
+ ### GitHub (`gh`)
50
+
51
+ The official GitHub CLI. See `git/github-cli.md` for details.
52
+
53
+ ```bash
54
+ brew install gh
55
+ gh auth login
56
+ gh repo list
57
+ gh pr create
58
+ gh release create v1.0.0 --generate-notes
59
+ ```
60
+
61
+ ### GitLab (`glab`)
62
+
63
+ The official GitLab CLI. See `git/gitlab-cli.md` for details.
64
+
65
+ ```bash
66
+ brew install glab
67
+ glab auth login
68
+ glab repo list
69
+ glab mr create
70
+ glab release create v1.0.0
71
+ ```
72
+
73
+ ### Gitea (`tea`)
74
+
75
+ The official Gitea CLI. See `git/gitea-cli.md` for details.
76
+
77
+ ```bash
78
+ brew install tea
79
+ tea login add
80
+ tea repos list
81
+ tea pulls create
82
+ tea releases create v1.0.0
83
+ ```
84
+
85
+ ## Multi-Platform Setup
86
+
87
+ For repositories mirrored across platforms:
88
+
89
+ ```bash
90
+ # Add multiple remotes
91
+ git remote add github git@github.com:user/repo.git
92
+ git remote add gitlab git@gitlab.com:user/repo.git
93
+
94
+ # Push to specific remote
95
+ git push github main
96
+ git push gitlab main
97
+
98
+ # Or create combined remote
99
+ git remote add all git@github.com:user/repo.git
100
+ git remote set-url --add --push all git@github.com:user/repo.git
101
+ git remote set-url --add --push all git@gitlab.com:user/repo.git
102
+ git push all main
103
+ ```
104
+
105
+ ## Authentication
106
+
107
+ **Recommended**: Use CLI authentication (stores in keyring)
108
+
109
+ ```bash
110
+ gh auth login # GitHub
111
+ glab auth login # GitLab
112
+ tea login add # Gitea
113
+ ```
114
+
115
+ **For scripts** that need tokens:
116
+
117
+ ```bash
118
+ export GITHUB_TOKEN=$(gh auth token)
119
+ export GITLAB_TOKEN=$(glab auth token)
120
+ ```
121
+
122
+ See `git/authentication.md` for detailed token setup.
123
+
124
+ ## Common Operations
125
+
126
+ ### Repository Management
127
+
128
+ ```bash
129
+ # Create
130
+ gh repo create my-repo --public
131
+ glab repo create my-repo --public
132
+
133
+ # Clone
134
+ gh repo clone owner/repo
135
+ glab repo clone owner/repo
136
+
137
+ # Fork
138
+ gh repo fork owner/repo
139
+ ```
140
+
141
+ ### Pull/Merge Requests
142
+
143
+ ```bash
144
+ # Create PR/MR
145
+ gh pr create --fill
146
+ glab mr create --fill
147
+
148
+ # List
149
+ gh pr list
150
+ glab mr list
151
+
152
+ # Merge
153
+ gh pr merge 123 --squash
154
+ glab mr merge 123 --squash
155
+ ```
156
+
157
+ ### Releases
158
+
159
+ ```bash
160
+ # Create with auto-generated notes
161
+ gh release create v1.0.0 --generate-notes
162
+ glab release create v1.0.0 --notes "Release notes"
163
+
164
+ # List
165
+ gh release list
166
+ glab release list
167
+ ```
168
+
169
+ ## OpenCode Integration
170
+
171
+ Enable AI-powered issue/PR automation directly from GitHub or GitLab.
172
+
173
+ ### GitHub
174
+
175
+ ```bash
176
+ # Check setup status
177
+ ~/.aidevops/agents/scripts/opencode-github-setup-helper.sh check
178
+
179
+ # Automated setup
180
+ opencode github install
181
+ ```
182
+
183
+ Then use `/oc` or `/opencode` in any issue/PR comment:
184
+ - `/oc explain this issue`
185
+ - `/oc fix this bug`
186
+ - `/opencode review this PR`
187
+
188
+ See `git/opencode-github.md` for full details.
189
+
190
+ ### GitLab
191
+
192
+ Add OpenCode to your `.gitlab-ci.yml` and use `@opencode` in comments:
193
+ - `@opencode explain this issue`
194
+ - `@opencode fix this`
195
+
196
+ See `git/opencode-gitlab.md` for full details.
197
+
198
+ ## Related
199
+
200
+ - **Branching workflows**: `workflows/branch.md`
201
+ - **Pull requests**: `workflows/pr.md`
202
+ - **Version management**: `workflows/version-bump.md`
203
+ - **Releases**: `workflows/release.md`
204
+ - **CI/CD**: `git/github-actions.md`
205
+ - **Security**: `git/security.md`
206
+ - **OpenCode GitHub**: `git/opencode-github.md`
207
+ - **OpenCode GitLab**: `git/opencode-gitlab.md`