multiline-socket-protocol

Frame multi-line data over TCP sockets using READY and END_MARKER handshake signals.

1|Updated Feb 15, 2026
One-click install
npx skills add https://github.com/mlinnen/mr-pumpkin --skill multiline-socket-protocol
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: multiline-socket-protocol
Source: https://github.com/mlinnen/mr-pumpkin/tree/main/.squad/skills/multiline-socket-protocol
Command: npx skills add https://github.com/mlinnen/mr-pumpkin --skill multiline-socket-protocol

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Line-based socket protocols struggle when transferring data that contains embedded newlines (JSON, text blocks, or binary data). This Skill provides a robust pattern to frame and transfer multi-line payloads without corrupting boundaries.

Core Features & Use Cases

  • Handshake-based framing that brackets the data stream with explicit signals (e.g., READY and END_MARKER) to ensure reliable transmission.
  • Clear server-side and client-side workflows for streaming multi-line content, including error handling and disconnection safety.
  • Use cases include transferring configuration payloads, JSON blocks, or multi-line logs over TCP connections in distributed components.

Quick Start

Initialize a handler that waits for a command, responds with READY, streams the data, and ends with END_MARKER to complete the transfer.

Frequently Asked Questions about multiline-socket-protocol

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send multi-line JSON over a TCP socket without corrupting boundaries?

To send multi-line JSON over a TCP socket without corrupting boundaries, apply a handshake-based framing pattern that brackets the data stream with explicit READY and END_MARKER signals. This ensures reliable transmission of embedded newlines across distributed components.

Why does my line-based socket protocol fail when transferring configuration payloads with newlines?

Line-based socket protocols fail with configuration payloads because embedded newlines corrupt data boundaries. You need explicit data framing with READY and END_MARKER signals to separate control commands from the multi-line payload stream safely.

What is the best way to frame multi-line logs for streaming across a TCP connection?

The best way to frame multi-line logs for TCP streaming is using a handshake-based protocol with explicit READY and END_MARKER signals. This method defines clear client and server workflows, enabling robust streaming with error handling and disconnection safety.

Can I use handshake-based framing to handle disconnections during multi-line data transmission?

Yes, handshake-based framing handles disconnections during multi-line data transmission by defining clear server-side and client-side workflows. These workflows include explicit error handling and disconnection safety mechanisms to maintain robust streaming.

How do I implement client and server workflows for multi-line socket data transfer?

Implement client and server workflows for multi-line socket data transfer by initializing a handler that waits for a command, responds with READY, streams the data, and ends with END_MARKER. This completes the transfer with built-in error handling.