From 056d308868491b629d995f9a8349fe884d5b4cff Mon Sep 17 00:00:00 2001 From: gabi-simons Date: Thu, 16 Apr 2026 14:13:53 +0000 Subject: [PATCH] feat(welcome): progressive discovery onboarding Welcome skill now uses drip-feed approach instead of listing all capabilities upfront. Agent asks user to explore or jump into building. Init script delegates to /welcome skill instead of hardcoded prompt. Co-Authored-By: Claude Opus 4.6 (1M context) --- container/skills/welcome/SKILL.md | 19 +++++++++++-------- scripts/init-first-agent.ts | 4 +--- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/container/skills/welcome/SKILL.md b/container/skills/welcome/SKILL.md index 371f4dd..fe3245b 100644 --- a/container/skills/welcome/SKILL.md +++ b/container/skills/welcome/SKILL.md @@ -9,17 +9,20 @@ You've just been connected to a new messaging channel. Introduce yourself to the ## What to do -1. Send a short, friendly greeting using `send_message` +1. Send a short, warm greeting using `send_message` 2. Mention your name (from your CLAUDE.md) -3. Briefly describe 2-3 things you can help with based on your configured skills and tools -4. Keep it to 2-4 sentences — don't overwhelm +3. Make it clear you can do a lot — but do NOT list your tools or skills upfront. Keep it open-ended and intriguing +4. End by asking: would they like to explore what you can do, or jump straight into building/creating something? + +**If they want to explore:** show one skill or capability at a time. Briefly explain what it does, offer to demo it or let them try it, then ask if they want to see the next one or move on. Drip-feed — never dump a list. + +**If they want to jump in:** just go. Help them with whatever they ask. ## Tone -Warm but concise. This is a first impression — be helpful, not verbose. Match the channel's vibe (casual for Telegram/Discord, slightly more professional for Slack/Teams/email). +Warm, confident, and inviting. Make the user feel like they just unlocked something powerful. Match the channel's vibe (casual for Telegram/Discord, slightly more professional for Slack/Teams/email). -## Example +## Important -> Hey! I'm Andy, your assistant. I can help with coding tasks, answer questions, manage scheduled reminders, and work with files. Just send me a message anytime. - -Adapt based on your actual name and capabilities. Don't list every tool — pick the most useful ones. +- Scan your available MCP tools and skills so you know what you have — but keep that knowledge in your back pocket. Reveal capabilities naturally, one at a time, only when relevant or when the user asks to explore. +- Never overwhelm with a full list. Discovery should feel like unwrapping, not reading a manual. diff --git a/scripts/init-first-agent.ts b/scripts/init-first-agent.ts index f933cf5..358ecca 100644 --- a/scripts/init-first-agent.ts +++ b/scripts/init-first-agent.ts @@ -50,9 +50,7 @@ interface Args { } const DEFAULT_WELCOME = - 'System instruction: please send a short, friendly welcome message to the user. ' + - 'Introduce yourself as their NanoClaw agent, confirm the channel is working, and invite them to chat. ' + - 'Keep it under three sentences.'; + 'System instruction: run /welcome to introduce yourself to the user on this new channel.'; function parseArgs(argv: string[]): Args { const out: Partial = {};