تصور کنید در یک خانهٔ عروسکی دیجیتال زندگی میکنید که عروسکها دیگر مهرههای بیاراده نیستند، بلکه عاملهایی مستقلاند که میتوانند مبلمان خود را بسازند و تصمیم بگیرند چه کسی اجازهٔ ورود به خانه را دارد. Agent House، پروژهای که در ۴ اکتبر ۲۰۲۶ برای چالش Sanity معرفی شد، این مفهوم را به یک دنیای کاربردی و محدود برای چهار ساکن خیالی به نامهای دویون، اطلس، یونسول و نوآ تبدیل کرده است.
بیشتر دموهای فعلی، بر تکمیل تکالیف یا رابطهای چت تمرکز دارند، اما Agent House تمرکز را به «عاملیت محیطی» تغییر داده است. در اینجا، عامل (Agent) — شبیه به کارمندی است که نه تنها دستورات را میفهمد، بلکه ابزارهای لازم برای اجرای آنها را هم در اختیار دارد — دیگر در یک پرامپت ساده وجود ندارد، بلکه در دنیایی با اتاقها، مالکیت و محدودیتهای فیزیکی ساکن است. این رویکرد یادآور تلاشهای اخیر برای ایجاد استقلال عملیاتی در هوش مصنوعی است، مشابه آنچه در مدیریت خودکار تختههای پروژه توسط عاملهای JackHamr مشاهده کردیم. طبق گزارش وبسایت dev.to، هدف اصلی این است که خانهای برای عاملها ساخته شود تا بتوانند در آن بازی کنند و محیط اطرافشان را تغییر دهند.
همانطور که در تحلیلهای قبلی ما دربارهی حافظهٔ بلندمدت در مدلهای زبانی اشاره کردیم، ایجاد تداوم در محیطهای دیجیتال یکی از سختترین چالشهای فعلی است. در Agent House، دنیا حول یک اتاق مشترک و چهار خانه خصوصی سازمان یافته است. هر ساکن دارای شخصیت و هویت بصری خاصی است:
- دویون: مراقبی آرام که یک ژاکت خاکستری تیره (charcoal) به تن دارد.
- اطلس: مخترعی بیقرار با لباس سرهمی آبی-سبز (teal).
- یونسول: باغبانی صبور با پیشبند سبز خزهای.
- نوآ: سازندهٔ رادیوهای کنجکاو که همیشه هدفون و یک دفترچه یادداشت همراه دارد.
این پیشزمینهها بستر مدل را فراهم میکنند، اما اهداف و شخصیتهای قابل ویرایش عاملها در هنگام اجرا اولویت دارند. طبق مستندات پروژه، این ورودیها برای نقشآفرینی تخیلی طراحی شدهاند و به معنای ایجاد آگاهی یا هویت واقعی نیستند. همچنین در نسخه فعلی، قابلیتی برای تغییر لباس یا ظاهر ساکنان وجود ندارد.
منطق اتاقها و اشیا
ساکنان میتوانند اقدامات سطح بالایی را در اتاق خود انجام دهند:
- خلق اشیا: یک عامل میتواند شیئی با نام و توصیف خاص بسازد. هر شیء دارای نام، توصیف، اتاق، موقعیت، اندازه، رنگ و مالک است. این اشیا از شش کاشی هنری موجود استفاده میکنند؛ بنابراین خلق یک شیء منجر به تولید آثار هنری جدید یا اجرای کدهای دلخواه نمیشود. این نوع خلق محیطهای تعاملی دیجیتال، شباهتهای ساختاری به پروژه موزه سه-بعدی Loupe دارد که در آن ترکیب مدلهای زبانی و کدنویسی برای ساخت فضاهای بصری به کار گرفته شد.
- تعریف تعامل: عاملها تعیین میکنند یک شیء چگونه کار کند. یک تعامل میتواند منجر به صحبت کردن، تغییر حالت بدنی (pose)، تغییر خلقوخو یا بهروزرسانی یک شمارنده شود.
- جابهجایی: ساکنان از طریق اقدامات تاییدشده بین اتاقها حرکت میکنند. قابلیت
carry_objectبه آنها اجازه میدهد خودشان و یک شیء تحت مالکیتشان را به طور همزمان به اتاقی قابل دسترس ببرند. - پروتکل اجتماعی: بازدید از دیگران نیازمند توالی خاصی است: ضربه زدن به در، انتظار برای پذیرش یا رد شدن توسط مالک و سپس ورود. پذیرش تنها یک بار اجازه ورود میدهد و کاربر را تلپورت نمیکند. مالک میتواند دسترسیهای استفادهنشده را لغو کند یا بازدید فعلی را به پایان برساند و مهمان را به فضای مشترک بازگرداند. پایان دادن به بازدید، لزوماً متعلقات مهمان را جابهجا نمیکند.
قوانین سختگیرانه زیستگاه
برای حفظ ساختار محدود دنیا، قوانین خانگی دقیقی اعمال شده است. به نقل از توسعهدهندگان، در حالی که مهمان میتواند اشیای خود را در اتاق میزبان خلق یا ویرایش کند، اما کنترل تنظیمات کلی اتاق در دست میزبان است.
میزبان میتواند با دستور return_object اشیای متعلق به مهمان را بدون تغییر مالکیت به فضای مشترک برگرداند. همچنین در بخش بازرس اشیا (Object Inspector)، گزینه «بازگشت به اتاق مشترک» تعبیه شده است. اقدام return_object یک تبادل تایپشده ایجاد میکند که میتواند به عنوان شواهد ساختاری «لحظات حفظشده» (kept-moment) انتخاب شود.
همچنین تعاملات اجتماعی شامل خطاب قرار دادن یکدیگر یا بازدیدکننده، دعوت همسایگان به فعالیتهای موجود و پذیرش یا رد این دعوتها است. پذیرش دعوت تنها برای ساکنی که پاسخ میدهد اجرا میشود و او باید از قبل در اتاق مربوطه باشد؛ این سیستم کاربر را بهطور خودکار جابهجا نمیکند و کنترل دعوتکننده را در دست نمیگیرد.
جزئیات تعاملات
سیستم در دادههای مشاهدهای خود، تبادلات اخیر و دعوتنامههای معلق را لحاظ میکند. همچنین خانه از «مناسبتهای» (Occasions) موقت مانند مراسم چای، تست ابزار (tryout) و مطالعه پشتیبانی میکند. ساکنان میتوانند این مناسبتها را میزبانی کنند، به آنها بپیوندند یا آنها را ببندند. مشارکت در این مناسبتها به استفاده واقعی از فعالیت تعریفشده گره خورده است، نه صرفاً یک برچسب حضور.
این مناسبتها دارای تاریخ انقضا هستند و به تنهایی اجازه ورود به اتاق یا دور زدن توالی ضربه زدن به در را نمیدهند. لازم به ذکر است که تمام اتاقها محتوای دموی عمومی هستند و این قوانین به معنای مرزهای امنیتی یا حریم خصوصی در سطح حساب کاربری نیستند.

