Chat that remembers
the decisions.

Channels, threads, and DMs, with a memory underneath. The decisions you make and the reasons behind them stay attached to the conversation, so they're still there when the question comes up again.

#api-v3 / Friday · 5 messages
MR
Maya Reyes Friday 14:03
Picking the auth refactor back up next sprint. Anyone remember why we paused it in March?
JL
Jordan Lee Friday 14:04
I'm pretty sure there were open concerns but I can't find the thread.
AP
Alex Park Friday 14:05
@ariadne do you know?
Ariadne is working…
of 5 steps
Session complete
5 steps · 3.7s
14:05
Ariadne Friday 14:05
You held the refactor for Jordan's review of the token-rotation model. Their concern from Mar 12:
JL
Jordan Lee
Mar 12 · 11:42
"Hold on, I'm not comfortable changing the auth boundary without working through the token-rotation flow first. Can we pause this until I've reviewed the design?"
Original thread in #api-v3.
👍3 🙏2 💡1
Select text to format
Enter to send · Shift+Enter for new line

Chat you can actually find later.

A timeline is great for real-time chat. It's linear and immediate, and good for keeping up with what's latest. Where it falls short is discoverability. Once a discussion gets long or complex, it's hard to find again weeks later. The board answers that: the same messages, grouped by topic, so you can go back and find a conversation instead of scrolling for it.

Stream# product · today
MR
Maya Reyes14:03
Picking the auth refactor back up next sprint. Anyone remember why we paused it in March?
SP
Sam Patel14:04
Empty states for the board are on staging now. The board one especially came out nice.
🙌2
JL
Jordan Lee14:05
There were open concerns but I can't find the thread.
continues Auth refactor: pause or push?·2m
AP
Alex Park14:05
@ariadne do you know?
Ariadne is working…
searching
Session complete
5 steps · 3.7s
14:05
Ariadne14:05
You paused it for Jordan's review of the token-rotation model. The concern was migrating live sessions without a forced re-auth.
same messages
Board# product · by topic
Auth refactor: pause or push?
product·now
MR
Maya Reyes14:03
Picking the auth refactor back up next sprint. Anyone remember why we paused it in March?
JL
Jordan Lee14:05
There were open concerns but I can't find the thread.
AP
Alex Park14:05
@ariadne do you know?
Ariadne is working…
searching
Session complete
5 steps · 3.7s
14:05
Ariadne14:05
You paused it for Jordan's review of the token-rotation model.
decision#product
Auth refactor held pending token-rotation review
Mar 12
Empty states shipped to staging
product·now
SP
Sam Patel14:04
Empty states for the board are on staging now. The board one especially came out nice.
🙌2

Conversation becomes memory.

Threa reads the conversation, finds the decisions and context worth keeping, and saves them as short memos linked to the messages they came from. When the question comes up again, ask Ariadne to search workspace memory for the relevant memo and its source conversation.

01 / Capture

Finding what matters

Most of a channel is noise. The parts worth keeping are usually a handful of lines where the team settles something, works out a process, or shares context they'll need again.

SP
Sam Patel Mar 12 · 11:38
Lunch order: pasta or pizza, last call.
JL
Jordan Lee Mar 12 · 11:42
Hold on, I'm not comfortable changing the auth boundary without working through the token-rotation flow first. Can we pause this until I've reviewed the design?
MR
Maya Reyes Mar 12 · 11:44
Fair. Let's hold v3 then. What do you need from us before sign-off?
JL
Jordan Lee Mar 12 · 11:46
A walkthrough of the rotation flow + how existing sessions migrate. I'll block out time the week of the 18th.
SP
Sam Patel Mar 12 · 11:47
Pizza it is, ordering now.
02 / Hold

Keeping it as a memo

Nobody rereads a transcript two months later. A short, sourced memo is the part that stays useful once the thread has scrolled away.

Decision · Mar 12
Auth refactor held pending token-rotation review.
Why
Jordan asked to pause the v3 auth boundary until the rotation flow has been walked through. The concern was migrating existing sessions without a forced re-auth wave.
Next
Design walkthrough with Jordan, week of Apr 18.
Source
3 messages · #api-v3 · Jordan Lee · Maya Reyes
03 / Return

When it comes up again

A reason you can't find isn't worth much. When the question returns, ask Ariadne to search for the relevant memo and follow its links back to the source conversation.

#sprint-planning / May 7 · two months later
MR
Maya Reyes May 7 · 09:12
@ariadne we're picking auth back up this sprint. What was the hold on again?
Ariadne May 7 · 09:12
You paused v3 in March pending Jordan's review of the rotation flow. Wei flagged a related mobile-session concern in April that didn't make the original hold. Worth folding in before the walkthrough.
decision#api-v3
Auth refactor held pending token-rotation review
Mar 12
context#mobile-platform
Session migration needs device-bound refresh handling
Apr 02
$git clone github.com/threahq/threa.git $cd threa && bun install $bun run dev → http://localhost:5173 # your machine. your fork.
patch.mddescribe the change →
# Compact density toggle Add a "Compact" option under Settings → Appearance. - add a `density` pref: comfortable | compact - compact tightens message-row padding and line-height - persist per-device; default to comfortable - apply it in the timeline, threads, and scratchpads
$claude -p "$(cat patch.md)"

The whole thing is open source.

The frontend, backend, control plane, and infrastructure are all public. Read exactly how Threa works, fork it if you want your own version, or run it yourself. The public repo is the one we ship.

Public source

The code, data model, access checks, model calls, and deployment setup are all there on GitHub.

Yours to fork

It's MIT-licensed. Fork it, change the product, or run your own version on the same codebase we deploy.

Built in the open

Design docs, implementation plans, and the feature inventory are public too, not just the finished code.

Browse the source

Bring the agent you already use.

Threa ships with Ariadne, useful from day one. But you've probably already got an agent set up the way you like it. Connect that agent as a Threa bot and it can stay on your laptop behind NAT, answer @mentions, search messages, memos, and attachments, and post its work back into the conversation.

Ask it in the room

Mention the bot in a channel and the runtime sends the invocation to your local agent, then posts its reply under the bot's identity.

Let it look things up

Your agent can search messages by text or meaning, read memos and attachments, and follow every memo back to its source messages.

Hand it the work

Delegate a task, follow its progress in the stream, and get the finished work back where the team can see it.

Connect a local agent
Ariadne is here to get you started. The agent you rely on can stay on your machine, with your work reachable from it instead of locked inside one more app.
Bring your own

What I wished other tools had.

Partly I built Threa out of spite. Years of watching decisions disappear into channels, plus a short list of things I wanted from a chat app and never got. So I added them.

Building Threa in the open.

Get early access.

/ no spam