feat(cli): newt web — launcher for the workspace-excluded HTMX cockpit (successor to #1550) - #1551
Merged
Conversation
newt-web stays a workspace-EXCLUDED crate (decision D1 in docs/decisions/newt_web_htmx.md — its axum/sanitizer tree never enters the agent graph), so `newt web` is a pure process launcher: resolve $NEWT_WEB_BIN → a `newt-web` beside the running binary → PATH, spawn with args passed through, propagate the exit code, and fail with an actionable message naming every escape hatch when nothing is found. `just install-web` builds the crate with its own manifest (target dir resolved the honor-configured-target-dir way _place-binaries does) and places ~/bin/newt-web with the same clean-inode + macOS ad-hoc re-sign discipline. README gains the web-cockpit snippet under Quick start. Resolver is pure (injected fs seam) with unit tests; assert_cmd tests prove argv passthrough via a stub binary, exit-code propagation, and the not-found message. newt-web itself compile-checked against the new newt-core (it picks up the kind="anthropic" form parse). Co-authored-by: Claude Fable 5 <[email protected]>
Contributor
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_2807555a-f753-4684-88d4-edcdd8681b09) |
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.
What this PR does
Successor to #1550, which GitHub auto-marked "merged" when a base-branch push briefly made its head an ancestor of its base — its commit never actually reached
main(merged PRs cannot reopen). Same single commit, rebuilt onto the merged #1549: thenewt webfind-and-spawn launcher honoring decision D1 (docs/decisions/newt_web_htmx.md—newt-webstays workspace-excluded, no dependency edge). Resolves$NEWT_WEB_BIN→newt-webbeside the running binary →PATH; passes args through; propagates exit codes; actionable not-found error. Plusjust install-web(clean-inode + macOS ad-hoc re-sign, honor-configured-target-dir) and the README web-cockpit snippet.Test plan
Pure resolver unit tests (precedence, blank/missing candidates, injected-fs seam, message contract) +
assert_cmdprocess tests (argv passthrough via stub binary, exit-code propagation, not-found message withPATHemptied). Clippy-D warningsclean;newt-webcompile-checked against the newnewt-core.Out of scope
Installing
newt-webin plainjust install; changes to newt-web itself; a/webslash command.🤖 Generated with Claude Code
Note
Low Risk
Process launcher and install recipe only; no changes to agent authority, inference, or the
newt-webcrate itself. Risk is limited to local binary discovery and spawn behavior, covered by unit and CLI integration tests.Overview
Adds
newt web, a find-and-spawn launcher for the workspace-excludednewt-webHTMX cockpit (decision D1 — no axum/sanitizer edge into the agent workspace). Resolution order:$NEWT_WEB_BIN, thennewt-webbeside the runningnewtbinary, thenPATH; trailing args pass through and child exit codes propagate, with a single actionable error when nothing is found.just install-webbuildsnewt-webfrom its own manifest and installs~/bin/newt-webusing the same clean-inode + macOS ad-hoc re-sign pattern asjust install. The README quick start documentsjust install-webandnewt web(default 127.0.0.1:8880).Reviewed by Cursor Bugbot for commit 25c0226. Bugbot is set up for automated code reviews on this repo. Configure here.