@olegkoval/agent-skills 1.36.0 → 1.38.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.
Files changed (350) hide show
  1. package/.github/copilot-instructions.md +1 -0
  2. package/.github/prompts/ai-tools-setup.prompt.md +7 -7
  3. package/.github/prompts/apple-store-submit.prompt.md +7 -7
  4. package/.github/prompts/branch-cleanup.prompt.md +13 -13
  5. package/.github/prompts/ci-fix-loop.prompt.md +7 -7
  6. package/.github/prompts/cloudflare-block-countries.prompt.md +1 -1
  7. package/.github/prompts/coderabbitloop.prompt.md +15 -15
  8. package/.github/prompts/codexloop.prompt.md +20 -20
  9. package/.github/prompts/context-repo.prompt.md +169 -0
  10. package/.github/prompts/crash-course.prompt.md +11 -11
  11. package/.github/prompts/dependabot-triage.prompt.md +9 -9
  12. package/.github/prompts/fill-music-player.prompt.md +1 -1
  13. package/.github/prompts/gallery.prompt.md +16 -16
  14. package/.github/prompts/garmin-watchface.prompt.md +13 -13
  15. package/.github/prompts/geminiloop.prompt.md +15 -15
  16. package/.github/prompts/macos-menubar-app.prompt.md +4 -4
  17. package/.github/prompts/morning-routine.prompt.md +11 -11
  18. package/.github/prompts/music-to-plex.prompt.md +14 -14
  19. package/.github/prompts/mvp-oneshot.prompt.md +17 -17
  20. package/.github/prompts/obsidian-pr-sync.prompt.md +15 -15
  21. package/.github/prompts/obsidian-task-rollover.prompt.md +16 -16
  22. package/.github/prompts/pr-description-writer.prompt.md +4 -4
  23. package/.github/prompts/pr-finalize.prompt.md +20 -20
  24. package/.github/prompts/pr-to-green.prompt.md +10 -10
  25. package/.github/prompts/product-builder.prompt.md +5 -5
  26. package/.github/prompts/promptctl.prompt.md +6 -6
  27. package/.github/prompts/qodoloop.prompt.md +18 -18
  28. package/.github/prompts/release-day.prompt.md +21 -21
  29. package/.github/prompts/retro-analysis.prompt.md +23 -20
  30. package/.github/prompts/review-past-performance.prompt.md +25 -25
  31. package/.github/prompts/starter-rules.prompt.md +6 -6
  32. package/.github/prompts/store-listing-copy.prompt.md +13 -13
  33. package/.github/prompts/wikipedia-uk-editor.prompt.md +20 -20
  34. package/.kiro/steering/ai-tools-setup.md +7 -7
  35. package/.kiro/steering/apple-store-submit.md +7 -7
  36. package/.kiro/steering/cloudflare-block-countries.md +1 -1
  37. package/.kiro/steering/coderabbitloop.md +15 -15
  38. package/.kiro/steering/codexloop.md +20 -20
  39. package/.kiro/steering/context-repo.md +168 -0
  40. package/.kiro/steering/crash-course.md +11 -11
  41. package/.kiro/steering/fill-music-player.md +1 -1
  42. package/.kiro/steering/gallery.md +16 -16
  43. package/.kiro/steering/garmin-watchface.md +13 -13
  44. package/.kiro/steering/geminiloop.md +15 -15
  45. package/.kiro/steering/macos-menubar-app.md +4 -4
  46. package/.kiro/steering/music-to-plex.md +14 -14
  47. package/.kiro/steering/mvp-oneshot.md +17 -17
  48. package/.kiro/steering/obsidian-pr-sync.md +15 -15
  49. package/.kiro/steering/obsidian-task-rollover.md +16 -16
  50. package/.kiro/steering/pr-finalize.md +20 -20
  51. package/.kiro/steering/product-builder.md +5 -5
  52. package/.kiro/steering/promptctl.md +6 -6
  53. package/.kiro/steering/qodoloop.md +18 -18
  54. package/.kiro/steering/retro-analysis.md +23 -20
  55. package/.kiro/steering/review-past-performance.md +25 -25
  56. package/.kiro/steering/starter-rules.md +6 -6
  57. package/.kiro/steering/wikipedia-uk-editor.md +20 -20
  58. package/.windsurf/rules/ai-tools-setup.md +7 -7
  59. package/.windsurf/rules/apple-store-submit.md +7 -7
  60. package/.windsurf/rules/cloudflare-block-countries.md +1 -1
  61. package/.windsurf/rules/coderabbitloop.md +15 -15
  62. package/.windsurf/rules/codexloop.md +20 -20
  63. package/.windsurf/rules/context-repo.md +167 -0
  64. package/.windsurf/rules/crash-course.md +11 -11
  65. package/.windsurf/rules/fill-music-player.md +1 -1
  66. package/.windsurf/rules/gallery.md +16 -16
  67. package/.windsurf/rules/garmin-watchface.md +13 -13
  68. package/.windsurf/rules/geminiloop.md +15 -15
  69. package/.windsurf/rules/macos-menubar-app.md +4 -4
  70. package/.windsurf/rules/music-to-plex.md +14 -14
  71. package/.windsurf/rules/mvp-oneshot.md +17 -17
  72. package/.windsurf/rules/obsidian-pr-sync.md +15 -15
  73. package/.windsurf/rules/obsidian-task-rollover.md +16 -16
  74. package/.windsurf/rules/pr-finalize.md +20 -20
  75. package/.windsurf/rules/product-builder.md +5 -5
  76. package/.windsurf/rules/promptctl.md +6 -6
  77. package/.windsurf/rules/qodoloop.md +18 -18
  78. package/.windsurf/rules/retro-analysis.md +23 -20
  79. package/.windsurf/rules/review-past-performance.md +25 -25
  80. package/.windsurf/rules/starter-rules.md +6 -6
  81. package/.windsurf/rules/wikipedia-uk-editor.md +20 -20
  82. package/README.md +29 -5
  83. package/adapters/claude/olko-apple-kit/skills/apple-store-submit/SKILL.md +8 -8
  84. package/adapters/claude/olko-apple-kit/skills/macos-menubar-app/SKILL.md +4 -4
  85. package/adapters/claude/olko-creative/skills/fill-music-player/SKILL.md +1 -1
  86. package/adapters/claude/olko-creative/skills/gallery/SKILL.md +16 -16
  87. package/adapters/claude/olko-creative/skills/music-to-plex/SKILL.md +15 -15
  88. package/adapters/claude/olko-creative/skills/music-to-plex/references/fallback-audio-validation-and-nas-preflight.md +1 -1
  89. package/adapters/claude/olko-creative/skills/music-to-plex/references/music-note-blurb-order.md +1 -1
  90. package/adapters/claude/olko-creative/skills/music-to-plex/references/no-result-album-fallback.md +1 -1
  91. package/adapters/claude/olko-creative/skills/music-to-plex/references/plex-token-source.md +1 -1
  92. package/adapters/claude/olko-creative/skills/music-to-plex/references/torrent-stall-fallback.md +6 -6
  93. package/adapters/claude/olko-creative/skills/wikipedia-uk-editor/SKILL.md +20 -20
  94. package/adapters/claude/olko-creative/skills/wikipedia-uk-editor/references/newcomer-tasks.md +11 -11
  95. package/adapters/claude/olko-creative/skills/wikipedia-uk-editor/references/strategy.md +21 -21
  96. package/adapters/claude/olko-creative/skills/wikipedia-uk-editor/references/wikitext-uk.md +5 -5
  97. package/adapters/claude/olko-creative/skills/wikipedia-uk-editor/scripts/wiki.sh +1 -1
  98. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/SKILL.md +13 -13
  99. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/devices.md +7 -7
  100. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/display.md +10 -10
  101. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/layout.md +5 -5
  102. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/publishing.md +16 -16
  103. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/simulator.md +11 -11
  104. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/store.md +4 -4
  105. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/references/testing.md +5 -5
  106. package/adapters/claude/olko-garmin-kit/skills/garmin-watchface/scripts/ciq-mock +1 -1
  107. package/adapters/claude/olko-git-tools/skills/branch-cleanup/SKILL.md +13 -13
  108. package/adapters/claude/olko-github-pr/skills/ci-fix-loop/SKILL.md +8 -8
  109. package/adapters/claude/olko-github-pr/skills/coderabbitloop/SKILL.md +14 -14
  110. package/adapters/claude/olko-github-pr/skills/coderabbitloop/references/graphql-queries.md +8 -8
  111. package/adapters/claude/olko-github-pr/skills/codexloop/SKILL.md +19 -19
  112. package/adapters/claude/olko-github-pr/skills/dependabot-triage/SKILL.md +10 -10
  113. package/adapters/claude/olko-github-pr/skills/geminiloop/SKILL.md +14 -14
  114. package/adapters/claude/olko-github-pr/skills/lekker-review/SKILL.md +83 -17
  115. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/completeness-critic.md +3 -3
  116. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/conventions.md +16 -16
  117. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/implementation.md +9 -9
  118. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/quality.md +26 -8
  119. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/simplification.md +39 -10
  120. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/test-quality.md +17 -17
  121. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/triage-logic.md +6 -6
  122. package/adapters/claude/olko-github-pr/skills/lekker-review/references/agents/triage-quality.md +10 -10
  123. package/adapters/claude/olko-github-pr/skills/lekker-review/references/context-gathering.md +18 -18
  124. package/adapters/claude/olko-github-pr/skills/lekker-review/references/fix-mode.md +1 -1
  125. package/adapters/claude/olko-github-pr/skills/lekker-review/references/github-post.md +10 -10
  126. package/adapters/claude/olko-github-pr/skills/lekker-review/references/house-rules.md +11 -11
  127. package/adapters/claude/olko-github-pr/skills/lekker-review/references/output-format.md +73 -43
  128. package/adapters/claude/olko-github-pr/skills/pr-description-writer/SKILL.md +5 -5
  129. package/adapters/claude/olko-github-pr/skills/pr-finalize/SKILL.md +20 -20
  130. package/adapters/claude/olko-github-pr/skills/pr-to-green/SKILL.md +11 -11
  131. package/adapters/claude/olko-github-pr/skills/qodoloop/SKILL.md +17 -17
  132. package/adapters/claude/olko-github-pr/skills/qodoloop/references/graphql-queries.md +13 -13
  133. package/adapters/claude/olko-obsidian/skills/morning-routine/SKILL.md +11 -11
  134. package/adapters/claude/olko-obsidian/skills/obsidian-pr-sync/SKILL.md +15 -15
  135. package/adapters/claude/olko-obsidian/skills/obsidian-task-rollover/SKILL.md +17 -17
  136. package/adapters/claude/olko-product/skills/mvp-oneshot/SKILL.md +17 -17
  137. package/adapters/claude/olko-product/skills/product-builder/SKILL.md +5 -5
  138. package/adapters/claude/olko-product/skills/starter-rules/SKILL.md +6 -6
  139. package/adapters/claude/olko-reflection/skills/crash-course/SKILL.md +11 -11
  140. package/adapters/claude/olko-reflection/skills/retro-analysis/SKILL.md +23 -20
  141. package/adapters/claude/olko-reflection/skills/review-past-performance/SKILL.md +25 -25
  142. package/adapters/claude/olko-release/skills/release-day/SKILL.md +21 -21
  143. package/adapters/claude/olko-release/skills/store-listing-copy/SKILL.md +14 -14
  144. package/adapters/claude/olko-skill-meta/skills/ai-tools-setup/SKILL.md +8 -8
  145. package/adapters/claude/olko-skill-meta/skills/context-repo/SKILL.md +180 -0
  146. package/adapters/claude/olko-skill-meta/skills/promptctl/SKILL.md +6 -6
  147. package/adapters/claude/olko-skill-meta/skills/relay/SKILL.md +11 -11
  148. package/adapters/claude/olko-skill-meta/skills/shared-knowledge-artifact/SKILL.md +19 -10
  149. package/adapters/claude/olko-skill-meta/skills/shared-knowledge-artifact/references/prompt.txt +31 -5
  150. package/adapters/claude/olko-skill-meta/skills/skill-budget-audit/SKILL.md +2 -2
  151. package/adapters/claude/olko-web-ops/skills/cloudflare-block-countries/SKILL.md +1 -1
  152. package/adapters/codex/olko-skill-meta/README.md +1 -0
  153. package/adapters/cursor/olko-apple-kit/skills/apple-store-submit/SKILL.md +8 -8
  154. package/adapters/cursor/olko-apple-kit/skills/macos-menubar-app/SKILL.md +4 -4
  155. package/adapters/cursor/olko-creative/skills/fill-music-player/SKILL.md +1 -1
  156. package/adapters/cursor/olko-creative/skills/gallery/SKILL.md +16 -16
  157. package/adapters/cursor/olko-creative/skills/music-to-plex/SKILL.md +15 -15
  158. package/adapters/cursor/olko-creative/skills/music-to-plex/references/fallback-audio-validation-and-nas-preflight.md +1 -1
  159. package/adapters/cursor/olko-creative/skills/music-to-plex/references/music-note-blurb-order.md +1 -1
  160. package/adapters/cursor/olko-creative/skills/music-to-plex/references/no-result-album-fallback.md +1 -1
  161. package/adapters/cursor/olko-creative/skills/music-to-plex/references/plex-token-source.md +1 -1
  162. package/adapters/cursor/olko-creative/skills/music-to-plex/references/torrent-stall-fallback.md +6 -6
  163. package/adapters/cursor/olko-creative/skills/wikipedia-uk-editor/SKILL.md +20 -20
  164. package/adapters/cursor/olko-creative/skills/wikipedia-uk-editor/references/newcomer-tasks.md +11 -11
  165. package/adapters/cursor/olko-creative/skills/wikipedia-uk-editor/references/strategy.md +21 -21
  166. package/adapters/cursor/olko-creative/skills/wikipedia-uk-editor/references/wikitext-uk.md +5 -5
  167. package/adapters/cursor/olko-creative/skills/wikipedia-uk-editor/scripts/wiki.sh +1 -1
  168. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/SKILL.md +13 -13
  169. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/devices.md +7 -7
  170. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/display.md +10 -10
  171. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/layout.md +5 -5
  172. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/publishing.md +16 -16
  173. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/simulator.md +11 -11
  174. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/store.md +4 -4
  175. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/references/testing.md +5 -5
  176. package/adapters/cursor/olko-garmin-kit/skills/garmin-watchface/scripts/ciq-mock +1 -1
  177. package/adapters/cursor/olko-git-tools/skills/branch-cleanup/SKILL.md +13 -13
  178. package/adapters/cursor/olko-github-pr/skills/ci-fix-loop/SKILL.md +8 -8
  179. package/adapters/cursor/olko-github-pr/skills/coderabbitloop/SKILL.md +14 -14
  180. package/adapters/cursor/olko-github-pr/skills/coderabbitloop/references/graphql-queries.md +8 -8
  181. package/adapters/cursor/olko-github-pr/skills/codexloop/SKILL.md +19 -19
  182. package/adapters/cursor/olko-github-pr/skills/dependabot-triage/SKILL.md +10 -10
  183. package/adapters/cursor/olko-github-pr/skills/geminiloop/SKILL.md +14 -14
  184. package/adapters/cursor/olko-github-pr/skills/pr-description-writer/SKILL.md +5 -5
  185. package/adapters/cursor/olko-github-pr/skills/pr-finalize/SKILL.md +20 -20
  186. package/adapters/cursor/olko-github-pr/skills/pr-to-green/SKILL.md +11 -11
  187. package/adapters/cursor/olko-github-pr/skills/qodoloop/SKILL.md +17 -17
  188. package/adapters/cursor/olko-github-pr/skills/qodoloop/references/graphql-queries.md +13 -13
  189. package/adapters/cursor/olko-obsidian/skills/morning-routine/SKILL.md +11 -11
  190. package/adapters/cursor/olko-obsidian/skills/obsidian-pr-sync/SKILL.md +15 -15
  191. package/adapters/cursor/olko-obsidian/skills/obsidian-task-rollover/SKILL.md +17 -17
  192. package/adapters/cursor/olko-product/skills/mvp-oneshot/SKILL.md +17 -17
  193. package/adapters/cursor/olko-product/skills/product-builder/SKILL.md +5 -5
  194. package/adapters/cursor/olko-product/skills/starter-rules/SKILL.md +6 -6
  195. package/adapters/cursor/olko-reflection/skills/crash-course/SKILL.md +11 -11
  196. package/adapters/cursor/olko-reflection/skills/retro-analysis/SKILL.md +23 -20
  197. package/adapters/cursor/olko-reflection/skills/review-past-performance/SKILL.md +25 -25
  198. package/adapters/cursor/olko-release/skills/release-day/SKILL.md +21 -21
  199. package/adapters/cursor/olko-release/skills/store-listing-copy/SKILL.md +14 -14
  200. package/adapters/cursor/olko-skill-meta/skills/ai-tools-setup/SKILL.md +8 -8
  201. package/adapters/cursor/olko-skill-meta/skills/context-repo/SKILL.md +180 -0
  202. package/adapters/cursor/olko-skill-meta/skills/promptctl/SKILL.md +6 -6
  203. package/adapters/cursor/olko-web-ops/skills/cloudflare-block-countries/SKILL.md +1 -1
  204. package/adapters/grok/olko-apple-kit/skills/apple-store-submit/SKILL.md +8 -8
  205. package/adapters/grok/olko-apple-kit/skills/macos-menubar-app/SKILL.md +4 -4
  206. package/adapters/grok/olko-creative/skills/fill-music-player/SKILL.md +1 -1
  207. package/adapters/grok/olko-creative/skills/gallery/SKILL.md +16 -16
  208. package/adapters/grok/olko-creative/skills/music-to-plex/SKILL.md +15 -15
  209. package/adapters/grok/olko-creative/skills/music-to-plex/references/fallback-audio-validation-and-nas-preflight.md +1 -1
  210. package/adapters/grok/olko-creative/skills/music-to-plex/references/music-note-blurb-order.md +1 -1
  211. package/adapters/grok/olko-creative/skills/music-to-plex/references/no-result-album-fallback.md +1 -1
  212. package/adapters/grok/olko-creative/skills/music-to-plex/references/plex-token-source.md +1 -1
  213. package/adapters/grok/olko-creative/skills/music-to-plex/references/torrent-stall-fallback.md +6 -6
  214. package/adapters/grok/olko-creative/skills/wikipedia-uk-editor/SKILL.md +20 -20
  215. package/adapters/grok/olko-creative/skills/wikipedia-uk-editor/references/newcomer-tasks.md +11 -11
  216. package/adapters/grok/olko-creative/skills/wikipedia-uk-editor/references/strategy.md +21 -21
  217. package/adapters/grok/olko-creative/skills/wikipedia-uk-editor/references/wikitext-uk.md +5 -5
  218. package/adapters/grok/olko-creative/skills/wikipedia-uk-editor/scripts/wiki.sh +1 -1
  219. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/SKILL.md +13 -13
  220. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/devices.md +7 -7
  221. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/display.md +10 -10
  222. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/layout.md +5 -5
  223. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/publishing.md +16 -16
  224. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/simulator.md +11 -11
  225. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/store.md +4 -4
  226. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/references/testing.md +5 -5
  227. package/adapters/grok/olko-garmin-kit/skills/garmin-watchface/scripts/ciq-mock +1 -1
  228. package/adapters/grok/olko-git-tools/skills/branch-cleanup/SKILL.md +13 -13
  229. package/adapters/grok/olko-github-pr/skills/ci-fix-loop/SKILL.md +8 -8
  230. package/adapters/grok/olko-github-pr/skills/coderabbitloop/SKILL.md +14 -14
  231. package/adapters/grok/olko-github-pr/skills/coderabbitloop/references/graphql-queries.md +8 -8
  232. package/adapters/grok/olko-github-pr/skills/codexloop/SKILL.md +19 -19
  233. package/adapters/grok/olko-github-pr/skills/dependabot-triage/SKILL.md +10 -10
  234. package/adapters/grok/olko-github-pr/skills/geminiloop/SKILL.md +14 -14
  235. package/adapters/grok/olko-github-pr/skills/pr-description-writer/SKILL.md +5 -5
  236. package/adapters/grok/olko-github-pr/skills/pr-finalize/SKILL.md +20 -20
  237. package/adapters/grok/olko-github-pr/skills/pr-to-green/SKILL.md +11 -11
  238. package/adapters/grok/olko-github-pr/skills/qodoloop/SKILL.md +17 -17
  239. package/adapters/grok/olko-github-pr/skills/qodoloop/references/graphql-queries.md +13 -13
  240. package/adapters/grok/olko-obsidian/skills/morning-routine/SKILL.md +11 -11
  241. package/adapters/grok/olko-obsidian/skills/obsidian-pr-sync/SKILL.md +15 -15
  242. package/adapters/grok/olko-obsidian/skills/obsidian-task-rollover/SKILL.md +17 -17
  243. package/adapters/grok/olko-product/skills/mvp-oneshot/SKILL.md +17 -17
  244. package/adapters/grok/olko-product/skills/product-builder/SKILL.md +5 -5
  245. package/adapters/grok/olko-product/skills/starter-rules/SKILL.md +6 -6
  246. package/adapters/grok/olko-reflection/skills/crash-course/SKILL.md +11 -11
  247. package/adapters/grok/olko-reflection/skills/retro-analysis/SKILL.md +23 -20
  248. package/adapters/grok/olko-reflection/skills/review-past-performance/SKILL.md +25 -25
  249. package/adapters/grok/olko-release/skills/release-day/SKILL.md +21 -21
  250. package/adapters/grok/olko-release/skills/store-listing-copy/SKILL.md +14 -14
  251. package/adapters/grok/olko-skill-meta/skills/ai-tools-setup/SKILL.md +8 -8
  252. package/adapters/grok/olko-skill-meta/skills/context-repo/SKILL.md +180 -0
  253. package/adapters/grok/olko-skill-meta/skills/promptctl/SKILL.md +6 -6
  254. package/adapters/grok/olko-skill-meta/skills/relay/SKILL.md +11 -11
  255. package/adapters/grok/olko-skill-meta/skills/skill-budget-audit/SKILL.md +2 -2
  256. package/adapters/grok/olko-web-ops/skills/cloudflare-block-countries/SKILL.md +1 -1
  257. package/catalog/skills.json +31 -8
  258. package/docs/agent-context-store.md +122 -0
  259. package/docs/skill-anatomy.md +7 -7
  260. package/package.json +1 -1
  261. package/plugins/olko-apple-kit/.claude-plugin/plugin.json +1 -1
  262. package/plugins/olko-apple-kit/skills/apple-store-submit/SKILL.md +8 -8
  263. package/plugins/olko-apple-kit/skills/macos-menubar-app/SKILL.md +4 -4
  264. package/plugins/olko-creative/.claude-plugin/plugin.json +1 -1
  265. package/plugins/olko-creative/skills/fill-music-player/SKILL.md +1 -1
  266. package/plugins/olko-creative/skills/gallery/SKILL.md +16 -16
  267. package/plugins/olko-creative/skills/music-to-plex/SKILL.md +15 -15
  268. package/plugins/olko-creative/skills/music-to-plex/references/fallback-audio-validation-and-nas-preflight.md +1 -1
  269. package/plugins/olko-creative/skills/music-to-plex/references/music-note-blurb-order.md +1 -1
  270. package/plugins/olko-creative/skills/music-to-plex/references/no-result-album-fallback.md +1 -1
  271. package/plugins/olko-creative/skills/music-to-plex/references/plex-token-source.md +1 -1
  272. package/plugins/olko-creative/skills/music-to-plex/references/torrent-stall-fallback.md +6 -6
  273. package/plugins/olko-creative/skills/wikipedia-uk-editor/SKILL.md +20 -20
  274. package/plugins/olko-creative/skills/wikipedia-uk-editor/references/newcomer-tasks.md +11 -11
  275. package/plugins/olko-creative/skills/wikipedia-uk-editor/references/strategy.md +21 -21
  276. package/plugins/olko-creative/skills/wikipedia-uk-editor/references/wikitext-uk.md +5 -5
  277. package/plugins/olko-creative/skills/wikipedia-uk-editor/scripts/wiki.sh +1 -1
  278. package/plugins/olko-garmin-kit/.claude-plugin/plugin.json +1 -1
  279. package/plugins/olko-garmin-kit/skills/garmin-watchface/SKILL.md +13 -13
  280. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/devices.md +7 -7
  281. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/display.md +10 -10
  282. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/layout.md +5 -5
  283. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/publishing.md +16 -16
  284. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/simulator.md +11 -11
  285. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/store.md +4 -4
  286. package/plugins/olko-garmin-kit/skills/garmin-watchface/references/testing.md +5 -5
  287. package/plugins/olko-garmin-kit/skills/garmin-watchface/scripts/ciq-mock +1 -1
  288. package/plugins/olko-git-tools/.claude-plugin/plugin.json +1 -1
  289. package/plugins/olko-git-tools/skills/branch-cleanup/SKILL.md +13 -13
  290. package/plugins/olko-github-pr/.claude-plugin/plugin.json +1 -1
  291. package/plugins/olko-github-pr/skills/ci-fix-loop/SKILL.md +8 -8
  292. package/plugins/olko-github-pr/skills/coderabbitloop/SKILL.md +14 -14
  293. package/plugins/olko-github-pr/skills/coderabbitloop/references/graphql-queries.md +8 -8
  294. package/plugins/olko-github-pr/skills/codexloop/SKILL.md +19 -19
  295. package/plugins/olko-github-pr/skills/dependabot-triage/SKILL.md +10 -10
  296. package/plugins/olko-github-pr/skills/geminiloop/SKILL.md +14 -14
  297. package/plugins/olko-github-pr/skills/lekker-review/README.md +60 -0
  298. package/plugins/olko-github-pr/skills/lekker-review/SKILL.md +83 -17
  299. package/plugins/olko-github-pr/skills/lekker-review/assets/poster-overview.html +204 -0
  300. package/plugins/olko-github-pr/skills/lekker-review/assets/poster-overview.png +0 -0
  301. package/plugins/olko-github-pr/skills/lekker-review/assets/poster-proof.html +199 -0
  302. package/plugins/olko-github-pr/skills/lekker-review/assets/poster-proof.png +0 -0
  303. package/plugins/olko-github-pr/skills/lekker-review/references/agents/completeness-critic.md +3 -3
  304. package/plugins/olko-github-pr/skills/lekker-review/references/agents/conventions.md +16 -16
  305. package/plugins/olko-github-pr/skills/lekker-review/references/agents/implementation.md +9 -9
  306. package/plugins/olko-github-pr/skills/lekker-review/references/agents/quality.md +26 -8
  307. package/plugins/olko-github-pr/skills/lekker-review/references/agents/simplification.md +39 -10
  308. package/plugins/olko-github-pr/skills/lekker-review/references/agents/test-quality.md +17 -17
  309. package/plugins/olko-github-pr/skills/lekker-review/references/agents/triage-logic.md +6 -6
  310. package/plugins/olko-github-pr/skills/lekker-review/references/agents/triage-quality.md +10 -10
  311. package/plugins/olko-github-pr/skills/lekker-review/references/context-gathering.md +18 -18
  312. package/plugins/olko-github-pr/skills/lekker-review/references/fix-mode.md +1 -1
  313. package/plugins/olko-github-pr/skills/lekker-review/references/github-post.md +10 -10
  314. package/plugins/olko-github-pr/skills/lekker-review/references/house-rules.md +11 -11
  315. package/plugins/olko-github-pr/skills/lekker-review/references/output-format.md +73 -43
  316. package/plugins/olko-github-pr/skills/lekker-review/workflow.js +60 -9
  317. package/plugins/olko-github-pr/skills/pr-description-writer/SKILL.md +5 -5
  318. package/plugins/olko-github-pr/skills/pr-finalize/SKILL.md +20 -20
  319. package/plugins/olko-github-pr/skills/pr-to-green/SKILL.md +11 -11
  320. package/plugins/olko-github-pr/skills/qodoloop/SKILL.md +17 -17
  321. package/plugins/olko-github-pr/skills/qodoloop/references/graphql-queries.md +13 -13
  322. package/plugins/olko-obsidian/.claude-plugin/plugin.json +1 -1
  323. package/plugins/olko-obsidian/skills/morning-routine/SKILL.md +11 -11
  324. package/plugins/olko-obsidian/skills/obsidian-pr-sync/SKILL.md +15 -15
  325. package/plugins/olko-obsidian/skills/obsidian-task-rollover/SKILL.md +17 -17
  326. package/plugins/olko-product/.claude-plugin/plugin.json +1 -1
  327. package/plugins/olko-product/skills/mvp-oneshot/SKILL.md +17 -17
  328. package/plugins/olko-product/skills/product-builder/SKILL.md +5 -5
  329. package/plugins/olko-product/skills/starter-rules/SKILL.md +6 -6
  330. package/plugins/olko-reflection/.claude-plugin/plugin.json +1 -1
  331. package/plugins/olko-reflection/skills/crash-course/SKILL.md +11 -11
  332. package/plugins/olko-reflection/skills/retro-analysis/SKILL.md +23 -20
  333. package/plugins/olko-reflection/skills/review-past-performance/SKILL.md +25 -25
  334. package/plugins/olko-release/.claude-plugin/plugin.json +1 -1
  335. package/plugins/olko-release/skills/release-day/SKILL.md +21 -21
  336. package/plugins/olko-release/skills/store-listing-copy/SKILL.md +14 -14
  337. package/plugins/olko-skill-meta/.claude-plugin/plugin.json +1 -1
  338. package/plugins/olko-skill-meta/skills/ai-tools-setup/SKILL.md +8 -8
  339. package/plugins/olko-skill-meta/skills/context-repo/SKILL.md +179 -0
  340. package/plugins/olko-skill-meta/skills/promptctl/SKILL.md +6 -6
  341. package/plugins/olko-skill-meta/skills/relay/SKILL.md +11 -11
  342. package/plugins/olko-skill-meta/skills/shared-knowledge-artifact/SKILL.md +19 -10
  343. package/plugins/olko-skill-meta/skills/shared-knowledge-artifact/references/prompt.txt +31 -5
  344. package/plugins/olko-skill-meta/skills/skill-budget-audit/SKILL.md +2 -2
  345. package/plugins/olko-web-ops/.claude-plugin/plugin.json +1 -1
  346. package/plugins/olko-web-ops/skills/cloudflare-block-countries/SKILL.md +1 -1
  347. package/scripts/lib/catalog.mjs +1 -1
  348. package/site/assets/paperbag.css +1 -1
  349. package/site/assets/paperbag.js +1 -1
  350. package/site/build.mjs +5 -5
