specter-skills

Configure um backend de jogo Specter a partir do chat — jogadores, economia, progressão, placares, torneios, passes de batalha e multiplayer em tempo real — através do seu assistente de IA.

Documentação

specter-skills

npm version node license

Crie o backend do seu jogo conversando com o Claude.

specter-skills ensina ao Claude tudo sobre o Specter — a plataforma de backend para jogos — para que você possa adicionar contas de jogadores, uma economia no jogo, missões diárias, leaderboards, torneios, battle passes e multiplayer em tempo real ao seu jogo em inglês simples, e obter código correto e funcional além da capacidade de configurar seu backend sem nunca abrir o dashboard.

Sem SDK para aprender. Sem documentação de API para ler. Instale e pergunte.

You:    "Add Specter to my game — silent login, a coins wallet, and a daily
         quest 'play 3 matches' that rewards 100 coins."
Claude: ...writes the integration code, sets up the quest in your backend, done.

Conteúdo


O que está incluído

Este pacote único entrega duas metades do mesmo produto:

O que éO que faz
🧠 SkillsConhecimento que o Claude lêO Claude escreve código de integração Specter correto — endpoints certos, cabeçalhos, tratamento de respostas e todas as particularidades da plataforma já incorporadas.
🛠️ Servidor MCPUma ferramenta que o Claude pode executarO Claude age sobre o seu backend — inspeciona um projeto, verifica sua configuração e cria moedas, itens, tarefas, leaderboards, battle passes e muito mais, direto do chat.

As skills funcionam no Claude Code, no Claude Desktop, no Claude Agent SDK e em qualquer outro host compatível com skills. O servidor MCP funciona em qualquer host compatível com MCP (Claude Desktop, Claude Code, …).


Início rápido

1. Instale as skills no seu projeto de jogo:

npx specter-skills init

2. Obtenha sua chave de API em console.specterapp.xyz (Projeto → Chaves de API).

3. Peça ao Claude para criar algo:

"Adicione login por e-mail do Specter e uma moeda de gemas ao meu jogo Unity."

A skill certa é ativada automaticamente e o Claude escreve a integração. É isso.

💡 Quer que o Claude também configure o backend para você (crie moedas, missões, leaderboards)? Adicione o servidor MCP e peça "crie uma moeda de gemas e uma missão diária de login no meu projeto Specter."


Instalação

# Interactive — choose skills and where to install them
npx specter-skills init

# Install everything into this project's .claude/skills/
npx specter-skills install

# Install specific skills
npx specter-skills install specter specter-economy

# Install globally (available in all your projects)
npx specter-skills install --global

# Install into a custom directory (Agent SDK / other hosts)
npx specter-skills install --dir ./skills
ComandoO que faz
npx specter-skills initInterativo: escolha skills + destino (projeto ou global)
npx specter-skills install [names…]Instala skills nomeadas (padrão: todas). Flags: --global, --dir <path>
npx specter-skills updateReinstala suas skills na versão mais recente
npx specter-skills listMostra quais skills estão disponíveis e quais você instalou

As skills são copiadas para .claude/skills/ (projeto) ou ~/.claude/skills/ (global). São arquivos simples que você pode versionar no seu repositório.


As skills

SkillO que cobre
specterComece aqui — visão geral da plataforma, modelo de autenticação, URLs base, envelope de resposta e todos os códigos de erro.
specter-playersCadastro e login (e-mail, nome de usuário, ID de dispositivo silencioso, Google, Apple, Steam, Discord, Facebook), tokens, vinculação de contas, perfis de jogadores e dados personalizados, amigos.
specter-economyMoedas e carteiras, itens, bundles, lojas e compras, inventário, gacha / loot boxes com pity e jogos com dinheiro real (depósitos / saques).
specter-progressionTarefas, missões, conquistas, missões diárias e sequências, design de regras de tarefas, eventos personalizados, battle passes, sistemas de XP e níveis.
specter-competitionsLeaderboards, torneios, batalhas instantâneas, distribuição de prêmios e agendamentos.
specter-multiplayerMatchmaking baseado em habilidade, grupos, sessões de partida e o contrato completo de eventos em tempo real do Socket.io.
specter-adminConfigure o jogo via APIs administrativas — projetos, moedas, itens, tarefas, live-ops, membros. Usado pelo servidor MCP para configurar tudo para você.

Cada skill tem um guia conciso além de referências por endpoint (campos de requisição, exemplos de resposta) geradas diretamente da API do Specter, e exemplos prontos para copiar em JavaScript / Unity quando útil — para que o código que o Claude escreve permaneça preciso.


O servidor MCP

O mesmo pacote inclui um servidor MCP, specter-mcp, que permite ao Claude inspecionar e configurar um backend Specter diretamente. As skills ensinam a API ao Claude; o servidor MCP permite que ele use a API.

"Quais moedas meu projeto tem?" · "Minha configuração está funcionando?" · "Crie uma moeda de gemas e uma missão diária que recompense 100 moedas."

