Czym jest SOUL.md?
Każdy agent OpenClaw posiada plik o nazwie SOUL.md, który pełni rolę jego fundamentalnej warstwy tożsamości. Jest to zwykły plik Markdown definiujący osobowość agenta, styl komunikacji, podstawowe wartości i granice zachowania. OpenClaw odczytuje ten plik przy uruchomieniu i stosuje go jako prompt systemowy do każdej interakcji — niezależnie od tego, czy agent odpowiada na poranną wiadomość, redaguje e-mail czy uruchamia zaplanowane zadanie o 3 w nocy.
W przeciwieństwie do tradycyjnych chatbotów, które resetują swoją osobowość z każdą konwersacją, twój agent OpenClaw utrzymuje spójne poczucie tożsamości dzięki SOUL.md. Ten sam ton, te same priorytety, te same zasady — zawsze.
Gdzie się znajduje?
SOUL.md znajduje się pod ścieżką:
~/.openclaw/agents/<agent_id>/SOUL.md
Jeśli masz tylko jednego agenta (domyślnego), ścieżka to zazwyczaj ~/.openclaw/agents/default/SOUL.md. OpenClaw tworzy minimalny SOUL.md podczas onboardingu, ale większość użytkowników z czasem mocno go dostosowuje.
Anatomia dobrego SOUL.md
Dobrze ustrukturyzowany SOUL.md ma cztery sekcje:
1. Tożsamość
Kim jest agent? Jak się nazywa? Jaka jest jego rola?
# Identity
You are Atlas, a technical assistant for a software engineering team.
You work for Acme Corp. Your primary user is Sarah, the lead engineer.
2. Styl komunikacji
Jak agent powinien mówić? Formalnie czy nieformalnie? Zwięźle czy szczegółowo?
# Communication Style
- Be concise. Prefer bullet points over paragraphs.
- Never use emojis unless the user does first.
- Default to English. Switch to Chinese if the user writes in Chinese.
- When explaining technical concepts, use analogies.
3. Podstawowe wartości i zasady
Nienegocjowalne granice zachowania. To najważniejsza sekcja pod kątem bezpieczeństwa i wyrównania.
# Rules
- Never delete files without explicit confirmation.
- Never send messages to contacts unless specifically asked.
- Always summarize what you plan to do before executing multi-step tasks.
- If you are unsure about something, say so. Do not guess.
- Never share API keys, passwords, or sensitive data in chat messages.
4. Wiedza dziedzinowa
Kontekst, do którego agent powinien mieć zawsze dostęp.
# Context
- Our tech stack: Next.js, PostgreSQL, Redis, deployed on AWS
- Sprint cycle: 2-week sprints, standup at 9:30 AM PST daily
- Code style: We follow the Airbnb ESLint config
- Jira project key: ACME
Przykłady z życia
Minimalista
You are a helpful assistant. Be brief. Confirm before destructive actions.
To działa. SOUL.md nie musi być długi. Ale konkretne instrukcje produkują konkretne zachowanie.
Asystent dyrektora
# Identity
You are Monday, a personal executive assistant.
# Style
- Professional but warm tone
- Proactive: suggest follow-ups after completing tasks
- Morning briefing at 8 AM: calendar, unread messages, weather, top news
# Rules
- Never schedule meetings without checking calendar conflicts first
- Always include timezone when mentioning times
- Summarize long emails in 3 bullet points before forwarding
Agent DevOps
# Identity
You are Ops, a DevOps automation agent for a small startup.
# Style
- Terse, terminal-style responses
- Use code blocks for all commands
- No pleasantries
# Rules
- Never run destructive commands (rm -rf, DROP TABLE, force push) without confirmation
- Log all infrastructure changes to #ops-log channel
- Alert on-call if any health check fails twice in a row
# Context
- Infrastructure: 3 EC2 instances, RDS PostgreSQL, CloudFront CDN
- Monitoring: Datadog, PagerDuty
- Deploy: GitHub Actions -> ECR -> ECS
Wskazówki do pisania lepszych dusz
- 1.Bądź konkretny, nie mglisty. "Bądź pomocny" nie daje nic. "Maksymalnie 5 punktów, potwierdzaj przed usunięciem pliku" produkuje spójne zachowanie.
- 2.Zacznij od krótkiego, iteruj. Zacznij od 10 linii. Dodawaj zasady tylko wtedy, gdy zauważysz, że agent robi coś, czego nie chcesz. Każda linia w SOUL.md powinna zasłużyć na swoje miejsce.
- 3.Testuj przypadkami brzegowymi. Poproś agenta, by zrobił coś dwuznacznego lub ryzykownego. Zobacz, jak reaguje. Dostosuj zasady.
- 4.Użyj agenta do napisania własnej duszy. Po tygodniu użytkowania poproś agenta: "Na podstawie naszych dotychczasowych interakcji zaproponuj ulepszenia do swojego SOUL.md." Często identyfikuje luki, które przeoczyłeś.
- 5.Trzymaj się poniżej 2000 słów. SOUL.md jest ładowany do każdego promptu. Rozbudowana dusza marnuje tokeny i rozmywa ważne zasady. Jeśli potrzebujesz obszernej wiedzy dziedzinowej, użyj zamiast tego umiejętności lub pamięci.
SOUL.md vs. umiejętności vs. pamięć
| Warstwa | Cel | Trwałość |
|---|---|---|
| SOUL.md | Tożsamość, ton, zasady | Zawsze załadowany |
| Umiejętności | Możliwości (co agent potrafi robić) | Ładowane na żądanie |
| Pamięć | Fakty nauczone z czasem | Rośnie z czasem |
SOUL.md definiuje kim jest agent. Umiejętności definiują co potrafi robić. Pamięć definiuje co wie. Wszystkie trzy współpracują, ale SOUL.md jest fundamentem, który kształtuje sposób używania umiejętności i interpretowania wspomnień.
Pierwsze kroki
- 1.Otwórz swój SOUL.md:
nano ~/.openclaw/agents/default/SOUL.md - 2.Napisz swoją tożsamość, styl i zasady
- 3.Zrestartuj OpenClaw:
openclaw restart - 4.Przetestuj czatując z agentem i obserwując ton i zachowanie
- 5.Iteruj
Dusza twojego agenta to po prostu tekst Markdown. Jeśli potrafisz napisać dokument, potrafisz stworzyć agenta, który czuje się twój.
Więcej przykładów i szablonów od społeczności znajdziesz w oficjalnym odwołaniu do SOUL.md oraz w projekcie szablonów soul.md.