コーディング規約の遵守をAIで監査する「coding-policy-ai-auditor」をオープンソースとして公開

株式会社エルブズ(本社:東京渋谷区渋谷2-9-8、以下 当社)は、オープンソースソフトウェア(OSS)として、コーディング規約の遵守状況をAIで監査するツール 「coding-policy-ai-auditor」 を公開したことをお知らせします。

本ツールは、当社が展開する開発支援AI「IXV(イクシブ)」の開発過程で生まれた実用ツールであり、OSS公開の第四弾となります。

coding-policy-ai-auditor とは

coding-policy-ai-auditor」は、Excel形式のコーディング規約とプログラムコードを入力として、AIを用いて規約遵守状況を監査・可視化するWebアプリケーションです。

従来のLintツールでは検出が難しい「判断を伴うコーディング規約」(意味的・主観的なルール)をAIで判定し、違反箇所と修正案を具体的な行番号とともに提示します。

主な機能・特徴

  • 判断を伴う規約のAI監査
    Lintでは検出困難な意味的・主観的なルールを、LLM(大規模言語モデル)を用いて一つずつ適用し、違反を検出
  • 具体的な違反箇所の特定
    違反コードを行番号とともに指摘し、修正提案を併せて提示
  • 曖昧なケースへの対応
    判断が難しいケースは「Requires Review:」というプレフィックス付きで報告し、人によるレビューを促す設計
  • 静的解析との連携
    Checkstyle、PMD、Pylint、Ruff、Flake8などの静的解析ツールと組み合わせて利用可能
  • Webベースの操作画面
    ブラウザから規約ファイルとコードをアップロードし、監査結果をダウンロード可能

対応言語

  • Java(Checkstyle、PMDによる静的解析に対応)
  • Python(Pylint、Ruff、Flake8による静的解析に対応)

利用シーン

  • コードレビューの効率化と品質向上
  • 判断を伴うコーディング規約の自動チェック
  • チーム全体での規約遵守状況の可視化
  • AIを活用した開発プロセスの検証・実験
  • 新規参画メンバーへのコーディング規約教育の補助

特に、Excel形式で管理されたコーディング規約を持つ開発現場での活用を想定しています。

開発の裏側:IXVから生まれたOSS

本ツールは、当社が開発中の開発支援AI「IXV(イクシブ)」において、「日本語で記述されたコーディング規約をAIにどのように理解させ、コードに適用するか」という検証テーマから生まれました。

判断を伴うルールは、完全な自動判定が困難な場合があります。そこで本ツールでは、曖昧なケースを「要レビュー」として明示的に報告し、人間による最終判断を前提とした設計としています。

その検証成果の一部を切り出し、OSSとして公開することで、AI活用に取り組む開発者の皆様に参考事例を提供したいと考えています。

技術構成

  • フロントエンド:TypeScript、React
  • バックエンド:Python、FastAPI
  • AI/LLM:AWS Bedrock(Claude Haiku)、Anthropic API、OpenAI APIに対応
  • 静的解析ツール:Checkstyle、PMD(Java)、Pylint、Ruff、Flake8(Python)
  • 変換ライブラリ:excel2md(Excel→Markdown変換)、add-line-numbers(行番号付与)

ライセンス・公開情報

  • プロジェクト名:coding-policy-ai-auditor
  • ライセンス:MIT License
  • 対応環境:Node.js 20.0以上、Python 3.10以上
  • 公開先:GitHub(🔗 coding-policy-ai-auditor)

今後について

当社では今後も、AI技術で社会課題解決をビジョンに掲げ、日々の業務や、研究・開発の中で生まれた小さくても実用性のあるツールを、OSSとして継続的に公開していく予定です。

本ツールが、コーディング規約の遵守に課題を感じている開発現場の一助となれば幸いです。

本件に関するお問い合わせ先

株式会社エルブズ

お問い合わせ先メールアドレス:info@elvez.co.jp

お気軽にお問合せください。
プライバシーについて / Privacy Overview

当ウェブサイトでは、お客様に最適なユーザー体験をご提供するため、クッキー技術を使用させていただいております。クッキー情報はお客様のブラウザに保存され、再度当サイトにお越しいただいた際の認識機能や、サイト内でお客様が最も関心をお寄せいただいているコンテンツの把握など、サービス品質向上のために活用させていただいております。

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

当社プライバシーポリシーはこちらからご確認ください。