@dreb/coding-agent 2.36.0 → 2.37.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.
@@ -18,7 +18,7 @@ This command is strictly for **planning**. Do NOT implement any code changes —
18
18
  4. **Safe git** — Never use `git add -A` or `git add .`. Stage files by name. Never stage secrets.
19
19
  5. **Task tracking** — Use the `tasks_update` tool to show progress through multi-step commands.
20
20
  6. **Project conventions** — Check for CLAUDE.md, AGENTS.md, .dreb/CONTEXT.md, and CONTRIBUTING.md before planning.
21
- 7. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks.
21
+ 7. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks. Write each body to a **unique per-invocation temp file** via `mktemp` (e.g. `GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"`) — never a fixed path like `/tmp/gh-comment.md`, which concurrent mach6 sessions on the same machine would clobber, cross-posting one session's body to another's PR/issue.
22
22
 
23
23
  ## Step 1: Set up task tracking
24
24
 
@@ -98,14 +98,15 @@ git commit --allow-empty -m "chore: open PR for issue <N>"
98
98
  git push -u origin feature/issue-<N>-<slug>
99
99
 
100
100
  # Open draft PR
101
- cat > /tmp/gh-body.md << 'MACH6_EOF'
101
+ GH_BODY="$(mktemp /tmp/gh-body.XXXXXX.md)"
102
+ cat > "$GH_BODY" << 'MACH6_EOF'
102
103
  Closes #<N>
103
104
 
104
105
  <brief description>
105
106
 
106
107
  Implementation plan posted as a comment below.
107
108
  MACH6_EOF
108
- gh pr create --draft --title "<title>" --body-file /tmp/gh-body.md
109
+ gh pr create --draft --title "<title>" --body-file "$GH_BODY"
109
110
  ```
110
111
 
111
112
  Update task: branch → completed, post → in_progress.
@@ -113,7 +114,8 @@ Update task: branch → completed, post → in_progress.
113
114
  ## Step 7: Post plan to PR
114
115
 
115
116
  ```bash
116
- cat > /tmp/gh-comment.md << 'MACH6_EOF'
117
+ GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"
118
+ cat > "$GH_BODY" << 'MACH6_EOF'
117
119
  <!-- mach6-plan -->
118
120
  ## Implementation Plan
119
121
 
@@ -122,7 +124,7 @@ cat > /tmp/gh-comment.md << 'MACH6_EOF'
122
124
  ---
123
125
  *Plan created by mach6*
124
126
  MACH6_EOF
125
- gh pr comment <pr-number> --body-file /tmp/gh-comment.md
127
+ gh pr comment <pr-number> --body-file "$GH_BODY"
126
128
  ```
127
129
 
128
130
  Update task: post → completed.
@@ -14,7 +14,7 @@ argument-hint: "<pr-number>"
14
14
  2. **No `#N` in comment bodies** — Use "finding 3", "item 3" etc. instead.
15
15
  3. **Safe git** — Never use `git add -A` or `git add .`. Stage files by name. Never stage secrets.
16
16
  4. **Task tracking** — Use the `tasks_update` tool to show progress.
17
- 5. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks.
17
+ 5. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks. Write each body to a **unique per-invocation temp file** via `mktemp` (e.g. `GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"`) — never a fixed path like `/tmp/gh-comment.md`, which concurrent mach6 sessions on the same machine would clobber, cross-posting one session's body to another's PR/issue.
18
18
 
19
19
  ## Step 1: Set up task tracking
20
20
 
@@ -181,10 +181,11 @@ git push --tags
181
181
 
182
182
  3. Present draft to user for approval, then create:
183
183
  ```bash
184
- cat > /tmp/gh-release-notes.md << 'MACH6_EOF'
184
+ GH_NOTES="$(mktemp /tmp/gh-release-notes.XXXXXX.md)"
185
+ cat > "$GH_NOTES" << 'MACH6_EOF'
185
186
  <release-notes>
186
187
  MACH6_EOF
187
- gh release create v<version> --title "v<version>" --notes-file /tmp/gh-release-notes.md
188
+ gh release create v<version> --title "v<version>" --notes-file "$GH_NOTES"
188
189
  ```
189
190
 
190
191
  Update task: release → completed.
@@ -15,7 +15,7 @@ argument-hint: "[commit message]"
15
15
  3. **No `#N` in comment bodies** — Use "finding 3", "item 3", "stage 2" etc. instead.
16
16
  4. **Safe git** — Never use `git add -A` or `git add .`. Stage files by name. Never stage secrets (.env, credentials, tokens, keys).
17
17
  5. **Task tracking** — Use the `tasks_update` tool to show progress.
18
- 6. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks.
18
+ 6. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks. Write each body to a **unique per-invocation temp file** via `mktemp` (e.g. `GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"`) — never a fixed path like `/tmp/gh-comment.md`, which concurrent mach6 sessions on the same machine would clobber, cross-posting one session's body to another's PR/issue.
19
19
 