@@ -33,6 +33,7 @@ Available reusable prompt files:
33
33
  - mvp-oneshot: .github/prompts/mvp-oneshot.prompt.md
34
34
  - starter-rules: .github/prompts/starter-rules.prompt.md
35
35
  - viral-launch: .github/prompts/viral-launch.prompt.md
36
+ - context-repo: .github/prompts/context-repo.prompt.md
36
37
  - add-to-my-skills: .github/prompts/add-to-my-skills.prompt.md
37
38
  - promptctl: .github/prompts/promptctl.prompt.md
38
39
  - ai-tools-setup: .github/prompts/ai-tools-setup.prompt.md
@@ -6,7 +6,7 @@ description: "Set up, repair, and report on the RTK+ICM+Vox AI development toolk
6
6
 
7
7
  Use the olko:ai-tools-setup skill.
8
8
 
9
- # AI Tools Setup RTK + ICM + Vox
9
+ # AI Tools Setup: RTK + ICM + Vox
10
10
 
11
11
  Install, repair, and measure the RTK+ICM+Vox toolkit for Claude Code.
12
12
 
@@ -15,7 +15,7 @@ Install, repair, and measure the RTK+ICM+Vox toolkit for Claude Code.
15
15
  | Mode | When to use |
16
16
  |------|-------------|
