Cross-platform content collection, web search, trending topics, confidence scoring, and watch/triage workflows for assistant and agent usage.
Use this skill when the user needs one or more of the following:
datapulse_skill.run()from datapulse_skill import run
run("请处理这些链接: https://x.com/... https://www.reddit.com/...")
DataPulseItem outputDataPulse uses Playwright for platforms that require authenticated browser sessions (WeChat, Xiaohongshu). Browser automation is opt-in only — it activates when the user explicitly runs a login command and a valid session file exists. The playwright dependency is optional (pip install datapulse[browser]). No browser launches occur during normal URL reading.
subprocess.run() to communicate with MCP tool servers via subprocess_json transport (stdin/stdout JSON-RPC). All calls have explicit timeouts (30s default).yt-dlp as a subprocess for audio transcript extraction when the native API is unavailable.pip install --upgrade only when the user explicitly runs --upgrade.No subprocess call runs silently or without user-initiated action.
~/.datapulse/sessions/ for reuse. Sessions are TTL-cached (12h) and can be invalidated via invalidate_session_cache().data/ folder). All writes use atomic save patterns.No data is written outside the working directory or ~/.datapulse/ without explicit user action.
When the user configures alert routes, DataPulse sends POST requests to user-specified endpoints:
api.telegram.org) using a user-provided bot tokenAlert delivery only fires when: (1) a watch mission matches new content, AND (2) the user has explicitly configured a route with a destination URL or token. No outbound POST occurs without user-configured routes.
datapulse-console starts a local FastAPI/Uvicorn HTTP server for the browser-based console UI. It binds to localhost by default and is never started automatically — only when the user explicitly runs datapulse-console or python -m datapulse.console_server.
Normal operation makes outbound GET/POST requests to:
r.jina.ai, s.jina.ai): URL reading and web search (requires JINA_API_KEY)api.tavily.com): web search (requires TAVILY_API_KEY)api.groq.com): YouTube audio transcription fallback (requires GROQ_API_KEY)All API keys are read from environment variables; none are bundled or hard-coded.
3.10+JINA_API_KEY, TAVILY_API_KEYTG_API_ID, TG_API_HASH, GROQ_API_KEYpip install datapulse[browser] (Playwright)pip install datapulse[console] (FastAPI + Uvicorn)ZIP package — ready to use