Skip to content
Productivity
Skill

/getting-started

Interactive post-onboarding tour that adapts to whatever data exists (calendar, Granola, or none). Use right after onboarding, or when the user says 'show me around', 'how do I start'. Also use proactively when the vault is < 7 days old. Not for the initial setup itself; use

From plugin
davekilleen-dex
46191 skills28 agents24 commands
Install
$ npx -y skills add davekilleen/Dex --skill getting-started --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ†’
  • You can call itInvoke it directly when you want it.
  • Slash command/getting-started

Context preview

The summary Claude sees to decide when to auto-load this skill.

Interactive post-onboarding tour that adapts to whatever data exists (calendar, Granola, or none). Use right after onboarding, or when the user says 'show me around', 'how do I start'. Also use proactively when the vault is < 7 days old. Not for the initial setup itself; use

SKILL.md

getting-started.SKILL.md
name: getting-started
description: "Interactive post-onboarding tour that adapts to whatever data exists (calendar, Granola, or none). Use right after onboarding, or when the user says 'show me around', 'how do I start'. Also use proactively when the vault is < 7 days old. Not for the initial setup itself; use `setup`."

Purpose

Transform the post-onboarding experience from "blank chat window" to guided value delivery. Adaptive based on what data sources are available (calendar, Granola, or neither).

When to Run

  • Automatically suggested at session start if vault < 7 days old
  • User types `/getting-started`
  • After onboarding completion (Step 11)
  • User says they're not sure what to do next

Entry Point

Step 1: Verify Onboarding

Call `check_onboarding_complete()` from onboarding-mcp to verify vault status.

The first-week reveal already ran during onboarding. Do not repeat the first-week statistics or present them as a new discovery, even if an older completion marker suggests analysis was deferred. `/getting-started` is now the deeper tour.

Step 2: Environment Check

Check what data sources are available:

  • Calendar: Try calling calendar MCP (if fails, not available)
  • Granola: Call `granola_check_available()` from granola-mcp

Based on results, route to appropriate flow.

---

Flow A: Has Calendar + Granola

**The Deeper History Flow**

Historical Data Discovery

๐Ÿ‘‹ **Welcome back, [Name]!**

You have already seen this week's calendar snapshot, so I won't repeat it. Let's look at the deeper meeting history you can turn into useful context.

**Calendar:** โœ… Connected
**Granola:** โœ… Connected

I'll check how much Granola history is available before suggesting what to process.

Then execute: 1. Analyze Granola data extent using helper function (6 months by default) 2. If more data exists, ask if they want to see full extent 3. Present the historical summary

๐Ÿ“Š **Your Granola history:**

**Granola data (last 6 months):**
โ€ข [N] meetings captured
โ€ข Going back [days_back] days (to [oldest_date])
โ€ข [M] unique people detected ([I] internal, [E] external)
โ€ข [K] external companies identified

**If `has_more_data` is True, ask:**

๐Ÿ’ก **I see there are meetings beyond 6 months.**
   Want me to check how much more history you have?
   This will take a few more seconds.
   
   โ†’ Yes - show me the full extent
   โ†’ No - 6 months is plenty

**If user says "Yes", refetch with `extended=True` and update:**

๐Ÿ“Š **Updated - Full data extent:**
โ€ข [N_total] meetings captured (found [N_new] older meetings)
โ€ข Going back [total_days] days (to [oldest_date])
โ€ข [M_total] unique people detected
โ€ข [K_total] external companies identified

---

Here's what I can create from your Granola history:

**๐Ÿ“‡ People & Company Pages** (Recommended: All history)
   โœ… Builds context for relationships
   โœ… Low overhead - just reference pages
   โœ… Helps you see interaction history

**๐Ÿ“ Meeting Notes** (Recommended: Last 30 days)
   โœ… Searchable record of discussions
   โš ๏ธ  Medium overhead - lots of reading material
   โœ… Good for finding past decisions

**โœ… Action Items / Todos** (Recommended: Last 7 days)
   โœ… Actionable recent tasks
   โš ๏ธ  Can be overwhelming if too many
   โš ๏ธ  Old todos often outdated or already done

**What would you like me to do?**

1๏ธโƒฃ Smart default (Recommended)
   โ€ข People/companies: All [days_back] days
   โ€ข Meeting notes: Last 30 days (~[est_30d] meetings)
   โ€ข Todos: Last 7 days (~[est_7d] meetings)

2๏ธโƒฃ Recent only (Conservative)
   โ€ข Everything: Last 7 days only

3๏ธโƒฃ Full history (Comprehensive)
   โ€ข Everything: All [days_back] days

4๏ธโƒฃ Custom (You choose)
   โ€ข Pick different time ranges for each type

5๏ธโƒฃ Just going forward
   โ€ข Start fresh from today

6๏ธโƒฃ Skip for now

User Chooses Processing Strategy

Use AskUserQuestion tool. If AskUserQuestion is not available, prompt in CLI with the same numbered options and capture the selection:

{
  "questions": [{
    "id": "granola_strategy",
    "prompt": "How would you like to process your Granola data?",
    "allow_multiple": false,
    "options": [
      {"id": "smart", "label": "1๏ธโƒฃ Smart default - People/companies (all) + Notes (30d) + Todos (7d)"},
      {"id": "recent", "label": "2๏ธโƒฃ Recent only - Everything from last 7 days"},
      {"id": "full", "label": "3๏ธโƒฃ Full history - Everything from all available data"},
      {"id": "custom", "label": "4๏ธโƒฃ Custom - I'll choose time ranges for each type"},
      {"id": "forward", "label": "5๏ธโƒฃ Just going forward - Start fresh from today"},
      {"id": "skip", "label": "6๏ธโƒฃ Skip for now"}
    ]
  }]
}

Custom Mode Flow

If user selects "custom", ask for granular preferences:

{
  "title": "Choose time ranges for historical data",
  "questions": [
    {
      "id": "people_range",
      "prompt": "People & Company Pages: How far back?",
      "allow_multiple": false,
      "options": [
        {"id": "7d", "label": "Last 7 days"},
        {"id": "30d", "label": "Last 30 days"},
        {"id": "90d", "label": "Last 90 days"},
        {"id": "all", "label": "All [days_back] days (recommended)"},
        {"id": "none", "label": "Skip - don't create"}
      ]
    },
    {
      "id": "notes_range",
      "prompt": "Meeting Notes: How far back?",
      "allow_multiple": false,
      "options": [
        {"id": "7d", "label": "Last 7 days"},
        {"id": "30d", "label": "Last 30 days (recommended)"},
        {"id": "90d", "label": "Last 90 days"},
        {"id": "all", "label": "All [days_back] days"},
        {"id": "none", "label": "Skip - don't create"}
      ]
    },
    {
      "id": "todos_range",
      "prompt": "Action Items / Todos: How far back?",
      "allow_multiple": false,
      "options": [
        {"id": "7d", "label": "Last 7 days (recommended)"},
        {"id": "30d", "label": "Last 30 days"},
        {"id": "90d", "label": "Last 90 days"},
        {"id": "all", "label": "All [days_back] days"}
Read more
Ships withdavekilleen-dex

A personal operating system powered by Claude. Strategic work management, meeting intelligence, relationship tracking, daily planning โ€” all configured for your specific role. No coding required.

Get the whole plugin

Other skills on davekilleen-dex.