Internals
Source-of-truth technical reference for engineers and integrators working on or around the KumoApp source tree.
These are the same technical documents that live inside the
KumoApp source tree under
docs/. They describe the product scope, the shared KumoCoreKit control
layer, the macOS SwiftUI interface, the kumo CLI, operations concerns
(permissions, persistence, releases, updates), quality expectations, and the
small set of implementation standards that survive across UI and runtime
changes.
If you are wiring an agent into Kumo, packaging your own build, or hardening a fork, start here. For product usage, the Getting Started and Advanced tracks are more accessible entry points.
Product
Core (KumoCoreKit)
Control layer
KumoController facade, ownership boundaries, and the shared rules every front-end follows.
Mihomo runtime and controller
Process supervision, controller client, TUN runtime settings, and transport details.
Profiles and runtime configuration
Profile sources, runtime config generation, override merging, and Kumo-owned keys.
Interfaces
macOS SwiftUI interface
Scenes, navigation, toolbar, status item, App Intents, and UI constraints.
CLI and agent control
kumo command design, JSON envelopes, logging, agent skills, and service-mode behavior.
Operations
System integration and permissions
App bundle, entitlements, system proxy, Spotlight, Services, App Intents, and permission scope.
Persistence and logging
Application Support layout, state files, preferences, backups, and log channels.
Release management
GitHub Releases feed, DMG artifacts, latest.yml manifest, and release-build helpers.
App updates
Five-minute polling, local notifications, checksum verification, and installer handoff.
Quality
Standards
Page titles and window chrome
Where destination titles live, and why pages do not repeat them inline.
Menu bar status item
AppKit NSStatusItem structure, menu requirements, and visual rules.
Proxies page scroll container
Why the Proxies card list owns a single full-page ScrollView.
These documents are kept faithful to the upstream KumoApp/docs/ source. If
behavior described here disagrees with the code, the code is the bug — open
an issue or PR against
KumoApp so both can be fixed
together.