MFLUX is a native MLX implementation of generative image models that runs locally on Mac computers. It is for generating images with supported models through command-line tools or a Python API. The catalogue skills and instruction support workflows built around these image-generation models.
Borrowing it
Nothing to install: this file belongs to mflux-community/mflux. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/mflux-community/mflux/main/.cursor/skills/mflux-pr-docs/SKILL.mdgit clone --depth 1 https://github.com/mflux-community/mfluxWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mflux-community/mflux/mflux-pr-docs)<a href="https://agentmods.dev/skills/mflux-community/mflux/mflux-pr-docs"><img src="https://agentmods.dev/badge/skills/mflux-community/mflux/mflux-pr-docs/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mflux-community/mflux/mflux-pr-docs"><img src="https://agentmods.dev/badge/skills/mflux-community/mflux/mflux-pr-docs.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00063 | $0.01390 |
| Opus 5.5 | $0.00025 | $0.00556 |
| Sonnet 5.5 | $0.00013 | $0.00278 |
| Haiku 4.5 | $0.00006 | $0.00139 |
Grade A, and why
mflux-pr-docs scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 19d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 74 lines — stays where its author put it; the contents beside it link to each section on GitHub.
mflux PR docs
Write the PR body for the current branch. The developer must approve the body before it goes to GitHub.
Inputs
- The current branch. The base branch is
main. - Optional: the PR number, if the PR is open.
Steps
- Collect the facts. Use only these sources:
git log --oneline main..HEADgit diff --stat main...HEADgit diff main...HEAD- If the PR is open:
gh pr view <n> --json title,body,closingIssuesReferencesandgh pr checks <n>.
- Copy
.github/pull_request_template.mdtotmp-PR-content.md. Iftmp-PR-content.mdexists, ask the developer before you replace it.- Add this heading as the first line:
# Draft PR Content. - Add the line
Title:below the heading. Add an empty line after it. - If the PR is open, put its title from step 1 after
Title:. - If the PR is open,
gh pr edit --body-filereplaces the existing body. Copy each existing section and link that the template does not have intotmp-PR-content.md. Get them from thebodyfield of step 1. If you do not copy them, ask the developer to confirm before you discard them.
- Add this heading as the first line:
- Write the
Whatsection. Obeypr-what-prompt.mdin this folder. Use the diff from step 1 if the PR is not open. AddFixes #<n>for each linked issue.- If the PR is not open, write the PR title after
Title:. Use one short line that names the change. - If the PR is open, keep its title. Change the title only if the developer asks.
- If the PR is not open, write the PR title after
- Write the release note. Obey
release-note-prompt.mdin this folder.- Put the note on the lines below the opening fence. Do not put text on the fence line.
- Tell the developer which PR label the PR needs.
- Write the
Verificationsection. List only the commands that ran, with the result of each command. If no command ran, writeTODO: add the commands that you ran.Do not write a result that you did not see. - Do not tick the boxes in the
Checklistsection. The developer ticks them. - Examine the text that you wrote. Do not examine the template text.
- Apply the
asd-ste100skill in STE-flavored mode. - Put the text that you wrote in a temporary file. Do not put the
Title:line in it. Runpython3 .cursor/skills/asd-ste100/scripts/ste-lint.py <file>. - Fix each hard violation.
- Apply the
- Run the CI check on
tmp-PR-content.md. Fixtmp-PR-content.mduntil the check passes:python3 - tmp-PR-content.md <<'PY' import re, sys body = open(sys.argv[1], newline="").read() m = re.search(r"^```release-note[ \t\r]*\n(.*?)^```[ \t\r]*$", body, re.DOTALL | re.IGNORECASE | re.MULTILINE) sys.exit(0 if m and m.group(1).strip() else "FAIL: no complete release-note block") PY - Ask the developer to approve the PR content:
- Open
tmp-PR-content.mdin the editor. Usecode tmp-PR-content.mdorcursor tmp-PR-content.md. If neither command works, give the developer the file path. - Tell the developer to edit the file in the editor, or to ask for changes in the chat.
- Tell the developer to write
approvein the chat when the content is ready. - Do not continue until the developer writes
approve.
- Open
- Read
tmp-PR-content.mdagain after the developer approves it. The developer can edit the file before approval. Do step 8 again.- Make sure that line 1 is
# Draft PR Contentand line 2 is theTitle:line. Put them back if the developer moved them. - Make sure that the
Title:line has a title. If it is empty, ask the developer for the title. Write the title afterTitle:intmp-PR-content.md.
- Make sure that line 1 is
- Send the PR content to GitHub:
- If the PR is not open, push the branch first. Ask for permission before you push. Obey the
mflux-prskill. - Run this block as one command. If the PR is open, replace the last line with
gh pr edit <n> --title "$title" --body-file tmp-PR-body.md.title="$(awk 'NR <= 2 && sub(/^Title: */, "") { print; exit }' tmp-PR-content.md)" awk 'NR == 1 && /^# Draft PR Content$/ { next } NR == 2 && /^Title:/ { next } { print }' tmp-PR-content.md > tmp-PR-body.md gh pr create --title "$title" --body-file tmp-PR-body.md - The shell reads the title from the file. Do not type the title into the command. Backticks and
$in a typed title run as shell code. - GitHub does not get the
# Draft PR Contentline or theTitle:line. Other lines that start withTitle:stay in the body.
- If the PR is not open, push the branch first. Ask for permission before you push. Obey the
- Delete
tmp-PR-content.mdandtmp-PR-body.md.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 19d ago Changed · +12 lines 36051ad46d18
- 20d ago First seen · 62 lines · 63 tokens per session scan A ac9294c3866e
mflux-pr-docs is a skill published in the GitHub repository mflux-community/mflux (2,547 stars, last pushed today), licensed MIT. It adds 63 tokens to every session and 1,390 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-09.
Other skills, from other repositories
resolve-publish
Commit the validated fix and follow local-only, workflow-owned, or direct PR publication.
feature-publish
Commit the feature, write the PR body, publish in the selected mode, and drive the PR.
datalad
Retrieve, version, and publish scientific datasets with DataLad and git-annex, and capture computational provenance with datalad run, rerun, and containers-run. Use when cloning or fetching data from OpenNeuro, DANDI, datasets.datalad.org, or any DataLad dataset; when a file in a dataset reads as a broken symlink or a…
create-pr
Creates a GitHub PR with a Linear-ticket-prefixed title and a decision-led, narrative description for Prisma 8. Use when the user wants to create a pull request, open a PR, or submit changes for review.
git-commit
Generate well-formatted git commit messages following conventional commit standards.
repo-sync
Manage automatic Git syncing on macOS with repo-sync. Use only when the user explicitly invokes /repo-sync.