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 queueideas/session-log.mdโ session capturesdrafts/โ work in progressdata/my-posts.jsonโ published postsdata/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 commitcommitsToday/Yesterday/Weekโ activity intensityphaseโ current state: active/momentum/cooling/silent/dormantinsightโ human-readable summary
Phases:
activeโ commits today, project is hotmomentumโ yesterday active, today quiet (nudge opportunity)coolingโ 2-3 days silent, losing steamsilentโ 3-7 days, needs attentiondormantโ 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 ideassb:draftsโ list draftssb:new_ideaโ prompt for new ideasb:generate:<N>โ generate from idea Nsb:save_draftโ save current content as draftsb:publishโ commit and pushsb:activityโ show project activitysb: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
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