LoopKit makes invisible automation loops noticeable and repairable.
It turns a site inventory of background automation into:
- per-loop exposure scores (impact, autonomy, cycle frequency),
- required kit tiers (
full_loop/pause_ready/noticeable/ambient), - gap analysis against installed affordances,
- repair statuses (
repairable/partially_equipped/opaque/ambient), - a kit prescription and bill of materials, as JSON or Markdown reports.
This is a legibility assessment and planning aid. It does not control devices, verify interruption latency, certify safety, or replace hazard analysis.
python -m pip install -e .python -m loopkit sample -o examples/site_case.json
python -m loopkit run -i examples/site_case.json --full -o examples/kit_report.json
python -m loopkit run -i examples/site_case.json --markdown -o examples/kit_report.mdHomes, clinics, farms, and factory floors run automation loops nobody can see. When one misbehaves, people file a support ticket — because the loop offers no in-context way to notice it, pause it, read what it did, or take over. LoopKit treats repair as an ordinary action: every loop gets a standing prescription of four physical affordances:
| Kit element | Question it answers |
|---|---|
status_light |
is the loop running, and in what state? |
pause_gesture |
can one simple gesture halt it? |
paper_receipt |
what did the last cycle actually do? |
handoff_checklist |
how does a human take over? |
For each automation loop, the kit:
- scores exposure (
0.5 * impact + 0.3 * autonomy + 0.2 * frequency_factor, frequency capped at 24 cycles/day), - assigns a required tier —
full_loop(≥ 0.70, all four elements),pause_ready(≥ 0.40, light + gesture + receipt),noticeable(≥ 0.15, light), orambient(nothing required), - compares the requirement to installed affordances (unknown affordances never count),
- classifies the loop and prescribes the missing elements with install effort,
- aggregates site repair coverage and a bill of materials.
python -m pytest -qRuntime dependencies: none beyond the Python standard library.