Personalize COG for your workflow - creates profile, interests, and watchlist files with guided setup (run this first!)
60
70%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.claude/skills/onboarding/SKILL.mdWelcome new users and collect essential information to personalize their COG experience. All configuration is stored as natural markdown files within the vault structure, following COG's philosophy of transparent, editable knowledge.
/onboarding or mentions "onboarding" or "setup COG"The onboarding MUST feel like a natural conversation, NOT a form to fill out.
Key rules:
Greet the user warmly and explain what COG is:
Welcome to COG - your self-evolving second brain powered by Claude + Obsidian + Git!
COG helps you capture thoughts, get daily intelligence briefings, and build knowledge over time - all stored as simple markdown files you own.
Let's get you set up. Tell me a bit about yourself - your name, what you do, and what topics or areas you're most interested in staying sharp on. Feel free to share as much or as little as you'd like.This single open-ended prompt replaces the old sequential questions. The user can naturally mention their name, role, interests, sources, projects, and competitors all at once - or just share a few things.
Look for 00-inbox/MY-PROFILE.md. If it exists:
I found an existing COG profile! What would you like to update? Just tell me what you'd like to change - your interests, projects, profile info, or anything else.Don't present a numbered menu. Let them describe what they want in natural language.
After the user responds, extract as much as possible from their natural language:
| Field | How to Extract |
|---|---|
| Name | Look for self-introduction patterns ("I'm Alex", "My name is...", "Call me..."). Use first name by default. |
| Role | Look for job/activity mentions ("I'm a PM", "I work in...", "software engineer at..."). |
| Interests | Look for topic mentions ("interested in AI", "following crypto", "love design"). Also infer from role context. |
| News Sources | Look for source mentions ("I read HN", "follow on Twitter"). If not mentioned, skip - it's optional. |
| Projects | Look for project mentions ("working on a SaaS app", "building..."). If not mentioned, skip. |
| Competitive Watch | Look for company/person mentions ("tracking Stripe", "watching what OpenAI does"). If not mentioned, skip. |
After extracting what you can, check what's missing from the required fields only:
If any required field is missing, ask ONE follow-up that covers all gaps. For example:
Thanks! I got your name and role. What topics are you most interested in staying updated on? (e.g., AI, startups, design, health - whatever matters to you)Optional fields (news sources, projects, competitive watch) should NEVER generate follow-up questions. If the user didn't mention them, skip them. They can always add them later by editing the files or running onboarding again.
Before creating files, briefly confirm what you captured and ask about agent team mode:
Here's what I've got:
- **Name**: Alex
- **Role**: Product Manager at a fintech startup
- **Interests**: AI/ML, fintech trends, product strategy, UX design
- **Projects**: Payments dashboard revamp
- **Tracking**: Stripe, Plaid
One more thing - COG can run in two modes:
- **Solo mode** (default): I handle everything directly in our conversation.
- **Agent team mode**: I delegate research, analysis, and writing to specialist sub-agents for deeper, more thorough results. Works best with Claude Code.
Which do you prefer? (Solo is great for most people - team mode is for power users who want maximum depth.)Wait for confirmation, then generate everything. If they say "looks good" or similar, proceed. If they correct something, update and proceed without re-confirming. Default to solo if they don't express a preference.
After extracting the user's role text in Step 3, scan .claude/roles/*.md for a matching role pack:
role_id and aliases)role_id match (e.g., "product-manager")aliases (e.g., "pm", "product lead", "head of product")role_id as role_pack in the MY-PROFILE.md frontmatterAs a [Role Display Name], here are the skills and integrations that'll be most useful for you:
**Recommended skills** (ordered by relevance for your role):
[List top 5-6 skills from the role pack with the "Why it matters for you" context]
**Recommended integrations**:
[List integrations from the role pack with role-specific explanations]agent_mode as the default (instead of solo)role_pack: custom in MY-PROFILE.mdroles: [all])After role pack matching, set up the user's integration preferences:
If a role pack was matched, present its recommended integrations with role-specific context:
Based on your role, these integrations would give COG the most context:
[For each integration in role pack:]
- **[Integration]** — [Why it matters for you, from role pack]
Which of these do you already use? And are there any other tools you'd like to connect?Parse the user's response:
ElevenLabs to Disabled unless explicitly requestedGenerate 00-inbox/MY-INTEGRATIONS.md:
---
type: integrations
created: YYYY-MM-DD
tags: ["#integrations", "#config", "#cog"]
---
# My Integrations
*COG checks this file before using any external service. Edit anytime.*
## Active
[For each confirmed integration:]
- **[Service]**: [Brief description of how COG uses it]
## Disabled
[For each declined/unmentioned integration:]
- **[Service]**: Skipped during onboarding. Enable anytime by moving to Active section.
---
*Move services between Active and Disabled sections to control what COG connects to.*If no role pack was matched, ask about common integrations conversationally:
COG can connect with tools like GitHub, Slack, Linear, Notion, and PostHog for richer analysis. Do you use any of these? (Totally optional - COG works great without them too.)Create the four profile documents using the templates in references/profile-templates.md.
00-inbox/MY-PROFILE.md00-inbox/MY-INTERESTS.md03-professional/COMPETITIVE-WATCHLIST.md (only if they mentioned companies/people to track)04-projects/[project-slug]/PROJECT-OVERVIEW.mdBased on configuration, create personalized structure:
Base Structure (Always):
00-inbox/
01-daily/
briefs/
checkins/
02-personal/
braindumps/
development/
wellness/
03-professional/
braindumps/
leadership/
strategy/
skills/
04-projects/
05-knowledge/
consolidated/
patterns/
timeline/
booklets/
06-templates/Project-Specific (For each listed project):
04-projects/[project-slug]/
PROJECT-OVERVIEW.md
braindumps/
competitive/
content/
planning/
resources/Generate: 00-inbox/WELCOME-TO-COG.md
Generate it from the template in references/welcome-guide.md.
After setup, summarize what was created and suggest a natural next action:
You're all set! I've created your profile, interests, and project files. Everything is in your vault and editable anytime.
If you want to jump right in, try a braindump - just tell me what's on your mind and I'll capture it. Or ask for your daily brief to see what's happening in your interest areas today.Don't present a numbered menu of next actions. Just suggest one or two natural things and let them decide.
If user runs onboarding after initial setup (MY-PROFILE.md exists):
Don't show a menu. Just ask:
You've already completed onboarding! What would you like to update? Just tell me what needs changing.Then intelligently handle whatever they say - whether it's adding projects, changing interests, updating their role, etc.
Onboarding is successful when:
MY-PROFILE.md created in 00-inbox/ with role_pack in frontmatterMY-INTERESTS.md created in 00-inbox/MY-INTEGRATIONS.md created in 00-inbox/ with active/disabled sectionscustom) and recommendations presentedWELCOME-TO-COG.md guide created with role-specific skill orderingIf profile already exists:
00-inbox/archive/MY-PROFILE-YYYY-MM-DD.md if starting freshIf directory creation fails:
If user exits mid-onboarding:
All configuration data is stored as markdown files in:
00-inbox/MY-PROFILE.md - Basic profile with role pack00-inbox/MY-INTERESTS.md - Interest areas00-inbox/MY-INTEGRATIONS.md - Active/disabled external service integrations03-professional/COMPETITIVE-WATCHLIST.md - Competitive tracking04-projects/[project]/PROJECT-OVERVIEW.md - Project detailsBenefits of markdown storage:
COG's configuration is knowledge, not configuration. By storing preferences as markdown notes:
This is "configuration as knowledge" - your preferences are themselves notes in your second brain.
cb4644d
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.