آموزش تصویری

تبدیل کدبیس و اسناد به گراف دانش قابل پرس‌وجو برای دستیارهای هوش مصنوعی با Graphify

در دنیای توسعه نرم‌افزار، فهم ساختار پروژه‌های بزرگ و ارتباط میان فایل‌های مختلف، یکی از بزرگ‌ترین چالش‌ها برای توسعه‌دهندگان و دستیارهای هوش مصنوعی (AI Coding Assistants) است. ابزار open-source و قدرتمند Graphify (ارائه شده توسط Graphify Labs) حل این مشکل را هدف قرار داده است. در این مقاله آموزشی، به بررسی کامل ابزار Graphify، نحوه نصب، پیکربندی و ادغام آن با دستیارهای هوش مصنوعی مانند Claude Code، Cursor، Codex و Gemini CLI می‌پردازیم.

چرا Graphify مهم است و چه مشکلی را حل می‌کند؟

وقتی یک پروژه برنامه‌نویسی بزرگ می‌شود، جستجو در کدها از طریق روش‌های سنتی مانند grep یا جستجوی متنی کاملاً ناکارآمد خواهد بود. علاوه بر این، زمانی که دستیارهای هوش مصنوعی را در محیط توسعه خود (IDE) قرار می‌دهید، فراخوانی مستقیم و کامل صدها فایل جهت درک معماری پروژه، هزینه توکن (Token Cost) سرسام‌آوری ایجاد می‌کند و اغلب به دلیل محدودیت پنجره کانتکست (Context Window) منجر به فراموشی یا درک نادرست مدلسازی برنامه می‌شود.

معمولاً ابزارهای قدیمی برای حل این چالش از پایگاه‌های داده برداری (Vector Databases) و تکنیک RAG استفاده می‌کنند که این روش‌ها در درک دقیق ارتباطات ساختاری و وابسته کدهای برنامه‌نویسی (مانند فراخوانی توابع، ارث‌بری، ساختار پایگاه داده و…) دقیق عمل نمی‌کنند.

Graphify این مسئله را به بهینه‌ترین شکل ممکن حل کرده است:

  1. بدون پایگاه داده برداری (No Vector Store): یک گراف دانش واقعی (Knowledge Graph) می‌سازد که می‌توانید ارتباطات را در آن پیمایش (Traverse) کنید.
  2. کاهش ۷۱.۵ برابری مصرف توکن: به جای ارسال پرونده‌های متنی حجیم به مدل هوش مصنوعی، گراف دانش فشرده و ساختاریافته در اختیار آن قرار می‌گیرد.
  3. تجزیه محلی و رایگان (AST-based): کدهای پروژه شما بدون ارسال به سرور جانبی و با بهره‌گیری از درخت ساختار انتزاعی (Tree-sitter AST) آنالیز می‌شوند.

معرفی پروژه Graphify

Graphify یک ابزار اپن‌سورس پایتونی است که تمام محتوای پوشه پروژه شما از کدهای برنامه‌نویسی گرفته تا اسناد MD، اسکیماهای SQL، فایل‌های کانفیگ، فایل‌های PDF، تصاویر و حتی دیاگرام‌ها را آنالیز کرده و به یک گراف دانش ساختاریافته و قابل پرس‌وجو تبدیل می‌کند.

پروژه Graphify به عنوان یک مهارت (Skill) یا افزونه بومی برای ابزارهایی نظیر Claude Code، Cursor، Codex، Gemini CLI، GitHub Copilot و بیش از ۱۵ ابزار هوش مصنوعی دیگر عمل می‌کند. هنگامی که دستور /graphify را در دستیار هوش مصنوعی خود اجرا می‌کنید، کل پروژه نگاشت شده و بدون نیاز به جستجوی دستی دستیار هوش مصنوعی شما متوجه ساختار دیسک و خطوط ارتباطی کد می‌شود.

