docs: Translate documentation from Portuguese to English

Translated three core documentation files to American English for
improved international accessibility and consistency:

- docs/CLAUDE_SKILLS_ARCHITECTURE.md
- docs/NAMING_CONVENTIONS.md
- docs/INTERNAL_FLOW_ANALYSIS.md

All technical content, code examples, and document structure preserved.
Verified no Portuguese text remains in translated files.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Francy Lisboa 2025-10-24 15:41:31 -03:00
parent 191c3a68fd
commit a85c6e7468
3 changed files with 440 additions and 440 deletions

View file

@ -1,192 +1,192 @@
# Claude Skills Architecture: Guia Completo
# Claude Skills Architecture: Complete Guide
## 🎯 **Propósito**
## 🎯 **Purpose**
Este documento elimina a confusão entre diferentes tipos de Skills Claude Code e estabelece terminologia consistente.
This document eliminates confusion between different types of Claude Code Skills and establishes consistent terminology.
## 📚 **Terminologia Padrão**
## 📚 **Standard Terminology**
### **Skill**
Uma **Skill** é uma capacidade completa do Claude Code implementada como uma pasta contendo:
- Arquivo `SKILL.md` (obrigatório)
- Recursos opcionais (scripts/, references/, assets/)
- Funcionalidade específica para um domínio
A **Skill** is a complete Claude Code capability implemented as a folder containing:
- `SKILL.md` file (required)
- Optional resources (scripts/, references/, assets/)
- Domain-specific functionality
**Exemplo:** `minha-skill/` contendo análise de dados financeiros
**Example:** `my-skill/` containing financial data analysis
### **Component Skill**
Uma **Component Skill** é uma sub-skill especializada que é parte de uma Skill Suite maior.
- Tem seu próprio `SKILL.md`
- Foca em uma funcionalidade específica
- Compartilha recursos com outras component skills
A **Component Skill** is a specialized sub-skill that is part of a larger Skill Suite.
- Has its own `SKILL.md`
- Focuses on specific functionality
- Shares resources with other component skills
**Exemplo:** `data-acquisition/SKILL.md` dentro de uma suite de análise financeira
**Example:** `data-acquisition/SKILL.md` within a financial analysis suite
### **Skill Suite**
Uma **Skill Suite** é uma coleção integrada de Component Skills que trabalham juntas.
- Tem `marketplace.json` como manifest
- Múltiplas component skills especializadas
- Recursos compartilhados entre skills
A **Skill Suite** is an integrated collection of Component Skills that work together.
- Has `marketplace.json` as manifest
- Multiple specialized component skills
- Shared resources between skills
**Exemplo:** Suite completa de análise financeira com skills para data acquisition, analysis, e reporting.
**Example:** Complete financial analysis suite with skills for data acquisition, analysis, and reporting.
### **Marketplace Plugin**
Um **Marketplace Plugin** é o arquivo `marketplace.json` que hospeda e organiza uma ou mais Skills.
- **NÃO é uma skill** - é um manifest organizacional
- Define como as skills devem ser carregadas
- Pode hospedar skills simples ou suites complexas
A **Marketplace Plugin** is the `marketplace.json` file that hosts and organizes one or more Skills.
- **NOT a skill** - it's an organizational manifest
- Defines how skills should be loaded
- Can host simple skills or complex suites
## 🏗️ **Tipos de Arquitetura**
## 🏗️ **Architecture Types**
### **Arquitetura 1: Simple Skill**
### **Architecture 1: Simple Skill**
```
minha-skill/
my-skill/
├── SKILL.md ← Single skill file
├── scripts/ ← Optional supporting code
├── references/ ← Optional documentation
└── assets/ ← Optional templates/resources
```
**Quando usar:**
- Funcionalidade focada e única
- Workflow simples
- Menos de 1000 linhas de código total
- Um objetivo principal
**When to use:**
- Focused, single functionality
- Simple workflow
- Less than 1000 lines of total code
- One main objective
**Exemplos:**
- Gerador de propostas comerciais
- Extrator de dados de PDFs
- Calculadora de ROI
**Examples:**
- Business proposal generator
- PDF data extractor
- ROI calculator
### **Arquitetura 2: Complex Skill Suite**
### **Architecture 2: Complex Skill Suite**
```
minha-suite/ ← Skill Suite completa
my-suite/ ← Complete Skill Suite
├── .claude-plugin/
│ └── marketplace.json ← Manifest das skills
├── componente-1/ ← Component Skill 1
│ └── marketplace.json ← Skills manifest
├── component-1/ ← Component Skill 1
│ ├── SKILL.md
│ └── scripts/
├── componente-2/ ← Component Skill 2
├── component-2/ ← Component Skill 2
│ ├── SKILL.md
│ └── references/
├── componente-3/ ← Component Skill 3
├── component-3/ ← Component Skill 3
│ ├── SKILL.md
│ └── assets/
└── shared/ ← Recursos compartilhados
└── shared/ ← Shared resources
├── utils/
├── config/
└── templates/
```
**Quando usar:**
- Múltiplos workflows relacionados
- Funcionalidades complexas que precisam ser separadas
- Mais de 2000 linhas de código total
- Vários objetivos interconectados
**When to use:**
- Multiple related workflows
- Complex functionalities that need separation
- More than 2000 lines of total code
- Multiple interconnected objectives
**Exemplos:**
- Suite completa de análise financeira
- Sistema de gestão de projetos
- Plataforma de e-commerce analytics
**Examples:**
- Complete financial analysis suite
- Project management system
- E-commerce analytics platform
### **Arquitetura 3: Hybrid (Simple + Components)**
### **Architecture 3: Hybrid (Simple + Components)**
```
minha-skill-hibrida/ ← Simple skill principal
├── SKILL.md ← Orquestração principal
my-hybrid-skill/ ← Main simple skill
├── SKILL.md ← Main orchestration
├── scripts/
│ ├── main.py ← Lógica principal
│ └── components/ ← Componentes especializados
│ ├── main.py ← Main logic
│ └── components/ ← Specialized components
├── references/
└── assets/
```
**Quando usar:**
- Funcionalidade principal com sub-componentes
- Complexidade moderada
- Orquestração centralizada necessária
**When to use:**
- Main functionality with sub-components
- Moderate complexity
- Centralized orchestration required
## 🔍 **Decidindo Qual Arquitetura Usar**
## 🔍 **Deciding Which Architecture to Use**
### **Use Simple Skill quando:**
- ✅ Um objetivo principal claro
- ✅ Workflow linear e sequencial
- ✅ Menos de 3 subprocessos distintos
- ✅ Código < 1000 linhas
- ✅ Uma pessoa pode manter facilmente
### **Use Simple Skill when:**
- ✅ Clear main objective
- ✅ Linear and sequential workflow
- ✅ Less than 3 distinct subprocesses
- ✅ Code < 1000 lines
- ✅ One person can easily maintain
### **Use Complex Skill Suite quando:**
- ✅ Múltiplos objetivos relacionados
- ✅ Workflows independentes mas conectados
- ✅ Mais de 3 subprocessos distintos
- ✅ Código > 2000 linhas
- ✅ Equipe ou manutenção complexa
### **Use Complex Skill Suite when:**
- ✅ Multiple related objectives
- ✅ Independent but connected workflows
- ✅ More than 3 distinct subprocesses
- ✅ Code > 2000 lines
- ✅ Team or complex maintenance
### **Use Hybrid quando:**
- ✅ Orquestração central é crítica
- ✅ Componentes são opcionais/configuráveis
- ✅ Workflow principal com sub-tarefas especializadas
### **Use Hybrid when:**
- ✅ Central orchestration is critical
- ✅ Components are optional/configurable
- ✅ Main workflow with specialized sub-tasks
## 📋 **Marketplace.json Explicado**
## 📋 **Marketplace.json Explained**
O `marketplace.json` **NÃO É** uma skill. É um **manifest organizacional**:
The `marketplace.json` **IS NOT** a skill. It's an **organizational manifest**:
```json
{
"name": "minha-suite",
"name": "my-suite",
"plugins": [
{
"name": "componente-1",
"source": "./componente-1/",
"skills": ["./SKILL.md"] ← Aponta para a skill real
"name": "component-1",
"source": "./component-1/",
"skills": ["./SKILL.md"] ← Points to the actual skill
},
{
"name": "componente-2",
"source": "./componente-2/",
"skills": ["./SKILL.md"] ← Aponta para outra skill
"name": "component-2",
"source": "./component-2/",
"skills": ["./SKILL.md"] ← Points to another skill
}
]
}
```
**Analogia:** Pense no `marketplace.json` como um **índice de livro** - ele não é o conteúdo, apenas organiza e aponta para os capítulos (skills).
**Analogy:** Think of `marketplace.json` as a **book index** - it's not the content, just organizes and points to the chapters (skills).
## 🚫 **Terminologia a Evitar**
## 🚫 **Terminology to Avoid**
Para evitar confusão:
To avoid confusion:
**"Plugin"** para se referir a skills individuais
**"Component Skill"** ou **"Skill Suite"**
**"Plugin"** to refer to individual skills
**"Component Skill"** or **"Skill Suite"**
**"Multi-plugin architecture"**
**"Multi-skill suite"**
**"Plugin marketplace"**
**"Skill marketplace"** (quando hospeda skills)
**"Skill marketplace"** (when hosting skills)
## ✅ **Termos Corretos**
## ✅ **Correct Terms**
| Situação | Termo Correto | Exemplo (com convenção -cskill) |
| Situation | Correct Term | Example (with -cskill convention) |
|----------|---------------|--------------------------------|
| Arquivo único com habilidade | **Simple Skill** | `gerador-pdf-cskill/SKILL.md` |
| Sub-habilidade especializada | **Component Skill** | `data-extraction-cskill/SKILL.md` |
| Conjunto de habilidades | **Skill Suite** | `financial-analysis-suite-cskill/` |
| Arquivo organizacional | **Marketplace Plugin** | `marketplace.json` |
| Sistema completo | **Skill Ecosystem** | Suite + Marketplace + Recursos |
| Single file with capability | **Simple Skill** | `pdf-generator-cskill/SKILL.md` |
| Specialized sub-capability | **Component Skill** | `data-extraction-cskill/SKILL.md` |
| Set of capabilities | **Skill Suite** | `financial-analysis-suite-cskill/` |
| Organizational file | **Marketplace Plugin** | `marketplace.json` |
| Complete system | **Skill Ecosystem** | Suite + Marketplace + Resources |
## 🏷️ **Convenção de Nomenclatura: Sufixo "-cskill"**
## 🏷️ **Naming Convention: The "-cskill" Suffix**
### **Propósito do Sufixo "-cskill"**
- **Identificação Clara**: Indica imediatamente que é uma Claude Skill
- **Origem Definida**: Criada pelo Agent-Skill-Creator
- **Padrão Consistente**: Convenção profissional em toda documentação
- **Evita Confusão**: Distingue de skills manuais ou outras fontes
- **Organização Facilitada**: Fácil identificação e agrupamento
### **Purpose of the "-cskill" Suffix**
- **Clear Identification**: Immediately indicates it's a Claude Skill
- **Defined Origin**: Created by Agent-Skill-Creator
- **Consistent Standard**: Professional convention across all documentation
- **Avoids Confusion**: Distinguishes from manual skills or other sources
- **Easy Organization**: Simple identification and grouping
### **Regras de Nomenclatura**
### **Naming Rules**
**1. Formato Padrão**
**1. Standard Format**
```
{descrição-descritiva}-cskill/
{descriptive-description}-cskill/
```
**2. Simple Skills**
@ -205,7 +205,7 @@ research-workflow-cskill/
business-intelligence-cskill/
```
**4. Component Skills (dentro de suites)**
**4. Component Skills (within suites)**
```
data-acquisition-cskill/
technical-analysis-cskill/
@ -213,17 +213,17 @@ reporting-generator-cskill/
user-interface-cskill/
```
**5. Formatação**
- ✅ Sempre minúsculas
- ✅ Usar hífens para separar palavras
- ✅ Descritivo e claro
- ✅ Terminar com "-cskill"
- ❌ Sem underscores ou espaços
- ❌ Sem caracteres especiais (exceto hífens)
**5. Formatting**
- ✅ Always lowercase
- ✅ Use hyphens to separate words
- ✅ Descriptive and clear
- ✅ End with "-cskill"
- ❌ No underscores or spaces
- ❌ No special characters (except hyphens)
### **Exemplos de Transformação**
### **Transformation Examples**
| Requisito do Usuário | Nome Gerado |
| User Requirement | Generated Name |
|---------------------|-------------|
| "Extract text from PDF documents" | `pdf-text-extractor-cskill/` |
| "Clean CSV data automatically" | `csv-data-cleaner-cskill/` |
@ -231,42 +231,42 @@ user-interface-cskill/
| "Generate weekly status reports" | `weekly-report-generator-cskill/` |
| "Automate e-commerce workflows" | `e-commerce-automation-cskill/` |
## 🎯 **Regra de Ouro**
## 🎯 **Golden Rule**
**Se tem `SKILL.md` → É uma Skill (simples ou component)
Se tem `marketplace.json` → É um marketplace plugin (organização)**
**If it has `SKILL.md` → It's a Skill (simple or component)
If it has `marketplace.json` → It's a marketplace plugin (organization)**
## 📖 **Exemplos do Mundo Real**
## 📖 **Real-World Examples**
### **Simple Skill: Proposta Comercial**
### **Simple Skill: Business Proposal**
```
proposta-comercial/
├── SKILL.md ← "Criar propostas comerciais"
business-proposal/
├── SKILL.md ← "Create business proposals"
├── references/
│ └── template.md
└── assets/
└── logo.png
```
### **Complex Skill Suite: Análise Financeira**
### **Complex Skill Suite: Financial Analysis**
```
financial-analysis-suite/
├── .claude-plugin/marketplace.json
├── data-acquisition/SKILL.md ← "Baixar dados de mercado"
├── technical-analysis/SKILL.md ← "Analisar indicadores técnicos"
├── portfolio-analysis/SKILL.md ← "Otimizar portfólio"
└── reporting/SKILL.md ← "Gerar relatórios"
├── data-acquisition/SKILL.md ← "Download market data"
├── technical-analysis/SKILL.md ← "Analyze technical indicators"
├── portfolio-analysis/SKILL.md ← "Optimize portfolio"
└── reporting/SKILL.md ← "Generate reports"
```
Ambas são **Skills Claude Code legítimas** - apenas com diferentes níveis de complexidade.
Both are **legitimate Claude Code Skills** - just with different complexity levels.
---
## 🔄 **Como Este Documento Ajuda**
## 🔄 **How This Document Helps**
1. **Terminologia clara** - Todos usam os mesmos termos
2. **Decisões informadas** - Saber quando usar cada arquitetura
3. **Comunicação efetiva** - Sem ambiguidade entre skills e plugins
4. **Documentação consistente** - Padrão em toda documentação do agent-skill-creator
1. **Clear terminology** - Everyone uses the same terms
2. **Informed decisions** - Know when to use each architecture
3. **Effective communication** - No ambiguity between skills and plugins
4. **Consistent documentation** - Standard across all agent-skill-creator documentation
**Resultado:** Menos confusão, mais clareza, melhor desenvolvimento!
**Result:** Less confusion, more clarity, better development!

View file

@ -1,49 +1,49 @@
# Fluxo Interno do Agent-Skill-Creator: O Que Acontece "Por Baixo dos Panos"
# Agent-Skill-Creator Internal Flow: What Happens "Under the Hood"
## 🎯 **Cenário Exemplo**
## 🎯 **Example Scenario**
**Comando do Usuário:**
**User Command:**
```
"gostaria de automatizar o que esta sendo explicado e descrito nesse artigo [conteúdo do artigo sobre análise de dados financeiros]"
"I'd like to automate what is being explained and described in this article [financial data analysis article content]"
```
## 🚀 **Fluxo Completo Detalhado**
## 🚀 **Complete Detailed Flow**
### **FASE 0: Detecção e Ativação Automática**
### **PHASE 0: Detection and Automatic Activation**
#### **0.1 Análise da Intenção do Usuário**
O Claude Code analisa o comando e detecta padrões de ativação:
#### **0.1 User Intent Analysis**
Claude Code analyzes the command and detects activation patterns:
```
PADRÕES DETECTADOS:
✅ "automatizar" → Ativação de workflow automation
✅ "o que esta sendo explicado" → Processamento de conteúdo externo
✅ "nesse artigo" → Transcrito/intent processing
✅ Comando completo → Ativa Agent-Skill-Creator
DETECTED PATTERNS:
✅ "automate" → Workflow automation activation
✅ "what is being explained" → External content processing
✅ "in this article" → Transcribed/intent processing
✅ Complete command → Activates Agent-Skill-Creator
```
#### **0.2 Carregamento da Meta-Skill**
#### **0.2 Meta-Skill Loading**
```python
# Sistema interno Claude Code
# Claude Code internal system
if matches_pattern(user_input, SKILL_ACTIVATION_PATTERNS):
load_skill("agent-creator-en-v2")
activate_5_phase_process(user_input)
```
**O que acontece:**
- O `SKILL.md` do agent-creator é carregado na memória
- O contexto da skill é preparado
- As 5 fases são inicializadas
**What happens:**
- The agent-creator's `SKILL.md` is loaded into memory
- The skill context is prepared
- The 5 phases are initialized
---
### **FASE 1: DISCOVERY - Pesquisa e Análise**
### **PHASE 1: DISCOVERY - Research and Analysis**
#### **1.1 Processamento do Conteúdo do Artigo**
#### **1.1 Article Content Processing**
```python
# Simulação do processamento interno
# Internal processing simulation
def analyze_article_content(article_text):
# Extração de informações estruturadas
# Structured information extraction
workflows = extract_workflows(article_text)
tools_mentioned = identify_tools(article_text)
data_sources = find_data_sources(article_text)
@ -57,56 +57,56 @@ def analyze_article_content(article_text):
}
```
**Exemplo Prático - Artigo sobre Análise Financeira:**
**Practical Example - Financial Analysis Article:**
```
ARTIGO CONTEÚDO ANALISADO:
├─ Workflows Identificados:
│ ├─ "Baixar dados da bolsa"
│ ├─ "Calcular indicadores técnicos"
│ ├─ "Gerar gráficos de análise"
│ └─ "Criar relatório semanal"
├─ Ferramentas Mencionadas:
│ ├─ "Biblioteca pandas"
ANALYZED ARTICLE CONTENT:
├─ Identified Workflows:
│ ├─ "Download stock market data"
│ ├─ "Calculate technical indicators"
│ ├─ "Generate analysis charts"
│ └─ "Create weekly report"
├─ Mentioned Tools:
│ ├─ "pandas library"
│ ├─ "Alpha Vantage API"
│ ├─ "Matplotlib para gráficos"
│ └─ "Excel para relatórios"
└─ Fontes de Dados:
│ ├─ "Matplotlib for charts"
│ └─ "Excel for reports"
└─ Data Sources:
├─ "Yahoo Finance API"
├─ "Arquivos CSV locais"
└─ "Banco de dados SQL"
├─ "Local CSV files"
└─ "SQL database"
```
#### **1.2 Pesquisa de APIs e Ferramentas**
#### **1.2 API and Tools Research**
```bash
# WebSearch automático realizado pelo Claude
# Automatic WebSearch performed by Claude
WebSearch: "Best Python libraries for financial data analysis 2025"
WebSearch: "Alpha Vantage API documentation Python integration"
WebSearch: "Financial reporting automation tools Python"
```
#### **1.3 Complementação com AgentDB (se disponível)**
#### **1.3 AgentDB Enhancement (if available)**
```python
# AgentDB integration transparente
# Transparent AgentDB integration
agentdb_insights = query_agentdb_for_patterns("financial_analysis")
if agentdb_insights.success_rate > 0.8:
apply_learned_patterns(agentdb_insights.patterns)
```
#### **1.4 Decisão de Stack Tecnológico**
#### **1.4 Technology Stack Decision**
```
DECISÃO TÉCNICA:
✅ Python como linguagem principal
✅ pandas para manipulação de dados
✅ Alpha Vantage para dados de mercado
✅ Matplotlib/Seaborn para visualizações
✅ ReportLab para geração de PDFs
TECHNICAL DECISION:
✅ Python as primary language
✅ pandas for data manipulation
✅ Alpha Vantage for market data
✅ Matplotlib/Seaborn for visualizations
✅ ReportLab for PDF generation
```
---
### **FASE 2: DESIGN - Especificação de Funcionalidades**
### **PHASE 2: DESIGN - Functionality Specification**
#### **2.1 Análise de Casos de Uso**
#### **2.1 Use Case Analysis**
```python
def define_use_cases(workflows_identified):
use_cases = []
@ -123,47 +123,47 @@ def define_use_cases(workflows_identified):
return use_cases
```
**Casos de Uso Definidos:**
**Defined Use Cases:**
```
USE CASE 1: Data Acquisition
- Description: Baixar dados históricos de ações
- Input: Lista de tickers, período
- Output: DataFrame com dados OHLCV
- Frequency: Diário
- Description: Download historical stock data
- Input: List of tickers, period
- Output: DataFrame with OHLCV data
- Frequency: Daily
USE CASE 2: Technical Analysis
- Description: Calcular indicadores técnicos
- Input: DataFrame de preços
- Output: DataFrame com indicadores
- Frequency: Sob demanda
- Description: Calculate technical indicators
- Input: Price DataFrame
- Output: DataFrame with indicators
- Frequency: On demand
USE CASE 3: Report Generation
- Description: Criar relatório PDF
- Input: Resultados da análise
- Output: Relatório formatado
- Frequency: Semanal
- Description: Create PDF report
- Input: Analysis results
- Output: Formatted report
- Frequency: Weekly
```
#### **2.2 Definição de Metodologias**
#### **2.2 Methodology Definition**
```python
def specify_methodologies(use_cases):
methodologies = {
'data_validation': 'Validação de qualidade de dados',
'error_handling': 'Tratamento de erros robusto',
'caching_strategy': 'Cache de dados para performance',
'logging': 'Log detalhado para debugging',
'configuration': 'Configuração flexível via JSON'
'data_validation': 'Data quality validation',
'error_handling': 'Robust error handling',
'caching_strategy': 'Data caching for performance',
'logging': 'Detailed logging for debugging',
'configuration': 'Flexible configuration via JSON'
}
return methodologies
```
---
### **FASE 3: ARCHITECTURE - Decisão Estrutural**
### **PHASE 3: ARCHITECTURE - Structural Decision**
#### **3.1 Análise de Complexidade (DECISION_LOGIC.md aplicado)**
#### **3.1 Complexity Analysis (DECISION_LOGIC.md applied)**
```python
# Avaliação automática baseada no conteúdo do artigo
# Automatic evaluation based on article content
complexity_score = calculate_complexity({
'number_of_workflows': 4, # Data + Analysis + Reports + Alerts
'workflow_complexity': 'medium', # API calls + calculations + formatting
@ -172,27 +172,27 @@ complexity_score = calculate_complexity({
'domain_expertise': ['finance', 'data_science', 'reporting']
})
# Decisão de arquitetura
# Architecture decision
if complexity_score > SIMPLE_SKILL_THRESHOLD:
architecture = "complex_skill_suite"
else:
architecture = "simple_skill"
```
**Neste exemplo:**
**In this example:**
```
RESULTADO DA ANÁLISE:
✅ Múltiplos workflows distintos (4)
Complexidade média-alta
✅ Múltiplas fontes de dados
✅ Estimativa > 2000 linhas de código
✅ Múltiplos domínios de expertise
ANALYSIS RESULT:
✅ Multiple distinct workflows (4)
Medium-high complexity
✅ Multiple data sources
✅ Estimate > 2000 lines of code
✅ Multiple domains of expertise
DECISÃO: Complex Skill Suite
NOME GERADO: financial-analysis-suite-cskill
DECISION: Complex Skill Suite
GENERATED NAME: financial-analysis-suite-cskill
```
#### **3.2 Definição da Estrutura de Componentes**
#### **3.2 Component Structure Definition**
```python
def design_component_skills(complexity_analysis):
if complexity_analysis.architecture == "complex_skill_suite":
@ -205,7 +205,7 @@ def design_component_skills(complexity_analysis):
return components
```
#### **3.3 Planejamento de Performance e Cache**
#### **3.3 Performance and Cache Planning**
```python
performance_plan = {
'data_cache': 'Cache market data for 1 day',
@ -217,35 +217,35 @@ performance_plan = {
---
### **FASE 4: DETECTION - Palavras-Chave e Ativação**
### **PHASE 4: DETECTION - Keywords and Activation**
#### **4.1 Análise de Palavras-Chave**
#### **4.1 Keyword Analysis**
```python
def determine_activation_keywords(workflows, tools):
keywords = {
'primary': [
'análise financeira',
'dados de mercado',
'indicadores técnicos',
'relatórios de investimento'
'financial analysis',
'market data',
'technical indicators',
'investment reports'
],
'secondary': [
'automatizar análise',
'gerar gráficos',
'calcular retornos',
'extração de dados'
'automate analysis',
'generate charts',
'calculate returns',
'data extraction'
],
'domains': [
'finanças',
'investimentos',
'análise quantitativa',
'mercado de ações'
'finance',
'investments',
'quantitative analysis',
'stock market'
]
}
return keywords
```
#### **4.2 Criação de Descrições Precisas**
#### **4.2 Precise Description Creation**
```python
def create_skill_descriptions(components):
descriptions = {}
@ -263,11 +263,11 @@ def create_skill_descriptions(components):
---
### **FASE 5: IMPLEMENTATION - Criação do Código**
### **PHASE 5: IMPLEMENTATION - Code Creation**
#### **5.1 Criação da Estrutura de Diretórios**
#### **5.1 Directory Structure Creation**
```bash
# Criado automaticamente pelo sistema
# Automatically created by the system
mkdir -p financial-analysis-suite/.claude-plugin
mkdir -p financial-analysis-suite/data-acquisition/{scripts,references,assets}
mkdir -p financial-analysis-suite/technical-analysis/{scripts,references,assets}
@ -276,7 +276,7 @@ mkdir -p financial-analysis-suite/reporting/{scripts,references,assets}
mkdir -p financial-analysis-suite/shared/{utils,config,templates}
```
#### **5.2 Geração do marketplace.json**
#### **5.2 marketplace.json Generation**
```json
{
"name": "financial-analysis-suite",
@ -295,8 +295,8 @@ mkdir -p financial-analysis-suite/shared/{utils,config,templates}
}
```
#### **5.3 Criação dos SKILL.md Files**
Para cada componente, o sistema gera:
#### **5.3 SKILL.md Files Creation**
For each component, the system generates:
```markdown
---
@ -316,7 +316,7 @@ Use this skill when you need to:
- Store data in standardized format
```
#### **5.4 Geração dos Scripts Python**
#### **5.4 Python Scripts Generation**
```python
# data-acquisition/scripts/fetch_data.py
import pandas as pd
@ -352,7 +352,7 @@ class FinancialDataFetcher:
return validation_results
```
#### **5.5 Criação de Arquivos de Configuração**
#### **5.5 Configuration Files Creation**
```json
// shared/config/data_sources.json
{
@ -379,7 +379,7 @@ class FinancialDataFetcher:
}
```
#### **5.6 Geração de Documentação e Referências**
#### **5.6 Documentation and References Generation**
```markdown
# data-acquisition/references/api_documentation.md
@ -396,7 +396,7 @@ class FinancialDataFetcher:
- **Authentication**: None required
```
#### **5.7 Criação do README Principal**
#### **5.7 Main README Creation**
```markdown
# Financial Analysis Suite
@ -415,7 +415,7 @@ Complete automated financial analysis system that processes market data, perform
- **Reporting**: Professional PDF report generation
```
#### **5.8 Teste de Instalação Automático**
#### **5.8 Automatic Installation Test**
```python
# scripts/test_installation.py
def test_suite_installation():
@ -462,29 +462,29 @@ if __name__ == "__main__":
---
## 🎯 **Resultado Final - O que o Usuário Recebe**
## 🎯 **Final Result - What the User Receives**
Após aproximadamente **45-90 minutos** de processamento autônomo, o usuário terá:
After approximately **45-90 minutes** of autonomous processing, the user will have:
```
financial-analysis-suite-cskill/
├── .claude-plugin/
│ └── marketplace.json ← Manifesto da suite
│ └── marketplace.json ← Suite manifest
├── data-acquisition-cskill/
│ ├── SKILL.md ← Component skill 1
│ ├── scripts/
│ │ ├── fetch_data.py ← Código funcional
│ │ ├── validate_data.py ← Validação
│ │ ├── fetch_data.py ← Functional code
│ │ ├── validate_data.py ← Validation
│ │ └── cache_manager.py ← Cache
│ ├── references/
│ │ └── api_documentation.md ← Documentação
│ │ └── api_documentation.md ← Documentation
│ └── assets/
├── technical-analysis-cskill/
│ ├── SKILL.md ← Component skill 2
│ ├── scripts/
│ │ ├── indicators.py ← Cálculos técnicos
│ │ ├── signals.py ← Geração de sinais
│ │ └── backtester.py ← Testes históricos
│ │ ├── indicators.py ← Technical calculations
│ │ ├── signals.py ← Signal generation
│ │ └── backtester.py ← Historical tests
│ └── references/
├── visualization-cskill/
│ ├── SKILL.md ← Component skill 3
@ -496,23 +496,23 @@ financial-analysis-suite-cskill/
│ ├── utils/
│ ├── config/
│ └── templates/
├── requirements.txt ← Dependências Python
├── README.md ← Guia do usuário
├── DECISIONS.md ← Explicação das decisões
└── test_installation.py ← Teste automático
├── requirements.txt ← Python dependencies
├── README.md ← User guide
├── DECISIONS.md ← Decision explanations
└── test_installation.py ← Automatic test
```
**Nota:** Todos os componentes usam a convenção "-cskill" para identificar que foram criados pelo Agent-Skill-Creator.
**Note:** All components use the "-cskill" convention to identify that they were created by Agent-Skill-Creator.
## 🚀 **Como Usar a Skill Criada**
## 🚀 **How to Use the Created Skill**
**Imediatamente após a criação:**
**Immediately after creation:**
```bash
# Instalar a suite
# Install the suite
cd financial-analysis-suite
/plugin marketplace add ./
# Usar a das componentes
# Use the components
"Analyze technical indicators for AAPL using the data acquisition and technical analysis components"
"Generate a comprehensive financial report for portfolio [MSFT, GOOGL, TSLA]"
@ -522,24 +522,24 @@ cd financial-analysis-suite
---
## 🧠 **Inteligência por Trás do Processo**
## 🧠 **Intelligence Behind the Process**
### **O que Torna Isso Possível:**
### **What Makes This Possible:**
1. **Compreensão Semântica**: O Claude entende o conteúdo do artigo, não apenas palavras-chave
2. **Extração Estruturada**: Identifica workflows, ferramentas, e padrões
3. **Decisão Autônoma**: Escolhe a arquitetura adequada sem intervenção humana
4. **Geração Funcional**: Cria código que realmente funciona, não templates
5. **Aprendizado Contínuo**: Com AgentDB, melhora com cada criação
1. **Semantic Understanding**: Claude understands the article's content, not just keywords
2. **Structured Extraction**: Identifies workflows, tools, and patterns
3. **Autonomous Decision-Making**: Chooses the appropriate architecture without human intervention
4. **Functional Generation**: Creates code that actually works, not templates
5. **Continuous Learning**: With AgentDB, improves with each creation
### **Diferencial em Relação a Abordagens Simples:**
### **Differential Compared to Simple Approaches:**
| Abordagem Simples | Agent-Skill-Creator |
| Simple Approach | Agent-Skill-Creator |
|------------------|---------------------|
| Gera templates | Cria código funcional |
| Requer programação | Totalmente autônomo |
| Sem decisão de arquitetura | Inteligência de arquitetura |
| Documentação básica | Documentação completa |
| Teste manual | Teste automático |
| Generates templates | Creates functional code |
| Requires programming | Fully autonomous |
| No architecture decision | Architecture intelligence |
| Basic documentation | Complete documentation |
| Manual testing | Automatic testing |
**O Agent-Skill-Creator transforma artigos e descrições em skills Claude Code totalmente funcionais e production-ready!** 🎉
**Agent-Skill-Creator transforms articles and descriptions into fully functional, production-ready Claude Code skills!** 🎉

View file

@ -1,119 +1,119 @@
# Convenções de Nomenclatura: Sufixo "-cskill"
# Naming Conventions: The "-cskill" Suffix
## 🎯 **Propósito e Visão Geral**
## 🎯 **Purpose and Overview**
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.
This document establishes the mandatory naming convention for all Claude Skills created by Agent-Skill-Creator, using the "-cskill" suffix to ensure clear identification and professional consistency.
## 🏷️ **O Sufixo "-cskill"**
## 🏷️ **The "-cskill" Suffix**
### **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
### **Meaning**
- **CSKILL** = **C**laude **SKILL**
- Indicates the skill was automatically created by Agent-Skill-Creator
- Differentiates from manually created skills or other tools
### **Benefícios**
### **Benefits**
✅ **Identificação Imediata**
- Qualquer pessoa vê "-cskill" e sabe imediatamente que é uma Claude Skill
- Reconhecimento instantâneo da origem (Agent-Skill-Creator)
✅ **Immediate Identification**
- Anyone sees "-cskill" and immediately knows it's a Claude Skill
- Instant recognition of origin (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
✅ **Easy Organization**
- Easy to filter and find skills created by the creator
- Logical grouping in file systems
- Efficient search with consistent pattern
✅ **Profissionalismo**
- Convenção de nomenclatura profissional e padronizada
- Clareza na comunicação sobre origem e tipo
- Aparência organizada e intencional
✅ **Professionalism**
- Professional and standardized naming convention
- Clarity in communication about origin and type
- Organized and intentional appearance
✅ **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
✅ **Avoids Confusion**
- No ambiguity about what's a skill vs plugin
- Clear distinction between manual vs automated skills
- Prevention of name conflicts
## 📋 **Regras de Nomenclatura**
## 📋 **Naming Rules**
### **1. Formato Obrigatório**
### **1. Mandatory Format**
```
{descrição-descritiva}-cskill/
{descriptive-description}-cskill/
```
### **2. Estrutura do Nome Base**
### **2. Base Name Structure**
#### **Simple Skills (Objetivo Único)**
#### **Simple Skills (Single Objective)**
```
{ação}-{objeto}-csskill/
{action}-{object}-csskill/
```
**Exemplos:**
**Examples:**
- `pdf-text-extractor-cskill/`
- `csv-data-cleaner-cskill/`
- `image-converter-cskill/`
- `email-automation-cskill/`
- `report-generator-cskill/`
#### **Complex Skill Suites (Múltiplos Componentes)**
#### **Complex Skill Suites (Multiple Components)**
```
{domínio}-analysis-suite-cskill/
{domínio}-automation-cskill/
{domínio}-workflow-cskill/
{domain}-analysis-suite-cskill/
{domain}-automation-cskill/
{domain}-workflow-cskill/
```
**Exemplos:**
**Examples:**
- `financial-analysis-suite-cskill/`
- `e-commerce-automation-cskill/`
- `research-workflow-cskill/`
- `business-intelligence-cskill/`
#### **Component Skills (Dentro de Suites)**
#### **Component Skills (Within Suites)**
```
{funcionalidade}-{domínio}-cskill/
{functionality}-{domain}-cskill/
```
**Exemplos:**
**Examples:**
- `data-acquisition-cskill/`
- `technical-analysis-cskill/`
- `reporting-generator-cskill/`
- `user-interface-cskill/`
### **3. Regras de Formatação**
### **3. Formatting Rules**
✅ **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
✅ **REQUIRED:**
- Always lowercase
- Use hyphens (-) to separate words
- End with "-cskill"
- Be descriptive and clear
- Use only alphanumeric characters and hyphens
❌ **PROIBIDO:**
- Letras maiúsculas
❌ **PROHIBITED:**
- Uppercase letters
- Underscores (_)
- Espaços em branco
- Caracteres especiais (!@#$%&*)
- Números no início
- Abreviações não-padrão
- Whitespace
- Special characters (!@#$%&*)
- Numbers at the beginning
- Non-standard abbreviations
### **4. Comprimento Recomendado**
### **4. Recommended Length**
- **Mínimo:** 10 caracteres (ex: `pdf-tool-cskill`)
- **Ideal:** 20-40 caracteres (ex: `financial-analysis-suite-cskill`)
- **Máximo:** 60 caracteres (exceções justificadas)
- **Minimum:** 10 characters (ex: `pdf-tool-cskill`)
- **Ideal:** 20-40 characters (ex: `financial-analysis-suite-cskill`)
- **Maximum:** 60 characters (justified exceptions)
## 🔧 **Processo de Geração de Nomes**
## 🔧 **Name Generation Process**
### **Lógica Automática do Agent-Skill-Creator**
### **Agent-Skill-Creator Automatic Logic**
```python
def generate_skill_name(user_requirements, complexity):
"""
Gera nome da skill seguindo convenção -cskill
Generates skill name following -cskill convention
"""
# 1. Extrair conceitos-chave do input do usuário
# 1. Extract key concepts from user input
concepts = extract_key_concepts(user_requirements)
# 2. Criar nome base baseado na complexidade
# 2. Create base name based on complexity
if complexity == "simple":
base_name = create_simple_name(concepts)
elif complexity == "complex_suite":
@ -121,16 +121,16 @@ def generate_skill_name(user_requirements, complexity):
else: # hybrid
base_name = create_hybrid_name(concepts)
# 3. Sanitizar e formatar
# 3. Sanitize and format
base_name = sanitize_name(base_name)
# 4. Aplicar convenção -cskill
# 4. Apply -cskill convention
skill_name = f"{base_name}-cskill"
return skill_name
def create_simple_name(concepts):
"""Cria nome para skills simples"""
"""Creates name for simple skills"""
if len(concepts) == 1:
return f"{concepts[0]}-tool"
elif len(concepts) == 2:
@ -139,30 +139,30 @@ def create_simple_name(concepts):
return "-".join(concepts[:2])
def create_suite_name(concepts):
"""Cria nome para suites complexas"""
"""Creates name for complex suites"""
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
"""Sanitizes name to valid format"""
# Convert to lowercase
name = name.lower()
# Substituir espaços e underscores por hífens
# Replace spaces and underscores with hyphens
name = re.sub(r'[\s_]+', '-', name)
# Remover caracteres especiais
# Remove special characters
name = re.sub(r'[^a-z0-9-]', '', name)
# Remover hífens múltiplos
# Remove multiple hyphens
name = re.sub(r'-+', '-', name)
# Remover hífens no início/fim
# Remove hyphens at start/end
name = name.strip('-')
return name
```
### **Exemplos de Transformação**
### **Transformation Examples**
| Input do Usuário | Tipo | Conceitos Extraídos | Nome Gerado |
| User Input | Type | Extracted Concepts | Generated Name |
|------------------|------|-------------------|-------------|
| "Extract text from PDF" | Simple | ["extract", "text", "pdf"] | `pdf-text-extractor-cskill/` |
| "Clean CSV data automatically" | Simple | ["clean", "csv", "data"] | `csv-data-cleaner-cskill/` |
@ -170,9 +170,9 @@ def sanitize_name(name):
| "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**
## 📚 **Practical Examples by Domain**
### **Finanças e Investimentos**
### **Finance and Investments**
```
financial-analysis-suite-cskill/
portfolio-optimizer-cskill/
@ -181,7 +181,7 @@ risk-calculator-cskill/
trading-signal-generator-cskill/
```
### **Análise de Dados**
### **Data Analysis**
```
data-visualization-cskill/
statistical-analysis-cskill/
@ -190,7 +190,7 @@ data-cleaner-cskill/
dashboard-generator-cskill/
```
### **Automação de Documentos**
### **Document Automation**
```
pdf-processor-cskill/
word-automation-cskill/
@ -199,7 +199,7 @@ presentation-creator-cskill/
document-converter-cskill/
```
### **E-commerce e Vendas**
### **E-commerce and Sales**
```
inventory-tracker-cskill/
sales-analytics-cskill/
@ -208,7 +208,7 @@ order-automation-cskill/
price-monitor-cskill/
```
### **Pesquisa e Academia**
### **Research and Academia**
```
literature-review-cskill/
citation-manager-cskill/
@ -217,7 +217,7 @@ academic-paper-generator-cskill/
survey-analyzer-cskill/
```
### **Produtividade e Escritório**
### **Productivity and Office**
```
email-automation-cskill/
calendar-manager-cskill/
@ -226,105 +226,105 @@ note-organizer-cskill/
meeting-scheduler-cskill/
```
## 🔍 **Validação e Qualidade**
## 🔍 **Validation and Quality**
### **Verificação Automática**
### **Automatic Verification**
```python
def validate_skill_name(skill_name):
"""
Valida se o nome segue a convenção -cskill
Validates if name follows -cskill convention
"""
# 1. Verificar sufixo -cskill
# 1. Check -cskill suffix
if not skill_name.endswith("-cskill"):
return False, "Missing -cskill suffix"
# 2. Verificar formato minúsculas
# 2. Check lowercase format
if skill_name != skill_name.lower():
return False, "Must be lowercase"
# 3. Verificar caracteres válidos
# 3. Check valid characters
if not re.match(r'^[a-z0-9-]+-cskill$', skill_name):
return False, "Contains invalid characters"
# 4. Verificar comprimento
# 4. Check length
if len(skill_name) < 10 or len(skill_name) > 60:
return False, "Invalid length"
# 5. Verificar hífens consecutivos
# 5. Check consecutive hyphens
if '--' in skill_name:
return False, "Contains consecutive hyphens"
return True, "Valid naming convention"
```
### **Checklist de Qualidade**
### **Quality Checklist**
Para cada nome gerado, verificar:
For each generated name, verify:
- [ ] **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** ✓
- [ ] **Ends with "-cskill"** ✓
- [ ] **Is in lowercase** ✓
- [ ] **Uses only hyphens as separators** ✓
- [ ] **Is descriptive and clear** ✓
- [ ] **Has no special characters** ✓
- [ ] **Appropriate length (10-60 characters)** ✓
- [ ] **Easy to pronounce and remember** ✓
- [ ] **Reflects main functionality** ✓
- [ ] **Is unique in ecosystem** ✓
## 🚀 **Boas Práticas**
## 🚀 **Best Practices**
### **1. Seja Descritivo**
### **1. Be Descriptive**
```
bom: pdf-text-extractor-cskill
ruim: tool-cskill
good: pdf-text-extractor-cskill
bad: tool-cskill
bom: financial-analysis-suite-cskill
ruim: finance-cskill
good: financial-analysis-suite-cskill
bad: finance-cskill
```
### **2. Mantenha Simplicidade**
### **2. Keep It Simple**
```
bom: csv-data-cleaner-cskill
ruim: automated-csv-data-validation-and-cleaning-tool-cskill
good: csv-data-cleaner-cskill
bad: automated-csv-data-validation-and-cleaning-tool-cskill
bom: email-automation-cskill
ruim: professional-email-marketing-automation-workflow-cskill
good: email-automation-cskill
bad: professional-email-marketing-automation-workflow-cskill
```
### **3. Seja Consistente**
### **3. Be Consistent**
```
bom: data-acquisition-cskill, data-processing-cskill, data-visualization-cskill
ruim: get-data-cskill, process-cskill, visualize-cskill
good: data-acquisition-cskill, data-processing-cskill, data-visualization-cskill
bad: get-data-cskill, process-cskill, visualize-cskill
```
### **4. Pense no Usuário**
### **4. Think About the User**
```
bom: weekly-report-generator-cskill (claro o que faz)
ruim: wrk-gen-cskill (abreviado, confuso)
good: weekly-report-generator-cskill (clear what it does)
bad: wrk-gen-cskill (abbreviated, confusing)
```
## 🔄 **Migração e Legado**
## 🔄 **Migration and Legacy**
### **Skills Existentes Sem "-cskill"**
Se você tem skills existentes sem o sufixo:
### **Existing Skills Without "-cskill"**
If you have existing skills without the suffix:
1. **Adicione o sufixo imediatamente**
1. **Add the suffix immediately**
```bash
mv old-skill-name old-skill-name-cskill
```
2. **Atualize referências internas**
- Atualize SKILL.md
- Modifique marketplace.json
- Atualize documentação
2. **Update internal references**
- Update SKILL.md
- Modify marketplace.json
- Update documentation
3. **Teste funcionamento**
- Verifique que a skill ainda funciona
- Confirme instalação correta
3. **Test functionality**
- Verify skill still works
- Confirm correct installation
### **Documentação de Migração**
Para cada skill migrada, documente:
### **Migration Documentation**
For each migrated skill, document:
```markdown
## Migration History
- **Original Name**: `old-name`
@ -334,41 +334,41 @@ Para cada skill migrada, documente:
- **Impact**: None, purely cosmetic change
```
## 📖 **Guia Rápido de Referência**
## 📖 **Quick Reference Guide**
### **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)
### **To Create New Name:**
1. **Identify main objective** (ex: "extract PDF text")
2. **Extract key concepts** (ex: extract, pdf, text)
3. **Build base name** (ex: pdf-text-extractor)
4. **Add suffix** (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**
### **To Validate Existing Name:**
1. **Check "-cskill" suffix**
2. **Confirm lowercase format**
3. **Check valid characters**
4. **Evaluate descriptiveness**
### **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
### **To Troubleshoot:**
- **Name too short**: Add descriptor
- **Name too long**: Remove secondary words
- **Confusing name**: Use clearer synonyms
- **Name conflict**: Add differentiator
## ✅ **Resumo da Convenção**
## ✅ **Convention Summary**
**Fórmula:** `{descrição-descritiva}-cskill/`
**Formula:** `{descriptive-description}-cskill/`
**Regras Essenciais:**
- ✅ Sempre terminar com "-cskill"
- ✅ Sempre minúsculas
- ✅ Usar hífens como separadores
- ✅ Ser descritivo e claro
**Essential Rules:**
- ✅ Always end with "-cskill"
- ✅ Always lowercase
- ✅ Use hyphens as separators
- ✅ Be descriptive and clear
**Resultados:**
- 🎯 Identificação imediata como Claude Skill
- 🏗️ Origem clara (Agent-Skill-Creator)
- 📁 Organização facilitada
- 🔍 Busca eficiente
- 💬 Comunicação clara
**Results:**
- 🎯 Immediate identification as Claude Skill
- 🏗️ Clear origin (Agent-Skill-Creator)
- 📁 Easy organization
- 🔍 Efficient search
- 💬 Clear communication
**Esta convenção garante consistência profissional e elimina qualquer confusão sobre a origem e tipo das skills criadas!**
**This convention ensures professional consistency and eliminates any confusion about the origin and type of created skills!**