jenkins
Jenkins
Manage Jenkins jobs, builds, and pipelines via the REST API.
Environment Variables
JENKINS_URL- Jenkins server URL (e.g.https://jenkins.example.com)JENKINS_USER- Jenkins usernameJENKINS_TOKEN- API token (generate from user profile > Configure > API Token)
List jobs
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/api/json?tree=jobs[name,color,url]" | jq '.jobs[] | {name, color, url}'
Get job info
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/job/my-pipeline/api/json?tree=name,color,lastBuild[number,result,timestamp]" | jq .
Trigger build
curl -s -X POST -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/job/my-pipeline/build"
echo "Build triggered"
Trigger build with parameters
curl -s -X POST -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/job/my-pipeline/buildWithParameters" \
--data-urlencode "BRANCH=main" \
--data-urlencode "ENV=staging"
echo "Parameterized build triggered"
Get build status
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/job/my-pipeline/lastBuild/api/json?tree=number,result,duration,timestamp,building" | jq .
Get build console output
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/job/my-pipeline/lastBuild/consoleText" | tail -50
List build queue
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/queue/api/json?tree=items[task[name],why,inQueueSince]" | jq '.items[] | {job: .task.name, why, since: .inQueueSince}'
Get pipeline stages (Blue Ocean)
curl -s -u "$JENKINS_USER:$JENKINS_TOKEN" \
"$JENKINS_URL/blue/rest/organizations/jenkins/pipelines/my-pipeline/runs/1/nodes/" | jq '.[] | {displayName, result, durationInMillis}'
Notes
- Jenkins uses crumb-based CSRF protection; if enabled, fetch crumb first.
- Use
buildWithParametersfor parameterized jobs,buildfor simple jobs. - API token is preferred over password for authentication.
- Always confirm before triggering builds.
More from thinkfleetai/thinkfleet-engine
local-whisper
Local speech-to-text using OpenAI Whisper. Runs fully offline after model download. High quality transcription with multiple model sizes.
149flyio-cli-public
Use the Fly.io flyctl CLI for deploying and operating apps on Fly.io: deploys (local or remote builder), viewing status/logs, SSH/console, secrets/config, scaling, machines, volumes, and Fly Postgres (create/attach/manage databases). Use when asked to deploy to Fly.io, debug fly deploy/build/runtime failures, set up GitHub Actions deploys/previews, or safely manage Fly apps and Postgres.
25kagi-search
Web search using Kagi Search API. Use when you need to search the web for current information, facts, or references. Requires KAGI_API_KEY in the environment.
22feishu-bridge
Connect a Feishu (Lark) bot to ThinkFleet via WebSocket long-connection. No public server, domain, or ngrok required. Use when setting up Feishu/Lark as a messaging channel, troubleshooting the Feishu bridge, or managing the bridge service (start/stop/logs). Covers bot creation on Feishu Open Platform, credential setup, bridge startup, macOS launchd auto-restart, and group chat behavior tuning.
13video-subtitles
Generate SRT subtitles from video/audio with translation support. Transcribes Hebrew (ivrit.ai) and English (whisper), translates between languages, burns subtitles into video. Use for creating captions, transcripts, or hardcoded subtitles for WhatsApp/social media.
11bambu-local
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
10