DSH Marketplace

mirage

strukto-ai/mirage#dsh

Swaps the filesystem and bash providers for a mirage virtual workspace: file tools and shell commands run over mounted resources (RAM, S3, Redis, Slack, Gmail, Notion, Postgres) instead of the host disk, with per-mount read/write/exec modes, per-command sandbox routing (monty, pyodide, quickjs in process; docker, e2b, daytona remote), and installed CLIs (git, gh, slack, linear, ntn, gws, or one you register) as head words in the virtual terminal.

3,467258TypeScriptApache-2.0Source

Install

Add mirage to DeepSeek Harness

via GitHub · GitHub source

This repository ships several plugins; the suffix selects this one.

Due diligence

Before you install mirage

  • Source of record: strukto-ai/mirage — present in the community registry that DSH's own plugin market installs from.
  • Licensed under Apache-2.0.
  • Detected: terminal surface. Read the source before granting these.
  • A listing here is not a security review. Plugins run with your agent's permissions.

What mirage does

Mounted resource blocks flow through permission gates into terminal pipelines and local or remote sandboxes.

mirage is a DeepSeek Harness plugin that replaces the filesystem and bash providers with a virtual workspace spanning mounted services and data sources. It presents resources such as RAM, S3, Redis, Slack, Gmail, Notion and Postgres as paths, so file tools and shell commands operate on those mounts rather than the host disk. Mounts can be assigned read, write or execute modes, and commands can be routed to runtimes such as in-process monty, pyodide and quickjs, or remote docker, e2b and daytona sandboxes.

The plugin exposes a virtual terminal with standard commands such as grep, cp, cat and pipelines, and can register typed CLIs as head words. The README names git, gh, slack, linear, ntn and gws, while custom programs can also be registered. A workspace can be created from a mapping such as "/s3": S3Resource(...), executed with ws.execute(...), and saved with ws.snapshot(...).

mirage is intended for agents that need one shell-like interface across cloud services, messaging systems, databases and files. It reaches every resource mounted into the workspace and may execute commands or scripts through the selected runtime, so its terminal surface should be treated as an access path to those resources. It is a poor fit when ordinary host filesystem and bash providers are sufficient, or where the required platform support is unavailable: the documented environment is macOS or Linux, and FUSE-based mounts require platform support.

mirage documentation

Workspace configuration

A workspace is constructed with mount paths mapped to resources. The README shows RAMResource() and S3Resource(S3Config(bucket="my-bucket")); a mount can also include a mode such as MountMode.EXEC or MountMode.WRITE.

Configuration Purpose
Workspace({...}) Creates the virtual workspace from mount paths and resources
S3Config(bucket=...) Selects the S3 bucket for S3Resource
MountMode.EXEC Mount mode used in the examples for executable access
MountMode.WRITE Mount mode used in the examples for writable access
runtimes=[...] Selects command runtimes; MontyRuntime(captures=["python", "python3"]) captures those command names
ws.register_cli(name, implementation, config) Registers a CLI under a virtual-terminal head word

The README also shows credentials supplied through resource or CLI configuration, including S3Config(...) and a Slack configuration containing token.

Commands and workspace operations

ws.execute("...") runs a shell command in the workspace. Documented examples use cp, grep, wc, pipes and redirected output. A script stored in a mounted resource can be invoked with python3, for example python3 /slack/...py > /redis/report.txt.

The command-line interface provides mirage workspace create, mirage execute, mirage provision, mirage workspace snapshot and mirage workspace load. The examples use --workspace_id, --command and --id, and save snapshots as .tar files. ws.snapshot("demo.tar") provides the SDK equivalent.

Resources and runtimes

The README lists mounts for RAM, disk, Redis, S3-compatible services, Gmail and Google Drive services, GitHub, Linear, Notion, Trello, Slack, Discord, email, MongoDB, Postgres, LanceDB, Qdrant and SSH. The upstream summary additionally identifies S3, Redis, Slack, Gmail, Notion and Postgres as DSH-mounted resources. Runtime choices include in-process monty, pyodide and quickjs, plus remote docker, e2b and daytona.

Requirements and platform

The documented SDK requirements are Python >=3.11 for mirage-ai, Node.js >=20 for the TypeScript SDK, and macOS or Linux. FUSE-based mounts require platform support. The TypeScript packages include @struktoai/mirage-node, @struktoai/mirage-browser and @struktoai/mirage-agents.

Written from the project's own documentation and kept in sync with it. Where the two disagree, the source is authoritative — read the README on GitHub

Same category

Alternatives to mirage

oh-dsh

hust-open-atom-club

214

Community distribution: TUI, desktop, and Web UI as one bundle with layered installation.

GitHub sourceTypeScripttoday

forkprobe

Jayden-X-L

66

Compare multiple skills on the same task and pick the winner.

npm packagePython2d ago

Ecosystem infrastructure: a thin browser console for managing official repository plugins (zero patches) plus a make-dsh-plugin skill for guided plugin development.

GitHub sourceTypeScript3d ago
39

Run the dsh runtime on Multica.

GitHub sourceTypeScript2d ago
22

Plugin health checks: manifest protocol / patch format / build traps, zero-dependency and read-only.

GitHub sourceTypeScript3d ago

dsh-user-experience

DietCokewithSugar

18

Finds potential UX issues in your project: automatically reviews React/TypeScript code, pinpoints each problem, and gives concrete suggestions.

npm packageTypeScript2d ago