Release 0.2.0
Install
go install github.com/jedwards1230/labctl@0.2.0Or 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