Skip to content

Commit 9689bc2

Browse files
authored
Merge branch 'develop' into fix-postinstall-script
2 parents be1ca74 + 2724555 commit 9689bc2

File tree

13 files changed

+771
-44
lines changed

13 files changed

+771
-44
lines changed

.devcontainer/Dockerfile

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
ARG NODE_VER=23.5.0
2+
ARG BASE_IMAGE=node:${NODE_VER}
3+
FROM $BASE_IMAGE
4+
5+
ENV DEBIAN_FRONTEND=noninteractive
6+
7+
# Install pnpm globally and install necessary build tools
8+
RUN apt-get update \
9+
&& apt-get install -y \
10+
git \
11+
python3 \
12+
make \
13+
g++ \
14+
nano \
15+
vim \
16+
&& apt-get clean \
17+
&& rm -rf /var/lib/apt/lists/*
18+
19+
ARG PNPM_VER=9.15.2
20+
RUN npm install -g pnpm@${PNPM_VER}
21+
22+
# Set Python 3 as the default python
23+
RUN ln -s /usr/bin/python3 /usr/bin/python
24+
ENV DEBIAN_FRONTEND=dialog

.devcontainer/devcontainer.json

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// See https://aka.ms/vscode-remote/devcontainer.json for format details.
2+
{
3+
"name": "elizaos-dev",
4+
"dockerFile": "Dockerfile",
5+
"build": {
6+
"args": {
7+
"NODE_VER": "23.5.0",
8+
"PNPM_VER": "9.15.2"
9+
}
10+
},
11+
"privileged": true,
12+
"runArgs": [
13+
"-p=3000:3000", // Add port for server api
14+
"-p=5173:5173", // Add port for client
15+
//"--volume=/usr/lib/wsl:/usr/lib/wsl", // uncomment for WSL
16+
//"--volume=/mnt/wslg:/mnt/wslg", // uncomment for WSL
17+
"--gpus=all", // ! uncomment for vGPU
18+
//"--device=/dev/dxg", // uncomment this for vGPU under WSL
19+
"--device=/dev/dri"
20+
],
21+
"containerEnv": {
22+
//"MESA_D3D12_DEFAULT_ADAPTER_NAME": "NVIDIA", // uncomment for WSL
23+
//"LD_LIBRARY_PATH": "/usr/lib/wsl/lib" // uncomment for WSL
24+
},
25+
"customizations": {
26+
"vscode": {
27+
"extensions": [
28+
"vscode.json-language-features",
29+
"vscode.css-language-features",
30+
// "foxundermoon.shell-format",
31+
// "dbaeumer.vscode-eslint",
32+
// "esbenp.prettier-vscode"
33+
"ms-python.python"
34+
]
35+
}
36+
},
37+
"features": {}
38+
}

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ tsup.config.bundled_*.mjs
5050

5151
.turbo
5252
.cursorrules
53+
.pnpm-store
5354

5455
coverage
5556
.eslintcache

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
## 🌍 README Translations
1414

15-
[中文说明](./README_CN.md) | [日本語の説明](./README_JA.md) | [한국어 설명](./README_KOR.md) | [Français](./README_FR.md) | [Português](./README_PTBR.md) | [Türkçe](./README_TR.md) | [Русский](./README_RU.md) | [Español](./README_ES.md) | [Italiano](./README_IT.md) | [ไทย](./README_TH.md) | [Deutsch](./README_DE.md) | [Tiếng Việt](./README_VI.md) | [עִברִית](https://github.com/elizaos/Elisa/blob/main/README_HE.md) | [Tagalog](./README_TG.md) | [Polski](./README_PL.md) | [Arabic](./README_AR.md) | [Hungarian](./README_HU.md) | [Srpski](./README_RS.md)
15+
[中文说明](./README_CN.md) | [日本語の説明](./README_JA.md) | [한국어 설명](./README_KOR.md) | [Français](./README_FR.md) | [Português](./README_PTBR.md) | [Türkçe](./README_TR.md) | [Русский](./README_RU.md) | [Español](./README_ES.md) | [Italiano](./README_IT.md) | [ไทย](./README_TH.md) | [Deutsch](./README_DE.md) | [Tiếng Việt](./README_VI.md) | [עִברִית](https://github.com/elizaos/Elisa/blob/main/README_HE.md) | [Tagalog](./README_TG.md) | [Polski](./README_PL.md) | [Arabic](./README_AR.md) | [Hungarian](./README_HU.md) | [Srpski](./README_RS.md) | [Română](./README_RO.md)
1616

1717
## 🚩 Overview
1818

README_RO.md

+183
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
# Eliza
2+
3+
<img src="./docs/static/img/eliza_banner.jpg" alt="Eliza Banner" width="100%" />
4+
5+
## Funcționalități
6+
7+
- 🛠 Conectori compleți pentru Discord, Twitter și Telegram
8+
- 👥 Suport pentru agenți multipli și camere
9+
- 📚 Ingestie și interacțiune ușoară cu documentele tale
10+
- 💾 Memorie recuperabilă și stocare de documente
11+
- 🚀 Extensibil în mod ridicat – creează propriile acțiuni și clienți pentru a extinde capacitățile
12+
- ☁️ Suportă multe modele, inclusiv Llama local, OpenAI, Anthropic, Groq și altele
13+
- 📦 Funcționează perfect!
14+
15+
## Pentru ce pot să-l folosesc?
16+
17+
- 🤖 Chatbot-uri
18+
- 🕵️ Agenți autonomi
19+
- 📈 Gestiunea proceselor de afaceri
20+
- 🎮 NPC-uri în jocuri video
21+
22+
# Început
23+
24+
**Cerințe preliminare (OBLIGATORIU):**
25+
26+
- [Python 2.7+](https://www.python.org/downloads/)
27+
- [Node.js 23.3+](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
28+
- [pnpm](https://pnpm.io/installation)
29+
30+
### Edite fișierul .env
31+
32+
- Copiați `.env.example` în `.env` și completați valorile corespunzătoare
33+
- Editați variabilele de mediu pentru TWITTER pentru a adăuga numele de utilizator și parola botului dvs.
34+
35+
### Edite fișierul de personaj
36+
37+
- Verificați fișierul `src/core/defaultCharacter.ts` – îl puteți modifica
38+
- De asemenea, puteți încărca personaje cu comanda `pnpm start --characters="path/to/your/character.json"` și rula mai mulți boți în același timp.
39+
40+
După ce ați configurat fișierul .env și fișierul de personaj, puteți porni botul cu următoarea comandă:
41+
42+
```
43+
pnpm i
44+
pnpm start
45+
```
46+
47+
# Personalizarea Eliza
48+
49+
### Adăugarea de acțiuni personalizate
50+
51+
Pentru a evita conflicte în directorul core, vă recomandăm să adăugați acțiuni personalizate într-un director `custom_actions` și apoi să le includeți în fișierul `elizaConfig.yaml`. Consultați fișierul `elizaConfig.example.yaml` pentru un exemplu.
52+
53+
## Rularea cu modele diferite
54+
55+
### Rularea cu Llama
56+
57+
Puteți rula modele Llama 70B sau 405B setând variabila de mediu `XAI_MODEL` la `meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo` sau `meta-llama/Meta-Llama-3.1-405B-Instruct`.
58+
59+
### Rularea cu Grok
60+
61+
Puteți rula modele Grok setând variabila de mediu `XAI_MODEL` la `grok-beta`.
62+
63+
### Rularea cu OpenAI
64+
65+
Puteți rula modele OpenAI setând variabila de mediu `XAI_MODEL` la `gpt-4o-mini` sau `gpt-4o`.
66+
67+
## Cerințe suplimentare
68+
69+
Este posibil să fie necesară instalarea Sharp. Dacă întâmpinați o eroare la pornire, încercați să îl instalați cu următoarea comandă:
70+
71+
```
72+
pnpm install --include=optional sharp
73+
```
74+
75+
# Configurarea mediului
76+
77+
Va trebui să adăugați variabile de mediu în fișierul dvs. `.env` pentru a vă conecta la diverse platforme:
78+
79+
```
80+
# Variáveis de ambiente obrigatórias
81+
DISCORD_APPLICATION_ID=
82+
DISCORD_API_TOKEN= # Token do bot
83+
OPENAI_API_KEY=sk-* # Chave API do OpenAI, começando com sk-
84+
ELEVENLABS_XI_API_KEY= # Chave API do elevenlabs
85+
GOOGLE_GENERATIVE_AI_API_KEY= # Chave API do Gemini
86+
87+
# CONFIGURAÇÕES DO ELEVENLABS
88+
ELEVENLABS_MODEL_ID=eleven_multilingual_v2
89+
ELEVENLABS_VOICE_ID=21m00Tcm4TlvDq8ikWAM
90+
ELEVENLABS_VOICE_STABILITY=0.5
91+
ELEVENLABS_VOICE_SIMILARITY_BOOST=0.9
92+
ELEVENLABS_VOICE_STYLE=0.66
93+
ELEVENLABS_VOICE_USE_SPEAKER_BOOST=false
94+
ELEVENLABS_OPTIMIZE_STREAMING_LATENCY=4
95+
ELEVENLABS_OUTPUT_FORMAT=pcm_16000
96+
97+
TWITTER_DRY_RUN=false
98+
TWITTER_USERNAME= # Nome de usuário da conta
99+
TWITTER_PASSWORD= # Senha da conta
100+
TWITTER_EMAIL= # Email da conta
101+
102+
X_SERVER_URL=
103+
XAI_API_KEY=
104+
XAI_MODEL=
105+
106+
107+
# Para perguntar coisas ao Claude
108+
ANTHROPIC_API_KEY=
109+
110+
# EVM
111+
EVM_PRIVATE_KEY=EXAMPLE_WALLET_PRIVATE_KEY
112+
113+
# Solana
114+
SOLANA_PRIVATE_KEY=EXAMPLE_WALLET_PRIVATE_KEY
115+
SOLANA_PUBLIC_KEY=EXAMPLE_WALLET_PUBLIC_KEY
116+
117+
# Fallback Wallet Configuration (deprecated)
118+
WALLET_PRIVATE_KEY=EXAMPLE_WALLET_PRIVATE_KEY
119+
WALLET_PUBLIC_KEY=EXAMPLE_WALLET_PUBLIC_KEY
120+
121+
BIRDEYE_API_KEY=
122+
123+
SOL_ADDRESS=So11111111111111111111111111111111111111112
124+
SLIPPAGE=1
125+
RPC_URL=https://api.mainnet-beta.solana.com
126+
HELIUS_API_KEY=
127+
128+
129+
## Telegram
130+
TELEGRAM_BOT_TOKEN=
131+
132+
TOGETHER_API_KEY=
133+
```
134+
135+
# Configurarea inferenței locale
136+
137+
### Configurarea CUDA
138+
139+
Dacă aveți un GPU NVIDIA, puteți instala CUDA pentru a accelera dramatic inferența locală.
140+
141+
```
142+
pnpm install
143+
npx --no node-llama-cpp source download --gpu cuda
144+
```
145+
146+
Asigurați-vă că ați instalat CUDA Toolkit, inclusiv cuDNN și cuBLAS.
147+
148+
### Rularea locală
149+
150+
Adăugați `XAI_MODEL` și setați-l la una dintre opțiunile de mai sus din [Rularea cu Llama](#rularea-cu-llama) – puteți lăsa `X_SERVER_URL` și `XAI_API_KEY` necompletate, modelul va fi descărcat de pe Hugging Face și interogările vor fi făcute local.
151+
152+
# Clienți
153+
154+
## Bot Discord
155+
156+
Pentru ajutor la configurarea Bot-ului Discord, consultați: https://discordjs.guide/preparations/setting-up-a-bot-application.html
157+
158+
# Dezvoltare
159+
160+
## Teste
161+
162+
Pentru a rula suita de teste:
163+
164+
```bash
165+
pnpm test # Execută testele o dată
166+
pnpm test:watch # Execută testele în modul watch
167+
```
168+
169+
Pentru teste specifice bazei de date:
170+
171+
```bash
172+
pnpm test:sqlite # Execută testele cu SQLite
173+
pnpm test:sqljs # Execută testele cu SQL.js
174+
```
175+
176+
Testele sunt scrise folosind Jest și pot fi găsite în fișierele `src/**/*.test.ts`. Mediul de testare este configurat pentru:
177+
178+
- Încărcarea variabilelor de mediu din `.env.test`
179+
- Utilizarea unui timeout de 2 minute pentru teste de lungă durată
180+
- Suport pentru module ESM
181+
- Rularea testelor în secvență (`--runInBand`)
182+
183+
Pentru a crea teste noi, adăugați un fișier `.test.ts` adiacent codului pe care îl testați.

docs/docs/guides/local-development.md

+39-9
Original file line numberDiff line numberDiff line change
@@ -8,37 +8,61 @@ This guide covers setting up and working with Eliza in a development environment
88

99
## Prerequisites
1010

11-
Before you begin, ensure you have:
11+
You can develop either in a **dev container** or directly on your **host machine**.
12+
13+
### Requirements:
1214

1315
```bash
1416
# Required
15-
Node.js 23+
16-
pnpm
17+
Node.js (v23+; not required if using the dev container)
18+
pnpm (not required if using the dev container)
1719
Git
1820

