Skip to main content
リリースPreview
v2.25.11

Generators

  • ggml-llm — llama.cpp ランタイムを b11385 に更新しました。
  • ggml-decision — Generator Typed Decision (GGML) 用のバックエンドを追加しました。ローカル関数から context.buttress.decide() を呼び出せます。関数を参照してください。
  • ggml-tts — モデルファイルを並行してダウンロードし、読み込み中に解放したモデルは読み込みの完了後に解放します。OuteTTS モデルがすべての短縮形と省略記号を正しく読み上げ、$ を含むテキストでプロンプトが変わらなくなりました。

Agents

  • MCP サーバーで exposure / tool_exposure(direct または hidden)と timeout を指定できます。エージェントを参照してください。
  • codemode = true を設定すると、エージェントがツールをまとめて呼び出すスクリプトを実行できます。スクリプトは既定で 5 分後に停止します(最大 30 分)。
リリースPreview
v2.25.10

Generators

  • ggml-llm — llama.cpp ランタイムを b11192 に更新しました。
リリースPreview
v2.25.9

Generators

  • ggml-llm の複数 GPU 分割 — split_mode でモデルを GPU に分割する方式(none、layer、row、実験的な tensor)を選び、tensor_split で GPU ごとの配分を [3, 1] または "3,1" として指定できます。どちらも [runtime] で設定するか、モデルごとに上書きでき、現在は BRICKS Buttress でのみ設定できます。テンソル並列処理は実験的で、互換性のあるバックエンドとモデルが必要です。設定を参照してください。
  • ggml-stt — 対応する Qualcomm Linux arm64 環境で、Whisper が snapdragon アクセラレーションバックエンドに対応しました。設定を参照してください。

修正

  • ggml-llm — 同じ session キャッシュを使う Generator が互いの記録を上書きせず、保存済みの session が再起動後も残ります。
  • ggml-llm / ggml-stt — コンテキストの解放待ち時間を 0 にすると即座に反映され、読み込み中に解放した LLM モデルも読み込み完了後に解放します。
リリースPreview
v2.25.8

Agents

  • ローカルデバイス(実験的) — agent に local_devices = true を設定すると、LAN 上の BRICKS 端末とプロジェクトのプレビューを検出し、スクリーンショットの取得、Brick とログの確認、タップ・キー・テキストの送信、DevTools によるスクリプト実行を行えます。agent ごとに有効化し、必要に応じて端末の認証情報を使用します。agentsを参照してください。

修正

  • MLX モデル — アンロード後に再読み込みしても、解放リクエストが待機し続けたり、新しく読み込んだモデルが利用できなくなったりしなくなりました。
リリースPreview
v2.25.6

Agents

  • Agents(実験的) — サーバー設定の [[agents]] テーブルで、サーバー内で動作する LLM agent を定義できます。設定済みの ggml または mlx generator(model = "buttress/<repo_id>")、あるいは Anthropic、OpenAI、Google のモデル上で動作します。各 agent は system prompt、ツールとしての local functions、任意の MCP servers、ターン数と token の上限、再開・分岐が可能なディスク上の session を備えます。Local functions と daemons は context.agents.run(name, { prompt, sessionId, fork }) で呼び出し、HTTP は GET /agents、POST /agents/:name/run(?stream=1 で SSE。先に session id を通知するため、中断された最初のターンも続行できます)、session の一覧と中止のルートを公開します。bricks-buttress agent <name> はターミナルで全画面チャットを開きます:markdown の回答、ストリーミングされる thinking、ツール呼び出し行、/new、/exit、Ctrl+C でターンを中止、パイプ向けの --plain。--sessions、--session <id>、--fork <id> に対応します。設定を参照してください。
  • ggml-llm と mlx-llm バックエンドで tool calling が動作します:OpenAI 互換と Anthropic Messages のエンドポイントが、生の <tool_call> テキストではなく構造化された tool_calls を返します。並列呼び出し、reasoning の往復、ストリーム途中の中止を確認済みで、これによりローカルの GGUF・MLX モデルで agent が動作します。

