ডকুমেন্টেশন

ইউনিফাইড কনটেক্সট গ্রাফ

ইউনিফাইড কনটেক্সট গ্রাফ

lean-ctx একটি ইউনিফাইড গ্রাফ তৈরি করে যা কোড, কমিট, টেস্ট, জ্ঞান এবং ইস্যু সংযুক্ত করে - টাস্ক-সচেতন কনটেক্সট প্রদান এবং গভীর প্রভাব বিশ্লেষণ সক্ষম করে।

নোড ধরন

গ্রাফে ৮টি নোড ধরন রয়েছে যা আপনার প্রকল্পের বিভিন্ন দিক উপস্থাপন করে:

📄 File

ইন্ডেক্সার দ্বারা ট্র্যাক করা সোর্স ফাইল

🔣 Symbol

ফাংশন, ক্লাস, টাইপ এবং ভেরিয়েবল

📦 Module

লজিক্যাল গ্রুপিং (প্যাকেজ, ক্রেট, মডিউল)

📝 Commit

মেসেজ ও মেটাডেটা সহ Git কমিট

🧪 Test

টেস্ট ফাংশন এবং টেস্ট ফাইল

🏗️ CIRun

CI/CD পাইপলাইন রান এবং ফলাফল

🧠 Knowledge

ctx_session থেকে প্রকল্প জ্ঞান

🎫 Issue

কোডের সাথে সংযুক্ত ইস্যু এবং টিকিট

এজ ধরন

এজ নোডের মধ্যে সম্পর্ক উপস্থাপন করে। lean-ctx ১১টি এজ ধরন ট্র্যাক করে:

এজ ধরনঅর্থউদাহরণ
Importsফাইল অন্য ফাইল ইম্পোর্ট করেA.ts → B.ts
Callsফাংশন অন্য ফাংশন কল করেfn_a → fn_b
Definesমডিউল একটি সিম্বল সংজ্ঞায়িত করেmod → fn
TestedByফাইল টেস্ট ফাইল দ্বারা পরীক্ষিতutils.rs → test_utils.rs
ChangedInকমিটে ফাইল পরিবর্তিতfile → commit
MentionedInজ্ঞান তথ্যে ফাইল উল্লেখিতfile → knowledge
Affectsইস্যু ফাইলকে প্রভাবিত করেissue → file
Breaksকমিট টেস্ট ভাঙেcommit → test

গ্রাফ সমৃদ্ধকরণ

সমৃদ্ধকরণ Git, টেস্ট এবং জ্ঞানের ডেটা দিয়ে কোড গ্রাফ প্রসারিত করে।

Git ইতিহাস ইন্ডেক্সার

সাম্প্রতিক Git কমিট পার্স করে এবং Commit নোড তৈরি করে।

টেস্ট ইন্ডেক্সার

নামকরণ নিয়ম দ্বারা টেস্ট ফাইল সনাক্ত করে।

জ্ঞান সেতু

প্রকল্প জ্ঞান তথ্যকে ফাইলের সাথে সংযুক্ত করে।

MCP কমান্ড

ctx_graph enrich              # Enrich graph with git, tests, knowledge
ctx_graph build               # Index code structure
ctx_graph status              # Show node/edge counts

Community Detection (Louvain)

The Louvain algorithm clusters files into communities based on their dependency relationships. Files that frequently import each other or share transitive dependencies are grouped together, enabling smarter context preloading and relevance scoring for task-driven queries.

PageRank

Computes file importance scores based on the dependency graph structure. Files imported by many others (structural hubs) receive higher PageRank, which is used by Spectral Relevance and Boltzmann Allocation to prioritize high-impact files during context assembly.

কনটেক্সট কোয়েরি

গ্রাফ-ভিত্তিক কনটেক্সট কোয়েরি ব্যবহার করে সবচেয়ে প্রাসঙ্গিক ফাইল খুঁজুন।

ব্যবহার

