Repository navigation
Conversation
The daemon requires the author part of a plugin_unique_identifier
to match [a-z0-9_-]{1,64}; the mixed-case GitHub username was
rejected at install time. Verified end-to-end on Dify Community
Edition: the package now uploads, installs, and its credential
validation runs against the live API.
721540f to
5eb95f7
Compare
End-to-end verification on Dify Community Edition (done ✅)Installed and exercised the plugin on a fresh Dify Community Edition deployment (Docker Compose, What was verified
One real bug this E2E caught (fixed in 5eb95f7)The first package failed to install with Environment notes
|
|
Thank you for contributing this plugin and for the work you put into the submission. I’m closing this PR for now because the latest Pre Check Plugin run failed on the current revision. The blocking issues reported by CI are:
Please address the issues above and run the local validation steps in the submission requirements. Once corrected, you’re welcome to reopen this PR or submit an updated one for review. Thank you for helping keep Marketplace submissions reliable. |
Plugin Submission
Plugin information
Submission type
What changed
New tool plugin for the DeepSeek Tools API (
https://api.deepseek.com/v1/tools/searchand/v1/tools/fetch), which uses the same API key as the DeepSeek model platform. Two tools:deepseek_web_search— AI-native web search. Each result carriestitle,url,snippet,summary,site_name,date,rerank_score(0-3), andauthority(0-4), so agents can filter on quality instead of trusting position order. Supports DeepSeek's search operators (site:,-site:,-"excluded phrase","exact phrase",lang:,after:,before:), which are passed through as-is. Optionalori_questionimproves relevance;need_contentoptionally includes full extracted page content.deepseek_web_fetch— fetch a single page via DeepSeek's fetch infrastructure and returntitle+ body as clean Markdown. The plugin forwards only the URL; retrieval/extraction happen on DeepSeek's side.Design notes:
dify_pluginandhttpx— a single sharedhttpx.Client(Bearer auth, 60 s timeout) against the two fixed endpoints.user:pass@), matching the API's documented URL constraints.PRIVACY.mdstates exactly what is sent to DeepSeek (query/URL parameters only) and that nothing is stored or logged locally.Risk level
Search queries and fetch URLs are user content sent to an external service (DeepSeek). All requests target the single fixed host
api.deepseek.com; the plugin executes no code, commands, SQL, file operations, or browser automation, and does not proxy arbitrary URLs itself.Required checks
.envfiles,.gitdirectories, virtual environments, caches, logs, or IDE files.PRIVACY.mdor a hosted privacy policy, andmanifest.yamlreferences it.Limitation note: none. Fully verified end-to-end on Dify Community Edition (install, credential validation, live tool calls for both tools) — see the verification report comment below.
Security and privacy notes
api.deepseek.comwith the user's own Bearer key.Local validation
yaml.safe_load; provider and both tool classes import cleanly underdify_plugin>=0.9.0.deepseek_search-0.0.1.difypkgcontains exactly the 18 runtime files (source + docs + icon), no caches/tests/secrets.Reviewer notes
.difypkgin this PR was produced from the committed source tree at the same commit.deepseek_web_fetchfetches pages through DeepSeek's own fetch service; the plugin itself only calls the fixed DeepSeek endpoints.