Docker Jfr Benchmark Loop
eclipse-rdf4j/rdf4j
Run a repeatable RDF4J performance loop against one JMH benchmark in Docker with Linux Java 26 and JFR CPU-time profiling.
Learn which toolchains and environments this workstation has and how to invoke them, or set them up when they are missing.
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install epam/cloud-pipeline configure-dev-environment --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/configure-dev-environment .claude/skills/configure-dev-environment && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .claude/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environmentType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install epam/cloud-pipeline configure-dev-environment --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/configure-dev-environment .agents/skills/configure-dev-environment && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .agents/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install epam/cloud-pipeline configure-dev-environment --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/configure-dev-environment .cursor/skills/configure-dev-environment && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .cursor/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/epam/cloud-pipeline.git --path .agents/skills/configure-dev-environment--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install epam/cloud-pipeline configure-dev-environment --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/configure-dev-environment .gemini/skills/configure-dev-environment && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .gemini/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install epam/cloud-pipeline configure-dev-environmentInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/configure-dev-environment .github/skills/configure-dev-environment && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .github/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add epam/cloud-pipeline --skill configure-dev-environment -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install epam/cloud-pipeline configure-dev-environment --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/epam/cloud-pipeline.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/configure-dev-environment .opencode/skills/configure-dev-environment && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "configure-dev-environment" agent skill from https://github.com/epam/cloud-pipeline/tree/develop/.agents/skills/configure-dev-environment into .opencode/skills/configure-dev-environment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configure-dev-environment", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
configure-dev-environmentLearn which toolchains and environments this workstation has and how to invoke them, or set them up when they are missing.
Configure Dev Environment is an agent skill from epam/cloud-pipeline. Learn which toolchains and environments this workstation has and how to invoke them, or set them up when they are missing. Load this before building, testing or running anything in this repository.
Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/probe-env.sh`).
It sits in DevOps & Cloud. It works with Java and Docker. The repository describes itself as: Cloud agnostic genomics analysis, scientific computation and storage platform. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5017688. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
ghpipbashnpxbrewjavacondadockernodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, pip, npx and docker, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
CP_API_TEST_DB_PASSWORDFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Configure Dev Environment loads about 3.1k tokens when it runs. Until then it costs about 56 tokens; SKILL.md has 1,774 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from epam/cloud-pipeline at commit 5017688, republished under its Apache-2.0 licence (© epam). 1,774 words, ~3,078 tokens.
.claude/skills/configure-dev-environment/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Scope-driven and incremental. A first run may set up the UI only; a later "install Java please" adds that scope and leaves the rest alone. Never install outside the scope the user picked.
Attended only. Every step here waits on a person — the scope, the version manager, a shell
profile edit. Unattended — the implement-task skill defines when — run the probe, report what is
missing, and stop. Never install anything on a CI runner: its toolchain belongs to the workflow that
defines it, not to an agent.
Read .agents/localenv/ before probing, so a repeat run reports the delta instead of re-asking. Absent
means first run.
bash .agents/skills/configure-dev-environment/scripts/probe-env.shReports every tool with its version, the available package/version managers, and the platform. Never
guess from .agents/localenv/ alone — it records intent and can be stale.
Ask what the user will work on, not what to install. One multi-select, in the areas of the platform they think in — never a series of per-tool questions. The toolchain follows from the answer, so the tool column below is yours to derive, not theirs to choose.
| Offer this | It needs | Because |
|---|---|---|
| GUI (web) | Node 14 | client, data-sharing-service/client — Webpack 4/2 + React 15, and Node ≥16 breaks the build |
| API & services (Java) | JDK 8 | every Spring Boot module; the Gradle 4.10.2 wrapper does not run on JDK 9+ |
| Database / migrations | JDK 8, Docker | Flyway runs from api; a local Postgres is easiest as a container |
pipe CLI & Python services | 2.7-era and 3.x | pipe-cli, workflows/pipe-common, storage-lifecycle-service, fs-browser, git-reader |
| Desktop / viewer apps | Node 16–18 | cloud-pipeline-webdav-client (Electron), hcs-image-viewer, fs-browser/fs-browser-client |
| Documentation | mkdocs | docs/ |
| Docker images | a container runtime | deploy/docker/* |
| GitHub CLI | gh, authenticated | the only supported way to touch issues, PRs and checks from an agent session |
Mark each option with what the probe already found — "GUI (Node 14 missing)", "Docker (ready)" — and say up front which areas are already complete so nobody picks a no-op.
After the scope question, ask only where the answer is genuinely the user's and cannot be derived: the Python manager, the Docker runtime, and permission before editing a shell profile. Everything else you decide from the probe and state in the summary. Batch what remains into one round rather than one question per tool, and skip a question outright when the probe already answers it — pyenv installed and no conda is not a choice worth interrupting for.
Node 14 and Node 18 coexist: that is what nvm is for. Do not "upgrade" client to a newer Node.
List everything you are about to install — tool, version, manager, and anything it changes outside the repo — and get one approval for the list. Then install it.
Come back to the user only when something does not match the list: a version that is not available, an install that fails, a shell profile you need to edit, a port already in use. Do not ask twice about a line they already said yes to.
Where a choice below is the user's, put it in the list or in the step-3 questions — never pick a version manager for them.
.nvmrcInstall nvm itself only if absent, and from its own installer — brew's nvm needs manual shell wiring. Reuse a version the probe already lists rather than installing it again.
Write client/.nvmrc containing 14 if it does not exist; that file is committed — mention it as a
repo change when handing back.
Pick by what the probe found, in this order, and say which you chose and why:
sdk install java 8.0.<latest>-tem — best when other JDKs are in play.brew install --cask temurin@8, then JAVA_HOME=$(/usr/libexec/java_home -v 1.8).temurin-8-jdk / openjdk-8-jdk.JAVA_HOME must be exported in the user's shell profile — ask before editing it, and record which
file you touched. Verify with java -version reporting 1.8 and:
./gradlew --version && ./gradlew :core:compileJavaThe wrapper is the only supported entry point. Do not install a standalone gradle.
The connection is not a choice. api/profiles/dev/application.properties and
api/src/test/resources/test-application.properties hardcode port 5432 and the database names;
only the test profile's user and password are env-overridable (CP_API_TEST_DB_USER,
CP_API_TEST_DB_PASSWORD), and both profiles default to pipeline/pipeline. Read both files —
never copy the values from here.
password authentication failed, so check for a
second postmaster before touching credentials.PSG_VERSION in
deploy/contents/install/install-config.Flyway runs at test startup; there is no Gradle Flyway task, and the migrations are append-only
(root AGENTS.md). Verify with one scoped DAO test, never the full :api:test suite:
./gradlew :api:test --tests "com.epam.pipeline.dao.dts.DtsRegistryDaoTest"Ask: pyenv + venv (interpreters isolated, venv per subproject) or conda/mamba (one env per subproject). Never install into the system Python.
pipe-cli/requirements.txt pins a Python-2.7-era set (click==6.7, boto3==1.6.9). If that
subproject is in scope and no 2.7 interpreter exists, say so plainly. The Python 3 subprojects
(storage-lifecycle-service, fs-browser, git-reader) are unaffected.
On Apple Silicon, conda-forge has no arm64 build of anything below Python 3.8. A 2.7 or 3.6 env must
therefore be osx-64, running under Rosetta 2, with subdir pinned in that env's own .condarc so
later conda install calls stay on the same CPU. pyenv often cannot build 2.7 there at all.
Create one env per subproject, named after it, and record the names. A venv inside the repo must be gitignored — check before creating it.
Check each env works before you make the next one.
The dependency lists in these subprojects are old and were written on other machines —
git-reader/setup.py is a Linux pip freeze, and some of its pins cannot build on macOS at all. So
you will often end up installing an env with a few packages skipped. Importing the package is the
only way to find out whether the skipped ones mattered.
Run the subproject's tests where it has a tests/ directory, otherwise just import the package — from
the subproject, with PYTHONPATH=. and never pip install -e ., since *.egg-info is not in
.gitignore and an editable install drops untracked files into the working tree.
When a package will not install, stop and ask — never skip it quietly. Lay out the options that
actually apply on this platform, with what each costs: dropping the package (say which imports would
break), a different interpreter or arch, relaxing the pin, skipping the subproject. Whichever the user
picks, name every skipped package in .agents/localenv/; an env with holes in it is fine, an
undocumented one is not.
Same rule when the tests fail. If the cause is the env, ask before working around it. If the code is already broken, that is a legitimate result: write down which tests failed and why, leave the bug alone, and move on to the next env.
Skipping a subproject is a normal outcome — the Verify step treats a declared skip as correct. What it does not accept is a scope reported as ready when it is not.
mkdocs goes in via pipx, with the theme and plugins docs/mkdocs.yml actually declares — read the file
rather than assuming. Verify with mkdocs build from docs/; docs/site is already gitignored. Never
run the Gradle buildDoc task.
Docker Desktop, colima, or Rancher Desktop — the user's call. If a working daemon already answers
docker info, change nothing regardless of which runtime it is.
gh, then an interactive auth stepInstall gh by cli.github.com's own instructions for the platform, rather than guessing a package
name. Then authenticate with the device-code flow, in the background — it blocks until the user
finishes in the browser:
gh auth login --hostname github.com --git-protocol https --webUse those exact flags. Put the one-time code and URL from its output directly in your reply, and wait for the command to finish. A code expires in ~15 minutes; once that lapses, kill it and re-run.
Never pass --with-token or ask the user for a personal access token in chat. Record only the
account gh auth status reports — never the token, and never read gh's own credential store
(~/.config/gh/hosts.yml).
Only when the user asked to install Playwright MCP; verify-client-live otherwise uses the browser
tool the session already has. The server needs Node ≥18 on PATH (its own engines field) —
separate from client's pinned Node 14 — so check the ambient default (node --version, outside
client/) first.
Ask headed (visible) or headless as the default, and write it — together with a fixed outputDir
under gitignored .agents/.temp/ — to .agents/localenv/playwright-mcp-config.json:
{
"browser": {"launchOptions": {"headless": false}},
"outputDir": "<repo root>/.agents/.temp/.playwright-mcp"
}Register it outside the repository — the session's own local or user scope, never a committed
.mcp.json or any other tracked registration. Confirm before running. Then:
npx -y playwright install chromiumThe MCP server only reads that config at its own startup. After a change, say the agent session must be relaunched before it applies.
Write one file per scope under .agents/localenv/ — node.md, java.md, python.md,
database.md, gh.md, … Each opens with the same four things, and whatever else that scope needs
below them:
Update a file in place on a repeat run; do not append a second history section.
README.md is the index, written on first run: that the directory is per-workstation, gitignored and
written by this skill, plus a row for every file in it — not only the .md ones. A tool config
dropped here without a row is invisible to the next run. The probe prints the directory listing;
compare it against the table.
Never record a token, a superuser password, or any credential the repo does not already hardcode.
The directory is already in .gitignore. Verify that, and never commit anything under it.
What was installed, what was already present and skipped, every choice the user made (so the record can be checked against it), and what remains uninstalled for the scopes not picked. If a tool could not be installed, say which and why — an absent toolchain is a legitimate outcome here, and the Verify step treats a declared skip as correct.
© epam, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in .agents/skills/configure-dev-environment of epam/cloud-pipeline.
Open the folder on GitHubat commit 5017688
Configure Dev Environment next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Configure Dev Environment this skillepam/cloud-pipeline | 162 | — | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Docker Jfr Benchmark Loopeclipse-rdf4j/rdf4j | 420 | — | ~945 | Automated safety check: Pass | BSD-3-Clause | |
| Opik Local Dev Environmentcomet-ml/opik | 22k | — | ~734 | Automated safety check: Pass | Apache-2.0 | |
| Pi K8s Deployrodrigorodrigues/microservices-design-patterns | 188 | — | ~1.6k | Automated safety check: Pass | None | |
| Qdrant Advisorqdrant/skills | 253 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Oci Functions Deployoracle/skills | 872 | — | ~4.6k | Automated safety check: Pass | UPL-1.0 |
eclipse-rdf4j/rdf4j
Run a repeatable RDF4J performance loop against one JMH benchmark in Docker with Linux Java 26 and JFR CPU-time profiling.
comet-ml/opik
Starts, rebuilds, and troubleshoots the Opik local dev stack, including an optional Comet Platform integration mode for the Opik team.
rodrigorodrigues/microservices-design-patterns
Check Docker Hub for a new :latest image on a managed service and roll it out to the home Pi k8s cluster, the same way authentication-service was deployed on 2026-08-29 (SSH + kubectl rollout…
qdrant/skills
Diagnose, troubleshoot, and advise on any Qdrant deployment by loading the latest official Qdrant skills live from skills.qdrant.tech.
oracle/skills
Build, configure, scaffold, and deploy OCI Functions from a local machine using a dependency-first, Fn-context-guided flow with argv-safe mutation execution, nonce-scoped confirmations, and a…
ancoleman/ai-design-components
Writing optimized, secure, multi-stage Dockerfiles with language-specific patterns (Python, Node.js, Go, Rust), BuildKit features, and distroless images.
epam/cloud-pipeline
Open a user-visible client/ change in a browser against a real Cloud Pipeline deployment.
epam/cloud-pipeline
Required before you commit, push or open a pull request here, asked or not.
epam/cloud-pipeline
Required before adding or changing anything an agent reads — a convention in AGENTS.md, a procedure as a skill, a pattern-scoped rule.
epam/cloud-pipeline
Plan the work before you edit — its phases, the model and effort each takes, and whether it is worth a plan file with a ledger beside it.
epam/cloud-pipeline
Find and run the checks a change owes, from what it touches and what that can reach.
epam/cloud-pipeline
Start here before the first edit of any file — a one-liner and a docs change included.
Categories
Learn which toolchains and environments this workstation has and how to invoke them, or set them up when they are missing. Configure Dev Environment is an agent skill from epam/cloud-pipeline. Learn which toolchains and environments this workstation has and how to invoke them, or set them up when they are missing.
Configure Dev Environment fits situations like: devOps & Cloud work in your project.
Run `npx skills add epam/cloud-pipeline --skill configure-dev-environment -a claude-code`. Or copy the skill folder (.agents/skills/configure-dev-environment in epam/cloud-pipeline) into .claude/skills/configure-dev-environment in your project. Claude Code loads it when a task matches its description.
Run `npx skills add epam/cloud-pipeline --skill configure-dev-environment -a codex`. Or copy the skill folder (.agents/skills/configure-dev-environment in epam/cloud-pipeline) into .agents/skills/configure-dev-environment in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add epam/cloud-pipeline --skill configure-dev-environment -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/configure-dev-environment, .gemini/skills/configure-dev-environment, .github/skills/configure-dev-environment and .opencode/skills/configure-dev-environment in your project.
Going by SKILL.md and its folder, Configure Dev Environment needs a shell for the scripts in its folder, the command-line tools its instructions call (gh, pip, bash, npx, brew and java) and credentials named CP_API_TEST_DB_PASSWORD. Our summary lists: Python 3; Node.js; A Bash shell; Docker.
SKILL.md contains no URLs. Its commands use gh, pip, npx and docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Configure Dev Environment is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.1k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Configure Dev Environment: Docker Jfr Benchmark Loop (eclipse-rdf4j/rdf4j, 420 stars), Opik Local Dev Environment (comet-ml/opik, 22k stars), Pi K8s Deploy (rodrigorodrigues/microservices-design-patterns, 188 stars) and Qdrant Advisor (qdrant/skills, 253 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
epam (a GitHub organization) maintains it in epam/cloud-pipeline, which has 162 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 6, 2026.
Source: epam/cloud-pipeline on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.