Back to Events
Past Main or above

Setting Up a Remote Environment for Agentic Workloads

September 1, 2026, 10:00-12:00 Europe/Berlin

Event times are shown in Europe/Berlin. Sign in to use your timezone

6 people attended

Continue with the workshop writeup

Open the canonical pages, recording, materials, and code repo.

View workshop writeup

A remote development server gives coding agents a stable place to run while you disconnect, reconnect, or change devices. We set up an Ubuntu server, protect SSH access, install the development tools agents need, and keep several agent sessions available through tmuxctl. We use AWS examples, but the same setup works on any Ubuntu host that you can reach over SSH.

The machine stays on the other side of SSH while your laptop, VS Code, or phone controls it. tmuxctl keeps terminal sessions alive across disconnects and gives each session a memory boundary, so one busy agent has less chance of affecting the others. Codex, Claude Code, OpenCode, and Grok Build then run in those persistent sessions with the same Git and project files.

flowchart LR LAPTOP["Laptop terminal"] -->|SSH| SERVER["Ubuntu remote server"] VSCODE["VS Code Remote SSH"] -->|SSH| SERVER PHONE["Phone with PocketShell"] -->|SSH| SERVER SERVER -->|persistent sessions| TMUX["tmuxctl / tmux"] TMUX --> AGENTS["Codex / Claude Code / OpenCode / Grok Build"] SERVER -->|Git and gh| GITHUB["GitHub"] SERVER -->|localhost tunnel| APP["Remote development service"]

We use three controls for the security boundary:

  • The provider controls access to the server.
  • SSH controls login.
  • The host firewall controls network services.

We bind development services to loopback when possible, then use SSH port forwarding to reach them without publishing every port to the internet. If you need public access, add that port deliberately and review the provider security group and host firewall together.

You can also use a phone-based path. PocketShell imports an SSH host through a QR code, attaches to a tmux session, and turns voice dictation into a prompt. Treat the QR payload like a private key and create it only in a private place.

Use this earlier workshop for another remote-server example:

Hosted by

Alexey Grigorev

Alexey Grigorev

Chief Agent Officer at AI Shipping Labs

Software engineer and machine learning practitioner with 15+ years of experience building production ML systems. I focus on practical, production-grade ML and AI systems, from early prototypes to reliable systems in production.

I'm the founder of DataTalks.Club, a free community that connects tens of thousands of practitioners worldwide, and the creator of the Zoomcamp series, free, code-first programs that have reached 100,000+ learners globally.

At AI Shipping Labs, I'm building the kind of environment that would have accelerated my own career growth. After years of teaching at scale, I wanted something more focused: a space for action-oriented builders who want to turn AI ideas into real projects. The community gives members the structure, accountability, and peer support to ship practical AI products consistently, even alongside their main jobs.

alexey@aishippinglabs.com