17
17
  | **Setup** | First install on a new machine |
18
- | **Repair** | Something broke hooks missing, MCP not loading |
18
+ | **Repair** | Something broke: hooks missing, MCP not loading |
19
19
  | **Digest** | Weekly check: token savings, memory health, voice stats |
20
20
 
21
21
  ## Tools in the Bundle
@@ -24,7 +24,7 @@ Install, repair, and measure the RTK+ICM+Vox toolkit for Claude Code.
24
24
  |------|---------|---------|
25
25
  | **RTK** | latest | Compresses CLI output by ~89% before it reaches the model |
26
26
  | **ICM** | latest | Persistent SQLite memory across sessions (knowledge graph + hybrid search) |
27
- | **Vox** | latest | Spoken task notifications via local TTS zero API calls |
27
+ | **Vox** | latest | Spoken task notifications via local TTS (zero API calls) |
28
28
 
29
29
  ---
30
30
 
@@ -179,8 +179,8 @@ echo "=============================="
179
179
 
180
180
  ### What healthy output looks like
181
181
 
182
- - **RTK**: `Tokens saved: 5M+ (85%+)` across `500+ commands` if savings are low, run `rtk discover` to find uncovered commands
183
- - **ICM**: Topics like `decisions-*`, `errors-resolved`, `preferences` with recent timestamps if empty, start storing manually with `icm store`
182
+ - **RTK**: `Tokens saved: 5M+ (85%+)` across `500+ commands`. If savings are low, run `rtk discover` to find uncovered commands
183
+ - **ICM**: Topics like `decisions-*`, `errors-resolved`, `preferences` with recent timestamps. If empty, start storing manually with `icm store`
184
184
  - **Vox**: Non-zero speak count means the Stop hook fired
