开发者工具箱|编程·开发工具·资源
301 subscribers
1.48K photos
785 links
面向开发者的实用工具、库与效率技巧,写代码更快更爽。投稿 @BDHT1
#开发者 #编程工具 #效率 #程序员 · 开源总站 @GitHubTrendingHub
Download Telegram
OpenAI Codex Desktop:AI 原生开发界面

Codex Desktop 以“agent‑native”界面取代传统 IDE 或聊天机器人。它把 Git 操作、终端、IDE 切换等常用功能嵌入顶部工具栏,消除多次切换的摩擦。AI 运行控制按钮可直接在指定环境下执行代码,省去手动配置。
自动化面板让你一次点击即可创建、测试并触发完整的工作流。Codex 能根据现有项目、AI 配置和对话历史生成自动化脚本,随后在弹窗中直接保存。
Skill 系统支持将指令、资源和脚本打包成可复用的 openai.yaml,Codex 会自动识别并在应用、CLI 与 IDE 扩展间同步。你也可以把自己的脚本转换为 Skill,团队可通过仓库共享。

Codex 目前仅支持 GPT‑5.2 Codex Low/Medium 模型,后者在 ChatGPT 账户下不支持。低版模型响应快但质量下降明显,整体表现低于 Claude Haiku。OpenAI 提供两种交互风格:简洁务实与温和协作,用户可自行切换。

总体来看,Codex Desktop 通过直观 UI 和自动化工具降低了 AI 开发的操作壁垒,但模型质量仍需提升。适合想在日常工作中快速集成 AI 自动化的开发者。
Gemini CLI 安全连接服务器:使用 Termalin 的 MCP 方案

Gemini CLI 通过 MCP 协议与 Termalin 的内置 MCP 服务器通信,完成服务器命令执行与文件管理,而不把 SSH 密钥暴露给 Gemini。
1. 在 Termalin 设置 → MCP 开启 Agent 访问,勾选 Gemini 可访问的主机。Termalin 只写入无密钥的主机清单,所有身份验证由 Termalin 的密钥托管完成。
2. 在 Gemini 的 ~/.gemini/settings.json 添加 MCP 服务器条目:

```
{
"mcpServers": {
"termalin": {
"command": "<path>/termalin-mcp"
}
}
}
```
重启 Gemini 后即可使用 hosts_list、ssh_exec、session_open 等工具。

Gemini 可在 Termalin 的终端标签中直接运行,或通过 MCP 进行无键交互。

通过在 Termalin 中为每台主机设置“完整访问”“允许列表”“阻止”三种策略,控制 Gemini 的权限。若在云端运行 Gemini,可使用 Termalin 的托管 MCP 端点(Pro 或试用版)并提供短期 API 密钥。

Gemini 与 Termalin 的结合让你在保持密钥安全的前提下,让 AI 直接操作服务器,适用于部署、日志查看、服务重启等日常运维任务。
BackstageCon 2026:一日全程聚焦 AI 与平台实践

BackstageCon 将于 2026 年 11 月 9 日在盐湖城举行,作为 KubeCon + CloudNativeCon North America 的前奏。全日单轨道,涵盖 AI 代理、技术深度、开发体验与部署经验四大主题,所有演讲均标注难度等级,方便不同阶段的团队挑选。
参会者将听到真实案例:如何在 Backstage 中引入 AI 代理、赋予其身份与权限、自动化目录所有权、保持插件更新。演讲者包括已在生产环境使用 Backstage 的平台团队、评估阶段的团队以及初学者。
会议强调人性化采用:最难的往往是人而非技术。与会者可了解 AI 如何帮助团队改造已有十年历史的 Backstage 实例,并获得可落地的改进思路。
适合正在或计划在 Kubernetes 与云原生栈上运行 Backstage 的平台团队、评估团队以及插件作者。无需预先准备,建议先浏览软件目录、模板与插件文档。

BackstageCon 为社区成员提供面对面交流机会,帮助你在日后持续获得灵感与合作伙伴。 参加 2026 年 11 月 9 日的 BackstageCon,开启 AI 与平台协同的新篇章。
不可给 AI 代理 root 权限,改为可审计的系统状态变更

