571

Stop Doom Scrolling, Start Doom Coding: Build via the terminal from your phone

I used Tailscale, an old laptop, Claude Code, and Termius to code from my phone anywhere I have Internet connection.

Great for parties where you rather be home tinkering.

I'm using the Android terminal and Claude Code to vibecode on the go. Or rather, as a fairly boring father of two, when I'm tied up in the necessary chores of family life - cooking and cleaning. Nothing as complicated as this - just Claude Code and a fairly standard Linux dev term, but it's remarkable.

Over the recent break, across four or five sessions, I wrote a set of prompts around ~500 words in total.

The result was Claude scanning my network for active ports using nmap, fuzzing those ports with cURL, documenting its findings, self-directing web searches for API/SDK docs for my Hue bridge and ancient Samsung TV, then building a set of scripts to control my lighting system and a fully functional HTML+JS remote for my TV.

The most entertaining part was Claude prompting _me_ to pop into the living room and press the button on the Hue bridge so it could fetch an API key.

The most valuable part? The understanding I gained secondary to generative act. I now understand the button on a Hue bridge literally just tells the device to issue a new API key at the next request. I understand how Entertainment mode works, and why. I understand how Samsung SmartThings is mediated via websockets - and just how insecure decade old Samsung TVs are.

Around 500 words to gain all this? I hate to buy into the hype, but it feels inflectional.

2 days agomagospietato

I read the Readme. So this is all just stuff you can do with Claude's cli interface? It edits files and runs utilities? And it does this with few enough errors that you can be productive by just chatting with it over ssh? Is Claude the only one that can do this?

2 days agosafety1st

Possibly Codex, but I've only used Claude Code so far.

Worth pointing out I'm not SSHing to a different device. Claude Code installed and running directly in Android terminal on my phone.

I've built ASP.NET Core APIs on-device this way. Install dotnet in the terminal and Claude can write code, build, run unit tests, and even run the API on localhost. Then use `git` and `gh` to commit, push and raise a PR.

a day agomagospietato

Probably Claude Code and Codex are the currently best ones, Claude Code a bit faster, Codex a lot more precise and "engineering" focused.

As long as you figure out how to verify that the built thing actually does what it's supposed to, ideally with automated tests, it's almost fire-and-forget if you're good at explaining what you want and need.

a day agoembedding-shape

How did you make sure Claude wasn't doing anything unintended while allowing it to run scripts it wrote on your network?

a day agowickedsight

I still manually approve tool use requests at the start of a run. As it gets deeper in I might allow it to run safer commands without that oversight (e.g. writing to local text files), but potentially destructive execution still requires approval.

As for the local env, I'm treating the Android terminal as a sandbox. Anything gets trashed I just reset and reinstall my toolchain.

I won't pretend I'd use this workflow for anything high-stakes. But for simple things like "I wonder how my Hue lights actually work?", its viable.

a day agomagospietato

Run it inside a VM, make snapshots of the VM if needed (or use vagrant/ansible to rebuild), commit regularly, ...

a day agogregoriol

That seems incompatible with the parallel tasks of cleaning and cooking (at least for me, especially with kids around).

a day agoisolli

The VM is setup once, before you get to be "on the go": that's your development environment, you need one anyway

a day agogregoriol

The VM still needs access to the network for the use cases they described though.

a day agowickedsight

So this is the 4th+ article I've seen on using a VPN to vibe code on your phone. Would an email interface to Claude code work better?

- Email Claude to start the coding

- Claude emails you with any thing it needs acked on.

- you reply back to emails telling it what to do.

- maybe Claude can run your program and send back screen shots.

seems easier then getting a vpn working. What is the downside to using email?

2 days agoanalogpixel

Claude Code recommended a Telegram bot over email for this very workflow. I've configured my basement RPi to use my "spare tokens" during off hours. At 5PM it messages me to ask if I want the agent to work this evening. If there's no task in the queue I can add one then using the bot. There's also a set of commands to check on status etc. I'm working on the next step to make it a more automated and if there's no specific task, it will create it's own.

a day agojosefresco

> Would an email interface to Claude code work better?

No.

> What is the downside to using email?

Email is clunky and feedback is not immediate.

> seems easier then getting a vpn working.

Tailscale is easy for a dev to get going and very reliable. The author uses the Termius SSH app with Mosh, so it keeps the same SSH session going across device sleeps and disconnects. Tmux is helpful, too.

I do exactly what the author is doing, except I use a $5 Linode VPS, instead of a Mac at home.

He doesn't seem to be credited on this page, but I believe Pieter Levels (@levelsio) actually popularized this scheme. The author documents a nearly identical scheme.

2 days agorunjake

I'm fairly sure that levelsio didn't popularize SSHing into a computer from your phone to run a program. We were all doing it before LLMs.

2 days agostavros

I agree, I'm failing to see what's novel here... Running an ssh client from a phone has been a thing forever

2 days agobigfishrunning

The LLM crowd kind of likes hype.

2 days agoyeasku

RDP clients as well.

2 days agomr_toad

I did this on my Nokia phone over GPRS in 2005, my program of choice was irssi. We did have a Markov chain bot though.

2 days agopizzalife

This!

a day agojohnisgood

By “this scheme” I meant combining these several technologies for vibe coding on an iPhone with Claude Code. It’s been a bit of a viral meme on X this week.

2 days agorunjake

I started doing this before it was viral - it's basically obvious and I'm sure many people simultaneously did it since it was so obvious and easy to do - I even have the same tech combination.

a day agodjmips

New ideas build on existing ideas. He said SSH into a computer to run Claude Code on that computer.

2 days agoelemdos

Yeah, I've never read anything levelsio wrote and I sshed into my computer to run Claude Code five minutes after I installed Claude Code and had to leave the house for a bit.

It's not such a crazy idea.

2 days agostavros

No, somebody famous had to influence you for it to exist. The real progenitors are always other people.

2 days agoRobotCaleb

The whole point to SSH into a computer is to run the programs on it.

2 days agoehnto

But is Claude Code

2 days agoyeasku

Yes. I and many others were already doing this obvious thing.

a day agodjmips

I think he was being facetious ;)

a day agolobsterthief

>Email is clunky and feedback is not immediate.

You're vibe coding on a smartphone into an external computer. You already abandoned "Immediate feedback" and "cohesion".

2 days agojohnnyanmac

People have all kinds of bad experiences with tech. The kids write off any thing they didn't invent or adopt as inadequate.

It usually comes from the bad experience or poor exposure.

Its hard to hate on them when it comes from a position of limited exposure.

2 days agoworthless-trash

Yeah, any outright dismissal of a perfectly reasonable idea like this smells of market opportunity.

a day agoduggan

While I don't use the AI part I have a very similar scheme and it is one of the reasons I encourage people to live in the terminal.

The idea is to create a modern "terminal"[0]

My main computer is a Macbook Air, which I carry around with me. It's purpose is for: internet, using Microsoft products when I'm forced to, Zoom/meetings, and SSH (or Mosh).

Most of my work is not done on this Macbook, instead I use it mostly as a terminal. I have a desktop that's sitting behind my TV so that it can be my TV and gaming system (yeah I know Monitor > TV. I'm a filthy casual and I don't care). I have a mouse connected to that computer and instead of using a keyboard I use ydotool (Wayland xdotool) with a shortcut on my iPhone or a script on my android phone or from my Macbook. I don't have to get up from the couch and I don't need a clunky wireless keyboard to clutter my livingroom.

Additionally I have a few pis and an old android phone with Tailscale installed on them. That's come in handy before as a machine's been disconnected and so I couldn't ssh from outside. Also makes it really easy to do a jump if you want to keep a machine off Tailscale or you don't have full control (like my 3D printer).

This setup is very natural feeling if you live in the terminal. I actually started doing this when I started doing HPC work. In a setting like that you're never sitting in front of the computer you're doing most of your work on so it kinda clicked "why was I restricting myself outside work?" Plus there's the side benefits of I always have access to my media, tools, and other stuff. You can do exactly the same thing with a phone but I like having a keyboard and the air is very lightweight and has a long battery life. Any netbook would have done the job tbh.

[0] There's a reason they're called "terminal emulators" rather than just "terminals".

2 days agogodelski

Yeah thin clients [0] make a lot of sense with this kind of workflow. If you only really need text, living in the terminal and browser, it might make sense to use eink for eye comfiness and outdoor readability, something like this hack: https://maxogden.com/kindleberry-wireless. Or one of those eink android tablets.

[0] https://en.wikipedia.org/wiki/Thin_client

2 days agoefskap

Has the refresh rate on eink devices reached like 30-60fps?

It definitely looks cool and I might give it a try, but I do love my dark mode and color syntax. My understanding is that color on eink is pretty limited. It also isn't worth it to me if I'm going to be spending $500+ on a "monitor". But I'd definitely love if things moved in that direction.

Honestly if Apple wasn't so insistent on making the iPad not a general purpose computer I'd use that as my thin client.

2 days agogodelski

They are still not great for high refresh rate, but I have a boox note air4C that can do fast-enough for video. It gets some ghosting (although it should be minimal for typing as you are fully changing from white to $color, backspaces might be a problem though). You will need a full refresh when scrolling but that is fast enough.

a day agogabrielhidasy

> ... I encourage people to live in the terminal.

I've done this for decades. screen or tmux (although I still confuse the keybindings between the two).

When coding on the move (mostly when I had a long commute or was away from the office visit clients) I'd use the Linux console (Ctrl+Alt+F1-F6) rather than X.

Even in the office I had an old amber/green terminal that connected to my Linux desktop via a serial port.

Nowadays I have a 14" USB-C monitor (ASUS Zenscreen) that sits beneath my main monitors which runs a terminal full screen.

a day agoalexfoo

Similar, except I use a 10 year old surface pro 3. But I have to have a mechanical keyboard, so it's not exactly portable, but I can work from anywhere

I have no interest in LLM, or vibe code. Even though I miss the capabilities of intellij, nvim can fill the roll in the terminal very nicely, except rust analyzer filling up storage fast,

I also have a spare mobile, which I use to wake the computer up. And I have a python script running on it, to shutdown the computer in case of power failure.

After initial hiccups it working pretty well, except cats turning off the router, well how many can use the excuse that I couldn't finish the work because cat controls your network. LoL

a day agot_mahmood

How do you type? I get the ydotool usage but do you have a shortcut for each key then on your phone?

2 days agok4rli