Configuração

O jeito fácil — npx specter-skills init oferece configurar isso para você (ele escreve a configuração, sem edição de JSON). Ou execute a qualquer momento:

# Claude Desktop
npx specter-skills mcp

# Claude Code (registers it for all your projects)
npx specter-skills mcp --code

Em seguida, reinicie seu host MCP e as ferramentas specter aparecerão. (Claude Desktop e Claude Code são aplicativos diferentes com configurações separadas — escolha o que você realmente usa.)

Configuração manual (se preferir editar a configuração você mesmo)

Adicione à configuração do seu host MCP (ex.: claude_desktop_config.json do Claude Desktop):

{
  "mcpServers": {
    "specter": {
      "command": "npx",
      "args": ["-y", "-p", "specter-skills", "specter-mcp"],
      "env": {
        "SPECTER_ENV": "staging",
        "SPECTER_ALLOW_MUTATIONS": "true"
      }
    }
  }
}

As ferramentas somente leitura funcionam imediatamente; criar coisas exige um login único — sem chave de API ou ID de projeto para configurar.

Entrando (sem necessidade de senha)

Para criar qualquer coisa, o Claude precisa agir como você — então você o autoriza uma vez pelo navegador. Na primeira vez que for necessário, o Claude executa a ferramenta specter_login (ou execute você mesmo em um terminal):

npx -y -p specter-skills specter-mcp login

O que acontece:

  1. Seu navegador abre o dashboard do Specter.
  2. Você entra da forma que normalmente faz — e-mail/senha, Google ou Apple.
  3. Você aprova uma tela de consentimento ("Permitir que specter-mcp gerencie seus projetos").
  4. Pronto — um token revogável é salvo localmente (~/.specter/credentials.json). Você permanece conectado.

Sua senha e credenciais sociais nunca tocam a ferramenta ou o Claude. Revogue o acesso a qualquer momento pelo dashboard. Gerencie a sessão com specter-mcp whoami e specter-mcp logout.

ℹ️ Execute comandos specter-mcp de qualquer pasta exceto a pasta de origem do specter-skills (o npx fica confuso lá).

Ferramentas

Somente leitura — sempre disponíveis, seguras de executar:

FerramentaFinalidade
specter_verify_setupTeste rápido do projeto: autenticação, moedas, eventos, tarefas
specter_list_currencies · _items · _bundles · _storesInspecionar conteúdo da economia
specter_list_eventsListar eventos personalizados (com seus ids) que acionam tarefas
specter_list_tasks · _leaderboards · _tournaments · _battlepassesInspecionar progressão e competições
specter_list_progression_systems · _markersInspecionar sistemas de níveis e marcadores

As ferramentas de leitura usam seu login no navegador (execute specter_login uma vez) — sem chave de API separada para configurar.

Cliente / runtime — agem como um jogador de teste em sandbox para exercitar a API /v2/client voltada ao jogo e provar que sua configuração funciona:

