Skip to content
CAI
Software that uses CAICheck a score

StanfordBDHG/HealthGPT

47.1

Weak · 1 October 2026

1.3k

lines of production code

Swift

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

HealthGPT is an iOS application that integrates Apple HealthKit data with Large Language Models to provide personalized health insights. It supports multiple inference backends, including cloud-based OpenAI services, local on-device models, and private network execution via a local Fog Node. The system features a modular architecture built on the Spezi framework, handling user onboarding, health data fetching, and secure keychain storage for API keys.

Features

Adds feature flags and storage keys for onboarding, LLM source, and testing

The SharedContext module now includes FeatureFlags.swift and StorageKeys.swift to manage application settings and testing configurations. Users can now configure the app to skip or force the onboarding flow, reset keychain storage for API key testing, and enable local LLM or mock modes via command-line arguments. Additionally, persistent storage keys are defined for tracking onboarding completion, selecting the LLM source (local vs. OpenAI), choosing specific OpenAI models, enabling text-to-speech, and selecting fog models.

HealthGPT/SharedContext · high confidence

HealthGPT now integrates Apple HealthKit data into LLM conversations

The HealthGPT application now fetches and incorporates the user's health metrics from Apple HealthKit into its AI interactions. A new \HealthDataFetcher\ module retrieves step count, active energy, exercise time, body weight, resting heart rate, and sleep duration for the past 14 days. This data is processed by a \PromptGenerator\ to create a system prompt that provides the LLM with recent health context, allowing the assistant to offer personalized advice based on the user's actual activity and wellness trends.

HealthGPT/HealthGPT · high confidence

New multi-step onboarding flow with LLM source selection

The HealthGPT application now presents a structured onboarding experience that guides users through a welcome screen, a disclaimer, and a critical choice of LLM source (OpenAI, Fog, or Local). Depending on the selected source, users are directed to specific configuration steps: entering an OpenAI API key and selecting a model (including new o1 and o3 variants), configuring local fog nodes for private network inference, or downloading a local model. The flow also includes a step to request HealthKit permissions if available on the device.

HealthGPT/Onboarding · high confidence

Removals

Removal of Xcode project metadata and license files

The Xcode project configuration file (project.pbxproj) and associated license metadata files within the TemplateApplication.xcodeproj directory have been deleted. This change removes the project's build settings, target definitions, and file references from the repository.

TemplateApplication.xcodeproj · high confidence

Removal of basic UI test suite

The \TemplateApplicationUITests\ target has been removed from the project. This eliminates the existing UI test infrastructure, including the \testGreeting\ function that previously launched the application, meaning UI regression testing for this component is no longer performed by this specific test suite.

TemplateApplicationUITests · high confidence

Removal of default template application structure

The default starter application code and associated asset files have been removed from the project. This includes the deletion of the main SwiftUI App entry point (TemplateApplication.swift), the app icon configuration, accent color assets, and the Info.plist license file. Users will no longer see the default 'Welcome to the Template Application!' screen upon launching the app.

TemplateApplication · high confidence

Behavioural changes

App configuration and localization updates for HealthGPT

The HealthGPT app's supporting files have been updated to include a new app icon, specific HealthKit entitlements (including background delivery and increased memory limits), and comprehensive localization strings for API key input, HealthKit permissions, and legal warnings. The Info.plist has been modified to enable Bonjour services for HTTP/HTTPS traffic and remove the non-exempt encryption declaration, while the accent color asset has been adjusted to use the system red color.

HealthGPT/Supporting Files · high confidence

HealthGPT app restructured to use Spezi framework with multi-platform LLM support

The HealthGPT application has been migrated to the Spezi framework, introducing a new modular architecture for managing dependencies and health data. This change enables the app to support multiple Large Language Model (LLM) backends, including OpenAI, local on-device models via SpeziLLMLocal, and Fog-based execution via SpeziLLMFog, in addition to a mock platform for testing. The app now explicitly requests HealthKit permissions for resting heart rate alongside other metrics, and utilizes a new testing setup modifier to control onboarding flow and keychain storage during development.

HealthGPT · high confidence

Project rebranded to HealthGPT with updated documentation and configuration

The project has been renamed from the generic 'StanfordBDHG Template Application' to 'HealthGPT', an iOS app for interacting with Apple Health data using LLMs. This change updates the application name, bundle identifier references (e.g., in \.gitignore\ and \.periphery.yml\), and copyright headers across configuration files like \README.md\, \CONTRIBUTORS.md\, and \LICENSE.md\. The \README.md\ now describes HealthGPT's specific features, including Spezi integration, local LLM support, and fog-node capabilities, replacing the previous template documentation.

