Files
locally-uncensored/scripts/create-chat-stack-probe.mjs
bce78481fd 3.0.6
- Voice (Beta): talk to LU and hear it answer
- Computer control (Beta): a model works in the apps you approve, off by default
- Local models with image input download with their image part
- Create in chat (Beta): ask for an image or a clip in a Cloud chat
- Ten more chat models on LU Cloud
- A running task says what it is doing, and dialogs have a new look
- The Linux packages carry the voice engine
- Ten security fixes in the new features
- A microphone field in the settings, and seven fixes from user reports

Co-authored-by: Alan Vo <101240385+ALANDVO@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 09:43:43 -07:00

39 lines
2.0 KiB
JavaScript

// Runs the desktop UI against the local web stack of the web repository.
//
// 1. In the web repository (the web app), with ports of your own:
// LU_E2E_PORT_BASE=5602 node e2e-local/create-chat/stack.mjs build
// LU_E2E_PORT_BASE=5602 LU_E2E_DESKTOP_ORIGIN=http://localhost:5611 node e2e-local/create-chat/stack.mjs up
// 2. Here:
// LU_E2E_PORT_BASE=5602 node scripts/create-chat-stack-probe.mjs <path to the web repo>
//
// Addresses, the anon key and the seeded test accounts are read from the web
// repository's own lib/env.mjs, so nothing of them is written down twice.
import { spawnSync } from 'node:child_process'
import { existsSync } from 'node:fs'
import { dirname, resolve } from 'node:path'
import { fileURLToPath, pathToFileURL } from 'node:url'
const web = process.argv[2] && resolve(process.argv[2], 'apps/web/e2e-local/create-chat/lib/env.mjs')
if (!web || !existsSync(web)) {
process.stderr.write('Usage: node scripts/create-chat-stack-probe.mjs <path to the web repo> [playwright arguments]\n')
process.exit(1)
}
const stack = await import(pathToFileURL(web).href)
const desktopPort = Number(process.env.LU_STACK_DESKTOP_PORT) || 5611
const account = (u) => JSON.stringify({ email: u.email, password: u.password })
const env = {
...process.env,
LU_STACK_DESKTOP_PORT: String(desktopPort),
LU_STACK_WEB: stack.APP_URL,
// The name the desktop knows the same server by (playwright.stack.config.ts).
LU_STACK_CLOUD: `http://lu-cloud.test:${stack.PORTS.web}`,
LU_STACK_SUPABASE_HOST: stack.SUPABASE_HOST,
LU_STACK_SUPABASE_PORT: String(stack.PORTS.supabase),
LU_STACK_ANON_KEY: stack.ANON_KEY,
LU_STACK_RELEASED: account(stack.USERS.max),
LU_STACK_UNRELEASED: account(stack.USERS.dark),
}
const root = resolve(dirname(fileURLToPath(import.meta.url)), '..')
const run = spawnSync('npx', ['playwright', 'test', '-c', 'playwright.stack.config.ts', ...process.argv.slice(3)], { cwd: root, env, stdio: 'inherit' })
process.exit(run.status ?? 1)