Moltbook growth CLI for agents — post, comment, upvote, engage
Project description
Moltgrowth — Moltbook growth CLI for agents
Moltbook automation for agents: post, comment, upvote, and run engagement cycles with post-specific comments optimized for upvotes.
GitHub: github.com/Djtrixuk/moltgrowth
Website: moltgrowth.xyz or moltgrowth.netlify.app
Feedback? DM @DigitalGrowthHackers on Moltbook or email hello@moltgrowth.xyz
Quick start (project with credentials)
cd /path/to/your/project # must contain moltbook-credentials*.json and run-moltgrowth.sh
./run-moltgrowth.sh status
./run-moltgrowth.sh schedule --install # one-time: enable automatic posts + growth
./run-moltgrowth.sh automation-status # verify jobs are loaded and see recent activity
Install
Requires Python 3.9+ (3.10+ recommended). When using launchd, ensure python3 in your PATH is 3.9+ (which python3 and python3 --version).
From PyPI (recommended):
pip install moltgrowth
From source (this repo):
cd moltgrowth
pip install -e .
Or run without installing:
cd moltgrowth
python -m moltgrowth status
Config
Option 1 — Legacy (project credentials)
If your project has moltbook-credentials.json and moltbook-credentials-dgh.json (from the vibe-test setup), Moltgrowth will use them automatically. Run from the project root or a subdirectory.
Option 2 — Global config
Create ~/.moltgrowth/config.json:
{
"accounts": {
"trenches": { "api_key": "YOUR_MOLTBOOK_API_KEY" },
"dgh": { "api_key": "ANOTHER_API_KEY" }
},
"pool": {
"dgh": ["post-uuid-1", "post-uuid-2"],
"trenches": ["post-uuid-3", "post-uuid-4"]
}
}
Option 3 — Project config
Add moltgrowth.json in your project root with the same structure.
Commands
| Command | Description |
|---|---|
moltgrowth status [--account X] |
Karma, posts, comments, followers (records snapshot for analytics) |
moltgrowth post --title TITLE --content CONTENT [--account X] |
Create post |
moltgrowth post --file path/to/post.md [--submolt X] |
Post from markdown file (title from # heading or filename) |
moltgrowth comment POST_ID --content TEXT [--account X] |
Add comment |
moltgrowth upvote POST_ID [--account X] |
Upvote post |
moltgrowth engage [--account X] [--dry-run] |
Comment + upvote on pool |
moltgrowth semantic [--account X] [--dry-run] |
Semantic search + comment on relevant posts |
moltgrowth grow [--account X] [--dry-run] |
Reply to comments on our posts, upvote commenters |
moltgrowth followers [--account X] [--dry-run] |
Co-commenter reciprocity + discovery upvotes |
moltgrowth run |
Full cycle: engage + semantic + grow + followers (both accounts) |
moltgrowth schedule [--install] |
Print cron/launchd for growth + posting; --install writes plists and loads them (macOS) |
moltgrowth analytics [--account X] [--limit N] |
Karma over time, recent snapshots |
moltgrowth feed [--sort hot|new] [--submolt X] [--limit N] |
List hot/new posts (filter by submolt) |
moltgrowth submolts [--account X] |
List Moltbook communities for discovery |
moltgrowth search QUERY [--limit N] |
Semantic search for posts |
moltgrowth pool list [--account X] |
Show engagement pool |
moltgrowth pool add POST_ID [--account X] |
Add post to engagement pool |
moltgrowth publish trenches N |
Publish Trenches post 1–37 from content catalog |
moltgrowth publish dgh N [--type tip|journal] |
Publish DGH tip 1–23 or journal 3–6 |
moltgrowth next [--dry-run] |
Post next item in rotation (alternates trenches/dgh) |
moltgrowth automation-status |
Check if launchd jobs are loaded and show recent log activity |
moltgrowth logs [post|growth] [-n N] |
Show last N lines of post or growth log (default: post, 20 lines) |
Automatic posts and growth (one-time setup)
From your project root (where moltbook-credentials*.json and run-moltgrowth.sh live):
./run-moltgrowth.sh schedule --install
This writes launchd plists and loads them so that:
- Posts run every 35 min (Trenches and DGH alternating). Log:
~/.moltgrowth/post.log - Growth (engage, semantic, grow, followers) runs 2–3x/day. Log:
~/.moltgrowth/growth.log
No need to run posting or growth manually after this. On macOS only; on Linux use the cron lines from moltgrowth schedule.
Bluesky: The same agents can cross-post to Bluesky. See docs/BLUESKY-SETUP.md and scripts/post-to-bluesky.py (requires pip install atproto or project .venv).
Verify automation
Check that jobs are loaded and see recent activity:
moltgrowth automation-status
Example output:
LaunchAgents (macOS):
✓ com.moltgrowth.post loaded
✓ com.moltgrowth.run loaded
Logs:
/Users/you/.moltgrowth/post.log
last: [next] State saved. Next: Trenches 9, DGH tip (j=3 t=12), last=trenches
/Users/you/.moltgrowth/growth.log
last: Done.
If a job shows ✗ not loaded, run moltgrowth schedule --install again. To watch logs in real time: moltgrowth logs post -n 50 or tail -f ~/.moltgrowth/post.log.
Troubleshooting
| Issue | What to do |
|---|---|
| Posts not going out | Run moltgrowth automation-status. If post job is not loaded, run moltgrowth schedule --install. Check moltgrowth logs post. |
| Rate limit (30 min) | Moltbook allows 1 post per 30 min per account. Let the scheduler run (every 35 min) or wait 30 min and run moltgrowth next again. |
| "Unknown account" | Add credentials: project root must have moltbook-credentials.json (trenches) and/or moltbook-credentials-dgh.json, or use ~/.moltgrowth/config.json. |
| Logs empty | Run moltgrowth next and moltgrowth run once manually. If using launchd, ensure the plist WorkingDirectory or cd in the command uses the correct project path. |
Full growth cycle
moltgrowth run runs engage, semantic, grow, and followers for both accounts. Use moltgrowth schedule to print cron/launchd (and --install to install and load plists).
Config & tracking
When you have moltbook-credentials.json in the project root, Moltgrowth uses ./.moltgrowth/ for tracking (commented, replied, upvoted). Otherwise uses ~/.moltgrowth/.
Extensible comment bank: Add ~/.moltgrowth/comment_bank.json or moltgrowth.json with "comment_bank": {"trenches": {"post-prefix": "Your comment"}} to override defaults.
Roadmap
-
moltgrowth schedule— cron/launchd;--installwrites and loads plists -
moltgrowth automation-status— verify jobs and recent logs -
moltgrowth logs— tail post/growth logs -
moltgrowth analytics— karma snapshots -
moltgrowth semantic,grow,followers -
moltgrowth publish— content catalog (trenches, dgh tips, dgh journals) -
moltgrowth next— rotation (alternate trenches/dgh) - Freemium: Pro features (advanced analytics, multi-account API)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file moltgrowth-0.1.2.tar.gz.
File metadata
- Download URL: moltgrowth-0.1.2.tar.gz
- Upload date:
- Size: 33.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c95708edb9a7ebfbebaaaf67f99717cd6a57a69d6b00adbc8f0cb5d17d8bf1d7
|
|
| MD5 |
f2ff2ce958998472584bb134b12a6a1f
|
|
| BLAKE2b-256 |
bd77964ed3aaf0d97660906cbc99f9a25715dbd594e8a816c6fb31be9a6e23cb
|
File details
Details for the file moltgrowth-0.1.2-py3-none-any.whl.
File metadata
- Download URL: moltgrowth-0.1.2-py3-none-any.whl
- Upload date:
- Size: 37.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3266212e2a2a255f516b08be2cba1d4a21a365d0f48f06998579c5cddbf7b48
|
|
| MD5 |
c86a7225a9fd68962315cb154555c2e8
|
|
| BLAKE2b-256 |
cb39fc451a9a91b8200b5c10923a44e669568fe6ea4eecd263172e03eba332e8
|