Jira における AI エージェントのガードレールと安全性

ガードレールにより、エージェント型ワークフローとの信頼を強化することで、AI の導入を拡張できます。有効なガードレールはワークフローに組み込まれるため、エージェントに任せるのではなく、システムによって適用されます。

Jira において、そのシステムとはチームがすでに作業を行っているシステムです。Jira は、エージェントに、権限を通じて持つべきアクセス権、人間がワークフローのトランジションで判断を下すチェックポイント、および作業項目に対するすべてのエージェントのアクションの記録を提供します。Teamwork Graph は、エージェントが対応するための適切なコンテキストを提供します。

このガイドでは、エージェントのガードレールが対処するリスクと、Jira でそれらを適用する方法について説明します。これにより、コントロールを失うことなく、定常タスクからより価値の高いプロジェクトに至るまで、チームの作業全体でより多くの自律性をエージェントに与え、安全かつ責任を持って AI を拡張できます。そうした拡張における自律性は、チームがすでに運用しているワークフロー、権限、ルールを使用して Jira で設定する次の 4 つのガードレールに基づいています。

  • アクセスのスコープ設定。既存の Jira 権限を使用して、エージェントがアクセスできるデータ、使用できるツール、アクションを実行できる場所を設定します。

  • 高リスクの呼び出しの制限。影響の大きい作業が反映される前に、ワークフロー トランジションを使用して人間による承認を必須にします。

  • 出力内容のレビュー。リリースされる前に、通常のプル リクエストのレビューを通じてエージェントが生成した内容を確認します。

  • 記録の保持。すべてのエージェントのアクションは承認者と紐付けられ、作業項目の履歴に記録されます。

エージェント型エンジニアリングにおけるガードレールとは

エージェントのガードレールとは、AI エージェントの作業を安全かつ意図したとおりに保ち、記録に残すためのコントロールです。これには、アクセスできる対象、人間が介入するチェックポイント、実行した内容の記録が含まれます。ガードレールは、エージェントが稼働するシステムによって適用されるものであり、その遵守の裁量がエージェントに任されるわけではありません。

指示は忘れられたり、誤読されたり、上書きされたりする可能性があるため、適切に振る舞うよう指示するだけではエージェントの安全性を維持できません。真のガードレールは、その環境内のエージェントの上位に位置し、エージェントにどのような指示が与えられても境界が維持されるものです。この原則はチームがすでに実践しているものと同じです。何が可能かを決定するのは、ルールに従うよう求められる個人ではなく、システムです。

実際には、エージェントのガードレールはいくつかの関連する領域をカバーします。

  • アクセスと範囲。エージェントがアクセスできるデータ、使用できるツール、および対応できる場所。

  • 範囲が制限されたタスク。どの作業をエージェントが完全に担当できるか、どの作業を人間が担当するか。

  • 人間が関与する承認。作業が次に進む前に、人間がレビューまたは承認を行うチェックポイント。

  • 出力のレビュー。エージェントが生成した内容のリリース前検証。

  • 説明責任と監査。エージェントが実行した内容、その理由、および承認者の記録。

  • ガバナンス。エージェントの利用が拡大する中で、これらすべての一貫性を保つための恒常的な統制。

これらが一体となって、エージェント型ワークフローに対する信頼を築きます。結果に対する責任は引き続き人間が負うため、チームは統制を失うことなく、エージェントにより多くの責任を委ねることができます。

AI エージェントにガードレールが必要である理由

エージェントが対応します。提案するだけのチャットボットとは異なり、エージェントはコードを変更し、作業を進め、ツール全体で実際のアクションをトリガーできます。その自律性こそがエージェントを有用なものにしていますが、同時にガードレールが必要な理由でもあります。エージェントが単独でできることが増えれば増えるほど、その作業が整合性を保ち、レビューされ、説明責任を果たせる状態を維持することがより重要になります。

ガードレールが対処する主なリスクと、人間の判断が引き続き不可欠な領域は以下のとおりです。

  • 不整合: エージェントが誤ったものを最適化したり、タスクから逸脱したりする。

  • 低品質なまたは誤った出力: 完成しているように見えるが、ハルシネーションによって生成されたコードや事実が含まれている、的外れな作業。

  • 過度に広範なアクセス: エージェントがアクセスすべきではないデータやシステムにアクセスする。

  • レビューされていない、取り消せないアクション: 本番環境へのプッシュやデータの削除など、完全に元に戻すことができない影響の大きい変更は、適用前に人間が関与するチェックポイントが必要である。

  • 説明責任や可視性の欠如: 記録がなければ、エージェントが何をしたか、あるいは誰が承認したかを誰も確認できない。

  • コストの暴走: エージェントはトークンを消費し、予測不可能な計算処理を行う可能性があるため、他のリソースと同様に支出に制限を設ける必要がある。