For my iPhone I made a dumb script using the Shortcuts app. It's a horrendous app that combines all the worst parts of a scripting language with all the worst parts of a visual language. But I'm not sure how else to do it besides learning swift (I'm not confident I made the right decision btw. It is that bad)

So I just press a button from my quick select and then it'll send my text followed by a carriage return (depending on which option I use).

On Android I did something very similar using termux but it only took 2 minutes to write and is much easier to understand and use

19 hours agogodelski

Things are trending this way. I call it the PC counter-revolution.

2 days agomkoubaa

If you've got a Mac in the mix, you should be aware that it can use an Apple TV as a monitor, so you can have a wireless extended desktop to anything that takes HDMI.

2 days agofragmede

Are there any benefits besides a nice GUI? I'm fairly comfortable with my linux desktop as an interface. TBH the most frustrating part is the iPhone shortcut app I made which I strongly believe is less about me and more than Apple is actively trying to be annoying (I recently had an update that required a minor change because the dictionaries in Shortcuts is idiotic)

Also, I heard that you can install Tailscale on it[0], so that can act as a gateway which is nice.

[0] https://tailscale.com/kb/1280/appletv

2 days agogodelski

It's something to be aware of if you already have the mac. It's nice to be able to have people over and they can share what's on their laptop with everybody without everybody having to huddle around one machine.

2 days agofragmede

> Tmux is helpful, too.

Yes. tmux is essential. It's great to be able to monitor a session from desktop, or to pick up an existing conversation i'm having on the computer on my phone. In my shell, I have gemini flash wrapper that I use to manage my sessions so I can quickly connect to an existing one, or create a new one with natural language.

> He doesn't seem to be credited on this page, but I believe Pieter Levels (@levelsio) actually popularized this scheme. The author documents a nearly identical scheme.

I've been doing this (tailscale + termius + tmux + ssh) for at least a year and a half. First with Aider in this exact setup, and now with Claude Code and Codex.

2 days agopostalcoder

So what about setting up a discord server for you and your LLM? Gets the notification benefit of E-mail but retains the immediate-resposne, no? That's how all my UptimeKuma notifs are setup atleast...

a day agodpoloncsak

I can no longer edit this comment but it wasn’t meant to criticize the author. This is a great post. They are sharing their experiences and more importantly, teaching others.

Sorry if anyone, especially the author, took it this way.

2 days agorunjake
[deleted]
2 days ago

It wouldn't shock me if multiple people came up with this idea independently. I've certainly experimented with it over the last couple years.

2 days agodeanputney

I've been using Claude Code in their iOS app (on a Pro account). I just point it at my GitHub repo, and tell it to work on one of the issues I created. It required very little setup beyond what I did for Claude Code CLI.

2 days agokhy

i've seen that work well on existing codebases, but bootstrapping a codebase that way is like pulling teeth in my past experiences.

so it really sort of falls back to what you're doing with the llm. code maintenance isn't novel development, which isn't polishing.

2 days agoserf

> So this is the 4th+ article I've seen on using a VPN to vibe code on your phone.

and all of them mentions Tailscale. I would not be surprised if we hear in a few days it got next big fund and all of this is just a preparation for it

2 days agokkarpkkarp

I did this on my own without reading any of these articles - I already had a terminal program on my Android phone and was already using Tailscale for shared projects in Ghidra so... Maybe it's just a path of least resistance.

a day agodjmips

a fully open source alternative would be netbird, it's based on wireguard as well, has 0 closed components but lacks some features (like IPv6 or internal CA). https://github.com/netbirdio/netbird

a day agormoriz

Right. For a simple setup I think using plain boring Wireguard is the better option. Boring is good.

a day agoTepix

Tailscale has been a HM darling for a long time, this isn’t very surprising!

2 days agomaccard

Why not use a browser?

OpenCode has a webUI, you can simply host that on your machine at home and VPN to it.

https://opencode.ai/docs/server/ (sadly no screenshots, but its a pretty good GUI, looks like their desktop app)

2 days agogempir

You need tmux to be able to resume the same session from anywhere, mosh-server to make ssh resilient to sketchy mobile connections, and blink shell https://blink.sh/ to have a high quality iOS shell with a mosh and ssh client built right in to resume at any time.

Far more resilient and performant than a web client.

2 days agopmarreck

Well the beauty is the logic lives on the server. The client is just a client.

If it disconnects you just reload the page. It can work just fine in the background because it’s not running on your phone.

Just like you can refresh the ChatGPT website, but OpenCode lives on your pc at home, not OpenAI servers.

2 days agogempir

yes but I've never seen a terminal interface embedded in a browser that is as good as a native terminal app interface, and blink shell has been well worth the upfront cost to me (way better than Termius, which was suggested in the writeup)

2 days agopmarreck

Is it easy to move the text cursor around in the text input in blink shell?

2 days agokovek

> and blink shell https://blink.sh/ to have a high quality iOS shell with a mosh and ssh client built right in to resume at any time

I really like Termius, have you tried it? I think I tested out Blink when I was trying various SSH/shell apps and chose Termius over it, but it’s been so long now that I completely forget why.

EDIT: does Blink give you a local shell as well like vs only SSH/mosh?

2 days agoeinsteinx2

tried tmux but realized claude/gemini/codex's --resume works great and have since started using a single chat for all small work projects

2 days agoalentodorov

From that page:

> The opencode serve command runs a headless HTTP server that exposes an OpenAPI endpoint…

Unless I missed it, there’s no mention of a web UI?

2 days agotailspin2019

The docs are very behind, there is indeed a full blown webui and with opencode serve you can access it

2 days agogempir

`opencode web` runs the web ui. It's very good.

2 days agoodie5533

Email might work, however if you're a Telegram user you could write a bot that runs on your home system that runs the cli commands on your behalf and then sends the output as a response to you. No need to open up any ports on your router.

2 days agoFlere-Imsaho

I didn’t know until I read this comment, but this is exactly what I want. A telegram bot with Claude on the other side and GitHub app to check out the code

2 days agogonzaloalvarez

I've replied with this in another comment, but this seems more pertinent ;)

Thats exactly the approach I took with https://github.com/cloud-atlas-ai/miranda, Telegram bot, PR is the human review point, tests + CodeRabbit catch most issues.

Bot intercepts Claude's AskUserQuestion calls via a hook, sends me an inline keyboard, injects my answer back into the session. Claude keeps working, PR still happens—but I can unblock it from my phone in 5 seconds instead of rejecting a PR based on a wrong guess.

2 days agodurch

That looks really cool I'll have to check it out.

a day agoFlere-Imsaho

I have custom scripts I use at home to keep track of various personal data, assisted by an LLM. The idea of using Telegram as a way to have a global, quick, and personal interface from my phone or tablet, is perfect and easy to set up.

Claude is making it easier to have bespoke data and dashboards for anything. We're going to make a lot of them, for all reasons. I've also made apps with Django interfaces, but quick, global interfaces are going to become in demand.

2 days agodogline

I concur, but I also think that Home Assistant could be used as a rock bed to build many of those dashboards easily. They just need to revert the "go all in on UI first configuration" and keep YAML declarations as first-class citizen to let LLMs easily compose dashboards based on user's desires.

a day agodarkwater

I've been using Telegram bot to talk to a Claude SDK agent who talks to my Claudes via tmux commands (all running on a DigitalOcean VPS)

2 days agojes5199

Can you do it with signal?

a day agogingersnap

Cloudflare worker would work, too

2 days agoelectroglyph

I have read of people doing remote coding with clause but through having Claude create pull request. The user then looks through the requests, and either approves or sends it back with edits. Seems like a good way to interact with Claude code, especially once one sets up a test suite and those proposed pull requests have proven not to regress.

2 days agoLTL_FTC

Same approach here. PR is the human review point, tests + CodeRabbit catch most issues -> https://github.com/cloud-atlas-ai/miranda.

The gap I wanted to fill: when Claude is genuinely uncertain ("JWT or sessions?" "Breaking change or not?"), it either guesses wrong or punts to the PR description where you can't easily respond.

Built a Telegram bot that intercepts Claude's AskUserQuestion calls via a hook, sends me an inline keyboard, injects my answer back into the session. Claude keeps working, PR still happens—but I can unblock it from my phone in 5 seconds instead of rejecting a PR based on a wrong guess.

Works in tandem with a bunch of other LLM enhancers I've built, they're linked in the README or that repo

2 days agodurch

This pretty much sounds like my dream vibe coding dashboard - basically a personal Github populated by AI agents I can assign tasks to. Does this exist yet? Or can something like gitea be setup to behave this way?

2 days agojohnmaguire

In terms of issue tracking and agentic "developers", with a mobile focus -

You can connect Linear to Cursor's web agent, which makes Linear issues assignable to the agent directly and kicks off Cursor's take on remote coding agent. You can then guide it further via Cursor's web chat.

If Claude Code on iOS supported Linear MCP (as it does on desktop), you can run a similar issue handoff to agent to issue update workflow, albeit without direct issue assignment to the agent "user". Easy to use labels aka tags for agent assignment tracking, as well.

For my hobby projects, I've been using Linear + agentFlavorOfTheMonth quite happily this way. I imagine Github issues, Asana, whatever could be wired up in place of Linear.

2 days agoharlanlewis

Gastown, by Steve Yeggs is that, via tmux. It's rather opinionated and still in development, but it's worth a look if that's what you're looking for.

2 days agofragmede

Steve Yegge is building awesome things in this space, but I've found them too heavy, started using bd when it was small, but now its trying to do too much IMO, so made a clone, tailored to my use case -> https://github.com/cloud-atlas-ai/ba

2 days agodurch

durch - just starred this repo! Looking forward to testing it out as I learn how to build with multiple agents.

I'm just starting out with building with Claude - after a friend made this post he sent me a Steve Yegge interview (https://m.youtube.com/watch?v=zuJyJP517Uw). Absolutely loved it. I come from an electrical/nuclear engineering background - Yegge reminds me of the cool senior engineer who's young at heart and open to change.

a day agorbergamini27

This is how I do mobile device coding. Android terminal w. git and gh installed and authenticated. Claude manages the feature branching and PR process; I review the PR in the GitHub mobile app.

2 days agomagospietato

Claude Code does a very decent UI, somehow the text mode is much more attractive. As if there is once in a lifetime opportunity to make the console great again.

a day agolarodi

> What is the downside to using email?

If true to the post, it lacks "real time". Doom scrolling by nature is while chat is async. Refreshing Gmail constantly is not fun.

2 days agoirjustin

You don't need a VPN to vibe code on your phone. I've been happily doing thumb-driven development for the last 4 months now using GitHub Copilot on github.com from my phone. It even has real-time chat with copilot as it works. Having your PRs deploy to an environment allows you to check it. I also have playwright tests that record screenshots and traces that get uploaded as artifacts I can check too.

2 days agolatentsea

I’ve been doing some of this through a term on my phone, but it honestly sucks. Other interfaces (telegram, web ui, email) are gonna be much better experiences on your phone.

2 days agojscheel

ive tried slack before, but a challenge is how well you can get results returned back in a way where you can actually see what it did and give proper next steps

getting a PR back and being able to put comments on it is fine, but ive had middling success getting qcli at least to actually match the comments with the code that was commented on. i get the sense that there isnt any training with the comments inlined well on a diff:/

it doesnt have to be a vpn though, i was on an oauth webbrowser terminal, and things like coder[0] let you run vscode on the browser, including on your phone browser. there's also happy coder[1] which i tried using to connect between the new builtin android linux vm, and skip all the remote stuff entirely, but the phone would inevitably kill the terminal runbing claude, killing the whole thing. you can currently just run claude from your phone in that, which only has the problem that when the vm crashes, all you can do is wipe the partition.

[0] https://coder.com/ [1] https://happy.engineering/

2 days ago8note

If setting up a VPN is that difficult for you you may have bigger problems my friend. (I joke). But really I am surprised that a VPN is the part you take issue with.

2 days agosomeguyiguess

No syntax highlighting, I do like to review snippets of code. Also the interactive questions / answers during planning would be a pain over email. And what about text wrapping? Headache.

Edit: also setting up an email interface API to Claude Code seems like a lot more work than just setting up a VPN.

a day agogitaarik

I see no downsides. Seems like an actually useful udea.

2 days agoeducasean

that would be perfect.

2 days ago9dev

This is genius! The tailscale vpn was stupid easy to setup (I'm a near novice and figured it out). An email interface with progress updates would be even better than doom coding.

2 days agorbergamini27

it looks like some kind marketing push or 'growth hack', just to get some viral thing around which justify why do you extra reason to pay for Claude or Tailscale subscription.

I personally not even convinced that Claude Code any better on average than something like Aider+Gemini 3 or other good model. May be in some specific cases it actually better but in those Aider+'Antropic Model via API' most likely will work too.

a day agostrobe

So basically back to the chat-interface. You could also replace e-mail with WhatsApp, Telegram, Slack, Mattermost or whichever you prefer, it would be all the same.

a day agoPurpleRamen

I’d love this, if only for improved diff reviews possible compared to a terminal window! Would also work better for intermittent connectivity.

2 days agoscottbez1
[deleted]
2 days ago

> What is the downside to using email?

Make sure you authenticate somehow to prevent external abuse.

2 days agodarknavi

then run the mail servers locally?

2 days agoNatfan

I code from my phone via GitHub and the Claude actions plugin.

2 days agoaqme28

interesting. email. Simple multiple sessions support to reply vs tabbing here there get threaded. clever

with vpn vps if want to interact? how would that work?

2 days agoaghilmort

E-mail is not secure (sent in plain text)

2 days agoslashdave

You're vibe coding. Clearly what you're working on isn't of enough value to secure anyway.

2 days agojohnnyanmac

Unless you set up pgp in your email client...

2 days agobigfishrunning

Email is funny - maybe as a backup. Prompting is chatting.

2 days agoj45

Okay, IRC then!

20 hours agoherewulf

or text messages? Could be more convenient to reply to a text

2 days agoralfhn

I'd rather have an DM interface and each task has its own little icon or face. You still have to set up one of the text servers and also do VPN but if you're already vibe coding that stuff why not make it more pleasant than TUI on your phone?

2 days agoplagiarist

How about leveraging the git email workflow? hey - Claudio submitted a patchset

2 days agocalvinmorrison

It's amazing to me this is called coding at all. Who knew all project managers and business analysts coming up with business requirements were actually just coding gods sent from the future.

2 days agoZenoArrow

Inspiring me to do this in Telegram

“Why not Telegram”

all the crypto bros are already there, and maybe some e-commerce

2 days agoyieldcrv

> seems easier then getting a vpn working

it could not possibly be easier to get Tailscale up and running on your mac or linux machine, install tmux and mosh on your mac or linux machine, connect to it with Blink Shell https://blink.sh/ on your iOS device that you've also installed tailscale to, and start vibe-coding from anywhere, on a performant, resilient, instantly resumable terminal connection.

seriously, it's a game-changer

2 days agopmarreck

But I already have email.

2 days agomulmen

> Would an email interface to Claude code work better?

This might be the most "when your only tool is a hammer all your problems look like nails" suggestion I've ever read.

Email driven automation isn't a terrible solution to everything - it works very well for support tickets, for example - but it's really lacking in the immediacy required from a serious software development environment.

I'll go further: I think coding on my phone is a fun, neat, idea, and an interesting curiosity, but I don't actually want to do it. There are few situations where I'd feel comfortable getting my phone out to code where I don't also have my laptop with me, and that's going to provide a way better software development experience, so I'm always going to use that for anything serious.

2 days agobartread

My thoughts went into a different direction: "Maybe I should buy a small tablet so that I can read code properly without carrying a full laptop?"

(Sure, there might be small laptops of similar dimensions ... But as the name "laptop" suggests these are made for a different UX... and they require more effort to turn on/off)

a day agoGarlef

> Great for parties where you rather be home tinkering.

I know this is probably in jest, but when someone invites you to a party it's not because they just want your atoms in the same room as them.

In regards to doom coding: I would chop off my arms before coding/prompting on a phone. Also, think about your cervical, neck etc! I feel like I'm taking crazy pills!

a day agoigleria

I host weekly friend-of-friend open events where some people show up most weeks, find a nice comfortable spot to doom scroll in for a couple hours, maybe take a nap, leave, sit in their car for a bit, scroll some more, then go home.

I am just hoping they actually took a break from doom scrolling while driving as then at least I can say I had some non zero positive impact on their lives.

5 years phone-free and I do not miss it. People use them as security blankets to avoid having to be present for more than 5 minutes at a time with other people or even just exist in their own heads. I now find this behavior immature and gross but avoiding it would mean not having friends.

A smartphone is like toilet paper. No one wants to watch you use it.

a day agolrvick

Maybe host your event in a cave if you can, no cell coverage, no Wi-Fi.

There is a bar like that where I go sometimes, it is in a cave, some people got Wi-Fi from the staff, and you have some reception if you stand near the front door, but it is mostly a network-free zone and it is great.

Another thing we did from time to time at the restaurant is to put all our phones stacked in the middle of the table, anyone who picks up his phone before the end of the meal for any reason pays the bill for everyone. So far, no one did.

a day agoGuB-42

Suddenly the one good use case for lead paint becomes clear.

a day agolrvick

Get better friends! Not everybody does this.

a day agorjh29

Very curious to hear how you went phone-free and what your setup looks like

a day agocarlgreene

I have a mini PC hooked to screens in every room other than the bedroom and bathroom, and remote controls with built in air-mouse and keyboard (pepper jobs remotes). This way anyone can pick up a controller in any room and look something up on a shared communal screen as needed, which discourages use of private screens.

When I leave home for less than a day I pack no electronics of any kind and enjoy the peace in my own head to think about the next problems I want to solve in my universe.

I pay with cash exclusively in public so tap and pay is not an issue. If I ever need to be reachable for emergencies I can carry a pager but so far this has not been worth it.

a day agolrvick

Did not expect that: I got rid of a small screen i can carry around by putting a lot of small screen all over my house.

I put that in the same bin as all the “Stop doomscrolling” apps. You can’t prevent doomscrolling by adding another app on your phone. Get rid of the phone (and all other screens), one does not need to be able to look up everything in a moments notice. Write it down on a paper and do it later.

a day agoshreddit

It causes a major difference. It forces all uses of screens in common spaces with others present, to be inclusive to said others. You do not open anything on shared screens you do not mean for others to participate in, so they function more as collaborative tools instead of private escapes.

Anyone can grab a remote and access to summon shared entertainment, order food, do shared research, fact check something, etc... but said screens are just linux machines with no proprietary software or magic addictive algorithms. Just tools.

Also when we walk away from them they do not follow us, and they cannot notify us.

It has completely changed the way my family and I interact with, and separate ourselves from, the internet.

If my phone battery died, I used to panic. Now with no phone, when I leave home, I am just... present, and can get lost in my own thoughts again. A skill I lost for decades with distractions always in my pocket.

Really just moving the screens further away, tethering them to walls, and ditching all proprietary addictive software is easier. Also a couple TVs and mini pcs cost less than one modern smartphone and covers the whole family.

6 hours agolrvick

I'm with you... just with gesture input as it is, I hate using my phone for much beyond a quick comment or two. I can't imagine trying to do anything technical with a phone's onscreen keyboard. Even through an AI prompt... nope, just nope.

At worst, put your ideas into a notes app and then go back to where you are... this is just anti-social and borderline psychotic imo.

a day agotracker1

Yes to the last two 100% - hence the "doom" in doom coding! I wrote the post more as a replacement to TikTok scrolling - it feels like a worse evil, but it's still not healthy.

The UI isn't as good as a laptop but maybe it's all my years of swiping, liking, and navigating between apps. In a very sad and concerning way, phone time feels like home.

a day agorbergamini27

I am still trying to understand how installing Tailscale and Claude Code then connecting to your home network externally and opening a mobile terminal on your phone is a novel idea that requires a full Github writeup.

So, I do this when I am sitting on the couch and too lazy to boot up my laptop that I normally do work on, but it never gets much further than updating, pulling or pushing one or two containers, or more times than not trying to remember what port AI have something on so I can connect the companion app to it.

It's not a bad idea in full, but "death coding" is a ridiculous notion.

a day agotropicalhunter

There is an infamous "Dropbox comment" on HN that reads the same way as this comment. No idea is new, and novelty is almost never the point. I had seen people do similar things in the past but never approached it myself. Here is someone that has done the thinking for me and put it out there for free. I appreciate that.

a day agoa1371

Yeah, but the OP is more like the "all you have to do is rsync and cron job". It's an article about the relatively complex step by step process that people do to implement a functionality. It may be the inspiration for an analogous dropbox, but definitely not the dropbox article or post. A product that you could grab from the app store that does all of this out of the box would be the analogue to dropbox.

That said, this would be interesting to someone who didn't know these tools could be stitched together in this way. I think that's a big part of why it's on the home page.

a day agodaveguy

Y'all I'm as shocked as you are it's on the home page!

I'm new to hacking (come from an electrical/nuclear engineering background but never did much with software). For reference, just learned what postgres was 2 months ago.

Took a lot of tinkering to figure out but that's more a skill rather than complexity issue. Working from a laptop is certainly better, but was able to get good amount done (like building v1 of a backend and setting up a cloudflare tunnel for a PC) on a long bus ride where I would've gotten side eyes for using a laptop.

I'm no doctor but I'll bet "Doom Coding" is still not healthy but it's better than doom scrolling on X.

Thank you for the comments! I've been learning from these threads (Like tmux or dropbox article lore)

a day agorbergamini27

I’m equally surprised to see these posts pop up everywhere on X, GitHub and now also HN. Am I that old that SSHing into a server through a VPN is such a novel concept nowadays?

a day agoartdigital

I think the commonly used platforms, ISPs, etc. make this just annoying enough that most people really don't know how easy this should be.

a day agothenoblesunfish
[deleted]
a day ago

Why would it have to be novel? We now have a full interesting discussion about vibe coding on phones thanks to this GitHub writehub that we wouldn't have had otherwise.

I haven't set up a vibe coding phone environment, nothing has stopped me at all as I agree it is really simple/"basic", but this post made me actually go do it.

a day agokristofferR

If you don't want to run your machine 24/7 (whether for electrical consumption, environmental, noise, etc reasons), I wrote an ssh proxy [1] that will send WOL packets to a target machine and hold your connection until its alive.

I then configured debian-autoshutdown [2] to turn the machine off if there's no traffic on ssh after 15 minutes.

This way I just ssh into my machine (whether via antigravity on my laptop or termius on my phone) and within 30 or so seconds its awake, no physical button presses needed. I documented the whole flow in more detail on my blog [3].

I'm now working on an improvement called machine on proxy (or mop) that will allow me to start Proxmox VMs instead of physical machines, so I can let gemini-cli run wild and if it decides to wipe the entire hard drive I can restore from a snapshot.

[1] https://github.com/simonamdev/ssh-wol-proxy

[2] https://github.com/mnul/debian-autoshutdown

[3] https://www.simonam.dev/ssh-wol-proxy/

2 days agopurrcat259

I do the same. I can SSH into my router at home (which is on 24/7), then issue a WOL request to my dev machine to turn it on.

You don't even have to fully shut down you dev machine, you can allow it to go into stand-by. For that it needs to be wired by cable to LAN, and configured to leave the NIC powered on on stand-by. You can then wake up the device remotely via a WOL magic packet. Maybe this is possible with WLAN too, but I have never tried.

Also, you don't need a Tailscale or other VPN account. You can just use SSH + tunneling, or enable a VPN on your router (and usually enjoy hardware acceleration too!). I happen to have a static IP at home, but you can use a dynamic DNS client on your router to achieve the same effect.

a day agoLeonM

I run a lot of small form factor (SFF) machines including NUCs, Minisforums, and a Mac Studio.

At idle, they aren't loud or consuming much electricity compared to sleep/shutdown.

Fruit co devices in particular are extremely efficient; the Studio is rated at 6W idle, 145W max consumption (cf. https://support.apple.com/en-us/102027 )

a day agoexographicskip

Can you do the same to remotely wake up my MacBook on demand via WoL and ssh into it from my phone? What are the security risks?

a day agofittingopposite

I don't think WOL works over Wi-Fi and whether you can get WOL from a USB ethernet adapter.

My proxy doesn't attempt to handle security. Most folks use either Tailscale or some other VPN solution. In my case I use the wireguard server in my router to VPN into home which gives me access to the proxy and consequently to the machine.

a day agopurrcat259

Historically I had thought there was a pendulum swing between using local computing resources vs. having a dumb terminal to access something remotely.

But now instead of swinging back to local resources, apparently we're proposing to add a second layer of remote access (phone -> computer -> Claude servers).

2 days agozahlman

In the last 5 years I pretty much fully migrated to my laptop being a terminal for other machines. I more use it like a local machine in HPC: web browsing, word processing, scripting. Anything serious is done remotely. But I also live in the terminal and so realistically what's the difference? 99% of the time the result is that I get to use a "big" computer without having to carry it around.

FWIW, I'm not a big fan of AI coding. I use AI (including LLMs) and I am an AI researcher, but the vibe coding just hasn't clicked despite constant efforts. I guess it can make more sense to do it if you're programming from your phone because while normally typing isn't the bottleneck it definitely is on the phone (or at least far less comfortable)

2 days agogodelski

Same setup as mine, I have an OpenVPN server running in my router, and my main PC has wake-on-lan and a KVM as a backup to turn it on and off.

I have an old used Dell Latitude that I use as a pseudo thin client. I ssh into my PC, and everything just works.

I really like this setup because I only have one environment, so everything is there, and I don't have to install anything in the laptop

2 days agowolfgang000

  > I really like this setup because I only have one environment, so everything is there, and I don't have to install anything in the laptop
Yeah that's one of my favorite parts. Same about living in the terminal. I can be effective anywhere nearly instantly. I carry everything around in my dotfiles and keep it small (keep the .git folder small and don't add anything except text files)[0].

On that note, one thing I highly recommend to people is to add some visual clues to tell you which machine you're on. I use starship and have a few indicators but I also have some PS1 exports that I've used in the past or use in new tmp instances (I HIGHLY recommend also doing this for when you're using the root account). It can get confusing when you have different tabs on different machines and it is easy to mistake which one you're on.

[0] I also recommend keeping notes there if you like writing in markdown. Files are so tiny that it's worth having them. It's benefited me more times than I can count.

2 days agogodelski

If you don't mind, I'd like to hear more about your setup. I have a bunch of bash scripts and python programs I've used to make working in the terminal easier (and more fun). Are you saving your dotfiles are a git project and then just syncing and pulling them down from there? I'm not an expert, just a tinkerer, but I like tinkering in the terminal. :)

Thanks in advance!

a day agojdshaffer

Not the parent but a project (glorified Bash script) called vcsh[1] has served me well over the years for managing multiple Git repositories containing my dotfiles (separation of concerns).

Lately I have migrated some of that to Guix Home because the other half of the problem is having all the dependent programs necessary for the dotfiles installed automatically at the appropriate versions.

The latter one especially falls into the realm of tinkering. :)

[1]: https://github.com/RichiH/vcsh [2]: https://systemcrafters.net/craft-your-system-with-guix/guix-...

20 hours agoherewulf

Thanks for the input! :-)

