Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,32 +8,32 @@ A collection of CLI tools I've written for myself that have been useful. Yes, th

| Tool | Description | Language | Version | Released |
|------|-------------|----------|---------|----------|
| [`asm`](asm/README.md) | AWS Secrets Manager CLI.<br>Get, create, update, delete, and search secrets.<br>Supports key/value pairs, files, TLS certs, and binary data. | Python | v1.0.0 | 2026-02-18 |
| [`asm`](asm/README.md) | AWS Secrets Manager CLI (get, create, update, delete, search secrets).<br>Supports key/value pairs, files, TLS certs, and binary data. | Python | v1.0.0 | 2026-02-18 |
| [`aws-secret-replication-check`](aws-secret-replication-check/README.md) | Check Secrets Manager replication status.<br>Lists all secrets in a region with their cross-region replication state. | Python | v1.0.0 | 2026-02-18 |
| [`brew-python`](brew-python/) | Manage Homebrew Python symlinks.<br>Lists available versions, shows current status, switches between installed versions. | Bash | v1.0.0 | 2026-02-18 |
| [`ec2-search`](ec2-search/) | Audit EC2 instances across AWS accounts.<br>Displays Profile, Instance ID, Type, AZ, State, and tags.<br>Supports multiple AWS profiles and custom tag filtering. | Python | v1.0.0 | 2026-02-18 |
| [`ec2-state`](ec2-state/README.md) | View and manage EC2 instance state.<br>Stop, start, or terminate instances by ID.<br>Auto-discovers region across all AWS regions. | Python | v1.0.0 | 2026-02-18 |
| [`ec2-search`](ec2-search/) | Search and display EC2 instances across regions and profiles.<br>Displays Profile, Instance ID, Type, AZ, State, and tags.<br>Supports multiple AWS profiles and custom tag filtering. | Python | v1.0.0 | 2026-02-18 |
| [`ec2-state`](ec2-state/README.md) | Manage EC2 instance state (get status, stop, start, terminate).<br>Auto-discovers region across all AWS regions. | Python | v1.0.0 | 2026-02-18 |
| [`fcd`](fcd/) | Fuzzy directory finder (interactive cd).<br>Searches directories by name with interactive selection.<br>Configurable exclusions, depth control, and k8s context switching. | Bash | v1.0.0 | 2026-02-18 |
| [`gh-cleanup-runners`](gh-cleanup-runners/) | Clean up GitHub Actions self-hosted runners.<br>Identifies and removes offline runners at org or repo level. | Bash | v1.0.0 | 2026-02-18 |
| [`gh-runner-audit`](gh-runner-audit/README.md) | Audit GitHub Actions runner usage across an org.<br>Lists repos with workflow status, runner groups, and runner counts. | Python | v1.0.0 | 2026-02-18 |
| [`gh-search`](gh-search/) | Search GitHub for code and repositories.<br>Displays matching repos with option to clone and open in VS Code. | Python | v1.0.0 | 2026-02-18 |
| [`git-audit`](git-audit/README.md) | Audit GitHub PRs and direct commits.<br>Reports filtered by date, file patterns, PR titles, and ticket numbers.<br>Outputs as list or CSV. | Python | v1.0.0 | 2026-02-18 |
| [`git-cleanup`](git-cleanup/) | Manage GitHub Actions runs and git branches.<br>Delete all workflow runs for a branch or delete local branches except main/master. | Python | v1.0.0 | 2026-02-18 |
| [`gh-search`](gh-search/) | Search repos in GitHub or a specific organization for a string.<br>Displays matching repos with option to clone and open in VS Code. | Python | v1.0.0 | 2026-02-18 |
| [`git-audit`](git-audit/README.md) | Generate audit report of GitHub PRs and direct commits with filtering.<br>Reports filtered by date, file patterns, PR titles, and ticket numbers.<br>Outputs as list or CSV. | Python | v1.0.0 | 2026-02-18 |
| [`git-cleanup`](git-cleanup/) | Manage branches and GitHub Actions runs.<br>Delete merged branches, clear workflow runs, and bulk cleanup. | Python | v1.0.0 | 2026-02-18 |
| [`git-copy-branch`](git-copy-branch/) | Copy file changes between git branches.<br>Copies modified/added/deleted files from origin to destination branch.<br>Auto-commits deleted files. | Python | v1.0.0 | 2026-02-18 |
| [`git-force-quit-job`](git-force-quit-job/README.md) | Force-cancel a stuck GitHub Actions run.<br>Parses the run URL and issues a force-cancel via `gh api`. | Bash | v1.0.0 | 2026-02-18 |
| [`git-update-branches`](git-update-branches/) | Batch update git repositories.<br>Iterates through a directory of repos and updates the default branch.<br>Preserves state (stash, current branch) and restores after update. | Bash | v1.0.1 | 2026-02-18 |
| [`github-delete-pr-comments`](github-delete-pr-comments/README.md) | Delete all comments on a pull request.<br>Removes comments by PR URL; reads credentials from `~/.git-credentials`. | Python | v1.0.0 | 2026-02-18 |
| [`github-delete-pr-comments`](github-delete-pr-comments/README.md) | Delete all comments on a GitHub pull request.<br>Removes comments by PR URL; reads credentials from `~/.git-credentials`. | Python | v1.0.0 | 2026-02-18 |
| [`k8s-label-search`](k8s-label-search/) | Search Kubernetes resources by labels and annotations.<br>Match by key, value, or key=value across multiple clusters.<br>Supports JSON and matrix output formats. | Python | v1.0.0 | 2026-02-18 |
| [`ktail`](ktail/README.md) | Tail Kubernetes logs with filtering and multi-pod support.<br>Streams logs from all matching pods simultaneously.<br>Supports colored output, JSON format, and include/exclude regex. | Bash | v1.0.0 | 2026-02-18 |
| [`ktx`](ktx/README.md) | Fuzzy search and switch Kubernetes contexts.<br>Numbered menu when multiple contexts match; optionally switches namespace. | Bash | v1.0.0 | 2026-02-18 |
| [`merge-yaml`](merge-yaml/README.md) | Deep-merge two YAML files.<br>Second file's values override the first.<br>Optionally annotates changed lines with a comment. | Python | v1.0.0 | 2026-02-18 |
| [`open-github-repo`](open-github-repo/README.md) | Search and open a GitHub repository in browser.<br>Opens current repo without arguments; supports org-scoped search. | Python | v1.0.0 | 2026-02-18 |
| [`sort-manifests`](sort-manifests/README.md) | Sort Kubernetes manifests by kind and name.<br>Sorts multi-document YAML and writes output with a `-sorted` suffix. | Python | v1.0.0 | 2026-02-18 |
| [`sort-yaml-key`](sort-yaml-key/README.md) | Sort a YAML list by a specified key.<br>Reorders each block so the sort key appears first. | Python | v1.0.0 | 2026-02-18 |
| [`testpod`](testpod/README.md) | Deploy a netshoot debug pod for network troubleshooting.<br>Creates a `nicolaka/netshoot` pod with optional interactive shell.<br>Supports easy cleanup with `-d` flag. | Python | v1.0.0 | 2026-02-18 |
| [`sort-yaml-key`](sort-yaml-key/README.md) | Sort a YAML file by a specified key.<br>Reorders each block so the sort key appears first. | Python | v1.0.0 | 2026-02-18 |
| [`testpod`](testpod/README.md) | Deploy or delete a netshoot debug pod in Kubernetes.<br>Creates a `nicolaka/netshoot` pod with optional interactive shell.<br>Supports easy cleanup with `-d` flag. | Python | v1.0.0 | 2026-02-18 |
| [`tf-sort`](tf-sort/) | Sort Terraform resource definitions alphabetically.<br>Organizes Terraform files for better readability and git diffs.<br>Preserves comments and formatting. | Bash | v1.0.0 | 2026-02-18 |
| [`tfdel`](tfdel/README.md) | Delete `.terraform` directories and lock files.<br>Recursively removes Terraform caches and reports disk space reclaimed. | Python | v1.0.0 | 2026-02-18 |
| [`tfplan-all`](tfplan-all/README.md) | Run `terraform plan` across all Terraform directories.<br>Parallel init+plan with filtering, output saving, and graceful cancellation. | Python | v1.0.0 | 2026-02-18 |
| [`tfplan-all`](tfplan-all/README.md) | Run terraform init+plan on all subdirectories containing .tf files.<br>Parallel execution with filtering, output saving, and graceful cancellation. | Python | v1.0.0 | 2026-02-18 |

## Installation

Expand Down
Loading