Skip to content

feat: complete cli#1

Merged
juancadev-io merged 108 commits intomainfrom
feat/complete-cli
Mar 5, 2026
Merged

feat: complete cli#1
juancadev-io merged 108 commits intomainfrom
feat/complete-cli

Conversation

@juancadev-io
Copy link
Contributor

This pull request introduces the initial setup for the Keel CLI repository, including project documentation, licensing, contribution guidelines, CI/CD workflows, and a new shell completion feature for the CLI. The most significant changes are grouped below.

Project Initialization and Documentation

  • Added comprehensive README.md describing Keel CLI features, installation, usage, commands, project structure, and community links.
  • Added LICENSE file with the MIT license for open source usage.
  • Added CONTRIBUTING.md with repository-specific contribution instructions and development workflow.

Build and Release Automation

  • Added .github/workflows/ci.yml for CI pipeline, validating PRs and running Go-based checks using reusable workflows.
  • Added .github/workflows/release.yml for automated releases, including version tagging and GoReleaser integration.
  • Added .goreleaser.yml for building, archiving, checksumming, and publishing Homebrew tap for Keel CLI.
  • Added .release-please-manifest.json to manage release versions.

Shell Completion Feature

  • Implemented shell completion commands in cmd/completion/command.go, supporting Bash, Zsh, Fish, and PowerShell, plus automated installation.
  • Added shell detection and configuration logic in cmd/completion/shell.go, with interactive selection for multiple shells/config files.
  • Added installation logic for completion scripts, updating shell config files idempotently in cmd/completion/install.go.
  • Provided unit tests for shell completion commands, installation, and shell detection/configuration in cmd/completion/command_test.go, cmd/completion/install_test.go, and cmd/completion/shell_test.go. [1] [2] [3]

… CLI

- Rename module from s-keel-cli to keel
- Add charmbracelet libraries for interactive prompts:
  * huh for forms and CLI interactions
  * bubbles, bubbletea for TUI components
  * lipgloss for terminal styling
  * Updated all transitive dependencies
- Update all imports from github.com/slice-soft/ss-keel-cli to github.com/slice-soft/keel
- Update build-time ldflags documentation in root.go
- Replace optional <name> argument instead of required
- Import charmbracelet/huh for interactive forms
- Add --yes flag to skip all interactive prompts
- Add --with-tests flag to generate test skeleton files
- Add improved validation and user-friendly messages
- Support interactive prompts for generation options
@juancadev-io juancadev-io merged commit 3cdcc07 into main Mar 5, 2026
2 checks passed
@github-actions github-actions bot mentioned this pull request Mar 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant