How satunix/luna works
Luna packages safety and governed workflows around the pi coding agent: profiles select capabilities, tool calls are gated, delegated work is bounded, and completion is verified. The repository also includes memory and recovery extensions, a local web console, Android remote control, and an optional autonomous runner. Edges are limited to README-described behavior and relationships visible in the supplied excerpts or source index; unsampled internals are represented without inferred call chains.
Main entry points: Bridge.kt Android bridge · tool-firewall/index.ts Tool firewall · profiles.ts Profiles · delegation-guard/index.ts Delegation guard
Components 20
Safety and governance
- Profiles
packages/core/lib/profiles.ts - Tool firewall
packages/extensions/src/tool-firewall/index.ts - Firewall audit
packages/extensions/src/tool-firewall/trajectory.ts - Delegation guard
packages/extensions/src/delegation-guard/index.ts - Verification gate
packages/extensions/src/verify-gate/index.ts
Agent workflows
- Durable memory
packages/extensions/src/memory-vault/index.ts - Recovery orchestration
packages/extensions/src/recovery-orchestrator/index.ts - Effort controls
packages/extensions/src/effort/index.ts
User interfaces
- Control centre
packages/extensions/src/control-center/index.ts - Console server
packages/web-ui/server/server.ts - Console API
packages/web-ui/server/routes.ts - Web console client
packages/web-ui/src/public/js/app.ts - Console rendering
packages/web-ui/src/public/js/render.ts
Autonomous runs
- Autonomous runner
packages/autonomy/lib/engine.ts - Container boundary
packages/autonomy/lib/boundary.ts
Remote control
- Android remote app
apps/android/app/src/main/java/io/github/satunix/piremote/MainActivity.kt - Android bridge
apps/android/app/src/main/java/io/github/satunix/piremote/Bridge.kt - Remote client
apps/android/app/src/main/java/io/github/satunix/piremote/Remote.kt - Host store
apps/android/app/src/main/java/io/github/satunix/piremote/HostStore.kt
Other components
- Pi user
Connections 19
- Pi user → Profiles: selects profile
README.md - Profiles → Tool firewall: selects firewall mode
README.md - Pi user → Tool firewall: approves risky calls
README.md - Tool firewall → Firewall audit: records decisions
README.md - Pi user → Delegation guard: delegates work
README.md - Delegation guard → Verification gate: checks completion
README.md - Pi user → Verification gate: requests verification
README.md - Pi user → Durable memory: uses remembered context
README.md - Pi user → Recovery orchestration: continues bounded work
README.md - Pi user → Effort controls: sets effort
README.md - Pi user → Control centre: opens controls
README.md - Pi user → Console server: opens console
README.md - Console server → Console API: routes API requests
packages/web-ui/server/server.ts - Web console client → Console rendering: renders views
packages/web-ui/src/public/js/app.ts - Android remote app → Android bridge: creates bridge
apps/android/app/src/main/java/io/github/satunix/piremote/MainActivity.kt - Android bridge → Remote client: uses remote client
apps/android/app/src/main/java/io/github/satunix/piremote/Bridge.kt - Android bridge → Host store: uses host store
apps/android/app/src/main/java/io/github/satunix/piremote/Bridge.kt - Pi user → Autonomous runner: starts optional run
README.md - Autonomous runner → Container boundary: runs inside boundary
README.md