SPB Git forge

spb/uqo-chat

Public
14commits 1branches 0releases
1.4 MBsize
maindefault branch
17 days agolast push
Python 64.6% TypeScript 33.7% CSS 0.8%
2.9 KB · 78 lines json
Raw Blame History
1{2  "app": "uqo-chat",3  "label": "UQO-Chat — tuteur IA IMM1003 · IMM1033",4  "domain": "www.uqo-chat.app",5  "port": 8190,6  "health_path": "/api/v1/ready",7  "dir": "~/apps/uqo-chat",8  "extra_paths": [],9  "sync_excludes": [10    ".venv/", "venv/", "data/", "__pycache__/", ".pytest_cache/", ".ruff_cache/", ".mypy_cache/",11    "*.egg-info/", ".git/", ".env", "frontend/node_modules/", "frontend/dev-dist/", "content/"12  ],13  "requires": {14    "runtimes": ["pm2", "ngrok", "uv-python@3.12", "uv"],15    "ram_gb": 3,16    "ports": [8190, 8191]17  },18  "ram_mb_observed": 900,19  "size_mb": 12,20  "placement": {21    "pin": null,22    "prefer": "M4M64a",23    "avoid": ["M3U96b", "M1M32"],24    "reason": "API + sandbox Python (sandbox-exec) ; M3U96b réservé hfmarketdata, M1M32 passerelle"25  },26  "processes": [27    {28      "name": "uqo-chat-sandbox",29      "manager": "pm2",30      "script": "{{HOME}}/apps/uqo-chat/sandbox-runner/.venv/bin/python",31      "args": ["-m", "uvicorn", "server:app", "--host", "127.0.0.1", "--port", "8191", "--no-access-log"],32      "interpreter": null,33      "cwd": "{{HOME}}/apps/uqo-chat/sandbox-runner",34      "env": { "SANDBOX_MAX_PARALLEL": "4", "SANDBOX_TOKEN": "{{SANDBOX_TOKEN}}", "PYTHONUNBUFFERED": "1" },35      "cron_restart": null,36      "autorestart": true,37      "max_memory_restart": "2G"38    },39    {40      "name": "uqo-chat-api",41      "manager": "pm2",42      "script": "{{HOME}}/apps/uqo-chat/backend/.venv/bin/python",43      "args": ["-m", "uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8190", "--no-access-log", "--timeout-keep-alive", "75"],44      "interpreter": null,45      "cwd": "{{HOME}}/apps/uqo-chat/backend",46      "env": {47        "APP_ENV": "production",48        "APP_URL": "https://www.uqo-chat.app",49        "CORS_ORIGINS": "https://www.uqo-chat.app",50        "PORT": "8190",51        "DATA_DIR": "{{HOME}}/apps/uqo-chat/data",52        "FRONTEND_DIST": "{{HOME}}/apps/uqo-chat/frontend/dist",53        "SANDBOX_URL": "http://127.0.0.1:8191",54        "SANDBOX_TOKEN": "{{SANDBOX_TOKEN}}",55        "LOG_LEVEL": "INFO",56        "PYTHONUNBUFFERED": "1"57      },58      "cron_restart": null,59      "autorestart": true,60      "max_memory_restart": "3G"61    }62  ],63  "ngrok": { "name": "uqo-chat-ngrok", "url": "www.uqo-chat.app", "port": 8190 },64  "launchd": [],65  "env_overrides": {},66  "hooks": {67    "post_sync": [68      "export PATH=\"$HOME/.local/bin:/opt/homebrew/bin:$PATH\"; cd backend && (test -x .venv/bin/python || uv venv --python 3.12 .venv) && uv pip install -q --python .venv/bin/python -e . && echo '  backend deps ok'",69      "export PATH=\"$HOME/.local/bin:/opt/homebrew/bin:$PATH\"; cd sandbox-runner && (test -x .venv/bin/python || uv venv --python 3.12 .venv) && uv pip install -q --python .venv/bin/python -r requirements.txt && echo '  sandbox deps ok'",70      "mkdir -p data/files && echo '  data ok'"71    ],72    "post_start": []73  },74  "ka_repo": false,75  "source_node": null,76  "rebuild": false77}78