[{"data":1,"prerenderedAt":1000},["ShallowReactive",2],{"/ja-jp/blog/3-best-practices-for-building-software-in-the-era-of-llms":3,"navigation-ja-jp":220,"banner-ja-jp":650,"footer-ja-jp":658,"blog-post-authors-ja-jp-Salman Ladha":900,"blog-related-posts-ja-jp-3-best-practices-for-building-software-in-the-era-of-llms":915,"next-steps-ja-jp":939,"blog-promotions-ja-jp":948},{"id":4,"title":5,"authors":6,"body":8,"category":201,"date":202,"description":203,"extension":204,"externalUrl":205,"faq":205,"featured":206,"heroImage":207,"meta":208,"navigation":206,"path":209,"seo":210,"slug":212,"stem":213,"tags":214,"template":217,"updatedDate":218,"__hash__":219},"blogPosts/ja-jp/blog/3-best-practices-for-building-software-in-the-era-of-llms.md","LLM時代におけるソフトウェア開発の3つのベストプラクティス",[7],"Salman Ladha",{"type":9,"value":10,"toc":193},"minimark",[11,22,25,28,33,42,45,54,57,71,83,98,101,113,117,120,150,153,159,162,166,169,172,180,183],[12,13,14,15,21],"p",{},"AIは、現代のソフトウェア開発の中核を担う存在として急速に浸透しています。デベロッパーがこれまで以上に速くコーディングできるようになっただけでなく、テストケースの作成やドキュメントの要約といった低レベルのタスクも自動化されています。当社の",[16,17,20],"a",{"href":18,"rel":19},"https://about.gitlab.com/resources/developer-survey/",[],"2024年グローバルDevSecOps調査","によると、デベロッパーの81%がすでにワークフローでAIを使用しているか、今後2年以内に使用する予定であると回答しています。",[12,23,24],{},"手作業によるコーディングが減るにつれ、微妙ながら重要な行動の変化が見られます。デベロッパーは、AIが生成したコードを十分に精査せずに信頼し始めているのです。理解できなくはないものの、この信頼感は、特にコード全体の量が増加する中で、静かにセキュリティリスクをもたらす可能性があります。デベロッパーがすべての脆弱性や攻撃手法を把握し続けることは期待できません。だからこそ、彼らとともにスケールするシステムと安全策が必要です。AIツールは確実に今後も使われ続けます。そのため、セキュリティ専門家として、デベロッパーがスピードとセキュリティの両方を向上させる方法でAIツールを採用できるようにすることが重要です。",[12,26,27],{},"その実現に向けた、3つの実践的な方法をご紹介します。",[29,30,32],"h2",{"id":31},"決して信頼せず常に検証する","決して信頼せず、常に検証する",[12,34,35,36,41],{},"前述のとおり、デベロッパーはAIが生成したコードを、特にそれがクリーンに見え、エラーなくコンパイルされる場合、より容易に信頼し始めています。これに対処するため、ゼロトラストの考え方を採用しましょう。",[16,37,40],{"href":38,"rel":39},"https://about.gitlab.com/blog/why-devops-and-zero-trust-go-together/",[],"ゼロトラスト","は通常、IDやアクセス管理の文脈でよく語られますが、同じ原則を少し異なる枠組みでここにも適用できます。AI生成コードを、経験の浅いデベロッパーからの入力と同じように扱うべきです。有用ではありますが、適切なレビューなしには本番環境に実行すべきではありません。",[12,43,44],{},"デベロッパーは、コードがマージされる前に、そのコードが何を実行するのか、なぜ安全なのかを説明できる必要があります。AI生成コードのレビューは、ソフトウェア開発の世界で求められる新たなスキルセットになるかもしれません。これを得意とするデベロッパーは不可欠な存在になるでしょう。なぜなら、LLMのスピードとリスク軽減の考え方を組み合わせて、より安全なコードをより速く生み出せるからです。",[12,46,47,48,53],{},"ここで、",[16,49,52],{"href":50,"rel":51},"https://docs.gitlab.com/ja-jp/user/project/merge_requests/duo_in_merge_requests/",[],"GitLab Duoコードレビュー","のようなツールが役立ちます。ソフトウェア開発ライフサイクル全体にわたるAIコンパニオン機能として、コードレビュープロセスにAIを導入します。これは人間の判断を置き換えるのではなく、強化するためです。マージリクエストにおける質問、矛盾、見落とされた問題を可視化することで、AIは開発サイクルを加速させているAIそのものに、デベロッパーが遅れを取らないよう支援します。",[29,55,56],{"id":56},"セキュアなパターンをプロンプトする",[12,58,59,60,65,66,70],{},"大規模言語モデル（",[16,61,64],{"href":62,"rel":63},"https://about.gitlab.com/blog/what-is-a-large-language-model-llm/",[],"LLM","）は強力ですが、与えられたプロンプトと同じくらい正確です。そのため、プロンプトエンジニアリングはAIツール活用における中核となりつつあります。LLMの世界では、入力",[67,68,69],"em",{},"そのものが","インターフェースです。明確でセキュリティを意識したプロンプトの書き方を学ぶデベロッパーは、最初から安全なソフトウェアを構築する上で重要な役割を果たします。",[12,72,73,74,78,79,82],{},"たとえば、「ログインフォームを作成して」といった曖昧なリクエストは、しばしば安全でないか過度に単純な結果を生み出します。しかし、「入力検証、レート制限、ハッシング処理を",[75,76,77],"strong",{},"備えた","ログインフォームを作成し、",[75,80,81],{},"かつ","パスキーなどのフィッシング耐性のある認証方法をサポートしてください」といった、より多くのコンテキストを含めることで、組織のセキュリティ基準を満たす出力を得られる可能性が高まります。",[12,84,85,86,91,92,97],{},"Backlash Security社による最近の",[16,87,90],{"href":88,"rel":89},"https://www.backslash.security/press-releases/backslash-security-reveals-in-new-research-that-gpt-4-1-other-popular-llms-generate-insecure-code-unless-explicitly-prompted",[],"研究","がこれを裏付けています。この研究では、安全なプロンプトが主要なLLM全体で成果を改善することが判明されました。デベロッパーが単にモデルに「安全なコードを書いて」と要求した場合、成功率は低いままでした。しかし、プロンプトに",[16,93,96],{"href":94,"rel":95},"https://cheatsheetseries.owasp.org/cheatsheets/LLM_Prompt_Injection_Prevention_Cheat_Sheet.html",[],"OWASPベストプラクティス","を参照させた場合、安全なコード生成の割合が増加したのです。",[12,99,100],{},"プロンプトエンジニアリングは、開発チーム内のセキュリティ推進者を育成・支援する手法の一部であるべきです。安全なコーディングパターンや脅威モデリングを教えるのと同じように、同じセキュリティマインドセットでAIツールを導く方法もデベロッパーに教える必要があります。",[102,103,104],"blockquote",{},[12,105,106,107,112],{},"有益な",[16,108,111],{"href":109,"rel":110},"https://docs.gitlab.com/ja-jp/development/ai_features/prompt_engineering/",[],"プロンプトエンジニアリングのヒント","でさらに詳しく学びましょう。",[29,114,116],{"id":115},"すべてをスキャンし例外を認めない","すべてをスキャンし、例外を認めない",[12,118,119],{},"AIの台頭により、同じ人数の人間で、より多くのコードをより速く書く時代が到来しました。この変化は、セキュリティを単なる最終チェックではなく、開発プロセスのあらゆる側面に組み込まれた常時稼働の防護策として捉え直す必要性を示しています。",[12,121,122,123,128,129,128,134,139,140,145,146,149],{},"コードが増えれば、攻撃対象領域も拡大します。そして、そのコードが部分的または完全に生成されたものである場合、リスク発見を安全なコーディング手法や個人の直感だけに依存することはできません。そこで自動スキャンの出番です。",[16,124,127],{"href":125,"rel":126},"https://docs.gitlab.com/ja-jp/user/application_security/sast/",[],"静的アプリケーションセキュリティテスト（SAST）","、",[16,130,133],{"href":131,"rel":132},"https://docs.gitlab.com/ja-jp/user/application_security/dependency_scanning/",[],"ソフトウェアコンポジション解析（SCA）",[16,135,138],{"href":136,"rel":137},"https://docs.gitlab.com/ja-jp/user/application_security/secret_detection/",[],"シークレット検出","は、シークレット漏洩、サプライチェーン攻撃、SQLインジェクションなどの脆弱性リスクを軽減するための重要な制御となります。GitLabのようなプラットフォームでは、",[16,141,144],{"href":142,"rel":143},"https://about.gitlab.com/ja-jp/solutions/application-security-testing/",[],"アプリケーションセキュリティ","がデベロッパーのワークフローにネイティブに組み込まれているため、開発ライフサイクルの自然な一部となっています。スキャナーはプログラム全体を追跡して、AIが生成した新しいコードが",[67,147,148],{},"他のすべてのコードとのコンテキストにおいて","安全であることを確認できます。これは、IDEやAI生成パッチで新規コードを見ているだけでは発見が難しい場合があります。",[12,151,152],{},"しかし重要なのは、スキャンするだけでなく、その速度です。開発チームがAI支援開発のスピードに追いつくには、高速で正確、かつスケーラブルなスキャンが必要です。特に正確性が重要で、スキャナーによる誤検知でデベロッパーを圧迫させてしまうと、システムへの信頼を完全に失うリスクがあります。",[12,154,155,156,158],{},"速く動き、",[67,157,81],{},"安全を保つ唯一の方法は、スキャンを絶対条件とすることです。",[12,160,161],{},"すべてのコミット、すべてのブランチに対して、例外は認めません。",[29,163,165],{"id":164},"gitlabでai生成コードを保護する","GitLabでAI生成コードを保護する",[12,167,168],{},"AIはソフトウェアの構築方法を変えていますが、安全なソフトウェア開発の基本原則は依然として適用されます。コードは引き続きレビューが必要です。脅威は依然としてテストが必要です。そして、セキュリティは依然として私たちの働き方に組み込まれる必要があります。GitLabでは、まさにそれを実現しています。",[12,170,171],{},"デベロッパープラットフォームとして、ワークフローにセキュリティを後付けするのではなく、デベロッパーがすでに作業している場所、つまりIDE、マージリクエスト、パイプラインに直接組み込んでいます。スキャンは自動的に実行され、関連するセキュリティ情報が可視化されて、より速い修復サイクルを促進します。そして、デベロッパーがソフトウェアを構築、テスト、デプロイする同一のプラットフォーム上で動作するため、ツールや頭の切り替えが不要になり、安全なコードへの道筋がはるかにスムーズになります。",[12,173,174,179],{},[16,175,178],{"href":176,"rel":177},"https://about.gitlab.com/ja-jp/blog/automate-remediation-with-ready-to-merge-ai-code-fixes/",[],"GitLab Duo脆弱性の説明および脆弱性の修正","といったAI機能は、さらなるスピードと洞察をもたらし、デベロッパーがワークフローを中断することなく、より速くリスクを理解して修正することを支援します。",[12,181,182],{},"AIはセキュリティへの近道ではありません。しかし、適切なプラクティスと、デベロッパーの作業環境に即したプラットフォームがあれば、高速で安全、かつスケーラブルなソフトウェア構築に確実に貢献します。",[102,184,185],{},[12,186,187,192],{},[16,188,191],{"href":189,"rel":190},"https://about.gitlab.com/ja-jp/free-trial/",[],"GitLab UltimateとDuo Enterpriseの無料トライアル","を開始し、より速く安全なソフトウェア構築を体験してください。ネイティブなセキュリティスキャン、AIを活用したインサイト、シームレスなデベロッパーエクスペリエンスにより、GitLabは開発スピードを落とすことなくセキュリティをシフトレフトする支援をします。",{"title":194,"searchDepth":195,"depth":195,"links":196},"",2,[197,198,199,200],{"id":31,"depth":195,"text":32},{"id":56,"depth":195,"text":56},{"id":115,"depth":195,"text":116},{"id":164,"depth":195,"text":165},"ai","2025-07-10","AIによってコーディングスピードが変革される中、デベロッパーは新たなセキュリティ習慣を必要としています。DevSecOpsワークフロー全体でそれらを展開する方法をご紹介します。","md",null,true,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662523/Blog/Hero%20Images/Gartner_DevOps_Blog_Post_Cover_Image_1800x945__2_.png",{},"/ja-jp/blog/3-best-practices-for-building-software-in-the-era-of-llms",{"noIndex":211,"title":5,"description":203},false,"3-best-practices-for-building-software-in-the-era-of-llms","ja-jp/blog/3-best-practices-for-building-software-in-the-era-of-llms",[215,216],"AI","security","BlogPost","2025-11-20","Y1_RFbXUz1pwpSxqKe2OY8GPjRJGqZ5qYdOhpICulDA",{"logo":221,"freeTrial":226,"sales":231,"login":236,"items":241,"search":570,"minimal":603,"duo":620,"switchNav":629,"pricingDeployment":640},{"config":222},{"href":223,"dataGaName":224,"dataGaLocation":225},"/ja-jp/","gitlab logo","header",{"text":227,"config":228},"無料トライアルを開始",{"href":229,"dataGaName":230,"dataGaLocation":225},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp&glm_content=default-saas-trial/","free trial",{"text":232,"config":233},"デモをリクエスト",{"href":234,"dataGaName":235,"dataGaLocation":225},"/ja-jp/sales/?contact-topic=request-demo","sales",{"text":237,"config":238},"サインイン",{"href":239,"dataGaName":240,"dataGaLocation":225},"https://gitlab.com/users/sign_in/","sign in",[242,271,373,378,492,548],{"text":243,"config":244,"menu":246},"プラットフォーム",{"dataNavLevelOne":245},"platform",{"type":247,"columns":248},"cards",[249,255,263],{"title":243,"description":250,"link":251},"DevSecOpsに特化したインテリジェントオーケストレーションプラットフォーム",{"text":252,"config":253},"プラットフォームの詳細はこちら",{"href":254,"dataGaName":245,"dataGaLocation":225},"/ja-jp/platform/",{"title":256,"description":257,"link":258},"GitLab Duo Agent Platform","ソフトウェアライフサイクル全体を支えるエージェント型AI",{"text":259,"config":260},"GitLab Duoのご紹介",{"href":261,"dataGaName":262,"dataGaLocation":225},"/ja-jp/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":264,"description":265,"link":266},"GitLabが選ばれる理由","エンタープライズがGitLabを選ぶ主な理由をご覧ください",{"text":267,"config":268},"詳細はこちら",{"href":269,"dataGaName":270,"dataGaLocation":225},"/ja-jp/why-gitlab/","why gitlab",{"text":272,"left":206,"config":273,"menu":275},"製品",{"dataNavLevelOne":274},"solutions",{"type":276,"link":277,"columns":281,"feature":352},"lists",{"text":278,"config":279},"すべてのソリューションを表示",{"href":280,"dataGaName":274,"dataGaLocation":225},"/ja-jp/solutions/",[282,307,330],{"title":283,"description":284,"link":285,"items":290},"自動化","CI/CDと自動化でデプロイを加速",{"config":286},{"icon":287,"href":288,"dataGaName":289,"dataGaLocation":225},"AutomatedCodeAlt","/ja-jp/solutions/delivery-automation/","automated software delivery",[291,295,298,303],{"text":292,"config":293},"CI/CD",{"href":294,"dataGaLocation":225,"dataGaName":292},"/ja-jp/solutions/continuous-integration/",{"text":256,"config":296},{"href":261,"dataGaLocation":225,"dataGaName":297},"gitlab duo agent platform - product menu",{"text":299,"config":300},"ソースコード管理",{"href":301,"dataGaLocation":225,"dataGaName":302},"/ja-jp/solutions/source-code-management/","Source Code Management",{"text":304,"config":305},"自動化されたソフトウェアデリバリー",{"href":288,"dataGaLocation":225,"dataGaName":306},"Automated software delivery",{"title":308,"description":309,"link":310,"items":315},"セキュリティ","セキュリティを犠牲にすることなくコード作成を高速化",{"config":311},{"href":312,"dataGaName":313,"dataGaLocation":225,"icon":314},"/ja-jp/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[316,320,325],{"text":317,"config":318},"アプリケーションセキュリティテスト",{"href":312,"dataGaName":319,"dataGaLocation":225},"Application security testing",{"text":321,"config":322},"ソフトウェアサプライチェーンセキュリティ",{"href":323,"dataGaLocation":225,"dataGaName":324},"/ja-jp/solutions/supply-chain/","Software supply chain security",{"text":326,"config":327},"ソフトウェアコンプライアンス",{"href":328,"dataGaName":329,"dataGaLocation":225},"/ja-jp/solutions/software-compliance/","software compliance",{"title":331,"link":332,"items":337},"測定",{"config":333},{"icon":334,"href":335,"dataGaName":336,"dataGaLocation":225},"DigitalTransformation","/ja-jp/solutions/visibility-measurement/","visibility and measurement",[338,342,347],{"text":339,"config":340},"可視性と測定",{"href":335,"dataGaLocation":225,"dataGaName":341},"Visibility and Measurement",{"text":343,"config":344},"バリューストリーム管理",{"href":345,"dataGaLocation":225,"dataGaName":346},"/ja-jp/solutions/value-stream-management/","Value Stream Management",{"text":348,"config":349},"分析とインサイト",{"href":350,"dataGaLocation":225,"dataGaName":351},"/ja-jp/solutions/analytics-and-insights/","Analytics and insights",{"title":353,"type":276,"items":354},"GitLabが活躍する場所",[355,361,367],{"text":356,"config":357},"大企業",{"icon":358,"href":359,"dataGaLocation":225,"dataGaName":360},"Building","/ja-jp/enterprise/","enterprise",{"text":362,"config":363},"スモールビジネス",{"icon":364,"href":365,"dataGaLocation":225,"dataGaName":366},"Work","/ja-jp/small-business/","small business",{"text":368,"config":369},"公共部門",{"icon":370,"href":371,"dataGaLocation":225,"dataGaName":372},"Organization","/ja-jp/solutions/public-sector/","public sector",{"text":374,"config":375},"価格",{"href":376,"dataGaName":377,"dataGaLocation":225,"dataNavLevelOne":377},"/ja-jp/pricing/","pricing",{"text":379,"config":380,"menu":382},"関連リソース",{"dataNavLevelOne":381},"resources",{"type":276,"link":383,"columns":387,"feature":481},{"text":384,"config":385},"すべてのリソースを表示",{"href":386,"dataGaName":381,"dataGaLocation":225},"/ja-jp/resources/",[388,421,448],{"title":389,"items":390},"はじめに",[391,396,401,406,411,416],{"text":392,"config":393},"インストール",{"href":394,"dataGaName":395,"dataGaLocation":225},"/ja-jp/install/","install",{"text":397,"config":398},"クイックスタートガイド",{"href":399,"dataGaName":400,"dataGaLocation":225},"/ja-jp/get-started/","quick setup checklists",{"text":402,"config":403},"学ぶ",{"href":404,"dataGaLocation":225,"dataGaName":405},"https://university.gitlab.com/","learn",{"text":407,"config":408},"製品ドキュメント",{"href":409,"dataGaName":410,"dataGaLocation":225},"https://docs.gitlab.com/ja-jp/","product documentation",{"text":412,"config":413},"ベストプラクティスビデオ",{"href":414,"dataGaName":415,"dataGaLocation":225},"/ja-jp/getting-started-videos/","best practice videos",{"text":417,"config":418},"インテグレーション",{"href":419,"dataGaName":420,"dataGaLocation":225},"/ja-jp/integrations/","integrations",{"title":422,"items":423},"検索する",[424,429,434,439,443],{"text":425,"config":426},"お客様成功事例",{"href":427,"dataGaName":428,"dataGaLocation":225},"/ja-jp/customers/","customer success stories",{"text":430,"config":431},"ブログ",{"href":432,"dataGaName":433,"dataGaLocation":225},"/ja-jp/blog/","blog",{"text":435,"config":436},"Demo Hub",{"href":437,"dataGaName":438,"dataGaLocation":225},"/ja-jp/demo-hub/","demo hub",{"text":440,"config":441},"The Source",{"href":442,"dataGaName":433,"dataGaLocation":225},"/ja-jp/the-source/",{"text":444,"config":445},"リモート",{"href":446,"dataGaName":447,"dataGaLocation":225},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":449,"items":450},"つなげる",[451,456,461,466,471,476],{"text":452,"config":453},"GitLabサービス",{"href":454,"dataGaName":455,"dataGaLocation":225},"/ja-jp/services/","services",{"text":457,"config":458},"コントリビュート",{"href":459,"dataGaName":460,"dataGaLocation":225},"https://contributors.gitlab.com","contribute",{"text":462,"config":463},"コミュニティ",{"href":464,"dataGaName":465,"dataGaLocation":225},"/community/","community",{"text":467,"config":468},"フォーラム",{"href":469,"dataGaName":470,"dataGaLocation":225},"https://forum.gitlab.com/","forum",{"text":472,"config":473},"イベント",{"href":474,"dataGaName":475,"dataGaLocation":225},"/events/","events",{"text":477,"config":478},"パートナー",{"href":479,"dataGaName":480,"dataGaLocation":225},"/ja-jp/partners/","partners",{"config":482,"title":485,"text":486,"link":487},{"background":483,"textColor":484},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","GitLabの最新情報","最新の機能と改善点に関する情報をお届けします。",{"text":488,"config":489},"最新情報を読む",{"href":490,"dataGaName":491,"dataGaLocation":225},"/ja-jp/whats-new/","whats new",{"text":493,"config":494,"menu":496},"企業情報",{"dataNavLevelOne":495},"company",{"type":276,"columns":497},[498],{"items":499},[500,505,511,513,518,523,528,533,538,543],{"text":501,"config":502},"GitLabについて",{"href":503,"dataGaName":504,"dataGaLocation":225},"/ja-jp/company/","about",{"text":506,"config":507,"footerGa":510},"採用情報",{"href":508,"dataGaName":509,"dataGaLocation":225},"/jobs/","jobs",{"dataGaName":509},{"text":472,"config":512},{"href":474,"dataGaName":475,"dataGaLocation":225},{"text":514,"config":515},"経営陣",{"href":516,"dataGaName":517,"dataGaLocation":225},"/company/team/e-group/","leadership",{"text":519,"config":520},"ハンドブック",{"href":521,"dataGaName":522,"dataGaLocation":225},"https://handbook.gitlab.com/","handbook",{"text":524,"config":525},"投資家向け情報",{"href":526,"dataGaName":527,"dataGaLocation":225},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":529,"config":530},"トラストセンター",{"href":531,"dataGaName":532,"dataGaLocation":225},"/ja-jp/security/","trust center",{"text":534,"config":535},"AI Transparency Center",{"href":536,"dataGaName":537,"dataGaLocation":225},"/ja-jp/ai-transparency-center/","ai transparency center",{"text":539,"config":540},"ニュースレター",{"href":541,"dataGaName":542,"dataGaLocation":225},"/company/contact/#contact-forms","newsletter",{"text":544,"config":545},"プレス",{"href":546,"dataGaName":547,"dataGaLocation":225},"/press/","press",{"text":549,"config":550,"menu":551},"お問い合わせ",{"dataNavLevelOne":495},{"type":276,"columns":552},[553],{"items":554},[555,560,565],{"text":556,"config":557},"お問い合わせはこちら",{"href":558,"dataGaName":559,"dataGaLocation":225},"/ja-jp/sales/","talk to sales",{"text":561,"config":562},"サポートを受ける",{"href":563,"dataGaName":564,"dataGaLocation":225},"https://support.gitlab.com/hc/en-us","support portal",{"text":566,"config":567},"カスタマーポータル",{"href":568,"dataGaName":569,"dataGaLocation":225},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":571,"login":572,"suggestions":579},"閉じる",{"text":573,"link":574},"リポジトリとプロジェクトを検索するには、次にログインします",{"text":575,"config":576},"GitLab.com",{"href":239,"dataGaName":577,"dataGaLocation":578},"search login","search",{"text":580,"default":581},"提案",[582,584,589,591,595,599],{"text":256,"config":583},{"href":261,"dataGaName":256,"dataGaLocation":578},{"text":585,"config":586},"コード提案（AI）",{"href":587,"dataGaName":588,"dataGaLocation":578},"/ja-jp/solutions/code-suggestions/","Code Suggestions (AI)",{"text":292,"config":590},{"href":294,"dataGaName":292,"dataGaLocation":578},{"text":592,"config":593},"GitLab on AWS",{"href":594,"dataGaName":592,"dataGaLocation":578},"/ja-jp/partners/technology-partners/aws/",{"text":596,"config":597},"GitLab on Google Cloud",{"href":598,"dataGaName":596,"dataGaLocation":578},"/ja-jp/partners/technology-partners/google-cloud-platform/",{"text":600,"config":601},"GitLabを選ぶ理由",{"href":269,"dataGaName":602,"dataGaLocation":578},"Why GitLab?",{"freeTrial":604,"mobileIcon":608,"desktopIcon":613,"secondaryButton":616},{"text":227,"config":605},{"href":606,"dataGaName":230,"dataGaLocation":607},"https://gitlab.com/-/trials/new/","nav",{"altText":609,"config":610},"GitLabアイコン",{"src":611,"dataGaName":612,"dataGaLocation":607},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":609,"config":614},{"src":615,"dataGaName":612,"dataGaLocation":607},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":389,"config":617},{"href":618,"dataGaName":619,"dataGaLocation":607},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp/get-started/","get started",{"freeTrial":621,"mobileIcon":625,"desktopIcon":627},{"text":622,"config":623},"GitLab Duoの詳細について",{"href":261,"dataGaName":624,"dataGaLocation":607},"gitlab duo",{"altText":609,"config":626},{"src":611,"dataGaName":612,"dataGaLocation":607},{"altText":609,"config":628},{"src":615,"dataGaName":612,"dataGaLocation":607},{"button":630,"mobileIcon":635,"desktopIcon":637},{"text":631,"config":632},"/switch",{"href":633,"dataGaName":634,"dataGaLocation":607},"#contact","switch",{"altText":609,"config":636},{"src":611,"dataGaName":612,"dataGaLocation":607},{"altText":609,"config":638},{"src":639,"dataGaName":612,"dataGaLocation":607},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":641,"mobileIcon":646,"desktopIcon":648},{"text":642,"config":643},"料金ページに戻る",{"href":376,"dataGaName":644,"dataGaLocation":607,"icon":645},"back to pricing","GoBack",{"altText":609,"config":647},{"src":611,"dataGaName":612,"dataGaLocation":607},{"altText":609,"config":649},{"src":615,"dataGaName":612,"dataGaLocation":607},{"title":651,"button":652,"config":656},"GitLab Orbitが登場: AIエージェントのためのコンテキストレイヤー",{"text":267,"config":653},{"href":654,"dataGaName":655,"dataGaLocation":225},"/ja-jp/gitlab-orbit/","orbit",{"layout":657,"disabled":211},"release",{"data":659},{"text":660,"source":661,"edit":667,"contribute":672,"config":677,"items":682,"minimal":891},"GitはSoftware Freedom Conservancyの商標です。当社は「GitLab」をライセンスに基づいて使用しています",{"text":662,"config":663},"ページのソースを表示",{"href":664,"dataGaName":665,"dataGaLocation":666},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":668,"config":669},"このページを編集",{"href":670,"dataGaName":671,"dataGaLocation":666},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":673,"config":674},"ご協力をお願いします",{"href":675,"dataGaName":676,"dataGaLocation":666},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":678,"facebook":679,"youtube":680,"linkedin":681},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[683,728,781,824,858],{"title":374,"links":684,"subMenu":699},[685,689,694],{"text":686,"config":687},"プランの表示",{"href":376,"dataGaName":688,"dataGaLocation":666},"view plans",{"text":690,"config":691},"Premiumを選ぶ理由",{"href":692,"dataGaName":693,"dataGaLocation":666},"/ja-jp/pricing/premium/","why premium",{"text":695,"config":696},"Ultimateを選ぶ理由",{"href":697,"dataGaName":698,"dataGaLocation":666},"/ja-jp/pricing/ultimate/","why ultimate",[700],{"title":549,"links":701},[702,704,706,708,713,718,723],{"text":549,"config":703},{"href":558,"dataGaName":235,"dataGaLocation":666},{"text":561,"config":705},{"href":563,"dataGaName":564,"dataGaLocation":666},{"text":566,"config":707},{"href":568,"dataGaName":569,"dataGaLocation":666},{"text":709,"config":710},"ステータス",{"href":711,"dataGaName":712,"dataGaLocation":666},"https://status.gitlab.com/","status",{"text":714,"config":715},"利用規約",{"href":716,"dataGaName":717,"dataGaLocation":666},"/terms/","terms of use",{"text":719,"config":720},"プライバシーに関する声明",{"href":721,"dataGaName":722,"dataGaLocation":666},"/ja-jp/privacy/","privacy statement",{"text":724,"config":725},"Cookie 優先設定",{"dataGaName":726,"dataGaLocation":666,"id":727,"isOneTrustButton":206},"cookie preferences","ot-sdk-btn",{"title":272,"links":729,"subMenu":738},[730,734],{"text":731,"config":732},"DevSecOpsプラットフォーム",{"href":254,"dataGaName":733,"dataGaLocation":666},"devsecops platform",{"text":735,"config":736},"AI支援開発",{"href":261,"dataGaName":737,"dataGaLocation":666},"ai-assisted development",[739],{"title":740,"links":741},"トピック",[742,746,751,756,761,766,771,776],{"text":292,"config":743},{"href":744,"dataGaName":745,"dataGaLocation":666},"/ja-jp/topics/ci-cd/","cicd",{"text":747,"config":748},"GitOps",{"href":749,"dataGaName":750,"dataGaLocation":666},"/ja-jp/topics/gitops/","gitops",{"text":752,"config":753},"DevOps",{"href":754,"dataGaName":755,"dataGaLocation":666},"/ja-jp/topics/devops/","devops",{"text":757,"config":758},"バージョン管理",{"href":759,"dataGaName":760,"dataGaLocation":666},"/ja-jp/topics/version-control/","version control",{"text":762,"config":763},"DevSecOps",{"href":764,"dataGaName":765,"dataGaLocation":666},"/ja-jp/topics/devsecops/","devsecops",{"text":767,"config":768},"クラウドネイティブ",{"href":769,"dataGaName":770,"dataGaLocation":666},"/ja-jp/topics/cloud-native/","cloud native",{"text":772,"config":773},"コーディングのためのAI",{"href":774,"dataGaName":775,"dataGaLocation":666},"/ja-jp/topics/devops/ai-for-coding/","ai for coding",{"text":777,"config":778},"エージェント型AI",{"href":779,"dataGaName":780,"dataGaLocation":666},"/ja-jp/topics/agentic-ai/","agentic ai",{"title":782,"links":783},"ソリューション",[784,787,789,794,798,801,804,807,809,811,814,819],{"text":317,"config":785},{"href":312,"dataGaName":786,"dataGaLocation":666},"Application Security Testing",{"text":304,"config":788},{"href":288,"dataGaName":289,"dataGaLocation":666},{"text":790,"config":791},"アジャイル開発",{"href":792,"dataGaName":793,"dataGaLocation":666},"/ja-jp/solutions/agile-delivery/","agile delivery",{"text":795,"config":796},"SCM",{"href":301,"dataGaName":797,"dataGaLocation":666},"source code management",{"text":292,"config":799},{"href":294,"dataGaName":800,"dataGaLocation":666},"continuous integration & delivery",{"text":343,"config":802},{"href":345,"dataGaName":803,"dataGaLocation":666},"value stream management",{"text":747,"config":805},{"href":806,"dataGaName":750,"dataGaLocation":666},"/ja-jp/solutions/gitops/",{"text":356,"config":808},{"href":359,"dataGaName":360,"dataGaLocation":666},{"text":362,"config":810},{"href":365,"dataGaName":366,"dataGaLocation":666},{"text":812,"config":813},"公共機関",{"href":371,"dataGaName":372,"dataGaLocation":666},{"text":815,"config":816},"教育",{"href":817,"dataGaName":818,"dataGaLocation":666},"/ja-jp/solutions/education/","education",{"text":820,"config":821},"金融サービス",{"href":822,"dataGaName":823,"dataGaLocation":666},"/ja-jp/solutions/finance/","financial services",{"title":825,"links":826},"リソース",[827,829,831,833,837,839,842,844,846,848,850,852,854,856],{"text":392,"config":828},{"href":394,"dataGaName":395,"dataGaLocation":666},{"text":397,"config":830},{"href":399,"dataGaName":400,"dataGaLocation":666},{"text":402,"config":832},{"href":404,"dataGaName":405,"dataGaLocation":666},{"text":407,"config":834},{"href":835,"dataGaName":836,"dataGaLocation":666},"https://docs.gitlab.com/ja-jp","docs",{"text":430,"config":838},{"href":432,"dataGaName":433,"dataGaLocation":666},{"text":840,"config":841},"最新リリース",{"href":490,"dataGaName":491,"dataGaLocation":666},{"text":425,"config":843},{"href":427,"dataGaName":428,"dataGaLocation":666},{"text":444,"config":845},{"href":446,"dataGaName":447,"dataGaLocation":666},{"text":452,"config":847},{"href":454,"dataGaName":455,"dataGaLocation":666},{"text":457,"config":849},{"href":459,"dataGaName":460,"dataGaLocation":666},{"text":462,"config":851},{"href":464,"dataGaName":465,"dataGaLocation":666},{"text":467,"config":853},{"href":469,"dataGaName":470,"dataGaLocation":666},{"text":472,"config":855},{"href":474,"dataGaName":475,"dataGaLocation":666},{"text":477,"config":857},{"href":479,"dataGaName":480,"dataGaLocation":666},{"title":859,"links":860},"会社情報",[861,863,865,867,869,871,875,880,882,884,886],{"text":501,"config":862},{"href":503,"dataGaName":495,"dataGaLocation":666},{"text":506,"config":864},{"href":508,"dataGaName":509,"dataGaLocation":666},{"text":514,"config":866},{"href":516,"dataGaName":517,"dataGaLocation":666},{"text":519,"config":868},{"href":521,"dataGaName":522,"dataGaLocation":666},{"text":524,"config":870},{"href":526,"dataGaName":527,"dataGaLocation":666},{"text":872,"config":873},"Sustainability",{"href":874,"dataGaName":872,"dataGaLocation":666},"/sustainability/",{"text":876,"config":877},"ダイバーシティ、インクルージョン、ビロンギング（DIB）",{"href":878,"dataGaName":879,"dataGaLocation":666},"/ja-jp/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":529,"config":881},{"href":531,"dataGaName":532,"dataGaLocation":666},{"text":539,"config":883},{"href":541,"dataGaName":542,"dataGaLocation":666},{"text":544,"config":885},{"href":546,"dataGaName":547,"dataGaLocation":666},{"text":887,"config":888},"現代奴隷制の透明性に関する声明",{"href":889,"dataGaName":890,"dataGaLocation":666},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":892},[893,895,898],{"text":714,"config":894},{"href":716,"dataGaName":717,"dataGaLocation":666},{"text":896,"config":897},"Cookieの設定",{"dataGaName":726,"dataGaLocation":666,"id":727,"isOneTrustButton":206},{"text":719,"config":899},{"href":721,"dataGaName":722,"dataGaLocation":666},[901],{"id":902,"title":7,"body":205,"config":903,"content":905,"description":205,"extension":909,"meta":910,"navigation":206,"path":911,"seo":912,"stem":913,"__hash__":914},"blogAuthors/en-us/blog/authors/salman-ladha.yml",{"template":904},"BlogAuthor",{"name":7,"config":906},{"headshot":907,"ctfId":908},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662937/Blog/Author%20Headshots/salman_ladha_headshot.png","2AYyG99S9PBB8PQIJ6aKuq","yml",{},"/en-us/blog/authors/salman-ladha",{},"en-us/blog/authors/salman-ladha","AIlZoao6Z2q7mIH5Jkh_ZIB8304XE4IuHFiznllUnT0",[916,924,931],{"title":917,"description":918,"heroImage":919,"category":201,"date":920,"authors":921,"slug":923,"externalUrl":205},"Loop Engineeringの実践方法：GitLab × Claude Codeでの実装例","GitLabとClaude Codeで実践するLoop Engineeringの実装例をご紹介。AIエージェントを自律稼働させるcron起動・Skills活用・ラベルベースのフローと、必須のガードレール設計を解説します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1785215335/oevhcbrbev1zyfubdfxz.jpg","2026-07-31",[922],"Issei Hamada, Sony Biz Networks Corporation","loop-engineering-gitlab-claude-code",{"title":925,"description":926,"heroImage":927,"category":201,"date":920,"authors":928,"slug":930,"externalUrl":205},"エージェント型AI、MCP、AIコードアシスタントを統制する方法","AIエージェントは、各ステップで人によるレビューを介さずに、コードの記述、プッシュ、デプロイを行うことができます。アクセス、権限、監査証跡を統制する実践的なフレームワークを解説します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1785337625/ifzlc2hyzaxhzmjgyymh.png",[929],"Julie Griffin","govern-agentic-ai-mcps-code-assistants",{"title":932,"description":933,"heroImage":934,"category":201,"date":935,"authors":936,"slug":938,"externalUrl":205},"Claude Opus 5、GitLabで最難関タスクに挑む","AnthropicのClaude Opus 5がGitLab Duo Agent Platformで利用可能になりました。速度を犠牲にすることなく、より深い推論力を提供します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099203/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2820%29_2bJGC5ZP3WheoqzlLT05C5_1750099203484.png","2026-07-27",[937],"Brittany Lutz","claude-opus-5-on-gitlab-duo-agent-platform",{"header":940,"blurb":941,"button":942,"secondaryButton":946},"今すぐ開発をスピードアップ","DevSecOpsに特化したインテリジェントオーケストレーションプラットフォームで実現できることをご確認ください。\n",{"text":227,"config":943},{"href":944,"dataGaName":230,"dataGaLocation":945},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/ja-jp/","feature",{"text":549,"config":947},{"href":558,"dataGaName":235,"dataGaLocation":945},{"promotions":949},[950,963,975,986],{"id":951,"categories":952,"header":953,"text":954,"button":955,"image":960},"ai-modernization",[201],"AIの真価、組織全体で発揮できていますか？","所要時間は5分以内です",{"text":956,"config":957},"AI成熟度スコアを確認する",{"href":958,"dataGaName":959,"dataGaLocation":433},"/ja-jp/assessments/ai-modernization-assessment/","modernization assessment",{"config":961},{"src":962},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":964,"categories":965,"header":967,"text":954,"button":968,"image":972},"devops-modernization",[966,765],"product","単にツールを管理するだけでなく、イノベーションを提供していますか？",{"text":969,"config":970},"DevOps成熟度スコアを確認しましょう",{"href":971,"dataGaName":959,"dataGaLocation":433},"/ja-jp/assessments/devops-modernization-assessment/",{"config":973},{"src":974},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":976,"categories":977,"header":978,"text":954,"button":979,"image":983},"security-modernization",[216],"スピードのためにセキュリティを犠牲にしていませんか？",{"text":980,"config":981},"セキュリティ成熟度スコアを確認しましょう",{"href":982,"dataGaName":959,"dataGaLocation":433},"/ja-jp/assessments/security-modernization-assessment/",{"config":984},{"src":985},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":987,"paths":988,"header":991,"text":992,"button":993,"image":998},"github-azure-migration",[989,990],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","チームはGitHubのAzure移行に対応できていますか？","GitHubはすでにAzureを基盤として再構築を進めています。それがあなたのチームにとって何を意味するのか、ご確認ください。",{"text":994,"config":995},"GitLabとGitHubの比較を見る",{"href":996,"dataGaName":997,"dataGaLocation":433},"/ja-jp/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":999},{"src":974},1786803769136]