R44VC0RP/hark

GitHub: R44VC0RP/hark

Hark 是一个将 Webhook 转换为带品牌标识的 iOS 推送通知的平台,帮助开发者通过 iPhone 实时跟踪 CI 任务、脚本和 AI Agent 的运行状态。

Stars: 129 | Forks: 10

# Hark https://github.com/user-attachments/assets/74fd0670-2106-4af5-93c8-d31f99b33908 Hark 将 webhook 转换为简洁、带有来源品牌标识的 iPhone 通知。连接 CI jobs、agents、 scripts、监控工具或任何其他可以发送 HTTP 请求的内容。 [官网](https://hark.ryan.ceo) | [文档](https://hark.ryan.ceo/docs) ## 快速开始 需要 [Node.js 22 或更高版本](https://nodejs.org/)。 1. 为你的 agent 安装 Hark skill: npx skills add R44VC0RP/hark --skill hark --global 2. 安装 CLI: npm install -g harkctl 3. 使用你的 Hark 账户进行身份验证: harkctl auth login 4. 询问你的 agent: Hark 能做什么? 你的 agent 现在可以通知你的 iPhone、请求批准或文本回复、通过 Live Activities 显示任务进度,以及为外部系统创建 webhook 服务。 ## Hark 的功能 - 通过简单的 webhook 发送丰富的 iOS 通知。 - 为每个服务提供各自的名称、头像、目标 URL 和 secret endpoint。 - 在 web dashboard 中跟踪投递尝试和已注册的设备。 - 支持针对 agent 工作流的批准和文本回复。 - 通过锁屏和灵动岛上的 Live Activities 显示有状态的任务进度。 - 通过 Hark Pro 支持多设备和定向投递。 ## Webhook 设置 1. 在 [hark.ryan.ceo](https://hark.ryan.ceo) 登录。 2. 使用 Hark app 注册你的 iPhone。 3. 创建一个服务并复制其 secret webhook URL。 4. 向其发送一个 JSON 请求。 ## 发送通知 ``` curl -X POST 'https://hark.ryan.ceo/hooks/whk_your_token' \ -H 'Content-Type: application/json' \ -d '{ "title": "GitHub", "body": "Production deployed successfully.", "url": "https://github.com/acme/app/actions" }' ``` 仅 `body` 是必填项。 | 字段 | 描述 | | --- | --- | | `body` | 通知文本。 | | `title` | 可选的发送者名称覆盖。 | | `imageUrl` | 可选的公共 HTTPS 头像 URL。 | | `url` | 可选的点击时打开的目标 URL。 | | `deviceIds` | 可选的 Pro 路由到特定设备。 | 成功的请求将返回一个 event ID 和已接受投递的 push 请求数量: ``` { "ok": true, "eventId": "evt_...", "delivered": 1 } ``` 在重试请求时使用 `Idempotency-Key` header 以防止重复通知。 ## Live Activities 使用相同的 service webhook token 启动有状态的 Live Activity: ``` curl -X POST 'https://hark.ryan.ceo/hooks/whk_your_token/live-activities' \ -H 'Content-Type: application/json' \ -d '{ "title": "Deploy #184", "status": "Building", "progress": 0.25, "symbol": "build", "accentColor": "#FF9F0A" }' ``` 响应包含一个 `activityId`。使用它来更新或结束活动: ``` PATCH /hooks/:token/live-activities/:activityId POST /hooks/:token/live-activities/:activityId/end ``` 更新接受部分状态,例如 `status`、`detail`、`progress`、`symbol` 和 `accentColor`。 Hark 允许每台设备拥有一个活动的任务 Live Activity;在启动时传入 `replace: true` 可静默结束 占用该设备的任何任务并接管位置。交互式批准活动可以与该任务共存。 启动活动时可能会提醒用户,但默认情况下进度更新是静默的。 高优先级更新控制的是投递速度,而不是声音或触感反馈。 要贡献一个全新的 Live Activity 布局,包括无 simulator 测试以及所有公开的 API、widget、CLI 和文档接触点,请参阅 [贡献 Live Activity 模板](./CONTRIBUTING_LIVE_ACTIVITY_TEMPLATES.md)。 ## Agent 工作流 [`harkctl`](./packages/harkctl) CLI 可以发送一次性通知、请求批准或简短 回复,并从 scripts 或 AI agents 管理 Live Activities。 ``` harkctl auth login harkctl notify "Deploy finished ✅" --title "Deploy bot" harkctl notify ask "Deploy production?" --approval --wait harkctl notify ask "Send the email?" --approval --live-activity \ --primary-label Send --secondary-label Deny --wait harkctl activity start --title "Release" --status "Building" --progress 0.1 ``` 可安装的 [`hark` agent skill](./skills/hark/SKILL.md) 遵循 [skills.sh](https://skills.sh/r44vc0rp/hark/hark) 使用的开放 Agent Skills 格式,并支持 OpenCode、Claude Code、Codex、 Cursor 和其他兼容的 agents。 ## 许可证 Hark 是源码可见的,基于 [PolyForm Noncommercial License 1.0.0](./LICENSE)。未经许可方 单独许可,不允许商业使用。
标签:iOS应用, MITM代理, Python脚本, SOC Prime, Webhook, 力导向图, 开发工具, 推送服务, 文档结构分析, 消息通知, 自动化攻击