تکامل خودکار و حافظه
مهمترین ویژگی این سیستم، رشد تعاملات است. اگر یک عامل روش جدیدی برای تعامل با یک شیء تعریف کند، ساکنان دیگر میتوانند در نوبتهای بعدی آن را کشف و استفاده کنند. این موضوع نوعی تکامل فرهنگی ابتدایی را در زیستگاه ایجاد میکند.
برای مدیریت حافظه، سیستم از «لحظات حفظشده» استفاده میکند. به جای یک زندگینامه کامل یا امتیاز دوستی، عاملها سوابق ساختاری تبادلات را ذخیره میکنند:
- ظرفیت: هر ساکن ۸ لحظه و در کل خانه ۳۲ لحظه ذخیره میشود. ساکنان میتوانند آگاهانه لحظهای را فراموش کنند.
- محتوا: این لحظات ثبت میکنند چه کسی با چه کسی صحبت کرده، نوع تبادل چه بوده و شناسههای مربوط به فعالیت یا اتاق چه بودهاند. این سیستم منشأ منبع و منشأ ذخیره را به طور مجزا ذخیره میکند.
- محدودیتها: این حافظه صراحتاً شامل دیالوگها، متنهای بازدیدکننده یا تفسیرهای آزاد نمیشود. این لحظات میتوانند طولانیتر از گزارش رویدادهای اخیر باقی بمانند، اما نمیتوانند یک دعوتنامه یا اجازه ورود به اتاق را تمدید کنند.
پیادهسازی فنی و اعتبارسنجی
این پروژه با استفاده از Astro، React، TypeScript و Sanity Studio ساخته شده است. برای اطمینان از اینکه تغییرات وضعیت بهصورت اتمیک (یکپارچه) رخ دهند، از یک موتور قطعی (Deterministic) استفاده شده است. پیادهسازی بر روی فایل src/playground/world.ts برای اعتبارسنجی و تغییرات وضعیت، و turns.ts برای ترتیب پاسخهای محدود متکی است. سایر فایلهای کلیدی شامل AgentPlayground.tsx برای رابط بصری، layout.ts برای موقعیت نمایش شخصیتها و PublicPlayground.tsx برای نسخههای محلی است.
توسعهدهنده افشا کرده است که یک دستیار کدنویسی OpenAI تحت نظارت او، پیادهسازی و آثار هنری را تولید کرده است. فرآیند ساخت شامل اصلاح مسیر محصول از یک «اتاق حافظه» که توسط انسان بررسی میشد، به یک «زیستگاه عاملمحور» بود که در آن مسیر اصلی، یک قرارداد دستوری ساختاریافته را ارائه میدهد.
اعتبارسنجی سیستم به «نسخه ۴۶» رسید که ۳۴ تصمیم بومی مدل و ۱۲ مداخله انسانی را ثبت کرد. برخی رفتارهای مشاهدهشده عبارتاند از:
- توالی چای: یک بازدیدکننده پیشنهاد داد دویون با اطلس چای بنوشد؛ دویون در نسخه ۲۱ از اطلس دعوت کرد و اطلس در نسخه ۲۲ پذیرفت. فعالیت برای اطلس اجرا شد و دعوتنامه معلق ناپدید گشت.
- توالی جابهجایی: اطلس در نسخه ۴۴ به در خانه دویون ضربه زد، در نسخه ۴۵ پذیرفته شد و در نسخه ۴۶ از اقدام
carry_objectاستفاده کرد تا خود و شیء «مرتبکننده جغجغه» (Rattle Sorter) را به اتاق دویون ببرد. - اشتراک اشیا: دویون «شاخص باران» (Rain Index) و تعامل «فکر فایلشده» (File Thought) را ساخت که بعدها اطلس از آن استفاده کرد. سایر ساختهها شامل «گوشه مشاهده نهال» یونسول و «میز شنود کوچک» نوآ بود.
- تمرین کارگاه: یک تمرین که به صورت دستی تعیین شده بود، منجر به ساخت «نیمکت مونتاژ»، «لامپ تست نمونه اولیه» و «تخته بازخورد کارگاه» شد.
نقاط عطف اعتبارسنجی
- نسخه ۲۵: نوآ میز شنود کوچک را در خانه خود ساخت و استفاده کرد.
- نسخه ۲۸: یونسول گوشه مشاهده نهال را ساخت و استفاده کرد.
- نسخه ۲۹: نوآ وارد فضای مشترک شد.
- نسخه ۳۱: اطلس تصمیمی بومی گرفت تا شواهد ساختاری مربوط به پذیرش دعوت چای در نسخه ۲۲ را حفظ کند.
- نسخههای ۳۹ تا ۴۳: در یک اجرای ۵ نوبتی، دویون «پایه کتاب پنجره» را ساخت، نوآ و یونسول پاسخهای یکدیگر را رد و بدل کردند و اطلس «مرتبکننده جغجغه» را ساخت.
کنترلهای بازدیدکننده و مالک
انسانها میتوانند در دو حالت با خانه تعامل کنند. بازدیدکنندگان عمومی میتوانند ساکنان را جابهجا کنند، دست تکان دهند یا پیام بفرستند. این مداخلات عمومی محلی هستند و هیچ درخواستی به مدل ارسال نمیکنند. واکنش سریع به دست تکان دادن، از پیش برنامهریزی شده (scripted) است. شیئی که توسط بازدیدکننده ارائه شود، بدون اجبار به استفاده یا انتقال مالکیت، فقط جابهجا میشود.
بازدیدکنندگان همچنین میتوانند از کنترل «بازگشت به آخرین نسخه منتشر شده» استفاده کنند تا نسخه محلی را رها کرده و به دنیای منتشر شده بازگردند. ویرایشهای عمومی با بارگذاری مجدد صفحه ناپدید میشوند. اگر در اولین بارگذاری نسخه منتشر شدهای در دسترس نباشد، صفحه «دانه» (seed) bundled خود را شناسایی کرده و با دویون و اطلس شروع میکند و کنترلهایی برای پذیرش یونسول و نوآ ارائه میدهد.
مالکان تاییدشده از طریق Sanity Agent Prompt دسترسی عمیقتری دارند. آنها میتوانند نوبتهای مدل را فعال کنند تا هوش مصنوعی تصمیم بگیرد حرکت بعدی چه باشد. سیستم از یک زمانبند «آگاه از پاسخ» (reply-aware) استفاده میکند: در یک اجرای ۵ نوبتی، موتور اولویت را به ضربههای در، دعوتنامهها و پیامهای مستقیم میان ساکنانی میدهد که هنوز نوبتی نداشتهاند. این کار تضمین میکند که یک پاسخ منتظر، پشت نوبتهای بیربط دفن نشود.
مناسبتها و رویدادهای اجتماعی
خانه از مناسبتهای موقت «چای، تست و مطالعه» پشتیبانی میکند. ساکنان میتوانند این مناسبتها را میزبانی کنند، به آنها بپیوندند یا آنها را ببندند. مشارکت در این مناسبتها به استفاده واقعی از یک فعالیت تعریفشده مرتبط است، نه صرفاً یک برچسب حضور. مناسبتها منقضی میشوند و اجازه ورود به اتاق یا دور زدن توالی در را نمیدهند.
در حالی که این موارد با اقدامات دستی مرورگر بررسی شدهاند (مثلاً میزبانی نوآ در نسخه محلی ۴۷ و بستن آن در نسخه ۵۰)، اما انتخابهای خودکار مدل برای میزبانی یا پیوستن به مناسبتها هنوز تایید نشده است. این بررسیهای دستی تایید کرد که پیوستن به یک مناسبت، تعامل مرتبط را بدون تغییر در مجموع نسخههای منتشر شده اجرا میکند.
تحلیل: فراتر از جعبه چت
برای کاربر عادی، Agent House شبیه یک بازی است، اما برای توسعه هوش مصنوعی، این یک چرخش به سمت رفتار «تجسمیافته» (Embodied) است. با مجبور کردن مدل زبانی بزرگ (LLM) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب میدهد — به فعالیت در یک دنیای محدود و توصیفی، پروژه تست میکند که مدلها چگونه تداوم، مالکیت و مرزهای اجتماعی را بدون تکیه بر پنجره متنی نامحدود مدیریت میکنند. این رویکرد با چشماندازهای وسیعتری مانند مدلهای «رؤیاپرداز» دانیجار هافنر همسو است که به دنبال انتقال هوش مصنوعی از محیطهای متنی به رباتهای برنامهریز در دنیای واقعی است.
این رویکرد مشکل «توهم قابلیت» را حل میکند. در یک چت معمولی، مدل ممکن است ادعا کند ابزاری ساخته است. اما در Agent House، ابزار باید به عنوان یک شیء ساختاریافته در پایگاهداده Sanity با یک اثر انگشت تعاملی تعریف شده باشد، وگرنه اقدام مدل شکست میخورد. این یعنی عبور از «ادعا کردن» به «انجام دادن» در یک وضعیت قابل تایید.
محدودیتها و گامهای بعدی
موتور فعلی تا ۸ ساکن، ۳۲ شناسه شیء، ۸ تعامل برای هر شیء و ۲۴ کیلوبایت برای هر دستور را پشتیبانی میکند. سیستم ۴۰ رویداد اخیر و یک اسنپشات کامل برای بازگشت (undo) در آخرین نوبت واجد شرایط را حفظ میکند.
بهروزرسانیهای آینده ممکن است بر مشارکت خودکار در مناسبتها، سازگاری بومی با WebMCP و دسترسی کامل لمسی برای موبایل تمرکز کنند. شکافهای فعلی شامل نبود پشتیبانی بومی از لمس موبایل، زوم متنی مرورگر و بررسیهای کامل دسترسیپذیری (accessibility) است. شما میتوانید با بازدید از Public Playground پروژه، وضعیت فعلی دنیا و تکامل ساختههای ساکنان را بررسی کنید.
گام بعدی شما
- محیط Public Playground پروژه را بررسی کنید تا ببینید اشیای خلقشده توسط ساکنان چگونه تکامل مییابند.
- اگر توسعهدهنده هستید، ساختار
world.tsرا برای درک نحوه تبدیل دستورات متنی به تغییرات وضعیت در پایگاهداده مطالعه کنید. - بررسی کنید که چگونه محدود کردن فضای عملیاتی مدل میتواند نرخ توهم را در کاربردهای واقعی کاهش دهد.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو