Ideads and suggestions for new features:
Features
--dry-run flag.
Print what --install, --uninstall, --install-all, and --uninstall-all would do. Show which packs, which directories, which registry entries would be affected without touching the filesystem. Especially valuable before running --uninstall-all against a production server.
- Backup and rollback of the world registry.
Before any mutating operation, snapshot world_behavior_packs.json / world_resource_packs.json (and optionally the pack directories) to a .bedrock_helper_backup/ folder, with a --rollback command that restores the last snapshot. Right now a bad --uninstall-all has no undo.
- Structured output (
--format=json).
--list-addons, --find-addons, and --resolve-pack currently only print human-readable text/tables. A --json flag would make the tool pipeline-friendly for scripts and other tools, without touching the default output.
- Multi-world support.
The tool always targets the server's active world. Adding a way to list all worlds under worlds/ and target a specific non-active one by name would help server admins who keep multiple worlds around.
Project structure / tooling
- Automate GitHub Release publishing on tag push.
Create a dedicated release workflow (triggered on v* tags) that builds all platforms binaries and publishes a Release with the binaries attached.
- Linting and coverage in CI.
Implement support for golangci-lint (or go vet/staticcheck). Implement code coverage reporting and create a badge for code coverage.
- Publish the library as a standalone, documented Go package.
The minecraftbedrock library is already decoupled from the CLI. The module path now matches the GitHub repo, so it is now go install and go get compatible. Formalizing that with package-level doc comments and example_test.go files would make the library usable by other Go projects wanting to script BDS management, not just via the CLI.
Ideads and suggestions for new features:
Features
--dry-runflag.Print what
--install,--uninstall,--install-all, and--uninstall-allwould do. Show which packs, which directories, which registry entries would be affected without touching the filesystem. Especially valuable before running--uninstall-allagainst a production server.Before any mutating operation, snapshot
world_behavior_packs.json/world_resource_packs.json(and optionally the pack directories) to a.bedrock_helper_backup/folder, with a--rollbackcommand that restores the last snapshot. Right now a bad--uninstall-allhas no undo.--format=json).--list-addons,--find-addons, and--resolve-packcurrently only print human-readable text/tables. A--jsonflag would make the tool pipeline-friendly for scripts and other tools, without touching the default output.The tool always targets the server's active world. Adding a way to list all worlds under
worlds/and target a specific non-active one by name would help server admins who keep multiple worlds around.Project structure / tooling
Create a dedicated release workflow (triggered on
v*tags) that builds all platforms binaries and publishes a Release with the binaries attached.Implement support for
golangci-lint(orgo vet/staticcheck). Implement code coverage reporting and create a badge for code coverage.The
minecraftbedrocklibrary is already decoupled from the CLI. The module path now matches the GitHub repo, so it is nowgo installandgo getcompatible. Formalizing that with package-level doc comments andexample_test.gofiles would make the library usable by other Go projects wanting to script BDS management, not just via the CLI.