Activitykit

iOS Live Activity og Dynamic Island-mønstre pluss en 20-punkts ActivityKit-gjennomgangsjekkliste

av dpearson2699 · dpearson2699/swift-ios-skills

Bestått ★ 8.8/10

Activitykit — iOS Live Activity og Dynamic Island-mønstre pluss en 20-punkts ActivityKit-gjennomgangsjekkliste

Hva den gjør

Veileder implementering og gjennomgang av iOS Live Activities og Dynamic Island-presentasjoner bygget på ActivityKit, som dekker ActivityAttributes og ContentState-design, request/update/end livssyklusen, Lock Screen og Dynamic Island-layouter, APNs push-to-update og push-to-start, og en 20-punkts gjennomgangsjekkliste. Utløses når arbeid involverer ActivityKit, Live Activities, Dynamic Island kompakte/utvidede/minimale regioner, aktivitet push-tokens, eller aps.content-state nyttelast. Inkluderer en 950-linjers referansefil med fullstendige Swift-snutter, APNs nyttelast-eksempler og Info.plist-nøkler.

Testrapport

Installert i en midlertidig HOME via installasjonsblokken ovenfor og bekreftet at ~/.claude/skills/activitykit/SKILL.md lander; frontmatter parset til kun name+description (554 tegn), alle tre råfilene returnerer HTTP 200, den relative lenken og dens #push-to-update-server-payload-format anker løser begge til linje 234 i den 953-linjers referansen, og grep fant ingen curl|sh, base64-nyttelast, hemmelig eksfiltrering, eller hardkodede maskinstier (den eneste curl er et dokumentert APNs-eksempel som bruker $JWT_TOKEN). For utdata skrev jeg en 130-linjers ride-sharing Live Activity-fil med 12 plantede ActivityKit-defekter og gjennomgikk den to ganger: baseline fanget 6 (deprecated contentState API, manglende end ved avbryt/logg ut, PII på Lock Screen, 180KB blob i ContentState, nettverk i widget-visningen, content-state nøkkel-mismatch) mens den sjekkliste-drevne gjennomgangen fanget alle 12, inkludert de fire baseline helt bommet på — NSSupportsLiveActivities som sitter i widget-utvidelsen i stedet for vertsappen (fatal, ingenting starter), ingen staleDate/context.isStale håndtering, ingen ActivityAuthorizationInfo gate, og style:.transient som var feil for vedvarende rutesporing — pluss at den diagnostiserte *hvorfor* nyttelasten feiler (ClosedRange<Date> koder som en to-elementers array, ikke ISO-strengen som ble sendt) og at apns-topic trenger .push-type.liveactivity-suffikset. Redusert til 8 fordi ferdighetsgjennomgangen, som er sjekkliste-formet, droppet try!/force-unwrapped-URL-krasjet som baseline flagget, og nothing here compiles or runs on a device.

Testet på: 2026-07-21 · Claude Code 2.x (agent harness)

Installer

git clone --depth 1 https://github.com/dpearson2699/swift-ios-skills.git /tmp/activitykit-src
mkdir -p ~/.claude/skills
cp -R /tmp/activitykit-src/skills/activitykit ~/.claude/skills/activitykit
# Installs SKILL.md + references/activitykit-patterns.md + evals/evals.json. No deps, no API keys.
# Repo holds 86 sibling iOS skills; this copies only activitykit.
# Alternative (whole marketplace, Claude Code plugin): /plugin marketplace add dpearson2699/swift-ios-skills
# Alternative (interactive picker, any agent): npx skills add dpearson2699/swift-ios-skills
# Cleanup: rm -rf /tmp/activitykit-src

Kommandoer og eksempelprompter

  • /activitykitiOS Live Activity og Dynamic Island-mønstre pluss en 20-punkts ActivityKit-gjennomgangsjekkliste

Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):

  • Add a Dynamic Island layout for delivery tracking
  • Implement push-to-update Live Activities for scores
  • Review my ActivityKit lifecycle handling code