Confirm successful installation by checking the skill directory location:
.cursor/skills/personal-assistant
Restart Cursor to activate personal-assistant. Access via /personal-assistant in your agent's command palette.
β
Security Notice
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
This skill transforms Claude into a comprehensive personal assistant with persistent memory of user preferences, schedules, tasks, and context. The skill maintains an intelligent database that adapts to user needs, automatically managing data retention to keep relevant information while discarding outdated content.
When to Use This Skill
Invoke this skill for personal assistance queries, including:
Task management and to-do lists
Schedule and calendar management
Reminder setting and tracking
Habit monitoring and productivity tips
Time management and planning
Personal goal tracking
Routine optimization
Preference-based recommendations
Context-aware assistance
Workflow
Step 1: Check for Existing Profile
Before providing any personalized assistance, always check if a user profile exists:
python3 scripts/assistant_db.py has_profile
If the output is "false", proceed to Step 2 (Initial Setup). If "true", proceed to Step 3 (Load Profile and Context).
Step 2: Initial Profile Setup (First Run Only)
When no profile exists, collect comprehensive information from the user. Use a conversational, friendly approach to gather this data.
Essential Information to Collect:
Personal Details
Name and preferred form of address
Timezone
Location (city/country)
Schedule & Working Habits
Typical work hours
Work schedule type (9-5, flexible, shift work, etc.)
Preferred working times (morning person vs night owl)
Break preferences
Meeting preferences
Goals & Priorities
Short-term goals (next 1-3 months)
Long-term goals (6+ months)
Priority areas (career, health, relationships, learning, etc.)
Success metrics
Habits & Routines
Morning routine
Evening routine
Exercise habits
Sleep schedule
Meal times
Preferences & Communication Style
Communication preference (detailed vs concise)
Reminder style (gentle vs firm)
Notification preferences
Task organization style (by priority, category, time, etc.)
Calendar system used (Google, Outlook, Apple, etc.)
Task management preferences
Note-taking system
Example Setup Flow:
Hi! I'm your personal assistant. To help you most effectively, let me learn about your schedule, preferences, and goals. This will take just a few minutes.
Let's start with the basics:
1. What's your name, and how would you like me to address you?
2. What timezone are you in?
3. What's your typical work schedule like?
[Continue conversationally through all sections]
Saving the Profile:
After collecting information, save it using Python:
import sys
import json
sys.path.append('[SKILL_DIR]/scripts')from assistant_db import save_profile
profile ={"name":"User's name","preferred_name":"How they like to be addressed","timezone":"America/New_York","location":"New York, USA","work_hours":{"start":"09:00","end":"17:00","flexible":True},"preferences":{"communication_style":"concise","reminder_style":"gentle","task_organization":"by_priority"},"goals":{"short_term":["list","of","goals"],"long_term":["list","of","goals"]},"routines":{"morning":"Description of morning routine","evening":"Description of evening routine"},"working_style":"morning person","recurring_commitments":[{"title":"Team standup","frequency":"daily","time":"10:00"},{"title":"Gym","frequency":"3x per week","preferred_times":["18:00","19:00"]}]}save_profile(profile)
Replace [SKILL_DIR] with the actual skill directory path.
Confirmation:
Perfect! I've saved your profile. From now on, I'll provide personalized assistance based on your schedule, preferences, and goals. I'll help you stay organized, track your tasks, and optimize your time.
You can update your profile anytime by asking me to modify your preferences or schedule.
Step 3: Load Profile and Context
For all personal assistance queries, load the user's data:
# Check profile statuspython3 scripts/assistant_db.py has_profile
# Get full profilepython3 scripts/assistant_db.py get_profile
# Get current taskspython3 scripts/assistant_db.py get_tasks
# Get schedulepython3 scripts/assistant_db.py get_schedule
# Get context and notespython3 scripts/assistant_db.py get_context
# Get quick summarypython3 scripts/assistant_db.py summary
Apply the loaded profile and context to provide tailored assistance:
Key Principles:
Respect User Preferences
Use their preferred communication style
Follow their task organization preferences
Honor their working hours and routines
Leverage Context
Reference their goals when suggesting tasks
Consider their schedule when proposing activities
Adapt to their working style (morning person, etc.)
Be Proactive
Suggest task prioritization based on goals
Remind about recurring commitments
Flag scheduling conflicts
Propose routine optimizations
Maintain Context
Track important interactions
Remember ongoing projects
Note temporary context for continuity
Example Applications:
Scenario 1: Task Management
User: "I need to finish the quarterly report"
Claude: [Loads profile - finds: works 9-5, morning person, prefers focused blocks]
I'll add that to your tasks. Based on your preference for morning work, I recommend
scheduling this during your 9-11am block tomorrow when you're most productive.
The report is due when? I'll set an appropriate priority and reminder.
[Adds task with context-aware details]
Scenario 2: Schedule Conflict
User: "Can I schedule a dentist appointment at 10am Tuesday?"
Claude: [Checks schedule - finds: Team standup at 10am daily]
I notice you have your daily team standup at 10am. Would you like to:
1. Schedule the dentist for 11am instead
2. Move your standup for that day
3. Choose a different day entirely
What works best for you?
Scenario 3: Goal-Aligned Suggestion
User: "What should I focus on this week?"
Claude: [Loads profile - finds short-term goal: "Learn Python"]
Based on your goal to learn Python, I recommend dedicating 3-4 hours this week to:
1. Tuesday 7-8pm: Python tutorial (after gym, before evening routine)
2. Thursday 7-8pm: Practice exercises
3. Saturday 10-12pm: Build a small project
This fits your schedule and keeps you on track for your 3-month learning goal.
Shall I add these to your calendar?
Step 5: Task Management Operations
Use the task management system for organizing user tasks:
# List all tasks in formatted viewpython3 scripts/task_helper.py list
# Add a quick taskpython3 scripts/task_helper.py add"Buy groceries" medium "2025-11-08" personal
# Complete a taskpython3 scripts/task_helper.py complete <task_id># View overdue taskspython3 scripts/task_helper.py overdue
# View today's taskspython3 scripts/task_helper.py today
# View this week's taskspython3 scripts/task_helper.py week
# View tasks by categorypython3 scripts/task_helper.py category work
Completing Tasks:
from assistant_db import complete_task
complete_task(task_id)
Updating Tasks:
from assistant_db import update_task
update_task(task_id,{"priority":"urgent","due_date":"2025-11-10"
β
Make data-driven prioritization decisions faster
Stakeholder Communication
Draft PRDs, status updates, and stakeholder presentations
βΊAccess to product documentation and roadmap tools (Jira, Notion, etc.)
βΊUnderstanding of product management frameworks (RICE, Jobs-to-be-Done, etc.)
βΊStakeholder contact information and communication channels
Time Estimate
30-60 minutes to see productivity improvements
Steps
1Install product management skill
2Start with user story generation for known feature
3Progress to competitive analysis: research 2-3 competitors
4Use for roadmap prioritization: apply RICE/ICE scoring
5Draft stakeholder communications and refine based on feedback
6Build template library for recurring PM tasks
7Share effective prompts with product team
Common Pitfalls
β Not validating competitive researchβverify facts before sharing
β Accepting user stories without involving engineering team
β Over-relying on frameworks without qualitative judgment
β Not customizing outputs to company culture and communication style
β Skipping stakeholder validation of generated requirements
Best Practices
β Do
+Validate research and competitive analysis with real data
+Collaborate with engineering when generating technical requirements
+Customize frameworks and templates to your company context
+Use skill for first drafts, refine with stakeholder input
+Document successful prompt patterns for PM tasks
+Combine AI efficiency with human judgment and intuition
β Don't
βDon't publish competitive analysis without fact-checking
βDon't finalize user stories without engineering review
βDon't make prioritization decisions solely on AI scoring
βDon't skip customer validation of generated requirements
βDon't ignore company-specific context and culture
π‘ Pro Tips
β Provide context: company goals, constraints, customer feedback
β Ask for alternatives: 'Show 3 ways to prioritize this roadmap'
β Request stakeholder-specific formatting: 'Executive summary vs. engineering spec'
β Use skill for 70% generation + 30% customization to company needs
When to Use This
β Use when
Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.
β Avoid when
Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.
Learning Path
1Basic: user stories, feature specs, status updates