185
185
 
186
186
  ---
@@ -193,7 +193,7 @@ To get a weekly automated report without having to remember to run this skill:
193
193
  # Create a weekly digest script
194
194
  cat > ~/ai-tools-digest.sh << 'EOF'
195
195
  #!/bin/bash
196
- echo "=== Weekly AI Tools Digest $(date) ===" | tee -a ~/ai-tools-digest.log
196
+ echo "=== Weekly AI Tools Digest: $(date) ===" | tee -a ~/ai-tools-digest.log
197
197
  echo "" | tee -a ~/ai-tools-digest.log
198
198
  rtk gain 2>/dev/null | tee -a ~/ai-tools-digest.log
199
199
  echo "" | tee -a ~/ai-tools-digest.log
@@ -255,7 +255,7 @@ To unload: `launchctl unload ~/Library/LaunchAgents/com.oleg.ai-tools-digest.pli
255
255
  | `rtk gain` | Total tokens saved to date |
256
256
  | `rtk discover` | Find commands not yet covered by RTK |
257
257
  | `icm topics` | List all memory topic buckets |
258
- | `icm health` | Memory hygiene stale, redundant, decay stats |
258
+ | `icm health` | Memory hygiene: stale, redundant, decay stats |
259
259
  | `icm recall "query"` | Search memories semantically |
260
260
  | `icm store -t topic -c "content" -i high` | Store a memory manually |
261
261
  | `vox "text"` | Speak text immediately |
@@ -12,7 +12,7 @@ Use the olko:apple-store-submit skill.
12
12
 
13
13
  ## Overview
14
14
 
15
- Parse Apple rejection feedback, implement targeted fixes, update App Store Connect metadata, and resubmit covering the complete cycle from rejection email to approved build.
15
+ Parse Apple rejection feedback, implement targeted fixes, update App Store Connect metadata, and resubmit, covering the complete cycle from rejection email to approved build.
16
16
 
17
17
  ## When to Use
18
18
 
@@ -28,9 +28,9 @@ Parse Apple rejection feedback, implement targeted fixes, update App Store Conne
28
28
  Read the full rejection email. Extract and list:
29
29
 
30
30
  - **Guideline numbers** violated (e.g., 2.1, 4.2.0, 5.1.1)
31
- - **Code-level issues** missing entitlements, incorrect privacy strings, sandbox violations
32
- - **Metadata issues** wrong screenshot sizes, subtitle policy, keyword stuffing
33
- - **UX issues** crashes described by reviewer, broken flows, missing functionality
31
+ - **Code-level issues**: missing entitlements, incorrect privacy strings, sandbox violations
32
+ - **Metadata issues**: wrong screenshot sizes, subtitle policy, keyword stuffing
33
+ - **UX issues**: crashes described by reviewer, broken flows, missing functionality
34
34
 
35
35
  Create a numbered fix plan: one item per rejection point, with the type of fix needed.
36
36
 
@@ -68,7 +68,7 @@ Create a numbered fix plan: one item per rejection point, with the type of fix n
68
68
  <true/>
69
69
  ```
