Skip to content

Release 0.2.0

Choose a tag to compare

@github-actions github-actions released this 25 Jun 21:42
· 43 commits to main since this release
a5f2e74

Install

go install github.com/jedwards1230/labctl@0.2.0

Or download a static binary for your platform below.


labctl v0.2.0

This release delivers a major expansion of labctl's capabilities, introducing JSON-RPC over WebSocket transport, OAuth2 authentication, OpenAPI-based service inference, composed pipelines, and a built-in MCP server — rounding out the core Phase 2 and Phase 3 feature set.


Features

JSON-RPC over WebSocket (jsonrpc-ws)

labctl now supports JSON-RPC 2.0 communication over WebSocket connections, enabling real-time, bidirectional interaction with homelab services that expose a WebSocket endpoint.

OAuth2 Authentication

Auth strategies now include OAuth2 support. Configure OAuth2 credentials in your service manifest to have labctl handle token acquisition and refresh automatically when calling protected APIs.

OpenAPI Inference

labctl can now inspect an OpenAPI specification and infer available operations, reducing the need for hand-written manifest entries for services that publish a spec. Point labctl at an OpenAPI document and it will derive callable commands automatically.

Composed Pipelines

Multiple service calls can now be chained into a composed pipeline, allowing the output of one step to feed into the next. Define pipeline stages in your manifest to orchestrate multi-step homelab workflows from a single command.

MCP Server

labctl now ships with an embedded MCP (Model Context Protocol) server, exposing registered service operations as MCP tools. This enables AI assistant integrations to invoke labctl-managed homelab services directly.


Improvements

Expanded Auth Test Coverage

Authentication strategies and CLI exit-code contracts are now covered by a dedicated test suite, improving reliability and making regressions easier to catch.

CI: actions/setup-go bumped to v6 (Node 24)

The CI pipeline now uses actions/setup-go@v6, aligning with the Node 24 runner baseline and ensuring consistent Go toolchain setup in automated builds.

Commits

  • Merge pull request #5 from jedwards1230/feat/phase-2-3 (a5f2e74)
  • Merge pull request #4 from jedwards1230/test/cli-auth-coverage (ca5c24f)
  • Merge pull request #3 from jedwards1230/ci/setup-go-v6 (c40ad97)

Full Changelog: v0.1.0...v0.2.0