FerramentaFinalidade
specter_get_player_stateLer as tarefas, a carteira e o inventário do jogador de teste
specter_send_eventDisparar um evento personalizado (a mesma chamada que seu jogo faz) para acionar conquistas
specter_test_achievementPonta a ponta: ler status → disparar o evento → reler → relatar se a tarefa progrediu
specter_get_reward_history · specter_claim_rewardListar recompensas pendentes e resgatar recompensas de tarefas on-claim (grant-reward-by-source)
specter_generate_client_codeGerar código de jogo pronto para colar (JS ou Unity C#) conectado com sua chave de API real + slug do evento

Mutáveis — opcionais (SPECTER_ALLOW_MUTATIONS=true), protegidas pela sua confirmação:

FerramentaCria / faz
specter_create_currency · _item · _bundle · _storeConteúdo da economia
specter_create_currency_conversion · _currency_policyTaxas de câmbio + políticas de saldo/decadência/teto de ganho
specter_create_eventUm evento personalizado que aciona conquistas
specter_create_taskUma conquista de objetivo único
specter_create_mission · _step_series · _time_seriesOs 3 tipos de conquista agrupada (pool / sequencial / sequência)
specter_schedule_achievement · _stop_achievement · _delete_achievementAtivar / pausar / excluir uma conquista (o processo em duas etapas criar→agendar)
specter_create_battlepass · _level_system · _progression_markerConteúdo de progressão
specter_create_matchModelo de partida multiplayer (formato / resultado / jogo)
specter_create_leaderboard · _competitionCompetições
specter_edit_currency · _edit_task · _update_entityEditar entidades existentes (renomear, reajustar, desativar, …)
specter_schedule_liveopsAgendar um leaderboard / competição ao vivo
specter_grant_rewardConceder itens / moedas a um jogador
specter_admin_call · specter_client_callVálvulas de escape — chamar qualquer endpoint admin /v1 ou /v2/client que não tenha uma ferramenta dedicada (configuração de partida, membros, jogos, conjuntos de recompensas, tags, amigos, compras, …), usando as referências de API incluídas para a estrutura
specter_loginLogin no navegador (acima)

As ferramentas de conquista resolvem nomes amigáveis para você — passe event como slug/nome de evento, rewards como [{currency:"gems", quantity:50}] (ou item/bundle/marker), e a ferramenta os resolve para os ids corretos. Criar uma conquista não a torna ativa — chame specter_schedule_achievement para ativá-la.

As ferramentas mutáveis alteram a configuração ao vivo do jogo, então são marcadas como não somente leitura e seu host MCP pede confirmação antes de cada uma. Aponte-as para um projeto de staging primeiro.

Seu projeto é detectado automaticamente a partir do seu login — não há ID de projeto para procurar. (Defina SPECTER_PROJECT_ID apenas se sua organização tiver vários projetos e você quiser fixar um.)

Configuração

Toda a configuração é feita via variáveis de ambiente na configuração do seu host MCP:

VariávelObrigatóriaPadrãoFinalidade
SPECTER_ENV—stagingstaging ou production
SPECTER_ALLOW_MUTATIONS—falsetrue ativa as ferramentas de criar / mutar
SPECTER_API_KEYopcional—Chave de API do cliente. Não é necessária após o login — a chave de desenvolvimento do seu login é reutilizada. Defina apenas se quiser que as ferramentas de leitura funcionem antes de entrar.
SPECTER_PROJECT_IDopcional—Descoberta automaticamente a partir do seu login. Defina apenas se sua organização tiver vários projetos e você quiser fixar um.
SPECTER_ADMIN_TOKENopcional—Para CI / uso não interativo em vez de login no navegador

O que pedir ao Claude

Depois de instalado, basta descrever o que você quer — a skill certa (e a ferramenta MCP) entra em ação automaticamente:

  • "Adicione login por dispositivo silencioso e uma carteira de moedas ao meu jogo."
  • "Configure uma missão diária: jogue 5 partidas → recompensa de 200 moedas. Crie no meu projeto Specter e me dê o código do cliente."
  • "Crie uma moeda premium de gemas e uma loja inicial que venda um item 'Espada' por 100 gemas."
  • "Adicione um leaderboard semanal com distribuição de prêmios para o top 10."
  • "Crie um battle pass com 30 níveis."
  • "Adicione matchmaking baseado em habilidade com grupos — mostre os eventos WebSocket para tratar."
  • "Por que estou recebendo um 429 do Specter?"
  • "Meu projeto Specter está configurado corretamente?"

Verificando a versão e atualizando

# Latest version published on npm
npm view specter-skills version

# Which skills you have installed (and their versions)
npx specter-skills list

# Update your installed skills to the latest
npx specter-skills update

npx armazena pacotes em cache por ~24h. Se update puxar uma versão antiga, force a mais recente com npx specter-skills@latest update. O servidor MCP (npx … specter-mcp) sempre busca a versão publicada mais recente da mesma forma.


Requisitos

  • Node.js 18+
  • Um projeto Specter + chave de API (console.specterapp.xyz)
  • Um host Claude compatível com skills (Claude Code, Claude Desktop ou o Agent SDK) para as skills; um host compatível com MCP para o servidor

Solução de problemas

SintomaCorreção
specter-mcp: command not foundExecute-o a partir de uma pasta diferente da pasta de origem do specter-skills (por exemplo, cd ~ primeiro).
No api-key availableDefina SPECTER_API_KEY, ou execute specter-mcp login (sua chave de desenvolvimento é então reutilizada).
Multiple projects em uma ferramenta de criaçãoDiga ao Claude qual projeto (é detectado automaticamente quando você tem um).
Ferramentas de criação não aparecemDefina SPECTER_ALLOW_MUTATIONS=true e reinicie seu host MCP.
Login no navegador expiraExecute novamente specter-mcp login; se o navegador não abriu, use a URL impressa.
Habilidades não ativamConfirme que estão instaladas (npx specter-skills list) e que seu host carrega .claude/skills/.
401 / 402 / 429 da APIConsulte a referência de erros da habilidade specter (auth, cobrança, limites de taxa).

Links


Manutenção (equipe Specter)
  • Referências de endpoint são geradas. npm run generate regenera skills/*/references/endpoints{,/-index}.md a partir de gamestarz_dashboard_backend/docs/api/ (substitua o diretório de origem com SPECTER_DOCS_DIR). Documentos de endpoint não mapeados falham no build, então as habilidades não podem divergir silenciosamente da API.
  • Linter de segredos. npm run lint:secrets (também executa em prepublishOnly) bloqueia segredos e hostnames internos de serem publicados.
  • Conteúdo escrito manualmente vive no SKILL.md de cada habilidade e no references/*.md não gerado. O servidor MCP vive em mcp/src/.

Lançamento

npm version patch        # or minor / major
npm run generate         # refresh references
npm publish --access public

A allowlist files envia bin/, skills/, mcp/src/*.mjs e README.md. Habilidades e o servidor MCP publicam juntos como o pacote único specter-skills.