Skip to content

Latest commit

 

History

History
28 lines (21 loc) · 1.59 KB

File metadata and controls

28 lines (21 loc) · 1.59 KB

Overview

The one-sentence architecture

PiNative is a native SwiftUI/AppKit shell that owns projects, navigation, presentation, and cached UI state while a separate pi --mode rpc subprocess owns agent execution, providers, tools, and canonical Pi session files.

SwiftUI shell → AppModel → one PiConversationModel per chat
                              ↓
                         PiRPCClient actor
                              ↓ JSONL over stdin/stdout
                         pi --mode rpc

Start with these five files

Ownership rule

  • AppModel answers which project/chat/surface is active?
  • PiConversationModel answers what is happening in this chat?
  • PiRPCClient answers how do commands and events cross the process boundary?
  • Views render observable state and keep only ephemeral presentation state locally.