Skip to content
dsh-market Browse plugins GitHub 中文

lucyTrump/dsh-runninghub-api

Run RunningHub cloud ComfyUI workflows from chat — settings card, sha256 media upload cache, concurrency gate, and background task ledger.

Stars ★ 0 Category Workflow & Automation Listed 2026-09-18 npm dsh-runninghub-api

Install

Inside DeepSeek Harness, with dsh-market

dsh plugin --profile web add dshmarket

Or from the command line

dsh plugin --profile web add dsh-runninghub-api

Installing runs third-party code with your own permissions — it can read your files, use your credentials and reach the network. Review the source first, and pin a commit (github:owner/repo#sha) when you can.

README

English | 中文

A DeepSeek Harness (DSH) plugin that integrates RunningHub cloud ComfyUI workflows: a configuration form for your API key and workflow library, nine runninghub_* tools for agents, a sha256 media upload cache, a local concurrency gate with FIFO queueing and timeouts, background tasks with completion notifications, and a durable task ledger with automatic restart recovery.

Install

dsh plugin --profile web add dsh-runninghub-api

or install/update from the in-app plugin market (dshmarket). Then open the sidebar's Plugins page and open the dsh-runninghub-api card: the configuration form sits below the description (on DSH ≥ 0.1.6-alpha.2, plugin configuration moved out of Settings → Plugins onto the Plugins page).

Settings (runninghub namespace)

Field Default Purpose
apiKey — Literal key (role('secret')); prefer apiKeyEnv
apiKeyEnv RUNNINGHUB_API_KEY Credential reference resolved per request
baseUrl https://www.runninghub.cn OpenAPI base
pollIntervalMs 5000 Status poll interval (min 1000)
runTimeoutMs 3600000 Run-phase timeout (0 = unlimited)
queueTimeoutMs 0 Queue-phase timeout (0 = unlimited)
maxConcurrentTasks 3 Local concurrency gate
uploadUseLegacy false Legacy multipart upload endpoint
workflows [] Saved workflow definitions

Tools

runninghub_list_workflows, runninghub_fetch_workflow, runninghub_run_workflow (two-phase: reports missing required params/media — and values outside a node's declared enum choices — as needs_input instead of submitting), runninghub_get_task, runninghub_list_tasks, runninghub_cancel_task, runninghub_upload_file (sha256-deduplicated), runninghub_refresh_workflow, runninghub_note_workflow (append a per-workflow usage gotcha).

Remote (ctx.remote.runninghub)

fetchWorkflow (workflow JSON fetch + parse), validateWorkflow (free dry-run payload assembly), describeWorkflow (LLM catalog description, attention params, and usage notes — fed the node registry's enum/bounds constraints and this workflow's recent failures), runTest (real paid submit for the configuration form), testConnection. The browser half self-mounts this namespace via ctx.remote.$mount() at startup.

Development

pnpm install        # canonical (npm registry)
pnpm build          # Typert artifacts + host lib + client bundle
pnpm test           # vitest
pnpm typecheck

Offline against a local deepseek-harness checkout (no registry access):

node scripts/link-local-dsh.mjs [/path/to/deepseek-harness]
pnpm build

Note: when link-installed into a live dsh profile (dsh plugin add <this dir>), the @deepseek-ai/* entries in node_modules must be symlinks into the local DSH checkout — real npm copies would duplicate the cordis singleton. Re-run node scripts/link-local-dsh.mjs after every pnpm install, before restarting dsh.

One command rebuilds and installs into the local web profile (a link install — it verifies the profile really resolves to this build, then says what to do):

npm run update:dsh                # or: npm run update:dsh -- <profile dir>

Then restart DSH — dsh-hmr watches the profile manifest and patch files, not plugin contents. First-time install into a profile:

dsh plugin --profile web add /path/to/dsh-runninghub-api

tests/ covers the gateway against a mocked fetch (endpoints A–F, status codes 0/804/805/813, secret masking, no-key fast-fail), workflow prompt mapping, payload validation/override reconciliation, and the media cache.

License

MIT

Content from the project README on GitHub ↗

Comments

Comments live in GitHub Discussions. Sign in with GitHub to post or react.