Skip to content

Releases: MyPanda-Hash/CHENGXIAO

v0.2.0 - relay, async tasks, chunked transfer

Choose a tag to compare

@MyPanda-Hash MyPanda-Hash released this 24 Sep 02:36

What's new in 0.2.0

Cross-network pairing via an end-to-end-encrypted relay. Both machines connect outbound to one relay — no inbound ports, no port forwarding, no Tailscale. Pairing links use a new dshr:// scheme; the answer carrying the long-lived credential is sealed with a one-time X25519 exchange (AES-256-GCM) and every later message rides a channel key derived from it. The relay forwards ciphertext only, holds no keys, and persists nothing.

Zero-config official relay. relayEnabled: true with no relayUrl routes through the official public relay, so a fresh install works with three config lines and no infrastructure. Naming a relayUrl self-hosts with the identical protocol (Docker/compose artifacts in the repo).

Async task protocol. submit_task returns a taskId immediately; task_status / task_events (cursor-based) / task_result / cancel_task answer later calls across reconnects. idempotencyKey makes retries safe; terminal results expire after 24h. The old ask is a compatibility wrapper over the same machinery — its result shape is unchanged and every pre-existing ask test passes unmodified.

Chunked file transfer. Files up to 100 MiB move in 1 MiB chunks with per-chunk and whole-file sha256, resumable by re-request, landing atomically and never overwriting. Programmatic drivers (fetchPeerFile / sendPeerFile) run the loops because a model cannot relay a hundred chunks through a conversation.

Fix: package.json now declares its runtime dependencies — a clean-machine deployment exposed that the service crashed until @hono/node-server, @modelcontextprotocol/sdk and zod were installed by hand.

Measured, not claimed (real home link to a public cloud host): pairing 119 ms including the handshake, ask round-trip overhead ~197 ms on top of the task itself, chunked pull 5.0 MiB/s, push 2.7 MiB/s, byte verification both directions. Details and environments in the README.

Unchanged: the security stance. Nothing listens by default, no tool can open a listener or widen a peer's permission, pairing still needs human confirmation at the worker, and 262 tests run green with no network or model calls.

v0.1.0

Choose a tag to compare

@MyPanda-Hash MyPanda-Hash released this 23 Sep 01:19

First release. Pairs two DeepSeek Harness machines with a one-time code so one agent can run tasks and exchange files on the other, while each machine keeps its own files in place.

Install: dsh plugin --profile <profile> add github:MyPanda-Hash/CHENGXIAO

Prebuilt tarball attached for anyone who would rather not build from source.