|
| 1 | +# Notion CLI 分发方案 |
| 2 | + |
| 3 | +## 一、安装渠道(按优先级排序) |
| 4 | + |
| 5 | +### Tier 1 — 必须做(覆盖 80% 用户) |
| 6 | + |
| 7 | +| 渠道 | 目标用户 | 实现方式 | 工作量 | |
| 8 | +|------|---------|---------|--------| |
| 9 | +| **GitHub Releases** | 所有平台 | goreleaser + GitHub Actions | 1h | |
| 10 | +| **go install** | Go 开发者 | 已就绪(`go install github.com/4ier/notion-cli@latest`) | 0 | |
| 11 | +| **Homebrew Tap** | macOS/Linux 开发者 | goreleaser 自动生成 formula → `4ier/homebrew-tap` | 30min | |
| 12 | + |
| 13 | +### Tier 2 — 应该做(扩大覆盖) |
| 14 | + |
| 15 | +| 渠道 | 目标用户 | 实现方式 | 工作量 | |
| 16 | +|------|---------|---------|--------| |
| 17 | +| **npm wrapper** | Node.js/agent 生态 | 轻量 npm 包 `@4ier/notion-cli`,postinstall 拉二进制 | 2h | |
| 18 | +| **Docker** | CI/CD/自动化 | `ghcr.io/4ier/notion-cli` | 30min | |
| 19 | +| **Scoop** | Windows | goreleaser 内置 scoop manifest | 15min | |
| 20 | + |
| 21 | +### Tier 3 — 锦上添花(长尾) |
| 22 | + |
| 23 | +| 渠道 | 目标用户 | 实现方式 | 工作量 | |
| 24 | +|------|---------|---------|--------| |
| 25 | +| **AUR** | Arch Linux | PKGBUILD | 30min | |
| 26 | +| **Nix** | NixOS | flake.nix | 1h | |
| 27 | +| **skills.sh** | AI agent | 已就绪 | 0 | |
| 28 | + |
| 29 | +--- |
| 30 | + |
| 31 | +## 二、实现计划 |
| 32 | + |
| 33 | +### Phase 1: goreleaser + CI(今天) |
| 34 | + |
| 35 | +``` |
| 36 | +.goreleaser.yaml |
| 37 | +├── builds: linux/darwin/windows × amd64/arm64 |
| 38 | +├── archives: tar.gz (unix) / zip (windows) |
| 39 | +├── checksum: SHA256 |
| 40 | +├── homebrew_formulas: 4ier/homebrew-tap |
| 41 | +├── scoop: 4ier/scoop-bucket |
| 42 | +└── changelog: auto from git |
| 43 | +
|
| 44 | +.github/workflows/release.yml |
| 45 | +├── on: push tags v* |
| 46 | +├── setup-go |
| 47 | +├── goreleaser-action |
| 48 | +└── GITHUB_TOKEN (auto) |
| 49 | +``` |
| 50 | + |
| 51 | +**执行步骤:** |
| 52 | +1. 创建 `.goreleaser.yaml` |
| 53 | +2. 创建 `.github/workflows/release.yml` + `.github/workflows/test.yml` |
| 54 | +3. 创建 `4ier/homebrew-tap` 和 `4ier/scoop-bucket` 仓库 |
| 55 | +4. 打 tag `v0.2.0`,推送触发自动发布 |
| 56 | +5. 验证: `brew install 4ier/tap/notion-cli` |
| 57 | + |
| 58 | +### Phase 2: npm wrapper(本周) |
| 59 | + |
| 60 | +``` |
| 61 | +notion-cli-npm/ |
| 62 | +├── package.json # name: @4ier/notion-cli |
| 63 | +├── install.js # postinstall: 检测平台 → 下载对应 GitHub Release 二进制 |
| 64 | +├── bin/notion # shell wrapper → 执行下载的二进制 |
| 65 | +└── README.md |
| 66 | +``` |
| 67 | + |
| 68 | +用户体验: `npx @4ier/notion-cli search "meeting notes"` |
| 69 | + |
| 70 | +### Phase 3: Docker(本周) |
| 71 | + |
| 72 | +```dockerfile |
| 73 | +FROM alpine:3.21 |
| 74 | +COPY notion /usr/local/bin/ |
| 75 | +ENTRYPOINT ["notion"] |
| 76 | +``` |
| 77 | + |
| 78 | +goreleaser 内置 Docker 支持,一并配置。 |
| 79 | + |
| 80 | +--- |
| 81 | + |
| 82 | +## 三、推广渠道(按 ROI 排序) |
| 83 | + |
| 84 | +### 高 ROI |
| 85 | +| 渠道 | 策略 | 时机 | |
| 86 | +|------|------|------| |
| 87 | +| **r/Notion** (1.2M members) | "I built a CLI for Notion" 帖,demo GIF,链接 GitHub | v0.2.0 发布当天 | |
| 88 | +| **Hacker News** | Show HN: Full Notion CLI — 38 commands | 同上,UTC 上午 | |
| 89 | +| **X/Twitter** | 线程:问题→方案→demo→链接,@NotionHQ | 同上 | |
| 90 | + |
| 91 | +### 中 ROI |
| 92 | +| 渠道 | 策略 | 时机 | |
| 93 | +|------|------|------| |
| 94 | +| **r/commandline** | 侧重 CLI 设计哲学(gh 对标) | 发布 +1 天 | |
| 95 | +| **Product Hunt** | 完整 launch page | 发布 +3 天 | |
| 96 | +| **Dev.to / Hashnode** | 技术文章:Notion API → CLI 的设计决策 | 发布 +1 周 | |
| 97 | + |
| 98 | +### 长尾 |
| 99 | +| 渠道 | 策略 | 时机 | |
| 100 | +|------|------|------| |
| 101 | +| **Notion 社区** (Discord/论坛) | 作为工具分享 | 持续 | |
| 102 | +| **GitHub trending** | 靠 star 自然进入 | 有机增长 | |
| 103 | +| **Awesome Notion** | 提 PR 加入列表 | v0.2.0 后 | |
| 104 | + |
| 105 | +--- |
| 106 | + |
| 107 | +## 四、推广素材(需要准备) |
| 108 | + |
| 109 | +1. **Demo GIF/视频** — 30 秒终端录屏,展示核心流程: |
| 110 | + - `notion auth login` → `notion search` → `notion db query --filter` → `notion page create` |
| 111 | + - 用 [vhs](https://github.com/charmbracelet/vhs) 或 asciinema 录制 |
| 112 | + |
| 113 | +2. **README 升级** — 加 badges、GIF、安装方式表格、对标竞品 |
| 114 | + |
| 115 | +3. **一句话 pitch**: "Like `gh` for GitHub, but for Notion. 39 commands. One binary." |
| 116 | + |
| 117 | +4. **Twitter 线程**(已有 Notion page 可以改写) |
| 118 | + |
| 119 | +--- |
| 120 | + |
| 121 | +## 五、时间线 |
| 122 | + |
| 123 | +| 日期 | 里程碑 | |
| 124 | +|------|--------| |
| 125 | +| 2/19 | goreleaser + CI + homebrew tap + scoop ✅ | |
| 126 | +| 2/19 | 打 v0.2.0 tag,触发首次自动发布 | |
| 127 | +| 2/19 | README 升级 + demo GIF 录制 | |
| 128 | +| 2/20 | npm wrapper 发布 | |
| 129 | +| 2/20 | r/Notion + HN + X 同步发帖 | |
| 130 | +| 2/21 | Product Hunt 准备 | |
| 131 | +| 2/22 | Docker image + Awesome Notion PR | |
| 132 | +| 持续 | 根据反馈迭代,社区回复 | |
| 133 | + |
| 134 | +--- |
| 135 | + |
| 136 | +## 六、成功指标 |
| 137 | + |
| 138 | +| 指标 | 1 周目标 | 1 月目标 | |
| 139 | +|------|---------|---------| |
| 140 | +| GitHub Stars | 50 | 300 | |
| 141 | +| npm 周下载 | 20 | 100 | |
| 142 | +| Homebrew 安装 | 10 | 50 | |
| 143 | +| GitHub Issues | 5 | 20 | |
| 144 | +| skills.sh 安装 | 10 | 50 | |
0 commit comments