# WeShop for DeepSeek Harness **An AI visual workspace for e-commerce creation, built into DeepSeek Harness.** [![License](https://img.shields.io/badge/license-MIT-2ea44f.svg)](./LICENSE) [![Version](https://img.shields.io/badge/version-1.0.1-282828.svg)]() [![Platform](https://img.shields.io/badge/platform-DeepSeek%20Harness%20plugin-282828.svg)]() [![简体中文](https://img.shields.io/badge/Language-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87-7530FE.svg)](./README.zh-CN.md) Select products, models, or reference images on an infinite canvas. Describe the result you want in natural language, and watch it appear right next to the conversation. [Read the Chinese README](./README.zh-CN.md) · [Get a WeShop API Key](https://www.weshop.ai/apiKey) · [Contact us](mailto:hi@weshop.ai) WeShop for DeepSeek Harness
> [!IMPORTANT] > **Install and successfully run DeepSeek Harness before installing this plugin.** This repository is a Harness plugin, not a standalone application. ## 📖 What is WeShop for DeepSeek Harness? WeShop for DeepSeek Harness brings WeShop's e-commerce visual workspace directly into [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness), so creative work happens on the same infinite canvas as your conversation instead of a separate tool. It is built for workflows like: - Turning a product shot into a clean, on-brand main image or lifestyle scene - Trying garments and accessories on a model with virtual try-on - Swapping, extending, or cleaning up backgrounds without leaving the chat - Batching photography, edits, and short video from a single natural-language brief WeShop canvas preview: a generated product image on an infinite canvas, synced with the Harness conversation ## ✨ Highlights - **🧩 Native plugin architecture**: Native Cordis Host and browser plugin; no MCP child process required. - **🖼️ Infinite canvas**: Marquee multi-selection, grouped movement, undo, download, delete, zoom, and pan. - **💬 Synchronized conversation**: Harness chat stays in sync with the canvas, with `@` references for selected items. - **🤖 Bundled preset & Skills**: Ships with the `weshop-canvas` agent preset and WeShop Skills, ready on first use. - **⚡ Automatic publishing**: Generated images, video, audio, and text land directly on the canvas — no manual download/re-upload. - **🔐 Secure API Key handling**: Configure in the canvas or via `WESHOP_API_KEY`; the key never reaches browser state or the model. - **🌐 Bilingual interface**: Chinese and English, with automatic locale detection and manual switching. - **📦 Portable install**: Packages as a single `.tgz` for installation on any machine running Harness. ## 🧩 DSH ecosystem - **Works alongside dsh-web-ui**: The canvas overlay and sidebar entry follow the host UI conventions used by [dsh-web-ui](https://github.com/zhu1090093659/dsh-web-ui), including its skins, so WeShop stays accessible without competing with the surrounding interface. - **Available in dsh-market**: Install [dsh-market](https://github.com/dsh-market/dsh-market) to browse and install WeShop from **Settings → Plugin Market** alongside other DeepSeek Harness plugins. ## 💡 Why WeShop? | Pain Point (Traditional) | The WeShop Workspace | | :--- | :--- | | **Tool-switching**: product photos, edits, and video each live in a different app. | **One canvas**: photography, try-on, background replacement, edits, and video happen in the same space as your conversation. | | **Manual round-trips**: generate somewhere else, then download and re-upload. | **Automatic publishing**: results are added straight to the canvas as soon as they're ready. | | **Prompt-only workflows**: hard to point at *this* product or *this* reference image. | **Spatial selection**: select items on the canvas and reference them with `@` right in chat. | | **Opaque key handling**: unclear where credentials are stored. | **Restricted local storage**: your API Key is saved by the local Harness Host and never returned to the browser or model. | ## 🚀 Getting Started ### Before you begin Install Node.js, then start the official Harness Web UI once: ```bash npx @deepseek-ai/dsh web ``` Harness should open at `http://127.0.0.1:3080`. Once you see it, stop Harness before continuing. Alternatively, follow the official [DeepSeek Harness source installation instructions](https://github.com/deepseek-ai/deepseek-harness#run). ### First installation With Harness closed, run one command: ```bash npx weshop-dsh-plugin setup ``` The installer adds WeShop to the Harness Web profile, enables its bundle, and migrates old WeShop packages if it finds any. No GitHub account, access token, or manual file editing is required. Then restart Harness: ```bash npx @deepseek-ai/dsh web ``` Create or open a task, then choose the **WeShop Canvas** preset. The preset is installed automatically on first activation. ### Install through dsh-market If you use the community plugin market, install it once and restart Harness: ```bash dsh plugin --profile web add dshmarket ``` Then open **Settings → Plugin Market**, search for **WeShop**, and install it there. ### Update WeShop For the simplest update, close Harness and run: ```bash npx weshop-dsh-plugin setup ``` If you already use the public npm package, this also works: ```bash cd ~/.dsh/profiles/web pnpm update weshop-dsh-plugin ``` > **Upgrading from an older WeShop install?** > If you previously installed a `.tgz` archive, `@weshop/dsh-canvas`, `@weshop/dsh-weshop-2-0`, or `@weshopai/dsh-weshop-2-0`, run `npx weshop-dsh-plugin setup` once. It replaces the old package and bundle entry automatically. After that, use either update command above. ### Advanced: build a portable archive Access to this private repository is required. ```bash git clone git@github.com:weshopai/weshop-dsh-plugin.git cd weshop-dsh-plugin corepack enable pnpm install --frozen-lockfile pnpm build pnpm pack ``` This creates a versioned file such as `weshop-dsh-plugin-1.0.1.tgz`. Install it into the Harness Web profile: ```bash PLUGIN_TARBALL="/absolute/path/to/weshop-dsh-plugin-1.0.1.tgz" cd ~/.dsh/profiles/web pnpm add "$PLUGIN_TARBALL" ``` ## ⚙️ Configure WeShop OpenAPI Open the canvas and select **Configure API Key** in the top bar. The key is saved by the local Harness Host with restricted file permissions and is never returned to the browser, canvas state, or model. You may instead provide the key before starting Harness: ```bash export WESHOP_API_KEY="your-key" npx @deepseek-ai/dsh web ``` Get a key from [WeShop OpenAPI](https://www.weshop.ai/apiKey). ## 🏗️ Development ```bash pnpm install --frozen-lockfile pnpm build pnpm pack --dry-run ``` Package entry points and runtime contributions: - `lib/index.js` — Cordis Host plugin, tools, Skills, routes, and private configuration. - `lib/client.js` — browser canvas and synchronized conversation UI. - `cordis.patch.yml` — bundle composition entry. - `presets/weshop-canvas/` — bundled WeShop agent preset. - `skills/` — bundled canvas and WeShop OpenAPI instructions. ## 🔒 Portability & Security - The package contains compiled Host and browser entries, presets, Skills, and required assets. - The target computer must already have a working Harness Web profile. - API Keys and generated local assets are intentionally excluded from the package and must be configured on each machine. - Canvas data is stored locally by the browser; it is not embedded in the installation archive. ## 🤝 Contact For support or partnerships, email [hi@weshop.ai](mailto:hi@weshop.ai). ## 📄 License This software is available under the [MIT License](LICENSE). ---

Built with ❤️ by the WeShop AI team.

[![MIT License](https://img.shields.io/badge/License-MIT-2ea44f.svg)](./LICENSE)