Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions LifeOS/GETTING-STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,24 @@ Run it whenever anything feels off. Every ❌ line carries its own fix command.
- **Auth:** none.
- **Verify:** `Doctor.ts` → interceptor ✅ (skill present + browser found).

## ripgrep — fast filesystem search

**Powers:** ContextSearch queries, the work sweep, and the model-drift scan. LifeOS treats the filesystem as its index instead of a vector store, so shipped tools shell out to `rg` directly.

- **Install:** `brew install ripgrep` (Linux: `sudo apt-get install ripgrep`)
- **Auth:** none.
- **Verify:** `Doctor.ts` → ripgrep ✅
- **Note:** the built-in `Grep` tool is already ripgrep-backed and works regardless; this is for the tools that spawn `rg` themselves.

## ImageMagick — image inspection

**Powers:** Interceptor's blank-frame guard, its measured zoom, and Art's composition steps.

- **Install:** `brew install imagemagick` (Linux: `sudo apt-get install imagemagick`)
- **Auth:** none.
- **Verify:** `Doctor.ts` → imagemagick ✅
- **Note:** without it, `Capture.sh` still returns a screenshot but prints `BLANK-FRAME GUARD SKIPPED` — the capture is then unchecked for a black or blank frame, so don't cite it as pixel-verified without looking at it yourself.

## Cloudflare / wrangler — scheduled cloud flows

**Powers:** the "runs while you sleep" layer (Arbol) and Worker deploys.
Expand Down
24 changes: 24 additions & 0 deletions LifeOS/install/LIFEOS/TOOLS/Doctor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,30 @@ const CAPS: CapSpec[] = [
},
fixCmd: 'install Google Chrome (or Brave), then re-run: bun LIFEOS/TOOLS/Doctor.ts',
},
{
id: 'ripgrep',
title: 'Fast filesystem search (ripgrep)',
powers: 'ContextSearch queries, work sweeps, and the model-drift scan',
ttlHours: 24 * 7,
configured: () => true, // shipped code shells out to `rg`; absence is broken, not unconfigured
probeOffline: async () =>
which('rg')
? { ok: true, detail: 'rg on PATH' }
: { ok: false, detail: 'rg not on PATH — tools that shell out to it will fail' },
fixCmd: 'brew install ripgrep (Linux: sudo apt-get install ripgrep)',
},
{
id: 'imagemagick',
title: 'Image inspection (ImageMagick)',
powers: "Interceptor's blank-frame guard, measured zoom, and Art composition",
ttlHours: 24 * 7,
configured: () => true, // the capture guard and Art both shell out to `magick`
probeOffline: async () =>
which('magick')
? { ok: true, detail: 'magick on PATH' }
: { ok: false, detail: 'magick not on PATH — the blank-frame guard skips and captures go unchecked' },
fixCmd: 'brew install imagemagick (Linux: sudo apt-get install imagemagick)',
},
{
id: 'cloudflare',
title: 'Scheduled cloud flows (Cloudflare/wrangler)',
Expand Down