| name | jenkctl-cli |
| description | Use this skill when working with the local jenkctl Jenkins CLI: mapping Jenkins tasks to exact commands, explaining subcommands, validating env vars, choosing between CLI and MCP, or running local smoke tests. Keywords: Jenkins CLI, jenkctl, system ping, job info, build log, pipeline validate, node list, monitor failures. |
| user-invocable | true |
jenkctl CLI
Use this skill to operate the local jenkctl repository through its CLI entrypoints.
When To Use
- The user asks for an exact
jenkctl command instead of an MCP call.
- The task is about Jenkins system, job, build, pipeline, node, or monitor operations through the local repo binary.
- The agent needs to explain which subcommand matches a Jenkins action.
- The agent needs a lightweight CLI smoke test after changing command handling or transport code.
Repository Defaults
- Prefer direct invocations of the compiled release binary:
<repo>/target/release/jenkctl ....
- Prefer the main MCP entrypoint
jenkctl mcp; keep jenkctl-mcp for compatibility only.
- Use
--pretty when the output is intended for a human. Keep the default compact JSON when the result will be parsed.
- Jenkins credentials come from environment variables, not CLI flags.
- Release binaries live at
target/release/jenkctl and target/release/jenkctl-mcp.
Procedure
- Confirm the Jenkins connection variables are available.
- Choose the execution path.
- Use
<repo>/target/release/jenkctl for all CLI commands.
- Use
<repo>/target/release/jenkctl mcp as the preferred MCP entrypoint.
- Keep
<repo>/target/release/jenkctl-mcp only for compatibility with older integrations.
- Map the request to the narrowest subcommand. See the command cheatsheet.
- Run the command with
--pretty for human-facing output, or without it for structured JSON.
- After code changes, prefer a narrow validation first: a targeted CLI smoke test through the compiled binary.
Required Environment
At least one variable from each group must be set:
JENKCTL_JENKINS_URL or JENKINS_URL
JENKCTL_JENKINS_USER or JENKINS_USER
JENKCTL_JENKINS_TOKEN or JENKINS_TOKEN
Useful optional variables:
JENKCTL_SERVER_ALIAS
JENKCTL_TIMEOUT_SECONDS
JENKCTL_USE_SYSTEM_PROXY
JENKCTL_INSECURE_TLS
Quick Examples
<repo>/target/release/jenkctl system ping --pretty
<repo>/target/release/jenkctl build status team/backend-service 1024 --pretty
<repo>/target/release/jenkctl pipeline validate --file ./Jenkinsfile --pretty
<repo>/target/release/jenkctl mcp
Notes
build wait, build status, build log, build artifacts, build cause, and build test-report accept an optional build number.
pipeline validate reads the Jenkinsfile from --file.
pipeline step-log requires job, build, and node_id.
job info expects a Jenkins full job path such as team/backend-service.