@hiperplano/aluy-cli 1.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ Copyright (c) 2026 Hiperplano. Todos os direitos reservados.
2
+
3
+ Aluy CLI. Este repositório é de visibilidade pública — o código é inspecionável —
4
+ mas isto NÃO é uma concessão de licença de código aberto. Uso, cópia, modificação
5
+ ou redistribuição fora da organização exigem autorização expressa por escrito.
6
+
7
+ Nenhuma credencial, chave de provider ou dado sensível mora neste repositório.
package/README.md ADDED
@@ -0,0 +1,113 @@
1
+ <p align="center">
2
+ <picture>
3
+ <source media="(prefers-color-scheme: dark)" srcset="docs/aluy-wordmark-white.png">
4
+ <img src="docs/aluy-wordmark.png" alt="Aluy" height="56">
5
+ </picture>
6
+ </p>
7
+
8
+ <h1 align="center">Aluy CLI</h1>
9
+
10
+ <p align="center">
11
+ Um agente de terminal que roda na <b>sua máquina</b>, com o <b>seu próprio provider de LLM</b>.
12
+ </p>
13
+
14
+ ---
15
+
16
+ O **Aluy CLI** é um agente de terminal: ele lê e edita arquivos, executa
17
+ comandos, busca no seu código e conduz seu próprio **loop de ferramentas** — tudo
18
+ numa TUI rica, com uma **engine de permissão** onde todo efeito passa por uma
19
+ catraca antes de acontecer.
20
+
21
+ Você usa o **seu próprio modelo** (BYO): qualquer provider compatível com a API da
22
+ OpenAI, com a sua própria credencial — direto, sem intermediário e sem metering.
23
+ *(Por enquanto o aluy roda só local, com a sua chave.)*
24
+
25
+ ## Instalação
26
+
27
+ ```bash
28
+ npm install -g @hiperplano/aluy-cli
29
+ aluy onboard # configura idioma, provider, modelo e (opcional) os complementos
30
+ aluy # abre a sessão
31
+ ```
32
+
33
+ O `aluy onboard` é o instalador guiado: escolhe o idioma, conecta o seu provider
34
+ (faz um teste de conectividade real antes de prosseguir), e oferece os complementos
35
+ opcionais. Funciona em **Linux, macOS e Windows** — o terminal recomendado é o
36
+ [WezTerm](https://wezterm.org), mas qualquer terminal moderno serve.
37
+
38
+ ## Uso
39
+
40
+ ```bash
41
+ aluy # sessão interativa (TUI)
42
+ aluy "refatore o módulo X" # dá um objetivo direto e acompanha o agente trabalhar
43
+ aluy -p "liste os TODOs" # modo headless (one-shot), ideal p/ scripts/CI
44
+ aluy --resume <id> # retoma uma conversa anterior (o id aparece ao sair)
45
+ aluy --continue # retoma a sessão mais recente deste diretório
46
+ ```
47
+
48
+ Dentro da sessão, **slash-commands** controlam tudo sem sair do fluxo:
49
+
50
+ | Comando | O que faz |
51
+ |---|---|
52
+ | `/model` · `/provider` · `/effort` | troca modelo / provider / esforço de raciocínio |
53
+ | `/init` | cria o `ALUY.md` + a estrutura `.aluy/` do projeto |
54
+ | `/mcp` · `/agents` · `/skills` · `/workflows` | gerencia MCP, sub-agentes, skills e workflows |
55
+ | `/rooms` | salas de conversa entre agentes (multi-agente) |
56
+ | `/rename` · `/theme` · `/lang` | nome+cor da sessão, tema, idioma |
57
+ | `/memory` · `/compact` · `/history` | memória, compactação de contexto, histórico |
58
+
59
+ ## Como funciona
60
+
61
+ - **Agente + permissão** — o loop de ferramentas (ler/editar/rodar/buscar) passa por
62
+ um ponto único de interceptação: nada com efeito acontece sem a catraca liberar
63
+ (ou você aprovar). O modo `--yolo` dispensa as confirmações por sua conta e risco.
64
+ - **BYO provider** — `--backend local` fala direto com o provider (API key ou OAuth).
65
+ A credencial fica **só no keychain do SO** (macOS Keychain · Windows Credential
66
+ Manager · Linux Secret Service) — nunca em arquivo, `.env` ou log.
67
+ - **MCP** — conecta servers MCP (`~/.aluy/mcp.json` global e `.mcp.json` do projeto),
68
+ compatível com o ecossistema; o onboard ainda oferece pré-instalar alguns (Playwright,
69
+ Filesystem, Memory, …).
70
+ - **Complementos opcionais** (modo turbo) — memória persistente, modelos locais via
71
+ Ollama e gestão de contexto, instaláveis no onboard ou depois com `aluy bootstrap`.
72
+
73
+ ## Configuração
74
+
75
+ Tudo vive em `~/.aluy/`:
76
+
77
+ | Arquivo | Conteúdo |
78
+ |---|---|
79
+ | `config.json` | preferências (idioma, tema, provider/modelo, perfil, limites…) |
80
+ | `providers.json` | seus providers BYO (OpenAI-compatíveis) |
81
+ | `mcp.json` | servers MCP globais |
82
+
83
+ Variáveis `ALUY_*` e flags de CLI sobrescrevem (precedência **flag > env > config > default**).
84
+ No **projeto**, o `ALUY.md` dá as instruções ao agente e `.aluy/` guarda agents, workflows,
85
+ commands e skills.
86
+
87
+ ## Monorepo
88
+
89
+ | Pacote | Papel |
90
+ |---|---|
91
+ | **`@hiperplano/aluy-cli-core`** | Engine **portável** do agente (loop · tools · permissão). Sem Ink, sem I/O de terminal. Hospeda o ponto único de interceptação de tool-calls. |
92
+ | **`@hiperplano/aluy-cli`** | TUI (**Ink**) + binário **`aluy`** + wiring. Consome `@hiperplano/aluy-cli-core`. |
93
+
94
+ Lema: **core modular, entrega monolítica**. A fronteira `core × TUI` é explícita e
95
+ testada (o core não importa Ink).
96
+
97
+ ### Desenvolvimento
98
+
99
+ ```bash
100
+ npm install
101
+ npm run build # tsc -b (cli-core → cli)
102
+ npm run lint
103
+ npm test
104
+ node packages/cli/dist/bin/aluy.js --help
105
+ ```
106
+
107
+ ## Contribuir
108
+
109
+ Ver [`CONTRIBUTING.md`](CONTRIBUTING.md).
110
+
111
+ ## Licença
112
+
113
+ Ver [`LICENSE`](LICENSE).