ローカル関数

  • bricks buttress bank-key で資格情報を保存した後、local function は context.bank.list、get、update、remove でバインドされた workspace の Data Bank を読み書きできます。ローカル関数を参照してください。
  • Daemon local functions — meta.daemon = true の function ファイルは、期限のない常駐バックグラウンド function として動作します。context.setInterval、単一の自動再接続で Data Bank の変更通知を受け取る context.bank.subscribe(propertyIds, onChange)、function から daemon への通知用の context.onEvent と context.daemons.emit を利用できます。Daemon は MCP ツールや HTTP からは呼び出せず、ファイル編集で再起動し、/status にライブテーブルを表示します。
  • ディスパッチ前に client が切断した local function の呼び出しはスキップされ、自身のタイムアウトまで副作用を実行し続けなくなりました。

修正

  • CORS はパスごとに一度だけ決定されます:ブラウザからの JSON body 付き POST /functions/<name> が preflight を通過し、/anthropic-messages は x-api-key と anthropic-version ヘッダーを保持し、サーフェスごとの cors_allowed_origins も反映されます。回避策として [autodiscover] http.cors を無効にする必要はなくなりました。
  • 遅れて届くネイティブのコールバックでサーバーが終了しなくなりました。client がストリーム途中で completion や文字起こしを中止した場合(ggml-llm、mlx-llm、onnx-stt)、および失敗または完了直後の onnx-tts・onnx-stt モデル読み込みがダウンロード進捗を報告し続ける場合が該当します。
  • 解析できない agents_options.session_max_age は起動時に失敗し、無言で 30 日として session を掃除しなくなりました。
  • Standalone ビルド:onnx-tts と onnx-stt の session が再び初期化できます。v2.25.5 の推論 runtime 更新以降「A boolean was expected」で失敗していました。Snapdragon ホストで Chatterbox Multilingual を確認済みです。
リリースPreview
v2.25.5

Generator

  • onnx-tts バックエンドが Chatterbox Multilingual を含む Chatterbox 系の音声モデルに対応し、Generator TTS (ONNX) はモデルをダウンロードせずに合成をオフロードできます。設定を参照してください。
リリースPreview
v2.25.4

Generator

  • 新しい ggml-tts バックエンド — Generator TTS (GGML) が合成を Buttress サーバーへオフロードできるようになりました。端末はバックボーンや codec の GGUF をダウンロードせずに音声をストリーミング受信できます。能力検出とメモリガードレール付きで、ステータスページにも新バックエンドが表示されます。設定を参照してください。

Models

  • 正確な model id を指定した generator は、より緩い一致の隣接エントリがあってもその model に解決されるようになりました。
リリースPreview
v2.25.2

