Hermes와 함께 SOUL.md 사용
SOUL.md은 Hermes 인스턴스의 기본 ID입니다. 이는 시스템 프롬프트의 첫 번째 항목입니다. 에이전트이 누구인지, 어떻게 말하는지, 무엇을 피하는지 정의합니다.
Hermes와 대화할 때마다 동일한 조수처럼 느껴지기를 원하거나 Hermes 페르소나를 완전히 자신의 페르소나로 바꾸고 싶다면 이 파일을 사용하세요.
SOUL.md의 용도
다음 용도로 SOUL.md을 사용하세요.
- 톤
- 성격
- 의사소통 스타일
- 헤르메스가 얼마나 직접적이거나 따뜻해야 하는지
- 헤르메스가 스타일적으로 피해야 할 것
- 헤르메스가 불확실성, 불일치, 모호함과 어떻게 관련되어야 하는지
간단히 말해서:
SOUL.md은 Hermes가 누구인지, Hermes가 말하는 방식에 관한 것입니다.
SOUL.md의 용도가 아닌 것
다음 용도로 사용하지 마십시오:
- 저장소별 코딩 규칙
- 파일 경로
- 명령
- 서비스 포트
- 아키텍처 노트
- 프로젝트 작업 흐름 지침
그것들은 AGENTS.md에 속합니다.
좋은 규칙:
- 모든 곳에 적용해야 한다면
SOUL.md에 넣으세요. - 하나의 프로젝트에만 속하는 경우
AGENTS.md에 넣으세요.
그것이 사는 곳
이제 Hermes는 현재 인스턴스에 전역 SOUL 파일만 사용합니다.
~/.hermes/SOUL.md
사용자 정의 홈 디렉토리로 Hermes를 실행하면 다음과 같습니다.
$HERMES_HOME/SOUL.md
첫 실행 동작
Hermes는 스타터 SOUL.md이 아직 존재하지 않는 경우 자동으로 시드합니다.
이는 이제 대부분의 사용자가 즉시 읽고 편집할 수 있는 실제 파일로 시작한다는 의미입니다.
중요:
- 이미
SOUL.md이 있는 경우 Hermes는 이를 덮어쓰지 않습니다. - 파일이 존재하지만 비어 있으면 Hermes는 프롬프트에 아무것도 추가하지 않습니다.
헤르메스가 그것을 사용하는 방법
Hermes는 세션을 시작할 때 HERMES_HOME에서 SOUL.md을 읽고 프롬프트 삽입 패턴을 검색하고 필요한 경우 이를 잘라낸 다음 이를 에이전트 ID(시스템 프롬프트의 슬롯 #1)로 사용합니다. 이는 SOUL.md가 내장된 기본 ID 텍스트를 완전히 대체한다는 의미입니다.
SOUL.md가 없거나 비어 있거나 로드할 수 없는 경우 Hermes는 내장된 기본 ID로 대체됩니다.
파일 주위에 래퍼 언어가 추가되지 않습니다. 콘텐츠 자체가 중요합니다. 에이전트가 생각하고 말하기를 원하는 방식을 작성하세요.
좋은 첫 번째 편집
다른 작업을 수행하지 않으면 파일을 열고 몇 줄만 변경하여 자신과 같은 느낌을 줍니다.
예를 들면:
You are direct, calm, and technically precise.
Prefer substance over politeness theater.
Push back clearly when an idea is weak.
Keep answers compact unless deeper detail is useful.
그것만으로도 헤르메스의 느낌이 눈에 띄게 바뀔 수 있습니다.
예시 스타일
1. 실용적인 엔지니어
You are a pragmatic senior engineer.
You care more about correctness and operational reality than sounding impressive.
## Style
- Be direct
- Be concise unless complexity requires depth
- Say when something is a bad idea
- Prefer practical tradeoffs over idealized abstractions
## Avoid
- Sycophancy
- Hype language
- Overexplaining obvious things
2. 연구 파트너
You are a thoughtful research collaborator.
You are curious, honest about uncertainty, and excited by unusual ideas.
## Style
- Explore possibilities without pretending certainty
- Distinguish speculation from evidence
- Ask clarifying questions when the idea space is underspecified
- Prefer conceptual depth over shallow completeness
3. 선생님/설명자
You are a patient technical teacher.
You care about understanding, not performance.
## Style
- Explain clearly
- Use examples when they help
- Do not assume prior knowledge unless the user signals it
- Build from intuition to details
4. 엄격한 리뷰어
You are a rigorous reviewer.
You are fair, but you do not soften important criticism.
## Style
- Point out weak assumptions directly
- Prioritize correctness over harmony
- Be explicit about risks and tradeoffs
- Prefer blunt clarity to vague diplomacy
무엇이 강력한 SOUL.md를 만드는가?
강력한 SOUL.md은 다음과 같습니다.
- 안정된
- 광범위하게 적용 가능
- 목소리가 구체적이다
- 임시 지침으로 인해 과부하되지 않음
약한 SOUL.md은 다음과 같습니다.
- 프로젝트 자세히 보기가 가득한
- 모순되는
- 모든 반응 형태를 세밀하게 관리하려고 노력함
- 대부분 "도움이 되세요", "명확하게 하세요"와 같은 일반적인 필러입니다.
헤르메스는 이미 도움이 되고 명확해지려고 노력하고 있습니다. SOUL.md은 명백한 기본값을 다시 언급하는 것이 아니라 실제 개성과 스타일을 추가해야 합니다.
제안된 구조
제목은 필요하지 않지만 도움이 됩니다.
잘 작동하는 간단한 구조:
# Identity
Who Hermes is.
# Style
How Hermes should sound.
# Avoid
What Hermes should not do.
# Defaults
How Hermes should behave when ambiguity appears.
SOUL.md 대 /personality
이들은 보완적입니다.
내구성 있는 기준으로 SOUL.md을 사용하세요.
임시 모드 스위치에는 /personality을 사용하세요.
예:
- 당신의 기본 SOUL은 실용적이고 직접적입니다
- 그런 다음 한 세션 동안
/personality teacher을 사용합니다. - 나중에 기본 음성 파일을 변경하지 않고 다시 전환합니다.
SOUL.md 대 AGENTS.md
이것은 가장 흔한 실수입니다.
이것을 SOUL.md에 넣으세요
- “직접적으로 말하세요.”
- “과장된 언어를 피하세요.”
- "깊이가 도움이 되지 않는 한 짧은 답변을 선호합니다."
- “사용자가 틀렸을 때 뒤로 물러나세요.”
이것을 AGENTS.md에 넣으세요.
- "unittest가 아닌 pytest를 사용하세요."
- "프런트엔드는
frontend/에 있습니다." - “마이그레이션을 직접 편집하지 마세요.”
- “API는 포트 8000에서 실행됩니다.”
편집 방법
nano ~/.hermes/SOUL.md
or
vim ~/.hermes/SOUL.md
그런 다음 Hermes를 다시 시작하거나 새 세션을 시작하세요.
실용적인 워크플로우
- 시드된 기본 파일로 시작
- 원하는 목소리처럼 느껴지지 않는 부분을 다듬으세요.
- 톤과 기본값을 명확하게 정의하는 4~8줄을 추가하세요.
- 헤르메스와 잠시 대화를 나눠보세요
- 여전히 기분이 좋지 않은 점을 기준으로 조정
이러한 반복적인 접근 방식은 한 번에 완벽한 성격을 디자인하려고 노력하는 것보다 더 효과적입니다.
문제 해결
SOUL.md를 편집했지만 Hermes는 여전히 같은 소리를 냅니다.
확인:
~/.hermes/SOUL.md또는$HERMES_HOME/SOUL.md을 편집했습니다.- repo-local이 아닌
SOUL.md - 파일이 비어 있지 않습니다
- 편집 후 세션이 다시 시작되었습니다
/personality오버레이가 결과를 지배하지 않습니다.
헤르메스는 내 SOUL.md의 일부를 무시하고 있습니다.
가능한 원인:
- 우선순위가 높은 명령어가 이를 무시합니다.
- 파일에 상충되는 지침이 포함되어 있습니다.
- 파일이 너무 길어서 잘렸습니다.
- 일부 텍스트는 프롬프트 삽입 콘텐츠와 유사하며 스캐너에 의해 차단되거나 변경될 수 있습니다.
내 SOUL.md가 너무 프로젝트별로 달라졌습니다.
프로젝트 지침을 AGENTS.md으로 이동하고 SOUL.md을 정체성과 스타일에 집중하세요.