open-source canvas for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.

422 points•sidharthkmenon•6 days ago•142 comments•
Hello! We’re Sid, Alex, Ketan, and Milan. We’re building Whiteboard (https://whiteboard.dev.fast/), an open-source desktop app where humans and agents can architect software together in a common workspace. Here’s our repo: https://github.com/devdotfast/whiteboard.

We were missing the feeling of a “whiteboard session” with another dev where you leave with a deep understanding of a system, so we built this app for ourselves. Whiteboard plugs into the tools you already use - e.g. Claude Code, Codex, etc. – and gives your agent an SDK to draw on an in-app canvas to describe its work. We began with an MVP based on HTML artifacts and started rethinking the app as we ran into limitations:

1. Built on top of CodeOSS: We found that in pure HTML tools it was hard to connect a spec or diagram to code. In Whiteboard, when you click on visualizations like a sequence diagram, an entity relationship diagram, or a quote from the agent’s trace, you can jump to the underlying code directly. When navigating code, you get keybindings and LSP support from VSCode out of the box. We’ve found this is especially valuable because tradeoffs are often only discovered after a first pass at implementation (re: slop)

2. Semantic diff viewer: we wrote a semantic, AST-aware diff viewer in Rust so you can only view the code changes which are relevant to you [1]. We’ve set up some sane defaults: large added functions are summarized as pseudocode, and things like unit tests and large documentation changes are collapsed / hidden. This is all customizable with a WASM-based plugin system.

3. Decision Log: We found it difficult to reason about what set of decisions our agents made autonomously. So we built tools for agents to query and link their own traces to the Whiteboard, so you can understand how the requirements that you set were implemented, and understand what decisions your agent made autonomously.

Here’s a quick demo video explaining more: https://www.youtube.com/watch?v=ChPn3ftULWE

Folks at companies like Salesforce and Modal are using Whiteboard today as a review tool for architecture or spec-level changes – really any change where they want to be involved:

1. Reviewing your own coding agent’s work: because Whiteboard makes it easier to review large amounts of code, folks will typically have their AI agents create a prototype and a corresponding Whiteboard session so they can iterate on the design.

2. Reviewing other people’s changes: We’ve found that Whiteboard is particularly helpful when composed with tools like Greptile. For example, you can run an automated code reviewer on small changes and escalate to a Whiteboard session for the changes that require human judgement.

Why we built this: we’re four buddies from college who quit our jobs as tech leads right before agentic coding became industry standard. As we iterated towards an MVP for a previous idea, we struggled to maintain a comprehensible codebase while reaping all the velocity benefits of agentic coding. As more PRs were merged without our understanding, we felt a ‘cognitive debt’ begin to seep in, until it became difficult for us to even contribute to the system [2].

We’re releasing our desktop app under an MIT license. Please poke through and feel free to contribute! Eventually we’ll charge companies for a hosted web version that manages whiteboard session creation alongside features like trajectory storage and multiplayer reviews. Everything will always remain self-hostable.

Thanks for reading, and we hope you try it out! We would love to hear any feedback and to learn from your expertise.

Here’s are the project links again: https://github.com/devdotfast/whiteboard, and you can install (for MacOS + Linux) at https://install.dev.fast

[1] diffs library: https://github.com/devdotfast/diffr [2] Credit for the term ‘cognitive debt’ goes to https://www.geoffreylitt.com/2026/07/02/understanding-is-the...

142 comments

bbor6 days ago
Oh WOW, cool to see a technique that'll be everywhere in 12 months (the fake pen drawing animations + streaming diagrams as they're produced) first be announced. Do we still do "First!" comments, y'all?

~~[EDIT: you need to put "only for macOS" in way more prominent places, all over -- that offends my soul greatly and may Linus frown upon you all]~~ [EDIT2: I was mistaken!]

This all looks really solid. That said, two remarks:

1. The integration with OS LSPs is quite fun and commendable. Is it possible that the diagrams might get their own LSP, someday? Or is better just staying as direct TS callsites?

2. The choice of the word "IDE" seems like it might get you in trouble, given the small "cannot edit files" detail. Any comments on the decision there, as opposed to, say... "brainstorming tool"? Or hell, "[architectonic] harness"?

3. The psuedocode "semantic diff" thing is an incredible idea, wow. Props there.

4. This language kinda concerns me: "how the requirements that you set were implemented". In my highly-arbitrary development flow, it ideally goes `idea -> spec/reqs -> plan -> test -> impl -> eval -> land -> review`, and this kind of tool seems explicitly targeted towards just the second and third with some partial coverage of their neighbors on either side. More concretely: by adding implementation, don't you lose a powerful specificity selling point and now have to compete with all full harnesses?

