Getting it into your agent
There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.
Wrote 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/rules/eliornl/rolemule/frontend-build-pipeline)<a href="https://agentmods.dev/rules/eliornl/rolemule/frontend-build-pipeline"><img src="https://agentmods.dev/badge/rules/eliornl/rolemule/frontend-build-pipeline.svg" alt="Measured on agentmods" 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.00000 | $0.00833 |
| Opus 5 | $0.00000 | $0.00417 |
| Sonnet 5 | $0.00000 | $0.00167 |
| Haiku 4.5 | $0.00000 | $0.00083 |
Grade A, and why
frontend-build-pipeline 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 6d 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 — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Frontend Build Pipeline
RoleMule uses a dual pipeline unified by ui/scripts/build-all.mjs:
- Legacy esbuild (
ui/build.mjs) — minifies and content-hashes CSS only. - Vite (
ui/scripts/build-vite.mjs) — bundles each TypeScript page entry fromui/vite.entries.jsonas an IIFE, emits hidden source maps (.js.mapon disk, nosourceMappingURLin the bundle), content-hashes JS, and writesvite-manifest.json. - Merge — Vite keys override legacy keys in
ui/static/dist/manifest.json.
Jinja templates still use {{ asset_url('js/...') }} / {{ asset_url('css/...') }}. FastAPI resolves hashed paths via asset_url() in main.py.
Source of truth
| Kind | Location |
|---|---|
| Page / global scripts | ui/src/pages/*.ts (registered in ui/vite.entries.json) |
| Shared TS modules | ui/src/shared/*.ts |
| CSS | ui/static/css/ (still esbuild-minified) |
| Build output | ui/static/dist/ (gitignored) |
Running the Build
cd ui
npm install
npm run build # unified: legacy + vite + merge
npm run typecheck # tsc --noEmit
npm run test # vitest
macOS — use Make targets (quarantine strip for node_modules binaries):
make build-frontend
make setup
Windows — just build-frontend / just setup.
In development, asset_url() re-reads manifest.json every request when not in production — hard-refresh after npm run build.
Adding a New Page Script
- Create
ui/src/pages/my-page.ts - Add to
ui/vite.entries.json:"js/my-page.js": "src/pages/my-page.ts" - Reference in the template:
{{ asset_url('js/my-page.js') }} - Run
npm run build/make build-frontend
Migrating a leftover legacy file
cd ui
node scripts/migrate-js-to-ts.mjs js/some-file.js
npm run build
asset_url()
Unchanged: production uses /static/dist/<hashed>; missing manifest falls back to /static/<path>.
Source maps (production)
Vite builds use sourcemap: 'hidden': hashed *.js.map files are written next to bundles under ui/static/dist/js/ for server-side debugging, but browsers do not auto-load them (no comment in the bundle). Do not expose /static/dist/js/*.map publicly unless you accept revealing TS source structure.
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.
- 6d ago First seen · 81 lines · 0 tokens per session scan A 9ac5a42c0559
frontend-build-pipeline is a cursor rule published in the GitHub repository eliornl/rolemule (37 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 833 tokens. 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-08-30.
Other cursor rules, from other repositories
color-tokens
配色 token 规范——写任何颜色(Tailwind 类或 CSS)时参考,只用语义 token、禁硬编码.
desktop-layout
桌面端页面布局宽度规范——新增/修改页面时参考.
ui-designer
UI designer rules — theme variables, color usage, no literal hex in app code.
opensquad-ui
OpenSquad frontend visual system — soft tooling UI (Linear × Claude). Apply when editing nexuschat-pro UI, themes, or design tokens.
codex-premium-website-skills
Apply Codex Skills standards to frontend, website, motion, accessibility, QA, agent reasoning, and handoff work.
shadcn-tailwind-guide
本规范定义了使用 shadcn/ui 和 Tailwind CSS 开发新组件的标准流程和最佳实践。.