Udvikler

Installation af Pi og konfiguration af OmniProxy

Ønsker du en assistent i din terminal, der kan læse filer og inspicere projekter, men er bekymret for, at installation og konfiguration bliver for kompliceret? Pi er letvægts og indeholder som standard kun et minimalt sæt funktioner. Efter installationen kan du gradvist tilføje kommandoer, arbejdsgange og grænseflader, der passer til din måde at arbejde på.

Dokumentation gennemgået
9. okt. 2026
Testet version
Pi 1.1.0

Pi er en lille terminalassistent – et program, der taler direkte med dig i kommandolinjen, læser filer og udfører opgaver. Den har en kort system-prompt og kun få værktøjer som standard. Hvis du har brug for andre kommandoer, arbejdsgange eller grænseflader, kan du tilføje dem senere via udvidelser. Udvidelser er komponenter, der tilføjer funktioner til Pi, og du kan dele dem med andre, når du har oprettet dem.

Underagenter delegerer en del af en opgave til en anden assistent, mens plantilstand organiserer trinene, før udførelsen begynder. Ingen af disse funktioner er inkluderet som standard, men du kan bede Pi om at bygge dem eller installere pakker, som andre har delt.

Før du starter

macOS og Linux bruger et installationsscript – en enkelt kommando, der automatisk downloader og installerer Pi. På Windows skal du bruge PowerShell-kommandoen fra Pi’s hjemmeside. PowerShell er det kommandolinjemiljø, der følger med Windows. Du kan også installere Pi i WSL, Linux-miljøet der er tilgængeligt i Windows.

Hvis du vælger at installere med npm, skal du bruge Node.js 22.19 eller nyere. npm er pakkehåndteringen, der bruges med Node.js, og den kan installere Pi fra kommandolinjen.

macOS Linux

install.sh

  • curl det officielle script
  • Installationsprogrammet fastlåser afhængighederne
  • Opdater med pi update

Windows

install.ps1

  • Officiel PowerShell-kommando
  • Git for Windows leverer Bash
  • Du kan også bruge WSL

Node er allerede installeret

npm

  • Kræver Node 22.19+
  • Pakkenavnet er pi-coding-agent
  • Tilføj --ignore-scripts
Installationsscriptet fastlåser afhængigheder. npm-installationen fastlåser ikke transitive afhængigheder og kræver --ignore-scripts.

Installer og start Pi for første gang

Åbn en terminal på macOS eller Linux og kør:

curl -fsSL https://pi.dev/install.sh | sh

Åbn PowerShell på Windows og kør:

powershell -c "irm https://pi.dev/install.ps1 | iex"

Hvis Node.js 22.19 eller nyere allerede er installeret, kan du også bruge den alternative kommando fra Quickstart:

npm install -g --ignore-scripts @earendil-works/pi-coding-agent

Installationsscriptet kan holde pause for at stille spørgsmål i en interaktiv terminal. Følg anvisningerne på skærmen for at fortsætte. Hvis du allerede har en kompatibel version af Node, vil denne npm-kommando ikke stille spørgsmål. For at installere Pi i en anden mappe, skal du tilføje --prefix /your/directory. Den 2026-10-09 installerede dette Pi 1.1.0.

En normal npm-installation kræver ikke afhængigheds-livscyklusscripts, hvilket er scripts, som pakker kører automatisk under installationen. Installationsscriptet fastlåser afhængigheder; derefter opdateres Pi med pi update. Til en npm-installation skal du bruge den opdateringsmetode, som din pakkehåndtering tilbyder. Nix-brugere bør installere fra Pi’s flake. En flake er en Nix-konfiguration, der beskriver software og dens afhængigheder, og pi update kan ikke opdatere en Nix-installation.

Efter installationen skal du først bekræfte, at din terminal kan finde Pi:

pi --version

