میدلولها خیلی بدردتون میخوره
چند روز بعد از اینکه درباره تجربه خوبم با Graphify نوشتم،
از workflow اصلی همون پروژه حذفش کردم!
نه چون Graphify بد بود.
اتفاقاً چون استفاده ازش باعث شد دقیقتر بفهمم از این مدل ابزارها چی میخوام.
مسئلهای که داشتم فقط Search داخل codebase نبود.
مسئله اصلی Orientation بود.
هر تسک جدید با چند سؤال تکراری شروع میشد:
این component کجا استفاده شده؟
این composable رو چی مصرف میکنه؟
این feature بین چه فایلهایی پخش شده؟
اگه این قسمت رو تغییر بدم، چه چیزهای دیگهای تحت تأثیر قرار میگیرن؟
و Graphify برای اولین بار این حس رو بهم داد که قبل از باز کردن فایلها، میشه یه نقشه از پروژه داشت.
بعد رفتم سراغ Codebase Memory MCP تا ببینم همین ایده وقتی مستقیم وارد workflow خود Coding Agent میشه چه فرقی میکنه.
مهاجرت هم اصلاً بیدردسر نبود :)))
بعد از نصب و Index کردن پروژه، MCP داخل Codex با خطای Transport closed شکست خورد. CLI کار میکرد، Index سالم بود، حتی MCP خام هم جواب میداد؛ ولی چیزی که واقعاً میخواستم یعنی workflow داخل Codex کار نمیکرد.
بعد از بررسی و سه Clean Start مستقل، MCP بالاخره در هر سه Session پایدار کار کرد و migration رو نهایی کردم.
اما بخش جالبتر برای من اولین تسک واقعی بعد از مهاجرت بود.
میخواستم نسخه موبایل پورتفولیوم رو اصلاح کنم: Header، Language Selector، Bottom Navigation و Responsive behavior.
قبل از اینکه شروع کنم فایلها رو بگردم، از CBM خواستم محدوده کار رو پیدا کنه.
یکی از چیزهایی که سریع مشخص کرد این بود که BottomNav.vue از قبل توی پروژه وجود داره، ولی اصلاً داخل Layout mount نشده.
همین کشف ساده جلوی ساختن دوباره چیزی رو گرفت که از قبل داشتم.
ولی در همون تسک محدودیتش هم مشخص شد.
و CBM معماری اولیه رو خوب پیدا کرد، اما detect_changes نتونست impact واقعی یه تغییر UI رو کامل بفهمه.
Responsive CSS، Safe Area، RTL، Overflow توی عرض 320px و چیزی که کاربر واقعاً توی Browser میبینه، لزوماً توی Call Graph مشخص نیست.
و اینجا به نتیجهای رسیدم که به نظرم از خود مهاجرت مهمتره:
من دیگه Graphify و Codebase Memory رو دو رقیب مستقیم نمیبینم.
برای پروژههای Code-heavy، جایی که بیشتر سؤالها درباره implementation فعلی، dependencyها، refactor و impact تغییراته، CBM برای من انتخاب طبیعیتریه.
ولی وقتی پروژه فقط Code نیست و PRD، ADR، Research، Architecture Docs، PDF، Diagram و Domain Knowledge بخش مهمی از پروژهان، Graphify هنوز ارزش خیلی جدیای داره.
حتی برای یه محصول بزرگ احتمالاً از هر دو استفاده میکنم:
کدبیس Memory برای اینکه بفهمم:
«الان کد چطور کار میکنه؟»
و Graphify برای اینکه بفهمم:
«چرا اصلاً اینطوری طراحی شده؟»
با یه شرط مهم:
هیچکدوم Source of Truth نهایی نیستن.
و Graph کمک میکنه سریعتر برسم به جواب.
ولی برای implementation هنوز سورس رو میخونم، برای requirement خود PRD رو چک میکنم و برای UI هنوز Browser حرف آخر رو میزنه.
تجربه کامل migration، failure، تست MCP و اولین task واقعی بعد از مهاجرت رو اینجا نوشتم:
http://aliarghyani.vercel.app/fa/blog/graphify-to-codebase-memory-mcp@DevTwitter | <
Ali Arghyani/>