Andrejones92

canifi-skill-generator

2
0
# Install this skill:
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.

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 name field
  • 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

  1. Privacy First - Always include Privacy & Authentication section
  2. Never Hardcode - All credentials use environment variables
  3. Clear Setup - Users should be able to follow setup without confusion
  4. Practical Examples - Show real use cases, not abstract concepts
  5. Error Guidance - Include troubleshooting for common issues
  6. Version Track - Include version in metadata for updates
  7. 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.