steipete

Stars and mentions

Last 30 days, Oct 4 – Nov 2

GitHub stars4,255
mentions25
064128192256Oct 4Oct 18Nov 2
UTC days · repositories steipete owns34 repositories

Package downloads

Cumulative recorded downloads · since 2025-10-19

npm1.7M
0427.1K854.3K1.3M1.7MOct 4Oct 18Nov 2
Oct 21npm: 1/11 packages observed

Across 11 known packages in repositories steipete owns. Cumulative totals include recorded downloads before the selected range. Missing observations leave gaps; totals may be incomplete.

Top repositories

steipete’s repositories ranked by new stars, as on trending.

Loading

Contributes to

Repositories outside steipete’s account where steipete opened or reviewed pull requests in the past 365 days.

Who noticed steipete

Everyone who starred or forked steipete’s repositories since the archive began in 2011.

Notable accounts

Ordered by the stars their own repositories have received.

Biggest fans

Accounts that starred the most of these repositories.

Breakout weeks

Each repository’s best week of new stars, with the release published around it.

Mentions

25posts
Nov 31 post
  1. Zenn · · @sodeyama

    GitHubで年5万コントリビューションを超える10人の、AIエージェントのハーネスを読んだ はじめに 株式会社DeploAIで代表取締役CTOをしている袖山剛です。 営業を科学するプロダクトの開発と、お客様の業務にAIを組み込む仕事をしています。開発では Claude Code や Codex を並べて動かし、その周りの仕組み(ハーネス)と、エージェントに自律的に作業を回させる仕組み(ループ)を自分たちで作っています。 エージェントに開発を任せるようになってから、私の GitHub の contributions も増え、直近1年で 47,331 件(2026-11-03 時点)と5万に近づいてきました。1年で5万件は、1日平均で約140件です。同じくらい、あるいはそれ以上に手を動かしている人たちは、どんなハーネスやループで開発しているのか。それが気になって調べてみました。 GitHub の国別ランキングで、直近1年の contributions が5万を超える人を全員洗い出しました。その中に、AIエージェントの周りの道具を作っている人がどれだけいて、何を作っているのかを見ました。 結論:「確かめる手段」「止め方」「規則の検査」を先に作っている 69人のうち、AIエージェントに関わる自作のリポジトリがあったのは18人でした。その中から10人の取り組みを読み、共通していた設計を5つにまとめます。 エージェントが自分で確かめられる手段を、先にそろえている。 画面取得、本物のブラウザの操作、試験用のマシン、CI 上のシミュレータなどです。道具は MCP より先に CLI で作り、エージェントがそのまま実行して出力を読めるようにしています。 ループの止め方を、回数ではなく条件で決めている。 「新しい発見がない回が続いたら止める」「予算切れで止まったら完了ではなく不明として扱う」「同じところを行ったり来たりしたら別の考え方に回す」などです。 指示文書を機械で検査している。 CLAUDE.md や SKILL.md を linter で CI に掛けたり、規則を hook と審査役のエージェントで強制したりしています。書いた規則が守られているかを、人の目ではなく仕組みで確かめます。 判定は、毎回同じ結果になるものに寄せている。 検出は決まったルールで行い、AI は絞り込みと修正に使う。合否は各ステップの宣言した条件で決める。品質の指標は記録値を信用せず毎回測り直す、といった形です。 危ない操作の判定は、エージェントの申告ではなくホスト側の記録で行う。 入れ子の呼び出しの拒否、スレッドの自動解決、書き換えの許可を、エージェントが渡す引数ではなく、ホスト側の登録簿や修正の証拠、明示フラグで決めています。 どうやって調べたか 元のランキングから機械的に抜き出し、AIエージェント関連の取り組みは README と記事を読んで確かめました。 対象: gayanvoice/top-github-users の138か国分のリストで、total contributions が5万を超える人です。44か国の69人が該当しました。このランキングは国ごとにフォロワー数の下限で絞られているので、フォロワーの少ない人はもともと入っていません。 現在の値: 2026-11-03 に、各人の GitHub プロフィールに出る直近1年の contributions を取り直しました。今も5万を超えていたのは59人です。 取り組みの判定: リポジトリ名と説明で候補を絞り、README・ドキュメント・本人のブログを読みました。fork は本人の仕事に数えていません。スター数は 2026-11-03 時点の値です。 対象 今も直近1年で5万超 X を GitHub に登録 AIエージェント関連の自作あり 69人(44か国) 59人 33人 18人 一つ注意があります。contributions の多さと、開発の中身は比例しません。 直近1年で30万件(1日平均約820件)を超える人が10人いて、手作業だけの量とは限りません。今回はこの数字を「たくさん手を動かしている人の候補」として使い、評価には使っていません。 誰が、何を作っているのか 取り上げた10人の国と代表作は次のとおりです。 国はランキングの掲載国、X は本人が GitHub に登録しているアカウントです。 GitHub 国 X 代表作 ★ steipete イギリス @steipete openclaw 393,800 yegor256 中国 @yegor256 prompt 166 shuvonsec マレーシア @shuvonsecc Agentic-Bug-Hunter 5,567 nazt タイ @nazt maw-js 107 shaun0927 韓国 @nraycast openchrome 236 noahgift スペイン — paiml-mcp-agent-toolkit 169 PrzemyslawKlys ポーランド @PrzemyslawKlys IntelligenceX 11 danlex ルクセンブルク — autoresearch 6 bannzai 日本 @_bannzai_ simtunnel 2 rldyourmnd カザフスタン — ai-stp 7 スター数には大きな差がありますが、この記事ではスター数で比べず、README から読み取れる設計の考えを見ます。次の節で1人ずつ見ます。 1人ずつ見る 各節は、代表作のカード、プロフィール、主な取り組みの表、参考になる点の順に並べました。 発信(記事や講座)は折りたたんであります。 steipete:エージェントに「確かめる手段」を渡す道具を量産する OpenClaw の作者 Peter Steinberger は、エージェントが自分の変更を自分で確かめられる道具を次々に公開し、その使い方を記事で書いています。 openclaw/openclaw 名前 国 所属・肩書き 区分 リンク Peter Steinberger イギリス OpenAI 所属。以前は PSPDFKit の創業者 AIエージェント・ハーネス・ループ GitHub · X @steipete · steipete.me 主な取り組み 取り組み ★ 何をするか 面白い点 openclaw 393,800 ローカル常駐型の汎用 AI エージェント スキル登録所 clawhub(★9,544)、ワークフロー用シェル lobster(★1,280)まで周辺がそろう agent-scripts 7,439 Codex と Claude Code で共有する AGENTS.MD とスキル群 同期スクリプトと検証フック付き。複数エージェントで道具を共有する実物 agent-rules 5,671 Claude Code・Cursor 向けの規則と知識 規則ファイルを配る形の早い例 CodexBar 22,965 Codex・Claude Code の使用量をメニューバーに表示 並列運用で枠を管理する道具 oracle 4,060 行き詰まったエージェントがファイルと質問を GPT-5 Pro に投げる CLI 上位モデルへの相談をエージェントに任せる clawsweeper 2,005 Issue・PR を定期的に見直し、確度の高いものだけ安全ゲート付きで閉じる 定期実行の保守ループ clawpatch 815 機能ごとに切ってレビュー→修正→再検証を回す 途中から再開できるループ設計 crabbox 1,514 エージェントに試験用のマシンを貸し出す 検証環境を道具として渡す Peekaboo / mcporter 5,424 / 5,101 macOS の画面取得 CLI・MCP/MCP を TypeScript や CLI から呼ぶ 「見て確かめる」手段と MCP の CLI 化 sweetlink 168 今開いているタブの Web アプリにエージェントをつなぐ 説明文自体が "Close the loop" 発信(記事・講座) Just Talk To It:エージェントを3〜8本並べて同じフォルダで動かす。外部ハーネスより CLI。動くアプリは chrome-devtools-mcp で調べさせてループを閉じる。 Shipping at Inference Speed:新しい道具はまず CLI で作り、エージェント自身が実行して確かめられるようにする。 記事一覧:「Claude Code is My Computer」「Commanding Your Claude Code Army」など。 Latent Space のまとめ:エージェントが内側のループ、人が外側のループを回すという考え方。 ! 参考になる点 道具は MCP より先に CLI で作る。エージェントがそのまま実行し、出力で自分の変更を確かめられる。 画面取得・ブラウザ接続・試験マシンなど、「確かめる手段」を先にそろえる。 保守ループには「確度の高いものだけ自動で閉じる」安全ゲートを付ける。 yegor256:規律を書き、linter で守らせ、毎日回す Yegor Bugayenko は、エージェントへの規律を「書く・検査する・回す」の一続きで運用しています。 yegor256/prompt 名前 国 所属・肩書き 区分 リンク Yegor Bugayenko 中国 『Elegant Objects』『Angry Tests』の著者。zerocracy の創業者 ハーネス・ループ GitHub · X @yegor256 · yegor256.com · zerocracy 主な取り組み 取り組み ★ 何をするか 面白い点 prompt 166 ~/.claude/CLAUDE.md に置くコーディング規律の manifesto(TDD、PDD、範囲外の変更をしない、など) 著書の設計思想をそのままエージェントへの指示にしている dogent 8 SKILL.md・CLAUDE.md・AGENTS.md を行ごとに合否判定する linter 指示文書そのものを CI で検査する。agnix や AgentLinter との違いも整理 zerocracy/zealot 4 Claude Routines で毎日動かす skill 群 コメント応答→triage→PR review→bug 報告→PR 1本の定型の連鎖で保守を自律化 plugins 23 自作 Claude Code plugin の marketplace courier(PR 作成)、bugscribe(Issue 起票)、critic、purist、witness(Telegram 報告) jinka 2 「願い」の Markdown を置いて実行するだけのオーケストレータ(2026-10-30 作成) 内部で Claude Code を使う rultor / 0pdd 573 / 144 以前からの merge bot と、コード内の TODO から Issue を作る bot AI 以前から bot で回す運用をしていた土台 発信(記事・講座) Help the Agent to Feel(2026-05-29):CLAUDE.md の manifesto を「飴」、自作 linter を「鞭」としてエージェントに美意識を教える。 Couriers, Not Coders(2026-05-03):AI 時代には動くコードは最低条件で、貢献者には規律が求められる。 ブログ一覧:「Comments Considered Harmful in the Age of LLMs」など 2026 年は AI 関連が続く。 ! 参考になる点 指示文書(CLAUDE.md・SKILL.md)を linter で CI に掛け、規則が守られているかを機械で確かめる。 自律ループを「毎日、決まった順の5段」と小さく固定し、成果物を PR 1本に限る。 結果の報告先(witness → Telegram)も plugin として切り出す。 shuvonsec:検出は決まったルール、AI は絞り込みと修正 Shuvon は、バグバウンティ(脆弱性報奨金)の調査を Claude Code のプラグインとスキルで自動化しています。分野はセキュリティです。 awarexone/Agentic-Bug-Hunter 名前 国 所属・肩書き 区分 リンク Md Shariar Shanaz Shuvon マレーシア AwareXone の CEO AIエージェント・ハーネス(セキュリティ) GitHub · X @shuvonsecc · shuvonsec.com · awarexone 主な取り組み 取り組み ★ 何をするか 面白い点 Agentic-Bug-Hunter 5,567 CLI の bughunter hunt と Claude Code の /hunt で、偵察→発見→検証→報告を1本の流れで回す 無料プロバイダでも動き PyPI で配布。fork 979、外部コントリビューターも多い AXguard 25 AI に書かせたアプリの公開前検査 コマンド31・スキル38・承認付き MCP ツール31。検出は決定的ルール47本、AI は絞り込みと修正だけ public-skills-builder 249 公開済みの HackerOne 報告や writeup から脆弱性分類ごとにスキルを自動生成 過去の知見をスキルに蒸留する web3-bug-bounty-hunting-ai-skills 178 Immunefi の報告 2,749 件などから作ったスマートコントラクト監査用スキル18個 大量の事例から領域知識をスキル化 発信(記事・講座) shuvonsec.com:本人のサイト。 ! 参考になる点 検出は決定的なルール、AI は絞り込みと修正だけという役割分担で、結果の再現性を保つ。 公開された大量の事例を分類ごとのスキルに蒸留する。自社の過去の障害や PR でも同じことができる。 「公開前の関門」を各エージェントのコマンドとして配り、どのツールからでも同じ検査を通す。 nazt:ループは「新しい発見がなくなったら」止める Nat は、tmux 上でマシンをまたいでエージェントを動かす maw-js と、並列エージェントの運用をまとめた本を書いています。 Soul-Brews-Studio/maw-js 名前 国 所属・肩書き 区分 リンク Nat タイ Chiang Mai Maker Club AIエージェント・ハーネス・ループ GitHub · X @nazt · Soul-Brews-Studio 主な取り組み 取り組み ★ 何をするか 面白い点 maw-js 107 tmux の窓ごとにエージェントを置き wake・hey・peek・done で操作。Claude Code・Codex・Aider・OpenCode に対応 ノード間は署名付き HTTP、チームを YAML で宣言。plugin 89個 arra-oracle-skills-cli 125 25個の skill を19種類のエージェントに入れる /rrr(振り返り)、/forward(引継ぎ)、/round-table(3〜8体で合議)など arra-oracle-v3 90 SQLite の記憶・検索層。HTTP・MCP・CLI から同じ記憶を使う 上書きは取り消せる履歴として残し出所も記録 本『Agents in Parallel』の要点 並列化で得るのは速さより正しさ。手法の違うエージェントの結果が食い違うところが問題の場所(3・4章)。 The Team Is a File: 人が書く charter は git で管理し、機械が書く実行状態は捨てて作り直せるものにする(5章)。 Verify the Invariant, Not the Roster: 名簿では3体とも別 worktree だったが、OS に聞くと同じパスで上書きし合っていた(7章)。 Loop-Until-Dry: 新しい発見のない回が K 回続いたら止める。却下した候補も重複除去に残す。約400サービスの例では新規が 61→19→4→0→0 と減って84件で停止。予算切れは「完了」ではなく「不明」(9章)。 発信(記事・講座) Agents in Parallel:並列エージェントの運用パターンをまとめた本。上の要点はここから。 ! 参考になる点 ループの止め方を回数ではなく「新しい発見のない回が K 回」にし、却下したものも記録する。予算切れと完了を区別する。 「稼働中」の表示を信用せず、各 worker の作業ディレクトリとプロセスを OS から読み戻す。 チームは宣言ファイルで定義し、実行状態は捨てて作り直せるようにする。 shaun0927:ループの暴走を、ホスト側の記録で止める Junghwan は、本物の Chrome を操作する MCP「openchrome」の作者で、自己改善ループの基盤 ouroboros の2番目に多い貢献者です。 shaun0927/openchrome 名前 国 所属・肩書き 区分 リンク Junghwan 韓国 DaedalGames 所属 ハーネス・ループ GitHub · X @nraycast 主な取り組み 取り組み ★ 何をするか 面白い点 openchrome 236 Claude Code や Codex から、ログイン済みの本物の Chrome を CDP で操作する MCP。v1.15.0(2026-09-24) 複数クライアントは1つの所有者+broker で共有。YAML 手順の合否は LLM でなく各ステップの assert で決める opensafari 16 Xcode Simulator 上の iOS Safari を並列で操作する MCP openchrome の iOS 版 Q00/ouroboros(他人のリポジトリ) 6,308 聞き取り→仕様固定→実行→評価→次の世代へ、を回す自己改善ループ。収束は類似度 0.95 以上、上限30世代 shaun0927 は 670 コミット、PR 472件で2位 ouroboros に出した、ループ制御の PR(すべて merge 済み) #2722: Ralph の入れ子を、エージェントが渡す引数ではなくホスト側のセッション登録簿で拒否する。 #1294: 1回分の timeout を既定1800秒ではなく全体予算から割り当てる。 #1175: 行ったり来たりを検出したら、すぐ止めずに水平思考のペルソナへ回す。 #1178: 実行時間の上限(既定4時間)を設け、超えたら理由を記録して止める。 #1144: イベント項目の長さと入れ子の深さ(最大32)に上限を設ける。 ! 参考になる点 止まった理由を決まった種類に絞り、「予算切れ」なら BLOCKED、「行ったり来たり」なら別の考え方へ、と次の対応を分ける。 再帰の防止は、エージェントが渡す引数ではなくホスト側の記録で判定する。 1回分の時間上限は全体の予算から割り当て、ブラウザのような共有資源は「1つの所有者と broker」にする。 noahgift:品質の関門は「悪化だけを止める」 Noah Gift は、エージェントのコーディングを決まった検査で縛る Rust 製のツール PMAT を開発しています。 paiml/paiml-mcp-agent-toolkit 名前 国 所属・肩書き 区分 リンク Noah Gift スペイン Pragmatic AI Labs の創業者。AWS ML Hero ハーネス GitHub · paiml.com · paiml 主な取り組み 取り組み ★ 何をするか 面白い点 PMAT(paiml-mcp-agent-toolkit) 169 1つのバイナリで CLI・MCP を提供。技術負債の採点(A+〜F)、変異テスト、162項目の検査、品質と故障履歴で関数を順位付けする検索。v3.42.0 下の「設計の要点」を参照 rust-mcp-sdk 51 Rust 製の MCP SDK。v2.23.0(2026-10-28) 主な開発者は別の人で、本人は138コミット pforge 3 YAML 定義から MCP サーバーを作る MCP を宣言で作る sbx-c2-agent-sandboxes — AI が生成したコードを bubblewrap・Landlock・seccomp の中で動かす実行器(講座用) エージェントの隔離 PMAT の設計の要点 ラチェット: 各指標に再計測コマンドを書き、ゲートは記録値を信用せず毎回測り直す。悪化だけを止め、測れなければ不合格。閾値を緩めるときは理由が必須。 決定論: 採点の出力をバイト単位で毎回同じにし、複数のエージェントの結論をそろえる。 pmat verify が通れば CI も通る。pmat kaizen は安全な範囲の自動修正から push まで行う。 pmat-book 第67章: 自分のツールを5ラウンド使って58件の欠陥を出した記録。リリース前は多エージェントで111コマンドを並列に試し、懐疑役のエージェントに反証させてから直す。(開く) 発信(記事・講座) Claude From Zero(Coursera):CLAUDE.md、skills、出力の形を契約で決めた sub-agent、hook によるゲート。 ai-tooling の講座群:「Deterministic LLM Programming」など。 ! 参考になる点 品質ゲートは固定の閾値ではなく「再計測コマンド付きのラチェット」にし、悪化だけ止める。 判定の出力を決定的にして、エージェント同士の結論がずれないようにする。 手元で CI と同じゲートを先に通す入口を用意する。 PrzemyslawKlys:スレッドを閉じるのは、修正の証拠があるときだけ Przemysław Kłys は、Codex を使う PR レビューの仕組み IntelligenceX を自分で運用しています。 EvotecIT/IntelligenceX 名前 国 所属・肩書き 区分 リンク Przemysław Kłys ポーランド Evotec 所属。Microsoft MVP ハーネス・ループ GitHub · X @PrzemyslawKlys · evotec.xyz · intelligencex.dev 主な取り組み 取り組み ★ 何をするか 面白い点 IntelligenceX 11 GitHub Actions 上の PR レビュアー、Windows の常駐チャット、ツールパック、CLI・.NET・PowerShell をまとめた基盤 サーバーを持たず、認証情報と GitHub App は利用者側が用意 keep-codex-fast 1 Codex のローカル状態を保守する skill 最初は見るだけ。古い会話は引継ぎメモを書いてからアーカイブ PSPublishModule PR #998 — 1つの正本から Codex 用と Claude 用の plugin を生成・検証 複数エージェント向けの配布を一本化 MCP サーバーの追加 — OfficeIMO・Mailozaurr・DesktopManager をエージェントから使えるようにする DesktopManager は既定が読み取り専用で、書き換えは --allow-mutations が必要 レビューのループの流れ diff を選んで分割し、秘密情報を伏せる。 モデルを呼んで指摘を構造化し、要約コメントと inline コメントを付ける。 既存スレッドを分類し、修正 push の後に再レビュー。「Todo List」「Critical Issues」は merge を止め、「Other Issues」は提案扱い。 bot のスレッドを自動で解決するのは修正の証拠があるときだけ。予算ガード、信頼できない PR には秘密情報と書き込み権限を渡さない、workflow だけの PR はレビューしない。 発信(記事・講座) IX Reviewer in Action:2026年2〜3月に reviewer・セキュリティ設定・チーム導入の記事。 reviewer の概要:provider の選択肢とレビューの流れ。 ! 参考になる点 レビューのスレッドを自動で解決するのは、修正の証拠があるときだけにする。 CI の失敗を「直すべきもの」と「インフラ要因」に分け、後者でコードをいじらせない。 MCP は既定を読み取り専用にし、書き換えは明示フラグで解放する。 danlex:審査役の全員一致で merge し、改善しなければ捨てる Alexandru Dan は、Claude Code を hook と審査役のエージェントで縛る仕組みと、審査役付きの自律的な調査ループを試作しています。 danlex/autoresearch 名前 国 所属・肩書き 区分 リンク Alexandru Dan ルクセンブルク — ハーネス・ループ GitHub · alexandrudan.com 主な取り組み 取り組み ★ 何をするか 面白い点 autoresearch 6 goal.md を起点に Issue 生成→claude -p で調査→PR→Opus 審査員3名の全会一致で merge スコアが改善しなければ branch を破棄。Ralph 型ループに検証の門を付けた構成 agentic-contract 1 契約文書、PreToolUse hook による遮断・確認、Stop hook と読取専用の審査 subagent の3層 「お願い」を強制力のある規則に変える forge 0 Claude が監督役と教師役を務め、Qwen3 1.7B を採点して LoRA 微調整を重ねる tmux 上の3者がファイル経由でやり取りする自己改善ループ ethicalhive 1 別 context の Claude が草稿を敵対的に監査 25件で精度 80% と、自分の限界を自己申告 claurn 0 会話記録から3回以上繰り返す型を拾い、hook・skill・/loop の導入を提案 ハーネス自体を育てるコーチ役 council 1 Claude Code・Codex・Gemini CLI に同じ問いを投げて結果を合成 複数エージェントの合議 発信(記事・講座) alexandrudan.com:本人のサイト。上の取り組みが載っている。 ! 参考になる点 merge を「審査員複数の全会一致」と「スコアが改善したときだけ」にし、改善しなければ捨てる。 守らせたい規則は文書だけでなく、実行前の hook と終了時の審査の両方に掛ける。 繰り返しの作業を会話記録から拾い、ハーネスの改善候補にする。 bannzai:重い検証環境を CI に追い出し、作業ごとに割り当てる bannzai は、Claude Code や Codex を並べて動かす開発者向けに、動作確認・レビュー・状況把握を支える小さな道具を作っています。 bannzai/simtunnel 名前 国 所属・肩書き 区分 リンク bannzai 日本 — ハーネス GitHub · X @_bannzai_ · Zenn 主な取り組み 取り組み ★ 何をするか 面白い点 simtunnel 2 GitHub Actions の macOS ランナー上で iOS シミュレータを起動し、Tailscale 経由で手元のエージェントから操作 worktree ごとに1セッション。手元の Mac を占有せずに実機に近い環境で確かめられる webtunnel 0 simtunnel の Web 版。ランナー上の Chromium を agent-browser から操作 録画を PR に残せる fusen 0 VS Code 拡張+MCP。人がコード行に付けた付箋をエージェントに渡し、エージェントも行に返す 人が承認・却下する双方向レビュー agent-timeline 0 Claude Code と Codex のセッションを X 風のタイムラインで表示 スレッドに返信すると tmux の pane へ指示が届く pre-github 0 GitHub 互換 API で PR・Issue を公開前にプレビュー 個人情報や秘密情報らしい文字列を目立たせる tansu 0 ローカルの Notion 風データベース CLI と MCP からエージェントが読み書き 発信(記事・講座) Zenn:本人の記事一覧。 ! 参考になる点 重い検証環境(iOS シミュレータ、ブラウザ)を CI のランナーに追い出し、worktree ごとに割り当てる。 人とエージェントのやり取りを「コード行の付箋」や「タイムラインへの返信」にして、指示の粒度を細かくする。 エージェントが外へ出すもの(PR・Issue)を公開前に検査する。 rldyourmnd:ハーネスの構成一式を、版を固定して検証してから入れる Danil Silantyev は、ハーネスの構成一式を部品のパッケージとして検証し、エージェント自身に入れさせる CLI を作っています。 ai-engineers-guild/ai-stp 名前 国 所属・肩書き 区分 リンク Danil Silantyev カザフスタン NDDev の CEO ハーネス GitHub · nddev.ai · ai-engineers-guild 主な取り組み 取り組み ★ 何をするか 面白い点 ai-stp 7 instruction・skill・MCP・hook・command・agent・plugin・setting を版固定の部品のグラフとして検証・組立・導入 想定利用者はエージェントで、help --agent --json のような機械向けの契約を持つ ai-stp-experiments 0 8種類の部品と組み合わせについて81件の実験を宣言的に書いた素材集 ハーネスの構成を実験で比べる hack-setup 1 Codex の版と道具一式を固定した共有エージェント環境を1コマンドで再現 gh のログインとメンバーの照合でコミットの取り違えを防ぐ 発信(記事・講座) nddev.ai:本人の会社のサイト。 ! 参考になる点 ハーネス設定を版固定のパッケージとして扱い、導入前に組み合わせを検証する。 道具の利用者をエージェントと定め、JSON の help など機械が読める契約を先に用意する。 チームのエージェント環境を1コマンドで再現できるようにする。 自分たちのループに持ち込むなら、何から始めるか まず「止め方」と「確かめ方」を、エージェントの申告に頼らない形で決めるのが先です。 10人の取り組みを、自分たちの開発に当てはめると次の順になります。 止まった理由を決まった種類に分ける。 完了・予算切れ・行ったり来たり・新しい発見なしを区別し、それぞれ次の扱いを決めます(nazt、shaun0927)。 動いている証拠を、表示ではなく実物から読む。 作業ディレクトリ、プロセス、修正の証拠を、ホスト側で読み戻します(nazt、shaun0927、PrzemyslawKlys)。 指示文書と品質の関門を機械で検査する。 規則は linter や hook に掛け、品質は悪化だけを止めます(yegor256、danlex、noahgift)。 確かめる道具を CLI で渡す。 画面、ブラウザ、試験用の環境を、エージェントが自分で呼べるようにします(steipete、shaun0927、bannzai)。 参考資料 gayanvoice/top-github-users(total_contributions) Peter Steinberger「Just Talk To It - the no-bs Way of Agentic Engineering」「Shipping at Inference Speed」 Yegor Bugayenko「Help the Agent to Feel」「Couriers, Not Coders」 Nat「Agents in Parallel」 Pragmatic AI Labs「pmat-book 第67章」 IntelligenceX「Reviewer overview」「IX Reviewer in Action」 営業の受注率を上げるAIネイティブなサービス Intelligent Sales を開発しています。 筆者:袖山剛(株式会社DeploAI CTO) 線形代数・微積分・最適化・統計・ベイズ統計を学び直した記録を書いています。

  2. @xbquan steipete/CodexBar 丢给codex或者 @bot 帮你装就行了

    1 like · 42 views
  3. Claude Code MCP Servers: Setup, Config & Cron-Safe Template Originally published at Unattended. Claude Code MCP servers are external programs or hosted endpoints that give Claude Code extra tools, such as a browser, GitHub, Sentry or a database. You add one with claude mcp add, check it with claude mcp list and remove it with claude mcp remove <name>. In the words of the official MCP docs, "MCP servers give Claude Code access to your tools, databases, and APIs." Most guides stop at the interactive setup. This one also covers what changes when nobody is at the keyboard: which servers a cron run loads, how to scope their permissions, which timeouts apply, and what happens when a server goes down partway through a job. Which option is right for you? Choose the scope and transport that fit how you work, then open the matching page. Each row gives a one-line reason. | Your situation | What to pick first | First page to open | |---|---|---| | Beginner, never added a server | One hosted HTTP server at the default local scope. It needs no install or sign-in | Connect to MCP servers (quickstart) | | Daily interactive work across many repos | --scope user for the 1–3 servers you use everywhere, because they load in every project | MCP reference: scopes | | Small team sharing one repo | --scope project (.mcp.json committed), so teammates get the same config | Quickstart: Edit .mcp.json directly | | Cron / headless jobs | A separate JSON file passed with --mcp-config plus --strict-mcp-config, so the job loads only what you list | Run Claude Code programmatically | | Tight token budget | Fewer servers, because every connected server's tool names load into each session | Quickstart note on context | For a cron job, keep the automation's server list out of your personal config. The rest of this guide explains why. What is a Claude Code MCP server? A Claude Code MCP server is a process or hosted URL that exposes extra tools to Claude Code over the Model Context Protocol. Claude Code calls those tools like its built-in ones. The quickstart describes it as letting Claude Code use tools "beyond its built-in set, such as searching an issue tracker, querying a database, or controlling a web browser." Servers come in two shapes: - Local (stdio): Claude Code starts the program as a subprocess on your machine. The Playwright server is one example. Use this shape for anything that needs local resources such as a browser, the filesystem or a database socket (quickstart). - Remote (HTTP): the vendor hosts the server and you register its URL. Anthropic's remote MCP announcement pitches this as the lower-maintenance option because you have no local server to manage. Each tool appears to Claude under a prefixed name, mcp__<server>__<tool>. That name matters later, because permission rules match against it (permissions docs). So, can Claude Code use MCP servers? Yes, in every surface. The CLI, the desktop app, VS Code and cloud sessions can all connect. Connectors you add at claude.ai also load in the CLI when you sign in with that account (quickstart: Connect from other surfaces). How do you install Claude Code MCP servers? For most servers, installing is the same step as registering. You run claude mcp add, and either Claude Code fetches the package through npx the first time it starts the server, or you point it at a hosted URL. Prerequisites, per the quickstart: 1. Install and authenticate Claude Code. 2. Open a terminal in a project directory. An empty directory works. 3. For npx-based local servers, install Node.js. The Playwright server, for example, requires Node.js 18 or later. Then run the add command in your shell, not inside a claude session: # Remote example from the docs: no auth needed claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp # Local example from the docs: Playwright browser server claude mcp add playwright -- npx -y @playwright/mcp@latest Common install mistakes and fixes: - "Added" but ✘ Failed to connect. The Added message only means the entry was saved. On the first check, npx may still be downloading the package, so wait and run claude mcp list again (quickstart). - Startup times out. The default startup timeout is 30 seconds. Raise it with MCP_TIMEOUT=60000 claude. The value is in milliseconds (quickstart troubleshooting). - Need to diagnose a local server. Run the server command yourself, for example npx -y @playwright/mcp@latest. If it starts and waits for input, the server works and the problem is in your Claude Code entry. If you already set up servers in the Claude Desktop chat app, claude mcp add-from-claude-desktop copies them into the CLI on macOS or WSL (quickstart). How do you configure Claude Code MCP servers (config file)? Claude Code stores MCP server configuration in ~/.claude.json or a project's .mcp.json, depending on scope. ~/.claude.json holds the local and user scopes, and .mcp.json in the project root holds the project scope. The file depends on the --scope you pick (quickstart). | Scope | File | Who gets it | |---|---|---| | local (default) | ~/.claude.json, under this project's entry | Only you, only this project | | project | .mcp.json in project root | Everyone who clones the repo | | user | ~/.claude.json, top-level mcpServers | Only you, all projects | On Windows, ~/.claude.json resolves to %USERPROFILE%\.claude.json. If CLAUDE_CONFIG_DIR is set, Claude Code reads the file from that directory instead (quickstart). When one name exists in several scopes, precedence runs local, then project, then user, then plugins, then claude.ai connectors (MCP reference). Here is a hand-written .mcp.json example. The first two entries come from the docs. The ${...} variables and the timeout field are documented options: { "mcpServers": { "claude-code-docs": { "type": "http", "url": "https://code.claude.com/docs/mcp" }, "playwright": { "type": "stdio", "command": "npx", "args": ["-y", "@playwright/mcp@latest"] }, "internal-api": { "type": "http", "url": "${API_BASE_URL:-https://api.example.com}/mcp", "headers": { "Authorization": "Bearer ${API_KEY}" }, "timeout": 600000 } } } The details that matter, all from the MCP reference: - ${VAR} and ${VAR:-default} expand in command, args and env for stdio servers, and in url and headers for HTTP servers. Keep tokens in the environment, not in a committed file. - Some credentials always read as empty in remote URLs and headers, on purpose: ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, NPM_TOKEN and a few others. If your header comes out blank, this is likely why. - An entry with a url but no type is an error. Add "type": "http". - A per-server timeout in milliseconds overrides MCP_TOOL_TIMEOUT for that server only. Pitfall: editing the wrong file. Claude Code does not read ~/.claude/.mcp.json, ~/.claude/mcp.json, ~/.claude/config/mcp.json or %APPDATA%\Claude\mcp.json (quickstart troubleshooting). Edits to .mcp.json take effect only when a new session starts (quickstart troubleshooting). A malformed entry is skipped while the others still load, so run claude mcp list and look for the parse warning (quickstart troubleshooting). How do you add and remove a Claude Code MCP server? You add a Claude Code MCP server with claude mcp add (or add-json) and remove it with claude mcp remove <name>. Both commands print the file they modified (quickstart). Add, by server type (MCP reference): 1. Remote HTTP: claude mcp add --transport http <name> <url> 2. Remote with a static token: append --header "Authorization: Bearer <token>". The docs' GitHub example is claude mcp add --transport http github https://api.githubcopilot.com/mcp/ --header "Authorization: Bearer YOUR_GITHUB_PAT". 3. Local stdio: claude mcp add [options] <name> -- <command> [args...], for example --env AIRTABLE_API_KEY=YOUR_KEY. 4. Raw JSON: claude mcp add-json <name> '<json>', which is also the only way to add a WebSocket (ws) server. 5. OAuth servers such as Sentry (https://mcp.sentry.dev/mcp): add the URL, start claude, run /mcp, select the server and choose Authenticate. You can also run claude mcp login <name> from the shell. The -- separator is the most common mistake. Your own options (--transport, --env, --scope) go before it, and the docs say "Everything after -- is passed to the server untouched" (MCP reference). If claude mcp get <name> shows a different command from the one you typed, remove the server and add it again with -- in place. Remove or pause: claude mcp remove claude-code-docs # default scope claude mcp remove claude-code-docs --scope local # when it exists in several scopes If the name exists in more than one scope, remove reports exists in multiple scopes, and you choose one with --scope (quickstart). To pause a server without deleting it, toggle it off in the /mcp panel. Claude Code records that choice per project in a disabledMcpServers list in ~/.claude.json (MCP reference). You can't change a server's scope in place. Remove it and add it again at the new scope (quickstart). How do you connect Claude Code to local vs remote MCP servers? Claude Code connects to local servers over stdio and to remote servers over HTTP. SSE still works but is deprecated, and WebSocket can only be configured through JSON (MCP reference). For unattended runs, the biggest difference between them is how each transport fails and recovers. | | Local (stdio) | Remote (HTTP) | |---|---|---| | Runs where | Subprocess on your machine | Vendor's infrastructure | | Auth | Env vars (--env) | Header token, OAuth, or headersHelper script | | Default idle timeout per tool call | 1,800,000 ms (30 min) | 300,000 ms (5 min) | | If it drops mid-session | In claude -p, retried on the next tool call | Up to 5 retries with exponential backoff starting at 1 s | | If first connect fails | Marked failed; use /mcp Reconnect | Transient errors retried up to 3 times | | Main risk unattended | Missing runtime (Node), slow first npx download | Network, expired token, vendor outage | The idle timeout figures come from the environment variables reference (CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT, v2.1.187 or later). The retry behavior comes from the MCP reference. Authentication errors are different: Claude Code stops retrying and waits for you to sign in again. A cron job can't do that, which is why OAuth servers fit unattended runs poorly unless their credentials stay valid. Quick connectivity check. For an HTTP server, run curl -I <url>. A 404 or 405 still means the server is up, because many MCP endpoints answer only POST. A 401 or 403 means you need to authenticate. No response at all points to the URL or the network (quickstart troubleshooting). How do you use a Claude Code MCP server in a session? You use a Claude Code MCP server by asking for the task in plain language. Claude picks the relevant tool on its own, and you approve the first call when prompted (quickstart). 1. Run claude mcp list and confirm the server shows ✔ Connected. 2. Start claude in the same project. Servers at local scope are tied to the directory where you added them. 3. Ask for something that needs the server, for example: Use playwright to open https://example.com and tell me the page title. 4. Approve the permission prompt. Each tool call is labeled with the server name, such as browser_navigate from playwright. 5. Run /mcp at any time to see status and tool lists, reconnect a server or authenticate. Naming the server in your prompt isn't required. The docs do it in the walkthrough so the test definitely goes through the new server rather than a built-in tool such as web fetch. Watch the output size. Claude Code shows a warning when an MCP tool returns more than 10,000 tokens and caps output at 25,000 tokens by default. MAX_MCP_OUTPUT_TOKENS changes the cap (MCP reference). Large database or log queries hit that cap quickly. For ways to trim them, see how to see token usage and reduce it. Status meanings you'll see (quickstart): - ! Needs authentication: the server is reachable but needs a browser sign-in or a token. - ! Connected · tools fetch failed: the server connected but couldn't list its tools. Run claude mcp get <name> for details. - ⏸ Pending approval: a project-scoped server you haven't approved yet. - The server connects but shows no tools: usually a missing required env var, such as an API key. Claude Code MCP servers list: which ones are worth running? For recurring solo-builder work, start with two or three servers that each cover a job you would otherwise script by hand. Each server you connect adds context cost and permission surface (quickstart). | Server | Transport | Good for | Not for / limitation | |---|---|---|---| | Claude Code docs (https://code.claude.com/docs/mcp) | HTTP, no auth | Your first test; looking up flags | Only searches docs, no real work | | GitHub (https://api.githubcopilot.com/mcp/) | HTTP + PAT | Triage issues and PRs on a schedule | The token's scope is the blast radius; use a fine-grained PAT | | Playwright (@playwright/mcp) | stdio, Node 18+ | Smoke-checking a deployed page | Needs a browser on the host, heavy on a small VPS | | Sentry (https://mcp.sentry.dev/mcp) | HTTP + OAuth | Morning error summaries | OAuth expiry can block cron runs | | Filesystem / Git / Fetch / Time (reference servers) | stdio | Learning, narrow local tasks | Reference code only (see below) | Sources: the quickstart for docs, Playwright and Sentry, the MCP reference for GitHub, and the modelcontextprotocol/servers repo for the reference set. Two things many "best MCP servers" lists get wrong as of October 2026. First, the official repo now maintains seven reference servers: Everything, Fetch, Filesystem, Git, Memory, Sequential Thinking and Time. Second, it archived thirteen others, including GitHub, PostgreSQL, Slack, Puppeteer and SQLite, in servers-archived (servers repo). If a tutorial tells you to install the old GitHub or Postgres package from that repo, look for the vendor's own server instead. Where do you find and vet Claude Code MCP servers on GitHub? Find Claude Code MCP servers in the official MCP Registry, Anthropic's reviewed Anthropic Directory, or vendor GitHub repos. Vet each one before an automation depends on it. The official repo says plainly that its servers are educational examples, "not as production-ready solutions" (modelcontextprotocol/servers). Anthropic's MCP page adds: "Verify you trust each server before connecting it." It also warns that servers which fetch external content carry prompt injection risk (MCP reference). A short vetting checklist before a server goes into a scheduled job: 1. Who publishes it? Prefer the vendor's own server (GitHub, Sentry, Microsoft's Playwright) over a third-party wrapper. 2. What does the token allow? A server can only do what its credential permits. Create a dedicated token with read-only or single-repo scope where the vendor offers it. 3. Is it pinned? @latest in npx args can change under a cron job overnight. Pin a version in automation configs, for example @playwright/mcp@<version>, and update it on purpose. 4. Does it read untrusted content? Web fetchers, issue readers and inbox readers can carry injected instructions. Pair them with narrow allow rules (next section). 5. Is it still maintained? A recent commit history and open-issue activity matter more than star count. Also be careful with similar names: projects like steipete/claude-code-mcp run Claude Code itself as an MCP server for other agents (GitHub). That's the opposite direction from this guide. How do you run Claude Code MCP servers headlessly and safely? Give each headless job its own server file, allowlist named MCP tools, set short timeouts, and check server status in the output. A claude -p run has nobody to answer prompts. Why your interactive setup is risky in cron Without --bare, claude -p loads the MCP servers in the working directory's .mcp.json, and the headless docs note: "A -p session shows no workspace trust dialog and no per-server approval prompt." The approval that protects you interactively is skipped. Two flags close the gap: - --bare skips auto-discovery of MCP servers, hooks and CLAUDE.md, and connects only servers you pass with --mcp-config. The limitation: bare mode never reads OAuth or keychain credentials, so it needs ANTHROPIC_API_KEY and won't use your Pro or Max login (headless docs). - --strict-mcp-config with --mcp-config loads only the servers in that file and ignores other MCP configuration (CLI reference). Use this one if you run on a subscription. One open report says it does not override a project's disabledMcpServers list (issue #14490), so don't disable your automation's servers in /mcp. Permission scoping From v2.1.302, a -p run starts in Manual mode when nothing else sets a mode. Any call that needs approval is denied unless an allow rule, a PermissionRequest hook or a permission prompt tool approves it (headless docs). Use allow rules to list exactly which MCP tools the job may call: - mcp__github allows every tool from the github server. - mcp__github__get_issue allows a single tool. The rule format is described in the permissions docs. Prefer naming single tools for jobs that write anything. Also add --permission-prompts none (v2.1.259 or later). With it, Claude is told nobody can approve, so it stops retrying denied calls, and any MCP elicitation request that no hook answers is cancelled (headless docs). For a complete rule set, see the headless permissions template. Timeouts that fail fast | Variable | Default | What it bounds | |---|---|---| | MCP_TIMEOUT | 30 s | Server startup; with --mcp-config in -p, the first turn waits up to this | | CLAUDE_CODE_MCP_STARTUP_WAIT_MS | (uses the startup wait) | How long the first non-interactive turn waits for servers that are still connecting (v2.1.274+) | | CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT | 5 min network / 30 min stdio | A tool call with no response or progress | | Per-server timeout in JSON | none | Overall tool time for that server | | CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS | 120,000 ms | When a long MCP call moves to the background | Sources: headless docs, env vars, MCP reference. The last row matters most for cron. After 2 minutes, a long MCP call moves to the background. The headless docs say that when a -p run ends, for a call that automatic backgrounding moved, "the call's result is lost". Setting CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS=0 turns automatic backgrounding off (env vars). Also set CLAUDE_CODE_MCP_ALLOWLIST_ENV=1. Stdio servers then get only a safe baseline environment plus their configured env, instead of inheriting every secret in your shell (env vars). What happens when a server is unreachable The run does not crash on its own. An entry that fails validation is skipped and the run "continues and exits cleanly" (headless docs). A server that never connects means its tools are simply missing, so Claude may finish the task without them and still exit 0. Your script has to check for that. The system/init event in stream-json output lists mcp_servers (each with name and status) and mcp_server_errors. A redirected stderr shows no warning, so read these fields instead. Exit code 143 means the process got SIGTERM (headless docs). The following example wrapper adapts documented flags. Check the status strings your version emits before relying on the filter. #!/usr/bin/env bash set -euo pipefail cd /srv/myproject export MCP_TIMEOUT=15000 export CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT=120000 export CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS=0 export CLAUDE_CODE_MCP_ALLOWLIST_ENV=1 timeout 20m claude -p "Summarize issues labeled bug opened in the last 24h" \ --mcp-config ./automation.mcp.json --strict-mcp-config \ --allowedTools "mcp__github__list_issues,mcp__github__get_issue" \ --permission-prompts none \ --output-format stream-json --verbose > run.jsonl # Fail the job if any server is not connected (example filter) if jq -e 'select(.type=="system" and .subtype=="init") | (.mcp_server_errors // []) + [.mcp_servers[] | select(.status!="connected")] | length > 0' run.jsonl >/dev/null; then echo "MCP server missing; result not trusted" >&2; exit 2 fi Scheduling, retries and alerting belong in your cron layer. See the cron job setup guide and catching silent failures. For every -p flag and the auth trade-offs, see the headless mode guide. Next steps Do this today: 1. Run claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp, then claude mcp list. That takes about two minutes and confirms your setup works. 2. Create automation.mcp.json containing only the servers your cron job needs, with pinned versions and ${VAR} tokens. 3. Run the wrapper above once by hand and inspect the system/init line in run.jsonl before you schedule it. If you'd rather not run servers yourself: use vendor-hosted remote servers from the Anthropic Directory, so the vendor handles uptime and updates. You still configure scopes and tokens. Claude Code itself requires a paid plan: Pro is $20/month billed monthly ($17/month on annual billing), and Max starts at $100/month (as of October 2026; check the official pricing page). Pro suits one person running a few scheduled jobs. It's a poor fit if you need --bare everywhere, because bare mode needs an API key billed separately through the Claude Console (headless docs). Related guides on this site: - Claude Code Headless Mode: Flags, Auth and Cost (2026) - Claude Code Permissions Best Practices: Headless Template - Claude Code Cron Job Setup: Run Automations Overnight - AI Agent Monitoring in Claude Code: Catch Silent Failures FAQ What happens if an MCP server becomes unreachable mid-run in Claude Code? For HTTP servers, Claude Code retries up to 5 times with exponential backoff starting at 1 second. For stdio servers in claude -p, it retries on the next tool call (MCP reference). If the server stays down, that server's tools fail but the run can still exit 0. Check mcp_servers in the system/init event and treat a missing server as a failed job. Can Claude Code use multiple MCP servers at once? Yes. List as many as you need under mcpServers in one file. Each server's tool names and instructions load into the context window, though, so remove ones you don't use (quickstart). Tool search reduces that cost when you have many tools (MCP reference). Where is the Claude Code MCP servers config file on each OS? Local and user scopes live in ~/.claude.json on macOS and Linux, and in %USERPROFILE%\.claude.json on Windows. Project scope is .mcp.json in the repo root. Run claude mcp get <name> to see which scope holds a server (quickstart). Is it safe to run Claude Code MCP servers in a cron job without review? It's reasonably safe only when the job loads a fixed server list (--strict-mcp-config or --bare), allows named MCP tools only, and uses narrowly scoped tokens. Without those, a -p run connects whatever .mcp.json the directory contains, with no approval prompt (headless docs). Servers that read web pages or issues can also carry prompt injection. Sources - Claude Code Docs: MCP reference - Claude Code Docs: Connect to MCP servers (quickstart) - Claude Code Docs: Run Claude Code programmatically (headless) - Claude Code Docs: Environment variables - Claude Code Docs: Configure permissions - Claude Code Docs: CLI reference - Anthropic: Remote MCP support in Claude Code - GitHub: modelcontextprotocol/servers - GitHub: modelcontextprotocol/servers-archived - MCP Registry - Anthropic Directory - GitHub issue #14490: --strict-mcp-config and disabledMcpServers - GitHub: steipete/claude-code-mcp - Claude pricing --- This article was created with the help of AI. Sources are linked inline; check the official documentation for the latest details.

    2 reactions · 2 comments
  4. Reddit · · r/ClaudeCode · u/JobRevolutionary7785 · steipete/CodexBar

    I built Ponder: a Claude Code skill for AI that knows when to speak — and when to shut up Right now, AI basically means pattern matching—and as soon as a model doesn't have a piece of information, or finishes finding the real bugs on Pass 1, it decides to make up or assume information just to fill the turn. Why? Because LLMs are trained to never stay silent. I built Ponder (bin/ponder + SKILL.md) by myself around a simple premise: AI that knows when to speak, and knows when to shut up. Sometimes a voice or a pass has nothing new to add, and silence should be a valid, mathematically verified output. And when it does speak, it should be able to act as someone else and view your software from another perspective—including the actual human emotions associated with using it. How it works 1. 4 Perspectives = 4 Delta Operations Instead of open-ended roleplay where agents talk over each other, Ponder runs 4 voices where each one owns only one mutation on an append-only JSONL ledger (findings.jsonl): - Dreamer (add): Enumerates every reviewable unit and discovers missing coverage. - Skeptic (delete): Falsifies and retracts claims that don't have concrete file:line proof. - Builder (edit): Grounds surviving findings in exact paths and verification steps. - Empath (change): Steps into the user's shoes—with the emotions associated with that state—and re-scores severity (must / should / could). 2. Silence is First-Class (voices vs. deltaVoices) Ponder separates who showed up to verify (voices) from who mutated the ledger (deltaVoices). A voice can inspect the entire ledger, agree nothing needs to change, and stay silent (0 deltas). When all 4 voices review 100% of the enumerated surface and emit 0 deltas across consecutive passes, the CLI outputs stop (converged). 3. Coverage Gate & 3-Way Ledger Verification Pass 1 is blocked from stopping until coverage == 1.00 of enumerated units are graded. Every finding is verified against disk and git history (Phantom Rule), and ponder verify reconciles session.json, passes/, and findings.jsonl. --- One-Shot Without Ponder vs. One-Shot With Ponder (K=5 Study + 3 Live Audits) Technically, typing "ponder this codebase" is still a single user prompt—the human sends one prompt while Ponder runs the multi-pass loop in the background. To factor out LLM temperature variance, I ran a K=5 repeated-measures study across a 12-module codebase comparing a standard one-shot prompt against a one-shot prompt with Ponder: - Precision: 56.8% (Standard) → 100.0% (Ponder) (Mann-Whitney U = 0, p = 0.0079) - Critical (must) Bug Recall: 56.0% → 100.0% (+44% more real bugs caught on Pass 2 via Dreamer's coverage gate) - False Positives: 3.8 / run → 0.0 / run (~43 mins of ghost-bug debugging saved per audit) I also ran 4-pass architecture audits today across 3 major open-source AI repos (72.3k+ combined stars): - steipete/CodexBar (22.9k★): Skeptic retracted a Pass-1 credential-file false alarm after verifying its 0700 + O_EXCL + atomic rename defense, while Builder verified a real POSIX_SPAWN_SETPGROUP race where kill(-pgid) can kill CodexBar.app's own process group (Issue #4829 — rated 🦞 diamond lobster by the repo's automated triage bot — + Fix PR #4830). - EveryInc/compound-engineering-plugin (25.7k★): Skeptic retracted a false path-traversal alarm, while catching codex.ts/pi.ts clobbering user symlinks and unbounded .bak.<ts> spam (Issue #1916 + Fix PR #1919). - coleam00/Archon (23.8k★): Skeptic retracted a false open-redirect alarm, while isolating a static signCookie("authenticated") token with no expiry/rotation binding and a double decodeURIComponent URIError crash (Issue #5256 + Fix PR #5257). --- How this relates to Caveman If you've seen the Caveman skill: Caveman makes speech very brief (syntax compression), which saves output tokens when the model talks, whereas Ponder silences forced speech altogether when a voice or pass has nothing true to add (epistemic compression). They actually complement each other really well. Repo & Install (MIT, zero dependencies, Node 18+) GitHub: **Quinnod345/ponder** git clone https://github.com/Quinnod345/ponder.git ~/.claude/skills/ponder ln -sf ~/.claude/skills/ponder/bin/ponder /usr/local/bin/ponder

    3 comments
  5. TokenBar vs Claude Code's /cost and /status: Why I Built a $15 Menu Bar Meter Anyway --- title: "TokenBar vs Claude Code's /cost and /status: Why I Built a $15 Menu Bar Meter Anyway" published: true tags: macos, ai, claude, productivity --- TokenBar is a Mac menu bar app that shows your AI coding usage, limits and reset times for Claude, Codex, Cursor, Gemini and Copilot in one glance. It costs $15 once, lifetime, no subscription, and runs on macOS 14+. Get it at tokenbar.site. Disclosure: I built TokenBar (Aura Technologies). It's built on the MIT-licensed CodexBar by Peter Steinberger, which did a lot of the groundwork. I'm biased, so here's when you don't need it too. The free option you already have Claude Code ships with built-in commands for checking where you stand. /cost shows token use and estimated cost for the current session, and /status shows your account and session details. They're free, first-party, and accurate for the session you're in. The catch: you have to remember to type them, inside that one terminal, and they only know about Claude Code. They say nothing about your Codex weekly window, your Cursor plan, or Copilot. What TokenBar adds - Always visible. A compact meter sits in the macOS menu bar. You see you're near a limit before you start a big agent run, not after it stalls. - Every tool in one dropdown. Claude, Codex, Cursor, Gemini and Copilot, with usage windows and reset times where each provider exposes them. - Routing decisions. If Claude is nearly capped and Codex is fresh, you can see that and send the next job to Codex. - $15 once. No monthly fee for a meter. Side by side | | Claude Code /cost + /status | TokenBar | |---|---|---| | Price | Free | $15 lifetime | | Tools covered | Claude Code only | Claude, Codex, Cursor, Gemini, Copilot | | Where you see it | Typed into one terminal session | macOS menu bar, always on | | Platform | Anywhere Claude Code runs | macOS 14+ only | | Billing source of truth | Closer to it | No, reads what providers expose | Honest limits - Mac only, macOS 14 or newer. No Windows or Linux. - Not invoice-grade. TokenBar reads what providers expose; if a provider changes its endpoints, numbers can lag until an update. Use the vendor dashboard for billing disputes. - Overkill for single-tool users. If Claude Code is your only AI tool, /cost and /status are enough. Don't pay for this. Who it's for You run Claude Code in one terminal, Codex in another, Cursor in the editor, and you keep getting cut off mid-refactor on one while another sits unused. That's exactly why I built it. One avoided cap-out mid-task is worth more than $15 of time. If that's you, it's $15 lifetime at tokenbar.site. If not, the free commands you already have are fine. Aura Technologies

    1 reaction
  6. How I hand a Claude Code session to Codex (and back) without re-explaining anything When Claude Code hits its 5-hour limit mid-task, you can wait for the reset, pay for API tokens, or move the task to another agent. I use both Claude Code and Codex, so the third option is the obvious one. The hard part isn't switching apps. It's the handoff: the other agent knows nothing about the task. The problem with switching I switch for two reasons: 1. One side runs out. Claude Code has a 5-hour window and a weekly cap, and so does Codex. 2. Cross-checking. When one model loops on a bug, the other often solves it in one pass. Either way, the new side starts cold. You re-explain what the project is, where you were, which approaches you already ruled out, and what's broken now. Pasting the transcript doesn't work well either: tool calls and their output run to tens of thousands of words. Then you switch back, and Claude doesn't know what Codex changed. What I built: ccx ccx links a Claude Code session with a Codex thread and keeps them in sync both ways, inside both desktop apps. It's open source (MIT) and runs entirely on your Mac. 1. Claude hits its limit. 2. Click ⇄ in the menu bar, pick the project and session. 3. Codex picks up the task with the full context. When Codex runs out too, open the same Claude conversation and send anything ("continue"). Codex's progress comes in. Switch as many times as you like. What gets carried over - Every user message and reply - Condensed tool calls and their output - The latest task list (Claude's todos or Codex's plan) - Whether the other side stopped mid-step - Pasted images, as the path of the app's own cached copy - git status The code is already on your disk. All of this arrives as context for the model, not as new chat bubbles. How it works - Claude side: reads the session JSONL files under ~/.claude/projects/. - Codex side: goes only through Codex's own app-server API (thread/list, thread/read, session import). It never parses Codex's internal files. - Pairing: a Claude session A and a Codex thread T form a pair in ~/.ccx/pairs.json, and each side keeps a cursor of how much the other has received. - Delivery: when you send a message in A, a UserPromptSubmit hook appends T's new progress to that message and moves the cursor. Nothing is delivered twice, and the hook never blocks a prompt. If something was condensed away, the model can page through it with a read_session tool. Each update is usually a few thousand tokens. Clicking again with nothing new does nothing. A heads-up before you run out v0.0.32 adds a usage heads-up. When either side's 5-hour window passes 90%, and again when it's used up, the menu bar notifies you once and offers that side's newest session to continue in the other app. - Codex: read from its app-server's account/rateLimits/read. Built in. - Claude: Claude Code keeps no local signal before the limit, so ccx also reads CodexBar, Claude Code Usage Monitor or ccusage when one of them is installed, through their documented output only. FAQ Does it bypass usage limits? No. You use your own Claude and ChatGPT/Codex plans, each within its own limits. ccx only moves the task between them. Is anything uploaded? No. Sync is local. ccx reaches GitHub only to install and check for updates. Windows, Linux, standalone CLIs? Not yet. macOS 13+ with the Claude and/or Codex desktop app. Install Paste this into Claude Code or Codex and it installs itself: Install ccx for me: run `curl -fsSL https://raw.githubusercontent.com/aaronwong1999/ccx/main/install.sh | sh` (it needs network access and writes to my home folder), then run `~/.local/bin/ccx doctor` and tell me the result. Feedback is welcome in Issues or on X (@aaron0x10).

    1 reaction
  7. @dkfiander @HixVAC @openclaw @FellowProducts @patrick @autonomous_labs already bundled with openclaw! steipete/sonoscli

    2 likes · 17 views
  8. @steipete okay dope, found it, sharing for others. thanks! github.com/steipete/triage/tree/main these rules are awesome.

    2 likes · 20 views
  9. Reddit · · r/BestGitHubRepos · u/amootiranian · steipete/CodexBar

    CodexBar: Every AI coding limit, in your menu bar (23k stars) What it does All text below is quoted directly from the project README. >Tiny macOS 14+ menu bar app that keeps AI coding-provider limits visible and shows when each window resets. Why: - Plan around resets. Per-provider session, weekly, and monthly windows with countdowns to the next reset: stop guessing whether to start that long task. - Credits, spend, and cost scans. Credit balances, Admin API spend dashboards, provider billing summaries, and local cost scans where the source exposes enough detail. - Live status. Provider status polling surfaces incident badges in the menu and an indicator overlay on the bar icon. - Privacy-first. Reuses existing provider sessions (OAuth, device flow, API keys, browser cookies, local files) so no passwords are stored. - One status item per provider, or Merge Icons mode with a provider switcher. No Dock icon, minimal UI, dynamic bar icons. - Also available as a Linux desktop app with usage and spending windows, separate settings, desktop notifications, and an optional tray icon. - Codex: OAuth API or local Codex CLI, plus optional OpenAI web dashboard extras. - Claude: OAuth API, browser cookies, or CLI PTY fallback; session and weekly usage where available. >brew install --cask codexbar Repository steipete/CodexBar Repository stats |Metric|Value| |:-|:-| |Stars|22,605| |Forks|2,128| |Last release|v0.77.0 (2026-10-16)| |Languages|Swift 89%, C 6.9%, JavaScript 1.6%| |Contributors|574| |AI contributor accounts (Claude / Codex / Cursor / Copilot)|cursoragent: 102, claude: 211| |AI co-authored commits|Claude: 222, Cursor: 96, Copilot: 3| Main contributor |Field|Value| |:-|:-| |Name|Peter Steinberger| |GitHub|@steipete| |Commits to this repo|3,923 (top contributor)| |Bio|Came back from retirement to mess with AI. Clawdfather @OpenClaw. Previously: Founder of @PSPDFKit.| |Company / Location|OpenAI / London / San Francisco| |Website|steipete.me| |X / Twitter|@steipete| |Followers|53315| |Public repos|225| |On GitHub since|2009-02-27| ------------------------------------------------------------------------------------------------ Discover the best GitHub repos without the endless scrolling. Get top repos organized by category (AI, DevOps, Databases & more), plus key takeaways from developers' most useful comments - all in one free, twice-weekly newsletter. 👉 Get the best repos & community insights - Free

    6 points · 1 comment
  10. Reddit · · r/waycar · u/waycardev · steipete/CodexBar

    AI Usage is in Waycar: see which AI account runs out first, right above your agent list (via CodexBar) preview.redd.it If your Host has CodexBar installed (by Peter Steinberger), Waycar now shows an AI Usage row at the top of the Console: the provider closest to its limit, as the percent left this session and this week. Tap the row for the full sheet: - Session and weekly gauges for each provider, lowest first - When each one resets - A pace line that says how much you have in reserve, or when you'll run out at your current rate How it works: Waycar runs CodexBar on your machine over the same SSH connection it already uses, and checks again every few minutes while the app is open. None of it goes through our servers. It's optional. The Hosts list shows which Hosts AI Usage reads from, and you can turn it off per Host. No CodexBar on a Host? Nothing changes; the row just doesn't appear. Details: waycar.dev Waycar isn't affiliated with CodexBar; it reads what CodexBar already knows.

    1 point
Trending awards, every completed day and week
Gold
11st place finishes
Silver
42nd place finishes
Bronze
13rd place finishes
Awarded repositories
3Owned by steipete now

Repositories

Ordered by gold, then silver, then bronze.

  1. PSStackedViewBest: 1st by stars, 203 stars120
  2. PSTCollectionViewBest: 2nd by stars, 103 stars020
  3. dropshipBest: 3rd by forks, 8 forks001

A repository earns an award for finishing first, second or third in a completed trending day or week, ranked by new stars, new forks or pull request authors. Awards follow a repository through renames and transfers and count toward its current owner. Weeks run Monday to Sunday, UTC.