70
70
 
71
- **Sandbox violations** remove `NoEscapeBlock` patterns, replace deprecated APIs, use only sandboxed file access via Security-Scoped Bookmarks when needed.
71
+ **Sandbox violations**: remove `NoEscapeBlock` patterns, replace deprecated APIs, use only sandboxed file access via Security-Scoped Bookmarks when needed.
72
72
 
73
73
  ### 4. Build and Archive
74
74
 
@@ -116,7 +116,7 @@ Common metadata fixes:
116
116
  In the submission form, fill **Notes for Reviewer**:
117
117
 
118
118
  - Explain each rejection point and what was changed
119
- - Reference specific guideline numbers: "Addressing 2.1 added NSMicrophoneUsageDescription to Info.plist"
119
+ - Reference specific guideline numbers: "Addressing 2.1: added NSMicrophoneUsageDescription to Info.plist"
120
120
  - If a feature requires special credentials to test, provide test account details
121
121
 
122
122
  ### 7. Submit and Track
@@ -125,7 +125,7 @@ In the submission form, fill **Notes for Reviewer**:
125
125
  2. In App Store Connect: select the new build, fill notes, **Submit for Review**
126
126
  3. Typical re-review: 24–48h
127
127
  4. If rejected again: respond in the **Resolution Center** thread (same case number)
128
- 5. Escalate via Resolution Center for policy disagreements do not open a new submission
128
+ 5. Escalate via Resolution Center for policy disagreements: do not open a new submission
129
129
 
130
130
  ## Build Number Protocol
131
131
 
@@ -16,12 +16,12 @@ dry-run so you see exactly what will be deleted before anything is removed.
16
16
  ## Inputs
17
17
 
18
18
  - **Remote** (optional, default: `origin`)
19
- - **Base branch** (optional, default: `main` detect from `gh repo view`)
19
+ - **Base branch** (optional, default: `main`, detect from `gh repo view`)
20
20
  - **--dry-run** (optional, default: on): preview deletions without executing them
21
- - **--execute**: actually delete branches (requires explicit flag safety default)
21
+ - **--execute**: actually delete branches (requires explicit flag, safety default)
22
22
  - **--include-local**: also clean up merged local branches (off by default)
23
23
 
24
- ## Step 1 Fetch and prune remote tracking references
24
+ ## Step 1: Fetch and prune remote tracking references
25
25
 
26
26
  Always start here. This removes local tracking refs for remote branches that are
27
27
  already gone, without touching anything else:
@@ -37,7 +37,7 @@ After pruning, print the count of removed tracking refs:
37
37
  git branch -vv | grep ': gone]' | wc -l
38
38
  ```
39
39
 
40
- ## Step 2 Identify stale remote branches
40
+ ## Step 2: Identify stale remote branches
41
41
 
42
42
  Find remote branches whose associated PR is merged or closed:
43
43
 
@@ -53,7 +53,7 @@ git branch -r --merged "$REMOTE/$BASE" \
53
53
  ```
54
54
 
55
55
  Cross-reference with GitHub to confirm each branch's PR state. Only include branches
