kitsunping

Network Profiles

Kitsunping can apply different “profiles” (sets of tunables) depending on current connectivity and quality.

Profiles are implemented as shell scripts and are applied by the policy executor.

Available profiles

These are the profiles currently present in this repo:

Profile scripts live in: net_profiles/

How a profile gets selected

High-level flow:

1) The daemon monitors Wi‑Fi/mobile status and writes state to cache/daemon.state. 2) When an event happens (Wi‑Fi join/leave, iface change, degraded signal), the daemon triggers the executor. 3) If a profile decision is made (built-in or via policy/rules/decide_profile.sh), a PROFILE_CHANGED event is emitted. 4) The executor writes/reads cache/policy.target, compares it vs cache/policy.current, and applies changes when needed.

See the full flow diagram in Docs/10-runtime/daemon.md.

Trade-offs / notes

Contributing

PRs are welcome: