Compartilhando Bots
Um dos recursos definidores do AISCouncil são URLs de bots compartilháveis. A URL é o bot -- toda a configuração do bot é codificada diretamente no fragmento da URL. Nenhum servidor está envolvido, nenhuma conta é necessária para abrir um bot compartilhado, e nenhum dado é armazenado em nenhum lugar exceto na URL em si e no navegador do destinatário.
Como Funciona o Compartilhamento via URL
Configurações de bots são comprimidas e codificadas no fragmento da URL (a parte após #). Como fragmentos de URL nunca são enviados ao servidor, a configuração do bot viaja inteiramente do lado do cliente.
O processo:
- Objeto de configuração do bot é serializado para JSON mínimo
- O JSON é comprimido usando Deflate
- Os bytes comprimidos são codificados em Base80 (usando o alfabeto URL-safe FRAG80)
- Um prefixo de versão VLQ é prefixado
O resultado é uma URL autocontida como:
https://aiscouncil.net/#B3kF9xR2mN7pQ...
Uma URL de bot típica tem 100-300 caracteres, dependendo principalmente do comprimento do prompt do sistema.
Como Compartilhar um Bot
- Abra o bot que deseja compartilhar (clique na barra lateral)
- Clique no botão Compartilhar no cabeçalho
- A URL é gerada e copiada para sua área de transferência
- Envie a URL através de qualquer canal -- email, chat, mídia social, código QR, etc.
Você também pode clicar com botão direito na barra de endereços e copiar a URL diretamente após o botão compartilhar ter sido clicado, já que a URL na barra de endereços atualiza para incluir a configuração do bot codificada.
O Que É Compartilhado
A URL compartilhada contém tudo necessário para recriar o bot:
- Nome do bot
- Seleção de provedor e modelo
- Prompt do sistema (texto completo)
- Temperatura, máx. tokens e todos os parâmetros de geração
- Configurações avançadas (top P, penalidade de frequência/presença, esforço de raciocínio, etc.)
- Configurações de persona (ícone, descrição, cor)
- Configuração de conselho (membros, estilo, presidente, modo de votação) se aplicável
O Que NÃO É Compartilhado
Os seguintes nunca são incluídos em URLs compartilhados:
| Dados | Razão |
|---|---|
| Chaves de API | Segurança -- chaves são sempre locais |
| Histórico de chat | Privacidade -- conversas ficam no seu dispositivo |
| Substituições de chave de API por bot | Segurança -- tratadas igual às chaves globais |
| Configurações locais | Tema, tamanho da fonte e outras preferências de UI são por dispositivo |
| Dados de uso | Contagens de tokens e custos são por dispositivo |
Chaves de API nunca são codificadas em URLs sob nenhuma circunstância. O esquema de configuração do bot exclui explicitamente campos de chave durante codificação de URL. Esta é uma garantia de segurança central da plataforma.
Recebendo um Bot Compartilhado
Quando alguém envia uma URL de bot compartilhado:
- Abra a URL no seu navegador
- Entre se você ainda não estiver logado (ou o bot pode carregar diretamente se
auth: 1estiver definido) - A configuração do bot é decodificada do fragmento da URL e carregada
- Insira sua chave de API para o provedor do bot se você ainda não tiver uma salva
- Comece a conversar -- o bot aparece na sua barra lateral com todas as configurações do remetente
O destinatário obtém uma cópia exata da configuração do bot, mas com suas próprias:
- Chave de API (pré-salva ou inserida novamente)
- Histórico de chat vazio (conversas nunca são compartilhadas)
- Configurações locais (tema, preferências)
Formato da URL
https://aiscouncil.net/#B{payload_base80}
| Componente | Descrição |
|---|---|
https://aiscouncil.net/ | O domínio do aplicativo |
# | Identificador de fragmento (não enviado a nenhum servidor) |
B | Prefixo de versão VLQ -- B indica versão 1 (esquema Config V2) |
{payload_base80} | Config de bot comprimida codificada em Base80 |
O alfabeto FRAG80 Base80 usa caracteres URL-safe para maximizar densidade de informação em fragmentos de URL sem requerir codificação por cento.
Como a configuração do bot vive inteiramente no fragmento da URL (#...), ela nunca é enviada a nenhum servidor. Fragmentos de URL são processados apenas do lado do cliente -- isso é imposto pela especificação HTTP (RFC 3986). Quando você compartilha uma URL, o fragmento viaja através de qualquer canal que você usa para enviá-la (email, chat, etc.), mas servidores do AISCouncil nunca a veem.
O Campo Auth
Configurações de bot incluem um campo opcional auth que controla se o destinatário precisa estar logado:
| Valor | Comportamento |
|---|---|
auth: 1 | Público -- qualquer um pode abrir o bot sem logar |
auth: 0 ou ausente | Protegido -- destinatário deve entrar antes do bot carregar |
Por padrão, bots compartilhados requerem login. Defina auth: 1 na configuração se quiser que o bot seja acessível a qualquer um sem uma conta.
Detalhes de Comprimento de URL
Típicos comprimentos de URL:
| Tipo de Bot | Prompt do Sistema | Comprimento Aproximado da URL |
|---|---|---|
| Bot simples, sem prompt | Nenhum | ~80 caracteres |
| Bot padrão | 100 caracteres | ~150 caracteres |
| Bot detalhado | 500 caracteres | ~300 caracteres |
| Conselho (3 modelos) | 200 caracteres | ~350 caracteres |
Compartilhando Conselhos
Conselhos (multi-modelo) podem ser compartilhados da mesma forma que bots individuais. A URL compartilhada inclui:
- Todas as configurações de modelos membros (provedor + modelo para cada)
- Estilo de conselho (conselho, comparar, arena, moa, roteador, debate, consenso)
- Índice do presidente, modo de votação, rodadas de deliberação
- Prompt do sistema compartilhado
O destinatário precisa de chaves de API para todos os provedores usados pelos membros do conselho. Se um conselho usa três provedores diferentes, o destinatário precisa de chaves para todos os três.
Dicas para Compartilhamento
- Teste sua URL compartilhada abrindo em uma janela anônima para ver o que destinatários experimentam
- Mantenha prompts do sistema concisos se quiser URLs mais curtas
- Use o campo auth (
auth: 1) se está compartilhando publicamente e não quer que destinatários precisem de uma conta - URLs compartilhadas são autocontidas -- funcionam mesmo se o remetente excluir seu bot, porque a configuração está na URL, não em um servidor