Search & read the login-walled Chinese internet for your AI agent — 微信公众号/小红书/抖音/B站 + Twitter/Reddit/HN/YouTube. One CLI, one JSON schema, zero-config WeChat search. 让 AI agent 搜到微信公众号. Install by telling your agent.
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution in Daily-AC/omnireach
transport stdio counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 38e307f · analyzer v28 · 1d ago
skills & prompt files 2
danger signals1
- dynamic code execution __import__ sink Daily-AC-omnireach-38e307f/tests/adapters/test_opencli.py :173
assert "OPENCLI_PROFILE" not in __import__("os").environ
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 133
filesystem 27
- fs Daily-AC-omnireach-38e307f/omnireach/adapters/_opencli.py :8
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/agy.py :9
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/douyin.py :15
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/github.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/google.py :5
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/reddit.py :5
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/tiktok.py :5
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/twitter.py :5
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/web.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/xiaohongshu.py :6
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/adapters/youtube.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/bridge_install.py :10
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/cli.py :9
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/commands/media.py :8
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/commands/preferences.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/commands/setup.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/doctor.py :7
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/fetcher.py :6
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/installer.py :5
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/media/contract.py :7
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/media/service.py :9
import shutil - fs Daily-AC-omnireach-38e307f/omnireach/media/subtitles.py :8
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/native_bridge.py :12
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/preferences.py :7
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/registry.py :7
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/secrets_env.py :12
from pathlib import Path - fs Daily-AC-omnireach-38e307f/omnireach/service.py :6
import shutil
shell / exec 6
- shell Daily-AC-omnireach-38e307f/omnireach/commands/preferences.py :8
import subprocess - shell Daily-AC-omnireach-38e307f/omnireach/commands/setup.py :9
import subprocess - shell Daily-AC-omnireach-38e307f/omnireach/doctor.py :8
import subprocess - shell Daily-AC-omnireach-38e307f/omnireach/fetcher.py :7
import subprocess - shell Daily-AC-omnireach-38e307f/omnireach/installer.py :6
import subprocess - shell Daily-AC-omnireach-38e307f/omnireach/media/service.py :10
import subprocess
network 17
- net Daily-AC-omnireach-38e307f/omnireach/adapters/_bilibili_api.py :15
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/_wechat_sogou.py :9
from urllib.parse import quote_plus, urljoin, urlparse - net Daily-AC-omnireach-38e307f/omnireach/adapters/agy.py :10
import socket - net Daily-AC-omnireach-38e307f/omnireach/adapters/bilibili.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/brave.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/exa.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/google.py :6
from urllib.parse import urlparse - net Daily-AC-omnireach-38e307f/omnireach/adapters/hackernews.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/perplexity.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/tavily.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/adapters/wechat.py :7
import httpx - net Daily-AC-omnireach-38e307f/omnireach/commands/check_update.py :6
import httpx - net Daily-AC-omnireach-38e307f/omnireach/fetcher.py :9
from urllib.parse import urlparse - net Daily-AC-omnireach-38e307f/omnireach/html_markdown.py :7
from urllib.parse import urljoin - net Daily-AC-omnireach-38e307f/omnireach/mcp_server.py :9
from urllib.parse import urlparse - net Daily-AC-omnireach-38e307f/omnireach/media/service.py :14
from urllib.parse import parse_qsl, urlparse - net Daily-AC-omnireach-38e307f/omnireach/native_bridge.py :14
from urllib.parse import parse_qs, urlparse
secrets 6
- secrets Daily-AC-omnireach-38e307f/omnireach/adapters/bilibili.py :21
key = os.environ.get("EXA_API_KEY") - secrets Daily-AC-omnireach-38e307f/omnireach/adapters/brave.py :20
return bool(os.environ.get("BRAVE_API_KEY")) - secrets Daily-AC-omnireach-38e307f/omnireach/adapters/exa.py :20
return bool(os.environ.get("EXA_API_KEY")) - secrets Daily-AC-omnireach-38e307f/omnireach/adapters/perplexity.py :21
return bool(os.environ.get("PERPLEXITY_API_KEY")) - secrets Daily-AC-omnireach-38e307f/omnireach/adapters/tavily.py :20
return bool(os.environ.get("TAVILY_API_KEY")) - secrets Daily-AC-omnireach-38e307f/omnireach/adapters/wechat.py :21
key = os.environ.get("EXA_API_KEY")
declared dependencies 10
- click@>=8.1
- pydantic@>=2.5
- httpx@>=0.27
- PyYAML@>=6.0
- rich@>=13.7
- feedparser@>=6.0,<7.0
- pytest@>=8.0
- pytest-asyncio@>=0.23
- respx@>=0.21
- pexpect@>=4.9