Meta Skill Optimizer
by @jason-aka-chen
Self-improving AI skill optimizer that learns from feedback, auto-tunes prompts, optimizes tool usage patterns, and evolves based on success/failure analysis...
clawhub install meta-skill-optimizerπ About This Skill
name: meta-skill-optimizer description: Self-improving AI skill optimizer that learns from feedback, auto-tunes prompts, optimizes tool usage patterns, and evolves based on success/failure analysis. Enables AI to continuously enhance its own capabilities. tags: - meta - self-improvement - optimization - learning - feedback - adaptation version: 1.0.0 author: chenq
Meta Skill Optimizer
Self-improving AI capability that enables continuous skill enhancement.
Features
1. Feedback Learning
2. Prompt Optimization
3. Tool Usage Optimization
4. Self-Diagnosis
5. Continuous Evolution
Installation
pip install numpy scipy json
Usage
Initialize Optimizer
from meta_optimizer import SkillOptimizeroptimizer = SkillOptimizer(
skill_name="data_analysis",
learning_rate=0.1
)
Record Execution Result
# Record successful execution
optimizer.record_success(
task="analyze sales data",
approach="used pandas groupby",
context={"data_size": "10MB", "complexity": "high"},
outcome={"success": True, "quality": "high"}
)Record failure
optimizer.record_failure(
task="predict stock price",
approach="used linear regression",
error="insufficient features",
lesson="need more technical indicators"
)
Get Optimized Approach
# Get best approach for task
best_approach = optimizer.get_best_approach(
task_type="data_analysis",
context={"data_size": "1GB"}
)print(best_approach)
{'method': 'chunked_processing', 'tools': ['pandas', 'dask']}
Optimize Prompt
# Optimize prompt based on results
optimized_prompt = optimizer.optimize_prompt(
original_prompt="Analyze this data",
outcome="too vague",
feedback="be more specific about analysis type"
)print(optimized_prompt)
"Analyze this time-series data using trend detection and seasonality analysis"
API Reference
Feedback Learning
| Method | Description | |--------|-------------| |record_success(...) | Record successful execution |
| record_failure(...) | Record failed execution |
| get_insights() | Get learned insights |Prompt Optimization
| Method | Description | |--------|-------------| |optimize_prompt(...) | Optimize prompt based on feedback |
| generate_examples(...) | Generate few-shot examples |
| adapt_style(...) | Adapt to user style |Tool Optimization
| Method | Description | |--------|-------------| |suggest_tools(...) | Suggest best tools |
| optimize_params(...) | Optimize tool parameters |
| discover_workflow(...) | Discover effective workflows |Self-Diagnosis
| Method | Description | |--------|-------------| |assess_capability(...) | Assess capability for task |
| identify_gaps() | Identify knowledge gaps |
| calibrate_confidence() | Calibrate confidence levels |Evolution
| Method | Description | |--------|-------------| |track_improvement() | Track improvement over time |
| export_knowledge() | Export learned knowledge |
| merge_experiences() | Merge from other optimizers |How It Works
1. Feedback Loop
Task β Execution β Result β Feedback β Learning β Improvement
2. Pattern Discovery
Multiple Executions β Pattern Mining β Best Practices β Codification
3. Continuous Learning
New Task β Similar Past Tasks β Learned Lessons β Optimized Approach
Use Cases
Knowledge Base
The optimizer builds a knowledge base:
{
"patterns": {
"data_analysis": {
"small_data": "pandas sufficient",
"large_data": "use dask or chunking",
"time_series": "check stationarity first"
}
},
"prompts": {
"effective": ["specific", "contextual", "actionable"],
"ineffective": ["vague", "ambiguous", "overly broad"]
},
"tools": {
"coding": ["cursor", "claude-code"],
"research": ["tavily", "browser"]
}
}
Integration
With OpenClaw
# Auto-record all executions
@hookimpl
def after_execution(result, context):
optimizer.record_execution(context, result)
With Skills
# Optimize skill behavior
skill = MySkill()
optimized_skill = optimizer.optimize_skill(skill)
Best Practices
1. Record Everything: More data = better learning 2. Categorize Failures: Understand failure types 3. Update Regularly: Keep knowledge current 4. Merge Insights: Combine learnings from multiple sources
Future Capabilities
β‘ When to Use
π‘ Examples
Initialize Optimizer
from meta_optimizer import SkillOptimizeroptimizer = SkillOptimizer(
skill_name="data_analysis",
learning_rate=0.1
)
Record Execution Result
# Record successful execution
optimizer.record_success(
task="analyze sales data",
approach="used pandas groupby",
context={"data_size": "10MB", "complexity": "high"},
outcome={"success": True, "quality": "high"}
)Record failure
optimizer.record_failure(
task="predict stock price",
approach="used linear regression",
error="insufficient features",
lesson="need more technical indicators"
)
Get Optimized Approach
# Get best approach for task
best_approach = optimizer.get_best_approach(
task_type="data_analysis",
context={"data_size": "1GB"}
)print(best_approach)
{'method': 'chunked_processing', 'tools': ['pandas', 'dask']}
Optimize Prompt
# Optimize prompt based on results
optimized_prompt = optimizer.optimize_prompt(
original_prompt="Analyze this data",
outcome="too vague",
feedback="be more specific about analysis type"
)print(optimized_prompt)
"Analyze this time-series data using trend detection and seasonality analysis"
π Tips & Best Practices
1. Record Everything: More data = better learning 2. Categorize Failures: Understand failure types 3. Update Regularly: Keep knowledge current 4. Merge Insights: Combine learnings from multiple sources