Skip to main content

local-difypkg-validator

Validate a local Dify .difypkg file with bundled Marketplace package validators. Use when a user wants to check a downloaded or locally built plugin package before submitting a PR, including package contents, secrets, binaries, manifest/privacy, README, dependencies, outbound access domains, dependency vulnerabilities, Python safety warnings, and financial-activity review signals.

来源信息

仓库
langgenius/dify-marketplace-toolkit
最近来源活动
2026年8月14日 10:14
检测到的 SKILL.md 语言
英语
星标
7
分支
9

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
44 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
local-difypkg-validator
description
Validate a local Dify .difypkg file with bundled Marketplace package validators. Use when a user wants to check a downloaded or locally built plugin package before submitting a PR, including package contents, secrets, binaries, manifest/privacy, README, dependencies, outbound access domains, dependency vulnerabilities, Python safety warnings, and financial-activity review signals.
# Local DIFYPKG Validator Use this skill when the user wants to validate a local `.difypkg` package without opening or reviewing a GitHub PR. ## Workflow 1. Get the local `.difypkg` path from the user. 2. Check prerequisites before running validation: ```bash command -v python3 command -v yq ``` If `python3` is missing, ask the user before installing or direct them to install Python. If `yq` is missing, ask whether to install it with Homebrew (`brew install yq`) before continuing. Do not install dependencies silently. 3. Run the bundled validator CLI from this skill: ```bash python3 validator/validate-difypkg.py /path/to/plugin.difypkg ``` 4. The wrapper script is also available for agent environments that prefer `scripts/` entrypoints: ```bash python3 scripts/validate_difypkg.py /path/to/plugin.difypkg ``` 5. By default, the skill uses its bundled `validator/` directory. To force use of an external toolkit checkout, pass: ```bash python3 scripts/validate_difypkg.py /path/to/plugin.difypkg --toolkit-dir /path/to/dify-marketplace-toolkit ``` 6. Report the summary table and the report directory path. 7. Treat exit code `0` as pass with possible warnings; exit code `1` means blocking errors or environment failures were found. ## Optional Inputs - `--pr-body-file <path>`: run sensitive capability disclosure checks that need PR body text. - `--keep-temp`: keep the unpacked package and reports in the temp directory. - `--output-dir <path>`: write reports to a stable directory. - `--offline`: skip the dependency vulnerability lookup. ## Prerequisites `python3` and `yq` must be available. The manifest validator uses `yq`. The bundled validator CLI checks for `yq` at startup. In an interactive terminal it prompts before running `brew install yq`; in non-interactive environments it prints the install command and exits with code `1`. ## Coverage Default local validation covers checks that can be evaluated from the `.difypkg` itself: - package path and safe unzip - package contents, size, and file count - secret patterns - executable binaries and platform daemon names - manifest metadata and privacy policy - README metadata - dependency policy - Python compile check - Python safety warnings - prohibited financial activity review warnings - outbound access domains vs. the optional `network.domains` manifest node - dependency vulnerabilities looked up in the OSV database The dependency vulnerability check is the only one that reaches the network. Pass `--offline` to skip it; the run then reports the dependency set without a verdict rather than reporting a clean one. The skill is self-contained for local package checks: copying or installing the `local-difypkg-validator` folder includes the validator scripts it calls. It does not submit GitHub reviews and does not run PR-only checks unless the required local input is provided. PR title/body language, PR template completeness, and Marketplace duplicate-version checks remain PR/CI workflow responsibilities. ## Expected Response Summarize: - whether the package passed blocking checks - blocking categories and first few findings - warning categories and first few findings - skipped PR-only checks - report directory path
在 GitHub 查看