Mold Gallery
A curated selection of molds from the official registry, showcasing what fimod can do out of the box. All of these are available immediately after running fimod registry setup.
🌐 HTTP & APIs
@gh_latest — GitHub latest release
Fetches the latest release tag from any GitHub repository. With --arg asset, resolves the full download URL for a specific release asset, substituting {version} and {tag} placeholders automatically.
# Get the latest release tag
fimod s -i https://github.com/cli/cli/releases/latest -m @gh_latest
# → v2.67.0
# Resolve a release asset URL
fimod s -i https://github.com/cli/cli/releases/latest -m @gh_latest \
--arg repo=cli/cli \
--arg asset=gh_{version}_linux_amd64.tar.gz
# → https://github.com/cli/cli/releases/download/v2.67.0/gh_2.67.0_linux_amd64.tar.gz
Pipe the resolved URL directly into a second fimod invocation to download the asset — no xargs, no shell intermediary:
# Download, filename inferred from the URL
fimod s -i https://github.com/sinelaw/fresh/releases/latest \
-m @gh_latest \
--arg repo="sinelaw/fresh" \
--arg asset='fresh-editor_{version}-1_amd64.deb' \
| fimod s -I - --output-format raw -O
# Download to an explicit filename
fimod s -i https://github.com/sinelaw/fresh/releases/latest \
-m @gh_latest \
--arg repo="sinelaw/fresh" \
--arg asset='fresh-editor_{version}-1_amd64.deb' \
| fimod s -I - --output-format raw -o fresh-editor.deb
@download — File download (wget-like)
Downloads a URL to a local file. The output filename defaults to the last path segment of the URL; override it with --arg out.
# Download to the inferred filename
fimod s -i https://example.com/data/archive.tar.gz -m @download
# → writes archive.tar.gz
# Override the output filename
fimod s -i https://example.com/data/archive.tar.gz -m @download --arg out=backup.tar.gz
# → writes backup.tar.gz
Handles binary content correctly (images, archives, binaries) via the raw binary pass-through.
🛠️ Developer Tooling
@poetry_migrate — Migrate pyproject.toml to Poetry 2 / uv
Converts a legacy Poetry pyproject.toml (1.x) to the modern PEP 621 format — either for Poetry 2 or uv.
# Migrate to uv (default)
fimod s -i pyproject.toml -m @poetry_migrate -o pyproject.toml
# Migrate to Poetry 2
fimod s -i pyproject.toml -m @poetry_migrate -o pyproject.toml --arg target=poetry2
What gets migrated:
[tool.poetry]metadata →[project](name, version, description, authors, …)- Dependency constraints (
^1.2.3,~1.2.3,*) → PEP 440 equivalents [tool.poetry.dev-dependencies]/ groups →[dependency-groups](PEP 735)[[tool.poetry.source]]→[[tool.uv.index]]build-systemupdated tohatchling(uv) orpoetry-core>=2.0.0(Poetry 2)
⚙️ DevOps & Config
@yaml_merge — Patch a YAML file
Applies a set of path=value assignments to an existing YAML document using dot-path notation. Useful for patching Kubernetes manifests or any structured config without a full template engine.
# Scale a deployment and tag it for production
fimod s -i deployment.yaml -m @yaml_merge \
--arg set="spec.replicas=3,metadata.labels.env=prod" \
-o deployment.yaml
Values are auto-cast: true/false become booleans, numeric strings become integers.
# Before
spec:
replicas: 1
metadata:
labels: {}
# After
spec:
replicas: 3
metadata:
labels:
env: prod
@skylos_to_gitlab — Dead code report → GitLab Code Quality
Converts Skylos dead code analysis output to the GitLab Code Quality (Code Climate) JSON format, ready to upload as a CI artifact.
# In a GitLab CI job
skylos --json > skylos_report.json
fimod s -i skylos_report.json -m @skylos_to_gitlab -o gl-code-quality-report.json
Each finding becomes a Code Climate issue with a stable fingerprint (MD5 of check name + file + line + symbol), so GitLab can track it across pipeline runs.
🔍 Data Exploration
@jq_compat — Common jq operations
A lightweight jq-compatible interface for the three most-used operations: get (dot-path extraction), map (field projection), and select (filtering). Useful when you want the ergonomics of jq without the dependency.
# Extract a nested field
fimod s -i data.json -m @jq_compat --arg get=user.address.city
# Project a single field from an array
fimod s -i users.json -m @jq_compat --arg map=name
# Filter by field value
fimod s -i users.json -m @jq_compat --arg select=active=true
🛡️ Data Quality
@anonymize_pii — Hash PII fields
Replaces the values of specified fields with their SHA-256 hash. Works on both arrays of objects and single objects.
// Before
[{"id": 1, "email": "alice@example.com", "phone": "555-0100"}]
// After
[{"id": 1, "email": "a4c2e...", "phone": "f91b3..."}]
The original id and any non-listed fields are preserved. Deterministic hashing means the same input always produces the same fingerprint — useful for consistent pseudonymisation across datasets.