enyosx-ai 0.1.0
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 +18 -0
- package/README.md +740 -0
- package/dist/chunk-2WM5L76D.js +320 -0
- package/dist/chunk-3BNDFBX3.js +324 -0
- package/dist/chunk-4LJILSCT.js +30 -0
- package/dist/chunk-4ZV5JV6W.js +298 -0
- package/dist/chunk-76PHNPTY.js +631 -0
- package/dist/chunk-BSSA33NY.js +677 -0
- package/dist/chunk-EK6IDRY7.js +105 -0
- package/dist/chunk-FI2EBH2N.js +2232 -0
- package/dist/chunk-GAKKLY4M.js +276 -0
- package/dist/chunk-HR4G5XQI.js +319 -0
- package/dist/chunk-HROGCEE5.js +30 -0
- package/dist/chunk-MMH7M7MG.js +30 -0
- package/dist/chunk-NGLRXS6G.js +2079 -0
- package/dist/chunk-NSE6LQJC.js +681 -0
- package/dist/chunk-O5XZOSBW.js +2484 -0
- package/dist/chunk-OVCMUPMP.js +677 -0
- package/dist/chunk-P2YBRE3X.js +2484 -0
- package/dist/chunk-VVIL5NIM.js +318 -0
- package/dist/chunk-ZNGEBY33.js +273 -0
- package/dist/cli.cjs +2509 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +99 -0
- package/dist/index.cjs +2912 -0
- package/dist/index.d.ts +672 -0
- package/dist/index.js +379 -0
- package/dist/parser-4JXKOWKY.js +8 -0
- package/dist/parser-UUB6D2CZ.js +8 -0
- package/dist/parser-V44AIVNI.js +8 -0
- package/examples/README.md +13 -0
- package/examples/ia-demo.eny +37 -0
- package/examples/sample.eny +15 -0
- package/examples/simple/system.eny +7 -0
- package/examples/spec/sample.eny +19 -0
- package/examples/starter/README.md +96 -0
- package/examples/starter/main.eny +39 -0
- package/examples/starter/run.js +68 -0
- package/examples/starter.eny +16 -0
- package/examples/wasm-demo.eny +34 -0
- package/package.json +49 -0
package/README.md
ADDED
|
@@ -0,0 +1,740 @@
|
|
|
1
|
+
# 🧠 AI-ENY Core
|
|
2
|
+
|
|
3
|
+
**Biblioteca Universal de Sistemas Autogeráveis**
|
|
4
|
+
|
|
5
|
+
[](https://badge.fury.io/js/enyosx-ai)
|
|
6
|
+
[](https://github.com/enyos/enyosx-ai/actions/workflows/ci.yml)
|
|
7
|
+
[](https://github.com/enyos/enyosx-ai)
|
|
8
|
+
[](https://github.com/enyos/enyosx-ai)
|
|
9
|
+
[](https://opensource.org/licenses/MIT)
|
|
10
|
+
[](https://www.typescriptlang.org/)
|
|
11
|
+
[](https://nodejs.org/)
|
|
12
|
+
|
|
13
|
+
> **AI-ENY** não é só uma linguagem — é um **META-SISTEMA DE CONSTRUÇÃO** baseado nos 9 Pilares da Existência Computável.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 🧬 Os 9 Pilares da Existência Computável
|
|
18
|
+
|
|
19
|
+
A filosofia AI-ENY organiza toda computação em 9 pilares fundamentais:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
┌─────┬────────────────┬──────────────────────────────────────────────────┐
|
|
23
|
+
│ Σ │ ESTADO │ Consciência do sistema. Tudo primeiro é estado │
|
|
24
|
+
│ ƒ │ AÇÃO │ Transforma pensamento em movimento │
|
|
25
|
+
│ ■ │ FORMA │ Materializa conceitos em estruturas │
|
|
26
|
+
│ ⚡ │ TEMPO │ Gatilho que inicia sequências causais │
|
|
27
|
+
│ Ψ │ ENERGIA │ Vitalidade que mantém processos vivos │
|
|
28
|
+
│ 𝓜 │ MEMÓRIA │ Preserva informação através do tempo │
|
|
29
|
+
│ ☐ │ INTERFACE │ Ponte entre máquina e humano │
|
|
30
|
+
│ 🛡 │ SEGURANÇA │ Proteção contra ameaças e erros │
|
|
31
|
+
│ ⟳ │ EVOLUÇÃO │ Capacidade de aprender e adaptar │
|
|
32
|
+
└─────┴────────────────┴──────────────────────────────────────────────────┘
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 🌀 Fluxo Existencial
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
IDEIA → Σ ESTADO → ■ FORMA → ƒ AÇÃO → ⚡ CAUSA
|
|
39
|
+
↓
|
|
40
|
+
Ψ ENERGIA ← 𝓜 MEMÓRIA ← ☐ INTERFACE ← 🛡 SEGURANÇA
|
|
41
|
+
↓
|
|
42
|
+
⟳ EVOLUÇÃO → Σ++ (NOVO ESTADO)
|
|
43
|
+
↺ (CICLO INFINITO)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## ✨ O Que Esta Biblioteca Oferece
|
|
49
|
+
|
|
50
|
+
| Módulo | Descrição | Status |
|
|
51
|
+
|--------|-----------|--------|
|
|
52
|
+
| **Lexer** | Tokenizador com 50+ símbolos (gregos, emojis, unicode) | ✅ Completo |
|
|
53
|
+
| **Parser EBNF** | Parser formal que gera AST tipada | ✅ Completo |
|
|
54
|
+
| **Semantic** | Validação semântica com cobertura dos 9 pilares + score | ✅ Completo |
|
|
55
|
+
| **Transpiler** | Emissão para JavaScript (ESM/CJS), TypeScript (.d.ts), WASM (.wat) | ✅ Completo |
|
|
56
|
+
| **Evolve** | 10+ comandos de transformação automática (rename, optimize, memoize...) | ✅ Completo |
|
|
57
|
+
| **IA** | Sistema de providers (LocalIA, RemoteIA) | ✅ Completo |
|
|
58
|
+
| **CLI** | Interface de linha de comando completa | ✅ Completo |
|
|
59
|
+
| **Pillar Helpers** | Utilitários para geração programática de código ENY | ✅ Completo |
|
|
60
|
+
| **React** | Componente para integração React | ✅ Completo |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## 📦 Instalação
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# npm
|
|
68
|
+
npm install enyosx-ai
|
|
69
|
+
|
|
70
|
+
# yarn
|
|
71
|
+
yarn add enyosx-ai
|
|
72
|
+
|
|
73
|
+
# pnpm
|
|
74
|
+
pnpm add enyosx-ai
|
|
75
|
+
|
|
76
|
+
# Instalação global (para CLI)
|
|
77
|
+
npm install -g enyosx-ai
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 🚀 Início Rápido
|
|
83
|
+
|
|
84
|
+
### CLI
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Parsear e mostrar AST
|
|
88
|
+
npx enyosx-ai arquivo.eny
|
|
89
|
+
|
|
90
|
+
# Transpilar para JavaScript ESM
|
|
91
|
+
npx enyosx-ai arquivo.eny --emit js --out output.js
|
|
92
|
+
|
|
93
|
+
# Transpilar para JS com tipos TypeScript
|
|
94
|
+
npx enyosx-ai arquivo.eny --emit js --emit-types --out output.js
|
|
95
|
+
|
|
96
|
+
# Gerar declarações TypeScript
|
|
97
|
+
npx enyosx-ai arquivo.eny --emit dts --out output.d.ts
|
|
98
|
+
|
|
99
|
+
# Gerar WebAssembly Text Format
|
|
100
|
+
npx enyosx-ai arquivo.eny --emit wasm --out output.wat
|
|
101
|
+
|
|
102
|
+
# Modo verbose com logs persistentes
|
|
103
|
+
npx enyosx-ai arquivo.eny --verbose --log-file logs.jsonl
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### API (Node.js / TypeScript)
|
|
107
|
+
|
|
108
|
+
```typescript
|
|
109
|
+
import {
|
|
110
|
+
runENY,
|
|
111
|
+
transpileToJS,
|
|
112
|
+
validateSemanticFull,
|
|
113
|
+
createSystem,
|
|
114
|
+
createFunction,
|
|
115
|
+
generateENY
|
|
116
|
+
} from 'enyosx-ai';
|
|
117
|
+
|
|
118
|
+
// 1️⃣ Parsear código AI-ENY
|
|
119
|
+
const code = `
|
|
120
|
+
Σ SYSTEM "Meu Sistema"
|
|
121
|
+
Σ MODE autonomous
|
|
122
|
+
|
|
123
|
+
Δ function processar(dados)
|
|
124
|
+
→ validar
|
|
125
|
+
→ transformar
|
|
126
|
+
→ salvar
|
|
127
|
+
|
|
128
|
+
Ψ IA assistente {
|
|
129
|
+
aprender contexto
|
|
130
|
+
sugerir ações
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
🛡 high {
|
|
134
|
+
validateInput
|
|
135
|
+
sanitize
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
⟳ {
|
|
139
|
+
observar uso
|
|
140
|
+
otimizar código
|
|
141
|
+
}
|
|
142
|
+
`;
|
|
143
|
+
|
|
144
|
+
const ast = runENY(code, {
|
|
145
|
+
verbose: true,
|
|
146
|
+
onLog: (entry) => console.log(`[${entry.level}] ${entry.event}`)
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
console.log('Sistema:', ast.system);
|
|
150
|
+
console.log('Funções:', ast.functions?.map(f => f.name));
|
|
151
|
+
|
|
152
|
+
// 2️⃣ Validar semanticamente (com score dos 9 pilares)
|
|
153
|
+
const validation = validateSemanticFull(ast);
|
|
154
|
+
console.log('Score:', validation.score, '/100');
|
|
155
|
+
console.log('Pilares ativos:', validation.pillars);
|
|
156
|
+
console.log('Warnings:', validation.warnings);
|
|
157
|
+
|
|
158
|
+
// 3️⃣ Transpilar para JavaScript
|
|
159
|
+
const js = transpileToJS(ast);
|
|
160
|
+
console.log(js);
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## 🧬 Fluxo Mental Final (Oficial)
|
|
166
|
+
|
|
167
|
+
```
|
|
168
|
+
IDEIA
|
|
169
|
+
↓
|
|
170
|
+
Σ ESTADO
|
|
171
|
+
↓
|
|
172
|
+
OBJETO
|
|
173
|
+
↓
|
|
174
|
+
EXECUÇÃO
|
|
175
|
+
↓
|
|
176
|
+
TEMPO & CAUSA
|
|
177
|
+
↓
|
|
178
|
+
ENERGIA
|
|
179
|
+
↓
|
|
180
|
+
MEMÓRIA
|
|
181
|
+
↓
|
|
182
|
+
INTERFACE
|
|
183
|
+
↓
|
|
184
|
+
SEGURANÇA
|
|
185
|
+
↓
|
|
186
|
+
EVOLUÇÃO
|
|
187
|
+
↺
|
|
188
|
+
Σ++
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## 🔤 Alfabeto Completo AI-ENY (50+ Símbolos)
|
|
194
|
+
|
|
195
|
+
### 🧩 Camada 1 — Existência & Estado (Ontologia)
|
|
196
|
+
|
|
197
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
198
|
+
|---------|------|---------------|----------------|
|
|
199
|
+
| `Σ` | STATE | Estado absoluto | Estado global do sistema |
|
|
200
|
+
| `σ` | SUBSTATE | Sub-realidade | Estado local / contexto específico |
|
|
201
|
+
| `Ø` | VOID | Não-existência | Null absoluto |
|
|
202
|
+
| `+` | EXIST | Criar | Instanciar existência |
|
|
203
|
+
| `−` | DESTROY | Remover | Destruir entidade |
|
|
204
|
+
| `=` | IDENTITY | Igualdade | Identidade |
|
|
205
|
+
| `≠` | DIVERGE | Diferença | Divergência |
|
|
206
|
+
| `🔒` | LOCK | Imutável | Estado protegido |
|
|
207
|
+
| `🔓` | UNLOCK | Mutável | Estado liberado |
|
|
208
|
+
|
|
209
|
+
### ⚙️ Camada 2 — Execução & Função (Ação)
|
|
210
|
+
|
|
211
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
212
|
+
|---------|------|---------------|----------------|
|
|
213
|
+
| `ƒ` | FUNCTION | Capacidade lógica | Função |
|
|
214
|
+
| `→` | EXEC | Execução | Fluxo de ação |
|
|
215
|
+
| `⇉` | PARALLEL | Execução paralela | Concorrência |
|
|
216
|
+
| `△` | DEPEND | Dependência | Ordem necessária |
|
|
217
|
+
| `●` | CORE | Núcleo | Centro do sistema |
|
|
218
|
+
| `Σ+` | CACHE | Memória rápida | Otimização |
|
|
219
|
+
| `⏳` | DELAY | Espera | Atraso temporal |
|
|
220
|
+
|
|
221
|
+
### 🧱 Camada 3 — Objetos & Estrutura (Forma)
|
|
222
|
+
|
|
223
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
224
|
+
|---------|------|---------------|----------------|
|
|
225
|
+
| `■` | OBJECT | Objeto | Entidade concreta |
|
|
226
|
+
| `○` | CLASS | Classe | Molde estrutural |
|
|
227
|
+
| `●` | INSTANCE | Instância | Objeto ativo |
|
|
228
|
+
| `⬒` | INHERIT | Herança | Extensão |
|
|
229
|
+
| `⊃` | CONTAINS | Contém | Composição |
|
|
230
|
+
| `≔` | ASSIGN | Atribuição | Definição |
|
|
231
|
+
| `⧉` | MODULE | Módulo | Bloco funcional |
|
|
232
|
+
|
|
233
|
+
### ⏱ Camada 4 — Tempo & Causalidade
|
|
234
|
+
|
|
235
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
236
|
+
|---------|------|---------------|----------------|
|
|
237
|
+
| `⚡` | CAUSE | Causa | Origem de evento |
|
|
238
|
+
| `✦` | CONSEQUENCE | Consequência | Resultado |
|
|
239
|
+
| `↻` | LOOP | Repetição | Continuidade |
|
|
240
|
+
| `◌` | EVENT | Evento | Acontecimento |
|
|
241
|
+
| `⇄` | SYNC | Sincronização | Comunicação |
|
|
242
|
+
| `⌛` | TIMEOUT | Limite temporal | Expiração |
|
|
243
|
+
|
|
244
|
+
### ⚡ Camada 5 — Energia & Performance
|
|
245
|
+
|
|
246
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
247
|
+
|---------|------|---------------|----------------|
|
|
248
|
+
| `Ψ` | ENERGY | Energia vital | CPU / RAM / IO |
|
|
249
|
+
| `⚡` | PEAK | Pico de uso | Explosão de recurso |
|
|
250
|
+
| `⏬` | THROTTLE | Limitar | Controle de uso |
|
|
251
|
+
| `⏫` | BOOST | Acelerar | Aumento de performance |
|
|
252
|
+
| `₵` | COST | Custo | Gasto de recurso |
|
|
253
|
+
| `Σ` | SUM | Soma | Totalização |
|
|
254
|
+
|
|
255
|
+
### 🧠 Camada 6 — Memória & Informação
|
|
256
|
+
|
|
257
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
258
|
+
|---------|------|---------------|----------------|
|
|
259
|
+
| `𝓜` | MEMORY | Memória | Retenção de informação |
|
|
260
|
+
| `≠` | DIFF | Diferença | Comparação |
|
|
261
|
+
| `△` | COMMIT | Confirmar | Fixar estado |
|
|
262
|
+
| `♾` | PERSIST | Persistência | Manter no tempo |
|
|
263
|
+
| `⌂` | ROOT | Raiz | Origem do sistema |
|
|
264
|
+
|
|
265
|
+
### 🖥 Camada 7 — Interface & Experiência
|
|
266
|
+
|
|
267
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
268
|
+
|---------|------|---------------|----------------|
|
|
269
|
+
| `☐` | INTERFACE | Interface | Contato humano |
|
|
270
|
+
| `👁` | VISUAL | Visual | Percepção |
|
|
271
|
+
| `⌨` | INPUT | Entrada | Intenção do usuário |
|
|
272
|
+
| `🧭` | POINTER | Ponteiro | Direção |
|
|
273
|
+
| `✦` | COMMAND | Comando | Ação explícita |
|
|
274
|
+
|
|
275
|
+
### 🛡 Camada 8 — Segurança & Controle
|
|
276
|
+
|
|
277
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
278
|
+
|---------|------|---------------|----------------|
|
|
279
|
+
| `🛡` | SECURITY | Segurança | Proteção |
|
|
280
|
+
| `🔑` | KEY | Chave | Autorização |
|
|
281
|
+
| `⚠` | RISK | Risco | Ameaça |
|
|
282
|
+
| `⛔` | BLOCK | Bloqueio | Negação |
|
|
283
|
+
| `🧪` | SANDBOX | Isolamento | Execução segura |
|
|
284
|
+
|
|
285
|
+
### 🌱 Camada 9 — Evolução & Realidade
|
|
286
|
+
|
|
287
|
+
| Símbolo | Nome | Função Mental | Função Técnica |
|
|
288
|
+
|---------|------|---------------|----------------|
|
|
289
|
+
| `⟳` | EVOLVE | Evoluir | Adaptação contínua |
|
|
290
|
+
| `✔` | VERIFY | Verificar | Validação |
|
|
291
|
+
| `✓` | VALID | Válido | Correto |
|
|
292
|
+
| `✖` | INVALID | Inválido | Erro |
|
|
293
|
+
| `📜` | LOG | Registro | Memória histórica |
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## 🧬 Os 9 Pilares — Leitura Mental Rápida
|
|
298
|
+
|
|
299
|
+
```
|
|
300
|
+
┌─────┬────────────────────────────────────────────────────────────────┐
|
|
301
|
+
│ Σ │ DEFINE O ESTADO │
|
|
302
|
+
│ │ O estado é a consciência do sistema. Tudo que existe, │
|
|
303
|
+
│ │ primeiro existe como estado. Σ é o fundamento de tudo. │
|
|
304
|
+
│ │ ➜ Técnico: Governa variáveis globais, contexto, runtime │
|
|
305
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
306
|
+
│ ƒ │ EXECUTA A INTENÇÃO │
|
|
307
|
+
│ │ A intenção precisa de ação. ƒ transforma pensamento em │
|
|
308
|
+
│ │ movimento. É a capacidade de fazer. │
|
|
309
|
+
│ │ ➜ Técnico: Funções, métodos, procedures, lambdas │
|
|
310
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
311
|
+
│ ■ │ DÁ FORMA │
|
|
312
|
+
│ │ O abstrato precisa de corpo. ■ materializa conceitos em │
|
|
313
|
+
│ │ estruturas concretas e manipuláveis. │
|
|
314
|
+
│ │ ➜ Técnico: Objetos, structs, entidades, records │
|
|
315
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
316
|
+
│ ⚡ │ CRIA O TEMPO │
|
|
317
|
+
│ │ Sem causa, nada acontece. ⚡ é o gatilho que inicia │
|
|
318
|
+
│ │ sequências causais. Origem de todo evento. │
|
|
319
|
+
│ │ ➜ Técnico: Events, triggers, causality chains │
|
|
320
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
321
|
+
│ Ψ │ SUSTENTA COM ENERGIA │
|
|
322
|
+
│ │ Todo sistema consome recursos. Ψ é a vitalidade que │
|
|
323
|
+
│ │ mantém processos vivos e funcionando. │
|
|
324
|
+
│ │ ➜ Técnico: CPU, RAM, I/O, power management │
|
|
325
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
326
|
+
│ 𝓜 │ LEMBRA │
|
|
327
|
+
│ │ Sem memória, não há identidade. 𝓜 preserva informação │
|
|
328
|
+
│ │ através do tempo, criando continuidade. │
|
|
329
|
+
│ │ ➜ Técnico: Storage, cache, database, persistence │
|
|
330
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
331
|
+
│ ☐ │ COMUNICA │
|
|
332
|
+
│ │ Sistemas existem para interagir. ☐ é a ponte entre │
|
|
333
|
+
│ │ a máquina e o humano, o interno e o externo. │
|
|
334
|
+
│ │ ➜ Técnico: UI, API, interfaces, I/O streams │
|
|
335
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
336
|
+
│ 🛡 │ PROTEGE │
|
|
337
|
+
│ │ Toda existência precisa de defesa. 🛡 guarda o sistema │
|
|
338
|
+
│ │ contra ameaças, erros e invasões. │
|
|
339
|
+
│ │ ➜ Técnico: Security, auth, encryption, sandboxing │
|
|
340
|
+
├─────┼────────────────────────────────────────────────────────────────┤
|
|
341
|
+
│ ⟳ │ EVOLUI │
|
|
342
|
+
│ │ Nada é estático. ⟳ representa a capacidade de aprender, │
|
|
343
|
+
│ │ adaptar e melhorar continuamente. │
|
|
344
|
+
│ │ ➜ Técnico: ML, self-optimization, hot reload, versioning │
|
|
345
|
+
└─────┴────────────────────────────────────────────────────────────────┘
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
---
|
|
349
|
+
|
|
350
|
+
## 🌀 Fluxo Existencial Completo
|
|
351
|
+
|
|
352
|
+
```
|
|
353
|
+
┌──────────────────────────────────────────────────────────────┐
|
|
354
|
+
│ │
|
|
355
|
+
│ IDEIA → Σ ESTADO → ■ FORMA → ƒ AÇÃO → ⚡ CAUSA │
|
|
356
|
+
│ │
|
|
357
|
+
│ ↓ │
|
|
358
|
+
│ │
|
|
359
|
+
│ Ψ ENERGIA ← 𝓜 MEMÓRIA ← ☐ INTERFACE ← 🛡 SEGURANÇA │
|
|
360
|
+
│ │
|
|
361
|
+
│ ↓ │
|
|
362
|
+
│ │
|
|
363
|
+
│ ⟳ EVOLUÇÃO → Σ++ (NOVO ESTADO) │
|
|
364
|
+
│ │
|
|
365
|
+
│ ↺ (CICLO INFINITO) │
|
|
366
|
+
└──────────────────────────────────────────────────────────────┘
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## 📝 Exemplo Completo — Sistema com Todos os 9 Pilares
|
|
372
|
+
|
|
373
|
+
```eny
|
|
374
|
+
Σ SYSTEM "IA Consciente" // 1️⃣ Σ ESTADO
|
|
375
|
+
Σ MODE autonomous
|
|
376
|
+
Σ UI adaptive
|
|
377
|
+
|
|
378
|
+
■ Agente { // 2️⃣ ■ FORMA
|
|
379
|
+
nome: "Eny"
|
|
380
|
+
nivel: 1
|
|
381
|
+
experiencia: 0
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
○ BaseIA → AgenteAvancado { // Herança
|
|
385
|
+
capacidades: ["pensar", "aprender"]
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
ƒ pensar(input) // 3️⃣ ƒ AÇÃO
|
|
389
|
+
→ analisar
|
|
390
|
+
→ decidir
|
|
391
|
+
→ responder
|
|
392
|
+
|
|
393
|
+
ƒ aprender(feedback)
|
|
394
|
+
→ processar
|
|
395
|
+
→ atualizar_pesos
|
|
396
|
+
→ persistir
|
|
397
|
+
|
|
398
|
+
⚡ userMessage // 4️⃣ ⚡ TEMPO (evento)
|
|
399
|
+
→ pensar
|
|
400
|
+
→ memorizar
|
|
401
|
+
|
|
402
|
+
◌ timeout_idle // Evento de timeout
|
|
403
|
+
→ salvar_estado
|
|
404
|
+
→ hibernar
|
|
405
|
+
|
|
406
|
+
Ψ ENERGY optimize // 5️⃣ Ψ ENERGIA
|
|
407
|
+
⏬ pensar 100 // Throttle: max 100/min
|
|
408
|
+
⏫ critico 2 // Boost 2x para crítico
|
|
409
|
+
|
|
410
|
+
𝓜 conversas 10000 persist // 6️⃣ 𝓜 MEMÓRIA
|
|
411
|
+
♾ aprendizado db // Persistir no banco
|
|
412
|
+
|
|
413
|
+
☐ chat { // 7️⃣ ☐ INTERFACE
|
|
414
|
+
input: text
|
|
415
|
+
output: response
|
|
416
|
+
style: minimal
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
👁 dashboard {
|
|
420
|
+
metricas: true
|
|
421
|
+
graficos: true
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
🛡 high { // 8️⃣ 🛡 SEGURANÇA
|
|
425
|
+
validateInput
|
|
426
|
+
sanitize
|
|
427
|
+
rateLimit
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
🔑 apiKey {
|
|
431
|
+
read
|
|
432
|
+
write
|
|
433
|
+
admin
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
⟳ { // 9️⃣ ⟳ EVOLUÇÃO
|
|
437
|
+
observar interacoes
|
|
438
|
+
melhorar respostas
|
|
439
|
+
adaptar personalidade
|
|
440
|
+
otimizar pensar
|
|
441
|
+
memoize aprender
|
|
442
|
+
}
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
---
|
|
446
|
+
|
|
447
|
+
## 🔧 APIs Avançadas
|
|
448
|
+
|
|
449
|
+
### Validação Semântica com Score dos 9 Pilares
|
|
450
|
+
|
|
451
|
+
```typescript
|
|
452
|
+
import { runENY, validateSemanticFull } from 'enyosx-ai';
|
|
453
|
+
|
|
454
|
+
const ast = runENY(codigo);
|
|
455
|
+
const result = validateSemanticFull(ast);
|
|
456
|
+
|
|
457
|
+
// result.score: 0-100 (baseado nos pilares cobertos)
|
|
458
|
+
// result.pillars: { state, action, form, time, energy, memory, interface, security, evolve }
|
|
459
|
+
// result.errors: erros críticos
|
|
460
|
+
// result.warnings: avisos de melhoria
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
### Sistema de Evolução Automática
|
|
464
|
+
|
|
465
|
+
```typescript
|
|
466
|
+
import { runENY, applyEvolve } from 'enyosx-ai';
|
|
467
|
+
|
|
468
|
+
const codigo = `
|
|
469
|
+
Σ SYSTEM "Meu App"
|
|
470
|
+
|
|
471
|
+
Δ function calcular(x, y)
|
|
472
|
+
→ somar
|
|
473
|
+
→ retornar
|
|
474
|
+
|
|
475
|
+
⌁ EVOLVE {
|
|
476
|
+
rename calcular computar
|
|
477
|
+
optimize *
|
|
478
|
+
memoize computar
|
|
479
|
+
observe *
|
|
480
|
+
}
|
|
481
|
+
`;
|
|
482
|
+
|
|
483
|
+
const ast = runENY(codigo);
|
|
484
|
+
const result = applyEvolve(ast);
|
|
485
|
+
|
|
486
|
+
// result.changed: true se houve mudanças
|
|
487
|
+
// result.appliedSteps: ['rename calcular computar', 'optimize *', ...]
|
|
488
|
+
// result.skippedSteps: passos que não puderam ser aplicados
|
|
489
|
+
```
|
|
490
|
+
|
|
491
|
+
**Comandos de Evolução Disponíveis:**
|
|
492
|
+
|
|
493
|
+
| Comando | Descrição | Exemplo |
|
|
494
|
+
|---------|-----------|---------|
|
|
495
|
+
| `rename` | Renomeia função | `rename oldFn newFn` |
|
|
496
|
+
| `optimize` | Marca para otimização | `optimize *` (todas) |
|
|
497
|
+
| `inline` | Marca para inlining | `inline helperFn` |
|
|
498
|
+
| `memoize` | Adiciona memoização | `memoize calcular` |
|
|
499
|
+
| `parallelize` | Execução paralela | `parallelize processar` |
|
|
500
|
+
| `deprecate` | Marca como deprecated | `deprecate legacyFn` |
|
|
501
|
+
| `secure` | Adiciona validações | `secure publicApi` |
|
|
502
|
+
| `cache` | Cache para objetos | `cache Config` |
|
|
503
|
+
| `throttle` | Rate limiting | `throttle api 100` |
|
|
504
|
+
| `observe` | Observabilidade | `observe *` |
|
|
505
|
+
|
|
506
|
+
### Geração Programática de Código
|
|
507
|
+
|
|
508
|
+
```typescript
|
|
509
|
+
import {
|
|
510
|
+
createSystem,
|
|
511
|
+
createFunction,
|
|
512
|
+
createObject,
|
|
513
|
+
createEvent,
|
|
514
|
+
createSecurity,
|
|
515
|
+
createEvolve,
|
|
516
|
+
generateENY
|
|
517
|
+
} from 'enyosx-ai';
|
|
518
|
+
|
|
519
|
+
// Helpers individuais
|
|
520
|
+
const sistema = createSystem({
|
|
521
|
+
name: 'Meu App',
|
|
522
|
+
mode: 'production',
|
|
523
|
+
ui: 'adaptive',
|
|
524
|
+
evolve: true
|
|
525
|
+
});
|
|
526
|
+
|
|
527
|
+
const funcao = createFunction('processar', ['dados'], [
|
|
528
|
+
'validar',
|
|
529
|
+
'transformar',
|
|
530
|
+
'salvar'
|
|
531
|
+
]);
|
|
532
|
+
|
|
533
|
+
// Gerador completo
|
|
534
|
+
const codigoCompleto = generateENY({
|
|
535
|
+
system: { name: 'Sistema Completo', mode: 'autonomous', ui: 'auto' },
|
|
536
|
+
functions: [
|
|
537
|
+
{ name: 'iniciar', steps: ['carregar', 'configurar', 'executar'] },
|
|
538
|
+
{ name: 'finalizar', steps: ['salvar', 'limpar', 'encerrar'] }
|
|
539
|
+
],
|
|
540
|
+
objects: [
|
|
541
|
+
{ name: 'Config', props: { debug: false, timeout: 5000 } }
|
|
542
|
+
],
|
|
543
|
+
events: [
|
|
544
|
+
{ name: 'startup', handlers: ['iniciar'] }
|
|
545
|
+
],
|
|
546
|
+
security: { level: 'high', rules: ['validateInput', 'sanitize'] },
|
|
547
|
+
evolve: ['optimize *', 'observe *']
|
|
548
|
+
});
|
|
549
|
+
|
|
550
|
+
console.log(codigoCompleto);
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
### Transpilação Multi-Target
|
|
554
|
+
|
|
555
|
+
```typescript
|
|
556
|
+
import { runENY, transpileToJS, transpileToDTS, transpileToWASM } from 'enyosx-ai';
|
|
557
|
+
|
|
558
|
+
const ast = runENY(codigo);
|
|
559
|
+
|
|
560
|
+
// JavaScript ESM
|
|
561
|
+
const js = transpileToJS(ast, { moduleFormat: 'esm' });
|
|
562
|
+
|
|
563
|
+
// JavaScript CommonJS
|
|
564
|
+
const cjs = transpileToJS(ast, { moduleFormat: 'cjs' });
|
|
565
|
+
|
|
566
|
+
// TypeScript Declarations
|
|
567
|
+
const dts = transpileToDTS(ast);
|
|
568
|
+
|
|
569
|
+
// WebAssembly Text Format
|
|
570
|
+
const wat = transpileToWASM(ast);
|
|
571
|
+
```
|
|
572
|
+
|
|
573
|
+
---
|
|
574
|
+
|
|
575
|
+
## 🧪 Testes
|
|
576
|
+
|
|
577
|
+
```bash
|
|
578
|
+
# Executar todos os 121 testes
|
|
579
|
+
npm test
|
|
580
|
+
|
|
581
|
+
# Watch mode
|
|
582
|
+
npm test -- --watch
|
|
583
|
+
|
|
584
|
+
# Teste específico
|
|
585
|
+
npx vitest run tests/pillars.test.ts
|
|
586
|
+
|
|
587
|
+
# Coverage
|
|
588
|
+
npm test -- --coverage
|
|
589
|
+
```
|
|
590
|
+
|
|
591
|
+
### Cobertura dos Testes
|
|
592
|
+
|
|
593
|
+
| Área | Testes |
|
|
594
|
+
|------|--------|
|
|
595
|
+
| Lexer | Tokenização de 50+ símbolos |
|
|
596
|
+
| Parser EBNF | Gramática completa |
|
|
597
|
+
| Semantic | Validação dos 9 pilares |
|
|
598
|
+
| Evolve | 10 comandos de transformação |
|
|
599
|
+
| Transpiler | JS/DTS/WASM output |
|
|
600
|
+
| Pillar Helpers | 25 testes dedicados |
|
|
601
|
+
| CLI | Todas as flags |
|
|
602
|
+
| Logging | Retry com backoff |
|
|
603
|
+
|
|
604
|
+
---
|
|
605
|
+
|
|
606
|
+
## 📁 Estrutura do Projeto
|
|
607
|
+
|
|
608
|
+
```
|
|
609
|
+
src/
|
|
610
|
+
├── lexer/ # Tokenizador com suporte a Unicode/emoji
|
|
611
|
+
│ └── tokenize.ts
|
|
612
|
+
├── parser/ # Parser EBNF formal
|
|
613
|
+
│ └── ebnfParser.ts
|
|
614
|
+
├── semantic/ # Validação semântica dos 9 pilares
|
|
615
|
+
│ └── validate.ts
|
|
616
|
+
├── evolve/ # Sistema de evolução automática
|
|
617
|
+
│ └── stub.ts
|
|
618
|
+
├── ia/ # Providers de IA
|
|
619
|
+
│ └── index.ts
|
|
620
|
+
├── react/ # Componentes React
|
|
621
|
+
│ └── EnySystem.tsx
|
|
622
|
+
├── transpile.ts # Transpilador JS/DTS/WASM
|
|
623
|
+
├── pillars.ts # Helpers dos 9 pilares
|
|
624
|
+
├── runENY.ts # Runtime principal
|
|
625
|
+
├── cli.ts # Interface de linha de comando
|
|
626
|
+
├── types.ts # Tipos TypeScript
|
|
627
|
+
└── index.ts # Exports públicos
|
|
628
|
+
|
|
629
|
+
docs/
|
|
630
|
+
├── grammar.ebnf # Gramática formal EBNF
|
|
631
|
+
└── principles.md # Princípios da linguagem
|
|
632
|
+
|
|
633
|
+
examples/
|
|
634
|
+
├── sample.eny # Exemplo básico
|
|
635
|
+
├── ia-demo.eny # Demonstração de IA
|
|
636
|
+
├── wasm-demo.eny # Build para WASM
|
|
637
|
+
└── starter/ # Projeto inicial completo
|
|
638
|
+
```
|
|
639
|
+
|
|
640
|
+
---
|
|
641
|
+
|
|
642
|
+
## 🔗 Uso com React
|
|
643
|
+
|
|
644
|
+
```tsx
|
|
645
|
+
import { EnySystem } from 'enyosx-ai/react';
|
|
646
|
+
|
|
647
|
+
function App() {
|
|
648
|
+
return (
|
|
649
|
+
<EnySystem
|
|
650
|
+
code={`
|
|
651
|
+
Σ SYSTEM "Dashboard IA"
|
|
652
|
+
Σ UI adaptive
|
|
653
|
+
|
|
654
|
+
Ψ IA suporte {
|
|
655
|
+
aprender contexto
|
|
656
|
+
sugerir acoes
|
|
657
|
+
}
|
|
658
|
+
`}
|
|
659
|
+
onParse={(ast) => console.log('Parsed:', ast)}
|
|
660
|
+
onError={(err) => console.error('Error:', err)}
|
|
661
|
+
/>
|
|
662
|
+
);
|
|
663
|
+
}
|
|
664
|
+
```
|
|
665
|
+
|
|
666
|
+
---
|
|
667
|
+
|
|
668
|
+
## 🔒 Segurança
|
|
669
|
+
|
|
670
|
+
- **Nunca commite tokens ou secrets** no repositório
|
|
671
|
+
- Use GitHub Secrets para `NPM_TOKEN`
|
|
672
|
+
- O workflow `secret-scan.yml` detecta vazamentos automaticamente
|
|
673
|
+
- Veja `.env.local.example` para variáveis de ambiente
|
|
674
|
+
|
|
675
|
+
---
|
|
676
|
+
|
|
677
|
+
## 📤 Publicação no npm
|
|
678
|
+
|
|
679
|
+
### Automática (via GitHub Actions)
|
|
680
|
+
|
|
681
|
+
```bash
|
|
682
|
+
npm version patch # ou minor/major
|
|
683
|
+
git push origin main --tags
|
|
684
|
+
```
|
|
685
|
+
|
|
686
|
+
O workflow executa build, testes e publica automaticamente.
|
|
687
|
+
|
|
688
|
+
### Manual
|
|
689
|
+
|
|
690
|
+
```bash
|
|
691
|
+
npm login
|
|
692
|
+
npm run build
|
|
693
|
+
npm test
|
|
694
|
+
npm publish --access public
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
---
|
|
698
|
+
|
|
699
|
+
## 🛠 Contribuição
|
|
700
|
+
|
|
701
|
+
1. Fork o repositório
|
|
702
|
+
2. Crie uma branch (`git checkout -b feature/nova-feature`)
|
|
703
|
+
3. Adicione testes para suas mudanças
|
|
704
|
+
4. Execute `npm test` e garanta que passam
|
|
705
|
+
5. Commit (`git commit -m 'feat: nova feature'`)
|
|
706
|
+
6. Push (`git push origin feature/nova-feature`)
|
|
707
|
+
7. Abra um Pull Request
|
|
708
|
+
|
|
709
|
+
---
|
|
710
|
+
|
|
711
|
+
## 📖 Mantra da AI-ENY
|
|
712
|
+
|
|
713
|
+
```
|
|
714
|
+
"Da intenção nasce o estado.
|
|
715
|
+
Do estado nasce a forma.
|
|
716
|
+
Da forma nasce a ação.
|
|
717
|
+
Da ação nasce o tempo.
|
|
718
|
+
Do tempo nasce a energia.
|
|
719
|
+
Da energia nasce a memória.
|
|
720
|
+
Da memória nasce a interface.
|
|
721
|
+
Da interface nasce a proteção.
|
|
722
|
+
Da proteção nasce a evolução.
|
|
723
|
+
Da evolução... nasce nova intenção."
|
|
724
|
+
```
|
|
725
|
+
|
|
726
|
+
---
|
|
727
|
+
|
|
728
|
+
## 📄 Licença
|
|
729
|
+
|
|
730
|
+
MIT © [EnyOS](https://github.com/enyos)
|
|
731
|
+
|
|
732
|
+
---
|
|
733
|
+
|
|
734
|
+
## 🔗 Links
|
|
735
|
+
|
|
736
|
+
- [npm package](https://www.npmjs.com/package/enyosx-ai)
|
|
737
|
+
- [GitHub Repository](https://github.com/enyos/enyosx-ai)
|
|
738
|
+
- [Issues](https://github.com/enyos/enyosx-ai/issues)
|
|
739
|
+
- [Documentação](https://github.com/enyos/enyosx-ai/tree/main/docs)
|
|
740
|
+
- [Exemplos](https://github.com/enyos/enyosx-ai/tree/main/examples)
|