본문으로 건너뛰기
L

dsh-runninghub-api

lucytrump/dsh-runninghub-api

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

설치

dsh plugin --profile web add github:lucytrump/dsh-runninghub-api

README

dsh-runninghub-api

English | 中文

A DeepSeek Harness (DSH) plugin that integrates RunningHub cloud ComfyUI workflows: a settings card for your API key and workflow library, eight 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 Settings → Plugins → RunningHub to add your API key and workflows.

Settings (runninghub namespace)

FieldDefaultPurpose
apiKeyLiteral key (role('secret')); prefer apiKeyEnv
apiKeyEnvRUNNINGHUB_API_KEYCredential reference resolved per request
baseUrlhttps://www.runninghub.cnOpenAPI base
pollIntervalMs5000Status poll interval (min 1000)
runTimeoutMs3600000Run-phase timeout (0 = unlimited)
queueTimeoutMs0Queue-phase timeout (0 = unlimited)
maxConcurrentTasks3Local concurrency gate
uploadUseLegacyfalseLegacy multipart upload endpoint
workflows[]Saved workflow definitions

Tools

runninghub_list_workflows, runninghub_fetch_workflow, runninghub_run_workflow (two-phase: reports missing required params/media as needs_input instead of submitting), runninghub_get_task, runninghub_list_tasks, runninghub_cancel_task, runninghub_upload_file (sha256-deduplicated), runninghub_refresh_workflow.

Remote (ctx.remote.runninghub)

fetchWorkflow (workflow JSON fetch + parse), validateWorkflow (free dry-run payload assembly), runTest (real paid submit for the settings card), 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.

Local install into the web profile (link install; rebuilds are picked up on restart):

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

관련 플러그인