AWSの「Strandsハーネス」でAIエージェントを自作!LLM依存なしで自由な開発へ
AWSがオープンソース公開!「Strandsハーネス」とは?
米Amazon Web Services(AWS)が、高性能なAIエージェントを簡単に自作できるツール「Strandsハーネス」をオープンソースで公開しました。これは、GPTやClaude、Gemini、Ollamaなど、主要なLLM(大規模言語モデル)やLLMランタイムを基盤に、柔軟なAIエージェントを構築できるツールです。
AIエージェントは、LLMと「ハーネス」と呼ばれる周辺環境を組み合わせて構成されます。このハーネスが、長期的なコンテキスト記憶、ファイルやネットワーク、実行環境へのアクセス、データベースやAPIなどの外部ツール連携、そしてポリシーや権限からの逸脱を防ぐガードレールといった機能を担います。Strandsハーネスは、まさにこの「ハーネス」部分を簡単に構築するためのツールであり、2026年8月に公開された「Strands Harness SDK」が用いられています。
Strandsハーネスで何ができるのか?
Strandsハーネスの大きな特徴は、特定のLLMに依存しないAIエージェントを構築できる点です。AWSの生成AI基盤であるAmazon Bedrock上のLLMはもちろん、Anthropic Claude、OpenAI GPT、Google Gemini、Ollama、Lite LLMに対応しています。
- 多様なLLMとの連携: わずか数行のコードで、様々なLLMを基盤としたAIエージェントを構築できます。
- 豊富な初期機能: 構築されたAIエージェントには、シェルの実行、ファイルの読み書き、Web検索などの機能が最初から備わっています。
- 効率的なコンテキスト管理: プロンプトキャッシングとコンテキスト管理機能により、トークン消費の最適化やコンテキストの要約・復元が行われます。
- セッション記憶とスキル対応: セッションIDを用いることで以前の会話を再開でき、スキルにも対応しています。
- 低コストかつ高性能なエージェント: AWSのベンチマークによると、同じFable 5をベースにしたClaude Codeと比較して、StrandsハーネスによるAIエージェントは低コストで高い能力を実現しています。
- LLM・デプロイ先の自由な選択: 構築後もAIエージェントのLLMを入れ替え可能で、AWSだけでなくLinuxコンテナを備えたあらゆる環境にデプロイできます。これにより、特定のベンダーや環境に縛られない自由な開発が可能です。
どう使える?具体的な活用例
Web制作やAI開発の現場で、Strandsハーネスは非常に強力なツールとなり得ます。
- 開発アシスタントとしての活用: 例えば、Webサイトの特定部分のパフォーマンスをチェックするAIエージェントを構築できます。デモ動画では、Playwright MCPサーバーを追加し、ブログの動画レイテンシをチェックするタスクをAIエージェントが自律的に実行していました。このようなタスクを自動化することで、開発者の手間を大幅に削減できます。
- 情報収集・分析の自動化: わずか3行のコードで、特定のLLM(例: Claude Opus 5)をAIエージェント化し、「上位3つのベクトルデータベースを調査し、価格と制限を比較してcomparison.mdにまとめる」といった指示を出すことができます。これにより、市場調査や技術調査などの情報収集プロセスを自動化し、より迅速な意思決定を支援します。
- カスタムツールの統合: ハーネスの特性上、データベースやAPIなど外部環境やツールへのアクセスが可能です。これにより、自社独自のAPIやツールと連携させ、特定の業務に特化したAIエージェントを構築できます。例えば、顧客管理システムと連携して、問い合わせ内容に応じた自動返信や情報検索を行うエージェントなどが考えられます。
- CI/CDパイプラインへの組み込み: 構築したAIエージェントはTypeScriptやPythonのコードとしてエクスポートできるため、既存のCI/CDパイプラインに組み込むことで、テストやデプロイの自動化をさらに強化できます。
試すならどこから始める?
Strandsハーネスは、わずか数行のコードでAIエージェントを構築できます。
import { createHarness } from "@strands-agents/harness";
const agent = await createHarness({ model: "anthropic/claude-opus-5" });
await agent("Research the top three vector databases, compare pricing and limits, and write it up in comparison.md");このコードの"anthropic/claude-opus-5"の部分を"google/gemini-3.5-flash"や"ollama/llama3.1"などに書き換えるだけで、異なるLLMを基盤としたAIエージェントを試すことができます。
また、コマンドラインから設定可能なStrands CLIも用意されており、GUIベースでLLMの選択、利用ツールの選択(シェルの実行、ファイルの参照・編集、Webアクセスなど)、プラグインや機能の選択、さらには外見の設定まで行えます。設定完了後には、そのままAIエージェントに指示を与え、動作を確認できます。構築したAIエージェントはTypeScriptまたはPythonのコードとしてエクスポートし、ファイルに保存可能です。
特定のLLMやデプロイ環境に縛られず、自由にAIエージェントを開発したいと考えている開発者にとって、Strandsハーネスは非常に魅力的な選択肢となるでしょう。オープンソースであるため、自身で機能追加やカスタマイズも自由に行えます。ぜひ一度試してみてはいかがでしょうか。