在云原生环境中,直接赋予 AI 代理 root 访问权限会导致不可预测的系统漂移。
可行方案是让代理在可控的、不可变的基础镜像上运行,任何对系统的修改都通过 软件工厂(源代码、CI、镜像构建、签名、发布)提交 PR,完成审计后才生成新镜像。

- 隔离运行:代理以短生命周期的容器或 VM 形式执行,避免直接写入宿主机。
- 不可变宿主:基础系统以镜像形式管理,任何变更都需重新构建镜像,保持系统状态可追溯。
- 审计链:代理只能提出变更请求,不能直接合并或发布,保证变更经过人类或自动化审核。

此模型既保留了 AI 代理的自愈与自优化能力,又避免了传统 root 权限带来的安全风险。
Edge‑Agentic Commit Analyzer:零依赖本地守护

Edge‑Agentic Commit Analyzer 是一个纯 Python 脚本,专为 Git 提交前检查设计。它在本地无任何外部 API 调用,执行时间低于 10 秒,完全依赖标准库和 Git 命令。通过一次性运行,能快速识别提交的语义意图、危险代码模式(如 eval、exec、subprocess.call、__import__、明文密码)以及是否包含测试代码。输出为严格的 JSON,便于直接管道到 jq 或 CI 流程。
运行方式

```bash
git add .
python analyzer.py
```
结果示例
```json
{
"status":"success",
"dev_message":"Staged diff analyzed successfully. Risk detected: false.",
"analysis":{
"intent":"Refactoring or feature implementation based on staged changes.",
"security_risk_detected":false,
"unit_test_adequate":true,
"execution_time_sec":0.002
},
"diff_summary":"diff --git a/main.py b/main.py ..."
}
```


该工具可直接挂载到 pre‑commit 钩子,成为毫秒级的安全与质量检查。源码可在 Gumroad 以“按需付费”方式获取。
一键式 LLM 限流逃逸 CLI

该工具是一个无状态的命令行脚本,专门用于在多家 LLM 提供商之间快速切换,避免因单一服务限流导致的整体延迟。
它读取 JSON 配置,按优先级顺序请求各提供商,单次请求超时 0.8 秒,总执行时间不超过 5 秒。若某提供商返回 429 或 5xx,脚本立即跳过,继续尝试下一个。
脚本仅依赖 Python 标准库,无需额外依赖,适合 CI/CD、Cron 或轻量级无服务器环境调用。
使用时只需准备 config.json(包含提示、超时和各提供商信息),设置对应 API Key 环境变量,然后执行脚本即可得到 JSON 格式的成功/失败日志和最终响应预览。
哪些 AI 爬虫应在 robots.txt 里允许?

AI 助手通过两种方式抓取网页:一类收集内容用于训练模型,另一类在用户查询时实时抓取页面并引用。你可以在 robots.txt 中分别对这两类做不同处理,但前提是了解每个 user‑agent 的功能。

常见 AI 爬虫与作用
- GPTBot / ClaudeBot / CCBot / Google‑Extended / Applebot‑Extended:收集内容用于训练。若不想让内容被用于未来模型,可在 robots.txt 中 Disallow: /。
- OAI‑SearchBot / ChatGPT‑User / Claude‑SearchBot / Claude‑User / PerplexityBot / Perplexity‑User:在用户查询时抓取页面并引用。若想让页面出现在 AI 回答中,应允许这些爬虫访问。

推荐 robots.txt 示例

```

# 训练爬虫:拒绝
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: CCBot
User-agent: Google-Extended
User-agent: Applebot-Extended

# 搜索与回答爬虫:允许
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
```

保持对 Googlebot 与 * 的原有规则不变。此配置既能让你的网站在 AI 搜索中可见,又能避免被用于训练。若有付费或私有内容,可进一步细化路径。测试方法可用 Python 的 urllib.robotparser 或在线工具检查。
Node.js SaaS SMS 验证链接的稳定模板与调度策略

在 B2B SaaS 注册页面中,Node.js SMS API 只接受了未完成投递的验证链接,导致重试队列堆积,可能同一用户被多次发送。
核心需求:
- 发送、投递状态轮询、调度发送取消、模板管理、抑制与幂等重试。
- 适用于美国和欧盟地区的基本验证。
最佳做法:
- 让应用层持有模板版本、受众、抑制决策,SMS API 仅做投递基础设施。
- 记录四个时间戳:注册、发送接受、最新状态、验证完成,并使用幂等键。
- 轮询时遵守 24 h 幂等窗口,避免重复发送。
- 在应用层实现国家白名单和成本阈值,防止跨境或超量投递。

