* chore: remove legacy orchestrator, trading and one-off script leftovers The repository still carried the pre-evOo prototype: a Python orchestrator, the old HTML "evoo-platform" cockpit (whose test ran in the root unit suite), an apex-trading package, the hot-reload deploy.sh for it, a permissions manifest, an architecture note with local file links, agent handoff notes, a Steve Jobs persona template and about ninety one-off scripts that probe a developer database with hard-coded local URLs. None of it is used by the product, CI or the real deploy in ops/evo-deploy. Delete those files, drop the evoo-platform test glob from the root vitest config, the Cockpit section from .env.example and the dead biome and gitignore entries, and update the docs that listed the removed tools. scripts/start-tmux.sh no longer starts the removed sentinel and resolves the checkout from its own location instead of a machine-specific path; scripts/seed-ollama.ts requires DATABASE_URL instead of falling back to a local URL with a username. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u * fix(web): drop trading and persona prompts from the conversation shell The web shell still showed leftovers from the trading prototype: composer chips with German trading and "Steve Jobs" prompts, trading suggestion chips under the empty conversation line, a German trading hero for the empty transcript, and a German "data protection" status panel in the sidebar. They suggested actions the product does not have and added persistent chrome. Remove the composer chips and their helper, the empty-state chips and the hero (the empty conversation keeps its existing one-line start hint), the sidebar trading indicator and the data trust panel. The new-bot E2E now asserts the plain empty state; the sidebar spec no longer expects the trading status, and the placeholder Steve Jobs spec with no assertions is gone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u Co-authored-by: cynarAI <cynarAI@users.noreply.github.com> * refactor: remove the trading bot status integration With the sidebar trading indicator gone, the only remaining consumer of the trading bot status was a banner in General settings that reused the same component. evOo is a personal assistant; a status proxy and poller for one external trading service, configured through service-specific TRADING_BOT_URL and VITE_TRADING_BOT_URL variables, does not belong in the core product. Remove the settings banner and its prop plumbing, the web poller, the indicator component, the /api/trading-bot/status proxy, the shared core contract, the env loading and both variables from .env.example, together with their tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u * chore: remove one-off database scripts and a stale review note packages/db carried four hand-run scripts outside the package build that query or seed a developer database with a hard-coded connection string, one of them for a specific account. docs/VOICE-FIRST-REVIEW.md was a one-time verification note for a workflow that no longer exists and named private machines and local paths. Nothing references them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u * chore: replace machine-specific paths and addresses with placeholders ORIGIN.md pinned the intended checkout to an absolute path under a personal home directory, docs/LOCAL-SETUP.md listed folders on one developer's machine, and two tests used what looks like a real tailnet address. Use a home-relative path, drop the machine-specific folder list, and use 100.100.100.100 in the tests; it is still inside 100.64.0.0/10, so both tests check the same thing as before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u * test(web): drop the trading status from the shell contrast test main's contrast test now waits for the sidebar trading status before measuring; this branch removes that status. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: cynarAI <cynarAI@users.noreply.github.com>
117 lines
2.9 KiB
Markdown
117 lines
2.9 KiB
Markdown
# Local Setup / Lokales Setup — evOo
|
|
|
|
**DE** · Startbefehle für die lokale Programmier-Maschine.
|
|
**EN** · Start commands for the local programming machine.
|
|
|
|
## Prerequisites / Voraussetzungen
|
|
|
|
- Node.js **≥ 22** (22.x / 24.x / 26+; not 23.x or 25.x)
|
|
- **pnpm 9** (`corepack enable && corepack prepare pnpm@9.15.0 --activate`)
|
|
- **Docker** (Postgres + optional sandboxes / Kokoro)
|
|
- Git, OpenSSL
|
|
|
|
## 1. Env
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
Minimum secrets (use independent long random values):
|
|
|
|
| Variable | Notes |
|
|
|----------|-------|
|
|
| `POSTGRES_PASSWORD` | e.g. `openssl rand -hex 16` |
|
|
| `DATABASE_URL` | Same password; host port **5433** with postgres-host overlay |
|
|
| `BETTER_AUTH_SECRET` | long random |
|
|
| `ENCRYPTION_KEY` | long random |
|
|
| `SCREEN_PROXY_SECRET` | long random |
|
|
| `SANDBOX_SUPERVISOR_TOKEN` | required for Docker sandboxes |
|
|
|
|
Optional: `OPENROUTER_API_KEY`, Composio/Pipedream, `KOKORO_BASE_URL`.
|
|
|
|
## 2. Postgres
|
|
|
|
```bash
|
|
docker compose --env-file .env \
|
|
-f infra/compose/docker-compose.yml \
|
|
-f infra/compose/docker-compose.postgres-host.yml \
|
|
up postgres -d
|
|
```
|
|
|
|
Default host URL shape:
|
|
|
|
```text
|
|
postgresql://rakazo:<POSTGRES_PASSWORD>@127.0.0.1:5433/rakazo
|
|
```
|
|
|
|
(DB role/db names may still say `rakazo` — tech debt; do not rename without migration.)
|
|
|
|
## 3. Install & migrate
|
|
|
|
```bash
|
|
pnpm install
|
|
pnpm db:generate
|
|
pnpm db:migrate
|
|
```
|
|
|
|
Optional sandbox image:
|
|
|
|
```bash
|
|
pnpm sandbox:build
|
|
```
|
|
|
|
## 4. Dev servers
|
|
|
|
```bash
|
|
pnpm dev
|
|
```
|
|
|
|
Starts API, worker, web, and sandbox-supervisor (turbo filters in root `package.json`).
|
|
|
|
| Surface | URL |
|
|
|---------|-----|
|
|
| App (Vite) | http://127.0.0.1:**5173** |
|
|
| API | http://127.0.0.1:**3100** |
|
|
|
|
Desktop:
|
|
|
|
```bash
|
|
pnpm --filter @rakazo/desktop dev
|
|
```
|
|
|
|
## 5. Local models / Ollama seed
|
|
|
|
```bash
|
|
pnpm exec tsx scripts/seed-ollama.ts
|
|
```
|
|
|
|
Pi local provider: `packages/adapters/src/pi-local-provider.ts`.
|
|
|
|
## 6. Voice / Kokoro (not vendored)
|
|
|
|
Voice blobs are excluded from this repo. Run Kokoro-FastAPI yourself:
|
|
|
|
```bash
|
|
docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest
|
|
export KOKORO_BASE_URL=http://127.0.0.1:8880
|
|
```
|
|
|
|
Then connect **Kokoro** in Voice settings. See [kokoro-voice.md](./kokoro-voice.md).
|
|
|
|
## 7. Antigravity / future tools
|
|
|
|
| Tool | Path |
|
|
|------|------|
|
|
| self-update | `packages/core/src/self-update.ts` |
|
|
| local-stack | `apps/desktop/src/local-stack.ts` |
|
|
| pi-local-provider | `packages/adapters/src/pi-local-provider.ts` |
|
|
| seed-ollama | `scripts/seed-ollama.ts` |
|
|
|
|
## Tech debt: `@rakazo/*` package names
|
|
|
|
Display brand is **evOo**. Workspace package names remain `@rakazo/api`, `@rakazo/web`, `@rakazo/core`, … and some env/compose identifiers still use `RAKAZO_*` / DB name `rakazo`. Renaming would break imports and lockfile; track as follow-up.
|
|
|
|
## Source
|
|
|
|
Clean history cut from `cynarAI/evoo` commit `f00577b` on branch `antigravity-handoff/project-timeline` (Voice First + project timeline). This repo does **not** carry the old multi-remote history.
|