Skip to content
Operator guide

How to use SkyCache

Pick a path below. Every path is legal receive-only / open content - store-and-forward knowledge and community mesh, not free Starlink or commercial broadband. Software version: v1.35.0.

Before any RF work

Only unencrypted free-to-air weather and open amateur telemetry. Operators must check local spectrum and hotspot rules. Never decrypt paid satellite internet. Full rails: threat model ยท live RX runbook.

Path 1

Try it in five minutes (no hardware)

For: Teachers, NGOs, evaluators

  1. Install Python 3.11+ and clone Pitchfork-and-Torch/SkyCache
  2. pip install -e ".[dev]"
  3. python scripts/make_sample_package.py
  4. python -m skycache first-boot --yes --pin 739184 --sim (or skycache init --load-samples)
  5. python -m skycache serve --sim --host 127.0.0.1 --port 8080
  6. Open http://127.0.0.1:8080/ - sample Emergency, Health, Education, Weather, Skybrary
cd SkyCache
python -m pip install -e ".[dev]"
python scripts/make_sample_package.py
python -m skycache first-boot --data-dir data --yes --pin 739184 --ssid SkyCache-Sim --legal-rf-mode receive_only --sim
python -m skycache serve --sim --host 127.0.0.1 --port 8080

Path 2

Stand up a village node

For: Local maintainers, volunteers

  1. Open /install/ for the golden path (or docs/first-boot.md)
  2. skycache pi-image doctor then pi-image bundle (or download kit zip)
  3. Flash Pi OS Lite; bake-golden.sh with non-default PIN (never 2468)
  4. Verify: golden-pi-verify.sh + partner readiness
  5. Optional seal on Linux: dd|xz + pi-image sealed-manifest
  6. Optional: mesh day-one after spectrum check
python -m skycache pi-image doctor
python -m skycache pi-image bundle --out data/pi-download
# On Pi after flash:
# export SKYCACHE_ADMIN_PIN=your-strong-pin
# sudo bash deploy/pi-image/bake-golden.sh
# skycache partner readiness
# Optional seal (Linux host): skycache pi-image sealed-manifest --url HTTPS --path image.img.xz

Path 3

Live free-to-air weather after a real pass

For: Field operators with RTL-SDR + SatDump

  1. Windows: powershell -File scripts/Install-RxTools-Windows.ps1 (SatDump + rtl_test PATH)
  2. skycache rx doctor - confirm SatDump / RTL tools (or product-import-only path)
  3. skycache rx station --lat LAT --lon LON --antenna "V-dipole 137 MHz"
  4. Optional: pip install sgp4 && skycache rx tle-import allowed-tles.txt
  5. skycache rx schedule --hours 24 (Pass Autopilot: recipes + SatDump sketches)
  6. skycache rx arm --hours 12 (enables auto field-log on product watch)
  7. skycache rx cmd --next-pass (print SatDump CLI sketch)
  8. Run SatDump for the pass (GUI or CLI) into the products folder
  9. skycache rx watch --dir PRODUCTS --once --satellite "NOAA 18"
  10. skycache rx duty (arm + next pass countdown)
  11. Refresh the portal Weather category - not commercial broadband
# Windows: install SatDump + rtl-sdr CLI + PATH
# powershell -ExecutionPolicy Bypass -File scripts\Install-RxTools-Windows.ps1
# Then station + TLEs:
# powershell -ExecutionPolicy Bypass -File scripts\Setup-RxStation.ps1 -Lat YOUR_LAT -Lon YOUR_LON -RefreshTle
python -m skycache rx doctor
python -m skycache rx station --lat 40.7 --lon -74.0 --alt-m 20
python -m skycache rx schedule --hours 24
python -m skycache rx arm --hours 12
python -m skycache rx cmd --next-pass
# Point SatDump output at data/satdump-products then:
python -m skycache rx watch --dir data/satdump-products --once --satellite "NOAA 18"
python -m skycache rx duty
# Manual log still available: python -m skycache rx log --satellite "NOAA 18" --elevation 42 --quality good

Path 4

Skybrary dual-access library

For: Librarians, educators, developers

  1. Browse the online catalog at /library/ (same work IDs as offline nodes)
  2. Marketing one-shot: skycache library sync --out data/library-sync (catalog + kits)
  3. Zero-network phone kit: skycache library zero-network --out phone-zero-network
  4. Corpus scale: skybrary corpus doctor + sample-manifest + batch --allow-local --ingest
  5. Build USB kits: skycache skybrary pack --profile literacy-1gb
  6. Verify integrity: skycache skybrary doctor --verify --record
