7.3 KiB
VAUCO MASTERPLAN — Chris Christiansen
Sist oppdatert: 2026-05-23 CEST Status: Repo ferdig — GCP gjenstår (A4–A8 neste)
KONTEKST — Hva vi bygger
Ett AI-drevet operativsystem (OPAX) som kjører på Google Cloud. Du er første kunde. Når det virker for deg → selg det til andre.
Repo-oversikt:
| Repo | Hva det er |
|---|---|
OSVauco |
Regler, GCP-scripts, agenter, docs — KJERNEN |
vauco-gemini-tui-bridge |
Din TUI-cockpit |
vauco-os |
Det kundene bruker |
vauco-bootstrap |
Onboarding av nye kunder (→ Terraform-modul i Fase C) |
deep-dream |
Strategisk visjon — aldri deploy herfra |
CLOUD SHELL QUICK-START (kopi-klipp)
Bruk Cloud Shell: https://shell.cloud.google.com
# Steg 1: Klon og sett opp miljø
gcloud config set project propane-will-491900-m5
git clone https://github.com/chrischristiansen-glitch/OSVauco.git ~/OSVauco
cd ~/OSVauco
# Steg 2: Kopier og rediger .env
cp .env.example .env
nano .env
# Fyll ut: BILLING_ACCOUNT_ID, ALERT_EMAIL, GITHUB_APP_INSTALLATION_ID
# Alle andre verdier er ferdig-forhåndsutfylt
# Steg 3: Installer Python-avhengigheter
pip install google-adk google-cloud-aiplatform>=1.111.0 --quiet
# Steg 4: Kjør i rekkefølge (kilde .env først)
source .env
bash infrastructure/00-authcheck.sh
bash infrastructure/01-setupenv.sh
bash infrastructure/07-rag-setup.sh
# *** Kopier RAG_CORPUS_NAME fra output inn i .env ***
nano .env # Legg til: export RAG_CORPUS_NAME="..."
source .env
bash infrastructure/08-memorybank-setup.sh
# *** Kopier MEMORY_ENGINE_NAME fra output inn i .env ***
nano .env # Legg til: export MEMORY_ENGINE_NAME="..."
source .env
bash infrastructure/05-cloudrun-deploy.sh
bash infrastructure/04-observability-setup.sh
# Om kvelden (OBLIGATORISK — unngå 24/7-fakturering):
bash infrastructure/03-teardown.sh
FASE A — Ferdigstill kjernen (GCP oppe)
Mål: Agenten din er live på Google Cloud | Tid: Ca. 2 timer
[ ] A1 — cp .env.example .env og fyll inn verdier
PROJECT_ID=propane-will-491900-m5
REGION=us-central1
BILLING_ACCOUNT_ID=0171F6-057E6B-A260BA
ALERT_EMAIL=chris.christiansen@vauco.no
ORCHESTRATOR_MODEL=gemini-2.0-flash
SUBAGENT_MODEL=gemini-2.0-flash
[ ] A2 — bash infrastructure/00-authcheck.sh
[ ] A3 — bash infrastructure/01-setupenv.sh
[ ] A4 — bash infrastructure/07-rag-setup.sh
OQ-02: Script faller automatisk tilbake til us-east1 om nødvendig
ACTION: Kopier RAG_CORPUS_NAME til .env
[ ] A5 — bash infrastructure/08-memorybank-setup.sh
OQ-01: Python SDK only (auto-installert av script)
ACTION: Kopier MEMORY_ENGINE_NAME til .env
[ ] A6 — bash infrastructure/05-cloudrun-deploy.sh
[ ] A7 — bash infrastructure/04-observability-setup.sh
[ ] A8 — bash infrastructure/03-teardown.sh (kjør hver kveld)
FASE B — Sikring og CI/CD
Mål: Begrenset tilgang og aktiv CI/CD | Tid: 1 time
[ ] B1 — bash infrastructure/02-deploy.sh (IAP på opax.vauco.no)
[ ] B2 — Opprett GitHub PAT og legg i Secret Manager:
gcloud secrets create github-token --data-file=<(echo -n "ghp_TOKEN")
Finn GITHUB_APP_INSTALLATION_ID:
https://github.com/settings/installations → Cloud Build-appen → ID i URL
Fyll inn GITHUB_APP_INSTALLATION_ID i .env
[ ] B3 — bash infrastructure/06-cicd-setup.sh
OQ-04: LØST — Cloud Build 2nd gen, ingen manuell OAuth i Console
Bruker: gcloud builds connections create github (programmatisk)
FASE C — Første salgsmodul
Mål: Ny kunde onboardet på 30 minutter | Tid: Ukentlig arbeid
[ ] C1 — Pakk `vauco-bootstrap` som Terraform-modul for kunde-onboarding
Ressurser per kunde: Cloud Run, Artifact Registry, Cloud Build 2nd gen,
IAP, budsjett-alert, Service Account
Terraform-variabler: customer_id, customer_project_id, customer_region
State-backend: GCS bucket (TF_STATE_BUCKET i .env)
[ ] C2 — Pakk `vauco-os` som kundeflate
[ ] C3 — Første kunde: Medioteq
Region: europe-north1, separat GCP-prosjekt
Kjør: terraform apply -var="customer_id=medioteq"
INFRASTRUKTUR
| Script | Rolle | Status |
|---|---|---|
00-authcheck.sh |
Verifiser gcloud-innlogging | Klar |
01-setupenv.sh |
Aktiver APIs, SA, IAM, budsjett | Klar |
02-deploy.sh |
IAP-deploy på eget domene | Klar |
03-teardown.sh |
Riv ned Cloud Run | Klar |
04-observability-setup.sh |
Monitoring + alerting | Klar |
05-cloudrun-deploy.sh |
ADK-agent til Cloud Run | Klar |
06-cicd-setup.sh |
GitHub → Cloud Build 2nd gen | Oppdatert |
07-rag-setup.sh |
RAG Engine corpus + fallback | Oppdatert |
08-memorybank-setup.sh |
Memory Bank + auto-install | Oppdatert |
09-cost-check.sh |
Kostnadsoversikt + Artifact Registry | Klar |
BEKREFTET GA-API
| API | Status |
|---|---|
google.adk.Agent (ikke LlmAgent) |
Bekreftet GA-API |
load_memory_tool |
Bekreftet fra adk-python samples |
Cloud Build 2nd gen (cloudbuildv2) |
Bekreftet GA — programmatisk GitHub-kobling |
| CMEK ikke for RAG Engine | Ikke støttet (OQ-03) |
CI/CD --no-traffic |
Manuell trafikkbytte — HITL |
| Idempotente scripts | Trygt å kjøre flere ganger |
03-teardown.sh hver kveld |
Agent Runtimes koster 24/7 |
DRIFTSKOSTNADER
| Scenario | Kostnad/mnd |
|---|---|
| Bare deg (dev, teardown daglig) | ~$25-75 |
| 1 betalende kunde (lett prod) | ~$115-280 |
| Medioteq-type (klinisk, compliance) | ~$220-350 |
Breakeven: 1 kunde til $300-500/mnd dekker alle kostnader. Ikke bygg kost-analyse-system nå — spør agenten når GCP er oppe.
KJENTE HULL
| ID | Hva | Workaround / Status |
|---|---|---|
| OQ-01 | Memory Bank — ingen gcloud CLI | Python SDK only |
| OQ-02 | RAG Engine regional availability | Auto-fallback til us-east1 |
| OQ-03 | CMEK ikke for RAG Engine | VPC-SC only |
| OQ-04 | Cloud Build GitHub OAuth | LØST — 2nd gen programmatisk connection |
| OQ-05 | gcloud alpha monitoring ustabil | Fallback til true |
| OQ-06 | Memory Bank auto-discovery | Eksplisitt env var |
| OQ-07 | Monitoring email flag-format | Teste i dev |
| OQ-08 | VPC connector e2-micro regional | Default us-central1 |
TERRAFORM-VEIKART (Fase C)
Terraform introduseres ikke for nåværende infra — gcloud-scripts er tilstrekkelig når vi opererer med ett GCP-prosjekt. Terraform blir relevant ved kunde-onboarding:
| Når | Hva |
|---|---|
| Fase C: Medioteq | vauco-bootstrap → Terraform-modul |
| Per kunde | terraform apply -var="customer_id=X" oppretter isolert GCP-miljø |
| Ressurser per modul | Cloud Run, Cloud Build 2nd gen connection, IAP, budsjett, SA |
| State-backend | GCS bucket (TF_STATE_BUCKET) — én bucket, én state-fil per kunde |
| Fase D | Terraform Cloud for sentralisert state og CI/CD på tvers av kunder |
Terraform-ressurser som er aktuelle:
google_cloudbuildv2_connection— programmatisk GitHub-kobling per kundegoogle_cloudbuildv2_repository— repo-linkgoogle_cloudbuild_trigger— push-til-main triggergoogle_billing_budget— budsjett-alert per kundegoogle_cloud_run_v2_service— Cloud Run-tjeneste
OSVauco-NMTMD-GCOS | propane-will-491900-m5 | us-central1 GitHub: chrischristiansen-glitch/OSVauco