By zhaozhiwen
Smoke-test a local GEMC3 Apptainer runtime with installed GEMC examples.
Codex and Claude plugin for smoke-testing a local GEMC3 Apptainer runtime and explicitly validating GEMC source builds.
The default smoke test runs installed GEMC examples to answer one practical question: can this user's configured GEMC3 container initialize and run basic and optical simulations successfully?
Installed-example smoke tests:
b1b2b3simple_fluxoptical_cherenkovSource-build tests:
https://github.com/gemc/src is checked out into a per-run directory named src_<timestamp>_<shortsha>.src_<timestamp>_<shortsha>/install.*.yaml example under the checkout's examples/ directory runs with src_<timestamp>_<shortsha>/install/bin/gemc, not the container $GEMC binary.b1.py run before their YAML example with PYTHONPATH=src_<timestamp>_<shortsha>/install/api.failure_reason.From the project directory where you want GEMC3 smoke-test artifacts:
scripts/setup_project_docs.sh
scripts/gemc3_apptainer.sh gemc --help
scripts/run_smoke_tests.sh
scripts/setup_project_docs.sh is safe to rerun. It creates AGENTS.md, CLAUDE.md -> AGENTS.md, and log.md only when they are missing.
To validate the upstream GEMC source checkout:
scripts/run_source_tests.sh
To force-refresh the cached GEMC3 image before testing:
scripts/gemc3_apptainer.sh --pull-latest
On another computer, add this GitHub repository as a Codex plugin marketplace:
codex plugin marketplace add zhaozhiwen/plugin_gemc3
For a pinned branch, tag, or commit:
codex plugin marketplace add zhaozhiwen/plugin_gemc3@main
Codex fetches zhaozhiwen/plugin_gemc3 from GitHub and reads .agents/plugins/marketplace.json.
In Claude Code, add this GitHub repository as a plugin marketplace and install the plugin:
/plugin marketplace add zhaozhiwen/plugin_gemc3
/plugin install plugin-gemc3@plugin-gemc3
Claude Code fetches zhaozhiwen/plugin_gemc3 from GitHub and reads the repository-root .claude-plugin/marketplace.json, which points to this installable package at plugins/plugin-gemc3/.
On first run, the wrapper pulls:
ghcr.io/gemc/src:dev-almalinux-10
The cached SIF is stored at:
<current-project-dir>/src_dev-almalinux-10.sif
The wrapper only refreshes that cached SIF when it is missing or when explicitly run with --pull-latest. After a pull, it writes image provenance to:
<current-project-dir>/src_dev-almalinux-10.sif.provenance.env
The runtime scripts do not read environment variables for configuration. They always use the invocation directory as the work directory. Installed-example smoke tests run one event with one thread; source builds use Meson's default compile parallelism.
On first use in a project, run scripts/setup_project_docs.sh to seed project-local agent rules and an append-only log.md for GEMC3 runs and decisions.
Smoke-test artifacts are written under:
<current-project-dir>/results/gemc3_smoke/<timestamp>/
Each example gets its own directory containing stdout.log, gemc.err, and any GEMC outputs generated by that example. The run root contains summary.md.
Source-test artifacts are written separately under:
<current-project-dir>/results/gemc3_source/<timestamp>/
The source-test run root contains phase logs, per-example logs under examples/, aggregate gemc.err, status.env, source_examples.md, and summary.md. status.env is rewritten as a complete key-value snapshot after each phase, so reruns do not produce duplicate contradictory status lines. Source-test summaries include image freshness, SIF size/mtime, Apptainer version, Geant4 pkg-config versions, Python version, source-example counts, first failed example, and a derived failure_reason.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub zhaozhiwen/plugin_gemc3Build, run, and analyze solid_gemc (SoLID experiment) simulations from natural language via an orchestrator skill that drives bin/solid-gemc-run (works on Claude Code and Codex CLI). JLabCE 2.5 container pulled via wget; tcsh runtime inside container; analysis on the host with uproot.
Smoke-test a local GEMC3 Apptainer runtime with installed GEMC examples.
Design, run, and analyze Geant4 simulations for user-defined detectors. Geant4 and ROOT are accessed through a pinned apptainer image; analysis runs on the host with uproot.
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Tools to maintain and improve CLAUDE.md files - audit quality, capture session learnings, and keep project memory current.
Develop, test, build, and deploy Godot 4.x games with Claude Code. Includes GdUnit4 testing, web/desktop exports, CI/CD pipelines, and deployment to Vercel/GitHub Pages/itch.io.
A growing collection of Claude-compatible academic workflow bundles. Covers scientific figures, manuscript writing and polishing, reviewer assessment, citation retrieval, data availability, paper reading, literature search, response letters, paper-to-PPTX conversion, and evidence-grounded Chinese invention patent drafting. Rules are organized as reusable skill folders with explicit workflows and quality checks.
Lazy senior dev mode. Forces the simplest, shortest solution that actually works: YAGNI, stdlib first, no unrequested abstractions.
Create new skills, improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, or benchmark skill performance with variance analysis.