20
20
  ## Step 1: Set up task tracking
21
21
 
@@ -81,7 +81,8 @@ If session context points to an issue but a PR also exists on the current branch
81
81
 
82
82
  Post a progress comment:
83
83
  ```bash
84
- cat > /tmp/gh-comment.md << 'MACH6_EOF'
84
+ GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"
85
+ cat > "$GH_BODY" << 'MACH6_EOF'
85
86
  <!-- mach6-progress -->
86
87
  ## Progress Update
87
88
 
@@ -92,7 +93,7 @@ cat > /tmp/gh-comment.md << 'MACH6_EOF'
92
93
  ---
93
94
  *Progress tracked by mach6*
94
95
  MACH6_EOF
95
- gh pr comment <number> --body-file /tmp/gh-comment.md
96
+ gh pr comment <number> --body-file "$GH_BODY"
96
97
  ```
97
98
 
98
99
  Update task: comment → completed.
@@ -14,7 +14,7 @@ argument-hint: "<pr-number> [code|errors|tests|completeness|simplify]"
14
14
  2. **HTML markers** — Use `<!-- mach6-review -->` and `<!-- mach6-assessment -->` as the first line of comment bodies.
15
15
  3. **No `#N` in comment bodies** — Use "finding 3", "item 3", "stage 2" etc. instead.
16
16
  4. **Task tracking** — Use the `tasks_update` tool to show progress.
17
- 5. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks.
17
+ 5. **Non-interactive `gh`** — Set `GH_PAGER=cat` and `GH_EDITOR=cat` before all `gh` commands to prevent interactive prompts from hanging the agent. Use `--body-file` instead of inline `--body` for all `gh pr comment`, `gh pr create`, and `gh issue create` calls to avoid shell interpretation of backticks. Write each body to a **unique per-invocation temp file** via `mktemp` (e.g. `GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"`) — never a fixed path like `/tmp/gh-comment.md`, which concurrent mach6 sessions on the same machine would clobber, cross-posting one session's body to another's PR/issue.
18
18
 
19
19
  **Important: Do NOT fix any issues in this session. Fixes happen via `/skill:mach6-implement`.**
20
20
 
@@ -96,7 +96,8 @@ Update task: review → completed, post-review → in_progress.
96
96
  Compile all findings from all agents into a single structured comment:
97
97
 
98
98
  ```bash
99
- cat > /tmp/gh-comment.md << 'MACH6_EOF'
99
+ GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"
100
+ cat > "$GH_BODY" << 'MACH6_EOF'
100
101
  <!-- mach6-review -->
101
102
  ## Code Review
102
103
 
@@ -117,7 +118,7 @@ cat > /tmp/gh-comment.md << 'MACH6_EOF'
117
118
  ---
118
119
  *Reviewed by mach6*
119
120
  MACH6_EOF
120
- gh pr comment <pr-number> --body-file /tmp/gh-comment.md
121
+ gh pr comment <pr-number> --body-file "$GH_BODY"
121
122
  ```
122
123
 
123
124
  Save the review comment URL:
@@ -156,7 +157,8 @@ Update task: assess → completed, post-assess → in_progress.
156
157
  ## Step 7: Post assessment
157
158
 
158
159
  ```bash
159
- cat > /tmp/gh-comment.md << 'MACH6_EOF'
160
+ GH_BODY="$(mktemp /tmp/gh-comment.XXXXXX.md)"
161
+ cat > "$GH_BODY" << 'MACH6_EOF'
160
162
  <!-- mach6-assessment -->
161
163
  ## Review Assessment
162
164
 
@@ -175,7 +177,7 @@ cat > /tmp/gh-comment.md << 'MACH6_EOF'
175
177
  ---
176
178
  *Assessment by mach6*
177
179
  MACH6_EOF
178
- gh pr comment <pr-number> --body-file /tmp/gh-comment.md
180
+ gh pr comment <pr-number> --body-file "$GH_BODY"
179
181
  ```
180
182
 
181
183
  Update task: post-assess → completed, summary → in_progress.
@@ -189,10 +191,11 @@ Present to the user:
189
191
 
190
192
  If any findings were classified as **deferred**, ask the user if they want to create issues for them:
191
193
  ```bash
192
- cat > /tmp/gh-body.md << 'MACH6_EOF'
194
+ GH_BODY="$(mktemp /tmp/gh-body.XXXXXX.md)"
195
+ cat > "$GH_BODY" << 'MACH6_EOF'
193
196
  <body referencing PR and finding>
194
197
  MACH6_EOF
195
- gh issue create --title "<title>" --body-file /tmp/gh-body.md
198
+ gh issue create --title "<title>" --body-file "$GH_BODY"
196
199
  ```
197
200
 
198
201
  Update task: summary → completed.