Introduction

In agent development, when a task requires extracting page text, evaluating JavaScript, or performing stealth scraping, a GUI browser may not meet the requirement. Obscura is a Rust-based headless browser and is usually compiled on Windows. This plugin aims to use WSL interoperability to allow DeepSeek Harness (DSH) to drive the Obscura browser directly from a Linux environment.

What It Is

dsh-wsl-obscura is an optional plugin (not included in KIT_SET=daily) maintained by user 173787247. It provides DeepSeek Harness with three core tools for controlling the Obscura browser, addressing the issue that WSL cannot directly invoke Windows-compiled binary tools.

Core Features

The plugin provides the following three tools:

  • obscura_status: resolves the Obscura binary path and runs a --version check.
  • obscura_fetch: executes the obscura fetch command and supports the dump, eval, and stealth options.
  • obscura_mcp_hint: provides guidance on how to connect to MCP (Model Context Protocol) or CDP (Chrome DevTools Protocol); the tool itself does not start a server.

Installation and Activation

Run the following command to install the plugin:

dsh plugin --profile web add github:173787247/dsh-wsl-obscura

After installation, it is recommended to restart the dsh web process for the plugin to take effect:

# 在 dsh-wsl-kit 中提供的脚本
scripts/restart-dsh-web.sh

Configuration and Prerequisites

Before using this plugin, the following conditions must be met:

  1. Obscura build: Build Obscura in a Windows environment. The command is cargo build --release -p obscura-cli --bins --features render,stealth.
  2. dsh version: The DeepSeek Harness version must satisfy >= 0.1.2.
  3. Path specification: The plugin needs to know the location of obscura.exe. It can be configured in the following ways:

    • Set config.binaryPath in the cordis configuration.
    • Set the environment variable OBSCURA_BIN or OBSCURA_PATH (WSL paths or Windows paths are supported).
    • Use the default candidate path: /mnt/c/Users/rchua/Desktop/AIFullStackDevelopment/obscura/target/release/obscura.exe.

Typical Usage

  1. Verify the environment: Run obscura_status to check whether the binary is resolved correctly and to view version information.
  2. Perform scraping: Based on the requirement, run obscura_fetch. For example, use dump to extract page text or stealth for stealth scraping.
  3. Connect through a protocol: If more complex interactions are needed via MCP or CDP, configure the connection according to the output of obscura_mcp_hint.

Applicable Scenarios and Notes

  • Scenario: Suitable for agent tasks that require headless control of the Windows-compiled Obscura browser in a WSL environment.
  • Notes:
    • This plugin is not dsh-wsl-browser, which is used to open the default Windows GUI browser.
    • The plugin runs with the permissions of the current dsh process; ensure that the configured path is accessible.
    • Before use, it is recommended to read the source code and review the license (MIT).

Conclusion

This plugin fills the gap for using Windows-native headless browsers with DeepSeek Harness in a WSL environment. For more details, consult the plugin directory or source repository.