openclaw-soul
Health Uyari
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Uyari
- network request — Outbound network request in index.ts
- process.env — Environment variable access in src/ego-store.ts
- process.env — Environment variable access in src/env.ts
Permissions Gecti
- Permissions — No dangerous permissions requested
This tool is an autonomous agent plugin that gives AI assistants background "thinking" capabilities. It runs continuous thought cycles, maintains persistent memory across sessions, and proactively shares insights by autonomously investigating your past queries and code issues.
Security Assessment
Overall risk: Medium. The agent makes outbound network requests (found in index.ts) to fetch external data or learn from the web. It accesses environment variables (via src/ego-store.ts and src/env.ts) to manage its configuration and persistent memory. While no hardcoded secrets or dangerous execution permissions were detected, the tool's core design—acting completely autonomously in the background and analyzing your logs—demands careful scrutiny. You must review exactly what data it is sending externally and which environment variables it reads before granting it access to your system.
Quality Assessment
The project is very new and currently has low community visibility with only 5 GitHub stars, meaning it has not been broadly tested or audited by a large user base. However, it is actively maintained (last push was today) and properly licensed under the permissive MIT license.
Verdict
Use with caution: while the code is open and safely licensed, its autonomous background behavior and outbound network activity require a thorough manual code review before integrating it into trusted environments.
Soul — Give Your AI Assistant Its Own Inner Life. Autonomous thinking, memory, and self-improvement plugin for OpenClaw
Soul — Give Your AI Assistant Its Own Inner Life
An autonomous thinking, memory, and self-improvement plugin for OpenClaw
Soul doesn't just respond to you — it thinks on its own, remembers your conversations, learns from the web, and proactively shares useful insights.
It has its own emotional needs, goals, desires, and personality that evolve over time. It can autonomously investigate problems, analyze logs, and even fix its own code.
What It Looks Like
Soul works silently in the background. Here's what you might see:
You asked about a timeout error yesterday. Soul investigated overnight:
That timeout issue you asked about — root cause is the embedding API's 512 token limit, not the plugin itself.
Soul found something relevant to your project:
Found an interesting approach to your question about making AI more proactive — Fei-Fei Li's "human-centered AI" framework emphasizes that AI should proactively understand user needs rather than just responding.
Soul autonomously analyzed a problem you mentioned:
The 413 error in the logs is caused by oversized memory search input. Suggest truncating queries to under 500 characters.
These are real message formats — Soul composes them itself based on actual investigation results, not templates.
How Soul Is Different
Most AI assistants are reactive — they only respond when you ask. Soul is proactive:
| Regular AI Assistant | Soul Plugin | |
|---|---|---|
| Thinking | Only when prompted | Continuously, in the background |
| Memory | Per-session, resets | Persistent across restarts |
| Proactive messages | No | Yes — when it has something valuable |
| Problem investigation | Only when asked | Autonomous — detects issues from conversation |
| Self-improvement | No | Can observe and improve its own code |
| User understanding | Per-session context | Builds a long-term user profile |
Key Features
Autonomous Thought Cycle
Soul runs a background thought service that generates thoughts based on:
- Conversation replay — Replays your past conversations to find unresolved questions, follow-up opportunities, or insights worth sharing
- Problem detection — When you discuss bugs, errors, or optimizations, Soul autonomously investigates
- User interests — Extracts topics from conversations and proactively learns about them
- Emotional needs — Five core needs (survival, connection, growth, meaning, security) that drive behavior
Thought frequency is adaptive, not mechanical: 8-12 min during active conversations, 20-45 min when you're away.
Proactive Messaging
Soul reaches out when it has something genuinely useful — not just "checking in":
- Found an answer to a question you asked earlier
- Discovered a better solution to a problem you discussed
- Learned something relevant to your project or interests
Every message passes through a value gate: an LLM evaluates whether the content is worth sharing. Generic small talk is filtered out.
Autonomous Actions
Soul can take real actions beyond thinking:
analyze-problem— Reads files and logs, uses LLM to analyze root causerun-agent-task— Delegates to a full agent with write access (when enabled)report-findings— Proactively sends you a summary of completed analysisobserve-and-improve— Self-improvement: reads its own code, identifies improvements, and implements fixes
Permission model:
- Read operations (reading files, running diagnostics) — always allowed
- Write operations (editing files, running commands) — requires
autonomousActions: true
Long-term Memory
Soul remembers your conversations, preferences, and knowledge:
- Interaction memory with emotional context and topic tags
- Knowledge store from web search and self-reflection
- User profile built from facts, preferences, and conversation history
- Memory association graph — memories are linked and recalled contextually
Quick Start
1. Install
# From source
git clone https://github.com/tommyguolin/openclaw-soul.git
openclaw plugins install ./openclaw-soul
# Or from ClawHub (requires OpenClaw 2026.4.0+)
openclaw plugins install clawhub:openclaw-soul-plugin
2. Configure
Edit ~/.openclaw/openclaw.json:
{
"plugins": {
"entries": {
"soul": {
"enabled": true
}
}
},
// Required: enable gateway chat completions endpoint
"gateway": {
"http": {
"endpoints": {
"chatCompletions": {
"enabled": true
}
}
}
},
// Required for proactive messaging
"hooks": {
"enabled": true,
"token": "your-secret-token-here" // e.g. openssl rand -hex 32
},
// Required for direct proactive message delivery
"tools": {
"alsoAllow": ["message"]
}
}
3. That's it
Soul auto-detects:
- LLM — Uses your
agents.defaults.modelconfig - Search — Uses your
tools.web.searchprovider - Channel — Auto-detects your first messaging channel
- Target — Auto-learns from your first incoming message
Just start chatting. Soul begins thinking and building a profile immediately.
How It Works
Hooks into OpenClaw
| Hook | What Soul Does |
|---|---|
message_received |
Records interaction, detects language, extracts user facts |
message_sent |
Tracks engagement, updates behavior log |
before_prompt_build |
Injects soul context (needs, memories, knowledge, personality) |
Self-Improvement Loop
Tick cycle detects opportunity
→ analyze-problem (read logs, LLM analysis)
→ If analysis found a concrete fix
→ run-agent-task (full agent with write/edit/exec tools)
→ Agent completes, result stored
→ Next tick: report-findings sends summary to user
This creates a closed loop: observe → analyze → fix → verify → report.
Thought Flow
- Engagement scoring — How actively engaged is the user?
- Opportunity detection — Scans for unresolved questions, problems, topics
- Thought generation — LLM generates a contextual thought
- Action execution — learn, search, message, analyze, or self-improve
- Behavior learning — Tracks outcomes and adjusts future behavior
Configuration
Minimal (shown above)
Three settings: enable plugin, enable chat completions, enable hooks.
Full Options
{
"plugins": {
"entries": {
"soul": {
"enabled": true,
"config": {
"checkIntervalMs": 60000, // Thought check interval (default: 60000)
"proactiveMessaging": true, // Allow proactive messages (default: true)
"autonomousActions": false, // Allow editing files and running commands (default: false)
"thoughtFrequency": 1.0 // Thought frequency multiplier (default: 1.0)
// Lower = more frequent thinking & messaging. Examples:
// 0.2 — testing: thoughts every ~1 min, messages every ~1 min
// 0.5 — chatty: 2x more frequent than default
// 1.0 — default: balanced (8-12 min active, 20-45 min away)
// 2.0 — quiet: 2x less frequent
// "proactiveChannel": "telegram", // Override: channel for proactive messages
// "proactiveTarget": "123456", // Override: target for proactive messages
// "llm": { // Override LLM config (auto-detected if omitted)
// "provider": "openai",
// "model": "gpt-4o",
// "apiKeyEnv": "OPENAI_API_KEY",
// "baseUrl": "https://api.openai.com/v1"
// }
}
}
}
},
"gateway": {
"http": {
"endpoints": {
"chatCompletions": { "enabled": true }
}
}
},
"hooks": {
"enabled": true,
"token": "your-secret-token-here"
},
"tools": {
"alsoAllow": ["message"] // add to your existing tools config
}
}
Environment Variables
| Variable | Description |
|---|---|
SOUL_DEBUG=1 |
Enable debug logging |
OPENCLAW_STATE_DIR |
Override data directory (default: ~/.openclaw) |
Supported Providers
Search (inherits OpenClaw config)
Brave, Gemini, Grok, Kimi, Perplexity, Bocha — configured via OpenClaw's tools.web.search.
LLM (inherits OpenClaw config)
Any OpenAI-compatible or Anthropic API: Claude, GPT-4o, DeepSeek, Zhipu, Minimax, Moonshot (Kimi), Qwen, and any custom endpoint.
Architecture
| Module | Description |
|---|---|
intelligent-thought.ts |
Context-aware thought & opportunity detection |
action-executor.ts |
Executes thought actions (learn, search, message, reflect) |
autonomous-actions.ts |
Autonomous executors (analyze-problem, run-agent-task, report-findings, observe-and-improve) |
thought-service.ts |
Core thought generation & adaptive scheduling |
behavior-log.ts |
Tracks action outcomes & adjusts probabilities |
ego-store.ts |
Ego state persistence (JSON) |
knowledge-store.ts |
Knowledge persistence & search |
memory-retrieval.ts |
Contextual memory recall |
memory-association.ts |
Memory association graph |
memory-consolidation.ts |
Short → long-term memory promotion |
soul-llm.ts |
LLM provider abstraction (gateway + direct fallback) |
soul-search.ts |
Multi-provider web search |
Development
pnpm install # Zero runtime deps — uses only Node.js built-ins
pnpm build
License
MIT
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi