Pi Agent: Skills System

Última atualização: 2026-08-31

--- title: "Sistema de Skills" description: "Aprofunde-se no sistema de skills do Pi Agent, entenda composicao, criacao, gerenciamento e composicao de skills, e construa unidades de capacidade de Agent reutilizaveis." order: 11 lang: pt-br

Skills são os "certificados profissionais" do Agent — carregue revisão de código, é um revisor; carregue tradução, é um tradutor.


1. O que são Skills

Uma Skill é um pacote combinado de ferramentas, templates de prompt e configuração que define a capacidade completa de um Agent em um domínio:

TEXT 📖 Somente leitura
Skill = Prompt Template + Tool List + Config Parameters + Examples

Example:
code_review skill =
  Prompt ("You are a code review expert...") +
  Tools (file_reader, search) +
  Config (temperature=0.3, max_tokens=2048)

2. Skills Integradas

Skill Descrição Ferramentas
code_review Revisão de código file_reader
bug_fix Correção de bugs file_reader, search
test_gen Geração de testes file_reader, shell
doc_gen Geração de documentação file_reader
translate Tradução multilíngue
summarize Resumo de conteúdo file_reader
search_assistant Assistente de busca search
data_analyst Análise de dados file_reader, calculator

(1) Usando Skills Integradas

PYTHON
from pi_agent import Agent

agent = Agent(name="reviewer")
result = agent.run(skill="code_review", code="def add(a,b): return a+b")

(2) Uso de Skill via CLI

BASH
pi-agent chat --skill code_review "Review main.py"
pi-agent run --skill translate --lang ja "Translate this text"

3. Skills Personalizadas

(1) Definição YAML

Crie ~/.pi-agent/skills/api_designer.yaml:

YAML
name: api_designer
description: "REST API design expert"
version: "1.0"

system_prompt: |
  You are a REST API design expert.
  Follow these principles:
  1. Use plural nouns for resource paths
  2. Express operations with HTTP methods
  3. Return appropriate HTTP status codes
  4. Design consistent error response formats

tools:
  - file_reader
  - search

parameters:
  temperature: 0.3
  max_tokens: 4096

(2) Definição Python

PYTHON
from pi_agent import Agent, Skill

api_skill = Skill(
    name="api_designer",
    description="REST API design expert",
    system_prompt="You are a REST API design expert following best practices",
    tools=["file_reader", "search"],
    parameters={"temperature": 0.3, "max_tokens": 4096}
)

agent = Agent(name="api_guy", skills=[api_skill])
result = agent.run(skill="api_designer", prompt="Design a blog system API")

4. Composição de Skills

Múltiplas skills podem ser usadas juntas:

Exemplo 1: Pacote de Skill Full-Stack Dev (Dificuldade: ⭐⭐)

PYTHON
from pi_agent import Agent, Skill

review_skill = Skill(name="code_review", tools=["file_reader"])
fix_skill = Skill(name="bug_fix", tools=["file_reader", "shell"])
test_skill = Skill(name="test_gen", tools=["file_reader", "shell"])

agent = Agent(
    name="full_stack",
    skills=[review_skill, fix_skill, test_skill]
)

review = agent.run(skill="code_review", code=source_code)
fix = agent.run(skill="bug_fix", code=source_code, issues=review)
tests = agent.run(skill="test_gen", code=fix)

5. Parâmetros de Skill

Skills podem definir parâmetros personalizados:

YAML
name: translator
parameters:
  temperature: 0.5
  max_tokens: 4096
custom_params:
  source_lang:
    type: string
    default: "en"
  target_lang:
    type: string
    required: true
  style:
    type: string
    default: "formal"
    enum: ["formal", "casual", "technical"]
PYTHON
result = agent.run(
    skill="translator",
    text="Hello World",
    target_lang="ja",
    style="technical"
)

6. Gerenciamento de Skills

BASH
pi-agent skills list
pi-agent skills show code_review
pi-agent skills install community/web-scraper
pi-agent skills create my_skill --tools file_reader,shell

❓ Perguntas Frequentes

P: Diferença entre skills e ferramentas? R: Uma ferramenta é uma capacidade única (ex.: "ler arquivo"), enquanto uma skill é uma combinação de ferramenta + prompt + config (ex.: "revisão de código" = ferramenta file_reader + prompt de revisão + temperatura baixa). P: Skills podem ser trocadas dinamicamente? R: Sim. Use /skill no modo interativo, ou agent.run(skill=...) para especificar skills diferentes por chamada. P: Existe um marketplace de skills? R: Pi Agent tem um repositório de skills da comunidade. Use pi-agent skills search <keyword> para encontrá-las. Veja a Lição 17 sobre pacotes.


❓ Resumo


📝 Exercícios

  1. Básico (Dificuldade: ⭐): Use a skill integrada code_review para revisar algum código.
  2. Intermediário (Dificuldade: ⭐⭐): Crie uma skill personalizada de "Consultor de Otimização SQL" com prompts e ferramentas apropriados.
  3. Avançado (Dificuldade: ⭐⭐⭐): Design um "Pacote de Engenheiro DevOps" com sub-skills de análise de logs, verificação de deploy e configuração de monitoramento.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%