frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Exposed Persona Subdomains Reveals OpenAI-Linked Watchlist Gov API Infra

https://twitter.com/vxunderground/status/2024188446214963351
1•tristanMatthias•1m ago•0 comments

Visualizing the RISC-V Instruction Set

https://gist.github.com/camel-cdr/bd5b197ab140ad6df259916df1439066
1•camel-cdr•3m ago•0 comments

Kubernetes – GatewayApi Fundamentals

https://randomwrites.com/networking/07-Gateway-API-Fundamentals.html
1•mutahirs•3m ago•0 comments

Ubuntu 26.04 LTS Moving to OpenJDK 25 by Default

https://www.phoronix.com/news/Ubuntu-26.04-OpenJDK-25
1•mikece•6m ago•0 comments

GPT-OSS-20B-Vision: First Community VLM for GPT-OSS, Trained on a DGX Spark

https://huggingface.co/vincentkaufmann/gpt-oss-20b-vision-preview
2•vkaufmann•9m ago•1 comments

Show HN: A small, simple music theory library in C99

https://github.com/thelowsunoverthemoon/mahler.c
2•lowsun•9m ago•0 comments

Artifacts: A Visual History of Technology from 1965 to the Present

https://www.tmls.com/books/artifacts
3•overvale•10m ago•0 comments

Show HN: Exit Calc – Free calculator that models PE exits for business owners

https://www.exit-calc.com/
1•quietbuilder_•11m ago•0 comments

5.25-inch floppy disks expected to help run San Francisco trains until 2030

https://arstechnica.com/gadgets/2024/04/5-25-inch-floppy-disks-expected-to-help-run-san-francisco...
3•austinallegro•13m ago•0 comments

'Smiling' fossil discovered on Holy Island

https://www.bbc.com/news/articles/c7v0ev05mdjo
2•1659447091•13m ago•0 comments

How to Build Agents Users Can Trust

https://builders.ramp.com/post/how-to-build-agents-users-can-trust
1•gk1•14m ago•0 comments

The wonderful world of AI plugins

https://handyai.substack.com/p/the-wonderful-world-of-ai-plugins
1•jakehandy•14m ago•0 comments

Trump has prepared speech on extraterrestrial life, Lara Trump says

https://thehill.com/homenews/administration/5744218-trump-holds-alien-speech/
2•doener•14m ago•0 comments

Teleoperation of Dual-Arm Manipulators via VR Interfaces

https://www.mdpi.com/2079-9292/15/3/572
1•PaulHoule•15m ago•0 comments

Rubik's WOWCube adds complexity, possibility by reinventing the puzzle cube

https://arstechnica.com/gadgets/2026/02/rubiks-wowcube-adds-complexity-possibility-by-reinventing...
2•furcyd•16m ago•0 comments

The #1 most downloaded skill on OpenClaw marketplace was malware

https://twitter.com/chiefofautism/status/2024483631067021348
1•Umofomia•16m ago•0 comments

When "Efficiency" Means Admitting You Were Wrong

https://www.decodeecon.com/p/when-efficiency-means-admitting-you
1•NomNew•21m ago•0 comments

Render raises $100M at $1.5B valuation

https://render.com/blog/series-c-extension
3•crcastle•23m ago•1 comments

35

https://zero.fail/thirty-five/
1•ahmgeek•24m ago•0 comments

Why there's no quick fix in sight for the problem of dazzling headlights

https://www.bbc.co.uk/news/articles/cn71xyjpdl2o
1•holdit•24m ago•0 comments

HUD proposes rule that would force noncitizens from public housing

https://www.washingtonpost.com/national/2026/02/19/hud-public-housing-mixed-status-immigration/03...
12•geox•25m ago•2 comments

Ask HN: Is Claude Code slow just for me today?

2•DhruvaBansal2k•28m ago•0 comments

Nate Friedman Exposed Italy's Migrant Crisis [video]

https://www.youtube.com/watch?v=-eV5Z9R7WG8
1•throwitaway222•29m ago•0 comments

Show HN: Kalpaka – A living tree that grows services from wishes

https://kalpaka.ai/
1•Kalpaka•30m ago•0 comments

Show HN: A 3D dashboard for OpenClaw agents, their tool calls in real time

https://github.com/talhaorak/divan
1•talhao•31m ago•0 comments

Show HN: Bosun – Supervising Agentic Fleet Manager (Open Source)

http://bosun.virtengine.com/
3•jaeko44•33m ago•0 comments

Show HN: Axon – Safely run claude --dangerously-skip-permissions on Kubernetes

https://github.com/axon-core/axon
1•gjkim042•33m ago•0 comments

Show HN: What the EU parliament and commission have been working on lately

