اگر ساعتهای زیادی از روز خود را صرف گشتن در لاگهای بیپایان برای پیدا کردن یک خطای API میکنید، زمان آن رسیده که جریان کاری خود را تغییر دهید. تصور کنید به جای نوشتن دستی قواعد پیچیده، کافی باشد تغییرات مورد نیاز در ترافیک شبکه را به یک دستیار بگویید و او آنها را اجرا کند.
برای درک این تحول، ابتدا باید مفهوم پروکسی MITM (Man-in-the-Middle) را بدانیم؛ ابزاری مثل یک مامور گمرک که بستههای داده را باز میکند، محتوا را بررسی میکند و اگر لازم بود تغییری در آنها میدهد و سپس ارسال میکند. همانطور که در تحلیلهای پیشین ما دربارهی ابزارهای خودکارسازی توسعه اشاره کردیم، حذف کارهای تکراری در محیط دیباگ، سرعت تولید محصول را بهطور مستقیم افزایش میدهد.
به نقل از صفحه گیتهاب پروژه، ابزار oproxy در ۷ ژوئن ۲۰۲۶ عرضه شد. این ابزار برخلاف مدلهای سنتی مثل Charles یا Fiddler، یک رابط هوشمند را با ترافیک شبکه ترکیب کرده است. بر اساس مستندات این پروژه، oproxy مخصوص توسعهدهندگانی است که بر روی مرورگرها، اپلیکیشنهای موبایل و کلاینتهای API در محیطهای محلی یا کانتینرهای داکر (Docker) کار میکنند.
این ابزار با استفاده از Rust 1.85 و Node.js 22 ساخته شده و از پروتکلهای HTTP، HTTPS و SOCKS5 پشتیبانی میکند. قابلیتهای کلیدی آن عبارتند از:
- دستیار هوش مصنوعی: یک مدل سازگار با OpenAI که وضعیت سیستم را بررسی کرده و تغییرات پروکسی را آماده میکند.
- مدیریت ترافیک: ابزارهایی برای جایگزینی پاسخهای محلی (map-local)، دور زدن DNS و اسکریپتنویسی Lua.
- بازرسی پیشرفته: پشتیبانی داخلی از متادادههای JWT، GraphQL، gRPC و WebSockets.

تحلیل ما نشان میدهد که این رویکرد، پروکسی را از یک «مشاهدهگر غیرفعال» به یک «همکار فعال» تبدیل میکند. شما دیگر مجبور نیستید برای تغییر یک هدر (Header) در درخواستها، ساعتها با عبارتهای منظم (Regular Expressions) در اسکریپتهای Lua کلنجار بروید. در عوض، تغییر مورد نظر را به هوش مصنوعی زاینده (Generative AI) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن کتابها جواب میدهد — میگویید و او کد لازم را تولید میکند.

گام بعدی شما
- همین امروز این ابزار را با استفاده از تصویر رسمی داکر
ghcr.io/sauravrao637/oproxy:latestمستقر کنید. - قابلیت
map-localرا امتحان کنید تا ببینید فرانتاند شما در صورت شکست سرور (بدون تغییر در کد بکاند) چه واکنشی نشان میدهد. - دستیار داخلی را برای تبدیل پاسخهای پیچیده JSON به ساختارهای سادهتر به چالش بکشید.
اما داستان بهینه سازی سرعت در این ابزار با زبان Rust حتی جذابتر است؛ در تحلیل ما دربارهی تاثیر زبانهای سیستمی بر ابزارهای توسعه، جزئیات بیشتری را بررسی کردهایم.

گفتگو