feature/Scaffold-reading-fixes · L-260916-4eb1b3 — skill args clobber $1 $9 - #26
Merged
Merged
Conversation
Claude Code replaces $ARGUMENTS and $0, $1, … in a SKILL.md with the words the skill was invoked with, so pipelex-scaffold's dev-server block reached the model as a different command: its process-tree helper signalled "me" and the listener check printed "The", which would have stopped a loopback-bound server and reported no URL. The helper now loops over its arguments with a local variable, and the listener's address is read with lsof -Fn rather than by column, since lsof prints the socket state after the address. make check now fails when any target's rendered SKILL.md carries $ARGUMENTS or $<digit>. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013DQGXP7o1q5tm6LJLfSsRE
The scaffold's create block showed only the last lines of make create's log, which are make all's, so the warnings the gesture prints earlier never reached the report: a created MIT project kept the template's copyright line and nobody was told. The block now lists each distinct warning from the whole log, and the report relays each with what answers it, the LICENSE holder first. Both acquisition chains now remove their temporary clone with one trap set right after mktemp, trapping INT and TERM as well as EXIT, because zsh and dash run no EXIT trap when a signal kills them. A session cleared or a command stopped mid-clone no longer leaves a .pipelex-method-apps-… or .pipelex-starter-… directory beside the project. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013DQGXP7o1q5tm6LJLfSsRE
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Claude Code replaces
$ARGUMENTSand$<digit>tokens in a skill body with the invocation's arguments, so pipelex-scaffold's shell recipes are now written without them, andmake checkfails on any SKILL.md that carries one. The scaffold also now relays every warningmake createprinted, with the template's LICENSE holder first, and a trap removes the acquisition's temporary clone however the chain ends, including when the harness interrupts it.Closes L-260916-4eb1b3
Closes L-260916-bd2870
Closes L-260916-cac79b
🤖 Generated with Claude Code
https://claude.ai/code/session_013DQGXP7o1q5tm6LJLfSsRE
Summary by cubic
Rewrites
pipelex-scaffold's skill recipes to avoid$ARGUMENTSand$<digit>placeholders, since Claude Code replaces them with the invocation's arguments before the model reads the skill. Adds amake checkrule that fails on anySKILL.mdcarrying such a token.Also fixes the scaffold's cleanup and reporting:
traponEXIT,INT, andTERM, even when the harness interrupts the run.make createwarnings are relayed in full, with the LICENSE holder first.Closes L-260916-4eb1b3, L-260916-bd2870, L-260916-cac79b.
Written for commit 85657ba. Summary will update on new commits.