python -m skycache library doctor
python -m skycache library sync --out data/library-sync --skip-zero-network --apply-web
python -m skycache library zero-network --out phone-zero-network
python -m skycache skybrary pack --profile multilingual-literacy
python -m skycache skybrary pack --profile literacy-1gb
python -m skycache skybrary doctor --verify --record

Path 5

Zero-network phone demos (no Wi-Fi, no cell)

For: Teachers, field trainers, disaster pre-deploy

  1. Build kit: skycache library zero-network --out phone-zero-network
  2. Or download /downloads/skycache-zero-network-demo-kit.zip from the marketing site
  3. Copy folder or zip to phone via USB/OTG, microSD, Bluetooth, or pre-deploy
  4. Open READ-OFFLINE.html offline (file://) - large-type reader for all curated PD samples
  5. Honest: zero network to read; transfer still needs a physical path - not free broadband
python -m skycache library zero-network --out phone-zero-network
# Copy phone-zero-network/ or the zip onto the device, then open READ-OFFLINE.html

Path 6

Multi-node mesh lab (sim)

For: Engineers, multi-hub pilots

  1. Mesh ops: skycache mesh doctor + mesh readiness --nodes 2
  2. Disaster lab: skycache mesh disaster-drill --nodes 3
  3. Field kit: skycache mesh field-kit --out data/field-mesh-kit
  4. On hardware: mesh-field-checklist.md + dual-radio pack after spectrum check
python -m skycache mesh doctor
python -m skycache mesh readiness --nodes 2
python -m skycache mesh disaster-drill --nodes 3
python -m skycache mesh field-kit --out data/field-mesh-kit
python -m skycache ops status

Path 7

Phone handoff (QR + mule)

For: Village maintainers, teachers

  1. skycache handoff doctor (go_phone_path)
  2. join-card: print or display SSID + QR to portal
  3. export: mule packages + zip under data/handoff
  4. Phone: join hub SSID, open portal, Save demos
  5. Second node: handoff import of zip or folder
python -m skycache handoff doctor
python -m skycache handoff join-card --portal-url http://10.42.0.1:8080/ --ssid SkyCache-Village
python -m skycache handoff export --limit 10
# On peer node:
# python -m skycache handoff import data/handoff/skycache-handoff-XXXX.zip

Path 8

Ethical open gateway pulls

For: Operators with shared metered uplink

  1. skycache gateway doctor (go_sim_gateway)
  2. presets list; dry-run then sim or live pull-preset
  3. Check pull-passport.json redistribute posture before share
  4. Review local receipts; respect daily fair-share quota
  5. Optional: ethics-kit zip for partner training
python -m skycache gateway doctor
python -m skycache gateway presets
python -m skycache gateway pull-preset gutenberg-sample --dry-run
python -m skycache gateway pull-preset gutenberg-sample --sim
python -m skycache gateway receipts
python -m skycache gateway ethics-kit --out data/gateway-ethics-kit

Path 9

Village day (one weekend)

For: Teachers, NGO volunteers, local maintainers

  1. village-day doctor until go_weekend_sim true
  2. runbook + kit zip for USB to co-maintainers
  3. serve hub; phones join handoff path
  4. optional mesh/gateway/partner kit afternoon
  5. end day: readiness receipt; disaster mode OFF
python -m skycache village-day doctor
python -m skycache village-day readiness
python -m skycache village-day runbook --out data/village-day
python -m skycache village-day kit --out data/village-day-kit
python -m skycache serve --sim --host 127.0.0.1 --port 8080

Path 10

Multi-village federation (sim or USB gossip)

For: Multi-hub pilots, engineers

  1. federation doctor go_sim_federation
  2. sim --nodes 2 for lab exchange proof
  3. export-gossip on hub A; import on hub B
  4. optional peer-content for package copy
  5. field: mesh day-one after spectrum check
python -m skycache federation doctor
python -m skycache federation sim --nodes 2 --rounds 1
python -m skycache federation export-gossip --out data/federation/gossip.json
python -m skycache federation kit --out data/federation-kit

Path 11

Integrity / bit-rot (local)

For: Maintainers, partner auditors

  1. integrity doctor (packages present)
  2. verify --record until last_ok true
  3. optional printable report HTML
  4. install weekly timer/cron templates
  5. re-verify after bulk imports or power events
python -m skycache integrity doctor
python -m skycache integrity verify --record
python -m skycache integrity report --out data/ops/integrity-report.html
python -m skycache integrity kit --out data/integrity-kit --verify

Path 12

Disaster drill (lab or partner tabletop)

For: NGO field leads, civil protection, maintainers

  1. disaster doctor go_lab_drill
  2. lab: disaster run --nodes 3
  3. printable report for partner file
  4. closeout: disaster mode OFF
  5. kit zip + docs/disaster-drill.md for field day
python -m skycache disaster doctor
python -m skycache disaster run --nodes 3
python -m skycache disaster report --out data/ops/disaster-report.html
python -m skycache disaster closeout
python -m skycache disaster kit --out data/disaster-kit

Path 13

Solar / battery power

For: Local maintainers, solar installers

  1. power doctor (mock OK for lab)
  2. status: SOC and hours-until-ECO
  3. print power-sheet.html for wall mount
  4. calibrate battery_wh; prefer sysfs in field
  5. kit zip with solar notes
python -m skycache power doctor
python -m skycache power status
python -m skycache power sheet --out data/ops/power-sheet.html
python -m skycache power kit --out data/power-kit

Path 14

License inventory (partners/regulators)

For: NGO legal, university pilots, maintainers

  1. licenses doctor (packages inventoried)
  2. drive unknown_or_blank toward zero
  3. export printable HTML inventory
  4. archive with partner pilot files
  5. re-run after bulk corpus import
python -m skycache licenses doctor
python -m skycache licenses status
python -m skycache licenses export --out data/ops/licenses-inventory.html
python -m skycache licenses kit --out data/licenses-kit

Path 15

Legal capabilities matrix (onboarding)

For: First-boot operators, partner legal, maintainers

  1. capabilities doctor (mode + matrix + PIN gates)
  2. review ON/off rows with local maintainer
  3. export printable HTML for the wall
  4. read banned list aloud before RF day
  5. kit zip for pilot files
python -m skycache capabilities doctor
python -m skycache capabilities status
python -m skycache capabilities export --out data/ops/capabilities-matrix.html
python -m skycache capabilities kit --out data/capabilities-kit

Path 16

Local ops board (privacy-preserving)

For: Village maintainers, partner field leads

  1. ops doctor (fleet OFF + disk headroom)
  2. status: disk, power, peers, packs, bit-rot
  3. print local-ops-board.html for the wall
  4. kit zip for maintainer USB
  5. never enable cloud telemetry without opt-in
python -m skycache ops doctor
python -m skycache ops status
python -m skycache ops export --out data/ops/local-ops-board.html
python -m skycache ops kit --out data/ops-kit

Path 17

RX station (free-to-air receive-only)

For: Weather volunteers, village maintainers, SDR labs

  1. rx doctor (go_rx_lab without dongle)
  2. set station lat/lon for passes
  3. export printable station board
  4. watch SatDump product dir or arm Pass Autopilot
  5. kit zip for field day
python -m skycache rx doctor
python -m skycache rx status
python -m skycache rx export --out data/ops/rx-station-board.html
python -m skycache rx kit --out data/rx-kit

Path 18

Node readiness passport (partners)

For: NGO legal, university pilots, field coordinators

  1. report doctor (rollup go flags)
  2. status: gate table across surfaces
  3. export node-report.html PDF
  4. fix NO gates with surface doctors
  5. kit zip for pilot files
python -m skycache report doctor
python -m skycache report status
python -m skycache report export --out data/ops/node-report.html
python -m skycache report kit --out data/report-kit

Path 19

Partner pilot kit (NGO / university / civil protection)

For: Institutions, field coordinators

  1. skycache partner readiness --data-dir data (want go_sim_pilot true)
  2. Download a kit from /partners/ or build: partner kit --type ngo --zip
  3. Walk LEGAL-ONE-PAGER + CHECKLIST on a lab laptop before field
  4. Training half-day + FIELD-DAY runbook
  5. After field: fill pilot-report then partner report validate
  6. Email skycache@jonbailey.xyz with subject [NGO pilot] / [University kit]
python -m skycache partner readiness --data-dir data
python -m skycache partner kit --type ngo --out data/partner-kit-ngo --zip
python -m skycache partner package-all --out data/partner-kits
# After field:
# python -m skycache partner report validate pilot-report.json

Everyday commands

# Health & legal surface
python -m skycache doctor
python -m skycache capabilities
python -m skycache ops status

# Skybrary
python -m skycache skybrary doctor --verify --record
python -m skycache skybrary pack --profile literacy-1gb

# Live FTA + Pass Autopilot
python -m skycache rx doctor
python -m skycache rx schedule --hours 24
python -m skycache rx arm --hours 12
python -m skycache rx watch --dir ./satdump-products --once
python -m skycache rx duty

# Multi-node sim
python -m skycache nexus federation --nodes 2
python -m skycache nexus validate --nodes 2

# Portal
python -m skycache serve --sim --host 127.0.0.1 --port 8080