jenkins-cli
GitHub-style CLI for Jenkins — manage contexts, runs, logs, and admin tasks from your terminal.
jk
GitHub CLI–style workflows for Jenkins controllers
jk gives developers and operators a modern, scriptable interface to Jenkins: inspect runs, stream logs, manage credentials, and administer controllers from a single cross-platform binary.
Features
- Context-aware auth – store multiple controllers, switch with
jk context use, or pin a context viaJK_CONTEXT. - Friendly pipelines – trigger, rerun, follow, and summarize jobs with human or JSON/YAML output.
- Scriptable output –
--format json|yaml,--jq, and--templatefor machine-friendly pipelines;--quietfor scripting. - Discovery-first runs – filter with
--filter, bound history with--since, group by parameters, and attach machine-readable metadata for agents. - Artifacts & tests – browse artifacts, download filtered sets, and surface aggregated test reports.
- Platform operations – cordon nodes, manage credentials, inspect queues, and view installed plugins.
- GitHub CLI parity – command structure and UX mirror
gh, easing adoption in developer toolchains.
Installation
Homebrew (macOS/Linux)
brew install avivsinai/tap/jk
Scoop (Windows)
scoop bucket add avivsinai https://github.com/avivsinai/scoop-bucket
scoop install jk
Go Install
# Install latest version
go install github.com/avivsinai/jenkins-cli/cmd/jk@latest
# Or install specific version
go install github.com/avivsinai/jenkins-cli/cmd/[email protected]
Binary will be installed to $GOPATH/bin (or $HOME/go/bin by default).
Binary Downloads
Download prebuilt binaries for your platform from GitHub Releases.
From Source
git clone https://github.com/avivsinai/jenkins-cli.git
cd jenkins-cli
make build # produces ./bin/jk
AI Coding Skill
Install the jk skill for Claude Code or Codex CLI:
Using Vercel's skills CLI:
npx skills add avivsinai/jenkins-cli -g -y
Via skild registry
npx skild install @avivsinai/jk -t claude -y
Via Skills Marketplace
Known Issue: Claude Code uses SSH to clone marketplace repos, which fails without SSH keys configured. See issue #14485. Use the skills or skild methods instead.
/plugin marketplace add avivsinai/skills-marketplace
/plugin install jk@avivsinai-marketplace
Manual install
git clone https://github.com/avivsinai/jenkins-cli.git
cp -r jenkins-cli/.claude/skills/jk ~/.claude/skills/
Quickstart
Find jobs fast with jk search (alias for jk run search) before drilling into specific pipelines.
jk auth login https://jenkins.company.example # authenticate and create a context
jk context ls # list available contexts
jk search --job-glob '*deploy-*' --limit 5 --json --with-meta # discover job paths across folders
jk run ls team/app/pipeline --filter result=SUCCESS --since 7d --limit 5 --json --with-meta
jk run ls team/app/pipeline --include-queued # include queued builds (shown as qN)
jk run params team/app/pipeline # inspect inferred parameter metadata
jk run view team/app/pipeline 128 --follow # stream logs until completion
jk artifact download team/app/pipeline 128 -p "**/*.xml" -o out/
Add --json, --yaml, or --format json|yaml to supported commands for machine-readable output. Use --jq or --template to select or reshape JSON results.
# Extract a single field with jq
jk run view team/app/pipeline 128 --format json --jq '.result'
# Custom formatting with Go templates
jk run view team/app/pipeline 128 --format json --template 'Result={{.result}}'
Documentation
- Specification - Architecture and design decisions
- API Contracts - JSON/YAML schemas for structured output
- Agent Cookbook - Automation recipes and examples
- Changelog - Release notes and migration guidance
Security
This project uses automated secret scanning (gitleaks), dependency updates (Dependabot), and security posture tracking (OSSF Scorecard).
Found a security issue? See our security policy for responsible disclosure.
Community
- Read the code of conduct and contributing guide
- Ask questions or propose ideas via GitHub Discussions (coming soon) or issues
- Follow the support guidelines for help
Development
Quick Start
# First-time setup
make pre-commit-install # Install git hooks (gitleaks, formatting, etc.)
# Standard workflow
make build # Build the binary
make test # Run unit tests
make lint # Run linters
make security # Run security checks (gitleaks + pre-commit)
Full Test Suite
make e2e # End-to-end tests (requires Docker)
make e2e-up # Launch test Jenkins (port 28080)
make e2e-down # Tear down test environment
Prerequisites:
- golangci-lint for linting
- gitleaks for secret scanning
- pre-commit for git hooks
- Docker/Colima for e2e tests
Note: E2e tests require Docker. On macOS with Colima, use colima start --network-address. See CONTRIBUTING.md for details. Skip with JK_E2E_DISABLE=1 make test.
Before Submitting PRs
make security # Gitleaks + pre-commit checks
make lint # Run linter
make test # Run tests
License
jk is available under the MIT License.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi