mcp-coder 0.1.6__tar.gz

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 (494) hide show
  1. mcp_coder-0.1.6/.claude/CLAUDE.md +245 -0
  2. mcp_coder-0.1.6/.claude/agents/commit-pusher.md +24 -0
  3. mcp_coder-0.1.6/.claude/commands/check_branch_status.md +57 -0
  4. mcp_coder-0.1.6/.claude/commands/commit_push.md +40 -0
  5. mcp_coder-0.1.6/.claude/commands/discuss.md +16 -0
  6. mcp_coder-0.1.6/.claude/commands/implementation_approve.md +20 -0
  7. mcp_coder-0.1.6/.claude/commands/implementation_finalise.md +52 -0
  8. mcp_coder-0.1.6/.claude/commands/implementation_needs_rework.md +34 -0
  9. mcp_coder-0.1.6/.claude/commands/implementation_new_tasks.md +31 -0
  10. mcp_coder-0.1.6/.claude/commands/implementation_review.md +47 -0
  11. mcp_coder-0.1.6/.claude/commands/implementation_review_supervisor.md +56 -0
  12. mcp_coder-0.1.6/.claude/commands/issue_analyse.md +38 -0
  13. mcp_coder-0.1.6/.claude/commands/issue_approve.md +26 -0
  14. mcp_coder-0.1.6/.claude/commands/issue_create.md +43 -0
  15. mcp_coder-0.1.6/.claude/commands/issue_update.md +48 -0
  16. mcp_coder-0.1.6/.claude/commands/plan_approve.md +20 -0
  17. mcp_coder-0.1.6/.claude/commands/plan_review.md +37 -0
  18. mcp_coder-0.1.6/.claude/commands/plan_review_supervisor.md +59 -0
  19. mcp_coder-0.1.6/.claude/commands/plan_update.md +25 -0
  20. mcp_coder-0.1.6/.claude/commands/rebase.md +67 -0
  21. mcp_coder-0.1.6/.claude/commands/rebase_design.md.txt +76 -0
  22. mcp_coder-0.1.6/.claude/knowledge_base/planning_principles.md +28 -0
  23. mcp_coder-0.1.6/.claude/knowledge_base/python.md +5 -0
  24. mcp_coder-0.1.6/.claude/knowledge_base/refactoring_principles.md +20 -0
  25. mcp_coder-0.1.6/.claude/knowledge_base/software_engineering_principles.md +30 -0
  26. mcp_coder-0.1.6/.claude/settings.local.json +65 -0
  27. mcp_coder-0.1.6/.gitattributes +95 -0
  28. mcp_coder-0.1.6/.github/dependabot.yml +14 -0
  29. mcp_coder-0.1.6/.github/workflows/approve-command.yml +82 -0
  30. mcp_coder-0.1.6/.github/workflows/ci.yml +175 -0
  31. mcp_coder-0.1.6/.github/workflows/label-new-issues.yml +22 -0
  32. mcp_coder-0.1.6/.github/workflows/langchain-integration.yml +65 -0
  33. mcp_coder-0.1.6/.github/workflows/publish.yml +49 -0
  34. mcp_coder-0.1.6/.gitignore +79 -0
  35. mcp_coder-0.1.6/.importlinter +528 -0
  36. mcp_coder-0.1.6/.large-files-allowlist +39 -0
  37. mcp_coder-0.1.6/.mcp.json +42 -0
  38. mcp_coder-0.1.6/.python-version +1 -0
  39. mcp_coder-0.1.6/.run/pytest in tests - just unit tests.run.xml +19 -0
  40. mcp_coder-0.1.6/.run/pytest in tests.run.xml +19 -0
  41. mcp_coder-0.1.6/PKG-INFO +215 -0
  42. mcp_coder-0.1.6/README.md +159 -0
  43. mcp_coder-0.1.6/claude.bat +50 -0
  44. mcp_coder-0.1.6/claude_local.bat +74 -0
  45. mcp_coder-0.1.6/docs/README.md +51 -0
  46. mcp_coder-0.1.6/docs/architecture/architecture-maintenance.md +298 -0
  47. mcp_coder-0.1.6/docs/architecture/architecture.md +450 -0
  48. mcp_coder-0.1.6/docs/architecture/dependencies/dependency_graph.html +226 -0
  49. mcp_coder-0.1.6/docs/architecture/dependencies/pydeps_graph.dot +425 -0
  50. mcp_coder-0.1.6/docs/architecture/dependencies/pydeps_graph.html +220 -0
  51. mcp_coder-0.1.6/docs/architecture/dependencies/readme.md +116 -0
  52. mcp_coder-0.1.6/docs/claude_sdk_response_structure.md +167 -0
  53. mcp_coder-0.1.6/docs/cli-reference.md +853 -0
  54. mcp_coder-0.1.6/docs/configuration/claude-code.md +238 -0
  55. mcp_coder-0.1.6/docs/configuration/claude-desktop.md +38 -0
  56. mcp_coder-0.1.6/docs/configuration/config.md +889 -0
  57. mcp_coder-0.1.6/docs/configuration/mlflow-integration.md +295 -0
  58. mcp_coder-0.1.6/docs/coordinator-vscodeclaude.md +185 -0
  59. mcp_coder-0.1.6/docs/getting-started/label-setup.md +270 -0
  60. mcp_coder-0.1.6/docs/processes-prompts/claude_cheat_sheet.md +99 -0
  61. mcp_coder-0.1.6/docs/processes-prompts/development-process.md +1137 -0
  62. mcp_coder-0.1.6/docs/processes-prompts/github_Issue_Workflow_Matrix.html +572 -0
  63. mcp_coder-0.1.6/docs/processes-prompts/refactoring-guide.md +130 -0
  64. mcp_coder-0.1.6/docs/repository-setup.md +816 -0
  65. mcp_coder-0.1.6/docs/tests/issues.md +228 -0
  66. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251005_055638.txt +190 -0
  67. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251005_120721.txt +197 -0
  68. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251007_103917.txt +197 -0
  69. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251008_070010.txt +197 -0
  70. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251008_174005.txt +197 -0
  71. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251009_070944.txt +197 -0
  72. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20251014_071242.txt +199 -0
  73. mcp_coder-0.1.6/docs/tests/performance_data/performance_stats_20260127_071318.txt +165 -0
  74. mcp_coder-0.1.6/docs/tests/runtime-statistics-review-process.md +216 -0
  75. mcp_coder-0.1.6/docs/tests/runtime_statistics.md +627 -0
  76. mcp_coder-0.1.6/docs/tests/slow-test-review-methodology.md +148 -0
  77. mcp_coder-0.1.6/mlflow_implementation.md +249 -0
  78. mcp_coder-0.1.6/project_idea.md +192 -0
  79. mcp_coder-0.1.6/pyproject.toml +276 -0
  80. mcp_coder-0.1.6/setup.cfg +4 -0
  81. mcp_coder-0.1.6/src/mcp_coder/__init__.py +100 -0
  82. mcp_coder-0.1.6/src/mcp_coder/checks/__init__.py +25 -0
  83. mcp_coder-0.1.6/src/mcp_coder/checks/branch_status.py +685 -0
  84. mcp_coder-0.1.6/src/mcp_coder/checks/ci_log_parser.py +215 -0
  85. mcp_coder-0.1.6/src/mcp_coder/checks/file_sizes.py +214 -0
  86. mcp_coder-0.1.6/src/mcp_coder/cli/__init__.py +5 -0
  87. mcp_coder-0.1.6/src/mcp_coder/cli/commands/__init__.py +24 -0
  88. mcp_coder-0.1.6/src/mcp_coder/cli/commands/check_branch_status.py +368 -0
  89. mcp_coder-0.1.6/src/mcp_coder/cli/commands/check_file_sizes.py +49 -0
  90. mcp_coder-0.1.6/src/mcp_coder/cli/commands/commit.py +207 -0
  91. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/__init__.py +68 -0
  92. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/command_templates.py +249 -0
  93. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/commands.py +720 -0
  94. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/core.py +496 -0
  95. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/issue_stats.py +352 -0
  96. mcp_coder-0.1.6/src/mcp_coder/cli/commands/coordinator/workflow_constants.py +57 -0
  97. mcp_coder-0.1.6/src/mcp_coder/cli/commands/create_plan.py +86 -0
  98. mcp_coder-0.1.6/src/mcp_coder/cli/commands/create_pr.py +79 -0
  99. mcp_coder-0.1.6/src/mcp_coder/cli/commands/define_labels.py +587 -0
  100. mcp_coder-0.1.6/src/mcp_coder/cli/commands/gh_tool.py +57 -0
  101. mcp_coder-0.1.6/src/mcp_coder/cli/commands/git_tool.py +180 -0
  102. mcp_coder-0.1.6/src/mcp_coder/cli/commands/help.py +109 -0
  103. mcp_coder-0.1.6/src/mcp_coder/cli/commands/implement.py +79 -0
  104. mcp_coder-0.1.6/src/mcp_coder/cli/commands/prompt.py +332 -0
  105. mcp_coder-0.1.6/src/mcp_coder/cli/commands/set_status.py +264 -0
  106. mcp_coder-0.1.6/src/mcp_coder/cli/commands/verify.py +157 -0
  107. mcp_coder-0.1.6/src/mcp_coder/cli/main.py +307 -0
  108. mcp_coder-0.1.6/src/mcp_coder/cli/parsers.py +679 -0
  109. mcp_coder-0.1.6/src/mcp_coder/cli/utils.py +184 -0
  110. mcp_coder-0.1.6/src/mcp_coder/config/__init__.py +13 -0
  111. mcp_coder-0.1.6/src/mcp_coder/config/labels.json +161 -0
  112. mcp_coder-0.1.6/src/mcp_coder/config/labels_schema.md +55 -0
  113. mcp_coder-0.1.6/src/mcp_coder/config/mlflow_config.py +90 -0
  114. mcp_coder-0.1.6/src/mcp_coder/constants.py +15 -0
  115. mcp_coder-0.1.6/src/mcp_coder/formatters/__init__.py +97 -0
  116. mcp_coder-0.1.6/src/mcp_coder/formatters/black_formatter.py +144 -0
  117. mcp_coder-0.1.6/src/mcp_coder/formatters/config_reader.py +68 -0
  118. mcp_coder-0.1.6/src/mcp_coder/formatters/isort_formatter.py +145 -0
  119. mcp_coder-0.1.6/src/mcp_coder/formatters/models.py +21 -0
  120. mcp_coder-0.1.6/src/mcp_coder/formatters/utils.py +67 -0
  121. mcp_coder-0.1.6/src/mcp_coder/llm/__init__.py +28 -0
  122. mcp_coder-0.1.6/src/mcp_coder/llm/env.py +86 -0
  123. mcp_coder-0.1.6/src/mcp_coder/llm/formatting/__init__.py +27 -0
  124. mcp_coder-0.1.6/src/mcp_coder/llm/formatting/formatters.py +193 -0
  125. mcp_coder-0.1.6/src/mcp_coder/llm/formatting/sdk_serialization.py +339 -0
  126. mcp_coder-0.1.6/src/mcp_coder/llm/interface.py +215 -0
  127. mcp_coder-0.1.6/src/mcp_coder/llm/mlflow_logger.py +706 -0
  128. mcp_coder-0.1.6/src/mcp_coder/llm/mlflow_metrics.py +192 -0
  129. mcp_coder-0.1.6/src/mcp_coder/llm/providers/__init__.py +1 -0
  130. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/__init__.py +1 -0
  131. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/claude_cli_verification.py +67 -0
  132. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/claude_code_api.py +709 -0
  133. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/claude_code_cli.py +725 -0
  134. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/claude_executable_finder.py +225 -0
  135. mcp_coder-0.1.6/src/mcp_coder/llm/providers/claude/logging_utils.py +189 -0
  136. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/__init__.py +362 -0
  137. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/_models.py +73 -0
  138. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/agent.py +336 -0
  139. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/anthropic_backend.py +40 -0
  140. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/gemini_backend.py +40 -0
  141. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/openai_backend.py +50 -0
  142. mcp_coder-0.1.6/src/mcp_coder/llm/providers/langchain/verification.py +286 -0
  143. mcp_coder-0.1.6/src/mcp_coder/llm/serialization.py +141 -0
  144. mcp_coder-0.1.6/src/mcp_coder/llm/session/__init__.py +7 -0
  145. mcp_coder-0.1.6/src/mcp_coder/llm/session/resolver.py +41 -0
  146. mcp_coder-0.1.6/src/mcp_coder/llm/storage/__init__.py +15 -0
  147. mcp_coder-0.1.6/src/mcp_coder/llm/storage/session_finder.py +144 -0
  148. mcp_coder-0.1.6/src/mcp_coder/llm/storage/session_storage.py +214 -0
  149. mcp_coder-0.1.6/src/mcp_coder/llm/types.py +59 -0
  150. mcp_coder-0.1.6/src/mcp_coder/mcp_tools_py.py +49 -0
  151. mcp_coder-0.1.6/src/mcp_coder/mcp_workspace.py +32 -0
  152. mcp_coder-0.1.6/src/mcp_coder/prompt_manager.py +756 -0
  153. mcp_coder-0.1.6/src/mcp_coder/prompts/prompt_instructions.md +59 -0
  154. mcp_coder-0.1.6/src/mcp_coder/prompts/prompts.md +307 -0
  155. mcp_coder-0.1.6/src/mcp_coder/prompts/prompts_testdata.md +91 -0
  156. mcp_coder-0.1.6/src/mcp_coder/py.typed +0 -0
  157. mcp_coder-0.1.6/src/mcp_coder/utils/__init__.py +122 -0
  158. mcp_coder-0.1.6/src/mcp_coder/utils/clipboard.py +122 -0
  159. mcp_coder-0.1.6/src/mcp_coder/utils/data_files.py +216 -0
  160. mcp_coder-0.1.6/src/mcp_coder/utils/folder_deletion.py +400 -0
  161. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/__init__.py +97 -0
  162. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/branches.py +273 -0
  163. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/commits.py +97 -0
  164. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/compact_diffs.py +579 -0
  165. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/core.py +93 -0
  166. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/diffs.py +310 -0
  167. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/file_tracking.py +97 -0
  168. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/readers.py +720 -0
  169. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/remotes.py +328 -0
  170. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/staging.py +136 -0
  171. mcp_coder-0.1.6/src/mcp_coder/utils/git_operations/workflows.py +203 -0
  172. mcp_coder-0.1.6/src/mcp_coder/utils/git_utils.py +60 -0
  173. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/__init__.py +26 -0
  174. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/base_manager.py +296 -0
  175. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/ci_results_manager.py +465 -0
  176. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/github_utils.py +202 -0
  177. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/__init__.py +68 -0
  178. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/base.py +97 -0
  179. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/branch_manager.py +778 -0
  180. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/cache.py +508 -0
  181. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/comments_mixin.py +273 -0
  182. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/events_mixin.py +116 -0
  183. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/labels_mixin.py +242 -0
  184. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/manager.py +527 -0
  185. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/issues/types.py +121 -0
  186. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/label_config.py +180 -0
  187. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/labels_manager.py +295 -0
  188. mcp_coder-0.1.6/src/mcp_coder/utils/github_operations/pr_manager.py +427 -0
  189. mcp_coder-0.1.6/src/mcp_coder/utils/jenkins_operations/__init__.py +38 -0
  190. mcp_coder-0.1.6/src/mcp_coder/utils/jenkins_operations/client.py +254 -0
  191. mcp_coder-0.1.6/src/mcp_coder/utils/jenkins_operations/models.py +109 -0
  192. mcp_coder-0.1.6/src/mcp_coder/utils/log_utils.py +504 -0
  193. mcp_coder-0.1.6/src/mcp_coder/utils/mlflow_config_loader.py +89 -0
  194. mcp_coder-0.1.6/src/mcp_coder/utils/subprocess_runner.py +674 -0
  195. mcp_coder-0.1.6/src/mcp_coder/utils/timezone_utils.py +133 -0
  196. mcp_coder-0.1.6/src/mcp_coder/utils/user_config.py +361 -0
  197. mcp_coder-0.1.6/src/mcp_coder/workflow_utils/__init__.py +69 -0
  198. mcp_coder-0.1.6/src/mcp_coder/workflow_utils/base_branch.py +205 -0
  199. mcp_coder-0.1.6/src/mcp_coder/workflow_utils/commit_operations.py +276 -0
  200. mcp_coder-0.1.6/src/mcp_coder/workflow_utils/py.typed +0 -0
  201. mcp_coder-0.1.6/src/mcp_coder/workflow_utils/task_tracker.py +521 -0
  202. mcp_coder-0.1.6/src/mcp_coder/workflows/__init__.py +9 -0
  203. mcp_coder-0.1.6/src/mcp_coder/workflows/create_plan.py +633 -0
  204. mcp_coder-0.1.6/src/mcp_coder/workflows/create_pr/__init__.py +11 -0
  205. mcp_coder-0.1.6/src/mcp_coder/workflows/create_pr/core.py +612 -0
  206. mcp_coder-0.1.6/src/mcp_coder/workflows/implement/__init__.py +37 -0
  207. mcp_coder-0.1.6/src/mcp_coder/workflows/implement/constants.py +27 -0
  208. mcp_coder-0.1.6/src/mcp_coder/workflows/implement/core.py +1102 -0
  209. mcp_coder-0.1.6/src/mcp_coder/workflows/implement/prerequisites.py +193 -0
  210. mcp_coder-0.1.6/src/mcp_coder/workflows/implement/task_processing.py +499 -0
  211. mcp_coder-0.1.6/src/mcp_coder/workflows/utils.py +58 -0
  212. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/__init__.py +401 -0
  213. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/cleanup.py +325 -0
  214. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/config.py +233 -0
  215. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/helpers.py +112 -0
  216. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/issues.py +386 -0
  217. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/session_launch.py +465 -0
  218. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/session_restart.py +470 -0
  219. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/sessions.py +537 -0
  220. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/status.py +405 -0
  221. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/templates.py +282 -0
  222. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/types.py +43 -0
  223. mcp_coder-0.1.6/src/mcp_coder/workflows/vscodeclaude/workspace.py +644 -0
  224. mcp_coder-0.1.6/src/mcp_coder.egg-info/PKG-INFO +215 -0
  225. mcp_coder-0.1.6/src/mcp_coder.egg-info/SOURCES.txt +492 -0
  226. mcp_coder-0.1.6/src/mcp_coder.egg-info/dependency_links.txt +1 -0
  227. mcp_coder-0.1.6/src/mcp_coder.egg-info/entry_points.txt +2 -0
  228. mcp_coder-0.1.6/src/mcp_coder.egg-info/requires.txt +48 -0
  229. mcp_coder-0.1.6/src/mcp_coder.egg-info/top_level.txt +1 -0
  230. mcp_coder-0.1.6/tach.toml +457 -0
  231. mcp_coder-0.1.6/tests/README.md +85 -0
  232. mcp_coder-0.1.6/tests/__init__.py +1 -0
  233. mcp_coder-0.1.6/tests/checks/__init__.py +1 -0
  234. mcp_coder-0.1.6/tests/checks/test_branch_status.py +1633 -0
  235. mcp_coder-0.1.6/tests/checks/test_file_sizes.py +538 -0
  236. mcp_coder-0.1.6/tests/cli/__init__.py +1 -0
  237. mcp_coder-0.1.6/tests/cli/commands/__init__.py +1 -0
  238. mcp_coder-0.1.6/tests/cli/commands/conftest.py +53 -0
  239. mcp_coder-0.1.6/tests/cli/commands/coordinator/__init__.py +1 -0
  240. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_commands.py +309 -0
  241. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_core.py +982 -0
  242. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_integration.py +604 -0
  243. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_issue_stats.py +650 -0
  244. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_issue_stats_cli.py +289 -0
  245. mcp_coder-0.1.6/tests/cli/commands/coordinator/test_vscodeclaude_cli.py +439 -0
  246. mcp_coder-0.1.6/tests/cli/commands/test_check_branch_status.py +352 -0
  247. mcp_coder-0.1.6/tests/cli/commands/test_check_branch_status_auto_fixes.py +396 -0
  248. mcp_coder-0.1.6/tests/cli/commands/test_check_branch_status_ci_waiting.py +218 -0
  249. mcp_coder-0.1.6/tests/cli/commands/test_check_branch_status_cli_integration.py +232 -0
  250. mcp_coder-0.1.6/tests/cli/commands/test_check_file_sizes.py +663 -0
  251. mcp_coder-0.1.6/tests/cli/commands/test_commit.py +897 -0
  252. mcp_coder-0.1.6/tests/cli/commands/test_create_plan.py +207 -0
  253. mcp_coder-0.1.6/tests/cli/commands/test_create_pr.py +508 -0
  254. mcp_coder-0.1.6/tests/cli/commands/test_define_labels.py +342 -0
  255. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_config.py +80 -0
  256. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_execute.py +340 -0
  257. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_format.py +137 -0
  258. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_label_changes.py +408 -0
  259. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_staleness.py +188 -0
  260. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_status.py +327 -0
  261. mcp_coder-0.1.6/tests/cli/commands/test_define_labels_validate.py +274 -0
  262. mcp_coder-0.1.6/tests/cli/commands/test_gh_tool.py +276 -0
  263. mcp_coder-0.1.6/tests/cli/commands/test_git_tool.py +401 -0
  264. mcp_coder-0.1.6/tests/cli/commands/test_git_tool_compact_diff.py +453 -0
  265. mcp_coder-0.1.6/tests/cli/commands/test_help.py +118 -0
  266. mcp_coder-0.1.6/tests/cli/commands/test_implement.py +481 -0
  267. mcp_coder-0.1.6/tests/cli/commands/test_prompt.py +1019 -0
  268. mcp_coder-0.1.6/tests/cli/commands/test_session_priority.py +187 -0
  269. mcp_coder-0.1.6/tests/cli/commands/test_set_status.py +563 -0
  270. mcp_coder-0.1.6/tests/cli/commands/test_verify.py +43 -0
  271. mcp_coder-0.1.6/tests/cli/commands/test_verify_command.py +120 -0
  272. mcp_coder-0.1.6/tests/cli/commands/test_verify_integration.py +434 -0
  273. mcp_coder-0.1.6/tests/cli/commands/test_verify_orchestration.py +459 -0
  274. mcp_coder-0.1.6/tests/cli/commands/test_verify_parser.py +55 -0
  275. mcp_coder-0.1.6/tests/cli/test_main.py +743 -0
  276. mcp_coder-0.1.6/tests/cli/test_utils.py +244 -0
  277. mcp_coder-0.1.6/tests/cli/test_utils_status_symbols.py +35 -0
  278. mcp_coder-0.1.6/tests/config/test_mlflow_config.py +178 -0
  279. mcp_coder-0.1.6/tests/conftest.py +379 -0
  280. mcp_coder-0.1.6/tests/formatters/__init__.py +0 -0
  281. mcp_coder-0.1.6/tests/formatters/test_black_formatter.py +469 -0
  282. mcp_coder-0.1.6/tests/formatters/test_config_reader.py +118 -0
  283. mcp_coder-0.1.6/tests/formatters/test_debug.py +14 -0
  284. mcp_coder-0.1.6/tests/formatters/test_integration.py +412 -0
  285. mcp_coder-0.1.6/tests/formatters/test_isort_formatter.py +493 -0
  286. mcp_coder-0.1.6/tests/formatters/test_main_api.py +315 -0
  287. mcp_coder-0.1.6/tests/formatters/test_models.py +79 -0
  288. mcp_coder-0.1.6/tests/formatters/test_utils.py +166 -0
  289. mcp_coder-0.1.6/tests/integration/test_execution_dir_integration.py +607 -0
  290. mcp_coder-0.1.6/tests/integration/test_mcp_config_integration.py +402 -0
  291. mcp_coder-0.1.6/tests/integration/test_mlflow_integration.py +452 -0
  292. mcp_coder-0.1.6/tests/llm/__init__.py +1 -0
  293. mcp_coder-0.1.6/tests/llm/formatting/__init__.py +1 -0
  294. mcp_coder-0.1.6/tests/llm/formatting/test_formatters.py +332 -0
  295. mcp_coder-0.1.6/tests/llm/formatting/test_sdk_serialization.py +285 -0
  296. mcp_coder-0.1.6/tests/llm/providers/__init__.py +1 -0
  297. mcp_coder-0.1.6/tests/llm/providers/claude/__init__.py +1 -0
  298. mcp_coder-0.1.6/tests/llm/providers/claude/conftest.py +62 -0
  299. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_cli_stream_integration.py +196 -0
  300. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_cli_stream_parsing.py +261 -0
  301. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_cli_verification.py +172 -0
  302. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_cli_wrappers.py +236 -0
  303. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_code_api.py +666 -0
  304. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_code_api_error_handling.py +344 -0
  305. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_code_cli.py +417 -0
  306. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_executable_finder.py +304 -0
  307. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_integration.py +193 -0
  308. mcp_coder-0.1.6/tests/llm/providers/claude/test_claude_mcp_config.py +159 -0
  309. mcp_coder-0.1.6/tests/llm/providers/claude/test_llm_sessions.py +503 -0
  310. mcp_coder-0.1.6/tests/llm/providers/claude/test_logging_utils.py +317 -0
  311. mcp_coder-0.1.6/tests/llm/providers/langchain/__init__.py +0 -0
  312. mcp_coder-0.1.6/tests/llm/providers/langchain/conftest.py +117 -0
  313. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_agent.py +697 -0
  314. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_agent_mode.py +376 -0
  315. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_anthropic.py +83 -0
  316. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_coverage_gaps.py +441 -0
  317. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_gemini.py +87 -0
  318. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_integration.py +223 -0
  319. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_models.py +240 -0
  320. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_openai.py +112 -0
  321. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_provider.py +403 -0
  322. mcp_coder-0.1.6/tests/llm/providers/langchain/test_langchain_verification.py +478 -0
  323. mcp_coder-0.1.6/tests/llm/providers/test_provider_structure.py +58 -0
  324. mcp_coder-0.1.6/tests/llm/session/__init__.py +1 -0
  325. mcp_coder-0.1.6/tests/llm/session/test_resolver.py +141 -0
  326. mcp_coder-0.1.6/tests/llm/storage/__init__.py +1 -0
  327. mcp_coder-0.1.6/tests/llm/storage/test_session_finder.py +275 -0
  328. mcp_coder-0.1.6/tests/llm/storage/test_session_storage.py +373 -0
  329. mcp_coder-0.1.6/tests/llm/test_env.py +273 -0
  330. mcp_coder-0.1.6/tests/llm/test_interface.py +851 -0
  331. mcp_coder-0.1.6/tests/llm/test_mlflow_logger.py +484 -0
  332. mcp_coder-0.1.6/tests/llm/test_mlflow_verify.py +295 -0
  333. mcp_coder-0.1.6/tests/llm/test_module_structure.py +80 -0
  334. mcp_coder-0.1.6/tests/llm/test_serialization.py +131 -0
  335. mcp_coder-0.1.6/tests/llm/test_types.py +83 -0
  336. mcp_coder-0.1.6/tests/test_input_validation.py +90 -0
  337. mcp_coder-0.1.6/tests/test_integration_task_tracker.py +54 -0
  338. mcp_coder-0.1.6/tests/test_mcp_tools_py_integration.py +99 -0
  339. mcp_coder-0.1.6/tests/test_module_exports.py +167 -0
  340. mcp_coder-0.1.6/tests/test_module_integration.py +188 -0
  341. mcp_coder-0.1.6/tests/test_prompt_manager.py +744 -0
  342. mcp_coder-0.1.6/tests/utils/__init__.py +1 -0
  343. mcp_coder-0.1.6/tests/utils/conftest.py +141 -0
  344. mcp_coder-0.1.6/tests/utils/git_operations/__init__.py +1 -0
  345. mcp_coder-0.1.6/tests/utils/git_operations/conftest.py +100 -0
  346. mcp_coder-0.1.6/tests/utils/git_operations/test_branches.py +194 -0
  347. mcp_coder-0.1.6/tests/utils/git_operations/test_commits.py +115 -0
  348. mcp_coder-0.1.6/tests/utils/git_operations/test_compact_diffs.py +682 -0
  349. mcp_coder-0.1.6/tests/utils/git_operations/test_diffs.py +171 -0
  350. mcp_coder-0.1.6/tests/utils/git_operations/test_file_tracking.py +53 -0
  351. mcp_coder-0.1.6/tests/utils/git_operations/test_readers.py +660 -0
  352. mcp_coder-0.1.6/tests/utils/git_operations/test_remotes.py +335 -0
  353. mcp_coder-0.1.6/tests/utils/git_operations/test_staging.py +60 -0
  354. mcp_coder-0.1.6/tests/utils/github_operations/__init__.py +1 -0
  355. mcp_coder-0.1.6/tests/utils/github_operations/conftest.py +150 -0
  356. mcp_coder-0.1.6/tests/utils/github_operations/issues/__init__.py +1 -0
  357. mcp_coder-0.1.6/tests/utils/github_operations/issues/test_branch_resolution.py +1102 -0
  358. mcp_coder-0.1.6/tests/utils/github_operations/test_base_manager.py +935 -0
  359. mcp_coder-0.1.6/tests/utils/github_operations/test_ci_results_manager_aggregation.py +300 -0
  360. mcp_coder-0.1.6/tests/utils/github_operations/test_ci_results_manager_artifacts.py +286 -0
  361. mcp_coder-0.1.6/tests/utils/github_operations/test_ci_results_manager_foundation.py +181 -0
  362. mcp_coder-0.1.6/tests/utils/github_operations/test_ci_results_manager_logs.py +173 -0
  363. mcp_coder-0.1.6/tests/utils/github_operations/test_ci_results_manager_status.py +531 -0
  364. mcp_coder-0.1.6/tests/utils/github_operations/test_github_integration_smoke.py +298 -0
  365. mcp_coder-0.1.6/tests/utils/github_operations/test_github_utils.py +861 -0
  366. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_branch_manager.py +1223 -0
  367. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_branch_manager_integration.py +385 -0
  368. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_cache.py +1658 -0
  369. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_comments.py +198 -0
  370. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_core.py +481 -0
  371. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_events.py +118 -0
  372. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_integration.py +421 -0
  373. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_label_update.py +795 -0
  374. mcp_coder-0.1.6/tests/utils/github_operations/test_issue_manager_labels.py +176 -0
  375. mcp_coder-0.1.6/tests/utils/github_operations/test_labels_manager.py +580 -0
  376. mcp_coder-0.1.6/tests/utils/github_operations/test_pr_manager.py +666 -0
  377. mcp_coder-0.1.6/tests/utils/github_operations/test_repo_identifier.py +98 -0
  378. mcp_coder-0.1.6/tests/utils/jenkins_operations/__init__.py +1 -0
  379. mcp_coder-0.1.6/tests/utils/jenkins_operations/conftest.py +12 -0
  380. mcp_coder-0.1.6/tests/utils/jenkins_operations/test_client.py +458 -0
  381. mcp_coder-0.1.6/tests/utils/jenkins_operations/test_integration.py +148 -0
  382. mcp_coder-0.1.6/tests/utils/jenkins_operations/test_models.py +118 -0
  383. mcp_coder-0.1.6/tests/utils/test_clipboard.py +275 -0
  384. mcp_coder-0.1.6/tests/utils/test_data_files.py +203 -0
  385. mcp_coder-0.1.6/tests/utils/test_folder_deletion.py +752 -0
  386. mcp_coder-0.1.6/tests/utils/test_git_encoding_stress.py +336 -0
  387. mcp_coder-0.1.6/tests/utils/test_git_utils.py +118 -0
  388. mcp_coder-0.1.6/tests/utils/test_log_utils.py +712 -0
  389. mcp_coder-0.1.6/tests/utils/test_subprocess_runner.py +99 -0
  390. mcp_coder-0.1.6/tests/utils/test_timezone_utils.py +209 -0
  391. mcp_coder-0.1.6/tests/utils/test_user_config.py +679 -0
  392. mcp_coder-0.1.6/tests/utils/test_user_config_integration.py +289 -0
  393. mcp_coder-0.1.6/tests/workflow_utils/__init__.py +1 -0
  394. mcp_coder-0.1.6/tests/workflow_utils/test_base_branch.py +369 -0
  395. mcp_coder-0.1.6/tests/workflow_utils/test_commit_operations.py +862 -0
  396. mcp_coder-0.1.6/tests/workflow_utils/test_data/case_insensitive.md +16 -0
  397. mcp_coder-0.1.6/tests/workflow_utils/test_data/empty_tracker.md +6 -0
  398. mcp_coder-0.1.6/tests/workflow_utils/test_data/missing_section.md +15 -0
  399. mcp_coder-0.1.6/tests/workflow_utils/test_data/real_world_tracker.md +63 -0
  400. mcp_coder-0.1.6/tests/workflow_utils/test_data/valid_tracker.md +33 -0
  401. mcp_coder-0.1.6/tests/workflow_utils/test_task_tracker.py +1674 -0
  402. mcp_coder-0.1.6/tests/workflows/__init__.py +1 -0
  403. mcp_coder-0.1.6/tests/workflows/config/__init__.py +1 -0
  404. mcp_coder-0.1.6/tests/workflows/config/test_labels.json +33 -0
  405. mcp_coder-0.1.6/tests/workflows/create_plan/__init__.py +1 -0
  406. mcp_coder-0.1.6/tests/workflows/create_plan/test_argument_parsing.py +135 -0
  407. mcp_coder-0.1.6/tests/workflows/create_plan/test_branch_management.py +278 -0
  408. mcp_coder-0.1.6/tests/workflows/create_plan/test_main.py +562 -0
  409. mcp_coder-0.1.6/tests/workflows/create_plan/test_prerequisites.py +439 -0
  410. mcp_coder-0.1.6/tests/workflows/create_plan/test_prompt_execution.py +491 -0
  411. mcp_coder-0.1.6/tests/workflows/create_pr/__init__.py +1 -0
  412. mcp_coder-0.1.6/tests/workflows/create_pr/test_file_operations.py +249 -0
  413. mcp_coder-0.1.6/tests/workflows/create_pr/test_generation.py +250 -0
  414. mcp_coder-0.1.6/tests/workflows/create_pr/test_parsing.py +148 -0
  415. mcp_coder-0.1.6/tests/workflows/create_pr/test_prerequisites.py +199 -0
  416. mcp_coder-0.1.6/tests/workflows/create_pr/test_repository.py +312 -0
  417. mcp_coder-0.1.6/tests/workflows/create_pr/test_workflow.py +307 -0
  418. mcp_coder-0.1.6/tests/workflows/implement/__init__.py +1 -0
  419. mcp_coder-0.1.6/tests/workflows/implement/test_ci_check.py +551 -0
  420. mcp_coder-0.1.6/tests/workflows/implement/test_core.py +1410 -0
  421. mcp_coder-0.1.6/tests/workflows/implement/test_prerequisites.py +403 -0
  422. mcp_coder-0.1.6/tests/workflows/implement/test_task_processing.py +759 -0
  423. mcp_coder-0.1.6/tests/workflows/test_create_pr_integration.py +411 -0
  424. mcp_coder-0.1.6/tests/workflows/test_label_config.py +169 -0
  425. mcp_coder-0.1.6/tests/workflows/vscodeclaude/__init__.py +1 -0
  426. mcp_coder-0.1.6/tests/workflows/vscodeclaude/conftest.py +46 -0
  427. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_cache_aware.py +188 -0
  428. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_cleanup.py +1831 -0
  429. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_closed_issues_integration.py +480 -0
  430. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_config.py +140 -0
  431. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_folder_git_status.py +145 -0
  432. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_helpers.py +177 -0
  433. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_issues.py +1172 -0
  434. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_launch_vscode_env_vars.py +209 -0
  435. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_next_action.py +171 -0
  436. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_orchestrator_cache.py +503 -0
  437. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_orchestrator_documentation.py +35 -0
  438. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_orchestrator_launch.py +636 -0
  439. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_orchestrator_regenerate.py +203 -0
  440. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_orchestrator_sessions.py +2233 -0
  441. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_sessions.py +830 -0
  442. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_startup_script_mcp_coder_path.py +130 -0
  443. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_status_display.py +1397 -0
  444. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_templates.py +67 -0
  445. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_types.py +157 -0
  446. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_workspace.py +346 -0
  447. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_workspace_git.py +213 -0
  448. mcp_coder-0.1.6/tests/workflows/vscodeclaude/test_workspace_startup_script.py +505 -0
  449. mcp_coder-0.1.6/tools/__init__.py +1 -0
  450. mcp_coder-0.1.6/tools/black.bat +1 -0
  451. mcp_coder-0.1.6/tools/check_version.bat +45 -0
  452. mcp_coder-0.1.6/tools/checks2clipboard.bat +182 -0
  453. mcp_coder-0.1.6/tools/commit_summary.bat +73 -0
  454. mcp_coder-0.1.6/tools/debug_vscode_sessions.py +182 -0
  455. mcp_coder-0.1.6/tools/debug_windows.py +81 -0
  456. mcp_coder-0.1.6/tools/docstring_stats.sh +11 -0
  457. mcp_coder-0.1.6/tools/format_all.bat +3 -0
  458. mcp_coder-0.1.6/tools/format_all.sh +17 -0
  459. mcp_coder-0.1.6/tools/get_latest_mlflow_db_entries.py +377 -0
  460. mcp_coder-0.1.6/tools/get_mlflow_config.py +128 -0
  461. mcp_coder-0.1.6/tools/get_pytest_performance_stats.bat +144 -0
  462. mcp_coder-0.1.6/tools/get_recent_mlflow_runs.py +202 -0
  463. mcp_coder-0.1.6/tools/iSort.bat +4 -0
  464. mcp_coder-0.1.6/tools/lint_imports.bat +15 -0
  465. mcp_coder-0.1.6/tools/lint_imports.sh +12 -0
  466. mcp_coder-0.1.6/tools/mypy.bat +2 -0
  467. mcp_coder-0.1.6/tools/pr_review.bat +127 -0
  468. mcp_coder-0.1.6/tools/pr_review_highlevel.bat +133 -0
  469. mcp_coder-0.1.6/tools/pr_summary.bat +122 -0
  470. mcp_coder-0.1.6/tools/pycycle_check.bat +16 -0
  471. mcp_coder-0.1.6/tools/pycycle_check.sh +13 -0
  472. mcp_coder-0.1.6/tools/pydeps_graph.bat +48 -0
  473. mcp_coder-0.1.6/tools/pydeps_graph.sh +52 -0
  474. mcp_coder-0.1.6/tools/pylint_check_for_errors.bat +1 -0
  475. mcp_coder-0.1.6/tools/reinstall.bat +134 -0
  476. mcp_coder-0.1.6/tools/ruff_check.bat +14 -0
  477. mcp_coder-0.1.6/tools/ruff_check.sh +12 -0
  478. mcp_coder-0.1.6/tools/safe_delete_folder.py +871 -0
  479. mcp_coder-0.1.6/tools/start_mlflow.bat +64 -0
  480. mcp_coder-0.1.6/tools/start_mlflow.sh +51 -0
  481. mcp_coder-0.1.6/tools/tach_check.bat +16 -0
  482. mcp_coder-0.1.6/tools/tach_check.sh +13 -0
  483. mcp_coder-0.1.6/tools/tach_docs.bat +12 -0
  484. mcp_coder-0.1.6/tools/tach_docs.py +410 -0
  485. mcp_coder-0.1.6/tools/tach_docs.sh +12 -0
  486. mcp_coder-0.1.6/tools/test_profiler.bat +68 -0
  487. mcp_coder-0.1.6/tools/test_profiler.md +204 -0
  488. mcp_coder-0.1.6/tools/test_profiler_generate_only.bat +28 -0
  489. mcp_coder-0.1.6/tools/test_profiler_plugin/__init__.py +129 -0
  490. mcp_coder-0.1.6/tools/test_profiler_plugin/generate_report.py +232 -0
  491. mcp_coder-0.1.6/tools/test_prompt.bat +97 -0
  492. mcp_coder-0.1.6/tools/vulture_check.bat +14 -0
  493. mcp_coder-0.1.6/tools/vulture_check.sh +12 -0
  494. mcp_coder-0.1.6/vulture_whitelist.py +204 -0
@@ -0,0 +1,245 @@
1
+ --- This file is used by Claude Code - similar to a system prompt. ---
2
+
3
+ # ⚠️ MANDATORY INSTRUCTIONS - MUST BE FOLLOWED ⚠️
4
+
5
+ **THESE INSTRUCTIONS OVERRIDE ALL DEFAULT BEHAVIORS - NO EXCEPTIONS**
6
+
7
+ ## 🔴 CRITICAL: ALWAYS Use MCP Tools
8
+
9
+ **MANDATORY**: You MUST use MCP tools for ALL operations when available. DO NOT use standard Claude tools.
10
+
11
+ **BEFORE EVERY TOOL USE, ASK: "Does an MCP version exist?"**
12
+
13
+ ### Tool Mapping Reference
14
+
15
+ | Task | ❌ NEVER USE | ✅ USE MCP TOOL |
16
+ |------|--------------|------------------|
17
+ | Read file | `Read()` | `mcp__workspace__read_file()` |
18
+ | Edit file | `Edit()` | `mcp__workspace__edit_file()` |
19
+ | Write file | `Write()` | `mcp__workspace__save_file()` |
20
+ | Run pytest | `Bash("pytest ...")` | `mcp__tools-py__run_pytest_check()` |
21
+ | Run pylint | `Bash("pylint ...")` | `mcp__tools-py__run_pylint_check()` |
22
+ | Run mypy | `Bash("mypy ...")` | `mcp__tools-py__run_mypy_check()` |
23
+ | Run ruff | `Bash("ruff ...")` | ✅ `Bash("./tools/ruff_check.sh")` |
24
+ | Git operations | ✅ `Bash("git ...")` | ✅ `Bash("git ...")` (allowed) |
25
+
26
+ ## 🔴 CRITICAL: Code Quality Requirements
27
+
28
+ **MANDATORY**: After making ANY code changes (after EACH edit), you MUST run ALL THREE code quality checks using the EXACT MCP tool names below:
29
+
30
+ ```
31
+ mcp__tools-py__run_pylint_check
32
+ mcp__tools-py__run_pytest_check
33
+ mcp__tools-py__run_mypy_check
34
+ ```
35
+
36
+ This runs:
37
+
38
+ - **Pylint** - Code quality and style analysis
39
+ - **Pytest** - All unit and integration tests
40
+ - **Mypy** - Static type checking
41
+
42
+ **⚠️ ALL CHECKS MUST PASS** - If ANY issues are found, you MUST fix them immediately before proceeding.
43
+
44
+ ### 📋 Ruff Docstring Checks
45
+
46
+ **MANDATORY**: Use the project's ruff script to check docstring linting:
47
+
48
+ ```bash
49
+ ./tools/ruff_check.sh
50
+ ```
51
+
52
+ Do NOT call `ruff` directly — always use the script in `tools/`.
53
+
54
+ ### 📋 Pytest Execution Requirements
55
+
56
+ **MANDATORY pytest parameters:**
57
+
58
+ - ALWAYS use `extra_args: ["-n", "auto"]` for parallel execution
59
+
60
+ **Available markers in pyproject.toml:**
61
+
62
+ - `git_integration`: File system git operations (repos, commits)
63
+ - `claude_api_integration`: Claude API tests
64
+ - `claude_cli_integration`: Claude CLI tests
65
+ - `formatter_integration`: Code formatter integration (black, isort)
66
+ - `github_integration`: GitHub API access
67
+
68
+ **RECOMMENDED USAGE:**
69
+
70
+ - **Fast unit tests (recommended)**: Use `-m` with `not` expressions to exclude slow integration tests
71
+ - **All tests**: Run without markers to include everything (slow!)
72
+ - **Specific integration tests**: Use specific `markers` parameter when testing integration functionality
73
+
74
+ **Examples:**
75
+
76
+ ```python
77
+ # RECOMMENDED: Fast unit tests (excludes all integration tests)
78
+ mcp__tools-py__run_pytest_check(extra_args=["-n", "auto", "-m", "not git_integration and not claude_cli_integration and not claude_api_integration and not formatter_integration and not github_integration and not langchain_integration"])
79
+
80
+ # All tests including slow integration tests (not recommended for regular development)
81
+ mcp__tools-py__run_pytest_check(extra_args=["-n", "auto"])
82
+
83
+ # Specific integration tests (only when needed)
84
+ mcp__tools-py__run_pytest_check(extra_args=["-n", "auto"], markers=["git_integration"])
85
+ mcp__tools-py__run_pytest_check(extra_args=["-n", "auto"], markers=["github_integration"])
86
+ ```
87
+
88
+ **Important:** Without the `-m "not ..."` exclusions, pytest runs ALL tests including slow integration tests that require external resources (git repos, network access, API tokens). For regular development, always use the exclusion pattern as shown in the first example above.
89
+
90
+ ## 📁 MANDATORY: File Access Tools
91
+
92
+ **YOU MUST USE THESE MCP TOOLS** for all file operations:
93
+
94
+ ```
95
+ mcp__workspace__get_reference_projects
96
+ mcp__workspace__list_reference_directory
97
+ mcp__workspace__read_reference_file
98
+ mcp__workspace__list_directory
99
+ mcp__workspace__read_file
100
+ mcp__workspace__save_file
101
+ mcp__workspace__append_file
102
+ mcp__workspace__delete_this_file
103
+ mcp__workspace__move_file
104
+ mcp__workspace__edit_file
105
+ ```
106
+
107
+ **⚠️ ABSOLUTELY FORBIDDEN:** Using `Read`, `Write`, `Edit`, `MultiEdit` tools when MCP filesystem tools are available.
108
+
109
+ ### Quick Examples
110
+
111
+ ```python
112
+ # ❌ WRONG - Standard tools
113
+ Read(file_path="src/example.py")
114
+ Edit(file_path="src/example.py", old_string="...", new_string="...")
115
+ Write(file_path="src/new.py", content="...")
116
+ Bash("pytest tests/")
117
+
118
+ # ✅ CORRECT - MCP tools
119
+ mcp__workspace__read_file(file_path="src/example.py")
120
+ mcp__workspace__edit_file(file_path="src/example.py", edits=[...])
121
+ mcp__workspace__save_file(file_path="src/new.py", content="...")
122
+ mcp__tools-py__run_pytest_check(extra_args=["-n", "auto"])
123
+ ```
124
+
125
+ **WHY MCP TOOLS ARE MANDATORY:**
126
+
127
+ - Proper security and access control
128
+ - Consistent error handling
129
+ - Better integration with the development environment
130
+ - Required for this project's architecture
131
+
132
+ ## ✍️ Writing Style
133
+
134
+ **Be concise.** Keep code comments, commit messages, documentation changes, and prompt additions short and direct. If one line works, don't use three.
135
+
136
+ ## 🚨 COMPLIANCE VERIFICATION
137
+
138
+ **Before completing ANY task, you MUST:**
139
+
140
+ 1. ✅ Confirm all code quality checks passed using MCP tools
141
+ 2. ✅ Verify you used MCP tools exclusively (NO `Bash` for code checks, NO `Read`/`Write`/`Edit` for files)
142
+ 3. ✅ Ensure no issues remain unresolved
143
+ 4. ✅ State explicitly: "All CLAUDE.md requirements followed"
144
+
145
+ ## 🔧 DEBUGGING AND TROUBLESHOOTING
146
+
147
+ **When tests fail or skip:**
148
+
149
+ - Use MCP pytest tool with verbose flags: `extra_args: ["-v", "-s", "--tb=short"]`
150
+ - For integration tests, check if they require external configuration (tokens, URLs)
151
+ - Never fall back to `Bash` commands - always investigate within MCP tools
152
+ - If MCP tools don't provide enough detail, ask user for guidance rather than using alternative tools
153
+
154
+ ## 🔧 MCP Server Issues
155
+
156
+ **IMMEDIATELY ALERT** if MCP tools are not accessible - this blocks all work until resolved.
157
+
158
+ ## 🔄 Git Operations
159
+
160
+ **MANDATORY: Before ANY commit:**
161
+
162
+ ```bash
163
+ # ALWAYS run format_all before committing
164
+ ./tools/format_all.sh
165
+
166
+ # Then verify formatting worked
167
+ git diff # Should show formatting changes if any
168
+ ```
169
+
170
+ **Format all code before committing:**
171
+
172
+ - Run `./tools/format_all.sh` to format with black and isort
173
+ - Review the changes to ensure they're formatting-only
174
+ - Stage the formatted files
175
+ - Then commit
176
+
177
+ **ALLOWED git operations via Bash tool:**
178
+
179
+ ```
180
+ git status
181
+ git diff
182
+ git commit
183
+ git log
184
+ git fetch
185
+ git ls-tree
186
+ ./tools/ruff_check.sh
187
+ ```
188
+
189
+ **⚠️ Bash discipline (applies to subagents too):**
190
+
191
+ - No `cd` prefix — the working directory is already correct.
192
+ - Stick to approved commands above. Avoid unapproved bash commands — they trigger user authorization prompts and interrupt the workflow.
193
+ - Do not chain approved commands with unapproved ones (e.g. `git status && echo "---" && git diff`). The `echo` makes the whole command unapproved. Run approved commands separately instead.
194
+
195
+ **Git commit message format:**
196
+
197
+ - Use standard commit message format without advertising footers
198
+ - Focus on clear, descriptive commit messages
199
+ - No required Claude Code attribution or links
200
+
201
+ ## 📏 File Size Check
202
+
203
+ Check for large files (>750 lines) that may impact LLM context:
204
+
205
+ ```bash
206
+ mcp-coder check file-size --max-lines 750
207
+ mcp-coder check branch-status --llm-truncate
208
+ ```
209
+
210
+ For guidance on splitting large files, see [Safe Refactoring Guide](../docs/processes-prompts/refactoring-guide.md).
211
+
212
+ ---
213
+
214
+ ## 📂 Execution Directory Flag
215
+
216
+ When working with mcp-coder, you may encounter `--execution-dir`:
217
+
218
+ **Purpose**: Controls where Claude subprocess executes (separate from project location)
219
+
220
+ **Usage**:
221
+
222
+ - Default: Uses shell's current working directory
223
+ - Explicit: `--execution-dir /path/to/execution/context`
224
+ - Relative: `--execution-dir ./subdir` (resolves to CWD)
225
+
226
+ **Common Scenario**:
227
+ User has workspace with `.mcp.json` config, wants to work on separate project:
228
+
229
+ ```bash
230
+ cd /home/user/workspace
231
+ mcp-coder implement --project-dir /path/to/project
232
+ # Claude runs in workspace, modifies project
233
+ ```
234
+
235
+ **When Implementing**:
236
+
237
+ - Respect both `project_dir` and `execution_dir` parameters
238
+ - Use `project_dir` for file operations and git
239
+ - Use `execution_dir` for config discovery
240
+ - Never conflate the two concepts
241
+
242
+ **Key Distinction**:
243
+
244
+ - `execution_dir`: Where Claude subprocess runs (determines config discovery location)
245
+ - `project_dir`: Where source code lives (determines git operations and file modifications)
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: commit-pusher
3
+ description: Commits and pushes code changes with pre-approved git operations
4
+ tools:
5
+ - Bash
6
+ - Skill
7
+ permissionMode: bypassPermissions
8
+ ---
9
+
10
+ # Commit-Pusher Agent
11
+
12
+ You are a commit and push specialist. Invoke the /commit_push skill.
13
+
14
+ Before committing, verify that only the expected files (as listed in your launch prompt) are modified. If unexpected files are changed, stop and report back.
15
+
16
+ ## Why `bypassPermissions`?
17
+
18
+ This agent uses `bypassPermissions` so that git add/commit/push commands are auto-approved
19
+ without adding them to the global permissions allow list. This is intentional:
20
+
21
+ - The **main conversation** must NOT have git add/commit/push permissions
22
+ - Only this agent (reachable via `/commit_push` skill) should be able to commit
23
+ - `acceptEdits` only auto-approves file edit tools (Edit/Write), not Bash commands
24
+ - `bypassPermissions` auto-approves all tool calls within this agent's scope
@@ -0,0 +1,57 @@
1
+ ---
2
+ allowed-tools: Bash(mcp-coder check branch-status *)
3
+ workflow-stage: quality-check
4
+ suggested-next: commit_push, rebase
5
+ ---
6
+
7
+ # Check Branch Status
8
+
9
+ Check comprehensive branch readiness including CI status, rebase requirements, task completion, and GitHub labels.
10
+
11
+ ## Usage
12
+
13
+ Call the underlying CLI command with LLM-optimized output and CI waiting:
14
+
15
+ ```bash
16
+ mcp-coder check branch-status --ci-timeout 180 --llm-truncate
17
+ ```
18
+
19
+ ## What This Command Does
20
+
21
+ 1. **CI Status Check**: Analyzes latest workflow run and retrieves error logs
22
+ 2. **Rebase Detection**: Checks if branch needs rebasing onto main
23
+ 3. **Task Validation**: Verifies all implementation tasks are complete
24
+ 4. **GitHub Labels**: Reports current workflow status label
25
+ 5. **Recommendations**: Provides actionable next steps
26
+
27
+ ## Follow-Up Actions
28
+
29
+ Based on the status report, use these commands for next steps:
30
+
31
+ | Status | Action |
32
+ |--------|--------|
33
+ | CI failures | Fix the issues shown in the CI error details |
34
+ | Rebase needed | Run `/rebase` to rebase onto base branch with conflict resolution |
35
+ | Tasks incomplete | Complete remaining tasks manually |
36
+ | CI green + tasks done | Run `/commit_push` to commit and push changes |
37
+ | Ready to merge | Create PR or merge via GitHub |
38
+
39
+ ## Output Format
40
+
41
+ LLM-optimized output with:
42
+ - CI error logs for failed jobs (truncated to ~300 lines total)
43
+ - Complete status information for all other components
44
+ - Clear status indicators
45
+ - Actionable recommendations
46
+
47
+ ## Integration
48
+
49
+ This slash command enables interactive workflow management:
50
+ - Check readiness before creating PRs
51
+ - Diagnose CI failures
52
+ - Validate task completion
53
+ - Identify when rebase is needed (then use `/rebase`)
54
+
55
+ ## Rationale
56
+
57
+ **Rationale**: LLM-driven context benefits from waiting for complete results. The 180-second timeout provides a balance between responsiveness and allowing typical CI runs to complete. No `--fix` by default to let LLM analyze failures and suggest targeted fixes.
@@ -0,0 +1,40 @@
1
+ ---
2
+ allowed-tools: Bash(git status *), Bash(git diff *), Bash(git add *), Bash(git commit *), Bash(git push *), Bash(git log *), Bash(./tools/format_all.sh), Bash(tools/format_all.bat), Read, Glob, Grep
3
+ workflow-stage: utility
4
+ suggested-next: (context-dependent)
5
+ ---
6
+
7
+ # Commit and Push Changes
8
+
9
+ Follow this process to commit and push your changes:
10
+
11
+ ## 1. Format Code
12
+ ```bash
13
+ ./tools/format_all.sh
14
+ ```
15
+
16
+ ## 2. Review Changes
17
+ ```bash
18
+ git status
19
+ git diff
20
+ ```
21
+
22
+ ## 3. Stage Changes
23
+ Stage all relevant changes (exclude any files that shouldn't be committed).
24
+
25
+ ## 4. Commit
26
+ Create a commit with a clear, conventional commit message:
27
+ - Use format: `type(scope): description`
28
+ - Types: feat, fix, docs, style, refactor, test, chore
29
+ - Keep summary under 50 characters
30
+ - **No Claude Code footer or attribution in commit message**
31
+
32
+ ## 5. Push
33
+ ```bash
34
+ git push
35
+ ```
36
+
37
+ If the branch doesn't exist on remote yet:
38
+ ```bash
39
+ git push -u origin HEAD
40
+ ```
@@ -0,0 +1,16 @@
1
+ ---
2
+ workflow-stage: utility
3
+ suggested-next: (context-dependent)
4
+ ---
5
+
6
+ # Step-by-step Discussion
7
+
8
+ Interactively walk through all open suggestions, questions, and proposed changes one by one.
9
+
10
+ Can we go through all open suggested changes and questions step by step?
11
+ You explain, ask and I answer until we discussed all topics?
12
+ Please offer, whenever possible, simple options like
13
+ - A
14
+ - B
15
+ - C
16
+ Always just ask ONE question
@@ -0,0 +1,20 @@
1
+ ---
2
+ allowed-tools: Bash(mcp-coder set-status *)
3
+ workflow-stage: code-review
4
+ suggested-next: (bot runs create_pr) -> merge in GitHub
5
+ ---
6
+
7
+ # Approve Implementation
8
+
9
+ Approve the implementation and transition the issue to PR-ready state.
10
+
11
+ **Instructions:**
12
+ 1. Run the set-status command to update the issue label:
13
+ ```bash
14
+ mcp-coder set-status status-08:ready-pr
15
+ ```
16
+
17
+ 2. Confirm the status change was successful.
18
+ **Note:** If the command fails, report the error to the user. Do not use `--force` unless explicitly asked.
19
+
20
+ **Effect:** Changes issue status from `status-07:code-review` to `status-08:ready-pr`.
@@ -0,0 +1,52 @@
1
+ ---
2
+ workflow-stage: utility
3
+ suggested-next: implementation_review or implementation_review_supervisor
4
+ ---
5
+
6
+ # Implementation Finalise
7
+
8
+ Complete any remaining unchecked tasks in the task tracker before transitioning to code review.
9
+
10
+ ## Process
11
+
12
+ ### 1. Read Task Tracker
13
+
14
+ Read `pr_info/TASK_TRACKER.md` and identify all unchecked tasks (`- [ ]`).
15
+
16
+ If all tasks are already checked (`- [x]`), report that no finalisation is needed and exit.
17
+
18
+ ### 2. Process Each Unchecked Task
19
+
20
+ For each unchecked task:
21
+
22
+ #### Commit Message Tasks
23
+
24
+ If the task contains "commit message" (case-insensitive):
25
+
26
+ - if the tasks before are already done, ignore this task by marking it as done `[x]`
27
+
28
+ #### Other Tasks
29
+
30
+ - Check `pr_info/steps/` for related step files that provide context
31
+ - If step files don't exist, analyse based on task name and codebase
32
+ - Verify if the task is already complete
33
+ - If not complete: implement the required work
34
+ - If complete or successfully implemented: mark as `[x]`
35
+ - If unable to complete: DO NOT mark as done - explain the issue
36
+
37
+ ### 3. Quality Checks (If Code Changed)
38
+
39
+ If any code changes were made during this process:
40
+
41
+ - Run pylint checks using the MCP server (fix all errors)
42
+ - Run pytest checks using the MCP server (fix all failures)
43
+ - Run mypy checks using the MCP server (fix all type errors)
44
+
45
+ ## Output
46
+
47
+ Report:
48
+
49
+ 1. Which tasks were processed
50
+ 2. Which tasks were marked complete
51
+ 3. Any issues encountered
52
+ 4. Summarize the changes in a commit message and report it
@@ -0,0 +1,34 @@
1
+ ---
2
+ allowed-tools: Bash(mcp-coder set-status *)
3
+ workflow-stage: code-review
4
+ suggested-next: (bot runs implement) -> /clear -> implementation_review or implementation_review_supervisor
5
+ ---
6
+
7
+ # Return to plan-ready after major review issues
8
+
9
+ Transitions the issue back to `plan-ready` status for re-implementation when code review identifies major issues that cannot be fixed with minor changes.
10
+
11
+ ## When to Use
12
+
13
+ | Situation | Action |
14
+ |-----------|--------|
15
+ | Minor fixes | Fix directly, re-run `/implementation_review` or `/implementation_review_supervisor` |
16
+ | **Major issues** | **This command** (after `/implementation_new_tasks` + `/commit_push`) |
17
+ | Approved | `/implementation_approve` |
18
+
19
+ ## Prerequisites
20
+
21
+ - New implementation steps created (`/implementation_new_tasks`)
22
+ - Changes committed and pushed (`/commit_push`)
23
+
24
+ ## Instructions
25
+
26
+ ```bash
27
+ mcp-coder set-status status-05:plan-ready
28
+ ```
29
+
30
+ Confirm the status change was successful. If it fails, report the error. Do not use `--force` unless explicitly asked.
31
+
32
+ ## Next Steps
33
+
34
+ Run `mcp-coder implement` to process the new steps, then `/implementation_review` or `/implementation_review_supervisor`.
@@ -0,0 +1,31 @@
1
+ ---
2
+ workflow-stage: code-review
3
+ suggested-next: commit_push -> implementation_needs_rework
4
+ ---
5
+
6
+ # Create Further Implementation Tasks
7
+
8
+ Append new implementation tasks to the project plan after code review identified areas needing additional work.
9
+
10
+ ## Instructions
11
+
12
+ Please expand the **implementation plan** stored under `pr_info/steps`
13
+ Update the `pr_info/steps/Decisions.md` with the decisions we took.
14
+ Please create additional self-contained steps (`pr_info/steps/step_1.md`, `pr_info/steps/step_2.md`, etc.).
15
+ Please update the **summary** (`pr_info/steps/summary.md`).
16
+
17
+ ### Requirements for the new implementation steps:
18
+ - Follow **Test-Driven Development** where applicable.
19
+ Each step should have its own test implementation followed by related functionality implementation.
20
+ - Each step must include a **clear LLM prompt** that references the summary and that specific step
21
+ - Apply **KISS principle** - minimize complexity, maximize maintainability
22
+ - Keep code changes minimal and follow best practices
23
+
24
+ ### Each Step Must Specify:
25
+ - **WHERE**: File paths and module structure
26
+ - **WHAT**: Main functions with signatures
27
+ - **HOW**: Integration points (decorators, imports, etc.)
28
+ - **ALGORITHM**: 5-6 line pseudocode for core logic (if any)
29
+ - **DATA**: Return values and data structures
30
+
31
+ Please also update the task tracker (`pr_info/TASK_TRACKER.md`).
@@ -0,0 +1,47 @@
1
+ ---
2
+ allowed-tools: Bash(git fetch *), Bash(git status *), Bash(git diff *), Bash(mcp-coder git-tool compact-diff *), Bash(mcp-coder check branch-status *), Read, Glob, Grep
3
+ workflow-stage: code-review
4
+ suggested-next:
5
+ - if incomplete tasks found _> implementation_finalise
6
+ - discuss -> commit_push -> implementation_approve
7
+ - discuss -> implementation_new_tasks -> commit_push -> implementation_needs_rework
8
+ ---
9
+
10
+ # Implementation Review (Code Review)
11
+
12
+ **First, ensure we're up to date:**
13
+ ```bash
14
+ git fetch
15
+ git status
16
+ mcp-coder check branch-status --llm-truncate
17
+ ```
18
+
19
+ Confirm and display the current feature branch name.
20
+
21
+ ---
22
+
23
+ **Then run the code review:**
24
+
25
+ ## Code Review Request
26
+
27
+ Run this command to get the changes to review:
28
+ ```bash
29
+ mcp-coder git-tool compact-diff
30
+ ```
31
+
32
+ No need to run all checks; do not use pylint warnings. Feel free to further analyse any mentioned files and/or the file structure.
33
+
34
+ ### Focus Areas:
35
+ - Logic errors or bugs
36
+ - Tests for `__main__` functions should be removed (not needed)
37
+ - Unnecessary debug code or print statements
38
+ - Code that could break existing functionality
39
+ - Compliance with existing architecture principles, see `docs/architecture/architecture.md`
40
+
41
+ ### Output Format:
42
+ 1. **Summary** - What changed (1-2 sentences)
43
+ 2. **Critical Issues** - Must fix before merging
44
+ 3. **Suggestions** - Nice to have improvements
45
+ 4. **Good** - What works well
46
+
47
+ Do not perform any action. Just present the code review.
@@ -0,0 +1,56 @@
1
+ ---
2
+ workflow-stage: code-review
3
+ suggested-next: implementation_approve or implementation_needs_rework
4
+ ---
5
+
6
+ # Automated Implementation Review (Code Review) / using a supervisor agent
7
+
8
+ You are a technical lead supervising a software engineer (subagent). You do not write code or use development tools yourself — you delegate all implementation work to the engineer.
9
+
10
+ **Setup:**
11
+
12
+ 1. Read the knowledge base files:
13
+ - `.claude/knowledge_base/software_engineering_principles.md`
14
+ - `.claude/knowledge_base/python.md`
15
+ 2. Check for existing `pr_info/implementation_review_log_*.md` files to determine the next run number `{n}`.
16
+ 3. Create `pr_info/implementation_review_log_{n}.md` with a header.
17
+
18
+ **Your Role:**
19
+
20
+ - **Delegate**: Launch subagents to do the work. Do not execute code, read files, or run tests yourself.
21
+ - **Triage**: Assess each review finding against the knowledge base. Skip items that are out of scope, cosmetic, or speculative. Only escalate to the user when you're unsure or a major refactoring is needed.
22
+ - **Guide**: For each accepted finding, give the engineer a clear, specific instruction. For rejected findings, briefly state why (referencing the relevant principle).
23
+ - **Scope**: Stay close to the relevant issue. Don't let the review drift into unrelated improvements.
24
+
25
+ **Prerequisites:**
26
+
27
+ - **Code must exist.** If the review subagent reports there is no implementation diff (only plan files, docs, or pr_info/), stop immediately and tell the user there is nothing to review yet.
28
+
29
+ **Workflow:**
30
+
31
+ 1. Launch a new engineer subagent → `/implementation_review`
32
+ 2. `/discuss` the findings — triage each item, decide accept/skip
33
+ 3. Tell the engineer to implement the accepted changes. If a major refactoring is needed, stop and talk to the user.
34
+ 4. Update `pr_info/implementation_review_log_{n}.md` with this round's findings, decisions, and changes.
35
+ 5. Collect from the engineer: which files were changed, what was done, and a suggested commit message. Then launch the **commit agent** with this context. The commit agent should verify only the expected files are modified before committing.
36
+ 6. Launch the engineer → `/check_branch_status`
37
+ 7. **If no code was changed this round, go to step 8.** Otherwise, launch a fresh engineer subagent (new context) and repeat from step 1.
38
+ 8. Add a `## Final Status` section to the log. Commit and push the log via the **commit agent**.
39
+ 9. Launch the engineer → `/check_branch_status` to verify CI, rebase need, and overall readiness. Include the result in the completion message.
40
+ 10. Notify the user with a short completion message: rounds run, commits produced, whether any issues remain, and branch status (CI, rebase needed).
41
+
42
+ **Review Log Format** (each round appended to `pr_info/implementation_review_log_{n}.md`):
43
+
44
+ ```
45
+ ## Round {r} — {date}
46
+ **Findings**: {bulleted list of items from review}
47
+ **Decisions**: {accept/skip with brief reason for each}
48
+ **Changes**: {what was implemented}
49
+ **Status**: {committed / no changes needed}
50
+ ```
51
+
52
+ **Subagent instructions:** Remind subagents to follow CLAUDE.md (MCP tools, no `cd` prefix, approved commands only).
53
+
54
+ **Additional context:** For changes involving significant refactoring, also consult `.claude/knowledge_base/refactoring_principles.md`.
55
+
56
+ **Escalation:** If you have questions or are unsure about a significant technical decision, ask the user. For borderline Accept/Skip findings, default to better code quality rather than asking — only escalate when the fix has meaningful scope or risk, not for trivial changes in either direction.
@@ -0,0 +1,38 @@
1
+ ---
2
+ workflow-stage: issue-discussion
3
+ suggested-next: discuss -> issue_update -> issue_approve
4
+ ---
5
+
6
+ # Analyse GitHub Issue
7
+
8
+ Fetch a GitHub issue and analyze its requirements, feasibility, and potential implementation approaches.
9
+
10
+ ## Instructions
11
+
12
+ First, fetch the issue details:
13
+ ```bash
14
+ gh issue view $ARGUMENTS
15
+ ```
16
+
17
+ Then analyze the issue:
18
+
19
+ Can we discuss this requirement / implementation idea and its feasibility?
20
+ Please also look at the code base to understand the context (using the different tools with access to the project directory).
21
+ Do not provide code yet!
22
+
23
+ At the end of our discussion, I want to have an even better issue description.
24
+
25
+ **Base Branch Handling:**
26
+ If the issue contains a `### Base Branch` section:
27
+ - Display the specified base branch prominently
28
+ - Verify the branch exists using: `git ls-remote --heads origin <branch-name>`
29
+ - If the branch does NOT exist, show a clear warning:
30
+ "⚠️ Warning: Base branch 'X' does not exist on remote. Branch creation will fail."
31
+ - Continue with the analysis (non-blocking error)
32
+
33
+ **Focus on:**
34
+ - Understanding the problem/feature request
35
+ - Technical feasibility
36
+ - Potential implementation approaches
37
+ - Questions that need clarification
38
+ - Impact on existing code