Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
dddc0bd
fix(server): include SQLite conditions in persistence errors
t3dotgg Sep 4, 2026
6f40537
fix(dev): keep shared dev reloads and hot updates working (#9543)
t3dotgg Sep 4, 2026
c5ba51d
feat(providers): add context compaction command (#9293)
maria-rcks Sep 4, 2026
5989de4
fix(mobile): keep store screenshots free of system banners and show d…
juliusmarminge Sep 4, 2026
54aef6f
fix(web): restore composer controls as space becomes available (#9539)
juliusmarminge Sep 4, 2026
3c3e05c
fix(web): measure collapsed model labels at their visible width (#9540)
juliusmarminge Sep 4, 2026
f239b77
fix(web): close composer menus when their controls hide (#9541)
juliusmarminge Sep 4, 2026
3e2c1a6
fix(web): thread error banner no longer shifts the chat (#9473)
flamboh Sep 4, 2026
617edab
fix(server): reveal normalized paths in File Explorer (#9551)
juliusmarminge Sep 4, 2026
232de5e
feat(marketing): fresh screenshot and floating marks on the homepage …
t3dotgg Sep 4, 2026
1641b4a
feat(usage): redeem Codex reset credits from the Limits tab (#9534)
juliusmarminge Sep 4, 2026
4e54731
fix(server): find newly opened pull requests after agent turns (#9125)
t3dotgg Sep 4, 2026
f96a220
ci: add on-demand Windows test workflow (#9538)
juliusmarminge Sep 4, 2026
710f6dc
fix(web): simplify expanded tool details (#9549)
maria-rcks Sep 4, 2026
9e1bc36
fix(web): keep the last message visible when the resting composer exp…
t3dotgg Sep 4, 2026
fee2e0f
test(web): fix flaky startup and Tailwind tests (#9558)
t3dotgg Sep 4, 2026
65f1839
fix(web): keep codex restart responses continuous (#9560)
maria-rcks Sep 4, 2026
d7884ce
fix(web): make settings sidebar sub-section buttons full width (#9562)
juliusmarminge Sep 4, 2026
2b10398
fix(web): render settings sidebar immediately (#9563)
maria-rcks Sep 4, 2026
95390ed
chore: vouch august contributors (#9557)
maria-rcks Sep 4, 2026
42bdea1
fix(web): stabilize right panel transitions (#9554)
maria-rcks Sep 4, 2026
0cb02ab
fix: better shell syntax handling for labels (#9371)
Yash-Singh1 Sep 4, 2026
bf40fa7
fix(web): align the sidebar wordmark by baseline (#9578)
maria-rcks Sep 4, 2026
2675e3c
fix(antigravity): keep subagent batches active after launch (#9579)
t3dotgg Sep 4, 2026
09b81a3
fix(mobile): render workspace images in markdown file previews (#8769)
SunkenInTime Sep 4, 2026
b34ff8f
fix(usage): deduplicate CLI proxy subscription accounts (#9584)
juliusmarminge Sep 4, 2026
07891e9
fix(web): bound disconnected send toasts (#9592)
maria-rcks Sep 4, 2026
5783280
fix(desktop): restore panel titlebar interactions (#9591)
maria-rcks Sep 4, 2026
39abb9d
fix(connect): refresh authorization without disconnecting (#9582)
maria-rcks Sep 4, 2026
f559fe0
fix(web): show context meter in compact composer (#9430)
GuilhermeVieiraDev Sep 4, 2026
5cc369b
fix(pull-requests): refresh data after thread turns (#9496)
maria-rcks Sep 4, 2026
caab2fd
fix(web): render draft PRs in gray (#9537)
extoci Sep 4, 2026
f1e90e3
refactor(web): move usage provider controls to settings (#9599)
juliusmarminge Sep 4, 2026
00f8b7c
fix: show idle subagent batches without completion marks (#9616)
t3dotgg Sep 4, 2026
61a91b6
fix(web): group image views like other tool calls (#9597)
juliusmarminge Sep 4, 2026
c3b8825
fix: preserve tool icons on failed calls (#9606)
juliusmarminge Sep 4, 2026
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
12 changes: 12 additions & 0 deletions .github/VOUCHED.td
Original file line number Diff line number Diff line change
Expand Up @@ -12,22 +12,28 @@
github:0x4bs3nt
github:Adamulek123
github:adityavardhansharma
github:aoright
github:arhxam
github:bil0000
github:binbandit
github:Brechard
github:btsouth
github:chrisdeeming
github:chuks-qua
github:cursoragent
github:D3OXY
github:dbalders
github:eggfriedrice24
github:extoci
github:flamboh
github:FllipEis
github:gbarros-dev
github:gfsaaser24
github:github-actions[bot]
github:gsimone
github:GuilhermeVieiraDev
github:hwanseoc
github:inayayousfi
github:ipanasenko
github:jakeleventhal
github:jamesx0416
Expand All @@ -36,13 +42,18 @@ github:jasonLaster
github:JoeEverest
github:justsomelegs
github:kridaydave
github:lgwacker
github:lnieuwenhuis
github:Lucenx9
github:mackinleysmith
github:maria-rcks
github:MatthewFeroz
github:maxwellyoung
github:mwolson
github:myacoub91
github:naMqe-h
github:nateEc
github:naveed949
github:nmggithub
github:Noojuno
github:notkainoa
Expand All @@ -64,6 +75,7 @@ github:tarik02
github:tris203
github:tsouth89
github:UtkarshUsername
github:vitalyiegorov
github:Yash-Singh1
github:yashranaway
github:Ymit24
81 changes: 81 additions & 0 deletions .github/workflows/windows-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# On-demand Windows test lane. Manual only: nothing in the suite passes on
# Windows yet, so this exists to give contributors (and agents) a cloud Windows
# box to iterate against. Once the suite is green here, fold it into ci.yml.
#
# gh workflow run windows-tests.yml --ref <branch> -f package=packages/shared
# gh workflow run windows-tests.yml --ref <branch> -f package=apps/server \
# -f files="src/process/externalLauncher.test.ts src/cli/theme.test.ts"
# gh run watch && gh run view --log-failed
name: Windows Tests

on:
workflow_dispatch:
inputs:
package:
description: "Workspace directory to test, e.g. apps/server or packages/shared. Empty runs every package except apps/server."
type: string
default: ""
files:
description: "Space-separated test files relative to the package directory. Empty runs the package's whole suite. Requires package."
type: string
default: ""

permissions:
contents: read

jobs:
test:
name: Test (${{ inputs.package || 'all non-server' }})
runs-on: blacksmith-8vcpu-windows-2025
timeout-minutes: 45
steps:
- name: Checkout
uses: actions/checkout@v6
with:
sparse-checkout: |
/*
!/.repos/
sparse-checkout-cone-mode: false

# setup-vp's own cache restores a Linux-shaped store on Windows, which is
# slower than no cache (see #7975). Cache pnpm's Windows store directly.
- name: Setup Vite+
uses: voidzero-dev/setup-vp@v1
with:
node-version-file: package.json
cache: false
run-install: false

- name: Resolve package cache path
id: package_cache_path
shell: pwsh
run: '"path=$(vp pm cache dir)" >> $env:GITHUB_OUTPUT'

- name: Cache packages
uses: actions/cache@v6
with:
path: ${{ steps.package_cache_path.outputs.path }}
key: windows-tests-packages-v1-${{ hashFiles('pnpm-lock.yaml') }}

- name: Install
run: vp install

- name: Ensure Electron runtime is installed
if: inputs.package == '' || inputs.package == 'apps/desktop'
run: vp run --filter "@t3tools/desktop" ensure:electron

# `vp run ... test -- <files>` does not forward positional args to vitest,
# so file-scoped runs call `vp test run` inside the package instead.
- name: Test
shell: pwsh
run: |
$package = '${{ inputs.package }}'
$files = '${{ inputs.files }}'
if ($package -eq '') {
vp run --parallel --concurrency-limit 4 --filter '!t3' --filter '!@t3tools/monorepo' test
} elseif ($files -eq '') {
vp run --filter "./$package" test
} else {
Set-Location $package
vp test run $files.Split(' ')
}
4 changes: 3 additions & 1 deletion apps/desktop/scripts/ensure-electron-runtime.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import * as NodeFS from "node:fs";
import * as NodeModule from "node:module";
import * as NodeOS from "node:os";
import * as NodePath from "node:path";
import * as NodeURL from "node:url";
import * as NodeChildProcess from "node:child_process";

const require = NodeModule.createRequire(import.meta.url);
Expand Down Expand Up @@ -176,7 +177,8 @@ export function ensureElectronRuntime() {
return electronPath;
}

if (import.meta.url === `file://${process.argv[1]}`) {
// `file://${argv[1]}` never matches on Windows (drive letters need `file:///C:/`).
if (process.argv[1] && NodeURL.pathToFileURL(process.argv[1]).href === import.meta.url) {
const electronPath = ensureElectronRuntime();
process.stdout.write(`${electronPath}\n`);
}
Binary file added apps/marketing/public/app-desktop.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/marketing/public/harnesses/antigravity.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed apps/marketing/public/updated-screenshot.webp
Binary file not shown.
24 changes: 10 additions & 14 deletions apps/marketing/src/layouts/Layout.astro
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ interface Props {

const {
title = "T3 Code",
description = "T3 Code The open-source control plane for coding agents.",
description = "T3 Code. The open-source control plane for coding agents.",
pageClass,
} = Astro.props;
---
Expand Down Expand Up @@ -268,21 +268,17 @@ const {
}
}

@keyframes pulse {
50% { opacity: 0.4; }
/* Page-load sequence: [data-rise] plays once with delay --d. */
@keyframes rise {
from { opacity: 0; transform: translateY(16px); }
to { opacity: 1; transform: none; }
}

@keyframes spin {
to { transform: rotate(360deg); }
}

@keyframes floatDrift {
0%, 100% { translate: 0 0; }
50% { translate: 0 -10px; }
[data-rise] {
animation: rise 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) both;
animation-delay: var(--d, 0ms);
}

@keyframes blink {
50% { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
[data-rise] { animation: none; }
}
</style>

Expand Down
4 changes: 2 additions & 2 deletions apps/marketing/src/lib/site.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ export const ANDROID_PLAY_STORE_URL =
"https://play.google.com/store/apps/details?id=com.t3tools.t3code";

export const MARKETING_STATS = {
githubStars: "14k+",
users: "100,000",
githubStars: "21k+",
users: "200,000",
} as const;
Loading
Loading