Repository navigation
Offering some improvements from my fork: sidebar sections, a Needs me list, less phone traffic, and more #30953
Isaac-b-ux
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hi,
I've been running a fork of T3 Code for a while and ended up with changes that seem useful beyond my own setup. I'd rather offer them than sit on them.
All of it was written with AI coding agents — mostly Claude Opus 5.5 and Sonnet 5.5, largely through T3 Code itself. Some parts are rough; I've noted where. I'm not asking you to take any of it as-is.
User-defined sidebar sections. Chats can be filed into named sections with their own sort, collapse state, and an optional "keep chats here" rule that holds a chat in place while it runs. Agents can create sections and file chats through MCP and the CLI, so a scheduled or delegated chat lands where it belongs. Rough: no user docs yet, and desktop and mobile render it separately.
A Needs me list. The server decides whether a finished reply is actually asking you something — an approval, a question, or an explicit flag — and stores that per chat. The sidebar shows one shelf of just those, with a helper's pending ask rolled up to its parent, and an MCP tool lets an agent ask what needs you. Rough: rules-first, with an optional second pass that today only runs on a Claude model, and the explicit flag depends on agents being told to write a marker. The classifier is the piece I'd most expect you to redesign.
A Finished group. A group of done chats that aren't in Needs me, Working, or a section. When you settle, snooze, or reply from it, the next chat opened is the next one in that group, so it works like a queue.
Much less phone traffic and battery use. A backgrounded phone opens an alerts-only subscription: the server leaves out streaming ticks, project metadata, and unchanged threads, and the phone takes a full snapshot when it returns. Settings and provider-status updates go as changed fields instead of the whole payload, and nothing is sent when nothing changed. Pull-to-refresh also coalesces.
Helper chats in edge cases. Building on your delegated-under-parent nesting: a helper's pending ask rolls up into its parent's Needs me entry, a subtask stays under its parent even when a trimmed snapshot left the parent out, and on mobile, chats whose parent is on an unlinked machine go into one folded group instead of Finished.
Opt-in machine routing for delegated jobs.
delegate_tasktakesportable: true, and a marked job can move to another linked machine only when its paths are in a pushed commit; a keyword check keeps jobs that mention secrets, accounts, messages, money, or local-only files on this machine. Rough: it calls a small local machine-picker script today, so it isn't self-contained.Quieter alerts. Alerts fire only when a chat needs you, and stay quiet while the desktop is in use. Android also has notification actions and a quick-settings tile.
Protected chats. A chat can be marked protected, and the server then refuses to archive or delete it unless the caller explicitly passes force. Small, but it stops a cleanup job from removing something you meant to keep.
There's also a "hand off to a new chat" menu item in progress — it forks the current chat into a new one and settles the old one — but it isn't finished, so I'm not claiming it works.
If any of this is useful, please take it and improve it however you like. If a piece is worth a closer look, tell me which, and I'll open a separate Ideas discussion for it before any PR, as your contributing rules ask. I'm happy to split, rewrite, or drop anything.
None of this is published yet, apart from two small bug fixes I've opened as PRs (#30946 and #30947). If a piece interests you, I'll prepare it as a clean branch or patch rebased on current main.
Thanks for building T3.
All reactions