Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
@@ -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.
Expand All @@ -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.

Expand Down
64 changes: 3 additions & 61 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -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.
75 changes: 13 additions & 62 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,55 +1,36 @@
# 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`
> - Claude: install [Claude Code](https://claude.com/product/claude-code) and run `claude auth login`
> - 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

Expand All @@ -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).
2 changes: 1 addition & 1 deletion docs/architecture/overview.md
Original file line number Diff line number Diff line change
@@ -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.

```
┌─────────────────────────────────┐
Expand Down
2 changes: 1 addition & 1 deletion docs/architecture/remote.md
Original file line number Diff line number Diff line change
@@ -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.

Expand Down
2 changes: 1 addition & 1 deletion docs/architecture/runtime-modes.md
Original file line number Diff line number Diff line change
@@ -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.
2 changes: 1 addition & 1 deletion docs/cloud/t3-code-connect-auth-flow.html
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ <h2>Current Topology</h2>

Clerk["Clerk<br/>user identity and OAuth"]

subgraph Relay["T3 Code Relay on Cloudflare"]
subgraph Relay["SergeCode Relay on Cloudflare"]
Worker["Relay Worker<br/>HTTP API"]
Queue["APNs delivery queue<br/>with dead-letter queue"]
Hyperdrive["Hyperdrive"]
Expand Down
3 changes: 2 additions & 1 deletion docs/cloud/t3-connect-clerk.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
Expand Down
4 changes: 2 additions & 2 deletions docs/getting-started/codex-prerequisites.md
Original file line number Diff line number Diff line change
@@ -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.
18 changes: 9 additions & 9 deletions docs/integrations/source-control-providers.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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**
Expand All @@ -55,15 +55,15 @@ 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
```
2. Sign in:
```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.

Expand All @@ -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

Expand All @@ -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:**

Expand Down
4 changes: 2 additions & 2 deletions docs/operations/observability.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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:
Expand Down
Loading
Loading