relevancekit

Implement contextual relevance clues for Apple Watch Smart Stack widgets.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/KumarAdi8/AgentKit --skill relevancekit
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: relevancekit
Source: https://github.com/KumarAdi8/AgentKit/tree/main/skills/relevancekit
Command: npx skills add https://github.com/KumarAdi8/AgentKit --skill relevancekit

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps watchOS widget authors increase the chance their widget appears in the Apple Watch Smart Stack by providing precise, on-device contextual relevance clues so the system surfaces the right widget at the right time.

Core Features & Use Cases

  • Relevance provider patterns: Implement AppIntentTimelineProvider.relevance() or RelevanceEntriesProvider to supply time, location, fitness, sleep, and hardware clues.
  • Permission & preview guidance: Request location and HealthKit permissions in both the app and widget extension and handle context.isPreview and placeholder entries for reliable previews.
  • Grouping, deduplication, and association: Use WidgetRelevanceGroup and .associatedKind(_:) to control grouping behavior and avoid duplicate Smart Stack cards.
  • Use case: Surface meeting cards 15 minutes before start, show commute tools during an inferred commute, or surface media controls when headphones connect.

Quick Start

Add relevance clues to your widget by implementing relevance() to return ordered WidgetRelevance attributes and ensure required permissions are granted in both the app and widget extension.

Frequently Asked Questions about relevancekit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I increase widget visibility in the Apple Watch Smart Stack?

To increase widget visibility in the Apple Watch Smart Stack, supply contextual relevance clues using RelevanceKit by implementing WidgetRelevance attributes for time, location, fitness, sleep, and hardware scenarios. This helps watchOS surface the right widget at the right time.

How does a timeline provider supply relevance clues for watchOS widgets?

A timeline provider supplies relevance clues by implementing the AppIntentTimelineProvider.relevance() method or using RelevanceEntriesProvider to return ordered WidgetRelevance attributes. These attributes inform the system when your widget is contextually relevant.

Do I need HealthKit and location permissions for watchOS widget relevance?

Yes, you need HealthKit and location permissions for widget relevance. You must request these permissions in both your main app and widget extension to enable context-driven relevance updates for fitness, sleep, and location scenarios.

Can I group and deduplicate Smart Stack cards using RelevanceKit?

You can group and deduplicate Smart Stack cards using WidgetRelevanceGroup and the .associatedKind(_:) attribute. This controls grouping behavior and prevents duplicate widget cards from appearing in the watchOS Smart Stack.

What is the best way to surface a widget 15 minutes before a meeting on watchOS?

The best way to surface a widget before a meeting is to supply time-based WidgetRelevance attributes through your timeline provider. This contextual clue tells the system to surface your meeting card 15 minutes before the event starts.

Does RelevanceKit work with older watchOS versions?

RelevanceKit applies specifically to watchOS 26+ widgets. It relies on modern timeline providers and RelevanceEntriesProvider implementations, so older watchOS versions do not support these contextual Smart Stack relevance clues.