ガードレールは、エージェントではなくシステムがそれを適用する場合にのみ機能します。エージェントにしてはいけないことを指示するのは、ガードレールにはなりません。なぜなら、指示されたとしても、知らないうちにそれを実行してしまう可能性があるからからです。真のガードレールは、エージェントが稼働する環境においてエージェントの上位に配置されるため、望ましくないアクションは単に抑制されるのではなく、実行不可能になります。

これが、ガードレールが自律性のブレーキではなく、自律性の前提条件である理由です。範囲を信頼するチームは、実務的な監視を減らし、エージェントにより多くの責任を委ねることができます。それができないチームは、エージェントを導入した目的であるスピードを失うことになります。

Jira で AI エージェントを安全に管理するにはどうすればよいか?

ガードレールが、エージェントが稼働するシステム内でエージェントの上位に位置する必要がある場合、重要になるのはそのシステムであり、エンジニアリング作業において、それは Jira です。エージェントがアトラシアンの System of Work 内で稼働する場合、チームがすでに使用しているのと同じ Jira 権限、および既存のワークフローや監査証跡を通じて、データや作業項目にアクセスします。エージェントがエージェント自体の環境内で実行できることは、引き続きエージェントによって管理されます。そのため、Jira では作業へのアクセスが管理され、エージェントレベルの権限ではエージェントが実行するツールが管理されます。

コーディング エージェントでは、単体でコーディング エージェント自体のアクションのみが管理されます。Jira が作業を管理するため、ガードレールはすべてのエージェントに対して 1 か所で適用され、各エージェントがどのリスクに対処しているかを確認できます。

そのような適用の大部分は、ワークフローで行われます。人間の間で作業をルーティングするステータス、トランジション、およびルールは、作業をエージェントにもルーティングし、エージェントが実行できるトランジションを決定し、影響の大きい変更を承認のために保留します。

アクセス: Jira で統制できること

最初の統制は範囲です。つまり、エージェントが作業にどのようなデータ、ツール、プロジェクトを使用できるかということです。これは、過度に広範なアクセスを防ぐためのガードレールです。Jira では、チーム メイトに設定するのと同じ方法でこれを設定できるため、使い慣れた手順で自由に調整できます。

  • Jira での仕組み: エージェントが対応する際のアイデンティティを選択します。既定では、エージェントは背後にいる人間の代理として対応し、人間がアクセスできるデータ、プロジェクト、および作業項目にのみアクセスします。また、エージェントに独自のアカウントと権限を付与し、そのアクセスが特定の一個人に依存しないようにすることもできます。管理者は、どのエージェントがどこで稼働しているかを統制します。エージェントがエージェント自体のツールで実行できる内容は、Jira ではなく、エージェントによって設定されます。アクセス範囲を広範なまま保つか、厳密に絞り込み、信頼が高まるにつれてその範囲を広げます。

  • 調整する統制。これらの統制は、人間に対してすでに使用している権限付与の仕組みと同じです。権限スキームとプロジェクト ロールによって、エージェントがプロジェクト内で実行できることが設定され、エージェントが閲覧できる特定の作業項目に対してセキュリティ上の制限が設定されます。統制のいずれかを強化すると、エージェントのアクセス範囲が絞り込まれるため、エージェント固有のシステムは必要ありません。

  • タスクに必要なものへのアクセスの許可。ほとんどのエージェントは、ある程度の自由度があると最も効果的に作業するため、タスクに合わせて範囲を設定します。真に機密性の高いシステムについては、特にそれらへのアクセスを許可しないようにします。

ワークフロー内でエージェントが実行する内容をどのように統制するか?

2 つ目のガードレールは ワークフローです。つまり、エージェントがいつ実行されるか、単独で何ができるか、どのコールが人間による対応を待つかを決定するルールです。これは、認識のずれや取り消せないアクションを防ぐための対策です。チームがすでに使用しているトランジションにこれらのルールを設定するため、監視が最後の唯一のゲートではありません。

