Commit Graph

10 Commits

Author SHA1 Message Date
Max Mittelstädt f6725c2b8c Emit object schemas for compare inputs (#93)
runtime_captures_compare's right input had no description, so its schema was the boolean true and Claude Code rejected the whole tool list in Deep-mode builds. It gets a description, and a test checks every MCP input property schema is an object. Fixes #90.
2026-11-01 23:04:57 +07:00
muraa-p 3e016c92ee Leave a pin's old program copies out of the copy (#56)
A pin leaves out a program's old running copies (name.running-N.exe) when the program they copy is beside them.
2026-11-01 18:40:57 +07:00
Tommy Leonhardsen 63aaaeeb08 Every engine listing finds a Ghidra installed in a versioned folder or set through its folder setting (#55)
engines_list, doctor, capabilities and Requires::Engine share Settings::engine_path, which honours the Ghidra folder setting, and locate() finds an engine unpacked into a versioned sub-folder.
2026-11-01 18:40:51 +07:00
BFlat 96fa78e86e A builder that writes /app/… paths builds the app instead of being refused (#36)
Builders driven by our own loop (an API model such as Ollama) get file tools whose paths are
relative to the project. Models often write the project's folders from the root (/app/src/…), which
was refused as outside the project, so they could neither list, read nor write app/ and went round
in circles while each check found nothing. A path from the root whose first folder the project has
is now read inside the project (/etc/… and folders it doesn't have are still refused), and a write
outside app/ says so in its result, so a model that leaves out app/ learns where the app goes.

Refs #24
2026-11-01 15:33:26 +07:00
Brandon Thomas 4756633f89 Show what a build is on now, and open up into its activity as it arrives (#10)
The status row names the command or file under way instead of only counting
actions. "More detail" opens the latest lines: stages, every command and file
with how it ended, what the builder said, and what programs printed outside the
conversation. Everything is kept in build-activity.log, with secrets hidden, and
the rebuild_activity_show tool and the CLI read the same.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 21:12:56 -04:00
Brandon Thomas e244159c17 Call a coding agent's cost an estimate, not the bill (#9)
Claude Code's figure is its own guess at API prices, which a subscription
isn't charged. The project page now says "AI cost (estimate)" with a note
saying so, and the title bar says "(estimate)". What an API key was charged
is kept apart in usage.json; older files count as estimates.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 21:04:01 -04:00
Brandon Thomas 7ecce402f9 Try again picks up where a build stopped instead of starting over (#8)
A run with no message was read as a first build, so Try again studied the
original again and gave the builder the first brief, even with its session
saved. A run now carries on when the builder has already worked, and only
runs the check when the builder had finished (awaiting_check in craft.json).

A check that returns an error couldn't look at the build at all, so it gets a
second go, and then the run says the build is finished but couldn't be checked.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 21:01:22 -04:00
Brandon Thomas 292d5af06e Stop deadlocks as they form and watch every lock for one that never lets go (#5)
* Stop deadlocks as they form and watch every lock for one that never lets go

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Give the stuck-lock banner's test a program of its own

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 20:28:16 -04:00
Brandon Thomas 6a120011a1 Explain failed agent runs, keep a log to open, and stop offering git servers as computers (#3)
* Explain failed agent runs, keep a log to open, and stop offering git servers as computers

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Fix a lock-up: the build's agent setup took the session lock twice in one statement

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 20:27:44 -04:00
Brandon Thomas f64ae3bf3c Craft Anything
A native, pure-Rust app that shows anyone how a piece of software works, with
evidence-backed answers, then helps them rebuild it. It ships a desktop app, a
CLI and an MCP server, all driven by one engine.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 10:52:14 -04:00