xpc

module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2026 License: MIT

README

xpc

Modern Sysinternals-style remote management toolkit for Windows XP virtual machines.

Status: scaffolding. No production code yet — see TASKS.md for current phase.


xpc is a single-dispatcher CLI (modeled on AWS CLI v2 and kubectl) plus a Python on-VM agent, communicating over a custom transport that follows the ARCP RFC envelope contract. It is the modern successor to xpctl.

Layout

cmd/xpc/        # host CLI binary (Go)
internal/       # Go internals (arcp, transport, profile, cli, output, sshlife)
agent/          # on-VM agent (Python 3.4 compatible) + helper scripts
docs/           # design docs and RFC snapshot
tests/          # integration + real-VM test fixtures

Install

Requires Go 1.25+.

go install github.com/nficano/xpc/cmd/xpc@latest

This drops the xpc binary into $(go env GOBIN) (or $(go env GOPATH)/bin). Pin a specific release with @vX.Y.Z instead of @latest.

Development (placeholder)

make build       # build the xpc binary
make test        # unit + integration tests
make lint        # go vet + golangci-lint
make fmt         # gofmt
make tidy        # go mod tidy

make test-real-vm runs the VM-targeted suite once Phase 4+ lands. Until then, real-VM verification is manual.

License

MIT.

Directories

Path Synopsis
Package agent ships the on-VM Python sources as embedded byte slices so the xpc Go binary can ship them.
Package agent ships the on-VM Python sources as embedded byte slices so the xpc Go binary can ship them.
cmd
gen-corpus command
Command gen-corpus produces the shared protocol test corpus consumed by both internal/arcp/corpus_test.go and agent/tests/test_corpus.py.
Command gen-corpus produces the shared protocol test corpus consumed by both internal/arcp/corpus_test.go and agent/tests/test_corpus.py.
xpc command
Package main is the entry point for the xpc CLI.
Package main is the entry point for the xpc CLI.
xpc-exec command
Command xpc-exec is the Phase 4 end-to-end verifier.
Command xpc-exec is the Phase 4 end-to-end verifier.
xpc-roundtrip command
Command xpc-roundtrip is the Phase 3 real-VM round-trip client.
Command xpc-roundtrip is the Phase 3 real-VM round-trip client.
internal
arcp
Package arcp implements the xpc wire protocol per docs/PROTOCOL.md.
Package arcp implements the xpc wire protocol per docs/PROTOCOL.md.
cli
Package cli implements the xpc cobra command tree.
Package cli implements the xpc cobra command tree.
output
Package output provides uniform formatters used across the xpc subcommand surface.
Package output provides uniform formatters used across the xpc subcommand surface.
profile
Package profile implements the AWS-style split-config storage for xpc.
Package profile implements the AWS-style split-config storage for xpc.
sshlife
Package sshlife provides a thin SSH client used by xpc bootstrap and the agent-lifecycle subcommands.
Package sshlife provides a thin SSH client used by xpc bootstrap and the agent-lifecycle subcommands.
transport
Package transport implements the wire transport beneath the ARCP envelope: TLS 1.2 over TCP, length-prefixed framing, and self-signed certificate pinning by SHA-256 fingerprint.
Package transport implements the wire transport beneath the ARCP envelope: TLS 1.2 over TCP, length-prefixed framing, and self-signed certificate pinning by SHA-256 fingerprint.
version
Package version exposes the build version of the xpc binary.
Package version exposes the build version of the xpc binary.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL