CALLANYTHING
Responder · 5 min · EN

Turn one
capability into a Hotline

Start from the published delexec-ops package, prove the local runtime with the example Hotline, then attach your own capability to the supervisor. Source installs and review are later steps.

Local firstPlatform optionalProcess or HTTP adapters

What this page gets you to

From zero to one reviewable Hotline registration

  • · Start supervisor and isolate local runtime state
  • · Register and enable the Responder role
  • · Validate the built-in example Hotline first
  • · Create your own process or HTTP Hotline draft
  • · Submit review and inspect status
01

Official path: install the CLI and bootstrap

New users should start from the published @delexec/ops package and confirm the local runtime, Caller/Responder loop, and example Hotline work before editing source.

bash
Any directory
npm install -g @delexec/ops
delexec-ops bootstrap --email [email protected] --text "Summarize this bootstrap request."
delexec-ops status
delexec-ops run-example --text "Summarize this follow-up request."
ExpectedThis proves a local self-call through the built-in example Hotline. It is not Marketplace publishing yet, but it confirms the runtime foundation for Responder-side work.
bash
Source contributor path
git clone --recursive https://github.com/hejiajiudeeyu/delegated-execution-dev.git
cd delegated-execution-dev/repos/client
npm install

export DELEXEC_HOME="$HOME/.delexec-responder-en"
export OPS_PORT_SUPERVISOR=8189
DELEXEC_HOME="$DELEXEC_HOME" OPS_PORT_SUPERVISOR="$OPS_PORT_SUPERVISOR" npm run ops -- start
WarningThe following steps continue with the installed delexec-ops CLI. If you already ran the Caller quick start, either reuse the same supervisor intentionally or choose a different DELEXEC_HOME and port to avoid mixing state accidentally.
02

Register a Responder identity

Local mode does not require a hosted platform. If you do want review and Marketplace-style routing, bootstrap against your own or hosted platform endpoint instead.

bash
Local only
delexec-ops auth register --local --email [email protected]
bash
Platform-backed
delexec-ops bootstrap   --email [email protected]   --platform http://127.0.0.1:8080
03

Enable the Responder role

Once enabled, the runtime prepares the responder controller and the registration slots needed for Hotline drafts.

bash
delexec-ops enable-responder   --display-name "Acme Workspace Tools"
04

Validate the built-in example Hotline first

This keeps the first debug loop narrow. Prove the responder path works before you blame your own adapter, schema, or implementation.

bash
delexec-ops add-example-hotline

BASE="http://127.0.0.1:${OPS_PORT_SUPERVISOR:-8079}"
OPS_SESSION=$(curl -s -X POST "$BASE/auth/session/setup"   -H 'content-type: application/json'   -d '{"passphrase":"client-localtest-123"}' | jq -r '.token')
export OPS_SESSION

curl -s -X POST "$BASE/requests/example"   -H 'content-type: application/json'   -H "X-Ops-Session: $OPS_SESSION"   -d '{}'
ExpectedA successful response here proves the caller, supervisor, and responder loop is already healthy.
05

Create your own Hotline registration

A Hotline is an adapter plus contract metadata. The most important pieces are Hotline ID, summary, input_schema, output_schema, and examples.

