ReferênciaHabilidadesAutenticação do Skill

Skill

Autenticação do Skill

Mantenha as credenciais do Skill em XMEMO_KEY ou no fluxo compatível de login por dispositivo, nunca na saída pública.

Precedência de resolução de credenciais

O runtime do Skill independente resolve credenciais usando uma precedência estrita de três níveis. Segredos externos gerenciados sempre têm prioridade sobre arquivos locais, garantindo que os tokens nunca sejam duplicados no disco quando um segredo de ambiente for fornecido.

  • 1. XMEMO_KEY: Variável de ambiente ou repositório de segredos gerenciado (Doppler, 1Password, Vault). Preferencial; nunca copiado para arquivos de credenciais locais.
  • 2. Meta Muse Secure Vault: Resolução de cofre substituto em ambientes Meta Muse compatíveis.
  • 3. Arquivo de credenciais local: ~/.xmemo/skill-credentials.json (ou $XMEMO_CREDENTIALS_PATH), lido apenas como fallback quando as credenciais de ambiente não estiverem definidas.
  • Requisito de saída do OpenClaw: A saída do OpenClaw é um requisito de transporte tratado dentro da ramificação XMEMO_KEY (auth-state.mjs). Se uma sentinela do OpenClaw for detectada, a acessibilidade do proxy de saída será aplicada; trata-se de verificação de transporte dentro de XMEMO_KEY, não de uma fonte de credencial separada.
  • Exposição zero de tokens: Comandos e diagnósticos do doctor nunca exibem tokens ativos ou prefixos de segredos.
# Preferred: provide credential via environment or secret store
export XMEMO_KEY='<your-xmemo-token>'

# Inspect active credential source and scopes without printing secrets:
node scripts/xmemo-skill.mjs auth status --verify

Login por dispositivo e escolha informada de texto claro

Quando não houver chave de ambiente gerenciada, a configuração interativa usará a autorização de dispositivo baseada em navegador. O usuário aprova o acesso no navegador, e o navegador nunca exibe o valor do token de portador.

  • Consentimento explícito de texto claro: O comando login requer --allow-plaintext para confirmar o consentimento informado de salvar o token sem criptografia na máquina local.
  • Permissões de arquivo restritas: ~/.xmemo/skill-credentials.json é criado com permissões POSIX 0600 (leitura e gravação somente pelo proprietário).
  • Importação segura via stdin: Importe um token existente pela entrada padrão usando auth add --from-stdin --allow-plaintext, evitando argumentos de linha de comando e registro no histórico do shell.
  • Endpoints de autorização de dispositivo: POST /v1/auth/device/start (iniciar fluxo), POST /v1/auth/device/token (consultar e trocar), POST /v1/auth/token/validate (verificar), POST /v1/auth/token/revoke-self (revogar).
# Start interactive device login (requires explicit plaintext flag):
node scripts/xmemo-skill.mjs login --allow-plaintext

# Or pipe an existing token securely from standard input:
printf '%s' "$XMEMO_KEY" | node scripts/xmemo-skill.mjs auth add --from-stdin --allow-plaintext

# Verify active session status:
node scripts/xmemo-skill.mjs auth status --verify

Limites do registro temporário

Para ambientes autônomos ou quando um operador humano recusar o login formal, o Skill pode registrar um sandbox de memória temporária. A memória temporária é estritamente limitada e destinada apenas à continuidade operacional de curta duração.

  • Apenas autônomo ou recusado: node scripts/xmemo-skill.mjs register --reason <unattended|declined> --allow-plaintext.
  • Teto de capacidade: Limitado a no máximo 100 itens.
  • TTL de retenção: TTL de inatividade de 14 dias e vida útil máxima absoluta de 30 dias.
  • Transferência de reivindicação em duas fases: Emite uma URL de vinculação (bind_url) que permite a um operador humano reivindicar a conta temporária e vinculá-la a credenciais formais.
  • Comandos de gerenciamento de reivindicações: auth claim-status inspeciona reivindicações pendentes, auth claim-confirm aceita a transferência formal do token e auth claim-deny recusa a vinculação.
  • Restrições do sandbox: Contas temporárias não podem capturar snapshots de reinício (restart-snapshot) nem acessar bases de Knowledge (recall-context --include_knowledge true).
# Register temporary sandbox:
node scripts/xmemo-skill.mjs register --reason unattended --allow-plaintext

# Inspect and manage claim binding:
node scripts/xmemo-skill.mjs auth claim-status --allow-plaintext
node scripts/xmemo-skill.mjs auth claim-confirm --allow-plaintext
node scripts/xmemo-skill.mjs auth claim-deny --allow-plaintext

Logout e revogação apropriada ao provedor

Fazer logout desvincula o arquivo de credenciais local e autorrevoga o token de sessão ativo no servidor. Provedores de segredos externos devem ser gerenciados em seus próprios ambientes.

  • Logout de sessão local: node scripts/xmemo-skill.mjs logout remove ~/.xmemo/skill-credentials.json e chama /v1/auth/token/revoke-self.
  • Token de ambiente externo: Quando XMEMO_KEY fornecer a credencial ativa, o logout deixará esse token intacto, a menos que --revoke-environment-token seja passado explicitamente.
  • Remoção local não é revogação global: Remover o diretório local do skill ou fazer logout localmente NÃO revoga tokens armazenados em cofres de segredos na nuvem, executores de CI/CD ou outras máquinas.
  • Limpeza externa: Desative XMEMO_KEY no shell ou exclua o segredo do seu gerenciador de segredos para desautorizar permanentemente o acesso.
# Log out and revoke local credential file:
node scripts/xmemo-skill.mjs logout

# Log out and revoke external environment token remotely:
node scripts/xmemo-skill.mjs logout --revoke-environment-token

Autenticação do Skill

As Skills são o canal de instruções e comandos para agentes que não montam diretamente um servidor MCP hospedado.

Abrir XMemo Skills

Origem: XMemo Skills