På Windows anbefales det for de fleste lokale brugere at installere Git for Windows, hvis du vil have modeller til at udføre Bash-kommandoer. Bash er det kommandamiljø, Pi bruger til at køre visse kommandoer. Pi tjekker shellPath indstillingen i ~/.pi/agent/settings.json, Git Bash under Program Files, og derefter bash.exe på PATH, i den rækkefølge. shellPath angiver placeringen af Bash, mens PATH er listen over mapper, som systemet gennemsøger efter kommandoer.

Når du har startet Pi, kan du indtaste !printf 'Bash is working\n' for at tjekke den. Hvis dine filer og værktøjer allerede er i WSL, skal du installere Pi i det Linux-miljø ved at følge Quickstart.

Gå derefter ind i den mappe, du vil have Pi til at inspicere eller arbejde på, og start den:

cd /path/to/folder
pi

Denne mappe bliver Pi’s nuværende arbejdsområde. Pi bruger den til at finde filer og konfiguration samt til at gruppere sessioner.

Hent forbindelsesværdier fra OmniProxy

Først skal du hente disse tre værdier fra OmniProxy:

baseUrl: https://your-omniproxy-origin.example/v1
apiKey:  <YOUR_OMNIPROXY_API_KEY>
Model ID: Copy the full ID from the current OmniProxy model list

baseUrl er API-slutpunktet, som Pi sender anmodninger til, og det skal inkludere /v1. apiKey er nøglen, der bruges til at få adgang til API’et. Model ID er navnet på den model, der skal kaldes, og skal kopieres fuldt ud fra den aktuelle OmniProxy-modelliste.

Indstil api til openai-completions, som vist i eksemplet med kompatibelt API. Dette felt fortæller Pi, hvilket API-format der skal bruges, når der sendes anmodninger.

Kopiér hele model-ID’et, inklusive eventuelle skråstreger i navnet. Den 2026-10-09 var de to reference-ID’er i udbyderens dokumentation gemini-3.8-flash og grok-4.7. Kopiér ikke et navn, der ikke findes på listen.

Indtast værktøjskonfigurationen

Pi’s brugerdefinerede modelkonfiguration gemmes i models.json. Denne fil er placeret i agent-mappen, som som standard er ~/.pi/agent, så dens fulde sti er ~/.pi/agent/models.json. Hvis PI_CODING_AGENT_DIR miljøvariablen er indstillet, bruger Pi den mappe, der er angivet af den variabel i stedet. En miljøvariabel er en konfigurationsværdi, som systemet leverer til programmer, så de kan læse den.

Indtast konfigurationen som vist i eksemplet med kompatibelt API:

{
  "providers": {
    "omniproxy": {
      "baseUrl": "https://your-omniproxy-origin.example/v1",
      "api": "openai-completions",
      "apiKey": "<YOUR_OMNIPROXY_API_KEY>",
      "models": [
        { "id": "gemini-3.8-flash", "input": ["text"] },
        { "id": "grok-4.7", "input": ["text"] }
      ]
    }
  }
}

providers lister de tilsluttede tjenester, mens models lister de modeller, der kan vælges. Hver models id skal matche det fulde model-ID i den aktuelle OmniProxy-modelliste. input angiver, at modellen er konfigureret her til tekstinput.

apiKey kan indtastes som en bogstavelig værdi eller som $NAME eller ${NAME} så Pi læser den fra en miljøvariabel. En værdi, der starter med ! behandles som en kommando og udføres for hver anmodning. Commit aldrig en rigtig nøgle til et repository. Hvis gatewayen ikke validerer nøgler, kan du indtaste en pladsholder-streng, der kun bruges på din lokale maskine. Den 2026-10-09 læste Pi filen med denne konfiguration.

Åbning af /model genindlæser denne fil. /model er grænsefladen i Pi til visning og valg af modeller. Brugerdefinerede modeller vises ikke i /model før Pi kan løse deres legitimationsoplysninger. Når du har valgt en model, skal du trykke på Ctrl+S for at gemme den som standardmodel for nye sessioner.