https://euforya.eu/goals?ff_commission=true
1•krzysiek•33m ago•0 comments

The Psychology of Bad Code Part 3 – Vibe Coding

https://shehackspurple.ca/2026/02/16/the-psychology-of-bad-code-part-3-vibe-coding/
1•shehackspurple•37m ago•1 comments

Ask HN: How to require confirmation for git reset in Cursor after recent update?

1•theorchid•38m ago•0 comments
Open in hackernews

Show HN: Ghostty-based terminal with vertical tabs and notifications

https://github.com/manaflow-ai/cmux
48•lawrencechen•1h ago
I run a lot of Claude Code and Codex sessions in parallel. I was using Ghostty with a bunch of split panes, and relying on native macOS notifications to know when an agent needed me. But Claude Code's notification body is always just "Claude is waiting for your input" with no context, and with enough tabs open, I couldn't even read the titles anymore.

I tried a few coding orchestrators but most of them were Electron/Tauri apps and the performance bugged me. I also just prefer the terminal since GUI orchestrators lock you into their workflow. So I built cmux as a native macOS app in Swift/AppKit. It uses libghostty for terminal rendering and reads your existing Ghostty config for themes, fonts, colors, and more.

The main additions are the sidebar and notification system. The sidebar has vertical tabs that show git branch, working directory, listening ports, and the latest notification text for each workspace. The notification system picks up terminal sequences (OSC 9/99/777) and has a CLI (cmux notify) you can wire into agent hooks for Claude Code, OpenCode, etc. When an agent is waiting, its pane gets a blue ring and the tab lights up in the sidebar, so I can tell which one needs me across splits and tabs. Cmd+Shift+U jumps to the most recent unread.

The in-app browser has a scriptable API ported from agent-browser [1]. Agents can snapshot the accessibility tree, get element refs, click, fill forms, evaluate JS, and read console logs. You can split a browser pane next to your terminal and have Claude Code interact with your dev server directly.

Everything is scriptable through the CLI and socket API – create workspaces/tabs, split panes, send keystrokes, open URLs in the browser.

Demo video: https://www.youtube.com/watch?v=i-WxO5YUTOs

Repo (AGPL): https://github.com/manaflow-ai/cmux

[1] https://github.com/vercel-labs/agent-browser

Comments

rubyn00bie•1h ago
This looks cool. I honestly haven’t ever thought about using vertical tabs in a terminal window but that seems nice.

One question though, have you thought about trying to upstream any of this into Ghostty instead of making an entirely different app?

simlevesque•1h ago
VSCode has vertical tabs for it's terminals like this, but on the right side.
lawrencechen•1h ago
Upstreaming into Ghostty would be very difficult as it's not actually a fork, I just used libghostty under the hood.
rubyn00bie•59m ago
Ah! Thanks for explaining that. I totally keep forgetting, to my own detriment, libghostty exists. It’s mighty cool to see it being used more and more to build cool new terminals (like yours and the mobile terminal that showed up here the other day).
pupppet•1h ago
Just took it for a spin, thought it was pretty nice. Some quirks with the tab dragging, you never really know what it's going to do on mouseup, a drop-target indicator would help.

Would love to be able to color the sidebar tab.

Nice work!

lawrencechen•47m ago
Thanks! Will add drop target and sidebar coloring.
blorenz•56m ago
I like what you did here and with your direction with the stack. We have some common overlap. Last week I started clauding up something to manage my Claude sessions. It is built on Tauri 2 using xterm.js. It has is project-based and each project has resumable sessions. I borrowed inspiration from Happy coder and clauded an Expo app so I can claude remotely on-the-go. It has been a force multiplier in my clauding with developing new features and addressing bugs and defects. It was a pretty amazing feeling when I started using it to further its own development. There's a slew of other features as I adapt it to my development style.
lawrencechen•37m ago
Mobile interface is definitely nice. Planning on adding iOS app since libghostty works there too! And I imagine that having your main terminal app be synced directly to your phone must be nice, though it doesn't solve the problem of closing my laptop.

Would love to hear what other features have been particularly beneficial to your dev style too. Some directions I'm interested in is having everything be programmable; so my coding agent can set up workspaces for me, click through browsers to test things, etc. And having a main Claude Code manage subagents that have their own easily visible terminal windows.

blorenz•12m ago
Wow! That would be incredible! I don't have the agents control the browsers like you are doing. I'm watching to see what you do though because that is incredible. The performance hit is real though -- I may look at libghostty.

I went the similar path of going vertical tabs after having worked that way in iTerm2 for months. Here's what I currently have:

Project-based organization -- Group sessions by working directory with a visual icon strip sidebar.

