Skills Installer CLI
CLI para instalar e gerenciar skills nas IDEs (Cursor, Claude Code, Antigravity) com autenticação Google OAuth.
Como Funciona
- Usuário executa:
liveseo-skills(global) ounpx @agencialiveseo/skill-cli - Autenticação: Abre navegador automaticamente para login com Google
- Validação: Apenas emails
@liveseo.com.brsão aceitos - Ação: Escolha entre Instalar, Atualizar, Desinstalar skills ou instalar o earth-cli
- Sessão: Login válido por 7 dias (não precisa autenticar toda vez)
Uso (Para Usuários Finais)
Instalação Global (recomendado)
Instale uma vez e use o comando liveseo-skills de qualquer lugar:
npm install -g @agencialiveseo/skill-cli
Depois é só executar:
# Abrir o menu principal (instalar, atualizar ou desinstalar):
liveseo-skills
# Exibir tela de boas-vindas:
liveseo-skills --demo
# Fazer logout:
liveseo-skills logout
# Desinstalar skills diretamente:
liveseo-skills uninstall
# Instalar ou atualizar earth-cli diretamente:
liveseo-skills earth-cli
Instalar earth-cli
O time interno pode instalar o earth-cli (CLI da Earth-api) pelo mesmo fluxo OAuth — sem clonar o repositório nem expor openapi.json.
Pré-requisitos na máquina:
- Python 3.10+
- Node.js 14+ (já exigido pelo skill-cli)
- Email
@liveseo.com.br
liveseo-skills
# → "Instalar / Atualizar earth-cli"
Ou via atalho:
liveseo-skills earth-cli
Pós-instalação (manual):
earth auth login # PAT ls_pat_* em https://app.liveseo.com.br/app/keys
earth skill install # skill do agente (Claude Code)
earth doctor
Para testar o instalador sem publicar nova versão do npm:
# Windows (requer GTHB_TOKEN no .env)
.\scripts\install-earth-cli.ps1
Guia completo de distribuição: earth-cli/docs/DISTRIBUTION.md.
Sem instalação (via npx)
npx @agencialiveseo/skill-cli
Requisitos:
- Email corporativo
@liveseo.com.br - Navegador web
- Node.js 14+
Fluxo de Uso
Ao executar liveseo-skills, o menu principal oferece estas opções:
| Ação | Descrição |
|---|---|
| Instalar nova skill | Navega por categorias e instala skills no(s) IDE(s) selecionado(s) |
| Atualizar skills instaladas | Detecta skills com versão desatualizada e reinstala |
| Instalar / Atualizar earth-cli | Baixa wheel da GitHub Release e instala via pipx |
| Desinstalar skill | Remove skills instaladas de um IDE específico |
Após cada operação, o CLI pergunta se deseja continuar ou sair — sem precisar redigitar o comando.
Segurança
Sem tokens para usuários - Credenciais ficam protegidas via GitHub Secrets
Controle de acesso - Só emails @liveseo.com.br podem usar
Read-only - Token GitHub tem permissão apenas de leitura
Sessão local - Armazenada com segurança em ~/.skills-session
Expiração - Sessão expira após 7 dias
Setup (Para Desenvolvedores)
Configuração Completa
Para configurar Google OAuth e publicar a CLI, siga o guia detalhado:
GOOGLE_OAUTH_SETUP.md - Guia completo passo a passo
Resumo rápido:
- Criar projeto no Google Cloud Console
- Configurar OAuth Consent Screen (Internal para Workspace)
- Criar OAuth Client ID com redirect para
http://localhost:3000/callback - Configurar credenciais — local:
.env| CI: GitHub Secrets (ver abaixo) - Criar token GitHub (read-only) e configurar em
lib/installer-core.js - Publicar no npm
1. Criar Repositório de Skills
Crie um repositório no GitHub chamado liveseo-skills com esta estrutura:
liveseo-skills/
├── tecnico/
│ ├── nome-da-skill/
│ │ ├── SKILL.md
│ │ └── skill.json
│ └── ...
├── conteudo/
├── qualidade/
└── outros/
Exemplo de skill.json:
{
"name": "Nome da Skill",
"version": "1.0.0",
"description": "Descrição da skill",
"category": "tecnico",
"author": "Agência LiveSEO",
"tags": ["seo", "tecnico"]
}
O campo
categoryé utilizado pelo fluxo de atualização para localizar a skill remotamente.
2. Configurar package.json
{
"name": "@agencialiveseo/skill-cli",
"repository": {
"type": "git",
"url": "git+https://github.com/agencialiveseo/skill-cli-oauth.git"
}
}
No arquivo lib/installer-core.js, confirme as constantes:
const GITHUB_ORG = 'agencialiveseo';
const GITHUB_REPO = 'liveseo-skills';
3. Configurar GitHub Secrets
Acesse: Repositório → Settings → Secrets and variables → Actions
| Secret | Descrição |
|---|---|
GOOGLE_CLIENT_ID |
OAuth Client ID do Google Cloud Console |
GOOGLE_CLIENT_SECRET |
OAuth Client Secret |
SKILLS_JWT_SECRET |
String aleatória para assinar sessões locais |
GTHB_TOKEN |
Token GitHub read-only para acessar liveseo-skills e earth-cli |
NPM_TOKEN |
Token de publicação do npmjs.com |
4. Publicar no npm
Opção A: Manual
npm install
npm publish --access public
Opção B: Automático (via GitHub Actions)
Basta criar uma tag:
npm version patch
git push origin --tags
O GitHub Actions injeta as credenciais e publica automaticamente.
Skills Disponíveis
Gerenciadas no repositório agencialiveseo/liveseo-skills.
Desenvolvimento Local
# Instalar dependências
npm install
# Copiar e preencher variáveis de ambiente
cp .env.example .env
# Edite .env com GTHB_TOKEN e as credenciais OAuth
# Testar diretamente
node cli.js
# Testar instalador earth-cli (requer GTHB_TOKEN no .env)
node scripts/run-earth-cli-install.js
# Ou testar como instalação global
npm link
liveseo-skills
npm unlink -g @agencialiveseo/skill-cli # para desfazer
Contribuindo
- Fork o projeto
- Crie uma branch (
git checkout -b feature/nova-funcionalidade) - Commit suas mudanças (
git commit -am 'Add nova funcionalidade') - Push para a branch (
git push origin feature/nova-funcionalidade) - Abra um Pull Request
Licença
MIT