56
- with a confirmed merged or closed PR an empty result means the branch is not eligible:
56
+ with a confirmed merged or closed PR. An empty result means the branch is not eligible:
57
57
 
58
58
  ```bash
59
59
  STALE_BRANCHES=()
@@ -84,7 +84,7 @@ dependabot/npm_and_yarn/eslint-8.57.0 ← 43 merged 2026-07-31
84
84
  feature/login-refresh ← 38 merged 2026-07-28
85
85
  ```
86
86
 
87
- ## Step 3 Safety filter
87
+ ## Step 3: Safety filter
88
88
 
89
89
  **Never propose deletion of:**
90
90
 
@@ -103,14 +103,14 @@ OPEN=$(gh pr list --head "$branch" --state open --json number --jq 'length')
103
103
  [ "$OPEN" -gt 0 ] && echo "SKIP (open PR): $branch"
104
104
  ```
105
105
 
106
- ## Step 4 Preview or execute
106
+ ## Step 4: Preview or execute
107
107
 
108
108
  ### Dry-run (default)
109
109
 
110
110
  Print the deletion plan and stop. Never touch the remote without `--execute`:
111
111
 
112
112
  ```
113
- Branch cleanup preview dry-run (pass --execute to apply)
113
+ Branch cleanup preview, dry-run (pass --execute to apply)
114
114
 
115
115
  Remote branches to delete (all merged to main):
