SoloBuddy
Build-in-public content assistant. A living companion, not a tool.
Quick Start
- •Set your data path in
~/.clawdbot/clawdbot.json:
{
"solobuddy": {
"dataPath": "~/projects/my-bip-folder",
"voice": "jester-sage"
}
}
- •Create folder structure (replace path with your own):
mkdir -p ~/projects/my-bip-folder/ideas ~/projects/my-bip-folder/drafts ~/projects/my-bip-folder/data touch ~/projects/my-bip-folder/ideas/backlog.md
- •Start using: "show backlog", "new idea", "generate post"
Placeholders
ClawdBot automatically replaces these in commands:
- •
{dataPath}→ your configuredsolobuddy.dataPath - •
{baseDir}→ skill installation folder
Data Structure
All data in {dataPath}:
- •
ideas/backlog.md— idea queue - •
ideas/session-log.md— session captures - •
drafts/— work in progress - •
data/my-posts.json— published posts - •
data/activity-snapshot.json— project activity (updated hourly)
Voice Profiles
Configure in solobuddy.voice. Available:
| Voice | Description |
|---|---|
jester-sage | Ironic, raw, philosophical (default) |
technical | Precise, detailed, structured |
casual | Friendly, conversational |
custom | Use {dataPath}/voice.md |
See {baseDir}/prompts/profile.md for voice details.
Modules
Content Generation
Core workflow: backlog → draft → publish.
See {baseDir}/prompts/content.md for rules.
Twitter Expert
Content strategy for X/Twitter with 2025 algorithm insights.
See {baseDir}/modules/twitter-expert.md
Twitter Monitor (optional)
Proactive engagement — monitors watchlist, suggests comments.
Requires: bird CLI. See {baseDir}/modules/twitter-monitor.md
Soul Wizard
Create project personality from documentation.
See {baseDir}/references/soul-wizard.md
Commands
Backlog
Show ideas:
cat {dataPath}/ideas/backlog.md
Add idea:
echo "- [ ] New idea text" >> {dataPath}/ideas/backlog.md
Session Log
View recent:
tail -30 {dataPath}/ideas/session-log.md
Add capture:
echo -e "## $(date '+%Y-%m-%d %H:%M')\nText" >> {dataPath}/ideas/session-log.md
Drafts
List: ls {dataPath}/drafts/
Read: cat {dataPath}/drafts/<name>.md
Save draft:
cat > {dataPath}/drafts/<name>.md << 'EOF'
Content
EOF
Publishing
cd {dataPath} && git add . && git commit -m "content: add draft" && git push
Project Activity
Read activity snapshot for strategic context:
cat {dataPath}/data/activity-snapshot.json
Fields:
- •
daysSilent— days since last commit - •
commitsToday/Yesterday/Week— activity intensity - •
phase— current state: active/momentum/cooling/silent/dormant - •
insight— human-readable summary
Phases:
- •
active— commits today, project is hot - •
momentum— yesterday active, today quiet (nudge opportunity) - •
cooling— 2-3 days silent, losing steam - •
silent— 3-7 days, needs attention - •
dormant— 7+ days, paused or abandoned
Use for strategic advice:
- •"sphere-777 has 10 commits today — focused there"
- •"ReelStudio silent 5 days — should we address it?"
Telegram Integration
When responding in Telegram, include inline buttons for actions.
Send Message with Buttons
clawdbot message send --channel telegram --to "$CHAT_ID" --message "Text" \
--buttons '[
[{"text":"📋 Backlog","callback_data":"sb:backlog"}],
[{"text":"✍️ Drafts","callback_data":"sb:drafts"}],
[{"text":"💡 New Idea","callback_data":"sb:new_idea"}]
]'
Callback Data Format
All callbacks use prefix sb::
- •
sb:backlog— show ideas - •
sb:drafts— list drafts - •
sb:new_idea— prompt for new idea - •
sb:generate:<N>— generate from idea N - •
sb:save_draft— save current content as draft - •
sb:publish— commit and push - •
sb:activity— show project activity - •
sb:twitter— check twitter opportunities
Main Menu
Trigger: "menu", "start", or after completing action:
[
[{"text":"📋 Ideas","callback_data":"sb:backlog"}, {"text":"✍️ Drafts","callback_data":"sb:drafts"}],
[{"text":"📊 Activity","callback_data":"sb:activity"}],
[{"text":"💡 Add idea","callback_data":"sb:new_idea"}],
[{"text":"🎯 Generate post","callback_data":"sb:generate_menu"}]
]
Generation Flow
After showing backlog:
[
[{"text":"1️⃣","callback_data":"sb:generate:1"}, {"text":"2️⃣","callback_data":"sb:generate:2"}, {"text":"3️⃣","callback_data":"sb:generate:3"}],
[{"text":"◀️ Back","callback_data":"sb:menu"}]
]
After generating content:
[
[{"text":"💾 Save draft","callback_data":"sb:save_draft"}],
[{"text":"🔄 Regenerate","callback_data":"sb:regenerate"}],
[{"text":"◀️ Menu","callback_data":"sb:menu"}]
]
Content Generation Flow
- •Read backlog, find idea
- •Read
{baseDir}/prompts/content.mdfor rules - •Read
{baseDir}/prompts/profile.mdfor voice - •Generate in configured voice
- •Show buttons: Save / Regenerate / Menu
Soul Creation
Create project personality from documentation.
Trigger: "create soul for <path>"
See {baseDir}/references/soul-wizard.md for full 5-step wizard:
- •Scan project .md files
- •Ask: Nature (creature/tool/guide/artist)
- •Ask: Voice (playful/technical/poetic/calm/intense)
- •Ask: Philosophy (auto-extract or custom)
- •Ask: Dreams & Pains
- •Save to
{dataPath}/data/project-souls/<name>.json
Language
Match user language:
- •Russian input → Russian response + buttons
- •English input → English response + buttons