Steven Johnston
← Work
№ 02 · Terminal + AI Copilot · 2026

SHELLMATE

A split-screen, multi-tab web terminal for network engineers, SSH and serial, with an AI copilot that watches your live session and suggests the right command before you Alt-Tab to ChatGPT. Five backends, cloud or local.

Context
Personal project
Role
Sole designer / engineer
Status
In active use
~/work
core-01
logs
+
$ ssh core-01.lab
Last login: Sat May 02 10:11:42
steven@core-01 : ~ $ show ip ospf neighbor
Neighbor ID Pri State Address
10.0.0.2 1 FULL/DR 10.0.0.2
10.0.0.3 1 FULL/BDR 10.0.0.3
10.0.0.4 1 INIT/DROTHER 10.0.0.4
steven@core-01 : ~ $
buddy · DeepSeek
noticed:
10.0.0.4 stuck in INIT. Looks like a one-way OSPF hello. Check the neighbour's interface.
suggested:
show interfaces gi0/2 | i hello|adjac
run edit
ask buddy…
Fig. 01 · stylised interface preview

The problem

Engineers Alt-Tab to ChatGPT a hundred times a day to ask 'what was the flag for…' or 'why is this neighbour stuck in INIT?', pasting context out and answers back. The terminal already has the context. The AI should live next to it, not in another window.

The approach

01

Multi-tab terminal first: simultaneous SSH (paramiko) and serial (pyserial) sessions, each with its own buffer and WebSocket, rendered in xterm.js. Drag-reorder tabs, Ctrl+1-9, seven colour schemes.

02

The copilot sees your live terminal output and answers questions about what's on screen. A Tshoot/Learn toggle flips its persona between terse fix-it-now and patient mentor. Session-aware /context commands pull other tabs into the conversation.

03

Five streaming backends (Claude, OpenAI, xAI Grok, DeepSeek, local Ollama) with a per-message model dropdown. An optional ChromaDB knowledge base silently augments prompts with your own design guidelines.

04

Suggest-and-approve, always: the AI proposes CLI commands you run with one click, and dangerous commands get a confirmation prompt. Nothing executes silently. A Conclude button bundles transcripts plus chat into a Jira ticket.

Outcome

Backends
5
Claude, OpenAI, xAI, DeepSeek, Ollama
Transports
SSH + serial
multi-tab, per-tab WebSocket
Execution
Approve-first
nothing runs silently
Design note

The design goal was surviving past the novelty week: the AI lives where the work already is, not in another window.

Built with

PythonFastAPIxterm.jsparamikoClaudeOpenAIxAI GrokDeepSeekOllamaChromaDBJira API

More tools

03 CISCO API NAVIGATOR Cisco DevNet API Chat 04 PARITY Network Digital Twin 05 ARCHIE AI Network Design Studio
← Back to tools
Get in touch
stevie.johnston@gmail.com
Glasgow, Scotland
UTC+0 / UTC+1