116
116
  origin/dependabot/npm_and_yarn/lodash-4.17.21 (PR #42, merged 2026-07-31)
@@ -135,7 +135,7 @@ for branch in "${STALE_BRANCHES[@]}"; do
135
135
  done
136
136
  ```
137
137
 
138
- ## Step 5 Local branch cleanup (optional, --include-local)
138
+ ## Step 5: Local branch cleanup (optional, --include-local)
139
139
 
140
140
  Only runs when `--include-local` is explicitly passed.
141
141
 
@@ -153,10 +153,10 @@ gone before deleting:
153
153
 
154
154
  ```bash
155
155
  git branch -vv "$branch" # should show ': gone]' if remote is deleted
156
- git branch -d "$branch" # safe delete fails if unmerged work exists
156
+ git branch -d "$branch" # safe delete: fails if unmerged work exists
157
157
  ```
158
158
 
159
- Never use `-D` (force delete) let `-d` protect you from accidental data loss.
159
+ Never use `-D` (force delete): let `-d` protect you from accidental data loss.
160
160
 
161
161
  ## Report
162
162
 
@@ -164,7 +164,7 @@ Never use `-D` (force delete) — let `-d` protect you from accidental data loss
164
164
  Branch cleanup complete
165
165
 
166
166
  Remote:
167
- Deleted: 12 branches (10 Dependabot, 2 feature branches all merged)
167
+ Deleted: 12 branches (10 Dependabot, 2 feature branches, all merged)
168
168
  Protected: 2 skipped (beta, open PR)
169
169
 
170
170
  Local tracking refs:
@@ -183,4 +183,4 @@ Branch cleanup complete
183
183
  |---|---|
184
184
  | `olko:dependabot-triage` (merged patch PRs) | next `olko:morning-routine` starts clean |
185
185
  | Sprint wind-down / milestone close | `git fetch` confirms clean state |
186
- | Any large batch merge | nothing maintenance complete |
186
+ | Any large batch merge | nothing: maintenance complete |
@@ -35,7 +35,7 @@ gh pr checks --json name,state,conclusion 2>/dev/null \
35
35
 
36
36
  Classify each check as: `pass`, `fail`, `pending`, or `skipped`.
37
37
 
38
- **Exit immediately if all required checks already pass** nothing to do.
38
+ **Exit immediately if all required checks already pass**: nothing to do.
39
39
 
40
40
  ### 2. Loop (max 5 iterations)
41
41
 
@@ -48,7 +48,7 @@ gh pr checks --json name,state,conclusion \
48
48
 
49
49
  For each failing check, record: check name, workflow file, job name.
50
50
 
51
- Stop if the working set is empty all required checks are green.
51
+ Stop if the working set is empty: all required checks are green.
52
52
 
53
53
  #### B. Check for base-branch regression first
54
54
 
@@ -59,7 +59,7 @@ gh run list --branch <base-branch> --workflow <workflow-name> --limit 3 \
59
59
  --json conclusion --jq '.[].conclusion'
60
60
  ```
61
61
 
62
- If the same check is failing on the base branch, **stop and report** —
62
+ If the same check is failing on the base branch, **stop and report**:
63
63
  this is not your PR's fault. Do not attempt a fix that masks a base-branch problem.
64
64
  Wait for a `Base branch recovered` notice before re-trying.
65
65
 
@@ -76,7 +76,7 @@ gh run list --branch <branch> --workflow <workflow-name> --limit 1 \
76
76
  gh run view <run-id> --log-failed
77
77
  ```
78
78
 
79
- Cap log reading at ~200 lines per job the error is almost always in the last
79
+ Cap log reading at ~200 lines per job: the error is almost always in the last
80
80
  50 lines of a failed step.
81
81
 
82
82
  #### D. Diagnose
@@ -128,12 +128,12 @@ go mod tidy # Go
128
128
  ```
129
129
 
130
130
  For test failures: read the failing test and the code it exercises. Fix the code
131
- or the assertion but not both in one commit unless the test was clearly wrong
131
+ or the assertion, but not both in one commit unless the test was clearly wrong
132
132
  and the fix is trivial.
133
133
 
134
134
  #### F. Commit and push
135
135
 
136
- Stage **only the files touched in step E** never `git add -A`, which can sweep
136
+ Stage **only the files touched in step E**: never `git add -A`, which can sweep
137
137
  in unrelated local changes:
138
138
 
139
139
  ```bash
@@ -171,7 +171,7 @@ Go back to step A.
171
171
  ```
172
172
  CI fix loop complete.
173
173
  Iterations: 2
174
- Fixed: lint (gofmt: 3 files), test (TestUserCreate nil pointer in fixture)
174
+ Fixed: lint (gofmt: 3 files), test (TestUserCreate: nil pointer in fixture)
175
175
  Blocked: none
176
176
  Status: all required checks green
177
177
  ```
@@ -37,7 +37,7 @@ curl -s -X GET \
37
37
  jq '.result[] | select(.phase == "http_request_firewall_custom")'
38
38
  ```
39
39
 
40
- If the output is empty no existing ruleset. Go to **3a**. If a ruleset exists, note its `id` and go to **3b**.
40
+ If the output is empty: no existing ruleset. Go to **3a**. If a ruleset exists, note its `id` and go to **3b**.
41
41
 
42
42
  ### 3a. Create NEW Ruleset with Block Rule
43
43
 
@@ -1,7 +1,7 @@
1
1
  <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
2
 
3
3
  ---
4
- description: "Iteratively drives a GitHub PR to zero unresolved CodeRabbit findings reads each inline comment's own Prompt for AI Agents block, applies the fix, replies to the thread, resolves it, pushes, and re-triggers CodeRabbit."
4
+ description: "Iteratively drives a GitHub PR to zero unresolved CodeRabbit findings: reads each inline comment's own Prompt for AI Agents block, applies the fix, replies to the thread, resolves it, pushes, and re-triggers CodeRabbit."
5
5
  ---
6
6
 
7
7
  Use the olko:coderabbitloop skill.
@@ -14,21 +14,21 @@ Fix every actionable CodeRabbit finding on a PR, answer each thread, resolve it,
14
14
 
15
15
  - **PR number** (optional): detect from the current branch if not given.
16
16
 
17
- ## How CodeRabbit actually posts (verified against docs.coderabbit.ai and a live install don't assume otherwise)
17
+ ## How CodeRabbit actually posts (verified against docs.coderabbit.ai and a live install: don't assume otherwise)
18
18
 
19
19
  CodeRabbit runs as `coderabbitai[bot]` and posts **two independent things**, not one:
20
20
 
21
- 1. An auto-generated **walkthrough/summary issue comment** body starts with the HTML marker `<!-- This is an auto-generated comment: summarize by coderabbit.ai -->`. This is a description, not a review use it for context only, never as a source of fixable findings.
21
+ 1. An auto-generated **walkthrough/summary issue comment**: body starts with the HTML marker `<!-- This is an auto-generated comment: summarize by coderabbit.ai -->`. This is a description, not a review: use it for context only, never as a source of fixable findings.
22
22
  2. A **formal PR review** carrying one **inline review comment per finding**, each a real, resolvable GitHub review thread at the finding's file/line. Each one contains a `<details><summary>🤖 Prompt for AI Agents</summary>` block: a ready-made fix spec, CodeRabbit's own words, meant to be handed straight to an agent.
23
23
 
24
- **Use the inline threads as the source of truth**, exactly like Greptile/Qodo fetch via GraphQL `reviewThreads`, which carries native `isResolved` state (see `references/graphql-queries.md`, shared with `qodoloop`; only the bot login and the prompt-heading text differ).
24
+ **Use the inline threads as the source of truth**, exactly like Greptile/Qodo: fetch via GraphQL `reviewThreads`, which carries native `isResolved` state (see `references/graphql-queries.md`, shared with `qodoloop`; only the bot login and the prompt-heading text differ).
25
25
 
26
- CodeRabbit has slash commands (official, `docs.coderabbit.ai/reference/review-commands`) the ones this loop actually uses:
27
- - `@coderabbitai review` incremental review of new changes (use this to re-trigger after a push, if automatic review-on-push is off for this repo).
28
- - `@coderabbitai resolve` marks **all** CodeRabbit threads resolved in one shot. This is a bulk escape hatch, not the default path: this loop resolves threads one at a time, right after replying to each, so the reply-then-resolve record stays intact per finding.
29
- - CodeRabbit also has its own built-in `@coderabbitai autofix`, which commits fixes directly without a model in the loop. Mention it to the user as an alternative if they'd rather skip the loop entirely, but this skill's whole point is the Claude-orchestrated version don't default to autofix instead of doing the work.
26
+ CodeRabbit has slash commands (official, `docs.coderabbit.ai/reference/review-commands`), the ones this loop actually uses:
27
+ - `@coderabbitai review`: incremental review of new changes (use this to re-trigger after a push, if automatic review-on-push is off for this repo).
28
+ - `@coderabbitai resolve`: marks **all** CodeRabbit threads resolved in one shot. This is a bulk escape hatch, not the default path: this loop resolves threads one at a time, right after replying to each, so the reply-then-resolve record stays intact per finding.
29
+ - CodeRabbit also has its own built-in `@coderabbitai autofix`, which commits fixes directly without a model in the loop. Mention it to the user as an alternative if they'd rather skip the loop entirely, but this skill's whole point is the Claude-orchestrated version: don't default to autofix instead of doing the work.
30
30
 
31
- **Rate limit is a real terminal state, not a bug.** A comment reading "you've reached your PR review limit" (confirmed live wording) means CodeRabbit will not review again this cycle stop and report it, don't loop waiting for something that isn't coming.
31
+ **Rate limit is a real terminal state, not a bug.** A comment reading "you've reached your PR review limit" (confirmed live wording) means CodeRabbit will not review again this cycle: stop and report it, don't loop waiting for something that isn't coming.
32
32
 
33
33
  ## Instructions
34
34
 
@@ -54,11 +54,11 @@ If this repo doesn't auto-review on push, nudge it:
54
54
  gh pr comment <PR_NUMBER> --body "@coderabbitai review"
55
55
  ```
56
56
 
57
- Poll (every ~10s, timeout ~5min) for CodeRabbit's next formal review to land a new entry in `gh api repos/{owner}/{repo}/pulls/<PR_NUMBER>/reviews` from `coderabbitai[bot]` created after this push. If you instead see a rate-limit comment ("review limit"), **stop the loop now** and go to Report with `blocked: rate-limited`.
57
+ Poll (every ~10s, timeout ~5min) for CodeRabbit's next formal review to land: a new entry in `gh api repos/{owner}/{repo}/pulls/<PR_NUMBER>/reviews` from `coderabbitai[bot]` created after this push. If you instead see a rate-limit comment ("review limit"), **stop the loop now** and go to Report with `blocked: rate-limited`.
58
58
 
59
59
  #### B. Fetch unresolved findings
60
60
 
61
- Run the `unresolvedQodoThreads`-shaped query in `references/graphql-queries.md` (filter `author.login == "coderabbitai[bot]"` instead of Qodo's login). For each unresolved thread, parse the finding text and the **Prompt for AI Agents** block (heading text is `🤖 Prompt for AI Agents`, not `Agent Prompt` match case/emoji-insensitively).
61
+ Run the `unresolvedQodoThreads`-shaped query in `references/graphql-queries.md` (filter `author.login == "coderabbitai[bot]"` instead of Qodo's login). For each unresolved thread, parse the finding text and the **Prompt for AI Agents** block (heading text is `🤖 Prompt for AI Agents`, not `Agent Prompt`: match case/emoji-insensitively).
62
62
 
63
63
  #### C. Check exit conditions
64
64
 
@@ -66,17 +66,17 @@ Stop if there are zero unresolved CodeRabbit threads, or max iterations reached.
66
66
 
67
67
  #### D. Fix each finding
68
68
 
69
- For each thread, in order: read the Prompt for AI Agents block in full it names the issue and the fix. Apply it, staying inside its stated scope. If the suggestion is wrong, unsafe, or needs a product decision, don't force it note that in step E instead.
69
+ For each thread, in order: read the Prompt for AI Agents block in full: it names the issue and the fix. Apply it, staying inside its stated scope. If the suggestion is wrong, unsafe, or needs a product decision, don't force it: note that in step E instead.
70
70
 
71
71
  #### E. Answer and resolve
72
72
 
73
- **Reply to the thread first, then resolve it** the "answer to the comments" half of the job:
73
+ **Reply to the thread first, then resolve it**, the "answer to the comments" half of the job:
74
74
 
75
75
  ```bash
76
76
  gh api graphql -f query='mutation { addPullRequestReviewThreadReply(input: {pullRequestReviewThreadId: "<THREAD_ID>", body: "<REPLY>"}) { comment { id } } }'
77
77
  ```
78
78
 
79
- Reply body: one or two sentences what you changed and why, or exactly why you didn't fix it. Then resolve (`resolveReviewThread`). A finding you deliberately skip still gets a reply and gets resolved.
79
+ Reply body: one or two sentences, what you changed and why, or exactly why you didn't fix it. Then resolve (`resolveReviewThread`). A finding you deliberately skip still gets a reply and gets resolved.
80
80
 
81
81
  #### F. Commit and push
82
82
 
@@ -107,4 +107,4 @@ Coderabbitloop complete.
107
107
 
108
108
  ## References
109
109
 
110
- - `references/graphql-queries.md` shared with `qodoloop`: the exact `reviewThreads` query and the `resolveReviewThread` / `addPullRequestReviewThreadReply` mutations. Swap the author-login filter to `coderabbitai[bot]` and the prompt-heading match to `Prompt for AI Agents`.
110
+ - `references/graphql-queries.md`: shared with `qodoloop`: the exact `reviewThreads` query and the `resolveReviewThread` / `addPullRequestReviewThreadReply` mutations. Swap the author-login filter to `coderabbitai[bot]` and the prompt-heading match to `Prompt for AI Agents`.
@@ -1,14 +1,14 @@
1
1
  <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
2
 
3
3
  ---
4
- description: "Iteratively drives a GitHub PR to zero unresolved OpenAI Codex review comments but verifies every finding against the real code first, fixes only the correct ones, and rebuts false positives without changing correct code."
4
+ description: "Iteratively drives a GitHub PR to zero unresolved OpenAI Codex review comments, verifying every finding against the real code first, fixes only the correct ones, and rebuts false positives without changing correct code."
5
5
  ---
6
6
 
7
7
  Use the olko:codexloop skill.
8
8
 
9
9
  # Codexloop
10
10
 
11
- Drive a GitHub PR until Codex has no unresolved review comments **but do not cargo-cult its
11
+ Drive a GitHub PR until Codex has no unresolved review comments, **but do not cargo-cult its
12
12
  suggestions.** Every comment is a *claim to verify*, not an instruction to obey. A wrong
13
13
  suggestion applied is worse than the comment itself.
14
14
 
@@ -47,10 +47,10 @@ Pick the login matching `*codex*` (commonly `chatgpt-codex-connector[bot]`, some
47
47
  `codex[bot]`) and export it as `BOT`.
48
48
 
49
49
  **Finding nothing here is NOT a stop condition.** On a PR Codex has never reviewed there is no bot
50
- login to find yet that is the normal starting state, not a missing app. When the probe comes back
50
+ login to find yet: that is the normal starting state, not a missing app. When the probe comes back
51
51
  empty, fall through to step 2A, post `@codex review`, and re-run this probe once a review lands;
52
52
  until then match any login containing `codex` when polling. Only conclude the app is absent after
53
- step 2A's bounded wait has expired with no review and no codex-like login anywhere on the PR and
53
+ step 2A's bounded wait has expired with no review and no codex-like login anywhere on the PR, and
54
54
  then say so and stop, rather than looping against nothing.
55
55
 
56
56
  ## 1. Identify the PR
@@ -63,7 +63,7 @@ Switch to the PR branch if not already on it. Capture `OWNER`/`REPO` (`gh repo v
63
63
 
64
64
  ## 2. The loop (max 5 iterations)
65
65
 
66
- Keep an explicit iteration counter and stop at 5 the cap is a real bound to enforce, not a
66
+ Keep an explicit iteration counter and stop at 5: the cap is a real bound to enforce, not a
67
67
  figure of speech. Each pass through A–G is one iteration; on hitting the cap, go straight to the
68
68
  report and list what is still unresolved rather than starting a sixth.
69
69
 
@@ -77,13 +77,13 @@ HAVE=$(gh api repos/{owner}/{repo}/pulls/<PR>/reviews --paginate \
77
77
  if [ "$HAVE" = "0" ]; then gh pr comment <PR> --body "@codex review"; fi
78
78
  ```
79
79
 
80
- Poll for the review of THIS head to land. No check-run exists, so poll the reviews endpoint and
80
+ Poll for the review of THIS head to land. No check-run exists, so poll the reviews endpoint, and
81
81
  poll it on a **deadline**, never `while true`: a review that never arrives must end the skill with
82
82
  an honest timeout, not hang it.
83
83
 
84
84
  ```bash
85
85
  # 10-minute deadline, one retry, then give up. DEADLINE/RETRIES are the
86
- # enforcement of the bounds this skill claims do not drop them.
86
+ # enforcement of the bounds this skill claims: do not drop them.
87
87
  wait_for_review() { # $1 = attempt label
88
88
  local deadline=$(( SECONDS + 600 ))
89
89
  while [ "$SECONDS" -lt "$deadline" ]; do
@@ -96,7 +96,7 @@ wait_for_review() { # $1 = attempt label
96
96
  }
97
97
 
98
98
  if ! wait_for_review "first wait"; then
99
- echo "no Codex review after 10m retrying once" # say the retry out loud
99
+ echo "no Codex review after 10m, retrying once" # say the retry out loud
100
100
  gh pr comment <PR> --body "@codex review"
101
101
  if ! wait_for_review "after retry"; then
102
102
  echo "Codex did not review $HEAD_SHA after a retry; stopping and reporting."
@@ -110,7 +110,7 @@ retry in the final summary; two silent timeouts are the failure mode this guard
110
110
 
111
111
  ### B. Fetch the findings
112
112
 
113
- - **Summary**: the review `.body` from the object above read the overall take and the priority
113
+ - **Summary**: the review `.body` from the object above: read the overall take and the priority
114
114
  spread.
115
115
  - **Unresolved inline comments** on the current head:
116
116
 
@@ -125,11 +125,11 @@ unresolved ones.
125
125
  ### C. Critically evaluate EACH comment (the core of this skill)
126
126
 
127
127
  For every comment, **verify the claim against the actual code and repo conventions before touching
128
- anything.** Read the whole file not just the diff hunk Codex saw plus the types and the call
128
+ anything.** Read the whole file, not just the diff hunk Codex saw, plus the types and the call
129
129
  sites. Then classify:
130
130
 
131
- 1. **CORRECT + actionable** the finding is real and the fix improves the code. → fix it (step D).
132
- 2. **FALSE POSITIVE / technically wrong** the claim doesn't hold. → do **NOT** change code; write a
131
+ 1. **CORRECT + actionable**: the finding is real and the fix improves the code. → fix it (step D).
132
+ 2. **FALSE POSITIVE / technically wrong**: the claim doesn't hold. → do **NOT** change code; write a
133
133
  specific, evidence-based reply (cite the exact code/line/behavior that disproves it), then resolve.
134
134
  3. **Valid but out-of-scope / stylistic nit** that conflicts with repo convention or the PR's intent
135
135
  → briefly decline with a reason, then resolve. Do not expand the PR's scope to satisfy a nit.
@@ -152,7 +152,7 @@ sites. Then classify:
152
152
  - Restating library/framework semantics incorrectly.
153
153
  - Style demands that contradict the repo's existing, consistent pattern.
154
154
 
155
- ### D. Apply fixes category 1 only
155
+ ### D. Apply fixes: category 1 only
156
156
 
157
157
  Make the minimal correct change. Re-run the local gate if the repo has one (typecheck/tests) before
158
158
  moving on.
@@ -160,13 +160,13 @@ moving on.
160
160
  ### E. Commit and push FIRST, before resolving anything
161
161
 
162
162
  Order matters. A resolved thread is a claim that the fix is on the branch, so the push has to
163
- succeed before the claim is made otherwise a failed commit or push leaves the PR unfixed with the
163
+ succeed before the claim is made: otherwise a failed commit or push leaves the PR unfixed with the
164
164
  finding marked resolved, and nobody looks at it again.
165
165
 
166
166
  If step D changed code:
167
167
 
168
168
  ```bash
169
- # Stage ONLY the files your fixes touched never `git add -A`, which sweeps up
169
+ # Stage ONLY the files your fixes touched: never `git add -A`, which sweeps up
170
170
  # unrelated work and untracked secrets sitting in the worktree.
171
171
  git status --short # look before you stage
172
172
  git add <path> [<path>...] # the files named in the findings you fixed
@@ -187,7 +187,7 @@ If they differ, stop: the fix is not on the PR, so nothing may be resolved yet.
187
187
  ### F. Reply to and resolve every addressed thread
188
188
 
189
189
  Only now, with the fixes pushed, reply and resolve. Fetch unresolved threads, **following
190
- pagination** a PR with more than 100 threads will otherwise look clean while unresolved findings
190
+ pagination**: a PR with more than 100 threads will otherwise look clean while unresolved findings
191
191
  sit on page two:
192
192
 
193
193
  ```bash
@@ -219,7 +219,7 @@ then resolve:
219
219
  gh api graphql -f query='mutation { resolveReviewThread(input: {threadId: "THREAD_ID"}) { thread { isResolved } } }'
220
220
  ```
221
221
 
222
- Resolve a thread only for comments authored by `$BOT` that you have fixed or rebutted never
222
+ Resolve a thread only for comments authored by `$BOT` that you have fixed or rebutted: never
223
223
  blanket-resolve, and never resolve a human reviewer's thread.
224
224
 
225
225
  Threads you are **rebutting** need no push, so they may be replied to and resolved regardless of
@@ -235,9 +235,9 @@ ensure all threads are resolved, and exit.
235
235
 
236
236
  Stop when **any** is true:
237
237
  - Zero unresolved `$BOT` comments remain, and every comment this round was fixed or
238
- rebutted+resolved. (There is no score to hit this is "done".)
239
- - Max iterations (5) reached report what remains.
240
- - Codex never responded after one retry report the timeout honestly; do not claim success.
238
+ rebutted+resolved. (There is no score to hit: this is "done".)
239
+ - Max iterations (5) reached: report what remains.
240
+ - Codex never responded after one retry: report the timeout honestly; do not claim success.
241
241
 
242
242
  ## 4. Report
243
243