15 hours agojdshaffer

Yeah my dotfiles, notes, and scripts are in a single repo. I think the most important thing to do is organize. I just match the system. So I put everything that a rc file in ~/ in one directory and everything in ~/.config in another. Then if you have your repo downloaded all you need is to run 2 find commands like this

  find "${DOTFILE_DIR%/}/configs/" \
        -maxdepth 1 \
        ! -name "*.md" \
        -exec bash -c 'ln -Fis "${0}" "${CONFIG_DIR%/}/${0##*/}"' {} \;
It baffles me that people are so unorganized in their dotfiles. A little goes a long way to making your life easier. But then again people suck at bash so they're probably not thinking of using find this way. You could also use xargs to parallelize if you want but there'd be no practical speed difference for me

Another key component is to break out files. For example I have the directory ~/.dotfiles/rc_files/zsh. My zshrc file sources different files from that location. So I have a Linux file and OSX file there for anything that is specifically system dependent. If you want different configs on different machines you can check the hostname and use the same pattern!

Speaking of which, use functions! At first this is going to sound crazy but it's worth the effort and let's be honest, the effort is very low (though the initial rebase might not be depending on how messy you are)

  function _exists() {
      command -v "$1" &> /dev/null
  }

  alias_ls() {
    alias_lsd() {
        alias ls='lsd'
        alias la='lsd -A' # A drops . and ..
        alias ll='lsd -l' # h is automatic
    }
    alias_base_ls() {
        alias ls='ls -v --color=auto -h' # numerical sort, color, human readable
        alias la='ls -A' # ignore . and ..
        alias ll='ls -lh'
    }
    if ( _exists lsd );
    then
        alias_lsd
    else
        alias_base_ls
    fi
  }
  main() {
    alias_ls || echo -e "\033[1;31mls aliasing fucked up!\033[0m"
  }
  main
