ResearchMonitor
v0.1.2Monitors research topics for new papers, conferences, and journals.
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name and description match what is implemented: a small local config (research_config.json), a helper script (scripts/daily_briefing.py) to manage topics/seen items/last-checked, and instructions to search the web for new items. Nothing requested or included (no env vars, no external credentials, no unrelated binaries) is disproportionate to monitoring research.
Instruction Scope
SKILL.md confines the agent to reading/updating the local config and to performing web searches (via the agent's search_web tool) against public sources (arXiv, IEEE Xplore, Google Scholar, X). There is no instruction to read unrelated system files or transmit the local config to remote endpoints. Note: the skill relies on the agent's web-search capability to fetch public content — how that is done depends on the agent environment (not the skill).
Install Mechanism
No install spec; instruction-only plus one small Python script included. No downloads, extract steps, or third‑party package installs are present.
Credentials
The skill requests no environment variables, no credentials, and only reads/writes a single local JSON config. There are no unexplained secrets or access requests beyond what the skill needs to track topics and seen items.
Persistence & Privilege
always is false (default). The skill only updates its own config file and does not attempt to modify other skills or global agent settings. It can be invoked autonomously per platform defaults, which is expected for this kind of helper.
Assessment
This skill appears internally consistent and low-risk: it reads and updates a local JSON (research_config.json) and runs a small Python helper included in the package. Before installing, confirm you trust the skill owner and that you are comfortable storing research topics locally in the skill directory. Ensure the agent environment has Python available and that the agent's web-search capability is acceptable for your privacy needs (the skill will perform web searches of public sources). If you prefer, inspect or edit research_config.json yourself rather than letting the agent write it, and restrict network access if you do not want automated web fetching. If you have sensitive topics you don't want logged, avoid storing them in the config.Like a lobster shell, security has layers — review code before you run it.
latest
ResearchMonitor
This skill helps you keep the user updated on their specific research field.
Workflow
-
Check Configuration:
- Read
research_config.jsonin this directory to find the user's research topics and last checked date. - If the file doesn't exist or topics are empty, ask the user what research topics they are interested in and save them using
scripts/daily_briefing.py --add-topic "topic".
- Read
-
Daily Check:
- Get the current date.
- Compare with
last_checkedinresearch_config.json. - If already checked today, do nothing unless explicitly asked.
-
Perform Search:
- For each topic, use
search_webto look for:- "new research papers [topic] [current month/year]"
- "upcoming conferences [topic] [current year]"
- "new journal issues [topic] [current month/year]"
- Check specialized platforms like arXiv, IEEE Xplore, Google Scholar (via web search), or X (Twitter) if relevant.
- For each topic, use
-
Filter & Analyze:
- For each potential item found, use
scripts/daily_briefing.py --check-seen "URL or Unique Title". - If it returns "true", SKIP IT.
- Compare found items with what might have been seen yesterday (this requires some memory or just checking if the publication date is very recent, e.g., last 24-48 hours).
- CRITICAL: If there is nothing significantly new (no new major papers, no new conference announcements), DO NOT BOTHER THE USER.
- For each potential item found, use
-
Report:
- If new items are found, compile a brief markdown report.
- Include:
- Title: News/Paper Title
- Source: URL/Journal Name
- Summary: 1-sentence summary of why it's relevant.
- Present this to the user.
- Mark the items as seen using
scripts/daily_briefing.py --mark-seen "URL or Unique Title". - Update the
last_checkeddate usingscripts/daily_briefing.py --update-date.
Scripts
python scripts/daily_briefing.py --add-topic "topic": Adds a new research topic.python scripts/daily_briefing.py --list-topics: Lists current topics.python scripts/daily_briefing.py --update-date: Updates the last checked timestamp to now.python scripts/daily_briefing.py --check-seen "ID": Checks if an item ID (URL/Title) is already in memory.python scripts/daily_briefing.py --mark-seen "ID": Marks an item ID as seen.
Comments
Loading comments...
