install.sh is the only way in, and it assumes a POSIX shell. ollama launch talos and llmman launch talos both have to answer "talos currently supports macOS and Linux" because of that — not because of anything in the agent.
What this is. An installer for Windows (PowerShell) that does what install.sh does: fetch the versioned tarball from talos-agent.ch/dist/, check the published sha256 and the Ed25519 signature before unpacking, create the venv, install requirements.txt, run pytest and redteam.py in front of the user, write the first-run talos.env (mode restricted to the user), and start nothing. Then doctor has to say the truth about the one thing Windows cannot offer yet: run_shell needs a sandbox (bubblewrap on Linux, sandbox-exec on macOS) and refuses where none exists — that refusal is correct and stays; the installer's closing notes should name it rather than hide it.
Boundaries. site/install.ps1, talos/doctor.py, talos/updater.py if the update path needs a Windows branch, docs. Nothing in the kernel (policy.py, sandbox.py and friends) — a Windows sandbox is its own, later question and goes through the maintainer (see CLAUDE.md, "Changing the security kernel").
Proof. A fresh Windows machine: install, talos doctor, talos ask "…" against a local model (TALOS_MODEL_PROVIDER=ollama), and redteam.py green. Say in the PR what you ran.
install.shis the only way in, and it assumes a POSIX shell.ollama launch talosandllmman launch talosboth have to answer "talos currently supports macOS and Linux" because of that — not because of anything in the agent.What this is. An installer for Windows (PowerShell) that does what
install.shdoes: fetch the versioned tarball fromtalos-agent.ch/dist/, check the published sha256 and the Ed25519 signature before unpacking, create the venv, installrequirements.txt, runpytestandredteam.pyin front of the user, write the first-runtalos.env(mode restricted to the user), and start nothing. Thendoctorhas to say the truth about the one thing Windows cannot offer yet:run_shellneeds a sandbox (bubblewrap on Linux,sandbox-execon macOS) and refuses where none exists — that refusal is correct and stays; the installer's closing notes should name it rather than hide it.Boundaries.
site/install.ps1,talos/doctor.py,talos/updater.pyif the update path needs a Windows branch, docs. Nothing in the kernel (policy.py,sandbox.pyand friends) — a Windows sandbox is its own, later question and goes through the maintainer (seeCLAUDE.md, "Changing the security kernel").Proof. A fresh Windows machine: install,
talos doctor,talos ask "…"against a local model (TALOS_MODEL_PROVIDER=ollama), andredteam.pygreen. Say in the PR what you ran.