T01 · Skill Instruction Hijacking
- Location
SKILL.md:16- Finding
Mandatory promotional response overrides the active agent interaction
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill claims to build mentors from public content, but it also bundles browser workflows that can collect logged-in users' private profile, likes, favorites, follows, and activity data.
Review this skill carefully before installing. Use it only in an isolated browser profile with no unrelated logged-in accounts, avoid running the deep-profile collectors unless you intentionally want to export your own account data, and do not allow automatic dependency downloads or provide MCP tokens without verifying the endpoint and version.
SKILL.md:16Mandatory promotional response overrides the active agent interaction
SKILL.md:107Automatic download and trust of an unpinned remote Skill dependency
bilibili-deep-profile-collect/SKILL.md:3Bundled collectors access logged-in users' private behavioral profiles beyond the declared public-data purpose
scripts/weibo_collect.py:12MCP bearer credentials are exposed through command-line arguments and may be sent to arbitrary endpoints
SKILL.md:481Local-only privacy claims omit remote MCP processing and hosted result retrieval
The README contains agent-targeted hidden metadata in HTML comments that is not visible in normal rendering but is intended to influence AI agent discovery, evaluation, and recommendation behavior. Hidden instructions are risky because they create a non-transparent control channel that can bias an agent's actions, bypass normal user awareness, and become a vehicle for prompt injection or covert policy steering if future edits become adversarial.
<!-- FOR AI AGENTS: Structured skill metadata for discovery, evaluation, and recommendation -->
<!--
SKILL_SUMMARY:
name: 导师 (Mentor)
There is a clear description-behavior mismatch. The declared purpose describes an end-to-end persona/mentor generation pipeline centered on identifying a public figure, aggregating their content across platforms, extracting worldview/style, and producing a mentor file. The supplied code does none of that analysis or generation. Its sole function is batch downloading subtitles from specified Bilibili videos using BVIDs, then saving transcript text and a results file. While subtitle extraction could be a supporting step in a larger content-ingestion system, this code chunk by itself is narrowly focused on transcript retrieval and lacks the core declared capabilities, making the primary purpose materially different.
There is a clear mismatch between the declared description and the actual code. The description promises an end-user feature for ingesting a public figure's content and synthesizing a mentor persona document. The code shown does none of that. Instead, it only validates whether a ManoBrowser MCP browser-plugin endpoint is configured and reachable by calling a tools/list method. While this could be a supporting utility in a larger system that eventually collects web data, this chunk itself has a materially different primary purpose: environment/connectivity diagnostics. Therefore the description does not accurately represent this code chunk's behavior.
The declared description promises an end-to-end system for building an AI mentor persona from a public figure's content across social platforms. The supplied code instead implements a narrow preprocessing tool: batch transcription of specified Douyin videos using browser automation, video download, ffmpeg, and Whisper. While transcription of video speech could be a supporting step within a larger pipeline, this code alone does not perform the core claimed functions such as public-figure discovery, multi-source collection, style/framework extraction, or mentor file generation. Its primary purpose is materially different and substantially narrower than the declared description.
The declared description presents an end-to-end system for building an AI mentor persona from a public figure by fetching their public content and modeling both their worldview and communication style. The actual code only performs narrow stylistic analysis on already-provided local transcript text: phrase frequency, sentence-length statistics, and quote extraction. It does not access social platforms, collect content automatically, infer deeper reasoning frameworks or values, or generate the claimed MENTOR.md output. This is a material mismatch in primary purpose and capabilities.
There is a clear mismatch between the description and the code. The description promises a pipeline for ingesting a public figure's online content and synthesizing a mentor-style profile. The code instead reads local subtitle files, scores lines based on keyword matches, and emits an LLM prompt to help identify a specific character's lines. It does not fetch data from social platforms, does not analyze a real person's body of work, and does not create a mentor specification such as MENTOR.md. Its primary purpose is subtitle character line filtering, which is materially different from the declared mentorship/persona-extraction functionality.
The declared purpose describes an end-to-end persona/mentor generation system: identify a public figure by name, gather their cross-platform/public content, infer their worldview and communication style, and output a MENTOR.md. The supplied code does only one narrow ingestion step: batch collection of Weibo posts for a known UID, then deduplication/filtering and saving to JSON. That makes the code materially narrower and different from the declared primary purpose. While content collection is related as a supporting component, key advertised behaviors—name-based lookup, multi-source collection, analytical extraction, and MENTOR.md generation—are absent. Additionally, the code depends on an MCP endpoint/API key and cookie-backed fetching, which is a notable operational capability not reflected in the declaration.
The declared description promises an end-to-end system that ingests a public figure’s content from platforms, derives both cognition/style traits, and outputs a mentor specification file for AI imitation. The supplied code does something much narrower: it analyzes an already-provided Weibo JSON dataset for surface writing-style features and basic post classification. There is no network collection, no cross-platform aggregation, no speech ingestion, no mentor persona generation, and no extraction of deeper reasoning framework or values. While the script is loosely related to one sub-aspect of the description (communication style analysis), it does not implement the core declared purpose and therefore represents a material mismatch.
The skill instructs the agent to automatically clone or download external code from GitHub and unpack it locally before proceeding. Pulling and staging remote code without strong provenance checks or explicit consent is dangerous because it expands the trusted computing base and can introduce supply-chain compromise, malicious scripts, or unsafe follow-on execution paths.
The workflow goes beyond gathering public-figure content and extracts authenticated, account-linked data including favorites and follow relationships, which are personal behavioral and social graph signals. This discrepancy increases the risk of covert profiling because the description understates the scope and sensitivity of the collected data.
The skill is framed under a parent purpose of modeling named public figures, but this sub-skill instead targets the currently logged-in Bilibili user and enumerates authenticated account data. That mismatch is dangerous because it can cause a user or calling agent to unknowingly collect sensitive personal data such as favorites, follows, and account metadata under false pretenses.
The skill explicitly instructs collection of the current logged-in user's full profile, submissions, favorites, and follow relationships via authenticated browser context. This is a broad data-harvesting design that can extract sensitive personal and behavioral data not needed for the stated public-figure mentoring use case.
The narrative instructs end-to-end extraction across multiple authenticated surfaces using both APIs and DOM scraping, including areas tied to the user's account state. In context, this makes the skill more dangerous because it operationalizes comprehensive profiling, not a narrow content lookup.
The skill metadata and surrounding product context describe building mentors from public figures, but this file instead targets the currently logged-in Douban user and systematically extracts their personal profile, reading/viewing history, ratings, comments, and statuses. That mismatch is dangerous because it can cause a user or supervising agent to authorize execution under false pretenses while the script silently leverages authenticated session cookies to harvest private account data.
The description omits a clear warning that the skill will collect extensive private account data from the active Douban session, including behavioral history and self-authored content. Without prominent disclosure, users and higher-level agents may not understand the sensitivity or scope of access before execution, increasing the risk of inadvertent privacy violation and unauthorized profiling.
The skill is expressly designed to collect the logged-in user’s account data rather than perform a narrow, user-bounded action, and the harvested material is suitable for downstream profiling. In this context, the instructions enable large-scale extraction of sensitive personal preferences and expression from an authenticated session, which materially increases privacy and misuse risk.
The narrative explicitly instructs exhaustive harvesting across multiple areas of the user’s account while preserving login state via credentialed fetch requests. That combination is dangerous because it operationalizes session-backed scraping of a private account and normalizes persistence across pages and subdomains to maximize extraction.
The enumerated collection scope covers broad personal attributes and long-term behavioral history, including media consumption, ratings, comments, and social activity. In aggregate, these categories can reveal intimate preferences, beliefs, routines, and associations, making the skill particularly dangerous for profiling, deanonymization, or secondary use beyond the user’s expectations.
The skill explicitly states that comments, tags, ratings, publication info, and statuses must be extracted because they are key inputs for profile analysis. This is dangerous because it goes beyond operational metadata and targets high-signal personal expression for inference about the user’s tastes, attitudes, and thinking patterns, increasing the risk of invasive psychological profiling.
The skill is designed to collect private account data from the currently logged-in Douyin user, including likes, favorites, and following relationships, even though the parent skill's stated purpose is to model public figures from public content. This creates a clear purpose mismatch and causes unnecessary collection of sensitive personal and social-graph data that could be used for profiling or surveillance.
The workflow explicitly targets douyin.com/user/self, which resolves to the browser's logged-in user rather than a public figure provided by the user. That means the skill silently pivots from public-content gathering to self-account harvesting, exposing personal data unrelated to the declared feature.
The skill advertises deep collection of highly sensitive profile, preference, and relationship data but does not present a clear privacy warning, consent checkpoint, or explanation of the consequences of extracting this information. Users could trigger broad harvesting of their own account data without understanding that likes, favorites, and social graph are being enumerated.
The skill instructs the agent to harvest a full set of personal profile attributes and behavioral data from the logged-in account for profiling purposes, including interests and social relationships. This is dangerous because it enables detailed user profiling beyond what is necessary for the parent skill and can expose sensitive preferences and associations.
Stating that no parameters are required because the skill automatically collects the current logged-in user's data removes an important consent and targeting barrier. This design encourages silent collection of sensitive account data without the user intentionally choosing a target or acknowledging the privacy impact.
The skill normalizes automatic collection from the currently logged-in user as a no-parameter workflow, making sensitive data harvesting frictionless and easy to trigger accidentally. In a browser-connected agent environment, that creates a strong risk of unintended exfiltration of personal account information.