Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

meeting-minutes-retriever

v1.0.0

Read meeting minutes or notes from a local file path or URL, or inspect a local meeting-notes directory and report the file count plus file list. Use when th...

0· 200·0 current·0 all-time
by曹广雨@xiaocaijic

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for xiaocaijic/meeting-minutes-retriever.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "meeting-minutes-retriever" (xiaocaijic/meeting-minutes-retriever) from ClawHub.
Skill page: https://clawhub.ai/xiaocaijic/meeting-minutes-retriever
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install meeting-minutes-retriever

ClawHub CLI

Package manager switcher

npx clawhub@latest install meeting-minutes-retriever
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The name/description ask for reading local files, directories, or URLs and listing meeting-note files; the included scripts implement exactly that. Required binaries, env vars, and config paths are none, which aligns with the stated functionality.
Instruction Scope
SKILL.md restricts behavior to reading files/URLs or listing directories and requires user-supplied locations. The runtime scripts follow that scope (reading files with multiple encodings, fetching URLs with requests, listing .md/.txt files). Note: the directory lister uses OS-native commands (find on Unix, PowerShell on Windows) invoked via subprocess; on Windows the PowerShell script embeds the provided path in a script string without escaping single quotes, which could be fragile or lead to mis-parsing for specially crafted paths. Also the reader will fetch arbitrary URLs (requests.get) which can leak metadata or contact external servers if the agent environment allows network access — this is expected for URL fetches but worth being aware of.
Install Mechanism
No install spec (instruction-only with included scripts). No downloads or external installers. Code files are included directly in the skill bundle, so nothing is fetched or executed at install time.
Credentials
The skill requests no environment variables or credentials. It does use the network (requests) to fetch URLs and runs local filesystem access, both of which are consistent with its purpose and do not require additional secrets.
Persistence & Privilege
always is false and the skill does not request persistent/system-wide privileges or modify other skills. It reads only user-provided paths/URLs and lists directory contents; it does not write configuration or attempt to persist beyond its own execution.
Assessment
This skill appears to do what it says: read meeting files or list meeting-note files. Before installing, consider the following: (1) The skill will read any local file path you provide and will fetch any URL you provide — only give it paths/links you trust. (2) The directory lister uses OS commands via subprocess; on Windows the PowerShell command embeds the path without escaping single quotes which could be fragile or potentially abused if untrusted paths are supplied. (3) Run the skill in a restricted/sandboxed environment if possible (limited filesystem access, limited network egress) and review the scripts if you need higher assurance. If you want a safer fix, replace shell-based listing with purely Python directory enumeration or ensure the path is properly escaped/validated before calling PowerShell.

Like a lobster shell, security has layers — review code before you run it.

latestvk97fznpsv4hh8h1bt0wz8scwn9832fg9
200downloads
0stars
1versions
Updated 2h ago
v1.0.0
MIT-0

Meeting Minutes Retriever

Use this skill to fetch raw meeting text first, then answer the user's question from that text. Use the directory lister when the user wants counts or file listings instead of reading one document body.

Trigger Rules

Use this skill when:

  • The user asks about meeting notes, meeting minutes, meeting conclusions, decisions, action items, owners, blockers, or what was discussed.
  • The user asks how many meeting-note files exist, which files exist, what the directory contains, or asks for a meeting-note file list.
  • The answer depends on a meeting record stored in a local text file, a local directory, or a URL.
  • The user refers to a Feishu document link as the source of the meeting content.

Do not use this skill when:

  • The user already pasted the full meeting text into the chat and only wants summarization or Q and A on that pasted text.
  • The request is general knowledge and does not depend on a meeting record.
  • The user explicitly says not to open files or URLs.

Workflow

  1. Check the conversation for a meeting-notes location.
  2. Accept either:
    • a local file path such as D:\docs\meeting.txt
    • a local directory path such as D:\docs\meetings
    • a URL such as https://...
  3. If no location is available, stop and ask: Please send the local file path, directory path, or Feishu link for the meeting notes.
  4. Resolve skill resources relative to the skill directory that contains this SKILL.md.
  5. If the user asks for counts, directory contents, file totals, or file lists, use scripts/list_meeting_files.py.
  6. If the user asks about the contents of one meeting record, use scripts/read_meeting_data.py or the same logic to read the content into a single string.
  7. If the script result starts with ERROR:, show that error to the user and ask for a corrected path, directory, or URL.
  8. If the directory listing succeeds, answer with the count and the file list.
  9. If the file read succeeds, read the full raw text and answer the original question from that source text.

Rules

  • Do not parse, summarize, classify, or structure the document inside the reader tool.
  • Do not assume file type from the extension. Just attempt to read it as text.
  • Treat Feishu links as best-effort URLs only. Direct requests may fail for login-protected, permission-gated, or JavaScript-rendered Feishu pages.
  • Keep the tool interface stable as read_meeting_data(location).
  • Future Feishu API logic should be added inside the same reader function without changing its argument shape.
  • Keep the directory tool interface stable as list_meeting_files(location, recursive=False).
  • Prefer the directory tool for requests containing words such as 多少, 几个, 数量, 列表, 目录, 有哪些文件, file count, or list files.

Tool Contract

Implement a function named read_meeting_data(location) with this behavior:

  • Local path:
    • Resolve to an absolute path.
    • Try multiple text encodings before failing.
    • Return the file contents as a string.
  • URL:
    • Fetch with a basic timeout on a best-effort basis.
    • Return the response text as a string.
  • Errors:
    • Return human-readable error strings starting with ERROR:.

Implement a function named list_meeting_files(location, recursive=False) with this behavior:

  • Local directory:
    • Resolve to an absolute path.
    • Detect the current OS and use an OS-appropriate system command first.
    • Return a JSON string containing directory, total_files, and files.
  • File filtering:
    • Count supported meeting-note files only: .md and .txt.
  • Errors:
    • Return human-readable error strings starting with ERROR:.

Resource

  • Reader script: scripts/read_meeting_data.py relative to this skill directory
  • Directory lister script: scripts/list_meeting_files.py relative to this skill directory

Comments

Loading comments...