Commit graph

6 commits

Author SHA1 Message Date
Ruslan Semagin
73f27803d4
refactor(cli): migrate to Cobra-based command structure (#429)
* refactor(cli): migrate to Cobra-based command structure

Refactor CLI to use Cobra instead of manual os.Args parsing.

- Introduce root command and structured subcommands under cmd/picoclaw/internal
- Convert agent, auth, cron, gateway, migrate, onboard, skills, status and version to Cobra commands
- Replace manual flag parsing with Cobra flags
- Remove direct os.Args usage from command handlers
- Keep existing command behavior and output semantics

This change focuses on CLI structure and maintainability.
No business logic changes intended.

* chore(cli): remove version2 alias and make cobra a direct dependency

* test(cli): add basic command tests

- Add tests for CLI command tree and flag parsing
- Align LDFLAGS injection path for version info
- Remove unused manual help function

* test: migrate command tests to testify assertions

Replace standard library testing error checks (t.Error*, t.Fatalf)
with assert/require from stretchr/testify across all cobra command tests
for improved readability and consistency.

* fix(cli): make linter happy

* test: avoid duplication in windows config path test

* test: simplify allowed command checks using slices.Contains

* fix(skills): register subcommands during command construction

- Move subcommand registration out of PersistentPreRunE
- Ensure `picoclaw skills <subcommand>` resolves correctly
- Minor install command and test cleanups

* refactor(cli): address review feedback and improve command clarity

* fix(authLogoutCmd): rm os.Exit
2026-02-25 18:47:45 +11:00
Boris Bliznioukov
2d876eaa98
feat(goreleaser): enhance build flags with versioning and commit info
Signed-off-by: Boris Bliznioukov <blib@mail.com>
2026-02-17 15:00:06 +01:00
Boris Bliznioukov
2d758d714f
feat(goreleaser): add 'stdjson' tag to picoclaw build configuration
Signed-off-by: Boris Bliznioukov <blib@mail.com>
2026-02-17 14:55:37 +01:00
Guoguo
a5503aea36
build: temporary disable UPX compression (#257)
Signed-off-by: Guoguo <i@qwq.trade>
2026-02-16 11:29:04 +08:00
Guoguo
0d18210803
ci: use goreleaser to release docker and binary (#180)
Signed-off-by: Guoguo <i@qwq.trade>
2026-02-16 10:35:31 +08:00
Meng Zhuo
9a3f3611c3 ci: init goreleaser 2026-02-15 09:54:32 +08:00