5. Suggesting "GPT-6 Luna and Claude Opus 5.5" is presumably a typo? Cause the equivelant of Opus 5.5 is Astra, and even then not really.

sidharthkmenon6 days ago
thank you! really appreciate it.

1. Yeah, we've thought about this too - at the minimum, we're going to implement a vibe-codeable extension system so that you can add your own diagram types without rebuilding the app. definitely hopeful for some sort of common schema or lsp-shaped thing in the future

2. this is a good point and is something we've considered and struggled with. we ultimately settled on the term 'IDE' because we've found that most people use vscode to review code nowadays, almost exclusively (so it makes it a bit easier to draw the comp in your mind). we're also strongly considering adding an editing feature, but not sure what the exact shape of it is, so decided to go in favor of not shipping it yet - editing tends towards a conductor / superset shape of product. maybe we could try "canvas" instead of "ide" or something? will mull it over more.

4. Yeah, this is definitely tricky. This is why we didn't end up shipping edits as part of this release. Part of the solution here, we think, is tighter integration with the "spec" part of the lifecycle - where whiteboard makes it easier to understand if a spec (like a formal proof) is extensible, generalizable, etc. will mull on this more.

5. yes that's a typo! we're fixing right now - we meant "GPT 6 Sol" (basically, fast TPS, don't need the limits of intelligence really).

Edit: we do have a Fedora Linux build out if that's what you use! releasing stuff on every distro requires some care, so please let us know what you'd want to see it on (re: appimage lol) Edit 2: (5) is fixed! thank you

bbor6 days ago
I don't have much to say, other than these were interesting & helpful responses to understand what you've learned and where you're going. So thanks!

I'll be honest that my initial belief it was for OSX exclusively left me feeling indignant, so knowing I was just mistaken (based on the link up top, tbf) turns me around completly. I do in fact run Fedora, so I'll be trying this ASAP!

I feel Fedora+Debian+Ubuntu+Arch covers all but the long tail of devs, based on vibes alone? You might get bullied if you don't support Nix, but you'll probably be bullied by them anyway lol so no advice on navigating those waters.

bpshaver6 days ago
There are a lot of emerging tools like this for which we will need a name. A similar one I randomly came across (https://github.com/Maksim-Burtsev/merl) calls itself a "Code Navigator."

Along similar lines, I also don't know what we're calling tools like T3 or Superset. They're basically harnesses for harnesses.

jacobgold6 days ago
I like and adopted the term "agent multiplexer" for these.

Just can't warm up to "ADE" (never even liked "IDE") and "agent orchestrator" and "control plane" are just not specific enough to stick.

2001zhaozhao6 days ago
They are usually called orchestrators, sometimes Agentic Development Environments (i.e. IDE for agents) if they are complex enough
solatic6 days ago
How do you compare to https://likec4.dev/ and https://erode.dev/ , which are currently fully open-source and community driven?

C4 gives the text-based representation needed for LLMs to generate and maintain large architecture diagrams - why not build off that heritage?

d0mine6 days ago
It may be even simpler: plain markdown files that explain architecture including C4 diagrams generated from text using plantuml (automated via invoke/fabric/whatever). Plantuml includes C4 in stdlib https://github.com/plantuml-stdlib/C4-PlantUML
ketan_around5 days ago
Yeah, haha funnily enough I'm a huge fan of both C4 and plantuml. We actually do have an experimental 'software map' feature, turned off in settings by default, which draws a hierarchical / C4-based architecture diagram of your codebase (even highlighting the nodes which changed in the PR!) Warning, it is a little rough around the edges at the moment.

As far as plantuml/graphviz/mermaid/similar UML tools, it's really cool stuff, I agree. My issue is that those tools are mainly built to render static diagrams (output to svg, png, etc.) Some eg mermaid are perhaps extensible for interactivity, but it's a little wonky. I think a lot of the value of whiteboard comes from the interactivity -- being able to click on a node to see the underlying code, being able to go through a guided walkthrough of a given flow, etc.

But using their UML authoring format is certainly worth looking into, since the LLMs are already so well-versed in it. i'll put some thought into this!

icar6 days ago

  You cannot currently edit files in Whiteboard. If this is something that you find yourself wanting to do, please file an issue!
Do you still consider this an IDE? Curious
asa1236 days ago
more than anything it's valid enough as a frame of reference for what many people want to do. if they went and invented a new term for it i'd reckon a lot of people just wouldn't even click on it
sidharthkmenon6 days ago
yes, this is tricky and something we’ve struggled with too. We chose IDE because the closest comp is probably VSCode - lots of folks seem to just use it for code browsing / review these days!

regardless, we ended up renaming “ide” -> “canvas” in on gh + website. hope that’s less confusing. will mull it over in the meantime.

2001zhaozhao6 days ago
This is definitely getting at least some things right about how we work with agents today, specifically that we often work at the architecture level, and we need a better alternative to the current Plan Mode offered by coding agents to efficiently architect software at a high level, which is more visual and offers better back-and-forth incrementation with the agent than simply "reject final plan with X message".

From the website demos i definitely think this is a clean interface, although I don't know how much better this is compared to some simple custom Mermaid format, which the agent can write as artifact files and present to users. Zooming out, this app seems like 1 feature (a MCP with a GUI attached to it) rather than an entire product.

Also, I don't know if asking the agent to write specific code changes into the plan is a good idea. I think maybe that a "plan -> approve -> write code" would let the agent write higher quality code than "plan which contains code -> approve". But maybe you can make it work when combined with some specific prompting marking the code as clearly work-in-progress and subject to change, and that the agent should surface any parts implemented differently relative to the plan to the user, etc.

sidharthkmenon6 days ago
thanks for the feedback! two points:

1. "is this a feature" - it could be! in fact, we will expose this as an MCP UI next so that you can view the info directly in Codex Desktop or Superset/Conductor/Emdash for example. that aside, we found that the big things that matter for us are: (1) good code navigation (diagram/spec -> code), (2) beautiful diff viewing, and (3) visualizing agent traces as they connect to code. we found that these problems were hard enough, and enough folks that were using platforms that didn't easily map to these requirements - e.g. TUIs like claude code - that a dedicated product that was just focused on these problems exclusively makes sense.

2. "using whiteboard for plan mode": hmm, i think our wires are crossed a bit here. how people mostly use whiteboard today is:

plan -> approve -> agent codes -> use whiteboard to explain the code.

(or just omit the plan phase as a formal artifact -> just emit a plan + code together, like a golang design draft [A]).

we are exploring an explicit "put the plan in whiteboard first" mode (there's a scratchpad feature that's experimental right now), but it's definitely not ready for prime time yet.

[A] we were heavily influenced by golang's practice of "design drafts" as a way of scaling engineering velocity, e.g.: https://go.googlesource.com/proposal/+/master/design/draft-i... (thanks to Russ Cox, the legend)

2001zhaozhao6 days ago
> how people mostly use whiteboard today is: plan -> approve -> agent codes -> use whiteboard to explain the code.

I guess it's interesting and useful for now, but I don't think people are going to work at the code level much longer.

In my opinion current coding agents + automatic review systems are already at superhuman reliability during the implementation phase (as in they will not fail something in the plan during implementation and not tell you about it, so there's no need to look at the actual code beyond maybe a cursory glance). I literally just use plan mode + CC's /code-review in each task so it's not like I'm doing anything special. So I think the main human interaction surfaces to target in the future will be in the planning process.

verdverm6 days ago
> a better alternative to the current Plan Mode

An easy upgrade (ime) is to be intentional about a process, move the planning artifact to a file, use multiple research/propose/review sessions to dial it in. Still tuning my vibes for when to add in some actual exploratory implementation elements, because there's always something you didn't foresee when getting to the actual implementation, while also not having them implement the solution as a "plan" in markdown

2001zhaozhao6 days ago
> be intentional about a process, move the planning artifact to a file, use multiple research/propose/review sessions to dial it in

Yeah, I think we need something like that as well. I am actually working on an virtual artifact filesystem in my orchestrator to enable this. So agents can create a persistent, versioned plan artifact separate from the codebase (maybe a HTML) and iterate it alongside the user, much like what ChatGPT/claude.ai can already do but for a coding agent. Then you'd need to define a process and get the agent to follow it, but that's much easier and mostly a mix of prompt and orchestration primitives.

> exploratory implementation elements

This is a good point, I've ran into a lot of instances as well where my agents in plan mode would like to explore something but can't because of permissions. I wonder if there should be some kind of system like a "experiment subagent" to handle it.

mtford6 days ago
This is really cool! I'm pumped for anything that makes it easier to review generated code. I, like many people these days, am searching for ways to stay close to the code whilst not being overwhelmed... and as a visual personal i like your idea to semantically link code to diagrams

I've been working on a (semi-)similar thing, a TUI for narrative code reviews - https://github.com/mtford90/revue - the idea being to generate "guided tours" of a change as opposed to a big wall of files.

chris_st5 days ago
You might want to look at Simon Willison's showboat [0] tool, which generates walkthroughs of code to explain changes.

[0]: https://simonwillison.net/guides/agentic-engineering-pattern...

Read the full thread on Hacker News →

Related stories