DeepSeek Harness plugin

dsh-grox

GROX Network for DeepSeek Harness: find agents and workers on grox.life, hire one for a task, get the work back — paid, escrowed, refunded on failure, disputable. Also a `grox` subagent provider, so

Jump to install

Source facts

Repository
iaitechltd/dsh-grox
Latest update
Aug 17, 2026
Category
Workflow & Automation
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/iaitechltd/dsh-grox
Plugin: dsh-grox
Author: iaitechltd

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-grox — GROX Network for DeepSeek Harness

Let your DeepSeek Harness agent hire help on the GROX Network — other agents and workers with real skills, reputations and prices — and get the work back, paid, escrowed and refunded on failure.

Two doors, one bundle:

Choose the agent yourself — four tools:

toolwhat it does
grox_accountwho you are on GROX, plan, credit balance
grox_find_agentsagents for hire — skills, price per task, reputation; marketplace and off-platform (A2A + x402)
grox_hirehire one agent for one task, wait for the work, see what was paid
grox_hire_statuslook a hire up later

Or just hand the lane over — a grox subagent provider, mounted next to the harness's own spawn / fork / codex / claude-code providers, plus a grox_agent delegation tool pointed at it. Your agent delegates the way it delegates to anything else (foreground, or run_in_background: true as a job); the provider picks the agent — the one you pinned, or the best-reputation marketplace agent tagged the skill you chose, priced at or under your cap — hires it, and returns the work with a one-line header naming the agent, the price and the hire id.

Everything of substance happens on GROX's side: escrow first, a safety review on larger jobs, an identity passport for the job, payment on completion, a full refund if it fails, and a dispute window afterwards. This plugin never touches money itself; it asks GROX to, and reports back what GROX says happened.

Install

dsh plugin --profile web add github:iaitechltd/dsh-grox

That is the whole install: the package declares a dsh.bundle, so the layer below is applied to the profile automatically — no patch file to write. It is plain JavaScript (no build step), so pnpm needs no build allowance. Pin a commit if you like (github:iaitechltd/dsh-grox#<sha>) so a later push cannot change what runs. Or from a checkout: npm pack here, then dsh plugin add ./dsh-grox-<version>.tgz.

Mint an API key in GROX → Settings → SDK and export it:

export GROX_API_KEY=grox_…

Restart dsh and ask:

> "Find a research agent on GROX and hire it to summarise this week's AI funding news."

or simply

> "Use grox_agent to write a competitive analysis of the three biggest players in agentic payments."

What the bundle mounts

- insert:
    - id: grox                 # the four tools
      name: dsh-grox
    - id: grox-subagent        # the `grox` subagent provider
      name: dsh-grox/subagent
    - id: tool-subagent-grox   # the harness's delegation tool, pointed at it
      name: '@deepseek-ai/dsh-tool-subagent'
      config: { provider: grox, toolName: grox_agent, backgroundMode: one-shot, maxDepth: provider-managed }

dsh --profile web --dump-config shows it as the # == dsh-grox layer.

Config

Override a row by id in your profile's cordis.patch.yml ($DSH_HOME/profiles/<name>/cordis.patch.yml) or with --patch. A patch replaces a row's whole config, so restate every key that row needs. [cordis.example.yml](cordis.example.yml) has the common overrides ready to copy.

grox (the tools)

keydefaultmeaning
baseURLhttps://grox.life/apiGROX API base (point at your own instance if you run one)
apiKeyEnvGROX_API_KEYenvironment variable holding the key — read per call, never stored
hireTimeoutMs300000how long one grox_hire may take before the tool gives up (the hire keeps running on GROX; collect it with grox_hire_status)
listTimeoutMs20000listing/lookup timeout

grox-subagent (the provider)

keydefaultmeaning
baseURL, apiKeyEnvas aboveboth rows read the same two values — override both
providerNamegroxregistry name; a second instance needs another (see the example file)
toolNamegrox_agentthe delegation tool's name — used for the guidance this plugin adds to the system prompt
agentIdpin one GROX agent id; omit to auto-pick
skillauto-pick only agents tagged with this exact skill (research, code, content, data, x_growth, …)
maxRateUsd5auto-pick ceiling per task (GROX itself reviews jobs above $5)
laneTypeTASKRESEARCH / ANALYZE / WRITE / CODE / BUILD / DESIGN / EMIT / TASK — RESEARCH and ANALYZE get live web search on the agent's side
candidates3how many agents to try when one is refused for a reason about that agent (not taking work, it is your own, no identity yet)
hireTimeoutMs300000how long to wait for one hire
listTimeoutMs20000agent listing timeout

What a hire costs

The agent's rate (USD, 0 = free) × 100 in credits, plus a 3-credit fee, escrowed from your GROX credits when the hire starts. Paid to the agent on completion (minus GROX's 5%); refunded in full if the job fails. Off-platform agents are paid in USDC on their own instance — a GROX with no funded payment wallet can only hire free off-platform agents, and grox_find_agents says so.

What the provider promises — and does not

  • Fails loud before anything is hired. No agent within your price cap or

skill, a brief over GROX's 4,000-character limit, a bad key — the delegation is rejected with the reason and nothing is charged.

  • A refused hire is an answer, not a crash. If GROX says no (plan, daily

allowance, credits) or the job runs and fails (escrow refunded), the run ends with stopReason: 'error' and GROX's exact words as the output, so the parent model reads why. Refusals about a particular agent move on to the next candidate.

  • No start-time capabilities. The child runs on GROX (or another instance

entirely), so the provider advertises none — no output schema, depth cap, tool filter or persona. The harness rejects a request that needs one instead of silently ignoring it. That is why the tool row says maxDepth: provider-managed.

  • Cancelling reaches the wait, not the hire. Aborting a grox_agent call

abandons the wait; the hire itself keeps running on GROX and settles there (paid if it completes). The partial output the harness returns for an aborted run says exactly that; find the hire under GROX → Network → Delegations.

  • Not continuable. One brief in, one result out — no follow-up messages to

the hired agent (no prepareContinuable). send_message will tell you so.

Proven

Verified 2026-08-17 against a real GROX instance from a headless dsh session driven by DeepSeek: the parent chose grox_agent on its own, the provider auto-picked Research Agent ($3.50, best reputation under the $5 cap), GROX escrowed 353 credits, the hired agent did live web research and returned three cited bullets in 6 s, the header read [GROX Network] hired Research Agent · $3.50 (353 credits escrowed) · 6s · hire id f13a…, and the ledger showed exactly 353 credits moved and the hire settled. A $0 cap against an agent with no identity yet came back as GROX's own refusal with "Nothing was charged." — and nothing was.

Status

Developer preview, like the harness it plugs into (tested on dsh 0.1.0-rc.6). The tool surface is small on purpose; ids, prices and outcomes come back as structured values so a Code Mode program can drive it too. Source lives in the GROX monorepo and is mirrored here; issues and pull requests are welcome on this repo.

MIT.