All work

Applied AI · Native productivity

Spookling — AI Agent

A native AI agent that streams responses in real time and turns model tool calls into useful actions across Apple productivity services.

Role
iOS Tech Lead
Period
2025 — Present
Platforms
iOS
Spookling app icon showing a friendly ghost in a witch hat on purple
Contribution

Designed and shipped the iOS architecture, including modular Swift packages, Server-Sent Events, and native EventKit actions.

Real-time

streamed AI responses

Native

calendar and reminder actions

Product context

Spookling brings agentic AI into a native iOS experience. The important product challenge was not simply displaying model output; it was making a streaming, tool-using system feel dependable inside the interaction patterns people already understand on iPhone.

Engineering approach

The app was organized as a modular Swift package architecture so networking, streaming, conversation state, and native integrations could evolve independently. Server-Sent Events deliver partial responses as they arrive. Tool calls are decoded into typed operations before they can request calendar or reminder changes through EventKit.

What the work demonstrates

This project combines product judgment with applied AI engineering: responsive streaming, explicit integration boundaries, native platform behavior, and an architecture a team can continue to extend.

Engineering challenges

  1. Keep streamed model output responsive while maintaining predictable UI state.
  2. Translate untrusted, evolving tool-call payloads into safe native actions.
  3. Keep a fast-moving AI product modular enough for multiple engineers to extend.

Key decisions

  1. Separated transport, conversation state, tool decoding, and Apple-platform integrations into focused Swift packages.
  2. Used SSE for progressive response delivery instead of waiting for a complete model result.
  3. Mapped tool calls through typed boundaries before they reached EventKit.