Yeah, it is a bit more cumbersome but it's really not that bad and

  1) debugging gets so much easier
  2) you know where everything is and what everything does. 
  3) trying new aliases, command tools, scripts, etc also becomes a lot easier. 
Following Unix philosophy has more advantages than disadvantages. I also strongly suggest adding comments because you'll forget why you did something. I'll often link to posts for this and for giving credit.

Since we're speaking of bash, bookmark this website: https://mywiki.wooledge.org/BashPitfalls

Fwiw, my main language is Python but for pretty much everything in the terminal I write in bash. You can often make oneliners that would traditionally be a lot of lines in Python. Not to mention it's usually faster. It's a good way to help you learn bash too! ^__^

19 hours agogodelski

Thanks for the detailed reply, examples, and links! Yeah, I definitely rely heavily on bash script functions, but had never thought about using git to share or sync my scripts and little programs. Thanks again, I really appreciate it!

15 hours agojdshaffer

My desktop is 11 years old, but I still feel like it does so much that I wouldn't want any cloud services except for AI. (And there's no way this thing would handle a useful local model, but I'm also really not very enthused about the kind of data sharing involved in remote AI use.)

2 days agozahlman

I mean the power of the work machine really depends on what your needs are. Definitely should adapt to whatever your needs are.

  > And there's no way this thing would handle a useful local model
So if you have a setup like mine then it is fairly trivial to incorporate that (or anything else). Either way you'll need a machine that can do the local AI though. Either that is on your "work machine" or you run the AI on a separate machine. You could even rent a machine and as long as you add it to your Tailscale network then you're connected.

I strongly suggest having a workhorse machine and then let other devices be your terminal into it. Your terminals can be very cheap (or an old machine) or as suggested, your phone.

2 days agogodelski

I appreciate the thought, but advice like this is completely irrelevant to my current circumstances (and personal principles) and would be very expensive (respectively, emotionally unpleasant) to implement.

2 days agozahlman

Just trying to help given that you responded. I'm happy to help you find solutions but the constraints might be too much, unfortunately. If you don't have a machine that can run local AI and don't have the funds to buy one then frankly it just isn't in the cards. But hey, if you don't want to use AI or at least willing to use non-local then the setup probably doesn't require you to spend a dime.

2 days agogodelski

