Scan Report
5 /100
nuomi-xhs-card
Local Markdown/MDX to Xiaohongshu-style card image generator with 24 themes, light/dark modes, and intelligent pagination
This is a legitimate local Markdown-to-image card renderer with no malicious behavior. All functionality is properly documented and implemented using standard Node.js tooling (Playwright, React, unified ecosystem).
Safe to install
This skill is safe to use. No security concerns identified.
Findings 2 items
| Severity | Finding | Location |
|---|---|---|
| Low | Remote image fetching in weChat mode | scripts/src/core/structure.ts:22 |
| Info | Standard Playwright browser installation | scripts/setup.sh:14 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ | WRITE | ✓ Aligned | Reads markdown, writes PNG outputs and report JSON |
| Network | NONE | READ | ✓ Aligned | scripts/src/core/structure.ts:22 - fetch() for remote images in weChat mode |
| Shell | WRITE | WRITE | ✓ Aligned | scripts/setup.sh uses npm ci/install and npx playwright install |
2 findings
Medium External URL 外部 URL
http://www.w3.org/2000/svg assets/templates/alibaba.html:180 Medium External URL 外部 URL
https://opencollective.com/unified scripts/package-lock.json:511 File Tree
44 files · 472.2 KB · 18462 lines HTML 24f · 13133L
JSON 3f · 3230L
TypeScript 10f · 1611L
Markdown 5f · 459L
Shell 1f · 17L
JavaScript 1f · 12L
├─
▾
assets
│ ├─
▾
templates
│ │ ├─
alibaba.html
HTML
│ │ ├─
apple-notes.html
HTML
│ │ ├─
art-deco.html
HTML
│ │ ├─
business.html
HTML
│ │ ├─
bytedance.html
HTML
│ │ ├─
coil-notebook.html
HTML
│ │ ├─
cyberpunk.html
HTML
│ │ ├─
darktech.html
HTML
│ │ ├─
dreamy.html
HTML
│ │ ├─
fairytale.html
HTML
│ │ ├─
glassmorphism.html
HTML
│ │ ├─
instagram.html
HTML
│ │ ├─
japanese-magazine.html
HTML
│ │ ├─
meadow-dawn.html
HTML
│ │ ├─
minimal.html
HTML
│ │ ├─
minimalist.html
HTML
│ │ ├─
nature.html
HTML
│ │ ├─
notebook.html
HTML
│ │ ├─
pop-art.html
HTML
│ │ ├─
traditional-chinese.html
HTML
│ │ ├─
typewriter.html
HTML
│ │ ├─
warm.html
HTML
│ │ ├─
watercolor.html
HTML
│ │ └─
xiaohongshu.html
HTML
│ └─
preview-template.md
Markdown
├─
▾
references
│ ├─
cli-reference.md
Markdown
│ └─
templates.md
Markdown
├─
▾
scripts
│ ├─
▾
src
│ │ ├─
▾
browser
│ │ │ └─
page.tsx
TypeScript
│ │ ├─
▾
core
│ │ │ ├─
markdown.ts
TypeScript
│ │ │ ├─
paginate.ts
TypeScript
│ │ │ ├─
preview.ts
TypeScript
│ │ │ ├─
render.ts
TypeScript
│ │ │ ├─
structure.ts
TypeScript
│ │ │ ├─
template.ts
TypeScript
│ │ │ ├─
themes.ts
TypeScript
│ │ │ └─
types.ts
TypeScript
│ │ └─
cli.ts
TypeScript
│ ├─
package-lock.json
JSON
│ ├─
package.json
JSON
│ ├─
setup.sh
Shell
│ ├─
tsconfig.json
JSON
│ └─
xhs-card.cjs
JavaScript
├─
SKILL.md
Markdown
└─
test.md
Markdown
Dependencies 5 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
playwright | ^1.55.0 | npm | No | Standard browser automation tool |
@mdx-js/mdx | ^3.1.1 | npm | No | Official MDX processor |
react | ^19.1.1 | npm | No | Standard UI library |
cheerio | ^1.1.2 | npm | No | Standard HTML parser |
unified | ^11.0.5 | npm | No | Standard Markdown processor |
Security Positives
✓ No credential harvesting or environment variable access for secrets
✓ No exfiltration of user data or system information
✓ No reverse shell, C2, or command-and-control functionality
✓ No base64-encoded shell commands or obfuscated payloads
✓ No hidden JavaScript in HTML templates (pure CSS styling)
✓ Network fetch() is only for converting remote images to data URLs in weChat mode
✓ Uses well-established, audited packages (React, Playwright, unified, cheerio)
✓ All shell commands (npm install, playwright install) are standard tooling
✓ Local file operations are scoped to user-specified input/output paths