19-
# Optional but recommended
20-
VS Code
21-
Docker (for database development)
22-
CUDA Toolkit (for GPU acceleration)
21+
VS Code (mandatory for using the dev container or coding)
22+
Docker (mandatory for using the dev container or database development)
23+
CUDA Toolkit (optional, for GPU acceleration)
2324
```
2425
2526
## Initial Setup
2627
2728
### 1. Repository Setup
2829
30+
Clone the repository and navigate to the project directory:
31+
2932
```bash
3033
# Clone the repository
3134
git clone https://github.com/elizaos/eliza.git
3235
cd eliza
36+
```
37+
38+
### 2. (Optional) Run Inside a Dev Container
39+
40+
1. Open the project directory in **VS Code**:
41+
```bash
42+
code .
43+
```
44+
45+
2. In the bottom-right corner, you'll see a popup:
46+
**"Reopen in Container"** – Click it.
47+
48+
- If you don't see the popup or miss it, press `F1`, type:
49+
**"Reopen in Container"**, and select it.
50+
51+
3. Wait for the container to initialize.
3352
53+
4. Open a terminal (hotkey: `Ctrl+Shift+\``) and run commands from the **container terminal** going forward.
54+
55+
### 3. Setup dependencies
56+
57+
```bash
3458
# Install dependencies
3559
pnpm install
3660
3761
# Install optional dependencies
3862
pnpm install --include=optional sharp
3963
```
4064
41-
### 2. Environment Configuration
65+
### 4. Environment Configuration
4266
4367
Create your development environment file:
4468
@@ -56,7 +80,7 @@ XAI_API_KEY= # Leave blank for local inference
5680
XAI_MODEL=meta-llama/Llama-3.1-7b-instruct # Local model
5781
```
5882
59-
### 3. Local Model Setup
83+
### 5. Local Model Setup
6084
6185
For local inference without API dependencies:
6286
@@ -106,10 +130,16 @@ pnpm run dev --characters="characters/my-character.json"
106130
pnpm start:client
107131
```
108132
133+
NOTE: If you are using devcontainer, add --host argument to client:
134+
```
135+
pnpm start:client --host
136+
```
137+
109138
Look for the message:
110139
` ➜ Local: http://localhost:5173/`
111140
Click on that link or open a browser window to that location. Once you do that you should see the chat interface connect with the system and you can start interacting with your character.
112141
142+
113143
## Database Development
114144
115145
### SQLite (Recommended for Development)

0 commit comments

Comments
 (0)