docs: document ripgrep and ImageMagick as external tools; add both to Doctor - #1660
Open
elhoim wants to merge 1 commit into
Open
docs: document ripgrep and ImageMagick as external tools; add both to Doctor#1660elhoim wants to merge 1 commit into
elhoim wants to merge 1 commit into
Conversation
GETTING-STARTED.md exists to list the external tools doctrine uses and promises that each 'degrades honestly when absent'. Two tools shipped code shells out to were missing from it: - ripgrep — ContextSearch spawns `rg` directly, as do the work sweep and UpdateModels' drift scan. LifeOS indexes via the filesystem rather than a vector store, so this is load-bearing, not a preference. (The built-in Grep tool is separately ripgrep-backed and unaffected.) - ImageMagick — Interceptor's blank-frame guard and Art's composition both spawn `magick`. Neither appeared in GETTING-STARTED.md or in Doctor's capability registry, so a host without them got no signal until something failed at use time. Adds both as Doctor capabilities so they surface as ✅/❌ with a fix command like every other tool, and documents them in GETTING-STARTED.md with the same shape as the existing entries. The ImageMagick note records what actually happens when it is absent: Capture.sh still returns a screenshot but prints BLANK-FRAME GUARD SKIPPED, and that capture must not be cited as pixel-verified.
This was referenced Jul 26, 2026
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.
GETTING-STARTED.mdis the page that lists the external tools doctrine uses, and it opens with a promise: "None are required — every one degrades honestly when absent." Two tools that shipped code shells out to were missing from it, and from Doctor's registry.ripgrep
ContextSearch/Tools/ContextSearch.tsspawnsrgdirectly, as do the work sweep andUpdateModels.ts's drift scan. LifeOS indexes through the filesystem instead of a vector store, so this is load-bearing rather than a style preference — the architecture doc says as much ("fast search such as with Ripgrep can give us everything people usually want from a RAG system").Worth separating: the built-in
Greptool is independently ripgrep-backed and unaffected. This is only about the tools that spawnrgthemselves.ImageMagick
Interceptor's blank-frame guard and Art's composition steps both spawn
magick.Capture.shalready handles absence well — it returns the screenshot but printsBLANK-FRAME GUARD SKIPPED (imagemagick-absent) — do not treat it as pixel-verified without looking, with an install hint. That is exactly the honest degradation the page promises. The gap was that nothing told you beforehand, so the first signal was a warning mid-verification.Changes
declined.GETTING-STARTED.mdin the same shape as the existing entries, with the ImageMagick note recording what actually happens when it is absent.Verified
Doctor.tsrun with both binaries present → both report ✅ live. The samewhich()logic run against a PATH withrgandmagickstripped → both report broken and surface their fix command. Doctor's existing capabilities are unchanged in both runs.