(I wasn't looking for a solution, just giving my perspective.)

a day agozahlman

Hey, come on, it could be better: you could have hundreds of employees venting directly to chat logs held by Microsoft detailing all your internal politics, planning, customer acquisition strategies, code, integrations desires, excel sheets, emails, and projects.

Nothing could possibly go wrong, those guys are always 100% trustworthy and reliable, contracts and NDAs with them are ironclad and easily enforceable… … o_o

2 days agobonesss

Maybe in the future we'll all have a "hub" in our homes that contains our data, but we'll shell out to the local datacenter for AI compute, while our actual interface will be a VR headset or tablet located with us, anywhere in the world.

2 days agophendrenad2

Does this approach work for anyone? For my life, I've found that if I'm not behind the computer then I'm not in a productive situation anyway, even with AI access. I don't have a setting where I can concentrate for a long time and think clearly. For examole when watching children, doing groceries, during transit (probably have to change train in 20m, or walking to next destination). No convenient access to a notepad and pen. On a phone it's also inconvenient to do research.

For me personally I've found two better uses of in-between time:

1. Micro exercises. Really important for health and longevity, especially when it's hard to find dedicated time for exercise.

2. Resting. This means no phone. Yeah hard to resist doom scrolling. Just relaxing muscles and breathing exercises, calming down the nervous system. Increases long term resillience and reduces stress.

So I'm a bit puzzled. If you are in a situation where you can concentrate, why not just pull out a laptop? Typing on phone is really annoying. Even complex conversations with AI I prefer doing on a laptop.

Perhaps there are coding tasks where the prompt is not too complex and it's more about writing code. But you still have to review the result. That's even more annoying on a phone than writing text.

2 days agoFooBarWidget

I feel similarly. I am happiest and healthiest all round when I focus on the one thing I have chosen to do at any given time rather than figuring out ways to multi-task.

I do however enjoy choosing to do math/coding adjacent activities for leisure or learning sometimes when I'm away from the computer. I've found that it was a net positive in my life to add in puzzles/exercises that I can do with pen and paper in those circumstances.

2 days agojebarker

Yeah, even if I'm on a plane or a train I probably wouldn't pull out my laptop.

Lack of space, vibrations etc. even though I can do a lot of work offline if the internet is spotty. It's just not enjoyable.

I prefer to read or chill out.

I kind of envy people who are like oh yeah I coded the feature on the flight... I can't really get in the zone in that environment.

Saying that, I assumed this post was a joke. ssh to a work machine or a personal machine through a VPN is not new, even if you happen to run claude code in that terminal.

I'm interested in these "micro exercises".

2 days agojcul

Micro exercises: It's nothing fancy. While walking in the park, watching the kids play, waiting in a queue or in the train or something, when you have a minute to spare, you can do wall push ups, isometrics, leg raises, step jacks, squats, row pull with your jacket against a pole, etc. Exercises that don't require equipment. If you get an exercise band then you can carry it with you (very light and compact) and then there will be more types of exercises you can do. This will raise some looks, but they tend not to be negative, some people even praise me for staying active in unusual contexts.

Another thing I can recommend is Chinese style radio calisthenics (guang bo ti cao, look it up on Youtube, all Chinese people learn it in primary school and do them daily at school). Full body cardio like and stretching exercises that you can do while staying in one place (you just need space around you). Takes 5-10m, better warming up than just walking and swinging arms and covers a lot of basic things. The entire approach seems virtually unknown in the west.

2 days agoFooBarWidget

It worked for me for finishing my app (vps+shellfish+gemini-cli), I've done a lot of coding like this on the train and in between sets in the gym, picking up on the more complicated stuff when at home.

But also all of the changes I made from the phone were incremental.

2 days agoyoz-y

^^ I probably rely on AI slop than most people on this thread. I've found with the gaps with waiting on Claude Code output match the frequency I'm already checking my phone out of addiction. By no means the healthiest way to spend my time, but if I wanted to spin up a simple website or build out the framework for a project doom coding works for me!

Agreed 100% there are healthier uses of my time!

2 days agorbergamini27

I just have it send me a push notification.

2 days agonot_ai

In between sets!? I've found that if I do any activity in between sets (like watching Twitter) I'll just end up spending way too much and then make the exercise session super long. Also I can't focus and write a serious prompt or review serious results in just or 3 minutes. But maybe it works if the app is sonething you've recently worked on and you already have very clearly in your mind what you want, it just needs to be done.

2 days agoFooBarWidget

For incremental changes 1-2 sentences are usually enough. Also, since the program itself is a workout app with live reload, I can actually fix bugs while I’m using it.

As for too long of a wait I agree, it makes the sessions longer. Ideal window is after a heavy superset where waiting for 3-5 minutes is not a waste.

(Note that I’m not doing this for my real job, just for my personal project)

a day agoyoz-y

I think the problem you are having is that you are actually thinking clearly and rationally and are not suffering from this incessant brain rot that is the new normal.

2 days agodinkumthinkum

If you're on Android and can download QPython, it works just fine and has for years. This seems way overcomplicated, it depends on a remote computer that's on 24/7? Ick.

2 days agochankstein38

Also, if your Android phone is a Pixel, you can run the recently added Terminal app, which runs a plain vanilla Debian distribution within a VM. So you then have a pocketable Linux machine to develop code on. Not only does Python run on it, you can install the entire Anaconda Python suite.

2 days agoPopePompus

I tried this a while back with. NET and Blazor. With split screen I was able to add some code and preview live in the browser and build and 'install' a simple pwa.

Presumably with an external monitor and the desktop mode it would be better.

Code from tiny llms such as Gemma are a waste of time but it "worked". It was neat to generate a working app completely offline.

The main problem was that the VM crashed on my pixel fairly frequently. Might be better by now.

a day agointerloxia

I don't think it's actually the VM crashing, it's the Android OS killing what it thinks is an idle app.

a day agoPopePompus

Wow, that’s cool! I wonder whether one day Apple is going to allow something like this with headless “macOS” VM on iPadOS to make it a viable local development platform.

2 days agogloxkiqcza

I would venture a guess some time between: "The heat death of the universe" and "Never".

2 days agofuzzer371

Why would that be preferable to Termux?

2 days agocess11

Because, wonderful as Termux is, it has a very nonstandard filesystem layout, so installation scripts for something like Anaconda will not run without extensive modifications. And Termux has no access to /proc, /dev etc., so lots of utilities fail. Since Terminal provides a full Linux VM, all programs that will run on Linux just work as expected.

2 days agoPopePompus

Termux can access the full file system if you have root access, which is how I play around with it; however, running a VM is a safer and easier route, especially as smartphone manufacturers are making it tougher to root the device you own.

2 days agoRavSS

I haven't noticed anything like that. Some more obscure tools have trouble with the file system but that happens in ordinary Linux too. Though I have no experience with Anaconda specifically so you likely know better whether it'll need adaptations to work under Termux.

I run htop just fine on my handhelds and I'm pretty sure it sources directly from /proc, /sys or something.

a day agocess11

On my unrooted Pixel, I get "Permission denied" errors if I ls /sys, /dev, /proc and / within Termux. And /usr and /var don't exist.

a day agoPopePompus

Sadly I'm an iPhone kid - and yeah the 24/7 computer running is not ideal. It's been nice building on the server that I'm using to host the app, but then again I could just run the Dockerfiles via QPython and push the code via git?

2 days agorbergamini27

> A Claude Pro subscription

"Doom Slopping" might be more fitting.

2 days agoparliament32

Exactly

2 days agorbergamini27

I remember when I started learning coding, and didn't have a computer. I literally used to use my phone to write code - terrible experience, but I was determined

2 days agocliffaust

I wrote C with a compiler running on my Palm Pilot well before smartphones existed yet

2 days agowahnfrieden

Luckily I think in this day and age it’d be more viable and not as miserable as an experience - dare I say more accessible

You can connect an external keyboard to your phone and if you can swing getting a cheap IPS panel that displays text clearly enough, you’d have a working set up

Anyway, kudos to you, I love reading stories about determination

2 days agogxs

I remember having some kind of a shell app on my iPod Touch in college and needing to run and find wifi a few times to troubleshoot something at a job I was student working at.

They were fun times :D

2 days agomattlutze

I remember when I started learning coding. I didn't have the Internet. It was also terrible and I was also determined.

2 days agofragmede

When I started learning coding I had to write my C code on paper and have it sent by mule to the nearby city where the only computer in the area existed. Only a week later I would hear back the result of my programs.

2 days agoBridged7756

I assume you’re joking, but I have a Cuban acquaintance who actually did something like this. He did everything on paper and even won a national coding competition without ever having actually used a computer. Of course, as soon as he had the opportunity to leave Cuba, he left for good.

2 days agoraddan

I vaguely recall a service in the 90's where you'd write HTML on paper and mail it to them and they would make a website for you...

2 days agoCalRobert

Imagine doing that on a time share system through a rotary phone...

2 days agoesafak

It wasn't coding, but tech support...I was on vacation from my law office IT job. All I had was my PalmPilot, the clip-on modem, and my sister's landline phone system. I spent 2-3 hours one day exchanging email with my firm's law librarian (the only other semi-technical person in the firm) troubleshooting some odd network problem. We got it done, but it was torture, tapping out messages with the Palm's stylus.

2 days agothemadturk

When I started learning coding, we had to run 50 kilometers through dense jungle, fight Jaguars and jump over snakes, to get to the only computer in the region. I saw a lot of friends die during the daily journey. The teacher was a shaman too, very knowledgeable on C. He would teach us rituals and stuff.

2 days agoBridged7756

That's cute! I had to cross the Darién in both directions to get there!

2 days ago9dev

Being able to “code” from your phone really feels like a huge change; it never took before because coding from your phone was miserable, but if you’re just coding by having a conversation then it might even be better to do it from your phone. I don’t know what that leads to, but it’s let me fix bugs from bed and build an MVP while moving, so I can’t complain.

For anyone looking for a more integrated and smaller approach, I built an open source app builder + runtime: https://github.com/tinykit-studio/tinykit

Basically gives you a Lovable-like app builder with built-in services (database/files/auth/email/payments/etc), content and design fields, and a code editor. Code is a single Svelte 5 file, and you can build/host unlimited apps on one server. And the server is just node + PocketBase, so runs easy on a $2 VPS. And LLM is BYOKey.

2 days agoelemdos

i switched to using neovim a year ago and oddly enough its actually a lot easier to write code in termux compared to any of the other android IDE type apps. they all have drop down menus or sidebars that are quite awkward to use, especially when the keyboard is already taking up half the screen, but with neovim (or vim) youre using the keyboard to do most things anyway, so the keyboard can just stay open all of the time and you never need to move your hand up to the actual app part. selecting text is way easier than android's implementation as well

a day ago4k93n2

Typing on the phone is terrible. Could work with good speech to text though

2 days agoinsane_dreamer

Back 15-20 years ago we had many phones with keyboards. They had a purpose but Apple's profits made everyone envious and they started to copy what the leader was doing even thought for some users a keyboard make much more sense.

What make sense for all users would be a swap-able battery. Water-tightness is no longer and excuse with new phones likes foldables that aren't. Fun fact, Apple dumped the swap-able battery before the iPhone was waterproof.

a day agosschueller

Coding on a phone really isn't something new. With tmux a lot of people created crazy things directly on their phone. In some countries this even is the only possibility to code at all, because there are no laptops.

The example use case images are very funny though! :-)

2 days agoAldipower

Which countries in the world don't sell laptops?

2 days agoepolanski

there are going to be quite a lot of places where getting a laptop is a considerable expense

2 days agorobertfw

Why does it have to be a laptop, and why does it need to be new?

There aren't that many places in 2025 where getting a phone with internet is significantly cheaper than getting some scrappy laptop or desktop.

2 days agoepolanski

>> There aren't that many places in 2025 where getting a phone with internet is significantly cheaper than getting some scrappy laptop or desktop.

No, but it's not a choice between a phone and a laptop. You NEED a phone. So you use what you've got. I've done work helping developers in less developed countries and you frequently find they're sending screenshots of code they've written on phones.

2 days agobasisword

I think I'll take any LLM slop code over the written-on-phone-by-"developers" slop code.

20 hours agoherewulf

I assume he means people are too poor to have multiple devices, and if you only have one it's probably a phone. That said I'm dubious anyone who only has a phone is doing meaningful coding

2 days agoguywithahat

There is this guy: https://github.com/OXY2DEV/markview.nvim/issues/216#issuecom.... I haven‘t used his plugin, but it seems quite popular (+3k stars). I guess ergonomics don‘t matter so much yet when you are young..

2 days agofataleszumittag

Huh, makes you wonder if it's actually doing it on his phone or if he has a keyboard and maybe dock and monitor he attaches it to. I suppose my original comment was too broad, there was a point not too long ago when everyone wanted to replace their laptop with their phone. Samsung even let you dual boot linux from your phone with DeX

2 days agoguywithahat

There's always an edge case. Speaking of which, here's someone who would really benefit from a hard column width limit and limited nesting that modern programmers (particularly ones using various IDEs) so carelessly violate these days.

19 hours agoherewulf

Following that story as it happened, it was all on the phone with the phone keyboard and he somehow made multiple good Neovim plugins including that very popular one (which I use in multiple configs).

2 days agogreggh

neovim is probably the only sane way you could code like this on a small screen. everything works pretty much the same way it does on a desktop terminal, the only thing you have to get used to is having so many lines wrapped, and not having quick access to some characters like $ or ^, but they can just be added to the toolbar in termux

a day ago4k93n2

There are countries where the market for PCs and laptops is really tiny and the stores sell them at markups compared to US/European prices. Many of these countries are low wage countries, too, so these markups have a big impact on affordability.

2 days agogmueckl
[deleted]
2 days ago

Having the means doesn't mean the would-be programmer is in charge of the purse. I got my start coding at the local library because my parents wouldn't get me my own computer until I was in high school.

2 days agocyberrock

I use a bespoke hacker software keyboard (ctrl/meta/custom keys for GNU screen and emacs) and also bespoke SSH client (fork of the original irssiconnectbot) for years.

My phone is the original Pixel Fold. You would think I use it unfolded but the passport form factor lends itself to be almost as productive folded that I use it that way most of the time. Unfolded it's just a bit better experience (bigger keys / more display real estate/ more characters per line/ etc).

With that said I'm looking forward to the Click Communicator: https://clicks.tech/communicator

I've also been meaning to write about my setup and open sourcing my tools.

Oh. Writing clojure helps due to the terseness of the language. Not sure it would be a pleasant experience writing something like Java with the 80 character line limit I try to impose on myself

2 days agotwism

My flow is GitHub issues+ GitHub Copilot+ Web Deployments from GitHub actions.

I can just ask GitHub to fix something from the mobile app, and then set it to build on PR merge. It works most of the time, but you'd have to be absolutely wacky to do it in production or with any code you actually care about

2 days ago999900000999

I've been working on something similar: https://github.com/shepherdjerred/monorepo/tree/main/package...

Essentially you run a server on some machine. Sessions are created in Docker containers, K8s pods, or via Zellij (an app similar to tmux).

You can:

- Directly attach to sessions via Docker attach (built-in via a TUI). You get a normal Claude Code experience, but multiplexed. The switcher/UI shows you the status of Claude and the PR (pushed, merge conflicts, CI status, review status, etc.)

- Manage sessions via a web UI. Connect to Claude Code directly via your browser. You have access to the usual Claude Code terminal or a native chat view.

- Manage sessions via an app. You have access to a native chat view.

It achieves isolation via Git worktrees + a proxy so that containers have access to zero credentials (there aren't even any Claude code creds in the container), which allows you to more safely use bypass all permissions mode.

This works better for me that Claude Code on Web because I have control over the environment Claude is running in. I can give it any Docker image I want, I can have it connect to my local network, etc.

It's still a WIP (the core bits are there, but it's not polished yet), but I'm hoping it provides a friendlier UX with a similar goal for what the OP has in mind.

2 days agoshepherdjerred

We need to take this idea further. Instead of "remote first", I'm waiting for the first company that will bodly declare "you can do all your work on your phone".

I'm tired of lugging my laptop around. Let me work from the beach with my phone and ar glasses.

2 days agocons0le

Please hire me when you make this happen! The tinkering started because I wanted to go outside to code but sitting with your laptop in the park is too strange.

2 days agorbergamini27

> sitting with your laptop in the park is too strange.

Why should that be strange?

2 days agovaylian

Just install Termux and you're good to go.

2 days agoadhamsalama

I prefer using a VPS instead of an old laptop. 2 improvements I’d recommend:

1. Use tmux to keep sessions alive

2. Launch Claude Code using the —-dangerously-skip-permissions flag to avoid annoying pauses in execution

