by giuliastro
Native-session control plane for Codex, Claude Code, OpenCode, OMP and PI. Run, resume and hand off coding sessions across your machines.
# Add to your Claude Code skills
git clone https://github.com/giuliastro/harness-remoteGuides for using ai agents skills like harness-remote.
Last scanned: 8/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-08-30T09:47:40.298Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}harness-remote is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by giuliastro. Native-session control plane for Codex, Claude Code, OpenCode, OMP and PI. Run, resume and hand off coding sessions across your machines. It has 310 GitHub stars.
Yes. harness-remote passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/giuliastro/harness-remote" and add it to your Claude Code skills directory (see the Installation section above).
harness-remote is primarily written in JavaScript. It is open-source under giuliastro on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh harness-remote against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
A local-first control plane for native AI coding-agent sessions.
Run, observe, resume and hand off work across Codex CLI, Claude Code, OpenCode, Oh My Pi and PI from desktop, web or Android — while your code, credentials, subscriptions and native Sessions stay on your own machines.

Start in your CLI → pick it up from another device → hand it to a different coding agent → return to the native Session that did the work.
Harness Remote lets you remotely run, observe and resume the coding agents already installed on your machines. When another agent is better for the next step, continue the work there with an explicit handoff instead of copy/pasting context into an unrelated chat.
Harness Remote is not another coding agent. It is the continuity and remote-control layer for the coding agents you already use, while their native Sessions remain the source of truth.
AI coding tools are getting better fast — and the best tool for planning, implementation, debugging or review is not always the same one.
The problem is that every coding agent normally becomes its own island: its own sessions, transcript, controls, models and resume semantics.
Harness Remote 3 is built around a different idea:
Machine
Project
OpenCode Session A
└─ Continue with Codex
Codex Session B
└─ Continue with Claude
Claude Session C
Each Session remains native to the harness that created it.
Harness Remote adds the continuity layer around those Sessions: machine and Project identity, discovery, remote access, links between Sessions, explicit handoff context and workspace visibility.
That gives you three things at once:
Many multi-agent tools create their own agent/session object and use the underlying provider session as an implementation detail.
Harness Remote 3 deliberately does the opposite.
The native Session remains authoritative for:
Harness Remote owns only the control-plane layer around it:
If the harness already owns a capability well, Harness Remote orchestrates it instead of cloning it.
Switching agent should not mean copy/pasting a half-remembered summary into a blank chat.
When you continue work with another harness, Harness Remote creates a new native Session for that harness and preserves an explicit relationship to the Session it came from.
The handoff can carry the useful, inspectable parts of the work — objective, decisions, unresolved items, relevant changes and checks already run — while the new harness still owns its own context from that point forward.
Harness Remote does not claim that Claude's hidden context has somehow become Codex's, or vice versa.
That distinction matters: continuity is explicit, debuggable and honest.
Harness Remote is designed around Sessions that belong to the coding harness, not around Sessions that only exist because Harness Remote created them.
The v3 Session-first model is built so that supported native Sessions can be discovered, inspected and continued without requiring a separate "import this conversation into Harness Remote" workflow merely to make them visible.
That means the natural flow can be:
start coding in your normal CLI
↓
open Harness Remote later
↓
find the native Session
↓
observe / continue / hand off
Your existing tools remain useful on their own. Harness Remote adds a control plane; it does not demand ownership of your workflow.
Harness Remote connects to the computers where your actual development environments already live:
phone / desktop / browser
│
▼
Harness Remote
│
┌─────┴─────┐
▼ ▼
workstation server
│ │
repo + CLIs repo + CLIs
sessions sessions
A machine connection exposes Projects, available harnesses, models and native Sessions through one client surface.
Use the environment you already configured: local repositories, SSH/VPN networking, CLI logins, API keys and paid coding subscriptions remain on the machine that executes the work.
Harness Remote 3 currently integrates with:
| Coding agent | Runtime path | Native Session authority |
|---|---|---|
| OpenCode | HTTP + live event stream | OpenCode |
| Claude Code | ACP adapter | Claude Code |
| Codex CLI | ACP adapter | Codex |
| Oh My Pi (OMP) | ACP adapter | OMP |
| PI | ACP adapter | PI |
Harness Remote discovers model and control capabilities from the running harness instead of assuming every provider supports the same options.
If a harness advertises a control, Harness Remote can surface it. If it does not, Harness Remote does not invent one.
See the Harness capability matrix for the detailed runtime contract.
Use the same machine from:
The client lets you inspect Sessions, follow live activity, send prompts, answer supported questions or permissions, Stop native turns, switch model/harness where supported and review working-tree changes.
Harness Remote does not require your repository to be uploaded to a hosted workspace.
Your machine keeps:
Harness Remote exposes a control surface over that environment.
For remote access, use a trusted LAN or VPN. Do not expose the daemon directly to the public internet.
--rootlimits which directories Harness Remote exposes for Project selection. It is not an operating-system sandbox for the coding agent itself; native harnesses still run with the privileges of the account that launched them.
See REFERENCE.md for detailed security and backend notes.
Requirements:
Then run:
npx github:giuliastro/harness-remote \
--host 0.0.0.0 \
--port 4097 \
--username harness \
--password "use-a-long-unique-password" \
--root "$HOME/Software"
--root defines the directory boundary Harness Remote may browse when you select Projects.
The launcher detects supported CLIs on PATH, starts the compatible local runtime and prints the connection details.
Open Machines → Add machine and enter the address, port, username and password printed by the launcher.
One machine endpoint exposes the harnesses managed by that machine — you do not need a separate public endpoint for every coding agent.
From a Harness Remote checkout:
cd web
npm ci
npm run dev
For browser access, restart the machine with the exact browser origin allowed:
npx github:giuliastro/harness-remote \
--host 0.0.0.0 \
--port 4097 \
--username harness \
--password "use-a-long-unique-password" \
--root "$HOME/Software" \
--cors http://localhost:5173
Open the URL printed by Vite, normally http://localhost:5173.
For the full launcher and daemon guide, see Quick start.
| Harness Remote is | Harness Remote is not |
|---|---|
| A control plane for native coding-agent Sessions | A replacement coding agent |
| A way to supervise your own machines remotely | A hosted cloud IDE |
| A continuity layer between different harnesses | A fake universal provider Session |
| A local-first interface over your existing CLIs | An API reseller or inference proxy |
| A Project + Session view of real work | A system that silently hides normal work in managed worktrees |
Normal Sessions run in the selected Project's real directory. Isolation can be added deliberately for parallel work; it is not a surprise default.
Imagine a bug that moves through three phases:
Harness Remote kee