1 分•作者: bookofjoe•6 个月前
返回首页
最新
3 分•作者: vrganj•6 个月前
86 分•作者: Curiositry•6 个月前
92 分•作者: dsalzman•6 个月前
2 分•作者: AhmedAshraf•6 个月前
1 分•作者: harveyrandall•6 个月前
我花了很多时间使用 CLI 工具,也喜欢浏览 Bluesky。我发现了一个用 Go 编写的 CLI 客户端,但它没有包含我想要的所有功能,所以我开始构建自己的,并且有点沉迷其中。现在,您可以使用此客户端在应用程序或网络上执行几乎所有常见操作,而无需离开终端。
该客户端通过命名的配置文件支持多账户,在您进行身份验证时即可使用。因此,您可以通过简单地使用一个标志和配置文件名称,每次都使用不同的账户来执行以下所有操作。
每个命令也都支持 `--json`,因此可以将其通过管道输送到 `jq` 或传递给其他脚本,以实现更复杂的工作流程。
它使用 AT Protocol API,涵盖了应用程序中最常见的功能以及更多功能。
* 查看您的时间线
* 发布新帖子,包括带有附加图像或视频的新帖子
* 回复和引用帖子
* 点赞、转发、收藏和搜索帖子
* 关注、取关、屏蔽和取消屏蔽其他用户
* 私信其他用户
* 连接到 Jetstream 以接收帖子的实时 feed,并支持使用 `--pattern` 进行正则表达式过滤,例如 `bsky stream --pattern="typescript|rust"`。默认情况下,它使用 `gi` 修饰符。
除了上述配置文件功能外,还包括 `bash`、`zsh` 和 `fish` 的 shell 补全。
该客户端以独立二进制文件的形式分发,可在 macOS、Linux 和 Windows 上运行,因此无需 Node 运行时。
安装:
---------------------------------------------
```bash
; npm install -g @harveyrandall/bsky-cli
```
```bash
; # 或
; brew install harveyrandall/tools/bsky-cli
```
---------------------------------------------
GitHub: <https://github.com/harveyrandall/bsky-cli>
它在底层使用 TypeScript、Commander.js 和 AT Protocol SDK 构建。拥有 134+ 个测试,与它们的实现放在一起。它们可以单独运行,也可以在 CI/CD 中使用 GitHub Actions 运行。GitHub Actions 还会将新版本发布到 NPM 并更新 Homebrew 公式。
很乐意听取关于 CLI 设计的意见——如果您希望某个命令存在,我很想知道。请试用一下,安装并试用它。报告您发现的任何错误并为它们创建问题,欢迎所有反馈!我希望您觉得它和我一样有用。
1 分•作者: rjpruitt16•6 个月前
代理工作流程通常涉及 10 次以上的 API 调用,这些调用会发送给不同的服务(LLM、数据 API、网络抓取)。如果第 7 层不稳定,工作流程就会失败或引发重试风暴。
我正在思考常见的故障模式:
* 429 速率限制 → 代理重试 → 进一步加剧 API 压力
* 部分中断 → 客户之间同步重试
* LangGraph 工作流程执行到一半失败 → 如何恢复?
对于那些大规模运行代理系统的人来说:
* 你们如何处理第 7 层故障?
* 重试协调?熔断器?
* 你们如何防止对下游依赖项的重试风暴?
* LangGraph 工作流程能否优雅地处理 API 故障?
我很想知道实际生产环境是什么样的。
1 分•作者: omneity•6 个月前
1 分•作者: modinfo•6 个月前
2 分•作者: iancmceachern•6 个月前
2 分•作者: josephcsible•6 个月前
1 分•作者: chancemehmu•6 个月前
1 分•作者: foginni•6 个月前
1 分•作者: nicoloren•6 个月前
1 分•作者: xlmnxp•6 个月前
3 分•作者: Ndmtrieff•6 个月前
57 分•作者: zdw•6 个月前
2 分•作者: siegers•6 个月前
1 分•作者: clan•6 个月前
1 分•作者: sankalpnarula•6 个月前
嗨,HN,
Herd 是一个零依赖的 Go 语言库,用于管理操作系统子进程集群,并使用严格的 1:1 会话亲和性将 HTTP 流量路由到它们。
如果你将重量级的、有状态的二进制文件(如 Ollama、无头 Chromium 或 Python REPL)放在标准反向代理之后,并且流量出现激增,通常结果会很糟糕。你可能会触发大规模的 CUDA/Metal 上下文风暴,导致主机机器 OOM 崩溃,或者你会将状态泄露到不同用户的会话中。
Herd 解决了这个问题,而无需像 Kubernetes StatefulSets 或 Firecracker 这样的重量级控制平面。它为你提供了自动的进程生命周期管理和内置的反向代理,只需大约 10 行 Go 代码。
其工作原理如下:
* 它通过 exec.Cmd 产生操作系统级别的子进程。
* 它根据你定义的任何自定义会话 ID(标头、cookie、路径参数)路由传入的 HTTP 流量。
* 如果会话存在,它将路由到该确切的、固定的操作系统进程。
* 如果不存在,它会安全地获取一个 singleflight 锁,生成一个新进程,等待 /health 端点,然后代理请求。
* 如果进程崩溃,爆炸半径仅限于一个会话,并且池会自动恢复。
为了测试并发约束,我向一个 Herd 网关发送了 200 个并发 LLM 推理请求,该网关由一个限制为 10 个 Ollama (Qwen3:0.6B) worker 的池支持,运行在 M4 Pro Mac 上。它获得了 200/200 的分数,零丢包,充当一个完美的反压队列,安全地滴灌操作系统,而不会使主机的统一内存超负荷。
它采用 MIT 许可证。欢迎你查看该仓库,尝试破坏 singleflight 锁,或审查其架构。
仓库:[https://github.com/HackStrix/herd](https://github.com/HackStrix/herd)
架构和 Mermaid 图:[https://github.com/HackStrix/herd/blob/main/docs/ARCHITECTURE.md](https://github.com/HackStrix/herd/blob/main/docs/ARCHITECTURE.md)