یکی از نکات جذاب این ابزار، شفافیت کامل یال‌های ارتباطی (Edges) است. تمام ارتباطات در گراف با دو تگ معین می‌شوند:

  • EXTRACTED: ارتباطاتی که مستقیماً و صریحاً در سورس‌کد یا فایل وجود دارند.
  • INFERRED: ارتباطاتی که بر اساس تحلیل و استنتاج Graphify کشف شده‌اند.

ویژگی‌های کلیدی Graphify

  • پشتیبانی چندرسانه‌ای (Multimodal): قابلیت تحلیل سورس‌کد، اسناد متنی، اسکیماهای SQL، فایل‌های PDF و تصاویر و دیاگرام‌ها.
  • پشتیبانی از بیش از ۴۰ زبان برنامه‌نویسی: آنالیز دقیق کدها با استفاده از پارسر سریع و قدرتمند Tree-sitter (شامل Python، TypeScript، Go، Rust، Java، C++‎ و…).
  • تحلیل محلی و کاملاً امن (Local & Private): فرآیند پارس کردن کدها به‌صورت ۱۰۰٪ آفلاین و محلی انجام شده و هیچ خط کدی از سیستم شما خارج نمی‌شود.
  • ارائه فایل‌های خروجی کاربردی:
    • graph.html: یک فایل گرافیکی تعاملی جهت مشاهده و فیلتر کردن نودهای گراف در مرورگر.
    • GRAPH_REPORT.md: گزارش متنی خلاصه از معماری کلیدی و مفاهیم پروژه.
    • graph.json: فایل ساختاریافته گراف دانش جهت پرس‌وجوی سیستماتیک.
  • ادغام یکپارچه با Agentهای هوش مصنوعی: قابلیت عملکرد به عنوان MCP Server و نصب هوک‌های متصل به Claude Code، Cursor و Codex.
  • مکانیسم Cache قدرتمند: بروزرسانی لحظه‌ای و تدریجی (Incremental Updates) با الگوریتم SHA-256 جهت جلوگیری از آنالیز مجدد فایل‌های دست‌نخورده.

پیش‌نیازها

پیش از اقدام به نصب و راه‌اندازی، اطمینان حاصل کنید که موارد زیر روی سیستم شما نصب شده باشد:

  1. پایتون (Python): نسخه ۳.۱۰ یا بالاتر (ترجیحاً Python 3.12).
  2. مدیریت‌کننده پکیج: ابزار uv (توصیه شده به دلیل سرعت فوق‌العاده بالا) یا pipx / pip.
  3. دستیار هوش مصنوعی (اختیاری جهت اتصال بومی): یکی از ابزارهای Claude Code، Cursor، Codex یا Gemini CLI.

نحوه نصب و راه‌اندازی (گام‌به‌گام)

نکته: در مخزن رسمی PyPI، این ابزار با نام graphifyy (با دو حرف y در انتها) ثبت شده است؛ اما دستور CLI آن همان graphify است.

گام اول: نصب پکیج Graphify

روی لینوکس و مک‌او‌اس (macOS / Ubuntu):

با استفاده از ابزار سریع uv:

uv tool install graphifyy

یا با استفاده از pipx:

pipx install graphifyy

روی ویندوز (Windows):

ابتدا uv را نصب کرده و سپس پکیج را قرار دهید:

winget install astral-sh.uv
uv tool install graphifyy

نکته ویندوز: اگر از محیط PowerShell استفاده می‌کنید، به جای /graphify . باید از دستور graphify . استفاده کنید (زیرا اسلش اول در پاورشل به عنوان مسیر جداکننده شناخته می‌شود).

گام دوم: ثبت مهارت (Skill) در دستیار هوش مصنوعی

پس از نصب ابزار CLI، کافی است دستور زیر را در ترمینال پروژه خود اجرا کنید تا مهارت Graphify به‌طور خودکار در AI Agent شما ثبت شود:

graphify install

این دستور به طور خودکار محیط تنظیمات هوش مصنوعی شما (مانند .claude/settings.json یا .cursor/rules/) را پیکربندی کرده و دستور /graphify را فعال می‌سازد.