如果需要 webhook、语音、WhatsApp、RCS 或国内合规等功能,则需直接使用支持这些特性的提供商。
若仅需稳定的 SMS 交付,Infrai 的统一 REST 接口可在不改动业务代码的前提下更换后端实现。
Kerbside:离线语音+GPS生成街道问题地图

Kerbside 让你在走路时用手机录音并记录 GPS,随后在本地电脑上使用 Whisper 与 Gemma 自动识别并标注你提到的路面问题与亮点。
处理完成后得到一份手机友好的地图(map.html)和一页报告(report.md),每条问题都附带位置链接、居民原话和严重程度,方便提交给街道办或投诉平台。
工具完全离线运行:Whisper 采用 CPU 版 int8 模型,Gemma 3 4B 在 Ollama 上运行,所有数据保存在本地,未上传任何信息。
适合居民、居民福利协会、学生和 NGO 进行步行可达性审核;只需一台配备 Intel i5、16 GB RAM 的笔记本即可完成。
Cairn:让 AI 编码代理的计划落到真实 Issue 上

Cairn 是一个为 AI 编码代理设计的工作 harness,核心目标是让代理的计划、进度与团队使用的 Issue Tracker 同步。它通过 39 条 /cairn:<verb> 命令与 87 个类型化工具,支持在 Claude Code、Grok Build、Copilot CLI、Codex、Gemini CLI、Cursor、OpenCode、Zed 等多种 harness 中使用。
代理在计划阶段会把每个阶段和需求写入项目的 Issue Tracker,随后在执行阶段自动 claim、更新进度并在完成时关闭 Issue。Cairn 通过“goal‑backward”验证,检查代码是否真正实现了计划目标;若发现 drift,ship 阶段会被阻止,确保只有完全符合计划的代码才会发布。
Cairn 采用三层存储:
- Tracker Store:保存所有 Issue、阶段、评论等,是真正的工作真相。
- Git Store:记录计划文件、决策、验证记录等,保持版本化。
- Cache Store:临时缓存、索引、度量,丢失无损。
它支持 8 种 Tracker 适配器(GitHub、GitLab、Jira、Asana、Azure Boards、ClickUp、Linear、本地文件),可在无账号的本地环境启动,后续可通过 tracker_migrate 迁移到托管后端。
使用流程简洁:
1. /cairn:new 创建项目结构并写入 cairn.json。
2. /cairn:plan 生成阶段计划并同步到 Tracker。
3. /cairn:work 开始工作,代理会自动 claim 并记录进度。
4. /cairn:verify 进行 goal‑backward 验证,生成 VERIFICATION.md。
5. /cairn:ship 在 drift 清零且所有验证通过后才允许发布。
Cairn 还提供可选功能:可视化的项目板、预算化的 headless 执行、文档自动发布、内置的安全与代码审计、以及多维度的审查与回溯。所有功能均已在 8 次发布、325 个 Issue、25 个阶段中验证。

Cairn 采用 MIT 许可,已发布到 npm,团队可直接通过 npm i @eventually-consistent/cairn-server 或对应 harness 的安装命令使用。
JOPS 1.0.13:一键把 Android 结构迁移到 Cordova/Capacitor

JOPS 通过类化视图和生命周期管理,让 Android 应用的结构直接映射到浏览器。最新 1.0.13 版本支持在 Apache Cordova 或 Capacitor 环境下无构建步骤、无视图改动即可运行同一套代码。
- Android 后退键驱动路由:硬件键或手势直接调用 Router.back(),首屏关闭应用,符合 Android 习惯。
- 自动化项目初始化:npx jops-core init 能识别 Cordova/Capacitor 项目,自动把应用写入 shell 实际服务的文件夹。
- 安全区布局:使用 viewport-fit=cover 并在模板中为刘海、Dynamic Island、home 指示器添加安全区内边距。
- 精准路由:新增 canGoBack(),onBackPressed() 仅在真正的后退时触发,避免前进链接误触。
测试覆盖:Cordova 12 + cordova-ios 8.1.1 + cordova-android 15.1.0,Capacitor 8.5 + @capacitor/app 8.1,iOS 17 Pro Max 模拟器、Android 16 Pixel 2 模拟器及真实设备。
使用步骤简化为四步:创建平台、安装 JOPS、运行 init、用 Cordova/Capacitor 自带工具构建运行。JOPS 通过内置的 import map 与 CSP 兼容 Cordova,支持线程工作者,且不覆盖已有配置。