(repo-wide) · high confidence

Project renamed to HealthGPT with Spezi LLM integration and new launch arguments

The Xcode project has been renamed from TemplateApplication to HealthGPT, updating all build targets, schemes, and workspace references. The application now integrates the Spezi framework ecosystem, specifically adding dependencies for SpeziLLM, SpeziLLMFog, SpeziLLMLocal, SpeziLLMLocalDownload, SpeziLLMOpenAI, SpeziOnboarding, SpeziHealthKit, and SpeziKeychainStorage to support local and cloud-based LLM interactions. Additionally, the run scheme has been updated to include command-line arguments for --mockMode, --localLLM, --showOnboarding, and --resetSecureStorage, and test plans have been configured for unit and UI tests.

HealthGPT.xcodeproj · high confidence

Re-enable Fog-based LLM execution with local Docker stack

Users can now route LLM requests to a local network Fog Node instead of using on-device or cloud inference. This change introduces a minimal Docker Compose stack (Traefik, Ollama, and Avahi) that serves as the default local endpoint (\spezillmfog.local\ over HTTP). The app discovers and connects to this node via mDNS/Bonjour, allowing users to select the Fog option during onboarding or in settings to offload inference to their local machine.

FogNode · high confidence

Refactored fastlane configuration and deployment lanes for HealthGPT

The fastlane configuration has been migrated from the StanfordBDHG Template Application to the HealthGPT project, removing the legacy Appfile, Gymfile, and Scanfile in favor of an inline APP\_CONFIG in the Fastfile. The deployment workflow has changed from a dedicated 'beta' lane to a unified 'deploy' lane that supports both TestFlight and App Store releases based on the environment, with configurable app identifiers, provisioning profiles, and version bumps. New lanes have been added for generating screenshots (targeting iPhone 17 Pro Max and iPad Pro 13-inch) and running CodeQL, while existing test and build lanes now include specific simulator configurations and validation skip arguments.

fastlane · high confidence

Test coverage

Added UI tests for chat, settings, and onboarding flows; Added unit tests for the PromptGenerator.

Dependencies

Update Swift Package Manager dependencies and remove Ruby Gemfile.lock

The project's resolved Swift package dependencies (Package.resolved) have been updated, including major version bumps for the Stanford Spezi ecosystem (Spezi 1.9.3, SpeziChat 0.2.5, SpeziLLM 0.12.3) and other libraries like MLX-Swift (0.29.1) and OpenAPIKit (3.9.0). Additionally, the Ruby-based build dependency manifest (Gemfile.lock) has been removed, indicating a shift away from Ruby-based tooling for this project.

(dependencies) · high confidence

Housekeeping

Adds MIT license metadata to UI figure assets

The Figures directory now includes explicit .license files for all UI screenshot assets (Chat, Example, Export, and Settings in both light and dark modes). These files declare the MIT license and copyright attribution to Stanford University, ensuring compliance with open-source licensing requirements for visual assets distributed with the project.

Figures · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 42 → 47 (+4.8)
  • Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (-0.2)
  • Architecture 69 → 69 (+0.0)
  • Maturity 28 → 41 (+12.3)
  • Readiness 40 → 42 (+1.3)
  • Security 50 → 50 (+0.0)

New (26)

  • Documentation: no installation or build instructions (README.md)
  • Duplicated block (18 lines × 2) (HealthGPT/Onboarding/Fog/FogInformationView.swift)
  • Outdated: gzipswift
  • Outdated: mlx-swift
  • Outdated: spezi
  • Outdated: spezifoundation
  • Outdated: spezihealthkit
  • Outdated: spezillm
  • Outdated: spezionboarding
  • Outdated: spezistorage
  • Outdated: speziviews
  • Outdated: swift-argument-parser
  • Outdated: swift-atomics
  • Outdated: swift-cmark
  • Outdated: swift-collections
  • Outdated: swift-http-types
  • Outdated: swift-jinja
  • Outdated: swift-log
  • Outdated: swift-openapi-generator
  • Outdated: swift-openapi-runtime
  • …and 6 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

StanfordBDHG/HealthGPT was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 1 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 0673a1c79e7af3a71b10fbb2ce217102c3b4522a — the exact code this score is about.
  • Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.