Show HN: Apfel — Mac に搭載済みの無料 AI を解放するツール
Show HN: Apfel – The free AI already on your Mac
Apple Silicon 搭載 Mac には Apple Intelligence として約3B パラメータの LLM が内蔵されているが、Siri 経由でしか利用できない。Apfel はこれを CLI ツール、OpenAI 互換サーバー、対話型チャットとして解放する OSS。API キーもサブスクリプションも不要で、全推論がローカル実行される。コンテキストウィンドウは4,096トークン、英語・日本語を含む9言語に対応し、jq や xargs とのパイプ連携も可能。brew install で導入でき、GitHub で1,100以上のスターを獲得している。
RAG を仮想ファイルシステムに置き換えた AI ドキュメントアシスタントの構築
We replaced RAG with a virtual filesystem for our AI documentation assistant
Mintlify が自社のドキュメントアシスタントで RAG(Retrieval-Augmented Generation)を廃止し、仮想ファイルシステムに移行した事例。RAG ではクエリに一致するテキストチャンクしか取得できず、複数ページにまたがる回答や正確な構文の抽出が困難だった。各ドキュメントページをファイル、セクションをディレクトリとして仮想ファイルシステムを構築し、AI エージェントが grep・cat・ls・find を使って自律的にドキュメントを探索できるようにした。コンテナベースの初期実装からセキュリティとスケーラビリティを改善している。
SSH 証明書による認証: TOFU を超えた SSH 体験
SSH certificates: the better SSH experience
SSH 接続時の Trust on First Use(TOFU)問題を解決する SSH 証明書の実践的な解説記事。通常の SSH では初回接続時にホストキーのフィンガープリントを手動で確認する必要があるが、大半のユーザーはこれを読み飛ばしている。SSH 証明書を使えば、CA がホスト鍵とユーザー鍵の両方に署名し、双方向の信頼を自動的に確立できる。ssh-keygen による CA 作成、ホスト証明書・ユーザー証明書の発行手順、known_hosts の @cert-authority ディレクティブの設定方法を具体的に示している。
Raspberry Pi でダイアルアップ ISP を自作する
Build your own Dial-up ISP with a Raspberry Pi
Jeff Geerling が1999年の iBook G3 と初代 AirPort Base Station を使い、Raspberry Pi でローカルなダイアルアップ ISP をエミュレートするプロジェクト。AirPort Base Station に内蔵された56Kモデムを活用し、Wi-Fi 経由でダイアルアップ接続を再現した。1999年当時、Wi-Fi は最大11Mbps で大半のユーザーはまだ AOL などのダイアルアップ ISP を利用していた歴史的背景も解説。#MARCHintosh チャレンジの一環として制作されている。
async Python は実は決定論的に動作する
Async Python Is Secretly Deterministic
DBOS が Python 向け Durable Execution ライブラリに async サポートを追加する際に発見した知見。Durable Workflow はリプレイベースの障害復旧のために決定論的である必要があるが、async Python のワークフローは多くのステップが並行実行されるため決定性の確保が困難に見える。しかし実際には CPython の asyncio イベントループはシングルスレッドで動作し、コルーチンのスケジューリング順序が予測可能であるため、特定の条件下では決定論的なリプレイが可能であることを示している。
TDF が LibreOffice のコア開発者を追放
TDF ejects its core developers
The Document Foundation(TDF)の理事会が LibreOffice のコア開発者を追放した件について、Collabora の Michael Meeks が個人的な見解を述べた記事。TDF 理事会の多数派がこの決定を数ヶ月から数年にわたり計画してきたと主張している。理事会のメンバー構成において、コーディングに直接携わる開発者の割合が低下している傾向を指摘し、OSS プロジェクトにおけるガバナンスと開発者コミュニティの関係性の問題を提起している。
Show HN: TinyOS — Cortex-M 向けミニマリスト RTOS を C で実装
Show HN: TinyOS – A minimalist RTOS for Cortex-M written in C
ARM Cortex-M マイコン向けに C 言語で書かれたミニマリストなリアルタイム OS。教育目的やリソースが限られた組込みシステムでの利用を想定しており、タスクスケジューリング、コンテキストスイッチ、基本的な同期プリミティブを最小限のコードで実装している。FreeRTOS や Zephyr のような本格的な RTOS と比較して、コードの読みやすさと学習のしやすさを重視した設計。
Axios サプライチェーン攻撃はメンテナ個人を狙ったソーシャルエンジニアリングだった
The Axios supply chain attack used individually targeted social engineering
npm パッケージ Axios に RAT が仕込まれたサプライチェーン攻撃の詳細なポストモーテム。攻撃者はメンテナの Jason Saayman を個別に標的とし、実在する企業の創業者になりすまして Slack ワークスペースに招待。ワークスペースは企業の CI に合わせてブランディングされ、LinkedIn 投稿の共有チャンネルまで用意されていた。Teams での偽ミーティングを設定し、「システムのアップデートが必要」と称して RAT をインストールさせた。Google が文書化した UNC1069 の手法と一致する高度な攻撃パターン。
悪意ある npm Strapi プラグインが Redis RCE とデータ窃取の C2 エージェントを展開
Someone is actively publishing malicious packages targeting the Strapi plugin ecosystem right now
npm に公開された strapi-plugin-events(v3.6.8)が正規の Strapi プラグインを装い、npm install 実行時にユーザー操作なしで11段階の攻撃を展開する。SSH 鍵の窃取、クラウドトークンの収集、Redis を悪用した RCE、永続的な C2 エージェントのインストールなどを実行。計36個の悪意あるパッケージが確認されており、正規プラグイン名(strapi-plugin-comments 等)に似せた命名で開発者を欺く手口を使用している。
H.264 ストリーミングライセンス料が10万ドルから450万ドルに急騰
Firm quietly boosts H.264 streaming license fees from $100,000 up to staggering $4.5 million
インターネット動画配信の基盤コーデックである H.264(AVC)のストリーミングライセンス料が、年間10万ドルから最大450万ドルへと45倍に引き上げられた。この値上げはライセンス管理団体が静かに実施したもので、H.265(HEVC)の混乱したライセンス体系に続く動き。AV1 などのロイヤリティフリーコーデックへの移行を加速させる可能性があり、中小規模のストリーミングサービスへの影響が特に懸念される。
Claude Code のソースコード流出でシステムアクセスの範囲が明らかに
Claude Code source leak reveals how much info Anthropic can hoover up about you and your system
Anthropic の Claude Code のソースコードが流出し、エージェントがユーザーのコンピュータに対してどの程度のアクセス権を持つかが分析された。The Register の記事によると、Claude Code は rootkit のような永続的なカーネルアクセスは持たないものの、契約条件を注意深く読んだユーザーが想定する以上のシステム制御とデータ保持を行っていることが判明。OSS プロジェクトへのコントリビューション時に AI の関与を隠す機能の存在も指摘されている。
Perplexity の「シークレットモード」はまやかしだと訴訟で主張
Perplexity's "Incognito Mode" is a "sham," lawsuit says
Perplexity の AI 検索エンジンが、ユーザーのチャットセッション全体を Google や Meta と共有していたと訴訟で告発された。アカウント登録の有無にかかわらず全ユーザーが対象で、開発者ツールによる検証でデータ共有が確認されたという。広告収入の増大が目的とされ、「シークレットモード」を含むプライバシー機能が実質的に機能していないと主張している。
Adobe がサードパーティ BPO 経由で1300万件のサポートチケットと従業員データを流出か
Adobe has faced an alleged data breach via 3rd party Indian BPO leading to 13M support tickets and 15,000 employee data leak
「Mr. Raccoon」を名乗るハッカーが、Adobe のインドの BPO(業務委託先)を経由して大規模なデータ侵害を行ったと報じられた。約1300万件のサポートチケット、1万5000件の従業員レコード、HackerOne への脆弱性報告が流出した可能性がある。Adobe はまだ侵害を公式に確認していないが、サードパーティ経由のサプライチェーンリスクの典型例として注目を集めている。
COBOL の遺産コードを現代化し、正確性を自ら証明する AI を開発した話
遺産であるCOBOLを現代化し、その正確性を自ら証明するAIを開発した話
世界に推定8000億行存在する COBOL 基幹業務コードを AI で現代化するツールの開発記。一般的な AI 移行ツールは変数名 WS-CUST-ID-X の末尾 X のような暗黙知を正しく解釈できず、表面的な変換にとどまる問題がある。本ツールは COBOL コードの意味を深く理解した上で変換を行い、さらに変換結果の正確性を自動的に検証する仕組みを組み込んでいる。単なるコード変換ではなく、ビジネスロジックの等価性を証明するアプローチが特徴。
Ruby 4.0 アップデート前に Bundler 4.0 と Dependabot の互換性を深掘り調査
Ruby 4.0 にアップデートする前に Bundler 4.0 と Dependabot について深掘り調査してみた
Ruby 4.0 へのアップデートに先立ち Bundler 4.0 への移行を進める中で、Dependabot との互換性を調査した記事。Bundler 4.0 ではロックファイルにチェックサムがデフォルトで含まれるようになり、サプライチェーン攻撃対策が強化された。しかし dependabot-core に未解決の issue があり、チェックサムの更新が正しく行われるか懸念があった。ruby-jp Slack コミュニティで情報を集め、実際に Bundler 4.0 + Dependabot 環境でチェックサムが正常に更新されることを確認している。
Vite 8 で Rolldown 統合により本当に10倍高速化したか検証
Vite 8にアップデートしたら10倍早いは本当だった
2026年3月にリリースされた Vite 8 の新バンドラ Rolldown(Rust 製)の実測評価。Vite 7 以前は開発時のプリバンドルに esbuild、本番ビルドに Rollup というデュアルバンドラ構成だったが、Vite 8 で Rolldown に統合された。従来の esbuild + Rollup 間の同期問題が解消され、実プロジェクトでビルド時間が約10倍改善されたことを具体的な計測結果とともに報告している。
React の Container/Presentational パターンを関数型アーキテクチャで再設計する
React の Container/Presentational × Hooks を関数型アーキテクチャで再設計する
Dan Abramov 自身が2019年に「もう推奨しない」と述べた Container/Presentational パターンを、関数型アーキテクチャの視点から再評価する記事。Hooks によるロジック分離が主流となった現在でも、Container/Presentational の分離が有効なケースが存在することを論じている。関数型プログラミングの原則(純粋関数、副作用の分離)を適用し、テスタビリティと保守性を両立させる設計パターンを提案している。
GitHub Copilot のカスタマイズに疲弊した人向け: ビルトインスキルの活用法
GitHub Copilot のカスタマイズに疲弊した人に: Copilot Chat のビルトイン スキルがすごい
GitHub Copilot のカスタマイズ機能(Custom Instructions、Prompt Files、Custom Agents、MCP、Hooks 等)が急速に増えて把握しきれない状況に対し、まずビルトインスキルの活用を提案する記事。VS Code Insiders 1.99 + Copilot Chat v0.43 で確認された機能を解説。カスタマイズの複雑さに手を焼く前に、標準搭載されているスキルだけで多くのタスクが効率化できることを具体例とともに示している。
Claude Code で AI RSS リーダーを作ったら Inoreader を解約した
Claude CodeでAI RSSリーダーを作ったら、その日にInoreaderを解約した
Claude Code 自体を AI キュレーターとして活用する RSS ツール「Feed Curator」の開発記。API キー不要で、トピックを入力するだけで RSS フィードを検索・推薦し、既読・スキップ履歴から嗜好を自動学習して毎朝パーソナライズされた技術ブリーフィングを生成する。Bun + Tauri 2 でデスクトップアプリ化済み。Claude Code をサブプロセスとして利用する技術的背景やトークン消費の最適化についても解説している。
npm malware スキャナを Rust で作った — npm audit では不十分な理由
I built an npm malware scanner in Rust because npm audit isn't enough
npm audit が既知の脆弱性データベースしかチェックしない問題に対し、パッケージのソースコード自体を静的解析する Rust 製 CLI ツール aegis-scan を開発。難読化された eval、base64 エンコードされたペイロード、タイポスクワッティング、メンテナ乗っ取りの兆候を検出する。event-stream(2018年)、ua-parser-js(2021年)、colors.js(2022年)など過去の実際のサプライチェーン攻撃事例を挙げ、npm audit の検出ギャップを説明。ローカル実行でクラウド送信不要の設計。
なぜ私たちは React を使わないのか
Why We Don't Use React
競合する全てのエージェンシーが React を採用する中、JavaScript フレームワークを一切使わない選択をした制作会社の技術的根拠。React では200-400KBの JavaScript がコンテンツ表示前にロードされるのに対し、Vanilla HTML は50KB未満で済む。ビルドステップの排除、依存パッケージ(サプライチェーン攻撃リスク)の削減、フレームワーク陳腐化の回避、採用要件の簡素化を利点として挙げている。React Server Components でさえ新たな複雑さを追加すると指摘し、ビジネスサイトにはフレームワーク不要と主張。
LLM ストリーミング UI に Markdoc を採用する理由
Why Markdoc for LLM Streaming UI
AI チャットボットで LLM 出力をストリーミング表示する際の課題を解決する mdocUI ライブラリの紹介。従来の方法として Markdown 内の JSON ブロック(ストリーミング中は不完全な JSON になる)、JSX(モデルがタグを混同する)、独自 DSL(モデルが未知の構文を学習する必要がある)それぞれの問題点を分析。Stripe が開発した Markdoc を採用し、Markdown とインタラクティブコンポーネント(チャート、フォーム、ソート可能テーブル等)を単一の出力ストリームで混在させるアプローチを実現した。
Claude Code Skills の model フィールドでコストとパフォーマンスを最適化する
Claude Code Skills Have a Model Field. Here's Why You Should Be Using It.
Claude Code Skills のフロントマターには15個のフィールドがあるが、多くの開発者は name と description の3個程度しか使っていない。特に model フィールドを指定すると、スキルごとに異なるモデル(haiku、sonnet 等)を呼び分けられる。筆者は42個のスキルを監査し、機械的タスク17個を haiku に、文章作成・推論15個を sonnet に、複雑なオーケストレーション10個をデフォルトのままに設定。when_to_use フィールドによる自動選択の制御方法も解説している。
ローカル Python 環境がチームの生産性を静かに破壊していた — Docker で解決した話
My Local Python Setup Was Quietly Destroying Our Team's Productivity. Docker Fixed It.
3人の開発チームで5ヶ月間続いた「works on my machine」問題の解決記。requirements.txt と仮想環境はあったが、Windows・macOS・Ubuntu の各開発者のローカル環境でシステムパッケージ、PATH 設定、ゴースト的に残る古いツールが異なり、ModuleNotFoundError が頻発。Python インタプリタ自体を Docker コンテナに移し、VS Code の Remote Containers と統合することで環境差異を完全に排除した。5ヶ月放置した反省を含む実体験ベースの記事。