トランジション条件はエージェントが対応できるステージを制限し、バリデーターは準備ができていない作業をブロックし、承認ステップは影響の大きい変更を人間のために保留します。人間による承認は複数あるルールの 1 つであり、その作業はリスクに合わせてルールを適用することです。

  • Jira での設定方法: 作業タイプのワークフローを開き、トランジション (たとえば "レビュー中" に移行する) にエージェントを追加して、作業項目がそのポイントに到達したときにエージェントが実行されるようにします。エージェントを追加すると、人間が承認するかどうかではなく、エージェントがいつ実行されるかが設定されます。人間による承認は独立した統制です。つまり、ワークフローの承認ステップがトランジションを制御し、これを、いつ一時停止して質問するかに関するエージェント独自の指示や、自動化ルールと組み合わせることができます。トランジションは、複数のエントリ ポイントの 1 つです。エージェントは次の場合にも起動されます。

    • 作業が作成された場合。作業が届いた瞬間にエージェントでトリアージされます。

    • ラベルやフィールドが変更された場合、または自動化ルールによるスケジュールに基づく場合。

    • リリース ノートのドラフト作成などの定期的な更新のために、エージェントがバックグラウンドで実行される場合。

  • リスクに合わせてゲートを設定します。低リスクの作業 (依存関係の更新) は自動で実行させ、中リスクの作業 (共有設定の変更) については人間に通知し、高リスクのアクションや取り返しのつかないアクション (本番環境の操作やデータの削除) には承認を必要とするようにします。

  • エージェントが担当するタスクを決定します。チェックポイントを設定する前に、エージェントが何を担当するかを決定します。低リスクの作業はエージェントに完全に任せ、影響の大きい作業は人間が完了できるように準備し、最も重要な決断は人間が担当するようにします。タスクの範囲を制限することが最初の決定事項であり、チェックポイントはそれをどのように適用するかを示すものです。

  • エージェントに独自の指示を与えます。一般的な既定ではなくチームの規則に従うように、エージェント自体が下す決定や、いつ中断して質問すべきかなど、エージェントの動作や作業の進め方を設定します。

出力のレビュー: エージェントが生成した内容をどのように検証するか?

3 つ目のガードレールは作業の成果物自体のレビューです。これにより、低品質な出力やハルシネーションが生成される前に、人間がそれらを発見できます。コーディング エージェントの場合、それはエージェントが作成するプル リクエストです。

  • Jira では、エージェントの出力は、人間によるチェックや既存のチェックによって検証されるまでは、新しい貢献者からのコードに適用するのと同じ基準で、信頼できないものとして扱われます。エージェントの作業は作業項目に結び付けられ、コードの変更はプル リクエストとして送信され、通常のレビューおよびマージ プロセスを経由します。エージェントが生成したものが、チームがすでに実施しているレビューをスキップすることはありません。

  • 出力の背後にある作業を確認します。最終結果だけを確認するのではありません。Jira のエージェント セッションを使用すると、エージェントが実行した内容とその理由を 1 か所で確認できます。これにより、レビュアーは出力を再構築するのではなく、出力を理解するためのコンテキストを確認できます。

キャプション: 例: Bitbucket Cloud で AI コードレビューの基準を定義し、すべてのプル リクエストに自動的に適用します。

責任の所在が明確になる記録を保持する: 誰が、いつ、何をしたか?

4 つ目のガードレールは、説明責任に対する答えである記録です。これは、エージェントの作業を意図に結び付けます。つまり、エージェントが何をしたか、その理由、どの作業項目に対応したか、誰がそれを承認したかということです。このように結び付けることで、問題が発生したときに課題を簡単に追跡して解決できるようになります。

  • Jira では、すべてのエージェントは既知のアイデンティティで実行されます。つまり、作業を割り当てた人または設定した人としてその人の権限で対応するか、権限が割り当てられたエージェント自体のアカウントとして対応します。いずれにせよ、記録は各アクションを説明責任を負うアイデンティティに結び付けます。記録には、エージェントが何をしたか、誰がその説明責任を負うかが、人間のアクティビティとともに作業項目の履歴に記載され、承認は承認したレビュアーに紐付けられます。管理者は、監査ログで異常なアクティビティを監視することもできます。

  • ローカル エージェントの作業を記録に取り込みます。エージェント セッションの追跡により、ローカルの IDE またはターミナル内にある、ローカル AI コーディング エージェントからのアクティビティが取り込まれて作業項目にリンクされるため、Jira 外で行われた作業も 1 つの記録にまとめられ、責任の所在が明確になります。待機リストにサインアップしましょう

エージェントのガードレールに関するベスト プラクティスとは

  • エージェントのアクセス権をタスクに一致させて、信頼が高まるにつれて範囲を拡大します (エージェントは既存の Jira 権限を使用)。

  • エージェントに、どのようなアクションを実行し、いつ中断して質問すべきか、明確な指示を与えます。

  • エージェントには、影響の大きいタスクの前に、リスクが低く修正可能な作業から着手させます。

  • 重要な決定には人間を関与させ、最終的な承認だけでなく、複数の段階でチェックポイントを設けます。

  • 人間の出力と同じプロセスで、エージェントの出力をレビューします (プル リクエストのレビューやマージ)。

  • すべてのエージェントのアクションを記録に残し、作業項目に紐づけます (履歴と監査ログ)。

  • コスト管理の観点から、エージェントの役割を明確にします (エージェントが推測に基づいて作業を行うと、やり直しが発生して支出が膨らむため)。

