AI Agent Hub
Back to plugins
🖥️

dsh-omniloop

Client Updated 2026.09.08

Run the following command in DeepSeek Harness:

dsh plugin install vidgewong/dsh-omniloop

Paste the following prompt into your AI chat to install this plugin:

Run dsh plugin install vidgewong/dsh-omniloop inside DeepSeek Harness to install; source repository: https://github.com/vidgewong/dsh-omniloop

About this plugin

dsh's architecture allows only one AgentFactory per process, so running Claude Code meant disabling the built-in loop and forcing every session in the profile to follow along. dsh-omniloop takes that single factory slot and turns it into a per-session router. The in-process loop, Claude Code, Codex, and Pi each register their own factory, and every createAgent or resume call is dispatched to the engine that owns the session. No global switch, no restart, no interrupted work.

Picking an engine is as simple as picking a model: a selection in the composer at session start. The affinity is durable — a session's engine is recorded when it is created and restored on resume, so replaying a Codex-driven transcript will never accidentally fall through to the built-in loop. Forked sessions and subagents inherit the parent's engine automatically. Above the router, everything remains dsh's: each engine's native output is translated into dsh's Message, ContentBlock, and StreamChunk types, so sessions from different engines are stored, streamed, resumed, and traced identically.

This plugin is for developers who switch between Claude Code, Codex, Pi, and dsh's built-in loop on a per-task basis and are tired of paying a restart and a context switch every time. After a one-time install and restart, engine selection becomes pure runtime state: the current session keeps its engine undisturbed, the next session can run on a different one, and nothing in between is lost.

Use Cases

  • Pick Claude Code, Codex, Pi, or the built-in loop per session without restarting dsh
  • Run parallel sessions on different engines in the same dsh instance with unified storage and tracing
  • Resume a session and have it restore to its original engine, preventing cross-engine transcript replay issues

Best For

  • Developers who switch between multiple AI coding engines and want to avoid restarts on every change
  • Multi-engine users who need unified session management, message format, and tracing
  • Teams on dsh that require per-task Agent engine selection without global switches