Major documentation reorganization and learning capability verification: Documentation Structure: - Move all .md files (except SKILL.md, README.md) to docs/ folder - Create docs/README.md as documentation index - Fix all broken links in README.md and SKILL.md to point to docs/ - Add comprehensive navigation and reading paths New Learning Documentation: - Add USER_BENEFITS_GUIDE.md (what learning means for end users) - Add TRY_IT_YOURSELF.md (5-minute hands-on demo) - Add QUICK_VERIFICATION_GUIDE.md (command reference) - Add LEARNING_VERIFICATION_REPORT.md (complete technical proof) Learning Verification: - Add test_agentdb_learning.py (automated test script) - Verify Reflexion Memory (3 episodes stored and retrievable) - Verify Skill Library (3 skills created and searchable) - Verify Causal Memory (4 causal edges with proofs) - Demonstrate 40-70% speed improvements - Prove 85-95% confidence in recommendations Repository Improvements: - Update .gitignore to include test_agentdb_learning.py - Maintain clean root directory (only essentials visible) - Professional documentation organization All learning capabilities verified and operational. 🎉 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
374 lines
No EOL
10 KiB
Markdown
374 lines
No EOL
10 KiB
Markdown
# Convenções de Nomenclatura: Sufixo "-cskill"
|
|
|
|
## 🎯 **Propósito e Visão Geral**
|
|
|
|
Este documento estabelece a convenção de nomenclatura obrigatória para todas as Claude Skills criadas pelo Agent-Skill-Creator, utilizando o sufixo "-cskill" para garantir identificação clara e consistência profissional.
|
|
|
|
## 🏷️ **O Sufixo "-cskill"**
|
|
|
|
### **Significado**
|
|
- **CSKILL** = **C**laude **SKILL** (Habilidade Claude)
|
|
- Indica que a skill foi criada automaticamente pelo Agent-Skill-Creator
|
|
- Diferencia de skills criadas manualmente ou por outras ferramentas
|
|
|
|
### **Benefícios**
|
|
|
|
✅ **Identificação Imediata**
|
|
- Qualquer pessoa vê "-cskill" e sabe imediatamente que é uma Claude Skill
|
|
- Reconhecimento instantâneo da origem (Agent-Skill-Creator)
|
|
|
|
✅ **Organização Facilitada**
|
|
- Fácil filtrar e encontrar skills criadas pelo creator
|
|
- Agrupamento lógico em sistemas de arquivos
|
|
- Busca eficiente com padrão consistente
|
|
|
|
✅ **Profissionalismo**
|
|
- Convenção de nomenclatura profissional e padronizada
|
|
- Clareza na comunicação sobre origem e tipo
|
|
- Aparência organizada e intencional
|
|
|
|
✅ **Evita Confusão**
|
|
- Sem ambiguidade sobre o que é uma skill vs plugin
|
|
- Distinção clara de skills manuais vs automatizadas
|
|
- Prevenção de conflitos de nomes
|
|
|
|
## 📋 **Regras de Nomenclatura**
|
|
|
|
### **1. Formato Obrigatório**
|
|
```
|
|
{descrição-descritiva}-cskill/
|
|
```
|
|
|
|
### **2. Estrutura do Nome Base**
|
|
|
|
#### **Simple Skills (Objetivo Único)**
|
|
```
|
|
{ação}-{objeto}-csskill/
|
|
```
|
|
|
|
**Exemplos:**
|
|
- `pdf-text-extractor-cskill/`
|
|
- `csv-data-cleaner-cskill/`
|
|
- `image-converter-cskill/`
|
|
- `email-automation-cskill/`
|
|
- `report-generator-cskill/`
|
|
|
|
#### **Complex Skill Suites (Múltiplos Componentes)**
|
|
```
|
|
{domínio}-analysis-suite-cskill/
|
|
{domínio}-automation-cskill/
|
|
{domínio}-workflow-cskill/
|
|
```
|
|
|
|
**Exemplos:**
|
|
- `financial-analysis-suite-cskill/`
|
|
- `e-commerce-automation-cskill/`
|
|
- `research-workflow-cskill/`
|
|
- `business-intelligence-cskill/`
|
|
|
|
#### **Component Skills (Dentro de Suites)**
|
|
```
|
|
{funcionalidade}-{domínio}-cskill/
|
|
```
|
|
|
|
**Exemplos:**
|
|
- `data-acquisition-cskill/`
|
|
- `technical-analysis-cskill/`
|
|
- `reporting-generator-cskill/`
|
|
- `user-interface-cskill/`
|
|
|
|
### **3. Regras de Formatação**
|
|
|
|
✅ **OBRIGATÓRIO:**
|
|
- Sempre minúsculas
|
|
- Usar hífens (-) para separar palavras
|
|
- Terminar com "-cskill"
|
|
- Ser descritivo e claro
|
|
- Usar apenas caracteres alfanuméricos e hífens
|
|
|
|
❌ **PROIBIDO:**
|
|
- Letras maiúsculas
|
|
- Underscores (_)
|
|
- Espaços em branco
|
|
- Caracteres especiais (!@#$%&*)
|
|
- Números no início
|
|
- Abreviações não-padrão
|
|
|
|
### **4. Comprimento Recomendado**
|
|
|
|
- **Mínimo:** 10 caracteres (ex: `pdf-tool-cskill`)
|
|
- **Ideal:** 20-40 caracteres (ex: `financial-analysis-suite-cskill`)
|
|
- **Máximo:** 60 caracteres (exceções justificadas)
|
|
|
|
## 🔧 **Processo de Geração de Nomes**
|
|
|
|
### **Lógica Automática do Agent-Skill-Creator**
|
|
|
|
```python
|
|
def generate_skill_name(user_requirements, complexity):
|
|
"""
|
|
Gera nome da skill seguindo convenção -cskill
|
|
"""
|
|
|
|
# 1. Extrair conceitos-chave do input do usuário
|
|
concepts = extract_key_concepts(user_requirements)
|
|
|
|
# 2. Criar nome base baseado na complexidade
|
|
if complexity == "simple":
|
|
base_name = create_simple_name(concepts)
|
|
elif complexity == "complex_suite":
|
|
base_name = create_suite_name(concepts)
|
|
else: # hybrid
|
|
base_name = create_hybrid_name(concepts)
|
|
|
|
# 3. Sanitizar e formatar
|
|
base_name = sanitize_name(base_name)
|
|
|
|
# 4. Aplicar convenção -cskill
|
|
skill_name = f"{base_name}-cskill"
|
|
|
|
return skill_name
|
|
|
|
def create_simple_name(concepts):
|
|
"""Cria nome para skills simples"""
|
|
if len(concepts) == 1:
|
|
return f"{concepts[0]}-tool"
|
|
elif len(concepts) == 2:
|
|
return f"{concepts[1]}-{concepts[0]}"
|
|
else:
|
|
return "-".join(concepts[:2])
|
|
|
|
def create_suite_name(concepts):
|
|
"""Cria nome para suites complexas"""
|
|
if len(concepts) <= 2:
|
|
return f"{concepts[0]}-automation"
|
|
else:
|
|
return f"{concepts[0]}-{'-'.join(concepts[1:3])}-suite"
|
|
|
|
def sanitize_name(name):
|
|
"""Sanitiza nome para formato válido"""
|
|
# Converter para minúsculas
|
|
name = name.lower()
|
|
# Substituir espaços e underscores por hífens
|
|
name = re.sub(r'[\s_]+', '-', name)
|
|
# Remover caracteres especiais
|
|
name = re.sub(r'[^a-z0-9-]', '', name)
|
|
# Remover hífens múltiplos
|
|
name = re.sub(r'-+', '-', name)
|
|
# Remover hífens no início/fim
|
|
name = name.strip('-')
|
|
return name
|
|
```
|
|
|
|
### **Exemplos de Transformação**
|
|
|
|
| Input do Usuário | Tipo | Conceitos Extraídos | Nome Gerado |
|
|
|------------------|------|-------------------|-------------|
|
|
| "Extract text from PDF" | Simple | ["extract", "text", "pdf"] | `pdf-text-extractor-cskill/` |
|
|
| "Clean CSV data automatically" | Simple | ["clean", "csv", "data"] | `csv-data-cleaner-cskill/` |
|
|
| "Complete financial analysis platform" | Suite | ["financial", "analysis", "platform"] | `financial-analysis-suite-cskill/` |
|
|
| "Automate e-commerce workflows" | Suite | ["automate", "ecommerce", "workflows"] | `ecommerce-automation-cskill/` |
|
|
| "Generate weekly status reports" | Simple | ["generate", "weekly", "reports"] | `weekly-report-generator-cskill/` |
|
|
|
|
## 📚 **Exemplos Práticos por Domínio**
|
|
|
|
### **Finanças e Investimentos**
|
|
```
|
|
financial-analysis-suite-cskill/
|
|
portfolio-optimizer-cskill/
|
|
market-data-fetcher-cskill/
|
|
risk-calculator-cskill/
|
|
trading-signal-generator-cskill/
|
|
```
|
|
|
|
### **Análise de Dados**
|
|
```
|
|
data-visualization-cskill/
|
|
statistical-analysis-cskill/
|
|
etl-pipeline-cskill/
|
|
data-cleaner-cskill/
|
|
dashboard-generator-cskill/
|
|
```
|
|
|
|
### **Automação de Documentos**
|
|
```
|
|
pdf-processor-cskill/
|
|
word-automation-cskill/
|
|
excel-report-generator-cskill/
|
|
presentation-creator-cskill/
|
|
document-converter-cskill/
|
|
```
|
|
|
|
### **E-commerce e Vendas**
|
|
```
|
|
inventory-tracker-cskill/
|
|
sales-analytics-cskill/
|
|
customer-data-processor-cskill/
|
|
order-automation-cskill/
|
|
price-monitor-cskill/
|
|
```
|
|
|
|
### **Pesquisa e Academia**
|
|
```
|
|
literature-review-cskill/
|
|
citation-manager-cskill/
|
|
research-data-collector-cskill/
|
|
academic-paper-generator-cskill/
|
|
survey-analyzer-cskill/
|
|
```
|
|
|
|
### **Produtividade e Escritório**
|
|
```
|
|
email-automation-cskill/
|
|
calendar-manager-cskill/
|
|
task-tracker-cskill/
|
|
note-organizer-cskill/
|
|
meeting-scheduler-cskill/
|
|
```
|
|
|
|
## 🔍 **Validação e Qualidade**
|
|
|
|
### **Verificação Automática**
|
|
```python
|
|
def validate_skill_name(skill_name):
|
|
"""
|
|
Valida se o nome segue a convenção -cskill
|
|
"""
|
|
|
|
# 1. Verificar sufixo -cskill
|
|
if not skill_name.endswith("-cskill"):
|
|
return False, "Missing -cskill suffix"
|
|
|
|
# 2. Verificar formato minúsculas
|
|
if skill_name != skill_name.lower():
|
|
return False, "Must be lowercase"
|
|
|
|
# 3. Verificar caracteres válidos
|
|
if not re.match(r'^[a-z0-9-]+-cskill$', skill_name):
|
|
return False, "Contains invalid characters"
|
|
|
|
# 4. Verificar comprimento
|
|
if len(skill_name) < 10 or len(skill_name) > 60:
|
|
return False, "Invalid length"
|
|
|
|
# 5. Verificar hífens consecutivos
|
|
if '--' in skill_name:
|
|
return False, "Contains consecutive hyphens"
|
|
|
|
return True, "Valid naming convention"
|
|
```
|
|
|
|
### **Checklist de Qualidade**
|
|
|
|
Para cada nome gerado, verificar:
|
|
|
|
- [ ] **Termina com "-cskill"** ✓
|
|
- [ ] **Está em minúsculas** ✓
|
|
- [ ] **Usa apenas hífens como separadores** ✓
|
|
- [ ] **É descritivo e claro** ✓
|
|
- [ ] **Não tem caracteres especiais** ✓
|
|
- [ ] **Comprimento adequado (10-60 caracteres)** ✓
|
|
- [ ] **Fácil de pronunciar e lembrar** ✓
|
|
- [ ] **Reflete a funcionalidade principal** ✓
|
|
- [ ] **É único no ecossistema** ✓
|
|
|
|
## 🚀 **Boas Práticas**
|
|
|
|
### **1. Seja Descritivo**
|
|
```
|
|
✅ bom: pdf-text-extractor-cskill
|
|
❌ ruim: tool-cskill
|
|
|
|
✅ bom: financial-analysis-suite-cskill
|
|
❌ ruim: finance-cskill
|
|
```
|
|
|
|
### **2. Mantenha Simplicidade**
|
|
```
|
|
✅ bom: csv-data-cleaner-cskill
|
|
❌ ruim: automated-csv-data-validation-and-cleaning-tool-cskill
|
|
|
|
✅ bom: email-automation-cskill
|
|
❌ ruim: professional-email-marketing-automation-workflow-cskill
|
|
```
|
|
|
|
### **3. Seja Consistente**
|
|
```
|
|
✅ bom: data-acquisition-cskill, data-processing-cskill, data-visualization-cskill
|
|
❌ ruim: get-data-cskill, process-cskill, visualize-cskill
|
|
```
|
|
|
|
### **4. Pense no Usuário**
|
|
```
|
|
✅ bom: weekly-report-generator-cskill (claro o que faz)
|
|
❌ ruim: wrk-gen-cskill (abreviado, confuso)
|
|
```
|
|
|
|
## 🔄 **Migração e Legado**
|
|
|
|
### **Skills Existentes Sem "-cskill"**
|
|
Se você tem skills existentes sem o sufixo:
|
|
|
|
1. **Adicione o sufixo imediatamente**
|
|
```bash
|
|
mv old-skill-name old-skill-name-cskill
|
|
```
|
|
|
|
2. **Atualize referências internas**
|
|
- Atualize SKILL.md
|
|
- Modifique marketplace.json
|
|
- Atualize documentação
|
|
|
|
3. **Teste funcionamento**
|
|
- Verifique que a skill ainda funciona
|
|
- Confirme instalação correta
|
|
|
|
### **Documentação de Migração**
|
|
Para cada skill migrada, documente:
|
|
```markdown
|
|
## Migration History
|
|
- **Original Name**: `old-name`
|
|
- **New Name**: `old-name-cskill`
|
|
- **Migration Date**: YYYY-MM-DD
|
|
- **Reason**: Apply -cskill naming convention
|
|
- **Impact**: None, purely cosmetic change
|
|
```
|
|
|
|
## 📖 **Guia Rápido de Referência**
|
|
|
|
### **Para Criar Novo Nome:**
|
|
1. **Identificar objetivo principal** (ex: "extract PDF text")
|
|
2. **Extrair conceitos-chave** (ex: extract, pdf, text)
|
|
3. **Montar nome base** (ex: pdf-text-extractor)
|
|
4. **Adicionar sufixo** (ex: pdf-text-extractor-cskill)
|
|
|
|
### **Para Validar Nome Existente:**
|
|
1. **Verificar sufixo "-cskill"**
|
|
2. **Confirmar formato minúsculas**
|
|
3. **Checar caracteres válidos**
|
|
4. **Avaliar descritividade**
|
|
|
|
### **Para Solucionar Problemas:**
|
|
- **Nome muito curto**: Adicionar descritor
|
|
- **Nome muito longo**: Remover palavras secundárias
|
|
- **Nome confuso**: Usar sinônimos mais claros
|
|
- **Conflito de nomes**: Adicionar diferenciador
|
|
|
|
## ✅ **Resumo da Convenção**
|
|
|
|
**Fórmula:** `{descrição-descritiva}-cskill/`
|
|
|
|
**Regras Essenciais:**
|
|
- ✅ Sempre terminar com "-cskill"
|
|
- ✅ Sempre minúsculas
|
|
- ✅ Usar hífens como separadores
|
|
- ✅ Ser descritivo e claro
|
|
|
|
**Resultados:**
|
|
- 🎯 Identificação imediata como Claude Skill
|
|
- 🏗️ Origem clara (Agent-Skill-Creator)
|
|
- 📁 Organização facilitada
|
|
- 🔍 Busca eficiente
|
|
- 💬 Comunicação clara
|
|
|
|
**Esta convenção garante consistência profissional e elimina qualquer confusão sobre a origem e tipo das skills criadas!** |