Skip to content

Releases: TickTockBent/Sopholeth

v2.1.0 — Discovery Protocol v2

Choose a tag to compare

@TickTockBent TickTockBent released this 25 Feb 20:01

Discovery Protocol v2 — Phases 1 & 2

NAT-bound MCP installs are now full network participants. Every npx repram-mcp node can join the network regardless of NAT/firewall status.

What's new

WebSocket transport — Persistent bidirectional connections between transient nodes (MCP installs behind NAT) and substrate nodes (routable infrastructure). Same wire format as HTTP gossip, with HMAC signing and heartbeat-based failure detection.

Substrate relay — Substrate nodes accept WebSocket attachments and relay on behalf of transient nodes. PUTs from transient children are stored locally, fanned out to the mesh, and forwarded to sibling children. ACKs route back through the substrate to the originating transient node.

Graceful goodbye — Substrate nodes send goodbye messages with alternative substrate suggestions on shutdown. Transient nodes migrate proactively (~3-5s disruption vs ~90s heartbeat timeout).

Bootstrap integration — Transient nodes automatically attach to substrate via WebSocket after HTTP bootstrap. Falls back to HTTP-only gossip if no substrate supports WebSocket.

Configuration

Variable Default Description
REPRAM_INBOUND false true for infrastructure (substrate), false for MCP installs (transient)
REPRAM_MAX_CHILDREN 100 Max transient attachments per substrate node

Test coverage

431 tests total (83 Go + 316 TS + 32 live wire compat)

Closes #58, #59, #60, #61, #62, #63, #64, #65, #66

v2.0.0 — Unified TypeScript Node

Choose a tag to compare

@TickTockBent TickTockBent released this 25 Feb 16:38

REPRAM v2.0.0 adds a complete TypeScript implementation of the REPRAM node, merged into the repram-mcp package. A single npx repram-mcp now provides both a full REPRAM node and MCP agent tools — no separate server needed.

What's New

Unified TypeScript Node

The MCP server is now a full REPRAM node. Three modes:

  • npx repram-mcp — embedded node + MCP stdio transport (default)
  • npx repram-mcp --standalone — HTTP server only, replaces the Go binary
  • REPRAM_URL=... npx repram-mcp — connects to an existing node

Wire Compatible

Go and TypeScript nodes use identical JSON wire format and HMAC-SHA256 signing. They coexist in the same cluster — verified by 32 live integration tests running 2 Go nodes + 1 TS node with cross-implementation gossip, replication, and authentication.

Full Feature Parity

The TypeScript node implements the complete REPRAM protocol:

  • Storage with TTL expiration and capacity limits
  • Gossip protocol with √N probabilistic fanout, dedup cache, topology sync
  • Quorum writes with ACK routing and dynamic quorum
  • DNS-based and manual peer bootstrap
  • Rate limiting, scanner detection, security headers, CORS
  • All /v1/ HTTP routes (data, keys with pagination, health, status, topology, gossip, bootstrap)

Tests

  • 250 TypeScript unit tests across 13 test files
  • 32 live wire compatibility tests (Go ↔ TS cluster)
  • 83 Go tests (unchanged)

Install

# MCP server with embedded node (agents)
npx repram-mcp

# Standalone HTTP server
npx repram-mcp --standalone

# Go node via Docker
docker run -p 8080:8080 -p 9090:9090 ticktockbent/repram-node:2.0.0

MCP Config (Claude Code, Cursor, etc.)

{
  "mcpServers": {
    "repram": {
      "command": "npx",
      "args": ["repram-mcp"]
    }
  }
}

Links

repram-mcp v2.1.0

Choose a tag to compare

@TickTockBent TickTockBent released this 25 Feb 20:01

repram-mcp v2.1.0

WebSocket transport and NAT traversal for the unified REPRAM MCP server.

New capabilities

  • Transient nodes attach to substrate via outbound WebSocket — full network participation behind NAT
  • Substrate relay: PUTs relayed through substrate, ACKs routed back to originating node
  • Graceful goodbye with proactive reattachment on substrate shutdown
  • REPRAM_INBOUND=true to run as substrate (accepts WS attachments)
  • REPRAM_MAX_CHILDREN to limit transient attachments

Install

npx repram-mcp

Or in MCP config:

{
  "mcpServers": {
    "repram": {
      "command": "npx",
      "args": ["-y", "repram-mcp"]
    }
  }
}

repram-mcp v2.0.0

Choose a tag to compare

@TickTockBent TickTockBent released this 25 Feb 16:40
67b23d1

npm release of the unified REPRAM node + MCP server.

npx repram-mcp

See v2.0.0 release notes for full details.