Multiple session types -- Claude Code sessions, standalone terminal shells, and embedded browser tabs.

Session persistence -- Terminal output is logged and replayed on relaunch so you never lose context.

Session resume -- Claude Code sessions detect their session ID automatically and resume where you left off.

Planning mode -- Draft and refine plans in a built-in text editor, then send them to Claude with one click.

Planning templates -- Start plans from structured templates for bug reports, feature requests, code reviews, refactors, and more.

Auto-titling -- Generic session names are replaced with descriptive titles generated by Claude after the first exchange.

Theming -- Light and dark themes with full CSS variable control.

Native menus and keyboard shortcuts -- macOS-native menu bar with comprehensive shortcut coverage.

Resizable layout -- Adjustable sessions sidebar width with state persistence across restarts.

Dock badge -- macOS dock icon shows the number of actively working Claude sessions.

Pin and archive -- Pin important sessions to the top or archive completed ones to keep the list clean.

Session card view -- See all sessions in a sortable grid with activity stats, token counts, and quick actions.

File tracker -- See which files Claude creates, modifies, and deletes in a live sidebar panel.

Macros -- One-click buttons for frequently used commands like /clear or commit this work.

Remote mode -- Monitor and control sessions from your phone via an encrypted WebSocket relay.

It has become my development hub where I can iterate very quickly.

arjie•42m ago
This is pretty slick, man. The only thing is that the Ctrl-Cmd-] is too hard to press but I'll just use the number thing.
lawrencechen•41m ago
Thank! I personally have caps lock mapped ctrl... but open to suggestions! Since it's hard to handle both horizontal and vertical tabs.
arjie•38m ago
Ah, I regret training myself into Caps Lock to Escape. Well, a personal problem then. It doesn't seem to have copy-paste support that I have in my Ghostty but I bet that's a config somewhere.
lawrencechen•36m ago
> copy-paste support that I have in my Ghostty

Want to fix this, how do I reproduce? Select with mouse and cmd+c seems to work for me.

goro-7•37m ago
Good idea, but I don't want to move to another terminal now, will stick with Ghossty
lawrencechen•34m ago
Fair enough! I like Ghostty a lot too, and the only reason I built this was because I wanted vertical tabs and nicer notifications.
cranberryturkey•29m ago
This solves a real pain point. I run multiple AI coding agents in parallel and the biggest UX problem isn't the agents — it's knowing which one needs attention without context-switching into every pane.

The notification-per-pane with blue ring indicator is exactly right. The failure mode of most orchestrators is they abstract away the terminal entirely and then you lose the escape hatch when the agent does something unexpected. Keeping it terminal-native with Ghostty rendering is the correct tradeoff.

Question: how does the in-app browser handle state across agent sessions? If two agents are working on the same local dev server, do they share the browser context or get isolated profiles? That's been one of the harder problems in multi-agent setups — shared browser state leads to agents stepping on each other's cookies/localStorage.

lawrencechen•21m ago
> If two agents are working on the same local dev server, do they share the browser context or get isolated profiles

Currently they share browser context. Adding isolated profiles is a good idea. Do you often use multiple agents in a single project and have them both work on different pages? I personally use multiple checkouts, and the problem for me is that agents working in the same project want to spin up the same dev server. And the dev servers will conflict unless I make different instances of the same project listen in their own port ranges (perhaps via a PORT env var).

We want to solve the latter by bringing better SSH support where the WebView will proxy directly to a remote machine or Docker container, so different workspaces in the vertical tabs can talk to their corresponding dev servers. But I want to hear more about your use case.

alchemism•14m ago
With this one, small tweak it is perfect:

osascript << 'EOF' use framework "Foundation" use framework "AppKit"

set ghosttyIconPath to "/Applications/Ghostty.app/Contents/Resources/Ghostty.icns" set cmuxAppPath to "/Applications/cmux.app"

-- Read the icon file set iconImage to current application's NSImage's alloc()'s initWithContentsOfFile:ghosttyIconPath

-- Set it as the custom icon for cmux.app current application's NSWorkspace's sharedWorkspace()'s setIcon:iconImage forFile:cmuxAppPath options:0 EOF

((The ghost pairs well with Kiro, what can I say?))

lawrencechen•10m ago
:ghost:
AM1010101•9m ago
Awesome work, keen to try it out tomorrow. Can I make the notifications work with Gemini CLI and Kiro CLI too?
lawrencechen•7m ago
Thanks! Yup, notifications can be triggered via cli:

  cmux notify --title "Claude Code" --subtitle "Waiting" --body "Agent needs input"
And afaik, both Gemini/Kiro should have stop hooks. If they send OSC notifications, then notifications will "just work" as well.

Docs: https://www.cmux.dev/docs/notifications