diff --git a/agent_reach/cli.py b/agent_reach/cli.py index 6a287b6..396468c 100644 --- a/agent_reach/cli.py +++ b/agent_reach/cli.py @@ -283,7 +283,26 @@ def _install_system_deps(): except Exception: print(" ⚠️ Node.js install failed. Install manually: https://nodejs.org") + # ── birdx (for Twitter search) ── + if shutil.which("birdx"): + print(" ✅ birdx already installed") + else: + if shutil.which("pip3") or shutil.which("pip"): + pip_cmd = "pip3" if shutil.which("pip3") else "pip" + try: + subprocess.run( + [pip_cmd, "install", "-q", "birdx"], + capture_output=True, text=True, timeout=120, + ) + if shutil.which("birdx"): + print(" ✅ birdx installed (Twitter search + timeline)") + else: + print(" ⬜ birdx install failed (optional — Twitter reading still works via Jina)") + except Exception: + print(" ⬜ birdx install failed (optional — Twitter reading still works via Jina)") + +def _install_mcporter(): """Install mcporter and configure Exa + XiaoHongShu MCP servers.""" import shutil import subprocess diff --git a/pyproject.toml b/pyproject.toml index 659e8d3..4f87f4c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,13 +27,11 @@ dependencies = [ "pyyaml>=6.0", "rich>=13.0", "yt-dlp>=2024.0", - "browser-cookie3>=0.19", ] [project.optional-dependencies] browser = ["playwright>=1.40"] cookies = ["browser-cookie3>=0.19"] -mcp = ["mcp[cli]>=1.0"] all = ["playwright>=1.40", "mcp[cli]>=1.0", "browser-cookie3>=0.19"] [project.scripts]