26 Unix tools. One binary. Zero dependencies. · the missing coreutils for AI pipelines · vrk mcp - expose all 26 tools to any AI agent · brew install vrk - ready in 5 seconds · 26 Unix tools. One binary. Zero dependencies. · the missing coreutils for AI pipelines · vrk mcp - expose all 26 tools to any AI agent · brew install vrk - ready in 5 seconds

vrk sse

About

Parses Server-Sent Event streams into clean JSONL records. Handles the data: prefixes, blank-line delimiters, multi-line data fields, and [DONE] sentinels that make raw SSE awkward to work with. You can extract nested fields from the JSON data using dot-path syntax.

The problem

You curl an LLM streaming endpoint and get raw SSE frames - data: prefixes, blank lines, [DONE] sentinels. You need clean JSONL records. You write an awk script that breaks on multi-line data fields.

Before and after

Before

curl -sN https://api.example.com/stream | \
  grep '^data: ' | sed 's/^data: //' | grep -v '^\[DONE\]$'
# breaks on multi-line data fields
# loses event types and IDs

After

curl -sN https://api.example.com/stream | vrk sse

Example

curl -sN https://api.example.com/stream | vrk sse

Exit codes

CodeMeaning
0Success, including clean [DONE] termination
1I/O error reading stdin
2Usage error - interactive terminal with no piped input, unknown flag

Flags

FlagShortTypeDescription
--event-estringOnly emit events of this type
--field-FstringExtract dot-path field from record as plain text