It’s like having a team of full-time interns running in the cloud building your software

9 hours agojoshrw

been using the same setup for the past 2-3 months now. My company gave the employees old mac pro (intel) for free to use for whatever purpose they want to. I was using AWS for most of my personal projects which I have now migrated to this mac. I use the app 'Amphetamine' to not let the mac sleep, and rest of the setups are the same with Tailscale + termius etc

Fun fact: once you get ssh access to mac, you can control almost anything running on it. Like I added my mac air under termius, and I could mute/unmute any videos playing on chrome using osascript from my iphone :)

a day agopankajhbk007

Maybe I'm just lacking in creativity, but I don't see the appeal of developing anything with less than 2 monitors and a full-sized keyboard. Even for those who find the act of coding intrinsically entertaining, do you want to dance so badly that you'll do so even if you can only use one leg?

a day agoscottLobster

I'll bite (even though I think the proposed setup is dumb tbh) : why do you need 2 monitors? Can't you just alt-tab from one window to another?

FWIW I do code on the go and I 100% prefer to code at home with my neat setup... but also quite often when I'm on the move and inspiration strikes, I do enjoy having a way to tinker right here and there.

a day agoutopiah

I can, but I find the friction it induces to be extremely irritating. I have to memorize snippets of documentation before switching back instead of just having it open on the other monitor to reference at a glance. Plus the act of switching windows itself is extra keystrokes/touch gestures and tedium. Coding on a small touch screen sounds like absolute hell. Like being forced to drive in stop-and-go traffic with a manual shift.

I'll do it only if I have no other choice (i.e. logged into a remote terminal-only server at work). If I have some flash of inspiration I'll write it down in Google Keep and try it out when I get back to my 3-monitor workstation.

But hey, we're all wired different

a day agoscottLobster

How are they more keystrokes between one screen and N screens? Don't you have to switch windows regardless of their visibility? I mean if you copy then paste elsewhere you still the same number of key strokes, don't you? Maybe I'm missing something.

Regardless what I'm suggesting, and I believe OP too, is NOT to replace your setup with a mobile one, only that they can complement each other. Namely if you are on your way somewhere, you do not have to stop programming, you can still do it even though in a different way, so I do not believe comparing them helps. The point is not to convince somebody to go from their favorite setup to something they like less, rather to show other ways in which some parts of the process are still acceptable on the go. Nobody is suggesting to remove a screen or keyboard.

7 hours agoutopiah

How do you avoid doom-coding while learning or experimenting? – Ask HN

Lately I have observed this algo in myself while learning something new. I constantly code for very short bursts sometimes on the phone or laptop at night, keep jumping between tools and end up consuming more than creating. It comes off as productive but seldom compounds.

A straightforward explanation that has provided me with a helpful point of thought is.

Make a mode selection.

Did conclusions actually occur?

Most doom-coding sessions are loaded with input, no closure.

There are 2 small changes that improved it for me.

Start sessions with a small, visible output goal (one function, one note, one commit).

Time-box input aggressively. I stop scrolling after 15-20 minutes of scrolling.

At the conclusion of every session, I would write what I would do next, even if I don’t do it. ~

Wanting to know how others do this.

Do you intentionally separate learning sessions and building sessions?

Do you have any heuristics to know when you have avoided input?

a day agoMORPHOICES

I already have a similar setup for developing on remote servers I've been using with tmux + goose-cli + claude via openrouter. I've found that anything claude 4.x and above becomes very expensive very quickly, with 3.7 being almost negligibly inexpensive. I'd find myself using $30 dollars of credits in a few hours of development on a small scope project. I might give the claude CLI a look specifically, but I don't expect great savings and I will miss my AI-provider-agnostic setup. Is everyone using this technology just programming as they go about their day and burning like fifty to a hundred bucks while doing so?

a day agogrep_name

I did show hn just yesterday you don't need tailscale or any 3rd party server. Just use webrtc and it's just your mobile and laptop. end 2 end encrypted. no 3rd party dependency.

https://news.ycombinator.com/item?id=46514587

2 days agoartpar

I'm using exe.dev for something like this. Well, from a laptop, but others have done it from their phone.

I'd link to a blog post about my setup, but I'm still writing it. Here's someone else's blog post:

https://commaok.xyz/ai/just-in-time-software/

2 days agoskybrian

I recommend https://happy.engineering/ . It is very easy to set up. I can have an instance in a container which contains my repository and lots of packages/binaries necessary for the work. I can then use the different binaries to run commands in the container. I was able to easily do `ls -la` in the container and email that to myself, all done from my phone. You can also connect it to applescript and whatnot in order to send sms messages, or you can connect to whatsapp. I was able to make it extract the top 5 headlines on hacker news, get the top ideas being discussed in the comments for each submission, and send all of that into my Apple Reminders for me to read on my phone.

No VPN needed.

2 days agokovek

I'm looking at Opencode and it might be better because it allows you to abort a task. VPN needed.

2 days agokovek

If you have GitHub copilot you can create github issues and assign them to copilot. All you need is a browser.

2 days agodminor

I've been using a similar workflow for the past couple of months.Heavily inspired by Simon Willison’s approach of building micro tools, I’ve started building micro-utilities. I do this mostly while I'm commuting or outside or waiting for something at work.

Instead of just jotting down an idea in a notes app (and it sitting there for eternity), I’ll open up Jules, describe the tool, and have it scaffold the HTML. I have Cloudflare Pages hooked up to the repo—once Jules submits the PR, the preview branch builds automatically and I can verify the result on my phone immediately.

2 days agoabinmn

Whats the cycle time here? This work flow makes sense to me.

2 days agosimonmales

It’s largely asynchronous for me. I'll trigger the generation and come back to the PR whenever I'm free.

I'd say the cycle time largely depends on the complexity of the tools you are building. I've built a movie shelf hooking up with trakt.tv under 30 minutes and a mermaidJS diagram editor spanning multiple sessions and couple of days.

a day agoabinmn

I see the article is still on the front page, I'd ignored it yesterday so I took a quick read. I find, being older, trying to read the tiny fonts on a phone to be difficult after a few minutes, otherwise cool idea.

Or, I thought it was cool until this passage reminded me, "coded a prototype in my downtime" that down time is supposed to be down time.

a day agonewsoftheday

> down time is supposed to be down time.

Life doesn't have down time. Should we avoid learning new things because no one is paying us to learn?

One of my favorite uses of AI is to quickly make some simple 'hello world' level application that I can run using a given technology.

Don't know what an MCP server is? Boot up Kiro and tell it you want to make a sample MCP server and ask it for suggestions on what the MCP server should do. A relatively short while later, with a lot of that time being spent letting AI do it's thing, and you can have an MCP server running on your computer. You have an AI waiting for you to ask questions about why the MCP server does x y or z or how can you get the server to do a, b or c etc

As someone who learns a lot better from doing or seeing vs reading specs, this has been monumentally more efficient than searching the web for a good blog post explaining the concept.

And when I'm doing these learning exercises, I naturally lean towards the domain my company is in because it's easier to visualize how a concept could be implemented into a workflow when I understand the current pain points of that workflow.

I'm not going home and pulling in story's from my board and working on them (generally), I'm teaching myself new concepts in a way that also positions be to contribute better to my employer.

a day agoforgotaccount3

I don’t get it. How is this different from using the Claude iOS (and I assume Android) native app and use their “Code” option. It fires up a Claude Code session in the cloud and you can vibe code anything while on the toilet.

2 days agobiinjo

DIY culture I guess, but yea both Claude and Codex have native phone apps that run the agent on a cloud VM and can push PRs.

2 days agofassssst

Claude iOS is way worse. You don’t get the full tui.

2 days agoec109685

I use Prompt, Ever Terminal, Whisper, EC2 and Claude Code.

I can build anything with it. Having Claude on top of a terraform repo lets me fully control my infra. Claude is so good at AWS and terraform, and it even found a $3k monthly accidental spend I had running (also sent a refund request to hopefully get some credit back).

Also have a Claude driven CI workflow in GitHub to help keep everything on track.

Having full access to the Claude Code TUI is so much better than the web or iOS interface, plus everything runs on your own setup.

And agree it has replaced doom scrolling / useless new reading.

2 days agoec109685

I really want to use and like this, but I feel like I need a different UX / UI for my phone. I think adoption of this development workflow at large is going to be a design challenge more than a setup/devops one.

2 days agohmokiguess

I agree- I think there is a good opportunity for a more slow-paced, thoughtful UX on mobile.

2 days agoalansaber

Been using exactly this setup for a year now, works great. Have to be on the same WiFi to install from Xcode to iPhone. There is a “workaround” having it deploy to TestFlight, but it’s slow. Looking for a way to forward mDNS over VPN, to bad iPhone/Tailscale don’t support it. Only possibility I found is to have a separate mobile router that support forwarding mDNS.

a day agopunnerud

Hmm, you could probably setup ad hoc builds and send them off to Firebase App Distribution or a similar service and get them a bit faster. Still pretty cumbersome but it skips the slow signing/slow uploads/slow processing that Test Flight provides for users.

a day agojclardy

I've seen this concept a few times recently and am interested.

However, what's the benefit over just using the "Claude Code for Web" feature built into the Claude Code mobile app?

It clones your repo into a VM which has a bunch of dev tools installed, you can install additional packages, set env vars, and then prompt it remotely. The sessions can be continued from the web and desktop apps, and it can even be "teleported" into the terminal app when back at a laptop/desktop.

Would be great to understand what the differences / advantages of OP approach are.

2 days agomands

I feel like there’s something special about connecting to a server to build and deploying on the same server. Claude Code on the web lets you connect to a repo, test the code, and deploy it, but then you have to host the app and data somewhere else to take it live. IMO the ideal is doing everything in one place and it seems like a lot of dev tools are going in that direction too (v0, val town, deno deploy).

2 days agoelemdos

I’ve only used web codex version but everything about it was slower than what’s described here, broken flows, more rate limited and impossible to “human in the loop” before a PR.

2 days agonot_ai

The Claude code tui is so nice. The web and iOS apps neuter it weirdly.

2 days agoec109685

Just because you can doesn't mean you should. But congrats on launching!

2 days agoleetrout

If you need this article to get the idea of using Claude Code from your phone, you won’t build anything substantial anyway.

a day agotobi_bsf

Great! Another shallow dismissal is just what everyone needs right now! I don’t understand this kind of gate keeping.

AI has been changing more rapidly than any other technology I have encountered in my life. It’s absolutely nobody’s fault for not keeping up with it or arriving late to the party, and telling them they should rather just stop because they won’t get it anyway is just awful behaviour.

a day ago9dev
[deleted]
a day ago

Why?

a day agoTofuLover

Because, obviously, you should be spending all of your waking time thinking about LLMs, agents, and how you can integrate them into every part of your life. If you have been living properly in the age of impending-AGI, you would have already been desperately seeking more opportunities to interact with these systems. That desperation would have led you to independently discover agents and all the ways you could couple yourself to them even when away from your computer. Are you a parent stuck at home experiencing life with your kids instead of sitting at your desk? Why not escape such a hellscape by whipping out your phone and building a SaaS from your phone while your offspring annoys you with requests for attention and meaningless affection?

---

Really, this whole environment of 'coding from my phone with dozens of agents while I'm doing the laundry' feels like satire of the sorts of things we used to laugh at on Linkedin.

a day agox187463

Early on in my programming life, I had very limited access to a computer. I did much of my coding in my head while walking around. In some cases, I'd literally write code in my head and dump it out when I had computer access, but abstract and creative problem solving were especially natural in a detached setting. I truly believe this time was more valuable than the time at the keyboard.

If anything, I want to do more of that: get away from the device to let my mind wander. "Doom" coding sounds apt.

2 days agosp9k