Fil

models.json

  • Standardmappe: ~/.pi/agent
  • Tilføj en post under providers
  • Indstil api til completions

Adresse

baseUrl

  • Inkluder /v1
  • apiKey kan referere til en variabel
  • Model-id'et skal være præcist

Vælg

/model

  • Åbning af den genindlæser filen
  • Vælg den model, du lige har tilføjet
  • Ctrl+S gemmer den som standard
Efter redigering af filen skal du åbne /model i Pi og bekræfte, at modellerne vises.

Bekræft med en rigtig opgave

Når konfigurationen er fuldført, kan du udføre et ikke-interaktivt tjek i en mappe, der indeholder filer. Ikke-interaktiv tilstand betyder, at Pi fuldfører denne enkelte opgave og derefter afsluttes i stedet for at indgå i en igangværende samtale. Erstat værdien efter --model med det fulde ID fra den aktuelle OmniProxy-liste:

pi -p --provider omniproxy --model gemini-3.8-flash --tools read "Read the first line of the file you specify. Do not modify the file."

Her, --tools read aktiverer kun læseværktøjet, og opgaven instruerer også eksplicit Pi i ikke at ændre filen. Den 2026-10-09 læste Pi 1.1.0 filindholdet korrekt. Det første svar tog cirka to minutter.

Du kan også bruge interaktiv tilstand: gå ind i mappen, kør pi, og vælg derefter en model med /model. Et eksempel på en opgave i Quickstart beder Pi om at forklare, hvordan repositoryet er organiseret, og hvordan man kører dets tjek. Observer, om den læser filerne og giver en forklaring, og bekræft derefter kilden og model-ID’et i OmniProxy’s anmodningslogfiler.

Start

pi starter

  • Skift først til mappen med cd
  • pi --version producerer output
  • Modelnavnet vises nederst i grænsefladen

Opgave

Den læste mappen

  • Spørg hvordan repositoryet er organiseret
  • Gennemgå filerne, den lister
  • Stol ikke kun på en vellykket konfigurationslagring

Logfiler

Synlig i gatewayen

  • Kilden er Pi
  • Model-ID matcher
  • Hold nøglen på den lokale maskine
Når modelnavnet vises nederst i grænsefladen, skal du også fuldføre en rigtig opgave.

Almindelige fejl

  • pi kan ikke findes: Genåbn terminalen og prøv pi --version igen. Ved en npm-installation skal du bekræfte, at den globale bin-mappe er på PATH.
  • De brugerdefinerede modeller vises ikke i /model: Bekræft at models.json er i ~/.pi/agent/, bekræft at apiKey kan løses, og genåbn derefter /model.
  • Windows rapporterer, at Bash ikke kan findes: Installer Git for Windows, eller indstil shellPath i ~/.pi/agent/settings.json. Backslashes i JSON skal skrives to gange.
  • Anmodningen afvises: Tjek at api er openai-completions og at baseUrl ender på /v1. Aktivér ikke yderligere kompatibilitetsindstillinger, blot fordi tjenesten beskriver sig selv som kompatibel.
  • Model-ID’et er ugyldigt: Kopiér det igen fra den aktuelle OmniProxy-liste.

Officielle referencer

For installationskommandoer, se Pi-hjemmesiden og Quickstart. For modelfilen, se Vælg en model og Konfiguration. For Windows-kommandamiljøet, se Kør Pi på Windows. For de model-ID’er, der bruges i eksemplerne, se Gemini-modellisten og xAI-modelsiden.

Erstat alle pladsholdere med værdier fra din egen OmniProxy-konfiguration. Publicér aldrig en rigtig nøgle.

Et gemt resultat eller HTTP 200 alene beviser ikke fuld agentkompatibilitet. Tjek kilden og modellen i OmniProxys anmodningspost.

Officielle kilder · Pi ↗