Use when you have a written implementation plan to execute in a separate session with review checkpoints
npx skills add Andrejones92/canifi-life-os --skill "canifi-skill-generator"
Install specific skill from multi-skill repository
# Description
Self-evolving skill that enables Canifi to create, install, and manage new skills autonomously
# SKILL.md
name: canifi-skill-generator
description: Self-evolving skill that enables Canifi to create, install, and manage new skills autonomously
category: development
version: 1.0.0
author: Canifi LifeOS
required: true
Canifi Skill Generator
Overview
The Skill Generator is a meta-skill that enables Canifi to create new skills for itself and automatically install them to the global skills directory. This transforms Canifi from a static assistant into a self-evolving system that can expand its own capabilities on demand.
Why This Skill is Required:
- Enables Canifi to learn new workflows without manual skill creation
- Allows real-time capability expansion during conversations
- Creates a feedback loop where Canifi improves itself over time
- Reduces dependency on pre-built skills for niche use cases
Privacy & Authentication
Your credentials, your choice. Canifi LifeOS respects your privacy.
Option 1: Manual Browser Login (Recommended)
If you prefer not to share credentials with Claude Code:
1. Complete the Browser Automation Setup using CDP mode
2. Login to the service manually in the Playwright-controlled Chrome window
3. Claude will use your authenticated session without ever seeing your password
Option 2: Environment Variables
If you're comfortable sharing credentials, you can store them locally:
canifi-env set SERVICE_EMAIL "your-email"
canifi-env set SERVICE_PASSWORD "your-password"
Note: Credentials stored in canifi-env are only accessible locally on your machine and are never transmitted.
Global Skills Directory
Skills are installed to: ~/.claude/skills/
Each skill lives in its own directory:
~/.claude/skills/
├── canifi/
│ └── SKILL.md
├── canifi-skill-generator/
│ └── SKILL.md
├── my-new-skill/
│ └── SKILL.md
└── ...
Capabilities
1. Create New Skills on Demand
When a user requests a capability that doesn't exist, or when Canifi identifies a repeated pattern that could be automated:
User: "I need to interact with Airtable regularly"
Canifi: "I don't have an Airtable skill yet. Would you like me to create one?"
User: "Yes, please"
Canifi: [Creates and installs airtable skill]
2. Auto-Generate Skills from Patterns
When Canifi notices it's performing the same complex workflow repeatedly:
Canifi: "I've noticed we've done this Slack → Notion workflow 5 times.
Should I create a skill for this so it's faster next time?"
3. Modify Existing Skills
Update skills based on user feedback or changed requirements:
User: "The github skill should also support GitLab"
Canifi: [Updates the skill to support both platforms]
4. Research-Driven Skill Creation
For unfamiliar services, Canifi can:
1. Research the service's API/documentation
2. Identify common use cases
3. Generate a comprehensive skill
4. Test basic functionality
5. Install and activate
Skill Template
When generating a new skill, use this template structure:
---
name: {skill-id}
description: {One-line description}
category: {category}
version: 1.0.0
author: Canifi LifeOS (Auto-Generated)
---
# {Skill Name}
## Overview
{2-3 sentence description of what this skill does and why it's useful}
---
## Privacy & Authentication
**Your credentials, your choice.** Canifi LifeOS respects your privacy.
### Option 1: Manual Browser Login (Recommended)
If you prefer not to share credentials with Claude Code:
1. Complete the [Browser Automation Setup](/setup/automation) using CDP mode
2. Login to {SERVICE_NAME} manually in the Playwright-controlled Chrome window
3. Claude will use your authenticated session without ever seeing your password
### Option 2: Environment Variables
If you're comfortable sharing credentials:
```bash
canifi-env set {SERVICE}_EMAIL "your-email"
canifi-env set {SERVICE}_PASSWORD "your-password"
# OR for API-based services:
canifi-env set {SERVICE}_API_KEY "your-api-key"
Note: Credentials stored in canifi-env are only accessible locally on your machine.
Setup
{Required setup steps, environment variables, API keys, etc.}
Capabilities
{List of what this skill enables}
Usage Examples
{Common use case examples}
Workflow
{Step-by-step workflow when using this skill}
Troubleshooting
{Common issues and solutions}
---
## Skill Generation Workflow
### Step 1: Identify Need
Triggers for skill creation:
- User explicitly requests a new capability
- User asks about a service Canifi doesn't have a skill for
- Canifi identifies a repeated manual workflow
- User shares API documentation or service details
### Step 2: Research (if needed)
For unfamiliar services:
1. Use Gemini Deep Research via Playwright MCP
2. Find official API documentation
3. Identify authentication methods
4. Discover common use cases
5. Note any rate limits or restrictions
### Step 3: Generate Skill Content
Create the SKILL.md file with:
- Accurate metadata (name, description, category)
- Clear setup instructions
- Privacy & Authentication section (REQUIRED)
- Comprehensive capabilities list
- Practical usage examples
- Troubleshooting guidance
### Step 4: Install Skill
```bash
# Create skill directory
mkdir -p ~/.claude/skills/{skill-id}
# Write SKILL.md
cat > ~/.claude/skills/{skill-id}/SKILL.md << 'EOF'
{skill content}
EOF
Step 5: Verify Installation
# Check skill exists
ls -la ~/.claude/skills/{skill-id}/
# Verify content
cat ~/.claude/skills/{skill-id}/SKILL.md
Step 6: Confirm to User
Skill "{skill-name}" has been created and installed.
Location: ~/.claude/skills/{skill-id}/SKILL.md
Category: {category}
You can now use this skill by {activation instructions}.
Would you like me to demonstrate it?
Category Reference
Use these categories when generating skills:
| Category | Description | Examples |
|---|---|---|
productivity |
Task management, notes, organization | Notion, Todoist, Obsidian |
communication |
Messaging, email, social | Slack, Discord, Gmail |
development |
Code, CI/CD, repositories | GitHub, GitLab, Vercel |
automation |
Workflows, integrations | Zapier, Make, n8n |
data |
Databases, analytics, storage | Airtable, Supabase, S3 |
ai |
AI services, ML platforms | OpenAI, Anthropic, HuggingFace |
finance |
Banking, payments, crypto | Stripe, Plaid, Coinbase |
media |
Images, video, audio | Figma, YouTube, Spotify |
health |
Fitness, wellness, medical | Apple Health, Oura, Whoop |
smart-home |
IoT, home automation | HomeKit, SmartThings, IFTTT |
travel |
Booking, maps, transport | Google Maps, Uber, Airbnb |
education |
Learning, courses, research | Coursera, Anki, Zotero |
shopping |
E-commerce, deals, inventory | Amazon, Shopify, eBay |
gaming |
Games, streaming, communities | Steam, Twitch, Discord |
security |
Auth, passwords, privacy | 1Password, Authy, VPNs |
Auto-Generation Triggers
Canifi should proactively offer to create skills when:
Explicit Requests
- "Can you help me with [Service]?"
- "I need to integrate [Platform]"
- "How do I automate [Workflow]?"
Implicit Patterns
- User mentions a service 3+ times in conversation
- User describes a multi-step workflow manually
- User asks "Is there a skill for...?"
Capability Gaps
- When Canifi says "I don't have direct access to..."
- When a task requires manual user intervention
- When existing skills don't cover a use case
Example: Creating a Skill
User Request
"I want Canifi to help me manage my Todoist tasks"
Canifi Response
I don't have a Todoist skill yet. Let me create one for you.
[Researching Todoist API and best practices...]
[Generating skill content...]
[Installing to ~/.claude/skills/todoist/]
Done! I've created and installed the Todoist skill.
**Capabilities:**
- List tasks and projects
- Create new tasks with due dates
- Complete/uncomplete tasks
- Organize tasks into projects
- Set priorities and labels
**Setup Required:**
You'll need to get a Todoist API token from:
https://todoist.com/app/settings/integrations/developer
Then set it with:
```bash
canifi-env set TODOIST_API_KEY "your-token-here"
Would you like me to demonstrate by listing your current tasks?
---
## Skill Quality Guidelines
When generating skills, ensure:
### 1. Completeness
- All sections from template are included
- Privacy & Authentication section is ALWAYS present
- Setup steps are clear and actionable
- Examples cover common use cases
### 2. Accuracy
- API endpoints and methods are correct
- Authentication flows match service requirements
- Rate limits and restrictions are noted
- Error handling is addressed
### 3. Usability
- Instructions are beginner-friendly
- Commands can be copy-pasted
- Examples show expected outputs
- Troubleshooting covers common issues
### 4. Safety
- Never hardcode credentials
- Always use environment variables
- Include privacy warnings where appropriate
- Note any data handling considerations
---
## Managing Installed Skills
### List All Skills
```bash
ls ~/.claude/skills/
View Skill Content
cat ~/.claude/skills/{skill-id}/SKILL.md
Update a Skill
# Edit directly or regenerate
cat > ~/.claude/skills/{skill-id}/SKILL.md << 'EOF'
{updated content}
EOF
Remove a Skill
rm -rf ~/.claude/skills/{skill-id}
Troubleshooting
Skill Not Recognized
- Verify the skill directory exists:
ls ~/.claude/skills/{skill-id}/ - Check SKILL.md has correct frontmatter with
namefield - Restart Claude Code to reload skills
Permission Errors
- Ensure write access:
chmod -R u+w ~/.claude/skills/ - Check directory ownership:
ls -la ~/.claude/
Skill Not Working
- Verify all required environment variables are set
- Check service API is accessible
- Review troubleshooting section of the specific skill
Universal Rules for Generated Skills
- Privacy First - Always include Privacy & Authentication section
- Never Hardcode - All credentials use environment variables
- Clear Setup - Users should be able to follow setup without confusion
- Practical Examples - Show real use cases, not abstract concepts
- Error Guidance - Include troubleshooting for common issues
- Version Track - Include version in metadata for updates
- Attribution - Mark auto-generated skills with
author: Canifi LifeOS (Auto-Generated)
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.