"2. Make sure your computer is ON and UNLOCKED When disconnecting/reconnecting power, make sure you unlock the computer. I've ran into this issue one too many times."

- this is the biggest problem that needs to be solved

- i dont want to keep my computer running 24x7 wasting power for stuff like this

- why not make a robotic arm that you keep at the computer table which can use open cv to plug the computer on when required?

2 days agovivzkestrel

Lookup "wake-on-lan".

2 days agobillyjobob

I'm not sure why I'm having so much difficulty with it, but I've never been able to get this to work on my machines despite my searching.

2 days agoduskdozer

Is being able to SSH into your home machine that easy these days? I never had a strong enough reason to spend more than a few minutes trying, but I always suspected that my ISP would make this harder for me than I would hope.

a day agothenoblesunfish

That's the whole point of Tailscale or just any VPN really : it doesn't matter what your ISP says, as long as you can establish a connection to the outside, the outside can connect back. Tailscale just makes that easier if you are not familiar with VPN setup.

FWIW typically ISP blocks port related to spamming, so usually they block ports related to emails, e.g. SMTP, I believe DNS too, but other ports no problem.

That being said it's quite a silly use case IMHO. If you want to work on a project from "anywhere" then put your project on your server accessible from anywhere, that's literally what servers are for and they cost the price of a coffee per month.

a day agoutopiah

It’s a simple idea but one that hadn’t occurred to me yet.

I spend hours each week riding transit, and use Claude for a bunch of side projects and have Tailscale set up already, so looks like I’ll be giving this a try this week!

Doom coding might be doomed while I’m in the transbay tube though, with awful cell service…

How’s the diff review? I rely heavily on the vs code integration for nice side by side diffs, so losing that might be a problem unless there’s some way to launch the diffs into a separate diff viewer app on the phone.

2 days agoscottbez1

I would guess a phone is way too small for side by side diffs, and a simple `git diff` would probably be more useful. If you want better syntax highlighting you could setup bat[0] as your difftool. If you insist on a side-by-side view (neo)vim has a diff mode with the -d flag. It is also possible to setup as the difftool that git uses.

[0]: https://github.com/sharkdp/bat

2 days agoworksonmine

Heh, many years ago I actually started writing a dedicated diff viewer app for Android [0] that specifically had synchronized horizontal scrolling between the two sides, and I remember finding it relatively usable in landscape, and I’m sure modern phones with larger and higher density screens would be even better.

But yeah, you definitely need a native experience to make side by side diffs viable on mobile.

[0] https://github.com/scottbez1/superdiff — I wish I had recorded some videos of the app back then. My code review workflow back then eventually stopped including diff attachments on code review emails, so I abandoned development on it.

2 days agoscottbez1

Let me know how it goes! From the comments above, seems like you can use tmux to keep persistent sessions when you lose Internet connection - but I haven't tried myself.

Diff review is alright. I'm an amateur programmer. Sometimes I don't look at the code claude generates, but when I'm troubleshooting a bug, I'll ask claude to output all recent changes - which satisfies my untrained eye.

2 days agorbergamini27

I don’t compile from my phone but I do write code using it. I use fossil for version control. The in browser editor is good enough to get ideas down. It has great diffs which is also nice. I will check in code and move it to a branch then revisit it when I’m home.

2 days agoectospheno

I do the same but my unifi network gives me a vpn out of the box.

2 days agojfroma

This makes me worry about the future where I will be unable to hire anyone that actually knows how to solve novel engineering problems via programming with a real keyboard on a real computer with their actual brains.

To be honest it is already starting to feel that way.

a day agolrvick

Number 1 on the front page of Hacker News for explaining how to connect to a remote machine via ssh.

2 days agofoobarqux

I too am dumfounded by this. Is it an off day? Have all the people that actually know how to do things with computers gone somewhere else? What is going on here?

2 days agokrupan

It's all AI hype bro sycophants for the most part now. Oh, well.

2 days agodinkumthinkum

Yeah I feel like I'm missing something here. I'm not sure if people being so dependent on these LLMs generating code is that widespread at this point or if this is some kind of publicity stunt.

2 days agoduskdozer

This is cute.

My personal world changed when I discovered Nix On Droid and cloned my personal Claude Code flake which uses pnpm to keep a rolling bleeding edge version with revision controlled dots. I started using Nvim /avante and open router shortly after that, also via Nix on Droid. Game changer for those long subway rides.

2 days agoTeknomadix

Those demo photos are fantastic

2 days agobpev

Thank you! My wife was concerned, I'm glad someone out there appreciates the humor

2 days agorbergamini27

Why do you ever want to code while you are running? I run to getaway from daily grind to smell the fresh air.

2 days agotreavorpasan

I use Terminus with Zellij and keep about 8 sessions going with a combination of Claude and Codex, and once in a while, Gemini. It's great when you're sitting in a docotor's office lobby bored out of your skull and when you get back to your desk you just join the session and it's all right there.

2 days agokator

This is awesome! But I don't think you need to say never to all those display settings. You just need to go to Battery -> Options, and "Prevent automatic sleeping on power adapter when the display is off", and wake for network access when on power adapter.

2 days agozuhayeer

A random thought has started to occur, maybe given how early we are in LLM tech world, isn’t it strange a lot of AI tech is being built on top of proprietary tech? In this case, it’s Claude Code

And honestly, all this free marketing has me convinced to pay for it

2 days agomattfrommars

So, we've spent ages, blood, and tears building better UIs than text, and now with AI everyone is suddenly expected to type instructions on the phone? Yes, I realize this is hard to avoid for coding in particular, but generally I'm tired of typing text on my phone. And no, I don't want to talk to it either.

2 days agoblauditore

How much information can you encode in your squint?

2 days agohandfuloflight

This can be done not just with Claude but also with codex and gemeni cli. Well technically anything that has a cli interface.

I run both gemeni (fee) and codex (paid), with tmux thrown in to switch between phone and laptop. Laptop runs vscode with ssh to my server but I could also use the web version of vscode.

2 days agonot_ai

Tailscale is quite handy in remote agent coding, Sometimes I use tailscale and RustDesk on my phone to check Claude code, I also built an app called NovaAccess which bake tailscale into the app which does not confict of VPN I used.

2 days agomintflow

Btw this is basically Replit's entire product (replit.com). Costs some money but the UX is pretty good

2 days agojaphib

What does Claude add to this? I've done coding on my phone before by sshing into my home server and just... writing code. Is there a benefit to writing code through a third party instead?

2 days agovoidUpdate

I'm just as baffled. I went to the comments to better understand but I still don't get it.

I've coded on my phone on several occasions. If you use Android, you don't even need a server or a home computer since Termux works really well as it is. It can run node.js and a bunch of other development tools easily. Or you can just ssh into a server with a development environment and do your stuff their (AI or not).

a day agokreddor

Yeah, I use Termux a decent amount, whether it's just updating my todo list on my home server or actually programming on it. I feel like this is just aimed at the people who want to code entire projects with LLMs, cost be damned

a day agovoidUpdate

Programming on a phone is a tough sell for many since typing is slower and you have less screen real estate to view/debug the code. Using an AI agent and typing only prompts makes it more compelling. You input less, and only occasionally have to edit code instead of writing everything from 0. And even with editing, typing a prompt like "separate the X logic from class Y into a new file/class" is much faster on mobile than the equivalent actions.

a day agocdrini

I made something very similar for myself and now have decided to open it up to others if you want to help me beta test.. free for all and it sets you up with your own hetzner vps and you even share my claude code max account: clodhost.com

2 days agozhoujianfu

Cursor--run in cloud seems to work just fine for this. I setup my project and then github to publish web or mobile app.... i believe claude can also take instructions from github...or am i missing something.

2 days agoandsmi2

I have been doing this with toad and opencode and it is great for those unprompted ideas that pop up while in the big blue room, but not really useful for large projects.

2 days agorcarmo

Yeah but I wonder if there's a structure that can be used to make it useful for larger side projects.

2 days agoworldsayshi

That’s where VS Code has helped me the most, it provides a lot more model guidance than people realize.

a day agorcarmo

Chromebook maybe but I don’t see myself using a phone unless maybe it’s voice driven. Typing up lots on phones is a pain.

a day agoHavoc

I genuinely did that a few times. Using an ssh client to fix a commit failing CI, for example. Even launching release builds remotely. Notably once when I was on vacation and half the Scala ecosystem was waiting for me.

2 days agosjrd

Using this with tmux and various VPN tech. Main issue is scrolling. Termius + tmux don't scroll very well. And I've been led to believe tmux is necessary to keep sessions open when I turn off my phone screen

2 days agoauspiv

Scrolling is quite jenky with Termius - I thought there's a way to keep sessions going when there are intermittent drops in connection via Termius, but for how I've been building, when I lose connection I just restart claude and reexplain the context of the task.

2 days agorbergamini27

I had this exact issue. I switched to Blink on iOS which seems inferior to Termius in every way except that scrolling tmux actually works.

2 days agoqaboutthat

In `~/.tmux.conf` try adding `set -g mouse on`, for mouse scrolling

2 days agosigseg1v

Yes, you need tmux/similar to keep things running.

2 days agofragmede

try setting set -g mouse on in your tmux config. With this I'm able to scroll up by using two fingers in termius.

2 days agostets

"Even code at the club!" haha if you're coding at the club, just go home! but also, I really wish Sony still made their micro Vaio laptops (Sony Vaio P, for instance).

2 days agoLTL_FTC

That phone was taken 5 minutes before departure lol - a micro laptop sounds sweet!

2 days agorbergamini27

"Even code at the club!" ... Great idea for my next rap song! LOL

2 days agojimt1234

Tailscale is a lot of permanent runtime overhead/latency just to avoid setting up dynamic DNS and changing a few lines in the sshd_config.

2 days agozamadatix

Do you have recommended reading? I haven't been confident enough that I wouldn't overlook serious security issues opening SSH on my own machines.

2 days agoduskdozer

I have similar setup, one thing to add is map action button to a shortcut for dictate to clipboard since you can’t dictate directly into termius.

2 days agoqazplm17

Could you please share more? I can't make dictation work.

a day agopqdbr

Pretty cool idea, I'm going to be trying this only using open source Cecli (with DeepSeek API) instead of Claude CLI because I don't have infinite $$$

2 days agotomjuggler

Thanks! And great idea! I'm still new to hacking - definitely need to check out more of the open source tools out there

2 days agorbergamini27

This looks neat. How do you handle code verification in this workflow, especially if you want to be confident about what actually ran?

2 days agovictorymakes

I am a huge fan of driving agents from my phone, though this is one of the places where I don’t think terminal UIs work. Agents need a web UI for phones.

2 days agocrawshaw

I might just be old fashioned but in a party with a couple of drinks in me I don't trust my ability to even vibe code well.

2 days agodarepublic

Just keep your eyes on the pretty CI/CD lights.

2 days agohandfuloflight

I am looking for some open source terminal for iphone .I have code server running which i can just use terminal from vs code on safari

2 days agosabareesh

Please mask your identifiers, unless they are already spoofed. You potentially give out a lot of your info to bad actors.

Other than that, love it :)

2 days agoOakNinja

Thanks! I did not sppof! I thought that since it was my local Tailnet, only devices on that net could connect. I just rebuilt the network as a precaution.

2 days agorbergamini27

Most of the time it's probably fine, but we should assume we don't know about all the attack vectors bad actors might use, so better safe than sorry.

I forgot to say that I _absolutely loved_ the photos!

2 days agoOakNinja

Very true! Was that Rumsfeld, right? Unknown unknowns?

And thank you! I'm glad you appreciated the humor. I'm still a novice builder, so the thought of ssh-ing to my home computer from a plane geeks me out. I'm about 20 years late but I'm here now!

2 days agorbergamini27