Atlassian found that AI grounded in Teamwork Graph improved answer quality by 44% while reducing token consumption by 48%.

アトラシアンは、Teamwork Graph を基盤とする AI が、トークンの消費量を 48% 削減しつつ、回答の品質を 44% 向上させることがわかりました。

Jira がカバーするガードレールと、その他のガードレール

ガードレールは、エージェント スタックの複数のレイヤーに存在します。Jira は作業/アクセス レイヤーを管理しており、その他のレイヤーはモデル プロバイダー、エージェント フレームワーク、CI が担います。

Jira が適用するガードレール

スタック内の別の場所で処理されるガードレール

Jira の権限とプロジェクト構成により、エージェントのアクセス範囲を設定

モデルの出力のフィルタリングまたは管理 (モデル プロバイダーが行います)

ワークフローのトランジションにおいて、人による承認で作業を制限

エージェントのモデルまたはランタイムを実行 (Jira Coding エージェントはアトラシアンが提供するサンドボックスで実行され、サードパーティ製エージェントは独自のフレームワークで実行されます)

エージェントのアクションを作業項目の履歴と管理者の監査ログに記録

すべてのプロンプト インジェクションをブロック (フィルタリングも有効ですが、すべてを防ぐことはできません。万が一、通過した場合は Jira が被害を最小限に抑えます)

タスクごとに自律的な実行、または承認必須の実行を設定

テストやセキュリティ スキャンなどのコードレベルのチェックを適用 (CI パイプラインで実行されます)

Jira はエージェントが実行できることを管理して、実行したことを記録します。また、モデルレベル/ランタイムレベルの安全性を代替するのではなく、補完します。

Jira で最初のエージェント ガードレールを追加する方法

始めるにあたって、本格的なガバナンス プログラムは不要です。1 つのガードレールによって、重要な決定には人が関与しながら、責任を持ってエージェントに実際の作業を任せられます。また、信頼が深まるにつれて任せる範囲を拡大できます。

  1. 不安定なテストや依存関係の更新など、定型的に発生して修正可能なタスクを 1 つ選択します (ミスによるコストを抑えるため)。

  2. 新しいチーム メイトに与えるのと同じアクセス権限でエージェントを実行します。タスクが必要とする権限以上は与えないようにしましょう。

  3. ワークフローのトランジションにガードレールを追加して、最初に人が承認するようにします (不適切なアクションやリスクのあるアクションを検出)。

  4. 通常のプロセスでプル リクエストをレビューします (低品質な出力やハルシネーションを検出)。

  5. 作業項目に記録されていることを確認します (修正する必要がある場合のトレーサビリティ)。

  6. 責任を持って AI を拡張するワークフローを構築することで、より優れたエージェントの出力、レビュー時間の短縮、そしてここから安全に拡張できる、より高い自律性を実現します。

責任ある AI ガバナンスに関する実用的で明快なガイドをご覧ください。これは、アトラシアンの責任あるテクノロジー原則の一環です。

AI エージェントのガードレールに関するよくある質問

AI エージェントを安全に保つにはどうすればよいですか?

各タスクのリスクに応じた監視を行いながら、アクセス可能な対象を制御し、影響の大きいアクションには人間の承認を必須として、すべての行動を記録することで、AI エージェントを安全に保ちます。

Jira は AI エージェントをどのように管理していますか?

Jira は、チームがすでに使用している制御を通じて AI エージェントを管理します。エージェントは Jira の権限とワークフローの範囲内で動作します。ワークフローのトランジション時に人間による承認を必須にできます。エージェントのアクションは、作業項目の履歴と監査ログに記録されます。

Jira の AI エージェントは、人間による承認を必須にできますか?

はい、できます。ワークフローのトランジションにエージェントを追加して、作業を進める前に人がその出力をレビューして承認するようにします。また、リスクが低く修正可能なタスクでは自律性を維持できます。

AI エージェントでのプロンプト インジェクションとは?

プロンプト インジェクションとは、エージェントを意図しないアクションに誘導しようとする、信頼できない入力です。アトラシアンは、インジェクションの試みに対して Rovo 搭載エージェントへの入力をフィルタリングします。ただし、完璧なフィルターは存在しないため、アクセス制限、人間による承認、完全な監査証跡といった多層的なガードレールによって残りの部分を制御します。