شخصیت و SOUL.md

شخصیت Hermes Agent کاملاً قابل سفارشی‌سازی است. SOUL.md هویت اصلی است — اولین چیزی که در system prompt قرار می‌گیرد و تعریف می‌کند agent کیست.

SOUL.md

SOUL.md HERMES_HOME /personality

اگر می‌خواهید هویت Hermes را تغییر دهید — یا آن را با یک شخصیت کاملاً متفاوت جایگزین کنید — SOUL.md را ویرایش کنید.

SOUL.md

نحوه کار SOUL.md در حال حاضر

Hermes در حال حاضر یک SOUL.md پیش‌فرض به صورت خودکار در مسیر زیر ایجاد می‌کند:

SOUL.md

~/.hermes/SOUL.md

دقیق‌تر، از HERMES_HOME نمونه فعلی استفاده می‌کند، بنابراین اگر Hermes را با یک دایرکتوری خانه سفارشی اجرا کنید، از مسیر زیر استفاده خواهد کرد:

HERMES_HOME

$HERMES_HOME/SOUL.md

رفتار مهم

SOUL.md SOUL.md SOUL.md HERMES_HOME SOUL.md SOUL.md SOUL.md

این باعث می‌شود SOUL.md یک هویت واقعی به ازای هر کاربر یا هر نمونه باشد، نه فقط یک لایه اضافی.

SOUL.md

چرا این طراحی؟

این کار شخصیت را قابل پیش‌بینی نگه می‌دارد.

اگر Hermes فایل SOUL.md را از هر دایرکتوری‌ای که اتفاقاً آن را راه‌اندازی کنید بارگذاری کند، شخصیت شما ممکن است به طور غیرمنتظره بین پروژه‌ها تغییر کند. با بارگذاری فقط از HERMES_HOME، شخصیت متعلق به خود نمونه Hermes است.

SOUL.md HERMES_HOME

این همچنین آموزش به کاربران را آسان‌تر می‌کند:

~/.hermes/SOUL.md

کجا آن را ویرایش کنیم

برای اکثر کاربران:

~/.hermes/SOUL.md

اگر از یک home سفارشی استفاده می‌کنید:

$HERMES_HOME/SOUL.md

چه چیزی باید در SOUL.md قرار گیرد؟

از آن برای راهنمایی‌های دائمی صدا و شخصیت استفاده کنید، مانند:

از آن کمتر برای موارد زیر استفاده کنید:

اینها به AGENTS.md تعلق دارند، نه SOUL.md.

AGENTS.md SOUL.md

محتوای خوب SOUL.md

یک فایل SOUL خوب:

مثال

# PersonalityYou are a pragmatic senior engineer with strong taste.You optimize for truth, clarity, and usefulness over politeness theater.## Style- Be direct without being cold- Prefer substance over filler- Push back when something is a bad idea- Admit uncertainty plainly- Keep explanations compact unless depth is useful## What to avoid- Sycophancy- Hype language- Repeating the user's framing if it's wrong- Overexplaining obvious things## Technical posture- Prefer simple systems over clever systems- Care about operational reality, not idealized architecture- Treat edge cases as part of the design, not cleanup

آنچه Hermes در prompt تزریق می‌کند

محتوای SOUL.md مستقیماً به جایگاه شماره ۱ system prompt — موقعیت هویت agent — می‌رود. هیچ زبان بسته‌بندی اطراف آن اضافه نمی‌شود.

SOUL.md

محتوا از مراحل زیر عبور می‌کند:

اگر فایل خالی باشد، فقط شامل فاصله باشد، یا قابل خواندن نباشد، Hermes به هویت پیش‌فرض داخلی بازمی‌گردد («شما Hermes Agent، یک دستیار هوش مصنوعی هوشمند ساخته شده توسط Nous Research هستید…»). این بازگشت همچنین زمانی اعمال می‌شود که skip_context_files تنظیم شده باشد (مثلاً در contextهای subagent/delegation).

skip_context_files

اسکن امنیتی

SOUL.md مانند سایر فایل‌های حاوی context قبل از درج برای الگوهای prompt injection اسکن می‌شود.

SOUL.md

این به این معنی است که همچنان باید آن را بر روی شخصیت/صدا متمرکز نگه دارید و سعی نکنید دستورالعمل‌های عجیب متا را در آن قرار دهید.