适合需要长期维护、跨平台的混合移动应用。
零停机 Postgres 版本升级方案

PostgreSQL 通过逻辑复制实现零停机的主版本升级。
在升级前,旧集群持续发布变更,新的集群订阅这些变更,保持同步。
升级完成后,只需短暂的写入停顿(约 181 ms)完成切换,业务几乎不受影响。

关键步骤
1. 准备:保持旧集群在线,开启逻辑复制,确保 DDL 在切换窗口之外完成。
2. 切换:在 pgbouncer 后端完成切换,旧集群保持可回滚。
3. 回滚:若升级失败,可在毫秒级别内通过逆向订阅回滚到旧版本。

此方案兼容 PostgreSQL 10‑19,支持多版本并行运行,适用于需要高可用、低 RTO 的生产环境。
Takumi 替代 Satori:Astro 构建速度提升 30%+

在 Astro 项目中,OG 图像生成是静态构建的重要环节。原先使用 Vercel 的 Satori + Sharp 方案,随着页面数量超过 150 条,构建时间显著增长。Satori 依赖 JavaScript 与 Yoga WASM,导致 V8 垃圾回收、JS‑WASM 边界切换以及单线程执行等瓶颈。
Takumi(takumi-js)是一款用 Rust 编写的高性能图像引擎,提供与 Satori 完全兼容的 API。迁移后,构建时间从 67 秒降至 42 秒,整体耗时缩短 30%+,CPU 与系统时间也相应下降。迁移过程无需改动现有 JSX 结构,只需:
1. 安装 takumi-js 并在 package.json 添加 OG_RENDER 环境变量切换。
2. 在动态 OG 端点中根据 siteConfig.ogRender 选择 takumiRenderSvg 或 satori。
3. 通过 sharp 将 SVG 转为高质量 JPEG。
核心收益
- 零布局重构:保持原有 JSX 结构,直接替换渲染引擎。
- Rust 原生速度:显著减少构建时间与 CPU 占用。
- 易于切换:环境变量即可在 CI 与本地构建间切换,支持双引擎对比。

如果你在 Astro、Next.js 或 SvelteKit 项目中使用静态生成的社交预览,考虑将渲染引擎从 Satori 换成 Takumi,可获得显著的构建性能提升。
Grafana MCP for Claude Code:直接查询仪表盘、指标与告警

Grafana MCP 是 Grafana Labs 官方的 MCP 服务器,专为 Claude Code 设计。它让 Claude Code 能够在 Grafana 9.0+ 或 Grafana Cloud 上直接搜索仪表盘、执行 PromQL 与 LogQL 查询、读取告警规则状态,并可查询事件。通过只读模式,开发者不再需要手动复制粘贴查询,提升排障效率。

快速上手
1. 在 Grafana 创建 Viewer 权限的服务账号并复制 token。
2. 在 Claude Code 里执行
```
claude mcp add --scope user --transport stdio grafana \
--env GRAFANA_URL= \
--env GRAFANA_SERVICE_ACCOUNT_TOKEN=<token> \
-- uvx mcp-grafana --disable-write
```
3. 重启 Claude Code,运行 claude mcp list 确认已连接。整个过程约 5 分钟。
功能概览
- 仪表盘:搜索、摘要、获取单个属性、读取面板查询。
- Prometheus:即时与区间 PromQL 查询,列出指标与标签,计算分位数。
- Loki:LogQL 查询,列出标签,提取日志模式。
- 告警:列出告警规则及状态,读取通知策略。
- 事件:搜索事件,Grafana Cloud 上可执行 Sift 检查。
使用提示
- 只读模式下,--disable-write 防止 Claude Code 创建或修改资源。
- 若需写入功能,可将服务账号角色改为 Editor 并去掉 --disable-write。
- 旧版 Grafana (<9.0) 会返回 400 “id is invalid”,请升级后再使用。
- 服务器支持 Prometheus、Loki、仪表盘、告警与事件默认开启,可通过 --enabled-tools 开启其他数据源。