ctx_graph context "fix auth bug"       # Find relevant files for task
ctx_graph related src/auth.rs          # Connected files
ctx_graph impact src/auth.rs           # Blast radius analysis
ctx_graph symbol src/auth.rs::verify   # Symbol definition/usages

কিভাবে কাজ করে

  • টাস্ক বিবরণ থেকে কীওয়ার্ড বের করে
  • ফাইলের নাম এবং কমিট মেসেজের সাথে মিলায়
  • গ্রাফ এজ দিয়ে ফলাফল প্রসারিত করে
  • সম্পর্ক কনটেক্সট সহ প্রাসঙ্গিক ফাইলের তালিকা ফেরত দেয়

ইন্টারেক্টিভ HTML এক্সপোর্ট

আপনার ডিপেন্ডেন্সি গ্রাফকে একটি একক, স্বয়ংসম্পূর্ণ HTML ফাইল হিসেবে এক্সপোর্ট করুন। তৈরি হওয়া ফাইলটি সম্পূর্ণ অফলাইনে কাজ করে - যেকোনো ব্রাউজারে খুলে আপনার কোডবেস ভিজ্যুয়ালি এক্সপ্লোর করুন। কোনো সার্ভার নেই, কোনো ডিপেন্ডেন্সি নেই, শুধু একটি HTML ফাইল।

ব্যবহার

# Export full graph (all nodes)
lean-ctx graph export-html --out graph.html

# Limit to 100 most-connected nodes
lean-ctx graph export-html --out graph.html --max-nodes 100

# Custom project root
lean-ctx graph export-html --out graph.html --root /path/to/project

ইন্টারেক্টিভ ফিচার

🔍 Search

যেকোনো ফাইল পাথ সাবস্ট্রিং টাইপ করুন এবং মিলে যাওয়া নোডগুলো তাৎক্ষণিকভাবে হাইলাইট হবে

🖱️ Pan & Zoom

ক্লিক ও ড্র্যাগ করে প্যান করুন, স্ক্রোল করে জুম করুন। মানচিত্রের মতো কাজ করে।

📋 Node Details

যেকোনো নোডে ক্লিক করে সাইডবারে এর ইম্পোর্ট এবং ডিপেন্ডেন্ট দেখুন

🔗 Reverse Deps

একটি নোডে রাইট-ক্লিক করে এর উপর নির্ভরশীল সব ফাইল হাইলাইট করুন (BFS ট্রাভার্সাল)

🖼️ PNG Export

এক ক্লিকে বর্তমান ক্যানভাস ভিউ PNG ইমেজ হিসেবে ডাউনলোড করুন

📡 Offline

কোনো বাহ্যিক ডিপেন্ডেন্সি নেই। সম্পূর্ণ অ্যাপ একটি HTML ফাইলে এমবেডেড।

টিপস

  • বড় প্রজেক্টের ভিজ্যুয়ালাইজেশন পাঠযোগ্য রাখতে --max-nodes ব্যবহার করুন (50–200 ভালো রেঞ্জ)
  • এক্সপোর্টের আগে graph build চালান যাতে ইন্ডেক্স আপডেট থাকে
  • HTML ফাইলটি টিমমেটদের সাথে নিরাপদে শেয়ার করা যায় - এতে সোর্স কোড নেই, শুধু ফাইল পাথ এবং সম্পর্ক আছে
  • রাইট-ক্লিক হাইলাইটিং সম্পূর্ণ রিভার্স-ডিপেন্ডেন্সি চেইন দেখায়, যা পরিবর্তনের প্রভাব মূল্যায়ন সহজ করে

ড্যাশবোর্ড API

এন্ডপয়েন্টবিবরণ
/api/graph/statsনোড ও এজ সংখ্যা, ডেটাবেস পাথ
/api/graph/enrichসম্পূর্ণ গ্রাফ সমৃদ্ধকরণ ট্রিগার করুন