Chinese docs and DeepSeek Harness define the audience
anime-find is an extension for DeepSeek Harness Web, not a standalone anime application. Its README, setup screens, examples, and troubleshooting are Chinese, with no English section. After installation, the plugin gives the agent an anime_find_search tool and renders the response as interactive cards. A user can ask for a title, request another batch, open details, browse releases by group or episode, and copy a magnet link without leaving the conversation.
That narrow integration is both its charm and its first gate. Node.js 22 or newer is required, along with a working dsh web profile and a configured model provider. Our checkout was small: 57 files, roughly 5,997 source lines, and 1.9 MB. Users already inside Harness add one npm package. Everyone else would first be installing and operating an agent interface merely to gain an anime-search panel.
Three search sources trade one outage for partial results
Mikan is enabled by default, while AniBT and AnimeGarden are optional. The tool sends search and detail requests to each enabled site, normalizes the results, and can continue when one source fails. Cards include titles, covers, ratings, formats, and resource counts where the upstream data supplies them. Season detection uses the Asia/Shanghai timezone, which matches the plugin's Chinese audience and may differ from a user's local calendar near a season boundary.
Bangumi enriches a selected title rather than every search result. Its public v0 API supplies the description, rating, and basic record. Short reviews use a non-public p1 endpoint and the README warns that this can change; the tab disappears if it stops working. Our 50-package install did not contact or grade any of these sources. Their uptime, HTML structure, rate controls, and content completeness remain external dependencies even though the local build and tests passed.
What happened when we ran it
Our sandbox installed commit c3f69a5 in 10 seconds, adding 50 packages and using 78 MB. The TypeScript build succeeded in 5 seconds. Node's test runner then finished in 5 seconds with 102 passed and 0 failed out of 102. The test command itself rebuilds the project before running compiled test files, so the successful result covered both compilation and the repository's available automated cases.
The repository uses pnpm workspaces and had 2 CI workflow files, with tests stored under src/tests rather than a root tests directory. Our run used a fresh Node 22 Debian container with 3 CPUs, 8 GB of RAM, no secrets, and no privileged access. We did not launch Harness, connect a model provider, query live anime sites, open a torrent, or play a stream. The 102 passing cases are strong local evidence, while live compatibility still needs an end-to-end check.
Static streaming rules reject private network destinations
The optional streaming tab parses user rules built from CSS selectors or a restricted XPath subset. Rules describe a source site, search pages, episode lists, and playback URLs. A playURL can come from an element attribute or a named object inside an inline script, covering a common MacCMS pattern. Dynamic scripts, XPath functions, text-match predicates, Kazumi WebView interception, and automatic community-rule syncing are outside the documented first version.
Network restrictions are specific. Page requests stay on the rule's own site. Media requests may reach only that host and explicitly listed mediaHosts; private, loopback, and link-local addresses are rejected. HLS playlists have their segment URLs rewritten through the constrained proxy. This does not prove every parsing rule is safe, but it avoids turning the 78 MB plugin environment into an open proxy for arbitrary destinations. Operators still decide which third-party domains they trust.
npm is the supported install path
The documented command installs @cocofhu/anime-find into the Harness web profile. Afterward, users restart dsh web and force-refresh the browser. GitHub shorthand and the old unscoped package name are explicitly discouraged. Closed issue 23 records why: git-hosted packages run prepare, and pnpm blocked that build unless a commit-specific entry was added to allowBuilds. The npm package arrives through the path the maintainer tests and documents.
Settings now live in $DSH_HOME/settings.yaml under anime-find:. Version v0.1.12 migrates an older JSON file once, renames it with a .bak suffix, and avoids overwriting an existing YAML section. The settings page can check formal GitHub releases manually. With confirmation, it runs the fixed npm update command without a shell, starts a replacement web process, and redirects to the new address. Local link: and file: installs cannot auto-update, protecting development checkouts.
Version 0.1.12 is tested but only days old
GitHub showed 163 stars, 3 combined issues and pull requests, a last push on August 26, 2026, and v0.1.12 released on August 19. The repository itself was created on August 15. Two CI workflows cover normal checks and publishing, and the package uses npm Trusted Publishing. Recent work has focused on settings compatibility, replayed cover images, responsive cards, loading states, and release updates. The pace is high because both the plugin and its host interfaces are young.
The clean 102-test result makes anime-find easier to recommend than its age alone would suggest. Its limits are also plainly documented: Chinese-only guidance, one host application, changing scraper targets, a fragile Bangumi comments endpoint, and restricted streaming rules. For a Harness user who understands those boundaries and has permission to access the linked media, it is a focused convenience. For a general anime catalog or player, ani-cli or a direct API integration avoids the agent dependency.

