mcpField
S
self-learning

self-learning

github.com/philschmidAgent workflows973.4k installsUpdated 38w ago
Repository

About self-learning

A skill for researching a technology through authoritative web sources and turning the findings into a reusable skill. It guides source selection, content extraction, and skill creation for agents that need documented, verifiable instructions.

Key features

  1. 01Searches for authoritative documentation
  2. 02Reads and extracts relevant URL content
  3. 03Creates reusable skills with valid structure
  4. 04Prioritizes official sources and avoids invented facts

Use cases

  1. 01Building a skill for a newly encountered technology
  2. 02Turning official API documentation into agent instructions
  3. 03Creating a skill when sources require browser-based extraction

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/philschmid/self-learning-skill --skill self-learning

After installing, type/self-learningin Claude Code to confirm it loaded.

Bundled filesreferences/skill_creation_guide.md

Details

From the project README

Self-Learning Skill Generator

Autonomously research and learn new technologies from the web, then generate a reusable skill.

Usage

/learn <topic>

If <topic> is missing, show usage. If topic is ambiguous, ask to clarify:

  • "react" → "React for web, React Native, or a specific library like react-query?"
  • "apollo" → "Apollo GraphQL client, Apollo Server, or Apollo Federation?"
  • "aws" → "Which AWS service? (S3, Lambda, DynamoDB, etc.)"

Normalize to kebab-case for filenames.

2. Discover Sources (Web Search)

Use web search tool to find authoritative documentation:

Search queries to try:

  1. <topic> official documentation
  2. <topic> getting started guide
  3. <topic> API reference
  4. <topic> GitHub repository

Source prioritization:

  1. Official docs sites (e.g., docs.*, *.dev)
  2. Official GitHub repositories (README, /docs)
  3. Official blogs/announcements

Select 3–5 high-quality URLs maximum.

If no credible sources found, ask user to provide a URL.


3. Extract Content (URL Reading)

For each selected URL, read the content:

Extract only relevant sections:

  • Installation / setup
  • Core concepts
  • API reference / key functions
  • Common patterns / examples
  • Version information

Skip irrelevant content:

  • Navigation, ads, login prompts
  • Unrelated sidebar content
  • Comments, forums

If reading the content fails (JavaScript-heavy sites), fall back to browser agent:

Task: Navigate to <URL> and extract the main content including:
- Installation instructions
- Core concepts and API reference
- Code examples
Return the extracted content as markdown.

Record scrape timestamp for each source (use current date: YYYY-MM-DD format).


4. Generate Skill

Skills are modular, self-contained packages. Every skill consists of a required SKILL.md file and optional bundled resources:

skill-name/
├── SKILL.md (required)
│   ├── YAML frontmatter metadata (required)
│   │   ├── name: (required)
│   │   └── description: (required)
│   └── Markdown instructions (required)
└── Bundled Resources (optional)
    ├── scripts/          - Executable code (Python/Bash/etc.)
    ├── references/       - Documentation intended to be loaded into context as needed
    └── assets/           - Files used in output (templates, icons, fonts, etc.)
  1. Read references/skill_creation_guide.md to understand the format and principles.
  2. Synthesize the learned and extracted information into a new skill.
    • Trigger: Write a description that clearly defines when to use it.
    • Workflow: Create step-by-step instructions.
    • Format: Ensure valid YAML frontmatter and proper file structure.
5. Save the Skill

Antigravity supports two types of skills, save a global-workspace if asked.

  • .agent/skills/<skill-folder>/ Workspace-specific
  • ~/.gemini/antigravity/skills/<skill-folder>/ Global (all workspaces)

Create directory if it doesn't exist, warn user before overwriting existing skill.


6. Confirm to User

Report:

✓ Created skill: <topic>
  Sources scraped: <N>
  Saved to: .agent/skills/<topic>/SKILL.md
  This skill will auto-trigger when working with <topic>.

Tool Reference

  • search_web: Discover documentation URLs
  • read_url_content: Extract content from static pages
  • browser_subagent: Extract content from JavaScript-heavy sites
  • write_to_file: Save the generated skill

Critical Rules

  1. Never hallucinate documentation: Only include information from scraped sources.
  2. Never invent APIs: If documentation is unclear, ask the user what to do.
  3. Ask for URLs: If automated discovery fails, ask user for specific URLs.
  4. Verify sources: Prefer official sources over third-party tutorials.

Comments

Markdown supported