Ugrás a fő tartalomhoz

Beállítás

Az IntraCord egy Next.js felhasználói felület (ui/), egy FastAPI-háttér (api/) és egy Pipecat alapú hangcsatorna (pipecat/), egy Redis git almodul, Mingre és Mingre.

Állítsa be

Szüksége van Gitre, egy helyi Docker-motorra (például a Docker Desktopra) és a VS-kódra a Dev Containers kiterjesztéssel.

  1. Fork IntraCord-hq/IntraCord és klónozza a villát:
git clone https://github.com/<YOUR_HANDLE>/IntraCord
cd IntraCord
  1. Nyissa meg a mappát a VS Code alkalmazásban, és futtassa a Dev Containers: Reopen in Container parancsot. Az első összeállítás néhány percet vesz igénybe – elindítja a Postgrest, a Redist és a MinIO-t, elindítja a Python venv-t, létrehozza a .env fájlokat, és telepíti a felhasználói felület függőségeit. A későbbi nyitás gyors.

  2. Indítsa el a háttérprogramot a tárolóban található terminálról. A szkript megvárja az állapotellenőrzést, és kinyomtat egy állapot-összefoglalót, így amikor sikeresen kilép, a háttérrendszer feláll:

bash scripts/start_services_dev.sh
  1. Indítsa el a felhasználói felületet a tárolóban lévő második terminálról:
cd ui && npm run dev -- --hostname 0.0.0.0
  1. Nyissa meg az alkalmazást a http://localhost:3000 címen.

Ha ezek a lépések nem működnek az Ön számára, nyissa meg a problémát a [GitHub] oldalon (https://github.com/IntraCord-hq/IntraCord/issues).

Cloned IntraCord-hq/IntraCord directly instead of your fork?

Futtassa egyszer a bash scripts/setup_fork.sh-t. Megkéri a villa URL-címét, rámutat a origin elemre, és hozzáadja a upstream IntraCord-hq/IntraCord-t. Lásd: Villa és felfelé irányuló távirányítók.

No VS Code? No devcontainer at all?

A devcontainer fej nélkül fut a Dev Container CLI-n, vagy mindent futtathat közvetlenül a gazdagépen.

Napi workflow

MilyenHogyan
Indítsa újra a háttérprogramotFuttassa újra a bash scripts/start_services_dev.sh-t — először leállítja a régi folyamatokat
A háttér leállításabash scripts/stop_services.sh
Háttérnaplóktail -f logs/latest/*.log
Kód újratöltéseSzerkesztések a api/ automatikus újratöltés alatt; A ari_manager, campaign_orchestrator és arq háttérprogram újraindítására van szükség
A konténer újjáépítéseCsak akkor, ha a .devcontainer/, api/requirements*.txt vagy pipecat/ módosul – az egyszerű forrás szerkesztéséhez nincs szükség rá
Szinkronizálja a pipecat almodultgit submodule update --init --recursive egy részmodul ütésének meghúzása után

Hibakeresés

A repo .vscode/launch.json hibakeresési konfigurációkat szállít minden háttérszolgáltatáshoz és a pytesthez. Ha a hibakereső alatt szeretné futtatni a start szkript helyett:

  1. Ha fut, állítsa le a szkript által kezelt háttérrendszert, hogy a portok szabadok legyenek:
bash scripts/stop_services.sh
  1. A VS Code Futtatás és hibakeresés paneljén válasszon konfigurációt, és nyomja meg az F5 billentyűt:
KonfigurációMit futtat
API: Uvicorn (újratöltés)A FastAPI háttérprogram automatikus újratöltéssel (port a UVICORN_PORT-ről a api/.env-ben, alapértelmezett 8000)
API: Arq dolgozó (óra) / API: Kampányvezető / API: ARI menedzserA többi háttérszolgáltatás – szükség szerint indítsa el őket az Uvicorn mellett
Tesztek: API (pytest, teljes programcsomag / aktuális fájl)pytest a hibakereső alatt, a api/.env.test
Tesztek: Pipecat (pytest, aktuális fájl) / Python: Aktuális fájlHibakeresés egy pipecat tesztben vagy bármely önálló szkriptben

Minden konfiguráció betölti a api/.env-t (a tesztkonfigurációk api/.env.test-t használnak), és beállítják a justMyCode: false-t, így beléphet a FastAPI-ba és a pipecat kódba – a pipecat/ almodul töréspontjai működnek, mert szerkeszthető. A devcontainerben a Python értelmező előre ki van választva; gazdagép által felügyelt beállításnál válassza ki a ./venv/bin/python elemet a Python: Select Interpreter segítségével először.

Az adattár elrendezése

ÚtvonalMi van ott
ui/Next.js frontend — a workflow-készítő, Dashboard és ügynökszerkesztő
api/FastAPI háttérrendszer — REST API, kampányszervezés, telefonálás, ARQ háttérmunkások
pipecat/Git almodul a voice pipeline-hoz (STT → LLM → TTS)
docs/Ez a Docusaurus dokumentációs webhely MDX-ben íródott, előnézete npm start
sdk/Python/TypeScript SDK-k az IntraCord programozott vezetéséhez
scripts/Szkriptek beállítása, üzembe helyezése és frissítése
deploy/távoli telepítés által használt nginx és coturn konfigurációs sablonok

Hozzájárulás a változáshoz

  1. Hozzon létre egy ágat, és hajtsa végre a változtatást.
  2. Nyomja a villájához (origin), és nyissa meg a húzási kérelmet a IntraCord-hq/IntraCord:main ellen.
  3. A karbantartó felülvizsgálja és egyesíti.

A hibajelentések és a funkcióötletek a GitHub Issues és az Ideas lapon mennek keresztül. A good first issue címkével ellátott problémák jó kiindulópont. Ha munka közben kérdése van, használja a IntraCord Community Slack oldalt.

Saját buildet telepítene az upstream hozzájárulás helyett? Ehelyett tekintse meg a Kitelepítések részt.