Skip to content
Back to skills

Conversational Goal Discovery

ASecurity

Chat-based goal classification (habit/distance/speed/race) with constraint clarification. Use during onboarding or when user wants to update their running goals through conversation with weekly commitment discovery.

  • 666 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added February 8, 2026
developmentgorailstestingapidatabaseperformance

Works with

  • cursor
  • api

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill conversational-goal-discovery --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Conversational Goal Discovery?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Conversational Goal Discovery
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-conversational-goal-discovery/badge)](https://www.skillsdirectory.com/skills/majiayu000-conversational-goal-discovery)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: conversational-goal-discovery
description: Chat-based goal classification (habit/distance/speed/race) with constraint clarification. Use during onboarding or when user wants to update their running goals through conversation with weekly commitment discovery.
metadata:
  short-description: Chat-based goal classification with commitments and starter plan suggestions.
  agent: cursor
---

## When Cursor should use this skill
- Early chat sessions or onboarding when the user's goal is ambiguous
- When the user asks for help choosing a plan or habit
- When user wants to clarify or update their running goals
- When implementing conversational onboarding features

## Invocation guidance
1. Provide the last N `ConversationTurn` entries and any partial onboarding answers.
2. Classify goal (`habit` | `distance` | `speed` | `race`) with confidence and blockers.
3. Return a `CoachMessage` summary plus structured `GoalDiscoveryResult`.
4. Ask clarifying questions if confidence < 0.7.
5. Suggest weekly commitment (3-4 runs for beginners, 4-5 for intermediate, 5-6 for advanced).

## Input schema (JSON)
```ts
{
  "conversation": ConversationTurn[],
  "profile": UserProfile,
  "partialOnboarding"?: Record<string, unknown>
}
```

## Output schema (JSON)
```ts
{
  "goalDiscovery": {
    "goal": Goal,
    "confidence": number,
    "blockers": string[],
    "weeklyCommitment": number,
    "preferredDays"?: string[],
    "starterPlanId"?: string,
    "summaryCard": string,
    "safetyFlags"?: SafetyFlag[]
  },
  "coachMessage": CoachMessage
}
```

## Integration points
- **Chat API**: `v0/app/api/chat/route.ts` - Conversational interface
- **Prompt context**: 
  - `v0/lib/conversationStorage.ts` - Conversation history
  - `v0/lib/onboardingPromptBuilder.ts` - Onboarding prompts
- **Handoff**: trigger plan generation via `v0/app/api/generate-plan/route.ts` when confidence ≥0.7
- **UI**: Chat screen and onboarding wizard
- **Database**: Store conversation turns in `chat_messages` table

## Safety & guardrails
- Avoid medical advice; if user mentions pain/injury, advise pause and professional consult.
- Keep responses concise (<120 words) and supportive.
- Emit `SafetyFlag` on harmful intents or ambiguous data.
- If user has injury history, recommend starting conservatively.
- Never promise specific performance outcomes or weight loss guarantees.

## Conversation flow patterns

### Goal discovery sequence
1. **Initial question**: "What brings you to running?" or "What are you hoping to achieve?"
2. **Clarify constraints**: "How many days per week can you commit?" "Any time restrictions?"
3. **Assess experience**: "What's your recent running history?"
4. **Confirm goal**: "So it sounds like [goal]. Is that right?"
5. **Suggest next step**: "Let me create a plan for you" or "Tell me more about..."

### Goal types and indicators
- **Habit**: "consistency", "build routine", "just want to run"
- **Distance**: "5K", "10K", "half marathon", "marathon", specific distance target
- **Speed**: "get faster", "PR", "improve time", pace goals
- **Race**: mentions specific race, date, or event

## Telemetry
- Emit `ai_skill_invoked` with:
  - `goal` (classified)
  - `confidence`
  - `turns_count` (conversation length)
  - `latency_ms`
- Emit `ai_user_feedback` when user responds to suggestions

## Common edge cases
- **Multiple goals**: Ask user to prioritize primary goal
- **Vague responses**: Ask specific follow-up questions
- **Unrealistic goals**: Gently adjust expectations with rationale
- **Injury mentions**: Prioritize recovery, recommend professional consultation
- **Low confidence**: Continue conversation, don't force goal classification

## Testing considerations
- Test with various conversation patterns (short, long, meandering)
- Verify confidence scoring accuracy
- Test with ambiguous or conflicting statements
- Validate SafetyFlag emission for injury mentions
- Test handoff to plan generation at confidence threshold

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.