Autonomous AI marketing agent for open-source projects
Project description
Truenex Promoter
Autonomous AI marketing agent for open-source projects. Monitors your repo, discovers promotion opportunities, generates content drafts, and asks for your approval before taking action.
Human-in-the-loop by design. The agent proposes, you decide. No automated posts, no spam, no surprises.
Product Strategy: Open Core + Freemium UI
| Edition | Interface | What's included | Price |
|---|---|---|---|
| OSS | CLI (this repo) | Monitoring, queue, generators, LLM local/remote, hardware analyzer | Free |
| Pro | Desktop UI (Tauri) | System tray, dashboard, analytics, auto-executors | $19/mo |
| Team | Desktop + Cloud | Multi-repo, multi-user, sync | $49/mo |
| Enterprise | SaaS Web | Zero install, white-label, API, support | Custom |
The CLI is and will remain open-source forever. The UI is a closed-source paid add-on.
Current Status
Alpha — dogfooding on Truenex Memory.
What it does
- Monitors GitHub — stars, issues, releases
- Detects milestones — celebrates star milestones (10, 25, 50...)
- Discovers Awesome Lists — finds relevant curated lists for your project
- Generates drafts — PR descriptions, social posts, release announcements
- Queues for approval — every action waits for your
approveorreject
Quick Start
# Install
pipx install truenex-promoter
# Configure (optional)
export TRUENEX_PROMOTER_OWNER=your-org
export TRUENEX_PROMOTER_REPO=your-repo
# Check once
python -m truenex_promoter
# Run continuously
python -m truenex_promoter --loop
# View pending actions
python -m truenex_promoter --queue
# Approve an action
python -m truenex_promoter --approve <action-id>
# Reject an action
python -m truenex_promoter --reject <action-id> --reason "not relevant"
LLM Configuration
The promoter can use a local LLM (llama.cpp) or remote API.
Local LLM (recommended: Nemotron 3 Nano 4B)
# Download Nemotron 4B Q4 (~3GB)
python -c "from huggingface_hub import hf_hub_download; hf_hub_download(repo_id='unsloth/NVIDIA-Nemotron-3-Nano-4B-GGUF', filename='NVIDIA-Nemotron-3-Nano-4B-Q4_K_M.gguf', local_dir='./models')"
# Configure
export TRUENEX_PROMOTER_LLM_PROVIDER=llamacpp
export TRUENEX_PROMOTER_LLM_MODEL_PATH="./models/NVIDIA-Nemotron-3-Nano-4B-Q4_K_M.gguf"
export TRUENEX_PROMOTER_LLM_N_GPU_LAYERS=-1
# Test
python -m truenex_promoter --llm-check
Remote API (OpenAI, DeepSeek, Kimi)
export TRUENEX_PROMOTER_LLM_PROVIDER=deepseek
export TRUENEX_PROMOTER_LLM_API_KEY=sk-...
export TRUENEX_PROMOTER_LLM_MODEL=deepseek-chat
python -m truenex_promoter --llm-check
Example Output
[2026-05-14 08:38:46 UTC] EVENT: NEW_RELEASE
Title: New release: v0.1.0-alpha.1
URL: https://github.com/marcomnit/truenex-memory/releases/tag/v0.1.0-alpha.1
[2026-05-14 08:38:46 UTC] ACTION PROPOSED (ID: 6696a400)
Title: Announce release v0.1.0-alpha.1
Approve: trnx-promoter --approve 6696a400
Reject: trnx-promoter --reject 6696a400
[2026-05-14 08:38:49 UTC] ACTION PROPOSED (ID: f15b266a)
Title: Propose addition to awesome-mcp-servers
Target: https://github.com/punkpeye/awesome-mcp-servers
Architecture
trnx-promoter check
-> github_monitor.check() # fetch repo state
-> content_generator # draft posts/PRs
-> action_queue.add() # queue for approval
-> notifier.action_proposed() # notify user
User: trnx-promoter --approve ID
-> action_queue.approve() # mark approved
-> (execution in future versions)
License
Apache 2.0
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 truenex_promoter-0.1.0a1.tar.gz.
File metadata
- Download URL: truenex_promoter-0.1.0a1.tar.gz
- Upload date:
- Size: 38.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b2d689ea0fcde5be8c343017280f3a7f8a8e0e5d86330e2324fb6e7869e748c
|
|
| MD5 |
c00bd526beffe7c7615257fac418b907
|
|
| BLAKE2b-256 |
c1b612034b8e95438999605e214ad0b92f11e6d8b8d11ba7cb1ebb019d7a56bf
|
File details
Details for the file truenex_promoter-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: truenex_promoter-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 46.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be2f84b76085cf86a1d3f8f530f9dce298788f50b8849e537da02a576edfd190
|
|
| MD5 |
ecce1b97acf3ec3b311cffe82b97b736
|
|
| BLAKE2b-256 |
f25a68b6db5554e17e751a03709901b59fa879606996b52f6de3aa676a6ac34b
|