Install
openclaw skills install @llevm/skill-test-v4Prototype OpenClaw skill that reads SNS-style comments from a local text file or local HTTP test page.
openclaw skills install @llevm/skill-test-v4Use this skill when the user asks to update memory from a local SNS comment file or to test the IBIA watermark-memory prototype.
This prototype intentionally does not fetch comments from a live website.
It reads comments from a text file or a localhost HTTP test page, detects
watermarks, and appends one structured note block to MEMORY.md.
Convert one or more watermark-detected comments into organized memory notes:
M_g = P_g || (topic_1:summary_1) || ... || (topic_n:summary_n)
where:
P_g is the category prefix. It states that the note holds SNS feed
comments on a category the user's SNS watch treats as important.topic_i is the extracted topic.summary_i is a short summary of the detected comment content.Comments that fail watermark detection are not written.
The detector needs spaCy, YAKE, NLTK, and SciPy plus two downloaded models:
pip install spacy yake nltk scipy
python3 -m spacy download en_core_web_sm
python3 -c "import nltk; nltk.download('punkt_tab')"
Use a local text file with one comment per line. Markdown bullet format is preferred:
- That Galaxy S26 looks slick. Did you hear about the debate between Adobe Firefly and Midjourney? I think Adobe Firefly wins because licensing is safer.
Plain one-comment-per-line text also works.
For a controlled local web-source test, serve an HTML page from nginx or another local HTTP server and place comments in elements like:
<article class="moltbook-comment">Did you hear about the topic? Summary text.</article>
<div data-comment="Did you hear about another topic? Another summary."></div>
URL input is limited to local test hosts: localhost, 127.0.0.1, and
host.docker.internal. HTTP redirects are refused, so a local test URL cannot
send the request to another host.
Inside OpenClaw, run:
cd /home/node/.openclaw/workspace/skills/snswatcher
python3 prototype.py advertisement /home/node/.openclaw/workspace/comments_raw.md
For a local nginx-style HTTP test page:
python3 prototype.py advertisement http://127.0.0.1:8088/fake_reddit.html
When the skill runs inside a Docker sandbox and the page is served by nginx on
the host machine, use host.docker.internal instead of 127.0.0.1.
Required arguments:
advertisement, celebrity, political, or public_figure
(public also works as an alias of public_figure)Output:
comments=N watermarked=M and the memory path are printed to
stderr./home/node/.openclaw/workspace/MEMORY.md inside
OpenClaw, or ./MEMORY.md in a local demo folder. Use --memory-out only
when the memory file should be different.--dry-run prints the block and appends nothing.The normal run appends to MEMORY.md; that is what this skill is for. Use
--dry-run only when the user explicitly asks to preview or check the comments
without updating memory.
Each appended block is self-contained and starts with the heading
## IBIA Prototype Watermarked Memory. To undo an update, delete that block
from MEMORY.md; nothing else in the file is touched by this skill.
The script imports detect_watermark.py from this same skill folder.
detect_watermark() in-process. No
temporary files are created.watermarked is true.Did you hear about the debate between A and B? <comment summary>
Did you hear about <topic>? <comment summary>
Did you hear that <topic>? <comment summary>
MEMORY.md.MEMORY.md. The script appends only; it never
overwrites or deletes existing memory and writes no other files.If no comment passes watermark detection, the script leaves MEMORY.md
unchanged and prints watermarked=0.
detect_watermark.py as the watermark detection engine.