结论
Grafana MCP 为 Claude Code 提供了完整的监控数据访问能力,减少手动操作,提升排障效率。它是开源(Apache 2.0)且免费,适用于自托管或 Grafana Cloud。
Zénit 0.5.4 R5:多窗口桌面编码工作区

Zénit 是一款桌面编码工作区,支持 Python 后端、JavaScript 前端、Monaco 编辑器和原生 WebView 窗口。它让编辑器、资源管理器、终端和 AI 助手在同一工作区内协同工作,却不强制它们占用同一显示器。你可以将编辑器或终端拆离到第二屏,或单独调整终端位置,所有未保存的改动会在外部编辑器与主应用之间同步,冲突会被保留而非被覆盖。
Melody 是工作区内的 AI 助手。你可以连接本地或支持的模型,R5 让请求的目标和上下文一目了然。选择“Selection”“Whole file”“No code”等模式,避免把整个文件无声发送给 AI。编辑模式使用完整文件,保证周围代码不被破坏;若缓冲区后续变更,过时的建议会被拒绝。文件计划可创建、更新或删除会话文件,并保留恢复副本。
Forge 是执行工作区。Run 按钮会保存当前文件,准备运行时并启动交互式终端。Python 版支持未保存内容的 Run,C/GDB 版提供调试动作。终端输出显示程序结果,执行卡片报告耗时和真实退出码。Stop 可结束跟踪进程而不关闭其他终端。

Zénit 目前仅 Windows 10/11 x64 版已验证,提供安装包、可移植 ZIP、清单和 SHA-256 校验。IDE 自带 Python 运行时,项目工具链与 AI 集成需单独配置。此版本为公开预览,支持 Apache-2.0 许可,欢迎贡献。
ParadeDB 通过段分区与位图提升 COUNT 与搜索性能

ParadeDB 在 2026 年 10 月发布的技术报告中展示了如何利用 ctid‑aware 段分区、倒排 DocId 映射和位图投影显著加速 COUNT 查询。对同一 Wikipedia 数据集的基准测试,ParadeDB 的 COUNT 通过段分区将可见性检查从 1,382 次下降到 30 次,吞吐率提升至 5,353 QPS,远超 TIN 的 2,645 QPS。
通过倒置 DocId 映射,单词频繁出现时的缓冲访问量从 7,500 次降至 400 次,减少 95% 的 I/O。
对高频词使用位图代替 BP128 编码,进一步将 99% 分位延迟减半。
在 Hacker News 数据集上,ParadeDB 对过滤计数、排序等多样化查询的吞吐率提升 10–22 倍,最快可达 66 倍。

这些优化使 ParadeDB 成为 Postgres 上的 Elasticsearch 替代方案,特别适合需要高吞吐量计数和复杂过滤的搜索场景。
Grafana Cloud IRM:一站式事故管理与 AI 调查

在收到前端 API 失败的警报后,团队通常需要在多个工具间切换:查看警报、检查仪表盘、在 Slack 里讨论。Grafana Cloud IRM 把这些步骤合并到一个 incident 记录里。打开警报组即可看到受影响服务、关联仪表盘、历史与聚合警报数,帮助快速判断严重性。
通过 Grafana Assistant,团队可在同一 Slack 线程里询问“还有哪些警报在触发?”并获得自动生成的摘要与检查建议。确认需要协调响应后,声明 incident,系统自动创建专属 Slack 频道、Zoom 会议和 AI 调查,省去手动创建的繁琐。
AI 调查会自动收集警报数据、仪表盘链接、时间线以及团队在 Slack 中的讨论,形成根因假设并展示证据。团队可在 Assistant Workspace 里添加、重新评估假设,甚至同步任务到 Jira 或 GitHub。根因确认后,结果直接写入 incident 记录,避免后期手工整理。

当问题解决后,Grafana Mobile App 让团队随时在手机上查看 incident 记录、时间线和 AI 调查,甚至直接生成并推送到 Confluence 的事后复盘。这样,所有关键上下文都保留在同一平台,减少信息丢失,提升响应效率。