Skip to content

Say that jq is optional (for discussion) - #58

Open
anakanemison wants to merge 1 commit into
mschaller/d5-transitive-definesfrom
mschaller/d6-jq-optional
Open

anakanemison wants to merge 1 commit into
mschaller/d5-transitive-definesfrom
mschaller/d6-jq-optional

Conversation

@anakanemison

Copy link
Copy Markdown

Part 23 of 23 of a stacked series (tracking issue: #35). Based on D5-transitive-defines, the previous part: review and merge that first.

Kind: discussion. Lab proposal: P28.

What the migration runs showed

No script uses jq, but the prerequisites require it and say to stop and ask. Every agent in the lab's first ten runs with this series spent calls on it, and two downloaded a binary from GitHub. With this, no agent installed it (runs 091-096).

The change

SKILL.md lists jq among the tools every migration requires, and says to stop
and ask the user to install anything missing. No script in scripts/ calls
jq. An unattended agent cannot ask, so it improvises. In any2bazel-lab's
migration runs, in containers without jq, agents tried
sudo apt-get install jq, downloaded a jq binary from GitHub (two runs), or
spent three or four calls establishing they did not need it. One agent wrote
the finding down itself: "No script under the skill's scripts/ directory
invokes it".

jq is now described as a convenience, with python3 -m json.tool as the
fallback. In the lab's six runs with this change, no agent installed or
downloaded jq.

This is a proposal for discussion: the maintainers may want jq for
interactive use, where asking the user is cheap.

Testing

pytest tests/ at this commit: 196 passed (130 on main).

🤖 Generated with Claude Code

SKILL.md lists jq among the tools every migration requires, and says to stop
and ask the user to install anything missing. No script in scripts/ calls
jq. An unattended agent cannot ask, so it improvises. In any2bazel-lab's
migration runs, in containers without jq, agents tried
`sudo apt-get install jq`, downloaded a jq binary from GitHub (two runs), or
spent three or four calls establishing they did not need it. One agent wrote
the finding down itself: "No script under the skill's scripts/ directory
invokes it".

jq is now described as a convenience, with python3 -m json.tool as the
fallback. In the lab's six runs with this change, no agent installed or
downloaded jq.

This is a proposal for discussion: the maintainers may want jq for
interactive use, where asking the user is cheap.

Lab-Proposal: P28
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@armandomontanez

armandomontanez commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

I added this preemptively since I was going to add template jq commands, but yeah this is technically not needed yet.

I suggest removing jq entirely from this list instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants