self-learning
philschmid/self-learning-skill
Autonomously research and generate reusable skills for new technologies from the web.
What is self-learning?
The self-learning skill generator researches unfamiliar libraries, frameworks, and tools by discovering authoritative documentation, extracting key information, and synthesizing it into a reusable skill package. Use it when you need to quickly learn a new technology and create a skill to work with it.
- Searches the web for official documentation and authoritative sources
- Extracts installation, API reference, and code examples from discovered URLs
- Handles ambiguous topics by asking for clarification
- Falls back to browser automation for JavaScript-heavy sites
- Generates properly formatted SKILL.md files with metadata and instructions
- Saves skills to workspace or global locations for reuse
How to install self-learning
npx skills add https://github.com/philschmid/self-learning-skill --skill self-learningHow to use self-learning
- 1.Invoke the skill with `/learn <topic>` where topic is the technology to research
- 2.Clarify ambiguous topics when prompted (e.g., 'React for web or React Native?')
- 3.Review the discovered sources and approve the selection
- 4.Wait for content extraction and skill generation to complete
- 5.The generated skill is saved to `.agent/skills/<topic>/SKILL.md` and ready to use
Use cases
- Learning a new library or framework and creating a skill to work with it
- Researching unfamiliar AWS services or tools to understand their APIs
- Documenting usage patterns for emerging technologies
- Quickly onboarding to a new tech stack by auto-generating reference skills
- Creating skills for internal or third-party tools without existing skill packages
- Developers exploring new technologies
- Teams adopting unfamiliar frameworks or services
- Engineers building custom skills for coding agents
- Technical leads documenting tool usage patterns
self-learning FAQ
The skill will ask you to provide specific URLs. It prioritizes official documentation sites, GitHub repositories, and official blogs over third-party sources.
Yes, you can choose to save to either `.agent/skills/` (workspace-specific) or `~/.gemini/antigravity/skills/` (global).
Yes, if URL reading fails, it falls back to a browser subagent to extract content from dynamic sites.
Installation/setup, core concepts, API reference, key functions, common patterns, code examples, and version information.
No. It only includes information from scraped sources and asks for clarification if documentation is unclear.
Full instructions (SKILL.md)
Source of truth, from philschmid/self-learning-skill.
name: self-learning
description: "Autonomous skill generator that learns new technologies from the web. Use when, users want to learn about a new library/framework/tool, need to create a skill for an unfamiliar technology, want to research and document a technology's usage patterns, or invoke with /learn <topic>. This skill uses web search and browser tools to discover, extract, and synthesize documentation into a reusable skill."
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:
<topic> official documentation<topic> getting started guide<topic> API reference<topic> GitHub repository
Source prioritization:
- Official docs sites (e.g., docs.*, *.dev)
- Official GitHub repositories (README, /docs)
- 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.)
- Read
references/skill_creation_guide.mdto understand the format and principles. - 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 URLsread_url_content: Extract content from static pagesbrowser_subagent: Extract content from JavaScript-heavy siteswrite_to_file: Save the generated skill
Critical Rules
- Never hallucinate documentation: Only include information from scraped sources.
- Never invent APIs: If documentation is unclear, ask the user what to do.
- Ask for URLs: If automated discovery fails, ask user for specific URLs.
- Verify sources: Prefer official sources over third-party tutorials.
Related skills
More from philschmid/self-learning-skill and the wider catalog.

spectrum
>

ab-test-analysis
Analyze A/B test results with statistical significance, confidence intervals, and ship/extend/stop recommendations.

analyze-feature-requests
Analyze and prioritize feature requests by theme, alignment, impact, effort, and risk.

ansoff-matrix
Map growth strategies across market penetration, development, product innovation, and diversification.

beachhead-segment
Identify your first winning market segment using burning pain, willingness to pay, winnability, and referral potential.

brainstorm-experiments-existing
Design low-effort experiments to validate product assumptions before full implementation.