Repository navigation
Releases
Releases · cdalar/onctl
edge (2026-11-03)
Automated, unsigned build of main @ 0bacf21. Not a tagged release -- see the Releases page for stable, signed versions.
What's Changed
Changes
- installer: install to ~/.local/bin, fix PATH, verify checksums by @cdalar in #1207
- ci: run the release workflows on onctl-2 instead of the Mac mini by @cdalar in #1208
- Add
onctl tui: the VM list as a k9s-style live view by @cdalar in #1210 - Fix duplicate VM rows mid pause/resume and the container CLI 1.6 schema by @cdalar in #1211
- claude: run Claude Code on a VM of any provider, not only boxes by @cdalar in #1212
- get.sh: warn about other onctl copies on PATH after installing by @cdalar in #1213
- claude: honor ONCTL_CLOUD, don't force boxes when -p is absent by @cdalar in #1214
- Stop reading boxctl's credentials, key and token env var by @cdalar in #1215
- tui: run onctl claude on a VM and switch providers by @cdalar in #1216
- Switch license from AGPL-3.0 to Apache-2.0 by @cdalar in #1217
- completion: honor -p when listing VM names by @cdalar in #1218
- docs: show
onctl tuion the landing page by @cdalar in #1224 - test: cover pure helpers, static GetHost and boxes client actions by @cdalar in #1219
- fix(ac): finish delete when
container stoperrors but the container stopped anyway by @cdalar in #1225 - ls/tui: file a Hetzner server that is "off" under paused by @cdalar in #1226
- chore: remove stale scripts/deploy-controller.sh by @cdalar in #1229
- tui: :repos lists your GitHub repos; enter runs onctl claude --repo on one by @cdalar in #1230
- claude: resume a stopped VM that List returns instead of failing to ssh by @cdalar in #1231
- tui: tab completes the : command (:pro -> :providers) by @cdalar in #1232
- claude: --mux herdr runs Claude in herdr instead of tmux by @cdalar in #1233
- claude: on ac, boot the prebuilt claude-agent image and keep GitHub forwarding by @cdalar in #1234
- claude: a fresh box per run, cloned not copied, deleted after by @cdalar in #1236
- ac: say when the sandbox's image is being pulled by @cdalar in #1237
- ac: say the sandbox is an Apple container on this Mac, not "on ac" by @cdalar in #1238
- say where a machine is made: the provider's full name, local or cloud by @cdalar in #1239
- docs: anchor ids on the landing page section headings by @cdalar in #1247
- exit 1 when a command fails, and print the error once by @cdalar in #1249
- tui: refresh the VM list every 15s instead of 5s by @cdalar in #1250
- docs: clicking a heading's # link copies its URL by @cdalar in #1248
- docs: onctl social card for link previews by @cdalar in #1251
- docs: a page for onctl claude by @cdalar in #1252
- ci: one Pages deploy at a time by @cdalar in #1253
- docs: onctl claude login in full, and a subcommand list by @cdalar in #1255
- docs: a Terminal UI page with screenshots, and the rest brought up to date by @cdalar in #1256
- tui: enter in :repos starts Claude on a new box every time by @cdalar in #1257
- tui: enter in :repos asks for a new box or the repo's own by @cdalar in #1258
- ac: show a progress bar while pulling an image by @cdalar in #1259
- tui: ask for the provider when neither -p nor ONCTL_CLOUD is set by @cdalar in #1261
- tui: :providers shows each provider's full name and where it runs by @cdalar in #1262
- onctl with no subcommand opens the tui by @cdalar in #1263
- tui: :agents view for Claude sessions on boxes, provider full names, error popups by @cdalar in #1260
- tui: pick the provider inside the tui by @cdalar in #1267
- ssh: give the VM's shell TERM=xterm-256color by @cdalar in #1268
- tui: space marks VMs in :vms, and ctrl-d destroys the marked ones by @cdalar in #1269
- claude: a project with a go.mod gets the claude-agent-go image by @cdalar in #1270
- tui: a created VM is shown in :vms, under the cursor by @cdalar in #1271
- release: list every merged PR in the release notes, edge's too by @cdalar in #1272
- destroy: a paused Hetzner VM is a snapshot, deleted only when asked as one by @cdalar in #1274
- test(claude): cover claudesession env, staging, state script and worktrees by @cdalar in #1275
- fix(claude): keep --mux and ephemeral herdr runs from killing other sessions by @cdalar in #1276
- tui remember provider by @cdalar in #1277
- fix(claude): serialize herdr starts so one session gets one workspace by @cdalar in #1278
- ci: run workflows on the onctl-2 runner by @cdalar in #1280
- docs: clear Dependabot alerts for tinypool, serialize-javascript, katex by @cdalar in #1279
- tui: pick a dialog's answer with the arrow keys and enter by @cdalar in #1281
- fc: resume a VM restored under another name from its own disk by @cdalar in #1283
- Add the openshell provider: sandboxes on an NVIDIA OpenShell gateway by @cdalar in #1293
- WaitForSSH: say why SSH isn't coming up instead of spinning silently by @cdalar in #1294
- List GCP machine types in onctl sizes and the TUI by @cdalar in #1295
Dependency updates
- build(deps): bump golang.org/x/crypto from 0.57.0 to 0.58.0 by @dependabot[bot] in #1195
- build(deps): bump cloud.google.com/go/compute from 1.71.0 to 1.73.0 by @dependabot[bot] in #1194
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.50.0 to 2.52.0 by @dependabot[bot] in #1186
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.338.1 to 1.339.0 by @dependabot[bot] in #1197
- build(deps): bump follow-redirects from 1.16.0 to 1.16.1 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1209
- build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity from 1.14.1 to 1.15.0 by @dependabot[bot] in #1222
- build(deps): bump google.golang.org/api from 0.300.0 to 0.304.0 by @dependabot[bot] in #1220
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.6 to 1.33.9 by @dependabot[bot] in #1223
- build(deps): bump google.golang.org/api from 0.304.0 to 0.305.0 by @dependabot[bot] in #1227
- build(deps): bump ubuntu from
5ec03bbto0a98879in /.devcontainer by @dependabot[bot] in #1228 - build(deps): bump github/codeql-action/upload-sarif from 4.39.0 to 4.39.1 by @dependabot[bot] in #1241
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.47.3 to 1.47.4 by @dependabot[bot] in #1243
- build(deps): bump cloud.google.com/go/compute from 1.73.0 to 1.74.0 by @dependabot[bot] in #1242
- build(deps): bump the npm_and_yarn group across 1 directory with 3 updates by @dependabot[bot] in #1246
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.339.0 to 1.341.0 by @dependabot[bot] in #1240
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.9 to 1.33.10 by @dependabot[bot] in #1244
- build(deps): bump postcss-selector-parser from 6.1.4 to 6.1.5 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1254
- build(deps): bump github.com/pkg/sftp from 1.13.11 to 1.13.12 by @dependabot[bot] in #1264
- build(deps): bump google.golang.org/api from 0.305.0 to 0.308.0 by @dependabot[bot] in #1266
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.52.0 to 2.53.0...
v0.1.35
What's Changed
Changes
- fix(ui): force terminal restore if spinner cleanup times out by @cdalar in #1086
- fc: give every microVM its own guest hostname by @cdalar in #1074
- Add automated nightly build (rolling GitHub prerelease) by @cdalar in #1087
- Rename nightly build to edge, harden tag exclusion by @cdalar in #1088
- Add Cloud Hypervisor (ch) provider for local microVMs by @cdalar in #1090
- docs: add edge build install script by @cdalar in #1089
- Fix stale /etc/hosts breaking VNC on desktop-image VMs by @cdalar in #1091
- Swap dead Go Report Card badge for a Lint one by @cdalar in #1092
- Move the OSS project's site from docs.onctl.io to onctl.sh by @cdalar in #1093
- fix(edge): resolve OOM on onctl-4 runner, drop unused Windows target by @cdalar in #1094
- Build a real onctl.sh landing page by @cdalar in #1096
- Add Windows guest support to the ch (Cloud Hypervisor) provider by @cdalar in #1103
- Add landing page design + tech-stack research notes by @cdalar in #1095
- Fix: clean up dnsmasq DHCP leases when destroying a ch VM by @cdalar in #1104
- Add a real SSH-reachability signal to fc/ch's List() by @cdalar in #1105
- Fix edge release getting stuck as an untagged draft by @cdalar in #1106
- Skip the SSHReady TCP probe for fc (Firecracker boots too fast to need it) by @cdalar in #1108
- docs: add unlinked sovereign-cloud notes page at onctl.sh/notes by @cdalar in #1111
- docs: list-style index for onctl.sh/notes by @cdalar in #1112
- feat: add OVH as a cloud provider by @cdalar in #1113
- fix: prefer IPv4 over IPv6 for OVH instance public IP by @cdalar in #1114
- fix: replace bubbletea-based spinner with a plain ANSI spinner by @cdalar in #1116
- build: add macOS (darwin) builds to edge release by @cdalar in #1117
- docs: update get and get-edge scripts to support macOS by @cdalar in #1118
- docs: rename get_edge.sh to get-edge.sh and update references by @cdalar in #1119
- docs: surface edge build install and fix stale macOS claims by @cdalar in #1120
- Record each VM's base-image identity for diff-based export by @cdalar in #1121
- Add onctl restart: cold-boot a Firecracker VM from its disk, optionally on a new kernel by @cdalar in #1140
- Report each fc/ch VM's base image as Vm.BaseImage by @cdalar in #1141
- Suggest sudo when a non-root onctl can't pause/stop a root-owned fc VM by @cdalar in #1142
- Add tests for providerch config, AWS instance mapping, and cmd provider init by @cdalar in #1143
- fc: add --rootfs-size to grow a microVM's rootfs at create time by @cdalar in #1150
- Stream apply file output, and keep the script alive if the session drops by @cdalar in #1151
- ci: run build and lint on docs-only changes; fix the order-dependent flags test by @cdalar in #1158
- Harden workflows for OpenSSF Scorecard by @cdalar in #1159
- test: stop withViper pinning keys for later tests by @cdalar in #1164
- Plan: hosted boxes (boxctl.io) as an onctl provider by @cdalar in #1157
- Add contributing guide and proposed OpenSSF Best Practices answers by @cdalar in #1165
- ci: run on onctl-2 runners instead of onctl-4 by @cdalar in #1166
- Fix docs npm alerts and group release notes by @cdalar in #1167
- Add the boxes provider: hosted microVMs, onctl login, ssh through the provider by @cdalar in #1168
- Add onctl port-forward (pf), for every provider by @cdalar in #1169
- Add onctl sizes: the VM sizes --type takes, per provider by @cdalar in #1170
- sizes: say where to find sizes for providers it can't list by @cdalar in #1171
- Remove the onctl vm command group by @cdalar in #1172
- Add onctl claude: Claude Code on a box, ported from boxctl by @cdalar in #1173
- test: keep the real ~/.onctl out of the ReadConfig tests by @cdalar in #1174
- Move the Claude Code plugin here: /onctl:on routes Bash to a box by @cdalar in #1175
- Plugin: version by commit, and suggest it from onctl by @cdalar in #1176
- Version the Claude Code plugin with onctl releases by @cdalar in #1177
- test: improve coverage for templates, azure id resolution and apply dirs by @cdalar in #1178
- boxes: list boxes oldest first, with their IP as private by @cdalar in #1179
- build(deps): bump golang.org/x/net from 0.59.0 to 0.60.0 by @cdalar in #1188
- Remove the Claude Code plugin by @cdalar in #1187
- Install shell completion from get.sh and get-edge.sh by @cdalar in #1189
- fc/ch: drop the stale neighbour entry for a reused guest IP by @cdalar in #1190
- apply: stop holding the session a second after the apply file exits by @cdalar in #1191
- fc: give every microVM a virtio-vsock device by @cdalar in #1202
- feat: add ac provider for local sandboxes on macOS (Apple container) by @cdalar in #1204
- ac: make apply scripts work and keep the bootstrap's output on failure by @cdalar in #1205
- release: drop Homebrew tap and Apple signing, install via curl only by @cdalar in #1206
Dependency updates
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.1 to 1.33.2 by @dependabot[bot] in #1083
- build(deps): bump google.golang.org/api from 0.295.0 to 0.296.0 by @dependabot[bot] in #1084
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.325.1 to 1.326.0 by @dependabot[bot] in #1085
- build(deps): bump github/codeql-action from 4.37.8 to 4.37.9 by @dependabot[bot] in #1067
- build(deps): bump github.com/cloudflare/cloudflare-go from 0.117.0 to 0.118.0 by @dependabot[bot] in #1097
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.326.0 to 1.328.0 by @dependabot[bot] in #1099
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.2 to 1.33.3 by @dependabot[bot] in #1100
- build(deps): bump joi from 17.13.3 to 17.13.7 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1107
- build(deps): bump google.golang.org/api from 0.296.0 to 0.297.0 by @dependabot[bot] in #1098
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.328.0 to 1.329.0 by @dependabot[bot] in #1101
- build(deps): bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #1110
- build(deps): bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #1109
- build(deps): bump github/codeql-action from 4.37.9 to 4.38.0 by @dependabot[bot] in #1122
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.46.0 to 1.47.0 by @dependabot[bot] in #1124
- build(deps): bump golang.org/x/term from 0.45.0 to 0.46.0 by @dependabot[bot] in #1127
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.329.0 to 1.332.0 by @dependabot[bot] in #1123
- build(deps): bump cloud.google.com/go/compute from 1.67.0 to 1.68.0 by @dependabot[bot] in #1126
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.3 to 1.33.4 by @dependabot[bot] in #1128
- build(deps): bump golang.org/x/crypto from 0.56.0 to 0.57.0 by @dependabot[bot] in #1125
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.47.0 to 2.48.0 by @dependabot[bot] in #1129
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.33.4 to 1.33.5 by @dependabot[bot] in #1130
- build(deps):...
v0.1.33
What's Changed
Changes
- ci: switch GitHub-hosted workflows to onctl-4 self-hosted runners by @cdalar in #959
- fix(ssh): retry WaitForSSH every 500ms instead of 3s by @cdalar in #965
- Add release script to bump patch tag and trigger goreleaser pipeline by @cdalar in #968
- chore: remove @claude mention-triggered workflow by @cdalar in #969
- Refs/heads/benchmark/onctl vs GitHub runners by @cdalar in #964
- fix(fmt): gofmt cmd/create.go and pkg/cloud/fc.go by @cdalar in #977
- fix(fc): make pause/resume real disk snapshots, not just a vCPU freeze by @cdalar in #981
- fix(ssh): run trailing -- command even when -u/-d/-a flags are set by @cdalar in #1037
- fix: default fc.stateDir to /opt/fc instead of $HOME by @cdalar in #1044
- fix: fall back to another common SSH key type when the configured default is missing by @cdalar in #1043
- docs: update branches report by @cdalar in #1045
- fix: skip spinner in non-interactive terminals by @cdalar in #1059
- fix: address PR #1059 review feedback on spinner by @cdalar in #1060
- feat(fc): support bridge/cidr format in fc.network.bridge by @cdalar in #1062
- build(deps): bump golang.org/x/crypto to v0.56.0 by @cdalar in #1080
- fix(fc): reflink-copy base rootfs image instead of full byte copy by @cdalar in #1076
- ci: remove Claude Code Review workflow by @cdalar in #1079
- Add -c/--config flag; move imported hosts to ~/.ssh/onctl_config by @cdalar in #1081
- fix(fc): don't treat EPERM as process-dead in IsRunning by @cdalar in #1082
Dependency updates
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.28 to 1.32.29 by @dependabot[bot] in #960
- build(deps): bump golang.org/x/crypto from 0.53.0 to 0.54.0 by @dependabot[bot] in #962
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.313.0 to 1.314.0 by @dependabot[bot] in #961
- build(deps): bump google.golang.org/api from 0.287.1 to 0.288.0 by @dependabot[bot] in #966
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.314.0 to 1.315.0 by @dependabot[bot] in #967
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.315.0 to 1.316.0 by @dependabot[bot] in #970
- build(deps): bump github.com/pkg/sftp from 1.13.10 to 1.13.11 by @dependabot[bot] in #971
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.29 to 1.32.30 by @dependabot[bot] in #973
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.316.0 to 1.316.1 by @dependabot[bot] in #974
- build(deps): bump actions/setup-node from 6 to 7 by @dependabot[bot] in #972
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #975
- build(deps): bump actions/setup-go from 6 to 7 by @dependabot[bot] in #976
- build(deps): bump google.golang.org/api from 0.288.0 to 0.289.0 by @dependabot[bot] in #978
- build(deps): bump github.com/aws/smithy-go from 1.27.3 to 1.27.4 by @dependabot[bot] in #979
- build(deps): bump cloud.google.com/go/compute from 1.64.0 to 1.65.0 by @dependabot[bot] in #982
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.44.0 to 2.45.0 by @dependabot[bot] in #983
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #984
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.30 to 1.32.31 by @dependabot[bot] in #985
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.316.1 to 1.317.0 by @dependabot[bot] in #987
- build(deps): bump google.golang.org/api from 0.289.0 to 0.290.0 by @dependabot[bot] in #988
- build(deps): bump k8s.io/apimachinery from 0.36.2 to 0.36.3 by @dependabot[bot] in #989
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #990
- build(deps): bump ossf/scorecard-action from 2.4.3 to 2.4.4 by @dependabot[bot] in #991
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.45.0 to 2.46.0 by @dependabot[bot] in #992
- build(deps): bump github.com/aws/smithy-go from 1.27.4 to 1.27.5 by @dependabot[bot] in #993
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.46.0 to 2.47.0 by @dependabot[bot] in #994
- build(deps): bump postcss from 8.5.15 to 8.5.23 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #995
- build(deps): bump google.golang.org/api from 0.290.0 to 0.291.0 by @dependabot[bot] in #996
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.43.0 to 1.43.1 by @dependabot[bot] in #997
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.317.0 to 1.317.1 by @dependabot[bot] in #998
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.31 to 1.32.32 by @dependabot[bot] in #999
- build(deps): bump github.com/gofrs/uuid/v5 from 5.4.0 to 5.5.0 by @dependabot[bot] in #1002
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.43.1 to 1.43.2 by @dependabot[bot] in #1003
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.317.1 to 1.318.0 by @dependabot[bot] in #1000
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.32 to 1.32.33 by @dependabot[bot] in #1001
- build(deps): bump github/codeql-action from 4 to 4.37.3 by @dependabot[bot] in #1004
- build(deps): bump github/codeql-action from 4.37.3 to 4.37.4 by @dependabot[bot] in #1005
- build(deps): bump github.com/aws/smithy-go from 1.27.5 to 1.27.6 by @dependabot[bot] in #1006
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.43.2 to 1.43.3 by @dependabot[bot] in #1007
- build(deps): bump anthropics/claude-code-action from 1 to 1.0.183 by @dependabot[bot] in #1008
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.33 to 1.32.34 by @dependabot[bot] in #1009
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #1012
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.318.0 to 1.318.1 by @dependabot[bot] in #1010
- build(deps): bump github/codeql-action from 4.37.4 to 4.37.5 by @dependabot[bot] in #1013
- build(deps): bump github.com/gofrs/uuid/v5 from 5.5.0 to 5.5.1 by @dependabot[bot] in #1015
- build(deps): bump github/codeql-action from 4.37.5 to 4.37.6 by @dependabot[bot] in #1016
- build(deps): bump js-yaml from 3.15.0 to 3.15.1 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1017
- build(deps): bump google.golang.org/api from 0.291.0 to 0.292.0 by @dependabot[bot] in #1022
- build(deps): bump github.com/aws/smithy-go from 1.27.6 to 1.27.7 by @dependabot[bot] in #1023
- build(deps): bump anthropics/claude-code-action from 1.0.183 to 1.0.189 by @dependabot[bot] in #1024
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.318.1 to 1.321.0 by @dependabot[bot] in #1025
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.43.3 to 1.43.4 by @dependabot[bot] in #1020
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.34 to 1.32.35 by @dependabot[bot] in #1019
- build(deps): bump cloud.google.com/go/compute from 1.65.0 to 1.66.0 by @dependabot[bot] in #1026
- build(deps): bump anthropics/claude-code-action from 1.0.189 to 1.0.190 by @dependabot[bot] in #1027
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.35 to 1.32.36 by @dependabot[bot] in #1030
- build(deps): bump anthropics/claude-code-action ...
v0.1.31
What's Changed
Changes
- fix(fc): reconcile stale running/paused status against actual process liveness by @cdalar in #954
- fix(fc): use "dead" status, not "stopped", for a reboot-killed microVM by @cdalar in #955
- fix(release): sign checksums with explicit GPG key in isolated keyring by @cdalar in #958
Dependency updates
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.27 to 1.32.28 by @dependabot[bot] in #952
- build(deps): bump google.golang.org/api from 0.287.0 to 0.287.1 by @dependabot[bot] in #956
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.311.0 to 1.313.0 by @dependabot[bot] in #957
Full Changelog: v0.1.29...v0.1.31
v0.1.29
Changelog
- 863591f Merge branch 'main' of https://github.com/cdalar/onctl
- dd2fb89 Merge pull request #937 from cdalar/fix/static-ssh-apply-credentials
- ac64fb6 Merge pull request #938 from cdalar/worktree-fix-fc-defaults
- 2454431 Merge pull request #951 from cdalar/fix/hetzner-list-nil-panic
- f97c2d1 Update lint.yml
- 98e2fed build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.42.0 to 1.42.1 (#949)
- aa3a82a build(deps): bump github.com/aws/aws-sdk-go-v2/config (#943)
- cc7aec1 build(deps): bump github.com/aws/aws-sdk-go-v2/config (#950)
- da876d9 build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 (#946)
- 4fb18eb build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 (#948)
- 56370c7 build(deps): bump github.com/aws/smithy-go from 1.27.2 to 1.27.3 (#939)
- 89ad2c3 build(deps): bump golangci/golangci-lint-action from 9.2.1 to 9.3.0 (#941)
- bcabf0e build(deps): bump google.golang.org/api from 0.286.0 to 0.287.0 (#947)
- 4dda847 build(deps): bump goreleaser/goreleaser-action from 7.2.2 to 7.2.3 (#942)
- f53afa8 chore: add script to build and deploy onctl to controller VM
- 142420e feat: set firecracker default memory to 4 GB (was 512 MiB)
- f8ff22d fix(hetzner): stop using deprecated Server.Datacenter to avoid nil panic
- 590504d fix(scripts): build host onctl binary before using it in deploy-controller.sh
- 916baf0 fix: expand ~ in imported host private key path before reading
- 6d0b46d fix: lower Firecracker default memory to 2 GB to fit documented fc-host
- 90cabbc fix: reduce SSH dial timeout for faster Firecracker polling (#940)
- 16405d7 fix: use imported host credentials for ssh -a/-u/-d on static provider
v0.1.28
Changelog
- 34e46d0 Add scripts/install-dev.sh to install/update onctl-dev from main
- bf329bc Merge azure CLI flags integration
- 768e8cb Merge branch 'main' of https://github.com/cdalar/onctl
- 492eeb7 Merge gcp CLI flags integration (finish single onctl.yaml support for gcp)
- 4fb4a31 Merge pull request #926 from cdalar/feat/aws-zero-yaml-flags
- 30f3333 Merge pull request #930 from cdalar/feat/single-onctl-yaml-config
- 7cca2a7 Merge pull request #931 from cdalar/worktree-install-dev-script
- bd826c4 Merge pull request #932 from cdalar/readme-onctl-dev
- 457c0e4 Merge pull request #935 from cdalar/feat/complete-single-onctl-yaml-azure-gcp
- 57a69e3 Merge pull request #936 from cdalar/feat/import-static-hosts
- 62eaa45 build(deps): bump actions/checkout from 6 to 7 (#915)
- c54f4cb build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 (#934)
- d1cc104 build(deps): bump google.golang.org/api from 0.285.0 to 0.286.0 (#933)
- f076eda docs(readme): mention onctl-dev for installing the latest main build
- 0f95338 feat(azure): wire --type/--location/--username and --subscription-id/--resource-group for azure
- 0519ac8 feat(azure): wire --type/--location/--username and --subscription-id/--resource-group for azure
- d5dd9b8 feat(config): merge per-provider YAML into a single onctl.yaml
- 3daff62 feat(create): expose AWS config as CLI flags; drop required aws.yaml
- ba9e5d0 feat(gcp): wire --type/--location/--username/--project for gcp using single onctl.yaml
- 804331d feat(gcp): wire --type/--location/--username/--project for gcp using single onctl.yaml
- deac239 feat: add
onctl importand a static provider for unmanaged hosts - d5204e7 fix(config): repair missing onctl.yaml and warn about legacy provider files
- 9fc29f0 fix(test): isolate HOME in TestInitializeOnctlEnv_NewDirectory
- 90c2de9 fix: address Codex review comments on PR #935
- b0ff236 fix: gofmt spacing in azure resolve comment
- 72193d1 fix: load shared onctl.yaml before provider check; propagate config-file image for AWS
- 932db5c fix: respect imported host's key/port and serialize static destroys
- 847fa65 fix: update TestGenericCreateFlagsExist for flags moved to root persistent
v0.1.27
Changelog
- a4b6ce1 Merge pull request #922 from cdalar/ci/self-hosted-benchmark
- fa46035 ci: add manual self-hosted goreleaser benchmark workflow
- 0483123 ci: make quill install runner-agnostic, verify it's on PATH (#924)
- 6b46974 ci: replace dead gon notarization with quill (#923)
- 0a15f82 ci: run release workflow on self-hosted runner (#925)
- 4be8ca3 feat(cli): add -p short flag for --provider (#921)
v0.1.26
Changelog
- 8af78e3 Merge pull request #913 from cdalar/fix/ci-warnings
- c1124b2 Merge pull request #920 from cdalar/feat/provider-short-flag-p
- 66b71c9 build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 (#917)
- 5cca2a0 build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#916)
- 59c73db build(deps): bump google.golang.org/api from 0.284.0 to 0.285.0 (#914)
- abc56ad ci: add weekly Go cross-compile cache warm-up workflow
- 2115931 docs(fc): add local testing guide for the fc provider rename
- 8aaae41 feat(cli): add -p short flag for --provider
- 77247d2 feat(create): expose Firecracker config as CLI flags; drop firecracker.yaml
- f665f23 feat(create): expose Hetzner config as CLI flags; drop required .onctl YAML (#918)
- 7c94b0e feat(fc): Firecracker zero-YAML CLI flags, then rename provider firecracker → fc (#919)
- 0c95d4d refactor: rename the firecracker provider to fc
v0.1.25
What's Changed
Changes
- feat: split onctl ls into RUNNING/PAUSED tables for all providers by @cdalar in #873
- refactor(hetzner): decouple provider from viper global config by @cdalar in #879
- refactor: move internal/cloud to pkg/cloud by @cdalar in #880
- feat(hetzner): add --image flag for OS image selection by @cdalar in #894
- feat(hetzner): add onctl images command to list available OS images by @cdalar in #895
- chore: remove gstack requirement and enforcement hook by @cdalar in #899
- Claude/micro vm support zu0h52 by @cdalar in #902
- fix(ui): stop spinner from showing previous phase's text by @cdalar in #903
- feat: add recursive directory upload support via SFTP by @cdalar in #904
- fix(hetzner): support snapshot IDs in --image flag by @cdalar in #909
- fix(ci): resolve three recurring workflow warnings by @cdalar in #910
- fix(firecracker): guard Setsid behind !windows build tag by @cdalar in #911
- fix(goreleaser): merge build blocks and increase timeout to 120m by @cdalar in #912
Dependency updates
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.304.2 to 1.305.1 by @dependabot[bot] in #874
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.41.2 to 2.42.0 by @dependabot[bot] in #877
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.20 to 1.32.22 by @dependabot[bot] in #876
- build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azcore from 1.21.1 to 1.22.0 by @dependabot[bot] in #882
- build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.41.11 to 1.41.12 by @dependabot[bot] in #883
- build(deps): bump github.com/aws/smithy-go from 1.27.0 to 1.27.1 by @dependabot[bot] in #886
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.305.1 to 1.305.2 by @dependabot[bot] in #885
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.22 to 1.32.23 by @dependabot[bot] in #884
- build(deps): bump github.com/aws/smithy-go from 1.27.1 to 1.27.2 by @dependabot[bot] in #888
- build(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 by @dependabot[bot] in #889
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.23 to 1.32.24 by @dependabot[bot] in #890
- build(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 by @dependabot[bot] in #891
- build(deps): bump codecov/codecov-action from 6 to 7 by @dependabot[bot] in #887
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.305.2 to 1.305.3 by @dependabot[bot] in #893
- build(deps): bump google.golang.org/api from 0.283.0 to 0.284.0 by @dependabot[bot] in #896
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.305.3 to 1.306.0 by @dependabot[bot] in #897
- build(deps): bump shell-quote from 1.8.2 to 1.8.4 in /docs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #898
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.306.0 to 1.307.0 by @dependabot[bot] in #900
- build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.24 to 1.32.25 by @dependabot[bot] in #901
- build(deps): bump k8s.io/apimachinery from 0.36.1 to 0.36.2 by @dependabot[bot] in #905
- build(deps): bump github.com/hetznercloud/hcloud-go/v2 from 2.42.0 to 2.43.0 by @dependabot[bot] in #906
- build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity from 1.13.1 to 1.14.0 by @dependabot[bot] in #907
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #908
Full Changelog: v0.1.23...v0.1.25
v0.1.23
Changelog
- 6df74cf Merge branch 'main' of github.com:cdalar/onctl
- e8d0f40 Merge branch 'main' of https://github.com/cdalar/onctl
- 3e24db9 Migrate AWS provider from aws-sdk-go v1 to aws-sdk-go-v2 (#861)
- 9e79631 Update Go version setup in goreleaser.yml
- 96dd894 build(deps): bump actions/deploy-pages from 4 to 5 (#818)
- 1d5c73c build(deps): bump actions/upload-pages-artifact from 4 to 5 (#830)
- 3e7e4af build(deps): bump apple-actions/import-codesign-certs from 6 to 7 (#836)
- def9df0 build(deps): bump cloud.google.com/go/compute from 1.54.0 to 1.55.0 (#803)
- 5125cba build(deps): bump cloud.google.com/go/compute from 1.55.0 to 1.56.0 (#806)
- a4e3075 build(deps): bump cloud.google.com/go/compute from 1.56.0 to 1.57.0 (#813)
- 41325c5 build(deps): bump cloud.google.com/go/compute from 1.57.0 to 1.58.0 (#824)
- deac654 build(deps): bump cloud.google.com/go/compute from 1.58.0 to 1.59.0 (#827)
- 989f715 build(deps): bump cloud.google.com/go/compute from 1.59.0 to 1.60.0 (#831)
- 19cf3da build(deps): bump cloud.google.com/go/compute from 1.60.0 to 1.61.0 (#841)
- 604cd87 build(deps): bump cloud.google.com/go/compute from 1.61.0 to 1.62.0 (#844)
- 7b36e8f build(deps): bump cloud.google.com/go/compute from 1.62.0 to 1.63.0 (#850)
- 172f588 build(deps): bump cloud.google.com/go/compute from 1.63.0 to 1.64.0 (#856)
- 4e0dc09 build(deps): bump codecov/codecov-action from 4 to 6 (#820)
- 762c57a build(deps): bump dependabot/fetch-metadata from 2 to 3 (#826)
- 938c171 build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azcore (#834)
- 11a1402 build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph (#858)
- 45df97c build(deps): bump github.com/cloudflare/cloudflare-go (#854)
- d4c5348 build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#821)
- 3a09439 build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#838)
- a187a84 build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#839)
- e188dba build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#843)
- 48887ff build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#852)
- 8d65eb3 build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#853)
- 935147e build(deps): bump github.com/hetznercloud/hcloud-go/v2 (#857)
- 7f9a480 build(deps): bump golang.org/x/crypto from 0.48.0 to 0.49.0 (#811)
- b13d539 build(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 (#828)
- 869f323 build(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 (#845)
- 7ed7dc2 build(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (#855)
- 536dc4b build(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 (#867)
- 63180a0 build(deps): bump google.golang.org/api from 0.267.0 to 0.268.0 (#801)
- e337bf9 build(deps): bump google.golang.org/api from 0.268.0 to 0.269.0 (#802)
- 37710b9 build(deps): bump google.golang.org/api from 0.269.0 to 0.270.0 (#808)
- b963853 build(deps): bump google.golang.org/api from 0.270.0 to 0.271.0 (#810)
- 2f7e028 build(deps): bump google.golang.org/api from 0.271.0 to 0.272.0 (#814)
- abac9c1 build(deps): bump google.golang.org/api from 0.272.0 to 0.273.0 (#819)
- 610cba1 build(deps): bump google.golang.org/api from 0.273.0 to 0.273.1 (#822)
- a0e3f5c build(deps): bump google.golang.org/api from 0.273.1 to 0.274.0 (#823)
- 5069b9c build(deps): bump google.golang.org/api from 0.274.0 to 0.275.0 (#825)
- f3850af build(deps): bump google.golang.org/api from 0.275.0 to 0.276.0 (#832)
- ac3539d build(deps): bump google.golang.org/api from 0.276.0 to 0.277.0 (#840)
- 1e8cadb build(deps): bump google.golang.org/api from 0.277.0 to 0.278.0 (#842)
- 69db11a build(deps): bump google.golang.org/api from 0.278.0 to 0.279.0 (#848)
- 9c0a765 build(deps): bump google.golang.org/api from 0.279.0 to 0.280.0 (#851)
- 60218bd build(deps): bump google.golang.org/api from 0.280.0 to 0.281.0 (#859)
- 7eab940 build(deps): bump google.golang.org/api from 0.281.0 to 0.282.0 (#860)
- 5b55efe build(deps): bump google.golang.org/api from 0.282.0 to 0.283.0 (#869)
- db29ffa build(deps): bump goreleaser/goreleaser-action from 7.0.0 to 7.1.0 (#835)
- 64560b7 build(deps): bump goreleaser/goreleaser-action from 7.1.0 to 7.2.2 (#868)
- 9d6d623 build(deps): bump k8s.io/apimachinery from 0.35.1 to 0.35.2 (#804)
- 02862cb build(deps): bump k8s.io/apimachinery from 0.35.2 to 0.35.3 (#816)
- f1a83be build(deps): bump k8s.io/apimachinery from 0.35.3 to 0.35.4 (#833)
- 9f624e1 build(deps): bump k8s.io/apimachinery from 0.35.4 to 0.36.0 (#837)
- 25e6800 build(deps): bump k8s.io/apimachinery from 0.36.0 to 0.36.1 (#849)
- a6916dc build(deps): bump svgo (#809)
- b073d71 build(deps): bump the npm_and_yarn group across 1 directory with 10 updates (#862)
- e9af821 build(deps): bump the npm_and_yarn group across 1 directory with 2 updates (#817)
- 3d409d2 chore(ci): make Codecov coverage status checks informational only (#870)
- 5c45bb3 chore: add gstack skill routing rules to CLAUDE.md
- 6f5d93f docs(agents): require conversation resolution + post-merge worktree/branch cleanup (#871)
- 869ade0 feat(ssh): support -- to pass commands to remote host (#800)
- 4294b36 feat: add confirmation prompt for destroy/delete command (consistent with pause) (#865)
- 2036b61 feat: pause/resume across all cloud providers + AWS Elastic IP (#864)
- ed05946 feat: pause/resume for Hetzner only (stubs for other providers) (#866)
- bef41e6 fix(ci): read Go version from go.mod in goreleaser workflow
- 2a82a94 fix(ci): update Go version to 1.26 in goreleaser workflow
- c9a538d fix: restore terminal state after spinner exits or on Ctrl+C
- 022ba77 require gstack for AI-assisted work