Two operator-requested features: 1. `larry uninstall` / uninstall-larry.sh — there was no uninstaller before. Reverses install-larry.sh exactly: removes $LARRY_HOME (bundle + bin/jq + optional phi-venv + all runtime artifacts incl. log/headers.log, sessions, journal, lessons, creds) and the `larry` PATH shim. DRY-RUN by default; --yes to delete, --keep-data to preserve user data. Removes ONLY what the installer created (shim removed only if it carries our auto-gen header; shell rc / Cloverleaf sites / $HCIROOT never touched). Stops running PHI sidecar / tunnel via their own pidfiles. Shipped by the installer + manifest-synced; dispatched early like `larry tools` so it works offline. 2. --no-api (env LARRY_NO_API=1) — deterministic-only mode making ZERO LLM API calls (zero cost). REPL + all local/deterministic commands still work; a free-text prompt is routed to the matching `larry tools <name>` instead of the model. No API key required (first-run auth prompt skipped). call_api / call_api_stream hard-refuse as defense in depth. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
114 lines
6.9 KiB
Plaintext
114 lines
6.9 KiB
Plaintext
# larry-anywhere update manifest
|
|
# Format (v0.8.11+): one entry per line as PATH{TAB}SHA256 relative to the
|
|
# bundle root (a literal tab separates the path from its hash). The sha256 is
|
|
# the file's expected content hash AT RELEASE.
|
|
# Lines starting with '#' and blank lines are ignored.
|
|
#
|
|
# Every file listed here is auto-synced by larry.sh's self_update() each time
|
|
# the running larry.sh version changes (and on first launch of a new version).
|
|
# The client (sync_from_manifest) fetches THIS file once, hashes its local copy
|
|
# of each path, and downloads ONLY the entries whose hash differs or are missing
|
|
# — turning ~48 network round-trips into 1 + a local hash pass + N real fetches.
|
|
#
|
|
# DO NOT HAND-EDIT THE HASHES. They are generated. Every release MUST run:
|
|
# scripts/make-manifest.sh (rewrites this file with correct hashes)
|
|
# A pre-commit hook (scripts/make-manifest.sh --install-hook) blocks commits
|
|
# whose hashes have drifted from the working tree.
|
|
#
|
|
# Backward/fail-safe: a path line with NO hash (old paths-only format, or a
|
|
# malformed/un-hashable entry) is treated by the client as "can't verify ->
|
|
# download" — a stale or missing hash can never SKIP a real update.
|
|
#
|
|
# To add a new file to the auto-sync set: list its path here, then run
|
|
# scripts/make-manifest.sh and bump VERSION.
|
|
|
|
# Top-level scripts
|
|
larry.sh e58a26763dc8035da95dee0d00f9270b8cde683341377bfe896388248a269a1d
|
|
larry-tunnel.sh 6b050e4eeab15669f4858eaf3b807f168f211ced07815db9521bc40a093f6aaa
|
|
larry-auth.sh a220cdf7878569dc3028951ee57fc8d5e706a8ca5c6aa45347b58facb386f831
|
|
larry-rollback.sh 91b5e9aa6c79266bf306dcfba4ca791c07971bd6924d67a779037531648aa6d0
|
|
install-larry.sh 0779dd74c0cecef174edbe7782da275be9bf6d2ec7e6ae88c1de46c666adc8b2
|
|
uninstall-larry.sh 5d0e2fe1366c818dc207f70c85e38279218b58f5eae10a8a6b0a277a02f2e4d0
|
|
|
|
# Metadata
|
|
VERSION d9d12c30d3607edd1bfd2ef0feb0738f917e113a4bc1570d5dbb2ea8426531a8
|
|
MANUAL.md 5ff54d6d5fae826f8b3da1eb3be6476076bb15f9b1417a4de285e59ea37e1b1f
|
|
CHANGELOG.md 67ed1238990e96d481ffa804cbfcbf219958438d6285e6efe864a33b8df97a32
|
|
|
|
# Agent personas (system-prompt overlays)
|
|
agents/larry.md 0a1ef737e7fc133ab35be09f79c3a4df33de814e0404b69b950932d0c8a01be1
|
|
agents/clover.md d1bbfd6cc4642c2bff6e15dcbdf051d71b063b3fe29e0be97d17b3180d3c7ac5
|
|
agents/cloverleaf-cheatsheet.md cd62d57e7ca067b42f1db2dc75a48f1474ae4b742a56025070c08100aef3d108
|
|
agents/regress.md bb05ed1439b1e35d6e9799e32d683bfab166472c72115c1f02757e227c74e42f
|
|
|
|
# Cygwin/MobaXterm CR-taint defense primitives (sourced by every tool)
|
|
lib/cygwin-safe.sh 6cef02f3e931f4067eed990b01fb9535c9e5b1e91b62ff318f0008732d4ad545
|
|
|
|
# v0.8.4: content-validating fetch (HTML-sign-in-page trap detection + per-
|
|
# file-type shape checks) for the installer/auto-updater. Canonical home of the
|
|
# validators that install-larry.sh and larry.sh also carry inline (pre-source).
|
|
lib/fetch-safe.sh abecf0045b9856f63ffa346119443c11de56547344be32bddaed9fbae6b021f4
|
|
|
|
# Auth implementation
|
|
lib/oauth.sh 04a93376f88fe53cc1c86a5dbe577735c60375dadd4f2fda55b921ef3cddf22b
|
|
|
|
# Secure SSH with ControlMaster (password hidden from Larry-the-LLM)
|
|
lib/ssh-helper.sh 18df1f1f1936c930ba0197c0e0b4bd89c027500de99b56067b620ca9144f6e9e
|
|
|
|
# v0.8.6: work-box → Mac headers.log sync (tsk-2026-05-27-023). Incremental,
|
|
# offset-tracked push of $LARRY_HOME/log/headers.log to a daemon-watched path
|
|
# on Bryan's Mac, riding the existing ssh-helper ControlMaster. Drives the
|
|
# /headers-sync slash command and the on-exit auto-sync hook. Graceful on every
|
|
# failure mode (no target / closed master / transport error → warn + continue).
|
|
lib/headers-sync.sh 47b1946f807b213a2e77cec71128a84a35f103e12fea13ae88d24610d8ee817a
|
|
|
|
# Logging / capture
|
|
lib/lessons.sh 225e899ed72ce20906cc454c5f5db87d605859e5e17431731a2ce481623f4e16
|
|
lib/journal.sh 11c62a2d47b6b67a2f423fd8b86c454126df18d2dc3e150233bbd08293e39fe7
|
|
|
|
# HL7 utilities
|
|
lib/hl7-sanitize.sh c0ea35d28c32dcbb1476835a6e58c2ecdbd04f0a479b889675724fc564f4205f
|
|
lib/hl7-desanitize.sh 2e5462a61ab1e8bd3fefb956bace8ca1ae33397a09024cbe766fa55c37a5aad6
|
|
lib/hl7-diff.sh 66985afb3073340f1c12b0d7b39f41a5d8df68dfebc89c55190d6915f6077e86
|
|
lib/hl7-field.sh a640f7cbd9521dc96171ee1dbdf909170262101a1d7a433f6f0ce2bea8d42b02
|
|
lib/hl7-schema.sh 2ba4057a214867ff4950f10057ee4ffd7149e1a82ba94b07b6857d77bf10d75f
|
|
|
|
# v0.8.2: Microsoft Presidio sidecar (optional, opt-in install).
|
|
# Closes V1 free-text PHI gap from Vera's audit. Requires Python 3.9+ and
|
|
# pip install presidio_analyzer + presidio_anonymizer + fastapi + uvicorn
|
|
# + spaCy en_core_web_sm. install-larry.sh offers to install on first run.
|
|
# Larry's tier-5 silently skips when sidecar is unreachable, so syncing
|
|
# these files is safe even on hosts where Python deps aren't installed.
|
|
lib/phi-presidio-sidecar.py 8b2662a932d0090bcad97633f12883b1ada6685f349959077a8f8d8760353673
|
|
lib/phi-sidecar.sh e57c6a03f1e6432f9a0f96df44508e6fd656238ac17043bed9b1231f20a9b83a
|
|
lib/phi-client.sh defe69b92cfedc6ca01aced20bdbc40a4c3d1002d63686ccadbd16b598028e81
|
|
|
|
# Generic helpers
|
|
lib/each.sh 14afb974dc27ee8d94e55189323950175fef443106394e20b36b550f46504c84
|
|
lib/each-site.sh 00a31166c2cfcb610e16d4fd8bef439554b10b9e07f93f6917e5732c4ba0957d
|
|
lib/len2nl.sh e84196f965ff77c49d3c8b3a776be30342f78c8b2e1c165907089d6ace908746
|
|
lib/csv-to-table.sh ca9cfbcb9f6f42bf7925bf8b8d1e25f0f7209be138d7b971e3adef3ff6b5b3dd
|
|
lib/table-to-csv.sh ad98e73687bc9e9f6ae0cd79ed5ba26c856076902865230f822dec1a1beae4b1
|
|
|
|
# NetConfig tooling
|
|
lib/nc-engine.sh e2b12a1c019d40857b96d48d6c185b94aefadab604536ce41077ecc251b0bc58
|
|
lib/nc-status.sh fa08c5e48704d3d17e2206dafc8522ae7668b7a2f9b97f3521e05fd0ba739443
|
|
lib/nc-table.sh a6d5c11dd460cfb100ea50c74d57c1a46ef49112632037534a32cd28600abe7f
|
|
lib/nc-xlate.sh 8621e6f0ef55524dd6ecba91fee055cf9cdc168791e75ba7c15d9bf501fe09bf
|
|
lib/nc-smat-diff.sh 9c04d9e2f35f22c78d5f3c40a884ed23a3b6aaabc53ee27dfbfb66ab3166a567
|
|
lib/nc-create-thread.sh e35b0ee27f2c0327928adc21467f2b9d5a29f7436e5b89773f65420281739df7
|
|
lib/nc-set-field.sh 0977fcab1cd931ecdd78c8aea673db93d898f11f535daf26456a4fb7845542e4
|
|
lib/nc-tclgen.sh 5b8e73d7f6950a2b84f563132562ea82f62f4acac907257e233c7e68d85506c9
|
|
lib/nc-parse.sh 52fef42d7a4b361534ab0d921deef74586dfeb6c199c941cebb55abcc2c39d4f
|
|
lib/nc-paths.sh 388d2f4560736587a01218cadc1de612cd59e392819d16db2f56f19174c1111b
|
|
lib/nc-inbound.sh 52d28c5f8d97bdf96f0fc7b5300d35b106b8e1226578f4cda430deb2a8b4a91b
|
|
lib/nc-make-jump.sh 08a0bc58a299c95c60a59a5202792daf0ada3a8a0be7dc1b4cccc5724f5c9c79
|
|
lib/nc-provision-jumps.sh cf80abe572a4eb241b351363ffa85406829f0c458882dc8d14f1628c458432f8
|
|
lib/nc-msgs.sh 20517922d1153ec7827c833987497fb305d087b579911d1b9067d65ae156a19f
|
|
lib/nc-document.sh 47211e99089c0446d25a1e84545a734894720a1c9ad8f59b920332035e4ea880
|
|
lib/nc-revisions.sh c27856f7decfc4c2e2c990f59eb20136fdff9cf0a52b9d9fbd9370613666a802
|
|
lib/nc-diff-interface.sh c922d10323f06346efa53ada68b44d32d9568ff0bd848c59af3404135f29d1ad
|
|
lib/nc-find.sh 2264877c56100378a1b780d640dcaa806aa5501ddd204c6b6a8eb5d3e07bf966
|
|
lib/nc-insert-protocol.sh ad1fa0bafbf4fdfb12bad20f9c22c3eed519f8846774331e26aa9becd6f8898a
|
|
lib/nc-regression.sh 70999a60608439f7bf1a3abb9f5e9854b5ea03025ef29ddbca683896346d1bce
|