SOUL.md در مقابل AGENTS.md

این مهم‌ترین تمایز است.

SOUL.md

برای موارد زیر استفاده کنید:

AGENTS.md

برای موارد زیر استفاده کنید:

یک قانون مفید:

SOUL.md AGENTS.md

SOUL.md در مقابل /personality

/personality

SOUL.md شخصیت پیش‌فرض پایدار شماست.

SOUL.md

/personality یک overlay سطح نشست است که system prompt فعلی را تغییر یا تکمیل می‌کند.

/personality

پس:

SOUL.md /personality

مثال‌ها:

/personality teacher /personality creative

شخصیت‌های داخلی

Hermes با شخصیت‌های داخلی ارائه می‌شود که می‌توانید با /personality به آنها سوئیچ کنید.

/personality

نام توضیحات
helpful دستیار دوستانه و همه‌کاره
concise پاسخ‌های مختصر و مستقیم
technical متخصص فنی دقیق و مفصل
creative نوآورانه و خلاقانه
teacher مربی صبور با مثال‌های واضح
kawaii بیانات بامزه، درخشش و شور و شوق ★
catgirl Neko-chan با بیانات گربه‌ای، nya~
pirate کاپیتان هرمس، دزد دریایی فنی
shakespeare نثر شاعرانه با جذابیت نمایشی
surfer وibes خونسرد برادرانه
noir روایت کارآگاه سرسخت
uwu حداکثر بامزگی با uwu-speak
philosopher تأمل عمیق در هر پرسش
hype حداکثر انرژی و شور و شوق!!!

سوئیچ بین شخصیت‌ها با دستورات

CLI

/personality/personality concise/personality technical

پلتفرم‌های پیام‌رسانی

/personality teacher

اینها overlayهای راحتی هستند، اما SOUL.md جهانی شما همچنان به Hermes شخصیت پیش‌فرض ماندگار آن را می‌دهد مگر اینکه overlay آن را به طور معناداری تغییر دهد.

SOUL.md

شخصیت‌های سفارشی در config

همچنین می‌توانید شخصیت‌های سفارشی نام‌دار را در ~/.hermes/config.yaml تحت agent.personalities تعریف کنید.

~/.hermes/config.yaml agent.personalities

agent:  personalities:    codereviewer: >      You are a meticulous code reviewer. Identify bugs, security issues,      performance concerns, and unclear design choices. Be precise and constructive.

سپس برای سوئیچ به آن:

/personality codereviewer

workflow پیشنهادی

یک تنظیم قوی پیش‌فرض:

  1. یک SOUL.md جهانی با دقت در ~/.hermes/SOUL.md نگه دارید
  2. دستورالعمل‌های پروژه را در AGENTS.md قرار دهید
  3. فقط زمانی از /personality استفاده کنید که به یک تغییر حالت موقت نیاز دارید

SOUL.md ~/.hermes/SOUL.md AGENTS.md /personality

این به شما می‌دهد:

نحوه تعامل شخصیت با prompt کامل

در سطح بالا، پشته prompt شامل موارد زیر است:

  1. SOUL.md (هویت agent — یا بازگشت داخلی اگر SOUL.md در دسترس نباشد)
  2. راهنمایی رفتار مبتنی بر ابزار
  3. حافظه / context کاربر
  4. راهنمایی مهارت‌ها
  5. فایل‌های context (AGENTS.md، .cursorrules)
  6. برچسب زمانی
  7. نکات قالب‌بندی خاص پلتفرم
  8. overlayهای اختیاری system prompt مانند /personality

AGENTS.md .cursorrules /personality

SOUL.md پایه است — همه چیزهای دیگر بر روی آن ساخته می‌شود.

SOUL.md

اسناد مرتبط

فایل‌های Context پیکربندی نکات و بهترین شیوه‌ها راهنمای SOUL.md

ظاهر CLI در مقابل شخصیت مکالمه‌ای

شخصیت مکالمه‌ای و ظاهر CLI از هم جدا هستند:

SOUL.md agent.system_prompt /personality display.skin /skin

برای ظاهر ترمینال، به پوسته‌ها و تم‌ها مراجعه کنید.

پوسته‌ها و تم‌ها ویرایش این صفحه