Add plugin: jcaiagent7143-ui/linkdigest v0.1.0 - #3044
Open
jcaiagent7143-ui wants to merge 2 commits into
Open
Conversation
…ans.md The pre-check rejected 7 CJK characters in the primary README. Those were platform names in a table; the prose is now English-only and the full Chinese version lives in README.zh_Hans.md, including the Bilibili 412 refusal and the Instagram caveat.
14 tasks
Member
|
PR body is missing the 'What changed' section |
Author
|
Thanks — all three were mine, and all three are fixed in the body above.
The package itself is unchanged and was never the problem — Lesson taken: the checker matches section headings literally, so I should have copied the template rather than improving on it. |
The failing run's only blocking error was pr_body_errors.txt; every package check passed. The body now uses the template headings verbatim and contains no CJK. No file changes — this commit exists only to fire the synchronize trigger.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Plugin Submission
Plugin information
dify/)Submission type
What changed
New plugin. One tool,
digest_url(url, format), that turns a Xiaohongshu (RedNote), Douyin, TikTok, YouTube or X link into text a workflow can use: transcript with timecodes, on-screen text, a description and OCR of every image, the caption and metadata, as Markdown or JSON.The plugin runs nothing locally. It calls the hosted LinkDigest REST API (
https://linkdigest.dev) with the user's own API key from the provider credential. Long media exceeds a single request, so the API answers 202 with a job id and the plugin polls it to completion (deadline 210 s; a 17-image RedNote note measures about 119 s end to end). Credential validation hits an authenticated endpoint that starts no digest, so validating a key spends nothing.What it does not do, stated in the README and in the tool's LLM-facing description: Bilibili is not supported (the service's address receives HTTP 412), Instagram is wired but not verified end to end, Facebook is out of scope.
Relative to #3026, which was closed because the pre-check found seven Chinese characters in the primary
README.md:README.mdis now English throughout and contains zero Chinese characters.README.zh_Hans.mdadded, carrying the full Chinese version, including the parts that are easiest to lose in a translation: the Bilibili refusal, the Instagram caveat, and the Facebook exclusion.tests/test_dify_readme_locale.py) fails if Chinese characters return to the primary README, if the localized file goes missing or stops being linked, or if those three caveats are dropped from the translation. It was verified to fail against the exact content Add plugin: jcaiagent7143-ui/linkdigest v0.1.0 #3026 was closed for.Every other file in the package is byte-identical to #3026.
Risk level
Medium because the tool accepts a user-provided URL and sends it to an external service. The plugin itself fetches only
linkdigest.dev; it does not fetch the user's URL. The URL is validated server-side (http/https, 2048 characters maximum) before any fetch happens.Required checks
.envfiles,.gitdirectories, virtual environments, caches, logs, or IDE files.PRIVACY.mdor a hosted privacy policy, andmanifest.yamlreferences it.Stated precisely, because my checklist on #3026 claimed this and was wrong:
README.mdis 100% English, enforced by a test. Chinese prose lives inREADME.zh_Hans.md. Thezh_Hansvalues insidemanifest.yaml,provider/linkdigest.yamlandtools/digest_url.yamlare localized label and description fields keyed by locale, which is what those fields exist for. I am flagging them explicitly rather than letting the checkbox imply the package contains no Chinese text anywhere.Limitation, documented as the third check requires: I have not run this inside a Dify Community Edition or Dify Cloud instance. What was tested is in Local validation below. If the reviewer would like a run inside Dify before merging, say so and I will provide one.
Security and privacy notes
linkdigest.devonly (declared inmanifest.yaml), over HTTPS.PRIVACY.mdstates this.Authorization: Bearerheader, never logged, and not echoed in error messages.Local validation
tests/test_dify_plugin_honest.pyholds every platform claim in the manifest, provider, tool and both READMEs to the service's own coverage table, so the plugin cannot advertise a platform the service does not read.Reviewer notes
Single file:
jcaiagent7143-ui/linkdigest/linkdigest-0.1.0.difypkg. Source is public in the repository above underdify/, identical to the package contents.Resubmission of #3026. Apologies for the round trip on the section headings: I retitled "What changed" and "Local validation" in the previous body, which is why the checker reported them missing. They are verbatim now.
🤖 Generated with Claude Code
https://claude.ai/code/session_01DpGW9DbqX9bkgv4RTETBmV