pudo-handoff
Write the PUDO session handoff (.pudo/session.md) so another session, tool or teammate can continue the work. Use when the user…
Skill, CI/CD, Jenkins, Pipelines, Automation
Claude Code
$ npx -y skills add DongDuong2001/pudo-code-system --skill jenkins --agent claude-code
Codex
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a codex -y
Cursor
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a cursor -y
Gemini CLI
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a gemini-cli -y
GitHub Copilot
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a github-copilot -y
OpenCode
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a opencode -y
Windsurf
$ npx skills add DongDuong2001/pudo-code-system --skill jenkins -a windsurf -y
> Skill, CI/CD, Jenkins, Pipelines, Automation
Use this skill when designing or debugging Jenkins pipelines. This covers Declarative Jenkinsfile syntax, shared libraries, agent configuration, parallel stages, credentials binding, and integrating Jenkins into a broader CI/CD ecosystem. The AI will act as a Jenkins specialist who knows the difference between Declarative and Scripted syntax, and when to use each.
Adopt the persona of a Senior Jenkins Engineer. I need to design the following pipeline:
Goal: {{pipeline_goal}}
Agent: {{agent_type}}
Tech Stack: {{tech_stack}}
SCM: {{scm_tool}}
Target Environment: {{environment}}
Design the Jenkinsfile using Declarative syntax adhering to these standards:
1. **Pipeline Structure:** Use `pipeline { stages { stage('...') { steps {...} } } }` Declarative syntax. Organize stages logically: Checkout → Build → Test → Scan → Publish → Deploy. Use `parallel { }` blocks only when stages are truly independent.
2. **Agent Strategy:** Define a top-level agent and override per-stage where needed (e.g., a Docker agent for building, a specific label for deployment). Use ephemeral Docker agents to avoid environment drift.
3. **Credentials & Secrets:** Use `credentials()` binding in the `environment {}` block or `withCredentials([...])` wrapper. Never use `sh 'echo $SECRET'`. Mask all sensitive values.
4. **Error Handling:** Use `post { always {...} failure {...} success {...} }` blocks for notifications and cleanup. Use `catchError(buildResult: 'UNSTABLE')` for non-fatal failures (e.g., flaky tests).
5. **Shared Libraries:** If logic is reused across pipelines, extract it into a Shared Library (`@Library('my-lib')`) with a `vars/` function. Provide the library structure.
6. **Build Artifacts:** Archive artifacts with `archiveArtifacts`. Use `stash/unstash` to pass build outputs between stages running on different agents.
7. **Input Gates:** Use `input` step with `submitter` restriction for manual production approval.
Provide the complete `Jenkinsfile` with inline comments explaining non-obvious decisions.**Input:**
Adopt the persona of a Senior Jenkins Engineer. I need to design the following pipeline:
Goal: Build a Maven JAR, run unit and integration tests in parallel, publish to Nexus, and deploy to a staging Kubernetes cluster with manual approval for production.
Agent: docker { image 'maven:3.9-eclipse-temurin-17' } for build/test, label 'k8s-deployer' for deploy
Tech Stack: Java 17, Maven, Docker, Nexus, Kubernetes (kubectl + Helm)
SCM: GitHub (webhook trigger on push to main and PRs)
Target Environment: Staging (auto) and Production (manual) on Kubernetes
Design the Jenkinsfile using Declarative syntax adhering to these standards:
[...rest of prompt...]**Expected Output:**
Write the PUDO session handoff (.pudo/session.md) so another session, tool or teammate can continue the work. Use when the user…
PUDO Plan phase: turn a request into a short plan card (goal, scope, out of scope, success criteria, risks, steps) before any…
PUDO Optimize gate: review the current diff against the plan before calling work done: correctness, edge cases, tests, scope…
PUDO workflow: Plan -> Understand -> Develop -> Optimize. Use on any non-trivial coding task (features, bug fixes, refactors,…
- [ ] **API Design:** Define RESTful endpoints, path parameters, and query parameters. - [ ] **Data Validation:** Plan Pydantic…
- [ ] **Framework Selection:** Choose web framework (Axum, Actix-web) based on performance vs. ecosystem needs. - [ ] **Crate…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.