ローカル関数

  • パッケージ版のディストリビューションでファイルのダウンロードが再び機能するようになりました。v2.25.1 では /functions/files/* と /buttress/download が HTTP 200 で [object Object] を返していました。ローカル関数を参照してください。
  • raw-prompt の completion が空文字列ではなく、生成されたテキストを返すようになりました。

Models

  • GET /v1/models が、特定ファイルに固定された generator の正式な model id を表示するようになりました。同じ repository を共有する 2 つの generator を区別でき、completion が返す id も一覧に実在するものになります。互換エンドポイントは設定済みの models のみを受け付けます。設定を参照してください。

修正

  • ダウンロードの資格情報がログやエラー出力に含まれないようになりました。
  • インストールの rollback に失敗した場合もバックアップを削除せず保持するようになりました。インストールを参照してください。
リリースPreview
v2.25.1

ローカル関数

  • ローカル関数(実験的) — 指定したディレクトリに置いた .ts / .js ファイルが MCP tools と HTTP endpoint の両方になり、別途サービスを立てずに agent がサーバー側の処理(ffmpeg や、そのサーバー自身の LLM / STT / TTS generator)を実行できます。1 ファイル 1 関数で、MCP がそのまま受け取る JSON Schema 宣言、SSE による進捗ストリーミング、呼び出しごとの作業ディレクトリ(ファイルのアップロード / ダウンロード付き)、任意のカスタム認証、任意の hot reload、そのまま使えるサンプル、ステータスページのローカル関数アクティビティカードに対応します。
  • 関数は GET /functions/<name> でクエリ文字列を入力として呼び出すこともでき、ブラウザー、EventSource、webhook、素の curl からも利用できます。
  • simple-rag の関数サンプルを追加し、必要なベクトル検索サポートも配布物に同梱しました。
  • bricks buttress mcp-config が agent に必要な .mcp.json の設定を書き込みます。BRICKS CLI を参照してください。

インストール

  • スタンドアロン配布 — bricks-buttress を自己完結型の実行ファイルとして配布します。インストーラーがホストの ggml アクセラレーター(CUDA、Vulkan、Snapdragon、既定)を判別して必要なネイティブパッケージのみをダウンロードし、BRICKS CLI と共通の ~/.bricks-cli/bin にインストールします。bricks-buttress update でその場で更新できます。インストールを参照してください。

Generator

  • Generator Vector Store — GGML の embedding model と tokenizer を BRICKS Buttress にオフロードできるようになり、どちらの GGUF もダウンロードせずに端末で文書のインデックス作成と検索が可能になりました。BRICKS Foundation を参照してください。

修正

  • セッションのアップロードには一意の保存ファイル名が付き、同一セッション内の 2 つのファイルが上書きし合わなくなりました。
  • LLM、STT、ONNX backend のモデルダウンロードはサーバーのキャッシュディレクトリ内に限定されます。
  • Generator の終了処理をセッションごとに認可し参照カウントするようにしたため、同じモデルを 2 回起動したセッションでも正しく解放されます。
リリースPreview
v2.25.0

バックエンド

  • ONNX バックエンド — Generator STT・TTS のワークロードを transformers.js と ONNX Runtime 経由で BRICKS Buttress にオフロードできるようになりました。CUDA・CoreML・DirectML・CPU のハードウェア自動検出と、メモリを考慮したモデル選択に対応します。設定を参照してください。
  • Parakeet エンジン — GGML STT バックエンドが Whisper と NVIDIA Parakeet の両方に対応し、対応エンジンを広告するため旧クライアントは安全にフォールバックします。

自動検出

  • Web の LAN 自動検出 — Web/仮想デバイスが署名付き HTTP プローブでローカルネットワーク上の BRICKS Buttress を検出し、推論をオフロードできます。新しいデバイスごとの Local Network Access 設定で制御します。自動検出を参照してください。
リリースPreview
v2.24.6

Generators

  • Generator STT (GGML) — Buttress がロード時に GPU/flash-attention/thread 設定を正しく適用。
  • Generator LLM (MLX) — Buttress が tokenizer と model config overrides を設定時に転送。
リリースPreview
v2.24.5

WebSocket RPC

  • バイナリペイロードのシリアライズ — ArrayBuffer ペイロード(RealtimeTranscriber など)と二進数の認証トークンを Uint8Array/Buffer として正しくシリアライズ/デシリアライズ。transcribeData ほか二進数ペイロード呼び出しでの Invalid params エラーを解消。
  • 適切な Error インスタンス — JSON-RPC エラー応答がサーバーの code/message を持つ Error インスタンスとして呼び出し側に届くよう変更。Transcription error: [object Object] のような通知を解消。

CLI

  • buttress-server --version がスタンドアロン CLI のパッケージ版バージョンを返すよう修正。

Generator

  • Generator LLM (GGML) — llama.cpp を b9254 に更新し、MTP(multi-token prediction)推測デコードパラメータを追加。
リリースPreview
v2.24.4

セッション

  • WebSocket セッション復元 — プロキシ/トンネル越しの再接続でもセッションを維持。WS ハンドシェイク時にサーバーが発行する sessionId を以降の再接続で復元する方式に変更し、従来の IP ベースのスキームを置き換え。

ファイルアップロード

  • セッションスコープ — ファイルアップロード/ダウンロードはアクティブな sessionId にスコープ(X-Buttress-Sess-Id ヘッダー必須)。アップロードファイルは sessionId 単位のサブディレクトリに配置され、セッション失効時に一括削除。
リリースPreview
v2.24.3

認証

  • ワークスペース単位の JWT 認証 — 各 Buttress サーバーは bricks buttress bind でワークスペースに紐付き、EdDSA でトークンを検証。/buttress/rpc、/oai-compat、/anthropic-messages、ファイル upload/download エンドポイントは認証必須に。詳しくはワークスペースバインディングを参照してください。

検出

  • LAN 自動検出 — Launcher は複数サーバープール(90 秒 TTL、ハードウェア能力で順位付け)から選択し、ワークスペースに紐付いたサーバーのみを信頼します。詳しくは自動検出を参照してください。
  • 署名付き UDP ANNOUNCE — 各サーバーが Ed25519 で署名し、LAN 上のなりすましを防止。PROTOCOL_VERSION を 2.0 に更新。アップグレード後は bricks buttress bind を再実行しサーバーを再起動してください。

互換エンドポイント

  • TOML 設定フラグ [openai_compat] enabled と [anthropic_messages] enabled で実験的な互換エンドポイントを有効化可能に。詳しくは設定を参照してください。