bash
Process adapter
delexec-ops add-hotline   --type process   --hotline-id your.namespace.tool-name.v1   --display-name "Workspace summarizer"   --cmd "node ./my-tool/index.js"   --cwd "$PWD"
bash
HTTP adapter
delexec-ops add-hotline   --type http   --hotline-id your.namespace.tool-name.v1   --display-name "Workspace summarizer"   --url http://127.0.0.1:9000/run
Draft locationThe generated registration draft is written to $DELEXEC_HOME/hotline-registration-drafts/*.registration.json so you can refine summary, schemas, examples, and risk notes before review. When --cmd uses a relative path, also pass --cwd so the Responder can restart from any shell without losing the script location.
06

Optional advanced step: submit review and understand the payload

Once the local draft works, send it to the review path only when you have a hosted or self-hosted platform endpoint. That is where schema validation, review tests, and Marketplace-facing checks happen.

bash
delexec-ops submit-review   --hotline-id your.namespace.tool-name.v1
json
Typical review payload shape
{
  "responder_id": "responder_xxx",
  "hotline_id": "your.namespace.tool-name.v1",
  "template_ref": "local.delegated-execution.workspace-summary.v1",
  "title": "Workspace summarizer",
  "summary": "Summarize a target workspace into a short agent-readable report.",
  "input_schema": {
    "type": "object",
    "required": ["text"],
    "properties": {
      "text": { "type": "string", "description": "user prompt" }
    }
  },
  "output_schema": {
    "type": "object",
    "required": ["summary"],
    "properties": {
      "summary": { "type": "string", "description": "workspace summary" }
    }
  }
}
json
One common failure shape
{
  "status": "FAILED",
  "error": {
    "code": "SCHEMA_VALIDATION_FAILED",
    "message": "output_schema is missing required property definitions"
  }
}
ImportantNo platform is still a valid setup. In that case your Hotline remains callable in local or private self-hosted environments through the supervisor catalog, but it will not appear on the public Marketplace.
07

OPC #0 production rehearsal: submit to callanything.xyz

For the public production rehearsal, use the hosted Platform endpoint and hand responder_id plus hotline_id to the operator for approval. Do not paste API keys into chat, issues, or docs.

bash
Submit review to the production Platform
PLATFORM="https://callanything.xyz/platform"
RESPONDER_EMAIL="me"@"example.com"

delexec-ops auth register   --platform "$PLATFORM"   --email "$RESPONDER_EMAIL"

delexec-ops enable-responder   --display-name "Acme Workspace Tools"

delexec-ops add-hotline   --type process   --hotline-id your.namespace.tool-name.v1   --display-name "Workspace summarizer"   --cmd "node ./my-tool/index.js"   --cwd "$PWD"   --fixed-price-cents 50   --currency PTS   --billing-disclosure-url "https://callanything.xyz/marketplace/responders/your-namespace"

delexec-ops submit-review   --hotline-id your.namespace.tool-name.v1

delexec-ops status
bash
After approval: keep the Responder online on the public Relay
RELAY="https://callanything.xyz/relay"
export TRANSPORT_TYPE="relay_http"
export TRANSPORT_BASE_URL="$RELAY"

# Foreground: best for the first log-watching run.
delexec-ops start

# Long-running: keeps accepting tasks after an SSH or temporary shell exits.
mkdir -p "$DELEXEC_HOME/logs"
nohup env   TRANSPORT_TYPE="relay_http"   TRANSPORT_BASE_URL="$RELAY"   delexec-ops start   > "$DELEXEC_HOME/logs/public-relay-responder.log" 2>&1 &
bash
Public visibility check
curl -s "https://callanything.xyz/marketplace/hotlines" | jq
curl -s "$PLATFORM/v1/catalog/hotlines/your.namespace.tool-name.v1" | jq
Operator handoffSend the responder_id, hotline_id, draft pricing_hint, and contact email to the operator. The operator must approve, enable, and recharge the Caller; if the public /console/surface is not fully open yet, use the operator-provided manual channel. After approval, keep the local adapter online with relay_http pointed at https://callanything.xyz/relay.
08

Check status and runtime health

A published capability is only useful if it is actually online. Status checks are the shortest way to confirm the runtime and registration are both healthy.

bash
delexec-ops status

curl -s "$BASE/responder" -H "X-Ops-Session: $OPS_SESSION" | jq

What to do next

You now have the seller-side minimum loop. The next decision is whether to improve the capability contract for review quality or to inspect the same system from the Caller side.

Improve the contract

Better summary, input_schema, output_schema, and examples directly improve whether Callers can understand and trust the capability.

Switch to the buyer side

A strong Responder should also understand the Caller workflow, because that is how your Hotline will actually be discovered and invoked.

Responder FAQ

Responder Quick Start common questions

These questions cover the first seller-side decisions that matter most for publishing a Hotline, and they are also emitted as English FAQ schema.

What does Responder Quick Start teach first?

It teaches the seller-side minimum loop: start supervisor, enable the Responder role, validate the built-in example hotline, then create your own registration draft with schemas and examples.

Do I need a hosted platform to publish a Hotline?

No. You can run a Hotline locally or in a private self-hosted environment first. A hosted or self-hosted platform is only needed when you want broader review, routing, or Marketplace-style discovery.

Which fields matter most when I publish a Hotline?

The most important fields are summary, input_schema, output_schema, examples, and risk notes. They determine whether Callers can understand the capability and whether review can trust the published surface.