mosaic-headless@1.36.3
CAUTION· install onlyPublisher claims: "AI-agent skill: build Mosaic Pro (Nextend) WordPress sites by writing the underlying data model directly - 23 custom tables, no visual editor, no DOM. Every node type, style property and node property swept against a live install and asserted on the deliv" Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Install scripts ran; no agent task scenario for this bundle.- Tested
- install scripts, with decoy credentials in place · second launch with the clock 45 days ahead · every file read, file written and host contacted by what ran
- Not tested
- use of the skill by an agent
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; install scripts ran; no agent task scenario for this bundle) on 2026-11-14 and scored it 78/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Access to sensitive file paths; document.cookie access. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 2 scenarios · 0 deviationsStatic findings
[/\.env|secret|credential/i, "something that looks like a secret"],Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.…er's own validation refusing an empty submit | | `data/content-loop-verification.csv` | 15 | **driven live** - a slider, a tab bar, a list and a paginated archive whose children all come from one authored template repeated per post; the pa…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.…VEN rather than the default it falls back to | | `data/form-surface-verification.csv` | 23 | **driven live** - every field type Mosaic ships in one form: 1.0.12's buildable select opened, picked by click and by keyboard, its hidden input's…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.multi-steps-form-step) now kill the page instead - the renderFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.python tools/sweep_style_states.py --config sweep.json --post 20 --slug probe-lab --csv data/style-state-verification.csvFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.| `data/design-audit.csv` | 26 | **computed in Chromium** - contrast, font fallback, CJK tracking, overflow, measure. Empty means it ran and found nothing |Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.try { if (document.cookie) out['cookie'] = document.cookie; } catch (e) {}Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.…es it unparented. Resolves two BROKE_PAGE rows | | `data/conversion-verification.csv` | 8 | **converted then checked live** - an Elementor page rebuilt as Mosaic and held against its source (text, images, links, heading levels), then put t…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.python tools/verify_recipes.py --config c.json --post 292 --slug probe-recipes \Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.* npx mosaic-headless claude-code --globalFix: Pin versions and sources; vendor anything fetched at install time.python tools/sweep_components.py --config c.json --post 20 --slug probe-labFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why."\u7d93\u904e\u5b83\u81ea\u5df1\u7684"Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.python tools/sweep_components.py --config c.json --post 20 --slug probe-lab \Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.python tools/probe_accordion.py --config c.json --slug probe-lab --post 20Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.fail("browser-verification.csv has no not-comparable rows - a computed-value check "Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.r = subprocess.run([sys.executable, os.path.join(HERE, "mo.py")] + args,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.python tools/build_page.py --config c.json --spec spec.json --post 42 ...Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why."\u904e\u6ffe\u5668\u6e32\u67d3\u3002</p>"}},Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.* npx mosaic-headless --dry-run claude-codeFix: Pin versions and sources; vendor anything fetched at install time.* npx mosaic-headless --listFix: Pin versions and sources; vendor anything fetched at install time.python tools/verify_menus.py --config c.json --post <ID of menu-lab> --slug menu-lab \Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.band("cp-wp-s", "WORDPRESS / \u63a5\u56de\u539f\u751f\u5167\u5bb9",Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.* npx mosaic-headless # interactive (arrow keys, zh-TW)Fix: Pin versions and sources; vendor anything fetched at install time.# kill the request, the third kills the page for every visitor until you delete theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.T("p", "\u795e\u5948\u5ddd\u6c96\u6d6a\u88cf",Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.r = subprocess.run([sys.executable, os.path.join(here, name),Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.* npx mosaic-headless cursor --to /path/to/projectFix: Pin versions and sources; vendor anything fetched at install time."WordPress \u81ea\u5df1\u7684\u5167\u5bb9\u5340\u584a\uff0c"Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.Cost to the agent
Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.
Known vulnerabilities
No advisories in OSV for mosaic-headless@1.36.3 as of 6 min ago. This is the package itself, not its dependencies.
What would make this Verified
2 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim moksa1123: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- document.cookie access≈ +4 on the totalReplace encoded or assembled strings with plain literals and remove undeclared network calls.
- File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
- Process kill command≈ +2 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.