Skip to content

higherselfprotocol/reciprocal-intelligence

Repository files navigation

Reciprocal Intelligence (PoC)

A consent‑first, offline‑friendly relay for moving small messages across communities with little or intermittent connectivity.

This project prototypes a community‑governed communications bridge that can hop short messages across nearby phones (Bluetooth/Nearby), LoRa/Meshtastic, Delay/Disruption Tolerant Networking (DTN), and ultimately SMS—all while enforcing explicit, reversible consent and data minimization.

Status: Proof‑of‑Concept (for research & field prototyping). Not production‑ready.

Why it exists

In places where internet is unreliable or expensive, communities still need ways to coordinate: alerts, check‑ins, small surveys, logistics. This PoC aims to:

Deliver tiny messages without internet by exploiting whatever transport is available (BT, LoRa, DTN, SMS).

Center consent & governance (grant/deny/revoke, community oversight) rather than collect data by default.

Minimize identifiers & risk (salted hashes, short TTLs, local storage, no surveillance).

How it works (at a glance)

Local hops (Android app) The Android OfflineRelayApp advertises and discovers peers using Google Nearby Connections (P2P, point‑to‑point). It can pass small JSON payloads between nearby devices, letting messages “walk” toward a node that has a modem or other uplink.

Gateway node (Python agent + GSM modem) On a node with a GSM modem running gammu-smsd, inbound SMS arrive as text files in a spool directory. The Python agent watches that inbox, parses messages, and enforces consent before acting.

Consent ledger & auto‑replies A tiny SQLite ledger records consent events (granted/denied/revoked) keyed by salted+hashed identifiers (no plaintext numbers in the DB). The agent replies automatically with bilingual (ES/EN) messages:

CONSENT YES → records consent and sends a welcome.

REVOKE → revokes consent and confirms.

Other texts without consent → politely blocked.

Outbound queue (PoC) The CLI can queue outbound SMS. For safety in this PoC, queue processing won’t send when only a hash is known (prevents accidental disclosure). Direct sends use gammu-smsd-inject.

Optional transports

DTN (IBR‑DTN): Example config to bundle and forward payloads with long delays or disruptions.

Meshtastic/LoRa: Minimal example to push JSON over a LoRa mesh.

Ethos

Guided by CARE Principles & UNESCO AI Ethics (2021):

Consent & Revocation: People can opt‑in and opt‑out at any time via SMS.

Local Control: Keep plaintext identifiers out of the DB; use salts & hashes.

Data Minimization: Keep only what’s needed, for as short as needed (TTL).

No Surveillance: No background scraping, tracking, or remote analytics.

Community Governance: Add community (ayllu) approval steps before deployments.

About

Reciprocal Intelligence

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors