Metadata-Version: 2.4
Name: clawsomechannel
Version: 0.1.0b7
Summary: Agent 通用渠道 I/O 网关:给定主题一键跨渠道获取内容、一键多渠道发布。本地 MCP server。
License: Apache-2.0
Requires-Python: >=3.10
Requires-Dist: aiolimiter>=1.1
Requires-Dist: aiosqlite>=0.20
Requires-Dist: apprise>=1.8
Requires-Dist: apscheduler>=3.10
Requires-Dist: cryptography>=42.0
Requires-Dist: datasketch>=1.6
Requires-Dist: feedparser>=6.0
Requires-Dist: httpx>=0.27
Requires-Dist: keyring>=25.0
Requires-Dist: markdown>=3.0
Requires-Dist: mcp>=1.2
Requires-Dist: platformdirs>=4.0
Requires-Dist: pydantic>=2.6
Requires-Dist: rank-bm25>=0.2
Requires-Dist: structlog>=24.1
Requires-Dist: tomli>=2.0; python_version < '3.11'
Provides-Extra: dev
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.4; extra == 'dev'
Provides-Extra: keyring
Description-Content-Type: text/markdown

# ClawsomeChannel

本地 MCP 服务,给 AI Agent 一套统一的渠道能力:Agent根据用户意图从指定渠道获取信息，或把内容发到指定渠道。

用户只需要用自然语言告诉 Agent 想看什么、发到哪里。Agent 通过 ClawsomeChannel 的 `fetch` 和 `publish` 工具完成输入与输出。

## 安装

```bash
pip install -U clawsomechannel
```

验证 beta 版时使用:

```bash
pip install --pre -U clawsomechannel
```

如果出现 `Requires-Python` 或 `Ignored the following versions` 报错,运行:

```bash
python3.10 -m venv ~/.local/share/clawsomechannel/venv
~/.local/share/clawsomechannel/venv/bin/python -m pip install -U pip
~/.local/share/clawsomechannel/venv/bin/python -m pip install -U clawsomechannel
mkdir -p ~/.local/bin
cat > ~/.local/bin/clawsomechannel <<'EOF'
#!/usr/bin/env sh
exec "$HOME/.local/share/clawsomechannel/venv/bin/python" -m clawsomechannel.cli "$@"
EOF
cat > ~/.local/bin/clawsomechannel-mcp <<'EOF'
#!/usr/bin/env sh
exec "$HOME/.local/share/clawsomechannel/venv/bin/python" -m clawsomechannel.transport.mcp_stdio "$@"
EOF
chmod +x ~/.local/bin/clawsomechannel ~/.local/bin/clawsomechannel-mcp
```

如果使用源码仓库中的安装脚本:

```bash
scripts/install.sh
# beta:
scripts/install.sh --beta
```

## 接入 MCP

推荐使用 CLI 自动配置:

```bash
clawsomechannel mcp install --client cursor
clawsomechannel mcp install --client claude-code
clawsomechannel mcp install --client claude-desktop
clawsomechannel mcp install --client codex
clawsomechannel mcp install --client openclaw
clawsomechannel mcp install --client hermes
```

只打印手动配置 JSON:

```bash
clawsomechannel mcp install --json
```

输出中的 `command` 是 MCP server 可执行文件的绝对路径。CLI 自动写入 Cursor、Claude
Desktop、Codex 等配置时也会使用这个绝对路径,避免 GUI 客户端拿不到 shell `PATH`。

## 什么是 Channel

Channel 是一个具体的输入源或输出目的地,也是用户和 Agent 日常使用的名字。

例子:
- `hn`: 一个 Hacker News输入渠道。
- `电报-工作群`: 一个 Telegram 输出渠道。
- `我的公众号`: 一个微信公众号输出渠道。


创建 Channel 后,按 Channel 名录入凭证:

```bash
clawsomechannel creds set <Channel名>
```

## 常用命令

查看支持哪些平台:

```bash
clawsomechannel platforms list
```

查看某个平台需要准备什么:

```bash
clawsomechannel platforms requirements telegram --direction output
clawsomechannel platforms requirements rss --direction input
```

查看已有 Channel 轻量列表:

```bash
clawsomechannel channels existing
```

查看某个 Channel 的非密详情:

```bash
clawsomechannel channels show 电报-工作群
```

录入某个 Channel 的凭证:

```bash
clawsomechannel creds set 电报-工作群
```

检查某个 Channel 当前是否可用:

```bash
clawsomechannel channels check 电报-工作群
```

删除一个动态注册的 Channel:

```bash
clawsomechannel channels remove hn
```

## 基本使用

你可以直接对 Agent 说:

```text
ClawsomeChannel 支持哪些输入和输出平台?
```

注册输入渠道:

```text
添加一个ClawsomeChannel的输入渠道,平台是GitHub, 该渠道命名为“my-github-channel”。
```

注册输出渠道:

```text
请在Telegram平台为我添加一个名为“电报-工作群”的ClawsomeChannel输出渠道
```

录入凭证:

```bash
clawsomechannel creds set 电报-工作群
```

获取信息:

```text
请从 ClawsomeChannel 的"X", "hn", "Reddit"渠道抓取“AI 监管政策”相关信息,优先看最近 24 小时内讨论热度高的内容。
```

发布内容:

```text
请把 /absolute/path/article.md 同时发布到以下渠道：“电报-工作群”, "X”, "我的微信公众号"。
```

## 支持平台

常见输入平台包括 RSS/Atom、Hacker News、GitHub、arXiv、YouTube、Reddit、Product Hunt、V2EX、Bilibili、知乎、微博、掘金、豆瓣、Telegram 输入、Email/IMAP 等。

常见输出平台包括 Telegram、Slack、Discord、Email、Webhook、钉钉、飞书/Lark、企业微信机器人、Microsoft Teams、Matrix、Mattermost、Rocket.Chat、Gotify、ntfy、Pushover、Pushbullet、Bark、PushPlus、Server酱、X/Twitter、微信公众号图文、闲鱼、知乎等。

准确列表以命令输出为准:

```bash
clawsomechannel platforms list
```

## 升级

```bash
clawsomechannel upgrade
```

升级命令会自更新到最新稳定包并迁移本地数据。完成后需要重载或重启 MCP 客户端,让它重新启动最新的 `clawsomechannel-mcp` 进程:

- Cursor:在 Settings > Tools & MCP 中切换该 server,执行 Developer: Reload Window,或完整重启 Cursor。
- Claude Desktop:完整退出并重新打开应用。
- Claude Code/Codex/其它 stdio 客户端:使用客户端提供的 MCP reconnect/reload 功能;没有热重载时重启当前会话。

