Files
sleepy_agent_ios/PROJECT_STATUS.md
T
sleepy bbcf0c74bb Initial iOS port - Complete source code and build system
- 19 Swift source files (~4900 lines)
- Complete UI with SwiftUI (MainView, SettingsView, MessageBubble, InputBar)
- Inference layer (LlmEngine, Agent, ToolCalling, ConversationContext)
- Services (Audio, TTS, WebSearch, ModelDownload, Storage)
- Build system: Makefile, Package.swift, Podfile
- Documentation: BUILD.md, plan.md, PROJECT_STATUS.md
- Ready for Xcode build - just need LiteRT dependency added
2026-04-06 14:26:08 +02:00

4.1 KiB

Sleepy Agent iOS - Project Status

What's Complete

Source Code (19 Swift files)

  • App Layer - App entry point, lifecycle management, audio session config
  • Core Layer - Models (Message, ToolCall, ModelVariant), DI container
  • Inference Layer - LlmEngine, Agent, ConversationContext, ToolCalling
  • Services Layer - AudioRecorder, TtsService, WebSearchService, ModelDownloadService, ConversationStorage
  • UI Layer - MainView, SettingsView, MessageBubble, InputBar + ViewModels

Build System

  • Package.swift - Swift Package Manager manifest
  • Podfile - CocoaPods configuration for LiteRT
  • Makefile - Build automation (build, archive, ipa, install)
  • Info.plist - App configuration and permissions
  • SleepyAgent.entitlements - Sandbox and capability declarations
  • exportOptions.plist - IPA export configuration

Scripts

  • create-project.sh - Project setup helper

Documentation

  • README.md - Project overview
  • BUILD.md - Detailed build instructions
  • plan.md - Architecture decisions and porting notes
  • FILES.md - File structure reference

⚠️ What's Missing (Needs Xcode)

Critical (Must Have)

  1. Xcode Project File (.xcodeproj or .xcworkspace)

    • Can't create without Xcode installed
    • Could try swift package generate-xcodeproj if you have it
  2. LiteRT Framework Integration

    • Need to add TensorFlow Lite / LiteRT dependency
    • Options:
      • CocoaPods: pod 'TensorFlowLiteSwift'
      • Swift Package Manager: Add TensorFlow repo
      • Manual: Download and link framework
  3. Code Signing Setup

    • Need Apple Developer account or free signing for personal use
    • Team ID in project settings

Nice to Have

  1. App Icons - Create in Assets.xcassets
  2. Launch Screen - Storyboard or SwiftUI
  3. Unit Tests - Test targets

How to Build (Step by Step)

Since Xcode isn't installed on this machine, here's what YOU need to do on your Mac:

1. Install Prerequisites

# Install Xcode from App Store
# Then install CocoaPods
sudo gem install cocoapods

2. Setup Project

cd sleepy_agent_ios

# Option A: Use Swift Package Manager (easiest)
open Package.swift

# Option B: Use CocoaPods
pod install
open SleepyAgent.xcworkspace

3. Add LiteRT

In Xcode:

  • File → Add Package Dependencies
  • Add: https://github.com/tensorflow/tensorflow
  • Or use the CocoaPods version

4. Configure & Build

# Check environment
make check

# Build for simulator
make build

# Build for device (requires signing setup)
make build-release

# Create archive
make archive

# Create IPA (requires proper signing)
make ipa

Expected Output

After successful build, you'll have:

build/
├── DerivedData/           # Build intermediates
├── SleepyAgent.xcarchive  # Archive for distribution
└── Export/
    └── SleepyAgent.ipa    # Final IPA file

Testing

On Simulator

make build
# Run in Xcode with iPhone 15 Pro simulator selected

On Device

# Connect iPhone via USB
make install
# Or use Xcode: Cmd+R with device selected

IPA Installation

  • AltStore (free, no dev account needed)
  • Xcode (with dev account or free personal team)
  • TestFlight (for distribution)

Known Limitations

  1. No Xcode on build machine - Couldn't create .xcodeproj or compile
  2. LiteRT version - May need to adjust based on latest release
  3. iOS 15 minimum - AttributedString markdown requires iOS 15+
  4. Physical device recommended - Simulator has limited audio/camera support

Next Steps for You

  1. Copy all files to your Mac
  2. Install Xcode
  3. Run make setup or pod install
  4. Open in Xcode
  5. Add LiteRT dependency
  6. Set signing team
  7. Build (Cmd+B)
  8. Run on device (Cmd+R)
  9. Create IPA (Product → Archive → Distribute)

File Count

  • 19 Swift source files
  • 6 Configuration files
  • 4 Documentation files
  • 2 Build scripts

Total: 31 files ready to use

Help

If you get stuck:

  1. Check BUILD.md for detailed troubleshooting
  2. File an issue: https://github.com/sleepyeldrazi/sleepy-agent/issues
  3. Refer to Android version for logic reference