Iara — chat PWA local-first para falar com o seu assistente de IA (ZeroClaw e compativeis). Configure URL + key e converse.
Find a file
Francisco Solla 73d550c164
All checks were successful
Agent PR Ready + auto-merge / ready-automerge (pull_request) Has been skipped
Main merge flips claimed issues to done + in-prod / issue-done (pull_request) Successful in 6s
CI / deploy (push) Successful in 10s
CI / checks (pull_request) Successful in 34s
Promote plan-issue Related on main merge / plan-issue-ready (pull_request) Successful in 10s
CI / deploy (pull_request) Has been skipped
CI / checks (push) Successful in 19s
plano: mover CI/PR do Forgejo Actions para o GitHub Actions — tracker permanece no Forgejo (Related #17)
2026-08-19 20:48:36 -03:00
.agents/skills simplify: skills-map/AGENTS.md pós I2 — vocab do plan-issue sem herança teqo, update não-interativo (Related #4) 2026-08-18 11:26:11 -03:00
.forgejo test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
.opencode/commands fluxo de agente tipo teqo: scripts worktree/issue/agent, skills, CI com e2e só no CI, labels e branch protection 2026-08-17 21:16:12 -03:00
docs/plans plano: mover CI/PR do Forgejo Actions para o GitHub Actions — tracker permanece no Forgejo (Related #17) 2026-08-19 20:48:36 -03:00
public Iara v0.1 — chat PWA local-first para assistentes de IA (protocolo zeroclaw.v1): config URL+key, streaming, aprovacoes embutidas, voz STT/TTS opcional, PWA instalavel (AGPL-3.0) 2026-08-15 08:58:18 -03:00
scripts chore: remove import homedir não usado em scripts/worktree.mjs (I8) 2026-08-18 11:57:22 -03:00
src fix: renderiza markdown nas respostas do assistente (MarkdownTextPrimitive + remark-gfm) 2026-08-17 17:00:37 -03:00
tests test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
.gitignore fluxo de agente tipo teqo: scripts worktree/issue/agent, skills, CI com e2e só no CI, labels e branch protection 2026-08-17 21:16:12 -03:00
.oxlintrc.json Iara v0.1 — chat PWA local-first para assistentes de IA (protocolo zeroclaw.v1): config URL+key, streaming, aprovacoes embutidas, voz STT/TTS opcional, PWA instalavel (AGPL-3.0) 2026-08-15 08:58:18 -03:00
AGENTS.md feat(agentes): contrato MCP do repo — opencode.jsonc desligando postgres/stalwart dos globais + seção Harness no AGENTS.md (I3) 2026-08-18 11:38:56 -03:00
bun.lock test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
index.html Fix: base /_app/ para servir pelo gateway do ZeroClaw (web_dist_dir) — assets estaticos so sao servidos em /_app/*; navegacao fallback e favicon ajustados 2026-08-15 09:10:26 -03:00
LICENSE Iara v0.1 — chat PWA local-first para assistentes de IA (protocolo zeroclaw.v1): config URL+key, streaming, aprovacoes embutidas, voz STT/TTS opcional, PWA instalavel (AGPL-3.0) 2026-08-15 08:58:18 -03:00
opencode.jsonc feat(agentes): contrato MCP do repo — opencode.jsonc desligando postgres/stalwart dos globais + seção Harness no AGENTS.md (I3) 2026-08-18 11:38:56 -03:00
package.json test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
playwright.config.ts fluxo de agente tipo teqo: scripts worktree/issue/agent, skills, CI com e2e só no CI, labels e branch protection 2026-08-17 21:16:12 -03:00
README.md docs: historico v0.1.1 (deploy automatico) 2026-08-15 11:53:55 -03:00
skills-lock.json feat(agentes): pack de skills de engenharia — addyosmani 23 + wondelai 16, skills-lock.json, skills-map no plan-issue (I2) 2026-08-18 11:20:07 -03:00
tsconfig.app.json Iara v0.1 — chat PWA local-first para assistentes de IA (protocolo zeroclaw.v1): config URL+key, streaming, aprovacoes embutidas, voz STT/TTS opcional, PWA instalavel (AGPL-3.0) 2026-08-15 08:58:18 -03:00
tsconfig.json test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
tsconfig.node.json chore: typecheck do playwright.config.ts no projeto node (I7) 2026-08-18 11:45:33 -03:00
tsconfig.test.json test: unit tests do WsClient (zeroclaw.v1) — backoff, parse de frames, envio (I1) 2026-08-18 08:22:41 -03:00
vite.config.ts Fix: base /_app/ para servir pelo gateway do ZeroClaw (web_dist_dir) — assets estaticos so sao servidos em /_app/*; navegacao fallback e favicon ajustados 2026-08-15 09:10:26 -03:00

Iara

Chat PWA local-first para falar com o seu assistente de IA.

A Iara é um cliente de chat web progressivo (PWA) que conecta qualquer pessoa ao seu assistente de IA (gateways compatíveis com o protocolo ZeroClaw) — basta configurar a URL do gateway e a chave de acesso. Seus dados ficam no seu dispositivo e na sua infraestrutura; nada passa por servidores de terceiros.

Recursos

  • Local-first: configuração, sessões e histórico guardados apenas no dispositivo (localStorage).
  • Chat em tempo real: streaming de respostas via WebSocket (protocolo zeroclaw.v1).
  • Aprovações embutidas: quando o assistente pede confirmação para uma ação (enviar e-mail, apagar, etc.), o card de aprovação aparece direto na conversa.
  • Voz (opcional): botão de microfone (STT) e leitura de respostas em voz alta (TTS), com endpoints configuráveis.
  • PWA instalável: adicione à tela inicial no celular/desktop (manifest + service worker).
  • Privado por padrão: o token fica no seu dispositivo e é enviado apenas ao gateway configurado.

Como usar

  1. Acesse a instância hospedada (ou rode localmente — veja abaixo).
  2. Na tela inicial, preencha:
    • URL do gateway (WebSocket) — ex.: wss://app.seu-dominio.dev/ws/chat
    • Token / chave — o token de acesso fornecido pelo seu gateway
    • Agente — alias do agente (ex.: main)
    • STT / TTS (opcional) — URLs de transcrição e síntese de voz
  3. Converse! 🎙

Desenvolvimento

bun install
bun run dev      # dev server
bun run build    # build de produção em dist/
bun run preview  # servir o build localmente

Protocolo

O cliente fala o protocolo de chat WebSocket do gateway:

  • Conecta em <gateway>/ws/chat?token=<token>&agent=<agent>&name=<nome> (subprotocolo zeroclaw.v1).
  • Cliente → servidor: {"type":"message","content":"..."}, {"type":"approval_response","request_id":"...","decision":"approve|deny|always"}.
  • Servidor → cliente: session_start, chunk, chunk_reset, thinking, tool_call, tool_result, done, approval_request, error, aborted.

Referência completa dos tipos em src/lib/ws.ts.

Stack

Vite · React · TypeScript · assistant-ui (runtime + primitives) · Tailwind CSS v4 · vite-plugin-pwa

Licença

AGPL-3.0 — código aberto, copyleft. Veja LICENSE.

Histórico

  • v0.1.1 — deploy automático via Forgejo Actions (runner workstation).