diff --git a/AGENTS.md b/AGENTS.md
index 380a9202683..ed769e57f68 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -1,5 +1,14 @@
# AGENTS.md
+## CRITICAL: This Repo Is SergeCode — a Permanent, Separate Fork
+
+SergeCode (github.com/SergeSerb2/SergeCode) is a **permanent hard fork** of `pingdotgg/t3code`. It will **never** be re-merged upstream.
+
+- **NEVER EVER open a PR against, merge into, push to, comment on, or otherwise touch `pingdotgg/t3code`.** Not for any reason.
+- All PRs, issues, and pushes go to `SergeSerb2/SergeCode` only. Always pass `--repo SergeSerb2/SergeCode` explicitly to `gh` commands.
+- Do not add a git remote pointing at `pingdotgg/t3code`. If one exists, treat it as an error and remove it.
+- Before creating any PR, verify the base repository is `SergeSerb2/SergeCode`.
+
## Task Completion Requirements
- `vp check` and `vp run typecheck` must pass before considering tasks completed.
@@ -8,7 +17,7 @@
## Project Snapshot
-T3 Code is a minimal web GUI for using coding agents like Codex and Claude.
+SergeCode is a minimal web GUI for using coding agents like Codex and Claude. It is an independent hard fork of T3 Code that evolves on its own.
This repository is a VERY EARLY WIP. Proposing sweeping changes that improve long-term maintainability is encouraged.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8b734a99bbb..a940efe320b 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,65 +1,7 @@
# Contributing
-## Read This First
+SergeCode is a personal, permanent hard fork of T3 Code maintained at [SergeSerb2/SergeCode](https://github.com/SergeSerb2/SergeCode). It is not accepting external contributions.
-We are not actively accepting contributions right now.
+Nothing in this repository should be contributed upstream to `pingdotgg/t3code`, and upstream's contribution policy does not apply here. Do not open PRs or issues against the upstream repository from this codebase.
-You can still open an issue or PR, but please do so knowing there is a high chance we close it, defer it forever, or never look at it.
-
-If that sounds annoying, that is because it is. This project is still early and we are trying to keep scope, quality, and direction under control.
-
-PRs are automatically labeled with a `vouch:*` trust status and a `size:*` diff size based on changed lines.
-
-If you are an external contributor, expect `vouch:unvouched` until we explicitly add you to [.github/VOUCHED.td](.github/VOUCHED.td).
-
-## What We Are Most Likely To Accept
-
-Small, focused bug fixes.
-
-Small reliability fixes.
-
-Small performance improvements.
-
-Tightly scoped maintenance work that clearly improves the project without changing its direction.
-
-## What We Are Least Likely To Accept
-
-Large PRs.
-
-Drive-by feature work.
-
-Opinionated rewrites.
-
-Anything that expands product scope without us asking for it first.
-
-If you open a 1,000+ line PR full of new features, we will probably close it quickly and remember that you ignored the clearly written instructions.
-
-## If You Still Want To Open A PR
-
-Keep it small.
-
-Explain exactly what changed.
-
-Explain exactly why the change should exist.
-
-Do not mix unrelated fixes together.
-
-If the PR makes anything resembling a UI change, include clear before/after images.
-
-If the change depends on motion, timing, transitions, or interaction details, include a short video.
-
-If we have to guess what changed, we are much less likely to review it.
-
-## Issues First
-
-If you are thinking about a non-trivial change, open an issue first.
-
-That still does not mean we will want the PR, but it gives you a chance to avoid wasting your time.
-
-## Be Realistic
-
-Opening a PR does not create an obligation on our side.
-
-We may close it. We may ignore it. We may ask you to shrink it. We may reimplement the idea ourselves later.
-
-If you are fine with that, proceed.
+If you have found something genuinely broken, feel free to open an issue on this fork, but expect it to be handled at the maintainer's discretion.
diff --git a/README.md b/README.md
index 6aebfc7e8b8..ea4e162b049 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,13 @@
-# T3 Code
+# SergeCode
-T3 Code is a minimal web GUI for coding agents (currently Codex, Claude, Cursor, and OpenCode, more coming soon).
+SergeCode is a minimal web GUI for coding agents (currently Codex, Claude, Cursor, Grok, and OpenCode).
-## Installation
+> [!IMPORTANT]
+> SergeCode is a **permanent, independent hard fork** of [T3 Code](https://github.com/pingdotgg/t3code). It evolves separately and will never be merged back upstream. Do not open PRs or issues against the upstream repository — everything lives at [SergeSerb2/SergeCode](https://github.com/SergeSerb2/SergeCode).
+
+## Prerequisites
> [!WARNING]
-> T3 Code currently supports Codex, Claude, Cursor, and OpenCode.
> Install and authenticate at least one provider before use:
>
> - Codex: install [Codex CLI](https://developers.openai.com/codex/cli) and run `codex login`
@@ -13,43 +15,22 @@ T3 Code is a minimal web GUI for coding agents (currently Codex, Claude, Cursor,
> - Cursor: install [Cursor CLI](https://cursor.com/cli) and run `cursor-agent login`
> - OpenCode: install [OpenCode](https://opencode.ai) and run `opencode auth login`
-### Run without installing
+## Running from source
```bash
-npx t3@latest
+pnpm install
+pnpm dev
```
-Tip: Use `npx t3@latest --help` for the full CLI reference.
-
-### Desktop app
-
-Install the latest version of the desktop app from [GitHub Releases](https://github.com/pingdotgg/t3code/releases), or from your favorite package registry:
+See [package.json](./package.json) scripts for the full set of dev/build/start commands (`pnpm dev:server`, `pnpm dev:web`, `pnpm dev:desktop`, `pnpm build`, ...).
-#### Windows (`winget`)
-
-```bash
-winget install T3Tools.T3Code
-```
-
-#### macOS (Homebrew)
-
-```bash
-brew install --cask t3-code
-```
-
-#### Arch Linux (AUR)
-
-```bash
-yay -S t3code-bin
-```
+Note: the upstream distribution channels (`npx t3`, winget, Homebrew, AUR) ship upstream T3 Code, not SergeCode. Run SergeCode from source or from this repository's own releases.
## Some notes
-We are very very early in this project. Expect bugs.
-
-We are not accepting contributions yet.
+This project is a personal fork and very much a WIP. Expect bugs.
-There's no public docs site yet, checkout the miscellaneous markdown files in [docs](./docs).
+There's no public docs site; check out the miscellaneous markdown files in [docs](./docs).
## Documentation
@@ -58,33 +39,3 @@ There's no public docs site yet, checkout the miscellaneous markdown files in [d
- [Provider guides](./docs/providers/codex.md)
- [Operations](./docs/operations/ci.md)
- [Reference](./docs/reference/encyclopedia.md)
-
-## If you REALLY want to contribute still.... read this first
-
-### Install `vp`
-
-T3 Code uses Vite+ so you'll need to install the global `vp` command-line tool.
-
-#### macOS / Linux
-
-```bash
-curl -fsSL https://vite.plus | bash
-```
-
-#### Windows
-
-```bash
-irm https://vite.plus/ps1 | iex
-```
-
-Checkout their getting started guide for more information: https://viteplus.dev/guide/
-
-### Install dependencies
-
-```bash
-vp i
-```
-
-Read [CONTRIBUTING.md](./CONTRIBUTING.md) before opening an issue or PR.
-
-Need support? Join the [Discord](https://discord.gg/jn4EGJjrvv).
diff --git a/docs/architecture/overview.md b/docs/architecture/overview.md
index ce5a0afe92a..c3590fcf335 100644
--- a/docs/architecture/overview.md
+++ b/docs/architecture/overview.md
@@ -1,6 +1,6 @@
# Architecture
-T3 Code runs as a **Node.js WebSocket server** that wraps `codex app-server` (JSON-RPC over stdio) and serves a React web app.
+SergeCode runs as a **Node.js WebSocket server** that wraps `codex app-server` (JSON-RPC over stdio) and serves a React web app.
```
┌─────────────────────────────────┐
diff --git a/docs/architecture/remote.md b/docs/architecture/remote.md
index 75274095a12..fed43b32215 100644
--- a/docs/architecture/remote.md
+++ b/docs/architecture/remote.md
@@ -1,6 +1,6 @@
# Remote Architecture
-This document describes the target architecture for first-class remote environments in T3 Code.
+This document describes the target architecture for first-class remote environments in SergeCode.
It is intentionally architecture-first. It does not define a complete implementation plan or user-facing rollout checklist. The goal is to establish the core model so remote support can be added without another broad rewrite.
diff --git a/docs/architecture/runtime-modes.md b/docs/architecture/runtime-modes.md
index 956b242e1c1..2ff032d2816 100644
--- a/docs/architecture/runtime-modes.md
+++ b/docs/architecture/runtime-modes.md
@@ -1,6 +1,6 @@
# Runtime modes
-T3 Code has a global runtime mode switch in the chat toolbar:
+SergeCode has a global runtime mode switch in the chat toolbar:
- **Full access** (default): starts sessions with `approvalPolicy: never` and `sandboxMode: danger-full-access`.
- **Supervised**: starts sessions with `approvalPolicy: on-request` and `sandboxMode: workspace-write`, then prompts in-app for command/file approvals.
diff --git a/docs/cloud/t3-code-connect-auth-flow.html b/docs/cloud/t3-code-connect-auth-flow.html
index 038132ee5cb..abc78b7612f 100644
--- a/docs/cloud/t3-code-connect-auth-flow.html
+++ b/docs/cloud/t3-code-connect-auth-flow.html
@@ -353,7 +353,7 @@
Current Topology
Clerk["Clerk
user identity and OAuth"]
- subgraph Relay["T3 Code Relay on Cloudflare"]
+ subgraph Relay["SergeCode Relay on Cloudflare"]
Worker["Relay Worker
HTTP API"]
Queue["APNs delivery queue
with dead-letter queue"]
Hyperdrive["Hyperdrive"]
diff --git a/docs/cloud/t3-connect-clerk.md b/docs/cloud/t3-connect-clerk.md
index 3fd1943f7dc..b5b4bdc1391 100644
--- a/docs/cloud/t3-connect-clerk.md
+++ b/docs/cloud/t3-connect-clerk.md
@@ -183,7 +183,8 @@ after native dependency, main-process, preload, entitlement, provisioning, or si
renderer-only changes can reuse the installed app.
For the default development ports, run `pnpm dev:web` in one terminal and launch the installed
-binary from another:
+binary from another. The installed bundle is still named `T3 Code (Alpha)` — the desktop
+packaging (`productName`, artifact names) has not been rebranded:
```sh
VITE_DEV_SERVER_URL=http://127.0.0.1:5733 \
diff --git a/docs/getting-started/codex-prerequisites.md b/docs/getting-started/codex-prerequisites.md
index 608374d5db9..d8390620b28 100644
--- a/docs/getting-started/codex-prerequisites.md
+++ b/docs/getting-started/codex-prerequisites.md
@@ -1,5 +1,5 @@
# Codex prerequisites
- Install Codex CLI so `codex` is on your PATH.
-- Authenticate Codex before running T3 Code (for example via API key or ChatGPT auth supported by Codex).
-- T3 Code starts the server via `codex app-server` per session.
+- Authenticate Codex before running SergeCode (for example via API key or ChatGPT auth supported by Codex).
+- SergeCode starts the server via `codex app-server` per session.
diff --git a/docs/integrations/source-control-providers.md b/docs/integrations/source-control-providers.md
index c496d5516a6..8ef9851e526 100644
--- a/docs/integrations/source-control-providers.md
+++ b/docs/integrations/source-control-providers.md
@@ -1,10 +1,10 @@
# Source Control Integrations
-T3 Code connects directly to your Git hosting provider so you can create pull requests, review code, and manage repositories without leaving your editor. Work stays in flow—no more jumping between browser tabs and terminal windows.
+SergeCode connects directly to your Git hosting provider so you can create pull requests, review code, and manage repositories without leaving your editor. Work stays in flow—no more jumping between browser tabs and terminal windows.
## Supported Providers
-T3 Code works with the platforms your team already uses:
+SergeCode works with the platforms your team already uses:
- **GitHub** – Pull requests, repository creation, and clone integration
- **GitLab** – Merge requests, repository publishing, and hosted clones
@@ -32,7 +32,7 @@ T3 Code works with the platforms your team already uses:
**Create pull requests while you work**
- Push a branch and create a pull request from the Git panel
-- T3 Code can suggest titles and descriptions based on your commits
+- SergeCode can suggest titles and descriptions based on your commits
- Supports GitHub Pull Requests, GitLab Merge Requests, and Bitbucket Pull Requests
**Stay on top of open reviews**
@@ -55,7 +55,7 @@ Run a quick **Rescan** after setting up a new machine or changing credentials.
### For GitHub (Recommended for most users)
-1. Install the GitHub CLI on the machine running T3 Code:
+1. Install the GitHub CLI on the machine running SergeCode:
```bash
brew install gh
```
@@ -63,7 +63,7 @@ Run a quick **Rescan** after setting up a new machine or changing credentials.
```bash
gh auth login
```
-3. Open **Settings → Source Control** in T3 Code and verify GitHub shows as authenticated
+3. Open **Settings → Source Control** in SergeCode and verify GitHub shows as authenticated
That's it—you can now clone, publish, and create pull requests.
@@ -84,12 +84,12 @@ That's it—you can now clone, publish, and create pull requests.
Bitbucket uses API tokens instead of a CLI tool:
1. Create an API token in your Atlassian account with read/write access to pull requests and repositories
-2. Add these environment variables to the environment running T3 Code:
+2. Add these environment variables to the environment running SergeCode:
```bash
export T3CODE_BITBUCKET_EMAIL="you@example.com"
export T3CODE_BITBUCKET_API_TOKEN="your-token"
```
-3. Restart T3 Code and verify the connection in **Source Control settings**
+3. Restart SergeCode and verify the connection in **Source Control settings**
### For Azure DevOps
@@ -110,9 +110,9 @@ Bitbucket uses API tokens instead of a CLI tool:
## Requirements & Troubleshooting
-**Git is required** – T3 Code uses Git for all local operations. Ensure `git` is installed on your server.
+**Git is required** – SergeCode uses Git for all local operations. Ensure `git` is installed on your server.
-**Server-side setup** – Authentication happens on the machine running T3 Code (the server), not your local browser. If you're using a hosted or team instance, your administrator may have already configured providers.
+**Server-side setup** – Authentication happens on the machine running SergeCode (the server), not your local browser. If you're using a hosted or team instance, your administrator may have already configured providers.
**Common issues:**
diff --git a/docs/operations/observability.md b/docs/operations/observability.md
index 5b98d1163ea..2931bfbce57 100644
--- a/docs/operations/observability.md
+++ b/docs/operations/observability.md
@@ -1,6 +1,6 @@
# Observability
-T3 Code has one server-side observability model:
+SergeCode has one server-side observability model:
- pretty logs go to stdout for humans
- completed spans go to a local NDJSON trace file
@@ -141,7 +141,7 @@ macOS app bundle example:
T3CODE_OTLP_TRACES_URL=http://localhost:4318/v1/traces \
T3CODE_OTLP_METRICS_URL=http://localhost:4318/v1/metrics \
T3CODE_OTLP_SERVICE_NAME=t3-desktop \
-"/Applications/T3 Code.app/Contents/MacOS/T3 Code"
+"/Applications/SergeCode.app/Contents/MacOS/SergeCode"
```
Direct binary example:
diff --git a/docs/providers/claude.md b/docs/providers/claude.md
index bbf72722cf1..c9cc5fd2440 100644
--- a/docs/providers/claude.md
+++ b/docs/providers/claude.md
@@ -1,6 +1,6 @@
# Claude
-This guide is for people who want to use more than one Claude setup in T3 Code.
+This guide is for people who want to use more than one Claude setup in SergeCode.
Common reasons:
@@ -19,7 +19,7 @@ Log in with Claude Code normally:
claude auth login
```
-In T3 Code Settings, your Claude provider can stay like this:
+In SergeCode Settings, your Claude provider can stay like this:
```text
Display name: Claude
@@ -27,7 +27,7 @@ Binary path: claude
Claude HOME path: empty
```
-An empty `Claude HOME path` means T3 Code uses your normal home directory.
+An empty `Claude HOME path` means SergeCode uses your normal home directory.
## I Want Work And Personal Claude Accounts
@@ -48,7 +48,7 @@ Log in normally:
claude auth login
```
-In T3 Code Settings:
+In SergeCode Settings:
```text
Display name: Claude Work
@@ -65,7 +65,7 @@ mkdir -p ~/.claude_personal_home
HOME=~/.claude_personal_home claude auth login
```
-Then add another Claude provider in T3 Code:
+Then add another Claude provider in SergeCode:
```text
Display name: Claude Personal
@@ -80,11 +80,11 @@ blurred by default; click the blurred email to reveal it.
Usually, no.
-T3 Code only offers Claude providers that use the same Claude home for an existing thread. A
+SergeCode only offers Claude providers that use the same Claude home for an existing thread. A
different Claude home is treated as a different Claude environment.
This is different from the recommended Codex setup. Claude Code keeps account and local state across
-multiple files under its home directory, so T3 Code keeps separate Claude homes isolated instead of
+multiple files under its home directory, so SergeCode keeps separate Claude homes isolated instead of
trying to share part of the state.
## I Want To Use OpenRouter
@@ -97,7 +97,7 @@ variables.
### Configure A Claude OpenRouter Provider
-Add or edit a Claude provider in T3 Code Settings:
+Add or edit a Claude provider in SergeCode Settings:
```text
Display name: Claude OpenRouter
@@ -113,7 +113,7 @@ ANTHROPIC_AUTH_TOKEN sk-or-... Sensitive
ANTHROPIC_API_KEY Empty value
```
-Mark `ANTHROPIC_AUTH_TOKEN` as sensitive. T3 Code stores the value as a server secret and does not
+Mark `ANTHROPIC_AUTH_TOKEN` as sensitive. SergeCode stores the value as a server secret and does not
send it back to the app after saving.
If you want this setup isolated from your normal Claude account, create that home first:
@@ -172,7 +172,7 @@ OpenRouter's setup can change over time. Use its upstream Claude Code guide for
Claude Code Router is useful when you want a local routing layer with more control than a direct
OpenRouter setup.
-T3 Code does not need a special Claude Code Router provider. Treat the router as a Claude
+SergeCode does not need a special Claude Code Router provider. Treat the router as a Claude
environment.
Use this when you want Claude Code Router to decide which upstream model or provider handles Claude
@@ -181,7 +181,7 @@ requests.
High-level flow:
1. Start Claude Code Router.
-2. Add or configure a Claude provider in T3 Code.
+2. Add or configure a Claude provider in SergeCode.
3. Put the router's required variables on that provider instance.
Configure a Claude provider:
diff --git a/docs/providers/codex.md b/docs/providers/codex.md
index cc9e84e484a..33e6f7dcec8 100644
--- a/docs/providers/codex.md
+++ b/docs/providers/codex.md
@@ -1,6 +1,6 @@
# Codex
-This guide is for people who want to use more than one Codex account in T3 Code.
+This guide is for people who want to use more than one Codex account in SergeCode.
Common reasons:
@@ -54,7 +54,7 @@ codex login
This is the account used by `~/.codex`.
-In T3 Code Settings, name it something obvious:
+In SergeCode Settings, name it something obvious:
```text
Display name: Codex Work
@@ -71,7 +71,7 @@ mkdir -p ~/.codex_p
CODEX_HOME=~/.codex_p codex login
```
-In T3 Code Settings, add another Codex provider:
+In SergeCode Settings, add another Codex provider:
```text
Display name: Codex Personal
@@ -86,7 +86,7 @@ has a `Shadow home path`.
Open Settings and look at the provider row.
-T3 Code shows the authenticated email for providers that report one. Emails are blurred by default;
+SergeCode shows the authenticated email for providers that report one. Emails are blurred by default;
click the blurred email to reveal it.
Use display names and accent colors to make accounts easy to tell apart in the model picker.
@@ -113,7 +113,7 @@ Codex Personal CODEX_HOME path: ~/.codex, Shadow home path: ~/.codex_p
Those two providers are considered compatible for continuation, so the locked model picker can show
both.
-If you add a third Codex provider with a completely different `CODEX_HOME path`, T3 Code treats it
+If you add a third Codex provider with a completely different `CODEX_HOME path`, SergeCode treats it
as a different workspace. It will not be offered for existing threads created under `~/.codex`.
## If Both Accounts Look The Same
diff --git a/docs/reference/encyclopedia.md b/docs/reference/encyclopedia.md
index 82a58fd959c..cbf215f3246 100644
--- a/docs/reference/encyclopedia.md
+++ b/docs/reference/encyclopedia.md
@@ -1,6 +1,6 @@
# Encyclopedia
-This is a living glossary for T3 Code. It explains what common terms mean in this codebase.
+This is a living glossary for SergeCode. It explains what common terms mean in this codebase.
## Table of contents
diff --git a/docs/user/keybindings.md b/docs/user/keybindings.md
index 254aa92c6a0..9e8d0c2c338 100644
--- a/docs/user/keybindings.md
+++ b/docs/user/keybindings.md
@@ -1,6 +1,6 @@
# Keybindings
-T3 Code reads keybindings from:
+SergeCode reads keybindings from:
- `~/.t3/keybindings.json`
diff --git a/docs/user/remote-access.md b/docs/user/remote-access.md
index 56510e62890..db543f69620 100644
--- a/docs/user/remote-access.md
+++ b/docs/user/remote-access.md
@@ -1,6 +1,6 @@
# Remote Access
-Use this when you want to connect to a T3 Code server from another device such as a phone, tablet, or separate desktop app.
+Use this when you want to connect to a SergeCode server from another device such as a phone, tablet, or separate desktop app.
## Recommended Setup
@@ -61,10 +61,11 @@ For `https://app.t3.codes`, prefer an HTTPS Tailnet or other HTTPS endpoint. A p
Use this when you want to run the server without a GUI, for example on a remote machine over SSH.
-Run the server with `t3 serve`.
+Run the server with `t3 serve`. Note that `npx t3` installs upstream T3 Code, not this fork —
+run the fork's CLI from a SergeCode checkout (after `pnpm install`) instead:
```bash
-npx t3 serve --host "$(tailscale ip -4)"
+node apps/server/src/bin.ts serve --host "$(tailscale ip -4)"
```
`t3 serve` starts the server without opening a browser and prints:
@@ -86,14 +87,14 @@ Use `t3 serve --help` for the full flag reference. It supports the same general
For hosted web pairing over Tailscale HTTPS, opt in to Tailscale Serve:
```bash
-npx t3 serve --tailscale-serve
+node apps/server/src/bin.ts serve --tailscale-serve
```
By default this configures Tailscale Serve on HTTPS port 443 and advertises
`https://machine.tailnet.ts.net/`. Advanced users can choose a different HTTPS port:
```bash
-npx t3 serve --tailscale-serve --tailscale-serve-port 8443
+node apps/server/src/bin.ts serve --tailscale-serve --tailscale-serve-port 8443
```
> Note
@@ -103,7 +104,7 @@ npx t3 serve --tailscale-serve --tailscale-serve-port 8443
### Option 3: Desktop-Managed SSH Launch
-Use this when you want the desktop app to start or reuse T3 Code on another machine over SSH.
+Use this when you want the desktop app to start or reuse SergeCode on another machine over SSH.
1. Open **Settings** → **Connections**.
2. Under **Remote Environments**, choose **Add environment**.
@@ -119,13 +120,13 @@ SSH launch is a desktop feature because it needs local process and SSH access. O
The desktop SSH launcher connects with a non-interactive `sh` session, writes a small launcher script under `~/.t3/ssh-launch//`, starts or reuses a remote T3 server, and forwards the remote loopback port back to your desktop.
-The remote host must have a compatible Node.js runtime. T3 Code uses the server package's `engines.node` requirement:
+The remote host must have a compatible Node.js runtime. SergeCode uses the server package's `engines.node` requirement:
```text
^22.16 || ^23.11 || >=24.10
```
-During SSH launch, T3 Code first checks whether `node` is already available on `PATH`. If it is missing, the launcher tries common non-interactive shell locations and version-manager shims/activation hooks:
+During SSH launch, SergeCode first checks whether `node` is already available on `PATH`. If it is missing, the launcher tries common non-interactive shell locations and version-manager shims/activation hooks:
- `~/.local/bin`, `~/bin`, `/opt/homebrew/bin`, `/usr/local/bin`, `/usr/bin`, `/bin`
- Volta via `~/.volta/bin`
@@ -136,7 +137,7 @@ During SSH launch, T3 Code first checks whether `node` is already available on `
- nvm via `$NVM_DIR/nvm.sh`, then `nvm use default`, `nvm use node`, or `nvm use --lts`
- installed nvm versions under `$NVM_DIR/versions/node/*/bin`
-If launch fails with `node: command not found`, a port-scan failure, or a message that the remote Node version does not satisfy the required range, SSH into the host and check the same non-interactive shell path T3 Code uses:
+If launch fails with `node: command not found`, a port-scan failure, or a message that the remote Node version does not satisfy the required range, SSH into the host and check the same non-interactive shell path SergeCode uses:
```bash
ssh user@example.com 'sh -lc "command -v node && node --version"'
@@ -176,7 +177,7 @@ Use hosted pairing when the backend is reachable from the browser over HTTPS/WSS
Do not use hosted pairing for plain HTTP LAN URLs such as `http://192.168.x.y:3773`. Browsers block an HTTPS page from connecting to an insecure HTTP or WS backend. For those endpoints, use the direct pairing URL shown by the desktop app or CLI from a client that can open that HTTP URL directly.
-Hosted pairing does not proxy traffic through T3 Code. The browser still connects directly to the backend URL in the pairing link.
+Hosted pairing does not proxy traffic through SergeCode. The browser still connects directly to the backend URL in the pairing link.
## Managing Access Later