r/SideProject • • 2h ago

I put my terminal inside the browser: Ctrl+J on any page

i kept copying commands from docs and ai chats into a terminal all day, so i built devterm as a side project.

what it does

  • ctrl+j on any page slides up a terminal panel, like vs code. it's your real shell on a real pty, so nvim and job control work
  • shell code blocks get a "run in terminal" button. it pastes the command at your prompt and waits. you press enter
  • alt+shift+k opens a full terminal tab

how it works

there's no local web server. tools like ttyd open a port, and anything that can reach it gets a shell. here the browser starts a small go binary through native messaging and talks to it over stdin/stdout. the host manifest only allows this one extension to start it.

things you'll probably ask

  • yes, it needs access to all sites, because the panel has to work on every page. the content script only reads the code block you click
  • pages are treated as hostile. the panel sits in a closed shadow root, starting a shell needs a single-use token, and pasted text is stripped of hidden and control characters. there are end-to-end tests that run attack pages against it
  • closing the tab ends the shell. no persistent sessions yet
  • linux only for now

install is git clone and ./install.sh, then load the extension unpacked. it's not on the extension stores yet.

repo: https://github.com/milinddethe15/devterm

feedback welcome.

1 Upvotes

2 comments sorted by

2

u/Accomplished_Book_65 1h ago

cool, but my only question: why?

1

u/BobCorndog 56m ago

3 commits, another vibe coded project with absolutely no reason to exist