to keep your mac awake:

    caffeinate -di
2 days agomritchie712

Thank you! Did not know about this command before - good to know

2 days agorbergamini27

I love this! This concept on steroids is one of the main reasons I made https://github.com/knowsuchagency/vibora after trying both happy.engineering and Vibe Kanban for remote coding. There's the claude mobile app, too, but I want to run Claude on my own hardware in a terminal

2 days agoknowsuchagency

I’m wary of enabling ssh/remote login. It seems like it could be an attack vector.

2 days agosomeguyiguess

Just install proper development tools on the device, some examples from my setup,

- Pydroid

- C# Shell .NET IDE

- Pascal N-IDE

- Shader Editor

a day agopjmlp

İ've been using Termux (and Vim) to code on my phone for years, way easier than this setup.

2 days agoSjeiti

My setup is very similar.

After you log in you can unlock keychain by running this command

‘security unlock-keychain’

2 days agoLeicaLatte

I was expecting this to be about using Termux or similar. Why are LLMs involved here?

2 days agoopan

Claude not needed to "code from anywhere you are" and certainly not from your phone. no LLM needed. no agents. Tailscale or any other VPN not needed

use a laptop. (trying to do it with only a phone-factor UI is madness.) have a mobile-friendly ISP if desired or needed. solved. been solved for decades

so much of the AI BS hyping is about inventing supposedly unsolved problems. like Google showing me ads to convince me to use Gemini to write a README. no thanks, kids, have been able to do that for many decades using only my brain, eyes, fingers and vi/vim

2 days agosyngrog66

How do I use a laptop while standing on a train each day? It sounds like a laptop is sufficient for you, but I suspect (based on myself and other responses in this thread) that a laptop is not always viable for many people; this tutorial appears targeted toward those people.

I’ve actually considered a neck/shoulder support for a laptop in the past but decided against it because it’d be cumbersome and make me a theft target.

As for AI, personally speaking I use AI coding tools to allow me to continue enjoying some hobby side projects with less free time available with a kid. It’s been a massive boost to my happiness in a generally low stakes area. I’m curious to see if I can get a similar unlock on my short and interrupted commute times as well, which is why I (personally) find this article interesting.

2 days agoscottbez1

dont try to code while standing on a train. one of many antpatterns a wise engineer should learn to avoid, as part of polishing our craft. also: dont juggle chainsaws, etc ;-)

2 days agosyngrog66

but also dont try coding on a laptop. use a proper desktop, or better yet, get time on a mainframe. the problem has been solved forever, juat do work from the workplace at a dedicated terminal, built for doing that work at.

2 days ago8note

Not coding on a laptop is actually good advice?! My argument would be that you shouldn't be doing any work without plugging your laptop into a full size keyboard and mouse at least. And, ideally, at least one external display of some form (I recommend 2 or 3, but it depends on exact setup/total resolution/etc.). But it's your body, not mine.

Regarding terminals, how often does this requirement occur in practice? Assuming it does, you can probably use your laptop for it, in which case, see above.

2 days agotom_

groan HN needs a mute/block feature so we can mute/block folks like you. toxic. get a life

2 days agosyngrog66

I wouldn’t want to code but I could easily be working on plans with Claude.

2 days agosolumunus

You can't bring a laptop to the club! Truthfully I haven't tried so I will keep you posted.

2 days agorbergamini27

revived an ipad mini 2 (2013), rooted it and ssh-ed in and let claude handle the tailscale setup, terminal emulator selection, and prep work. perfect form factor and can test web apps via browser.

2 days agoalentodorov

>so much of the AI BS hyping is about inventing supposedly unsolved problems. like Google showing me ads to convince me to use Gemini to write a README.

Okay, but how are you going to write your AGENTS.md file??

a day agoduskdozer

Why would I need claude code for remote programming, if I could just use ssh and tmux?

2 days agohambes

Why not Claude Code on web/cloud linked to your GH repo?

2 days agokaiwenwang

ha, I've recently been studying the original DOOM source code - does that count?

2 days agolifetimerubyist

Yes

2 days agollmslave2

I’ve thought about this many times, maybe with a custom telegram bot!

2 days agokoinedad

this is literally my setup and it is a game-changer:

tailscale, tmux, codex/claude code, mosh, blink shell (iOS) https://blink.sh/

2 days agopmarreck

Curious if you are directly running mosh on macOS. Last I checked, it was broken on macOS Tahoe, so I have been relying on tmux for surviving flaky ssh connections.

2 days agofirasan

i use both tmux and mosh-server

i install them via nix-darwin (I've abandoned homebrew)

i am on Tahoe latest beta

2 days agopmarreck

Yeah I just built www.makerkit.io for the exact same thing

2 days agosaadn92

claude.ai + vercel and you can do it all without anything but your phone

their web interface lets you use Claude code and push changes to a GitHub repository

vercel can auto build from a GitHub repo

even less setup and infrastructure needed

2 days agohayksaakian

I like to "doom read" books.

2 days agooctober8140

ollama runs locally in termux preferably on proot-distro (with less "coding power")

2 days agoerelong

is termius free, I was wondering if there is a free open source ios terminal

2 days agokalmyk

Why Tailscale instead of plain wireguard?

2 days agomikojan

probably because you just install it, then you log in and youre done. tailscale takes care of the rest. going through any more effort just so you can write some slop code is probably not worth it

a day ago4k93n2

> What You'll Need

> A Computer running 24/7 with Internet Connection

> A Smartphone

> A Claude Pro subscription

Or.. just install Termux and do it the same way you do it anywhere else?

2 days agofunctionmouse

Termux with a 10-keyless BT keyboard in bed was a comfy way to solve AOC problems considering it released at midnight in my timezone.

2 days agob40d-48b2-979e

This comment taught me about Termux. Good to know!

2 days agorbergamini27

Make sure you install it via FDroid. Also grab Termux:API to be able to write little apps with bash scripts. Here's one I did which gives a notification based interface to Pandora: https://github.com/ijustlovemath/pbr

2 days agoijustlovemath

And what's the recommendation for iOS? Because, as it turns out, the Termux app on the App Store is not the same as the one on the Play Store, just uses the same name.

2 days agokatsura

use blink https://apps.apple.com/nl/app/blink-shell-build-code/id15948...

2 days agohhh

Or shellfish. [1]

[1] https://secureshellfish.app/

2 days agoraddan

Shellfish is underrated. It has a very convenient tmux integration (auto-restore a specific tmux session per host to work around iOS suspending background apps), supports SSH tunneling via other configured hosts, and can be used as an SFTP file provider for other iOS apps. It’s also generally polished and supports the expected standard terminal features.

There’s a few settings I wished were possible, like using volume buttons as modifier keys in Emacs (I’ve heard about this in other apps), but mostly it works fine.

a day agosetopt

Blink will end up giving you an experience similar to the stack in doom-coding (as Blink's local capabilities are very limited thanks to iOS rules) except you have to pay a subscription.

Termux on Android will let you do anything you can do on your standard Linux PC.

2 days agozamadatix

Hmm, maybe I got grandfathered in or something because I paid some set price a few years ago and have not had a subscription for blink, and just use it the same way I would use Ghostty and then ssh into another machine. Use something else if it needs a sub. Some sibling comments had some recommendations.

a day agohhh

I just use ConnectBot to ssh to my house. It runs tmux and vim well, especially with a little pocket-size folding bluetooth keyboard to go with it.

2 days agoludocode

Hang on, is Claude running on your phone/tablet and installing large dev dependencies right there? Or which parts of this stack are you replacing with termux?

2 days agozingar

Yeah, everything runs on the phone

2 days agokurtis_reed

Didn't vscode have a web browser version you could self host so where is the cursor version, anysphere?

2 days agohypercube33
[deleted]
2 days ago

If you don’t write a single line of code that’s not coding.

Otherwise my customers are coders to. they to the same. The difference is the recipient of the order

2 days agocroes

[dead]

4 hours agogreedily7417

I was coding a lot many years ago with a Nokia N900.

The loss of the physical keyboard ruined everything for me. I really need the sense of touch.

2 days agohenearkr

Similarly I used to write Python on my Motorola Droid with the slide-out keyboard. But my touchscreen typing style these days relies heavily on auto-correct and trying to enter code is a real exercise in frustration.

2 days agotdeck

I run Claude Code on my phone itself via Termux.

2 days agoadhamsalama

I already doom code! I’ve always found coding a highly addictive activity and struggle to stop when I should. So for me it’s a hard no thanks :-)

2 days agourbandw311er

This is very relatable - hence keeping "doom" in the moniker. Stay strong my friend

2 days agorbergamini27

Calling "telling the LLM what to do" coding is dishonest, and I have no respect for any of this.

a day agointegricho

Account created 16 hours ago posting highly dubious AI hype? This user is almost certainly part of the intense astroturfing campaign likely financed by Anthropic that has been ongoing for days/weeks now.

a day agomattacular

Fixed IPv6 workstation, ssh (pre-shared key) and vim, 4G usb modem, a "big" screen, nice battery life, "code anywhere" on your workstation (the best would be a "backpack" modular system: a RISC-V board in its case slapped to a "big" DP/eDP screen on a stand, an usb dvorak [ortholinear|columnar] keyboard, a 4[5]G usb modem (using the USB modem standard) with a IPv6 enable mobile ISP sim card, and a rather good battery pack.

(I even use a webcam to capture what my monitor does display when I do remote coding of low level GFX oriented software! Actually my wayland compositor for linux and AMD GPUs)

BTW, IPv6 = ZERO NAT to setup, delicious.

"It's magic".

a day agosylware

Does anyone have any good advice or resources on a good workflow to do this with web apps? There's some stuff I'd really like to solve, for myself/family, that would require a front and back-end with persistent storage.

I would love to easily be able to set this up easily when a new idea pops into my mind and then have something running (locally or securely in some cloud) within a few hours/days. I wouldn't want to spend a ton of money for this though, nor have a lot of overhead to manage.

Edit: In addition, I'd like some safeguards where I can't have the LLM of choice accidentally delete stuff or do other unintended things on my network.

a day agowickedsight

Replit is $25 a month but the best mobile allinone coding I have tried so far easy to push to host etc and you can kick off a stage then just pickup building where you left off anytime the termius/tmux/tailscale is fine but lot more effort even after you reach the command line. Horses for courses.

a day agojimmySixDOF

Did I read that right, that you have to have your computer unlocked at all times?

Yeah what can go wrong when you are travelling and your computer is at home unlocked lmao?

a day ago334f905d22bc19

Vibe coding is not coding (unless by vibe-coding you meant buttplug.io)

a day agoimmibis

Can't we do the same with an SSH client such as Termius?

a day agosystem2

Vibe coding is such a bad word. It should be called prompting. Thats all it really is. Its like calling a point and click UI programming

2 days agophplovesong

I feel it depends whether you inspect and edit the code as part of the workflow, or just test what the AI produced and give feedback without participating in the coding yourself.

a day agosetopt

Most of the slop i witness is the latter. This is evident in huge multi 10K pull requests. The code is just an artifact, while the prompting is the "new" coding.

a day agophplovesong

just don't

2 days agor2ob

doom coding

2 days agoAIandAPIs

you missed the part where you're using tmux to have the same session between your phone and your laptop

2 days agofragmede

Just learned about tmux lol - thank you for this!

2 days agorbergamini27
[deleted]
2 days ago

[dead]

a day agogreentree99

[dead]

a day agogreentree99

Guys hear me out. If you ssh into your raspberry pi or any PC you could open console and run nano text.md file. Then you can manage your todo list from any device remotely. Stop doom scrolling and start disrupting todo subscription services. /s

2 days agogaryfirestorm

[dead]

2 days agoeuphoria_123

[dead]

2 days agowotsdat

[dead]