Skip to content

Commit 53d431e

Browse files
committed
ci: tell Claude it MUST call Write tool, not emit JSON as text
Previous run: allowedTools=Read,Write granted, permission_denials_count=0, Claude reported success in 3 turns — but the assistant message contained the JSON inline ("Quiet day" payload composed correctly) instead of invoking the Write tool. POST to Slack then errored on the absent file. Stronger imperative + warning: spell out the Write call signature and state explicitly that printing JSON does not count. If this still doesn't trigger Write, next iteration switches to parsing the action's execution_file output and writing the payload ourselves.
1 parent ae4f5bb commit 53d431e

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

.github/workflows/morning_status.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,16 @@ jobs:
148148
release bump (if any) first, then merged PRs, then direct
149149
pushes.
150150
151-
Then write `slack_payload.json` in the repo root, with this
152-
exact shape:
151+
**You MUST invoke the Write tool to create the file at the path
152+
`slack_payload.json` (relative to the current working directory).**
153+
Do not output the JSON in your text response. Do not describe
154+
the file. Do not preview it. Just call Write with `file_path:
155+
"slack_payload.json"` and `content:` set to the JSON below.
156+
The next workflow step reads that file from disk and fails the
157+
run if it is missing — printing the JSON without writing it
158+
does NOT count.
159+
160+
The exact JSON shape to write:
153161
154162
{
155163
"text": "PyAuto update — <uk_date>",

0 commit comments

Comments
 (0)