AgentSkillsCN

sec-filing-watcher

通过 Clawdbot 监控 SEC EDGAR 的新提交文件,并获取 Telegram/Slack 摘要。在设置 SEC 申报提醒、添加或移除需监控的股票代码、配置申报表格类型、启动或停止监测器,或排查申报通知相关问题时均可使用。

SKILL.md
--- frontmatter
name: sec-filing-watcher
description: Monitor SEC EDGAR for new filings and get Telegram/Slack summaries via Clawdbot. Use when setting up SEC filing alerts, adding/removing tickers to monitor, configuring form types, starting/stopping the watcher, or troubleshooting filing notifications.

SEC Filing Watcher

Monitors SEC EDGAR for new filings from a watchlist of tickers. When a new filing appears, notifies Clawdbot which fetches, summarizes, and sends to Telegram.

Quick Setup

1. Create watchlist

bash
cp assets/watchlist.example.json watchlist.json
# Edit watchlist.json with your tickers

2. Configure webhook

Edit scripts/watcher.js CONFIG section:

  • webhookUrl: Your Clawdbot hooks URL (default: http://localhost:18789/hooks/agent)
  • webhookToken: Your hook token (find in clawdbot.json under hooks.token)

3. Test run

bash
node scripts/watcher.js

First run seeds existing filings (no notifications). Second run checks for new filings.

4. Schedule (every 15 min)

macOS:

bash
cp assets/com.sec-watcher.plist ~/Library/LaunchAgents/
# Edit the plist to set correct paths
launchctl load ~/Library/LaunchAgents/com.sec-watcher.plist

Linux:

bash
crontab -e
# Add: */15 * * * * /usr/bin/node /path/to/scripts/watcher.js >> /path/to/watcher.log 2>&1

Managing Tickers

Add or remove tickers in watchlist.json:

json
{
  "tickers": ["AAPL", "MSFT", "TSLA"],
  "formTypes": ["10-K", "10-Q", "8-K", "4"]
}

New tickers are auto-seeded (existing filings won't spam you).

See references/form-types.md for common SEC form types.

Commands

Check status:

bash
launchctl list | grep sec-watcher

View logs:

bash
cat ~/clawd/sec-filing-watcher/watcher.log

Stop:

bash
launchctl unload ~/Library/LaunchAgents/com.sec-watcher.plist

Start:

bash
launchctl load ~/Library/LaunchAgents/com.sec-watcher.plist

Manual run:

bash
node scripts/watcher.js

Files

FilePurpose
scripts/watcher.jsMain watcher script
watchlist.jsonYour tickers and form types
state.jsonTracks seen filings (auto-created)
watcher.logOutput log (if configured)

Troubleshooting

No notifications:

  • Check state.json exists (first run seeds, second run notifies)
  • Verify webhook URL and token in watcher.js CONFIG
  • Check Clawdbot is running: clawdbot status

SEC blocking requests:

  • Script uses proper User-Agent header
  • If blocked, wait 10 minutes (SEC rate limit cooldown)

Duplicate notifications:

  • Check state.json isn't corrupted
  • Delete state.json to re-seed (will seed all existing filings again)