نحوه استفاده و مثال‌های عملی

۱. ساخت اولین گراف دانش پروژه

کافی است در ترمینالِ ریشه پروژه خود دستور زیر را اجرا کنید:

graphify .

با اجرای این دستور، پوشه graphify-out/ در پروژه شما ساخته می‌شود که شامل موارد زیر است:

  • graphify-out/graph.html: فایل قابل مشاهده در مرورگر.
  • graphify-out/GRAPH_REPORT.md: خلاصه‌ای جامع از معماری پروژه.
  • graphify-out/graph.json: داده‌های کامل گراف.

۲. پرس‌وجو مستقیم در کدبیس (Querying)

به جای سرچ‌های متنی دستی، می‌توانید مستقیم از ابزار سوال بپرسید:

graphify query "احراز هویت کاربران در کدام فایل‌ها انجام می‌شود و به چه سرویس‌هایی متصل است؟"

این دستور یک زیرگراف (Scoped Subgraph) مرتبط با سوال شما استخراج کرده و مسیرهای اتصال نودها را تحلیل می‌کند.

۳. ردگیری ارتباط بین دو بخش پروژه (Path Tracing)

جهت مشاهده ارتباط میان دو ماژول یا تابع خاص از دستور path استفاده کنید:

graphify path AuthController DatabaseService

۴. استفاده در Claude Code یا Cursor

در محیط چت دستیار هوش مصنوعی خود کافی است بنویسید:

/graphify .

هوش مصنوعی به جای خواندن صدها فایل به صورت خام، فایل GRAPH_REPORT.md و گراف مربوطه را مطالعه کرده و پاسخ دقیق و ساختاریافته به سوالات معماری شما می‌دهد.

نکات مهم و بهترین روش‌ها (Best Practices)

  1. استفاده از فایل .gitignore و Ignore Files:قبل از ساخت گراف، حتماً فایل‌های سنگین غیرضروری مانند node_modules، venv یا فایل‌های Log را استثنا کنید تا زمان پارس شدن و سایز گراف بهینه بماند.
  2. فعال‌سازی حالت Strict Mode (برای Claude Code):اگر می‌خواهید دستیار هوش مصنوعی حتماً و بدون استثنا قبل از خواندن هر فایل خام، گراف دانش را بررسی کند، از این حالت استفاده کنید:
    Bashgraphify install --project --strict
  3. مشاهده گراف در مرورگر:فایل graphify-out/graph.html را در مرورگر خود باز کنید. نودهایی که رنگ یکسانی دارند، نشان‌دهنده یک زیرسیستم (Community) هستند که توسط الگوریتم Leiden کشف شده‌اند.

نتیجه‌گیری

ابزار Graphify یک گام بزرگ در راستای تعامل هوشمندتر، سریع‌تر و ارزان‌تر با کدبیس‌های پیچیده است. این ابزار با حذف نیاز به پایگاه‌های داده برداری سنگین و اتکا بر پارس کردن دقیق AST به صورت محلی، امکان درک عمیق ساختار پروژه را هم برای برنامه‌نویسان و هم برای مدل‌های هوش مصنوعی فراهم می‌سازد. اگر با دستیارهای کدنویسی مانند Cursor یا Claude Code کار می‌کنید، افزودن Graphify به جریان کاری (Workflow) شما باعث افزایش چشمگیر سرعت و کاهش هزینه‌های توکن خواهد شد.

بیشتر بخوانید:

ترجمه سریع زیرنویس فیلم و سریال با هوش مصنوعی
ساخت چت‌بات هوش مصنوعی تلگرام؛ رایگان، دائمی و بدون کدنویسی!
راهنمای جامع و کاربردی دستورات Hermes Agent

وحید خاکپور

متولد 76 . مبتدی در همه چیز. علاقه مند به یادگیری و به اشتراک گذاشتن تجربه های مفید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *