import AppIntents

/// Curates the handful of genuinely voice-worthy actions for Siri / Spotlight (§8: keep the spoken
/// set to ~4 — approve, unblock, open, "what needs me" — and expose the long tail through Shortcuts
/// only). Every phrase must name the app; `\(.applicationName)` resolves to "Nucleic".
struct NucleicShortcuts: AppShortcutsProvider {
    static var appShortcuts: [AppShortcut] {
        AppShortcut(
            intent: SessionsNeedingMeIntent(),
            phrases: [
                "What needs me in \(.applicationName)",
                "What's waiting in \(.applicationName)",
                "Which agents need me in \(.applicationName)",
            ],
            shortTitle: "What Needs Me",
            systemImageName: "bell.badge")

        AppShortcut(
            intent: AnswerApprovalIntent(),
            phrases: [
                "Approve in \(.applicationName)",
                "Answer an approval in \(.applicationName)",
            ],
            shortTitle: "Answer Approval",
            systemImageName: "checkmark.shield")

        AppShortcut(
            intent: SendFollowUpIntent(),
            phrases: [
                "Send a follow-up in \(.applicationName)",
                "Tell an agent in \(.applicationName)",
            ],
            shortTitle: "Send Follow-Up",
            systemImageName: "arrowshape.turn.up.right")

        AppShortcut(
            intent: OpenSessionIntent(),
            phrases: [
                "Open a session in \(.applicationName)",
                "Open \(.applicationName)",
            ],
            shortTitle: "Open Session",
            systemImageName: "bubble.left.and.text.bubble.right")
    }
}
