Files
gh-francyjglisboa-agent-ski…/references/claude-llm-protocols-guide.md
2025-11-29 18:27:25 +08:00

963 lines
31 KiB
Markdown

# Claude LLM Protocols Guide: Complete Skill Creation System
**Version:** 1.0
**Purpose:** Comprehensive guide for Claude LLM to follow during skill creation via Agent-Skill-Creator
**Target:** Ensure consistent, high-quality skill creation following all defined protocols
---
## 🎯 **Overview**
This guide defines the complete set of protocols that Claude LLM must follow when creating skills through the Agent-Skill-Creator system. The protocols ensure autonomy, quality, and consistency while integrating advanced capabilities like context-aware activation and multi-intent detection.
### **Protocol Hierarchy**
```
Autonomous Creation Protocol (Master Protocol)
├── Phase 1: Discovery Protocol
├── Phase 2: Design Protocol
├── Phase 3: Architecture Protocol
├── Phase 4: Detection Protocol (Enhanced with Fase 1)
├── Phase 5: Implementation Protocol
├── Phase 6: Testing Protocol
└── AgentDB Learning Protocol
```
---
## 🤖 **Autonomous Creation Protocol (Master Protocol)**
### **When to Apply**
Always. This is the master protocol that governs all skill creation activities.
### **Core Principles**
#### **🔓 Autonomy Rules**
-**Claude DECIDES** which API to use (doesn't ask user)
-**Claude DEFINES** which analyses to perform (based on value)
-**Claude STRUCTURES** optimally (best practices)
-**Claude IMPLEMENTS** complete code (no placeholders)
-**Claude LEARNS** from experience (AgentDB integration)
#### **⭐ Quality Standards**
- ✅ Production-ready code (no TODOs)
- ✅ Useful documentation (not "see docs")
- ✅ Real configs (no placeholders)
- ✅ Robust error handling
- ✅ Intelligence validated with mathematical proofs
#### **📦 Completeness Requirements**
- ✅ Complete SKILL.md (5000+ words)
- ✅ Functional scripts (1000+ lines total)
- ✅ References with content (3000+ words)
- ✅ Valid assets/configs
- ✅ README with instructions
### **Decision-Making Authority**
```python
# Claude has full authority to decide:
DECISION_AUTHORITY = {
"api_selection": True, # Choose best API without asking
"analysis_scope": True, # Define what analyses to perform
"architecture": True, # Design optimal structure
"implementation_details": True, # Implement complete solutions
"quality_standards": True, # Ensure production quality
"user_questions": "MINIMAL" # Ask only when absolutely critical
}
```
### **Critical Questions Protocol**
Ask questions ONLY when:
1. **Critical business decision** (free vs paid API)
2. **Geographic scope** (country/region focus)
3. **Historical data range** (years needed)
4. **Multi-agent strategy** (separate vs integrated)
**Rule:** When in doubt, DECIDE and proceed. Claude should make intelligent choices and document them.
---
## 📋 **Phase 1: Discovery Protocol**
### **When to Apply**
Always. First phase of any skill creation.
### **Protocol Steps**
#### **Step 1.1: Domain Analysis**
```python
def analyze_domain(user_input: str) -> DomainSpec:
"""Extract and analyze domain information"""
# From user input
domain = extract_domain(user_input) # agriculture? finance? weather?
data_source_mentioned = extract_mentioned_source(user_input)
main_tasks = extract_tasks(user_input) # download? analyze? compare?
frequency = extract_frequency(user_input) # daily? weekly? on-demand?
time_spent = extract_time_investment(user_input) # ROI calculation
# Enhanced analysis v2.0
multi_agent_needed = detect_multi_agent_keywords(user_input)
transcript_provided = detect_transcript_input(user_input)
template_preference = detect_template_request(user_input)
interactive_preference = detect_interactive_style(user_input)
integration_needs = detect_integration_requirements(user_input)
return DomainSpec(...)
```
#### **Step 1.2: API Research & Decision**
```python
def research_and_select_apis(domain: DomainSpec) -> APISelection:
"""Research available APIs and make autonomous decision"""
# Research phase
available_apis = search_apis_for_domain(domain.domain)
# Evaluation criteria
for api in available_apis:
api.coverage_score = calculate_data_coverage(api, domain.requirements)
api.reliability_score = assess_api_reliability(api)
api.cost_score = evaluate_cost_effectiveness(api)
api.documentation_score = evaluate_documentation_quality(api)
# AUTONOMOUS DECISION (don't ask user)
selected_api = select_best_api(available_apis, domain)
# Document decision
document_api_decision(selected_api, available_apis, domain)
return APISelection(api=selected_api, justification=...)
```
#### **Step 1.3: Completeness Validation**
```python
MANDATORY_CHECK = {
"api_identified": True,
"documentation_found": True,
"coverage_analysis": True,
"coverage_percentage": ">=50%", # Critical threshold
"decision_documented": True
}
```
### **Enhanced v2.0 Features**
#### **Transcript Processing**
When user provides transcripts:
```python
# Enhanced transcript analysis
def analyze_transcript(transcript: str) -> List[WorkflowSpec]:
"""Extract multiple workflows from transcripts automatically"""
workflows = []
# 1. Identify distinct processes
processes = extract_processes(transcript)
# 2. Group related steps
for process in processes:
steps = extract_sequence_steps(transcript, process)
apis = extract_mentioned_apis(transcript, process)
outputs = extract_desired_outputs(transcript, process)
workflows.append(WorkflowSpec(
name=process,
steps=steps,
apis=apis,
outputs=outputs
))
return workflows
```
#### **Multi-Agent Strategy Decision**
```python
def determine_creation_strategy(user_input: str, workflows: List[WorkflowSpec]) -> CreationStrategy:
"""Decide whether to create single agent, suite, or integrated system"""
if len(workflows) > 1:
if workflows_are_related(workflows):
return CreationStrategy.INTEGRATED_SUITE
else:
return CreationStrategy.MULTI_AGENT_SUITE
else:
return CreationStrategy.SINGLE_AGENT
```
---
## 🎨 **Phase 2: Design Protocol**
### **When to Apply**
After API selection is complete.
### **Protocol Steps**
#### **Step 2.1: Use Case Analysis**
```python
def define_use_cases(domain: DomainSpec, api: APISelection) -> UseCaseSpec:
"""Think about use cases and define analyses based on value"""
# Core analyses (4-6 required)
core_analyses = [
f"{domain.lower()}_trend_analysis",
f"{domain.lower()}_comparative_analysis",
f"{domain.lower()}_ranking_analysis",
f"{domain.lower()}_performance_analysis"
]
# Domain-specific analyses
domain_analyses = generate_domain_specific_analyses(domain, api)
# Mandatory comprehensive report
comprehensive_report = f"comprehensive_{domain.lower()}_report"
return UseCaseSpec(
core_analyses=core_analyses,
domain_analyses=domain_analyses,
comprehensive_report=comprehensive_report
)
```
#### **Step 2.2: Analysis Methodology**
```python
def define_methodologies(use_cases: UseCaseSpec) -> MethodologySpec:
"""Specify methodologies for each analysis"""
methodologies = {}
for analysis in use_cases.all_analyses:
methodologies[analysis] = {
"data_requirements": define_data_requirements(analysis),
"statistical_methods": select_statistical_methods(analysis),
"visualization_needs": determine_visualization_needs(analysis),
"output_format": define_output_format(analysis)
}
return MethodologySpec(methodologies=methodologies)
```
#### **Step 2.3: Value Proposition**
```python
def calculate_value_proposition(domain: DomainSpec, analyses: UseCaseSpec) -> ValueSpec:
"""Calculate ROI and value proposition"""
current_manual_time = domain.time_spent_hours * 52 # Annual
automated_time = 0.5 # Estimated automated time per task
time_saved_annual = (current_manual_time - automated_time) * 52
roi_calculation = {
"time_before": current_manual_time,
"time_after": automated_time,
"time_saved": time_saved_annual,
"value_proposition": f"Save {time_saved_annual:.1f} hours annually"
}
return ValueSpec(roi=roi_calculation)
```
---
## 🏗️ **Phase 3: Architecture Protocol**
### **When to Apply**
After design specifications are complete.
### **Protocol Steps**
#### **Step 3.1: Modular Architecture Design**
```python
def design_architecture(use_cases: UseCaseSpec, api: APISelection) -> ArchitectureSpec:
"""Structure optimally following best practices"""
# MANDATORY structure
required_structure = {
"main_scripts": [
f"{api.name.lower()}_client.py",
f"{domain.lower()}_analyzer.py",
f"{domain.lower()}_comparator.py",
f"comprehensive_{domain.lower()}_report.py"
],
"utils": {
"helpers.py": "MANDATORY - temporal context and common utilities",
"validators/": "MANDATORY - 4 validators minimum"
},
"tests/": "MANDATORY - comprehensive test suite",
"references/": "MANDATORY - documentation and guides"
}
return ArchitectureSpec(structure=required_structure)
```
#### **Step 3.2: Modular Parser Architecture (MANDATORY)**
```python
# Rule: If API returns N data types → create N specific parsers
def create_modular_parsers(api_data_types: List[str]) -> ParserSpec:
"""Create one parser per data type - MANDATORY"""
parsers = {}
for data_type in api_data_types:
parser_name = f"parse_{data_type.lower()}"
parsers[parser_name] = {
"function_signature": f"def {parser_name}(data: dict) -> pd.DataFrame:",
"validation_rules": generate_validation_rules(data_type),
"error_handling": create_error_handling(data_type)
}
return ParserSpec(parsers=parsers)
```
#### **Step 3.3: Validation System (MANDATORY)**
```python
def create_validation_system(domain: str, data_types: List[str]) -> ValidationSpec:
"""Create comprehensive validation system - MANDATORY"""
# MANDATORY: 4 validators minimum
validators = {
f"validate_{domain.lower()}_data": create_domain_validator(),
f"validate_{domain.lower()}_entity": create_entity_validator(),
f"validate_{domain.lower()}_temporal": create_temporal_validator(),
f"validate_{domain.lower()}_completeness": create_completeness_validator()
}
# Additional validators per data type
for data_type in data_types:
validators[f"validate_{data_type.lower()}"] = create_type_validator(data_type)
return ValidationSpec(validators=validators)
```
#### **Step 3.4: Helper Functions (MANDATORY)**
```python
# MANDATORY: utils/helpers.py with temporal context
def create_helpers_module() -> HelperSpec:
"""Create helper functions module - MANDATORY"""
helpers = {
# Temporal context functions
"get_current_year": "lambda: datetime.now().year",
"get_seasonal_context": "determine_current_season()",
"get_time_period_description": "generate_time_description()",
# Common utilities
"safe_float_conversion": "convert_to_float_safely()",
"format_currency": "format_as_currency()",
"calculate_growth_rate": "compute_growth_rate()",
"handle_missing_data": "process_missing_values()"
}
return HelperSpec(functions=helpers)
```
---
## 🎯 **Phase 4: Detection Protocol (Enhanced with Fase 1)**
### **When to Apply**
After architecture is designed.
### **Enhanced 4-Layer Detection System**
```python
def create_detection_system(domain: str, capabilities: List[str]) -> DetectionSpec:
"""Create 4-layer detection with Fase 1 enhancements"""
# Layer 1: Keywords (Expanded 50-80 keywords)
keyword_spec = {
"total_target": "50-80 keywords",
"categories": {
"core_capabilities": "10-15 keywords",
"synonym_variations": "10-15 keywords",
"direct_variations": "8-12 keywords",
"domain_specific": "5-8 keywords",
"natural_language": "5-10 keywords"
}
}
# Layer 2: Patterns (10-15 patterns)
pattern_spec = {
"total_target": "10-15 patterns",
"enhanced_patterns": [
"data_extraction_patterns",
"processing_patterns",
"workflow_automation_patterns",
"technical_operations_patterns",
"natural_language_patterns"
]
}
# Layer 3: Description + NLU
description_spec = {
"minimum_length": "300-500 characters",
"keyword_density": "include 60+ unique keywords",
"semantic_richness": "comprehensive concept coverage"
}
# Layer 4: Context-Aware Filtering (Fase 1 enhancement)
context_spec = {
"required_context": {
"domains": [domain, get_related_domains(domain)],
"tasks": capabilities,
"confidence_threshold": 0.8
},
"excluded_context": {
"domains": get_excluded_domains(domain),
"tasks": ["tutorial", "help", "debugging"],
"query_types": ["question", "definition"]
},
"context_weights": {
"domain_relevance": 0.35,
"task_relevance": 0.30,
"intent_strength": 0.20,
"conversation_coherence": 0.15
}
}
# Multi-Intent Detection (Fase 1 enhancement)
intent_spec = {
"primary_intents": get_primary_intents(domain),
"secondary_intents": get_secondary_intents(capabilities),
"contextual_intents": get_contextual_intents(),
"intent_combinations": generate_supported_combinations()
}
return DetectionSpec(
keywords=keyword_spec,
patterns=pattern_spec,
description=description_spec,
context=context_spec,
intents=intent_spec
)
```
### **Keywords Generation Protocol**
```python
def generate_expanded_keywords(domain: str, capabilities: List[str]) -> KeywordSpec:
"""Generate 50-80 expanded keywords using Fase 1 system"""
# Use synonym expansion system
base_keywords = generate_base_keywords(domain, capabilities)
expanded_keywords = expand_with_synonyms(base_keywords, domain)
# Category organization
categorized_keywords = {
"core_capabilities": extract_core_capabilities(expanded_keywords),
"synonym_variations": extract_synonyms(expanded_keywords),
"direct_variations": generate_direct_variations(base_keywords),
"domain_specific": generate_domain_specific(domain),
"natural_language": generate_natural_variations(base_keywords)
}
return KeywordSpec(
total=len(expanded_keywords),
categories=categorized_keywords,
minimum_target=50 # Target: 50-80 keywords
)
```
### **Pattern Generation Protocol**
```python
def generate_enhanced_patterns(domain: str, keywords: KeywordSpec) -> PatternSpec:
"""Generate 10-15 enhanced patterns using Fase 1 system"""
# Use activation patterns guide
base_patterns = generate_base_patterns(domain)
enhanced_patterns = enhance_patterns_with_synonyms(base_patterns)
# Pattern categories
pattern_categories = {
"data_extraction": create_data_extraction_patterns(domain),
"processing_workflow": create_processing_patterns(domain),
"technical_operations": create_technical_patterns(domain),
"natural_language": create_conversational_patterns(domain)
}
return PatternSpec(
patterns=enhanced_patterns,
categories=pattern_categories,
minimum_target=10 # Target: 10-15 patterns
)
```
---
## ⚙️ **Phase 5: Implementation Protocol**
### **When to Apply**
After detection system is designed.
### **Critical Implementation Order (MANDATORY)**
#### **Step 5.1: Create marketplace.json IMMEDIATELY**
```python
# STEP 0.1: Create basic structure
def create_marketplace_json_first(domain: str, description: str) -> bool:
"""Create marketplace.json BEFORE any other files - MANDATORY"""
marketplace_template = {
"name": f"{domain.lower()}-skill-name",
"owner": {"name": "Agent Creator", "email": "noreply@example.com"},
"metadata": {
"description": description, # Will be synchronized later
"version": "1.0.0",
"created": datetime.now().strftime("%Y-%m-%d"),
"language": "en-US"
},
"plugins": [{
"name": f"{domain.lower()}-plugin",
"description": description, # MUST match SKILL.md description
"source": "./",
"strict": false,
"skills": ["./"]
}],
"activation": {
"keywords": [], # Will be populated in Phase 4
"patterns": [] # Will be populated in Phase 4
},
"capabilities": {},
"usage": {
"example": "",
"when_to_use": [],
"when_not_to_use": []
},
"test_queries": []
}
# Create file immediately
with open('.claude-plugin/marketplace.json', 'w') as f:
json.dump(marketplace_template, f, indent=2)
return True
```
#### **Step 5.2: Validate marketplace.json**
```python
def validate_marketplace_json() -> ValidationResult:
"""Validate marketplace.json immediately after creation - MANDATORY"""
validation_checks = {
"syntax_valid": validate_json_syntax('.claude-plugin/marketplace.json'),
"required_fields": check_required_fields('.claude-plugin/marketplace.json'),
"structure_valid": validate_marketplace_structure('.claude-plugin/marketplace.json')
}
if not all(validation_checks.values()):
raise ValidationError("marketplace.json validation failed - FIX BEFORE CONTINUING")
return ValidationResult(passed=True, checks=validation_checks)
```
#### **Step 5.3: Create SKILL.md with Frontmatter**
```python
def create_skill_md(domain: str, description: str, detection_spec: DetectionSpec) -> bool:
"""Create SKILL.md with proper frontmatter - MANDATORY"""
frontmatter = f"""---
name: {domain.lower()}-skill-name
description: {description}
---
# {domain.title()} Skill
[... rest of SKILL.md content ...]
"""
with open('SKILL.md', 'w') as f:
f.write(frontmatter)
return True
```
#### **Step 5.4: CRITICAL Synchronization Check**
```python
def synchronize_descriptions() -> bool:
"""MANDATORY: SKILL.md description MUST EQUAL marketplace.json description"""
skill_description = extract_frontmatter_description('SKILL.md')
marketplace_description = extract_marketplace_description('.claude-plugin/marketplace.json')
if skill_description != marketplace_description:
# Fix marketplace.json to match SKILL.md
update_marketplace_description('.claude-plugin/marketplace.json', skill_description)
print("🔧 FIXED: Synchronized SKILL.md description with marketplace.json")
return True
```
#### **Step 5.5: Implementation Order (MANDATORY)**
```python
# Implementation sequence
IMPLEMENTATION_ORDER = {
1: "utils/helpers.py (MANDATORY)",
2: "utils/validators/ (MANDATORY - 4 validators minimum)",
3: "Modular parsers (1 per data type - MANDATORY)",
4: "Main analysis scripts",
5: "comprehensive_{domain}_report() (MANDATORY)",
6: "tests/ directory",
7: "README.md and documentation"
}
```
### **Code Implementation Standards**
#### **No Placeholders Rule**
```python
# ❌ FORBIDDEN - No placeholders or TODOs
def analyze_data(data):
# TODO: implement analysis
pass
# ✅ REQUIRED - Complete implementation
def analyze_data(data: pd.DataFrame) -> Dict[str, Any]:
"""Analyze domain data with comprehensive metrics"""
if data.empty:
raise ValueError("Data cannot be empty")
# Complete implementation with error handling
try:
analysis_results = {
"trend_analysis": calculate_trends(data),
"performance_metrics": calculate_performance(data),
"statistical_summary": generate_statistics(data)
}
return analysis_results
except Exception as e:
logger.error(f"Analysis failed: {e}")
raise AnalysisError(f"Unable to analyze data: {e}")
```
#### **Documentation Standards**
```python
# ✅ REQUIRED: Complete docstrings
def calculate_growth_rate(values: List[float]) -> float:
"""
Calculate compound annual growth rate (CAGR) for a series of values.
Args:
values: List of numeric values in chronological order
Returns:
Compound annual growth rate as decimal (0.15 = 15%)
Raises:
ValueError: If less than 2 values or contains non-numeric data
Example:
>>> calculate_growth_rate([100, 115, 132.25])
0.15 # 15% CAGR
"""
# Implementation...
```
---
## 🧪 **Phase 6: Testing Protocol**
### **When to Apply**
After implementation is complete.
### **Mandatory Test Requirements**
#### **Step 6.1: Test Suite Structure**
```python
MANDATORY_TEST_STRUCTURE = {
"tests/": {
"test_integration.py": "≥5 end-to-end tests - MANDATORY",
"test_parse.py": "1 test per parser - MANDATORY",
"test_analyze.py": "1 test per analysis function - MANDATORY",
"test_helpers.py": "≥3 tests - MANDATORY",
"test_validation.py": "≥5 tests - MANDATORY"
},
"total_minimum_tests": 25, # Absolute minimum
"all_tests_must_pass": True # No exceptions
}
```
#### **Step 6.2: Integration Tests (MANDATORY)**
```python
def create_integration_tests() -> List[TestSpec]:
"""Create ≥5 end-to-end integration tests - MANDATORY"""
integration_tests = [
{
"name": "test_full_workflow_integration",
"description": "Test complete workflow from API to report",
"steps": [
"test_api_connection",
"test_data_parsing",
"test_analysis_execution",
"test_report_generation"
]
},
{
"name": "test_error_handling_integration",
"description": "Test error handling throughout system",
"steps": [
"test_api_failure_handling",
"test_invalid_data_handling",
"test_missing_data_handling"
]
}
# ... 3+ more integration tests
]
return integration_tests
```
#### **Step 6.3: Test Execution & Validation**
```python
def execute_all_tests() -> TestResult:
"""Execute ALL tests and ensure they pass - MANDATORY"""
test_results = {}
# Execute each test file
for test_file in MANDATORY_TEST_STRUCTURE["tests/"]:
test_results[test_file] = execute_test_file(f"tests/{test_file}")
# Validate all tests pass
failed_tests = [test for test, result in test_results.items() if not result.passed]
if failed_tests:
raise TestError(f"FAILED TESTS: {failed_tests} - FIX BEFORE DELIVERY")
print("✅ ALL TESTS PASSED - Ready for delivery")
return TestResult(passed=True, results=test_results)
```
---
## 🧠 **AgentDB Learning Protocol**
### **When to Apply**
After successful skill creation and testing.
### **Automatic Episode Storage**
```python
def store_creation_episode(user_input: str, creation_result: CreationResult) -> str:
"""Store successful creation episode for future learning - AUTOMATIC"""
try:
bridge = get_real_agentdb_bridge()
episode = Episode(
session_id=f"agent-creation-{datetime.now().strftime('%Y%m%d-%H%M%S')}",
task=user_input,
input=f"Domain: {creation_result.domain}, API: {creation_result.api}",
output=f"Created: {creation_result.agent_name}/ with {creation_result.file_count} files",
critique=f"Success: {'✅ High quality' if creation_result.all_tests_passed else '⚠️ Needs refinement'}",
reward=0.9 if creation_result.all_tests_passed else 0.7,
success=creation_result.all_tests_passed,
latency_ms=creation_result.creation_time_seconds * 1000,
tokens_used=creation_result.estimated_tokens,
tags=[creation_result.domain, creation_result.api, creation_result.architecture_type],
metadata={
"agent_name": creation_result.agent_name,
"domain": creation_result.domain,
"api": creation_result.api,
"complexity": creation_result.complexity,
"files_created": creation_result.file_count,
"validation_passed": creation_result.all_tests_passed
}
)
episode_id = bridge.store_episode(episode)
print(f"🧠 Episode stored for learning: #{episode_id}")
# Create skill if successful
if creation_result.all_tests_passed and bridge.is_available:
skill = Skill(
name=f"{creation_result.domain}_agent_template",
description=f"Proven template for {creation_result.domain} agents",
code=f"API: {creation_result.api}, Structure: {creation_result.architecture}",
success_rate=1.0,
uses=1,
avg_reward=0.9,
metadata={"domain": creation_result.domain, "api": creation_result.api}
)
skill_id = bridge.create_skill(skill)
print(f"🎯 Skill created: #{skill_id}")
return episode_id
except Exception as e:
# AgentDB failure should not break agent creation
print("🔄 AgentDB learning unavailable - agent creation completed successfully")
return None
```
### **Learning Progress Integration**
```python
def provide_learning_feedback(episode_count: int, success_rate: float) -> str:
"""Provide subtle feedback about learning progress"""
if episode_count == 1:
return "🎉 First agent created successfully!"
elif episode_count == 10:
return "⚡ Agent creation optimized based on 10 successful patterns"
elif episode_count >= 30:
return "🌟 I've learned your preferences - future creations will be optimized"
return ""
```
---
## 🚨 **Critical Protocol Violations & Prevention**
### **Common Violations to Avoid**
#### **❌ Forbidden Actions**
```python
FORBIDDEN_ACTIONS = {
"asking_user_questions": "Except for critical business decisions",
"creating_placeholders": "No TODOs or pass statements",
"skipping_validations": "All validations must pass",
"ignoring_mandatory_structure": "Required files/dirs must be created",
"poor_documentation": "Must include complete docstrings and comments",
"failing_tests": "All tests must pass before delivery"
}
```
#### **⚠️ Quality Gates**
```python
QUALITY_GATES = {
"pre_implementation": [
"marketplace.json created and validated",
"SKILL.md created with frontmatter",
"descriptions synchronized"
],
"post_implementation": [
"all mandatory files created",
"no placeholders or TODOs",
"complete error handling",
"comprehensive documentation"
],
"pre_delivery": [
"all tests created (≥25)",
"all tests pass",
"marketplace test command successful",
"AgentDB episode stored"
]
}
```
### **Delivery Validation Protocol**
```python
def final_delivery_validation() -> ValidationResult:
"""Final MANDATORY validation before delivery"""
validation_steps = [
("marketplace_syntax", validate_marketplace_syntax),
("description_sync", validate_description_synchronization),
("import_validation", validate_all_imports),
("placeholder_check", check_no_placeholders),
("test_execution", execute_all_tests),
("marketplace_installation", test_marketplace_installation)
]
results = {}
for step_name, validation_func in validation_steps:
try:
results[step_name] = validation_func()
except Exception as e:
results[step_name] = ValidationResult(passed=False, error=str(e))
failed_steps = [step for step, result in results.items() if not result.passed]
if failed_steps:
raise ValidationError(f"DELIVERY BLOCKED - Failed validations: {failed_steps}")
return ValidationResult(passed=True, validations=results)
```
---
## 📋 **Complete Protocol Checklist**
### **Pre-Creation Validation**
- [ ] User request triggers skill creation protocol
- [ ] Agent-Skill-Cursor activates correctly
- [ ] Initial domain analysis complete
### **Phase 1: Discovery**
- [ ] Domain identified and analyzed
- [ ] API researched and selected (with justification)
- [ ] API completeness analysis completed (≥50% coverage)
- [ ] Multi-agent/transcript analysis if applicable
- [ ] Creation strategy determined
### **Phase 2: Design**
- [ ] Use cases defined (4-6 analyses + comprehensive report)
- [ ] Methodologies specified for each analysis
- [ ] Value proposition and ROI calculated
- [ ] Design decisions documented
### **Phase 3: Architecture**
- [ ] Modular architecture designed
- [ ] Parser architecture planned (1 per data type)
- [ ] Validation system planned (4+ validators)
- [ ] Helper functions specified
- [ ] File structure finalized
### **Phase 4: Detection (Enhanced)**
- [ ] 50-80 keywords generated across 5 categories
- [ ] 10-15 enhanced patterns created
- [ ] Context-aware filters configured
- [ ] Multi-intent detection configured
- [ ] marketplace.json activation section populated
### **Phase 5: Implementation**
- [ ] marketplace.json created FIRST and validated
- [ ] SKILL.md created with synchronized description
- [ ] utils/helpers.py implemented (MANDATORY)
- [ ] utils/validators/ implemented (4+ validators)
- [ ] Modular parsers implemented (1 per data type)
- [ ] Main analysis scripts implemented
- [ ] comprehensive_{domain}_report() implemented (MANDATORY)
- [ ] No placeholders or TODOs anywhere
- [ ] Complete error handling throughout
- [ ] Comprehensive documentation written
### **Phase 6: Testing**
- [ ] tests/ directory created
- [ ] ≥25 tests implemented across all categories
- [ ] ALL tests pass
- [ ] Integration tests successful
- [ ] Marketplace installation test successful
### **Final Delivery**
- [ ] Final validation passed
- [ ] AgentDB episode stored
- [ ] Learning feedback provided if applicable
- [ ] Ready for user delivery
---
## 🎯 **Protocol Success Metrics**
### **Quality Indicators**
- **Activation Reliability**: ≥99.5%
- **False Positive Rate**: <1%
- **Code Coverage**: ≥90%
- **Test Pass Rate**: 100%
- **Documentation Completeness**: 100%
- **User Satisfaction**: ≥95%
### **Learning Indicators**
- **Episodes Stored**: 100% of successful creations
- **Pattern Recognition**: Improves with each creation
- **Decision Quality**: Enhanced by AgentDB learning
- **Template Success Rate**: Tracked and optimized
---
**Version:** 1.0
**Last Updated:** 2025-10-24
**Maintained By:** Agent-Skill-Creator Team