Campaign Brain Inventory
Complete inventory of all Campaign Brain services, domains, and infrastructure.
Last Updated: 2025-12-31
Projects Overview
| Project |
Description |
Directory |
Status |
| cbapp |
Main campaign application |
/home/bisenbek/projects/nominate/cbapp |
Active |
| cbtenant |
Tenant manager & docs hub |
/home/bisenbek/projects/nominate/cbtenant |
Active |
| cbworkflow |
Workflow automation engine |
/home/bisenbek/projects/nominate/cbworkflow |
Active |
| cbdistricts |
Congressional district data |
/home/bisenbek/projects/nominate/cbdistricts |
Active |
| cbmodels |
Data analysis & insights |
/home/bisenbek/projects/nominate/cbmodels |
Active |
| cbpublic |
Public marketing website |
/home/bisenbek/projects/nominate/cbpublic |
Active |
| cbradio |
Radio rate card management |
/home/bisenbek/projects/nominate/cbradio |
Active |
| cbai |
AI/LLM integration services |
/home/bisenbek/projects/nominate/cbai |
Development |
| cbetl |
ETL data pipelines |
/home/bisenbek/projects/nominate/cbetl |
Development |
| cbsurveys |
Survey platform (YASP) |
/home/bisenbek/projects/nominate/cbsurveys |
Active |
| cbfiles |
File storage & CDN (MinIO) |
/home/bisenbek/projects/nominate/cbfiles |
Active |
| cbinfra |
Infrastructure & operations |
/home/bisenbek/projects/nominate/cbinfra |
Active |
| cbdocs |
Documentation hub (MkDocs) |
/home/bisenbek/projects/nominate/cbdocs |
Active |
| cbmesh |
API Mesh (WebSocket proxy) |
/home/bisenbek/projects/nominate/cbmesh |
Development |
| cbintel |
Intelligence service (AI crawling, VPN) |
/home/bisenbek/projects/nominate/cbintel |
Active |
| cbproject |
Executive publication site |
/home/bisenbek/projects/nominate/cbproject |
Development |
| cbauth |
PIN Gate authentication |
/home/bisenbek/projects/nominate/cbauth |
Active |
| cbos |
Session manager (Claude Code) |
/home/bisenbek/projects/nominate/cbos |
Active |
Domains & URLs
Core Services
| Domain |
Service |
Port |
Description |
docs.nominate.ai |
MkDocs |
8000 |
Documentation hub (this site) |
tenant.nominate.ai |
cbtenant |
32200/32201 |
Tenant manager UI/API |
nominate.ai |
cbpublic |
32400 |
Public marketing website |
www.nominate.ai |
cbpublic |
32400 |
Public website (redirect) |
workflow.nominate.ai |
cbworkflow |
8234/8239 |
Workflow engine |
districts.nominate.ai |
cbdistricts |
32106/32107 |
District data API |
models.nominate.ai |
cbmodels |
32411 |
Analysis API |
surveys.nominate.ai |
cbsurveys |
32340 |
Survey platform API |
files.nominate.ai |
cbfiles |
32350 |
File storage API |
cdn.nominate.ai |
cbfiles |
32350 |
CDN file delivery |
ruralamfm.nominate.ai |
cbradio |
32330/32331 |
Radio advertising platform |
auth.nominate.ai |
cbauth |
32202 |
PIN Gate authentication |
intel.nominate.ai |
cbintel |
9003 |
Intelligence API (crawl, lazarus, vectl) |
network.nominate.ai |
cbintel |
32203 |
Network API (VPN cluster management) |
project.nominate.ai |
cbproject |
- |
Executive publication |
Tenant Instances (cbapp deployments)
| Domain |
Tenant |
Frontend |
API |
Description |
testsite.nominate.ai |
testsite |
32300 |
32301 |
Test/staging environment |
ky04.nominate.ai |
ky04 |
32320 |
32321 |
Ed Gallrein campaign |
mi20.nominate.ai |
mi20-clevenger |
32310 |
32311 |
MI-20 Clevenger campaign |
API Endpoints (Deprecated)
Deprecated Pattern
The {service}api.nominate.ai pattern is deprecated. Use {service}.nominate.ai/api instead.
| Legacy Domain |
New Pattern |
Points To |
testsiteapi.nominate.ai |
testsite.nominate.ai/api |
testsite API (32301) |
ky04api.nominate.ai |
ky04.nominate.ai/api |
ky04 API (32321) |
mi20api.nominate.ai |
mi20.nominate.ai/api |
mi20-clevenger API (32311) |
Systemd Services
| Service |
Project |
Port |
Status |
mkdocs.service |
cbtenant |
8000 |
enabled |
tenant-manager.service |
cbtenant |
32201 |
enabled |
tenant-manager-frontend.service |
cbtenant |
32200 |
enabled |
cbpublic.service |
cbpublic |
32400 |
enabled |
cbworkflow-api.service |
cbworkflow |
8234 |
enabled |
cbworkflow-app.service |
cbworkflow |
8239 |
enabled |
cbdistricts-api.service |
cbdistricts |
32107 |
enabled |
cbdistricts-web.service |
cbdistricts |
32106 |
enabled |
cbmodels-api.service |
cbmodels |
32411 |
enabled |
cbsurveys.service |
cbsurveys |
32340 |
enabled |
cbradio-app.service |
cbradio |
32330 |
enabled |
cbradio-api.service |
cbradio |
32331 |
enabled |
cbauth.service |
cbauth |
32202 |
enabled |
cbintel.service |
cbintel |
9003/32203 |
enabled |
cbos.service |
cbos |
32900 |
enabled |
Tenant Services
| Service |
Tenant |
Port |
testsite-frontend.service |
testsite |
32300 |
testsite-api.service |
testsite |
32301 |
ky04-frontend.service |
ky04 |
32320 |
ky04-api.service |
ky04 |
32321 |
mi20-clevenger-frontend.service |
mi20-clevenger |
32310 |
mi20-clevenger-api.service |
mi20-clevenger |
32311 |
Port Allocation
Reserved Ranges
| Range |
Purpose |
| 8000-8999 |
Development & internal services |
| 32100-32199 |
Core platform services |
| 32200-32299 |
Tenant manager |
| 32300-32399 |
Tenant instances (cbapp deployments) |
| 32400-32499 |
Public services |
Port Map
8000 - MkDocs (docs.nominate.ai)
8234 - cbworkflow API
8239 - cbworkflow App
32106 - cbdistricts Web
32107 - cbdistricts API
32200 - Tenant Manager Frontend
32201 - Tenant Manager API
32300 - testsite Frontend
32301 - testsite API
32310 - mi20-clevenger Frontend
32311 - mi20-clevenger API
32320 - ky04 Frontend
32321 - ky04 API
32330 - cbradio/ruralamfm App
32331 - cbradio/ruralamfm API
32340 - cbsurveys (surveys.nominate.ai)
32350 - cbfiles (files.nominate.ai, cdn.nominate.ai)
32400 - cbpublic (nominate.ai)
32411 - cbmodels API
GitHub Repositories
| Repository |
URL |
| cbapp |
github.com/Nominate-AI/cbapp |
| cbtenant |
github.com/Nominate-AI/cbtenant |
| cbworkflow |
github.com/Nominate-AI/cbworkflow |
| cbdistricts |
github.com/Nominate-AI/cbdistricts |
| cbmodels |
github.com/Nominate-AI/cbmodels |
| cbpublic |
github.com/Nominate-AI/cbpublic |
| cbradio |
github.com/Nominate-AI/cbradio |
| cbai |
github.com/Nominate-AI/cbai |
| cbetl |
github.com/Nominate-AI/cbetl |
| cbsurveys |
github.com/Nominate-AI/cbsurveys |
| cbfiles |
github.com/Nominate-AI/cbfiles |
| cbinfra |
github.com/Nominate-AI/cbinfra |
| cbdocs |
github.com/Nominate-AI/cbdocs |
| cbmesh |
github.com/Nominate-AI/cbmesh |
| cbintel |
github.com/Nominate-AI/cbintel |
| cbproject |
github.com/Nominate-AI/cbproject |
| cbauth |
github.com/Nominate-AI/cbauth |
| cbos |
github.com/Nominate-AI/cbos |
Version Tracking
Current Versions
| Project |
Version |
Tag Format |
| cbapp |
v0.4.28 |
v0.4.x |
| cbtenant |
v1.2.0 |
v1.x.0 |
| cbworkflow |
- |
- |
| cbdistricts |
- |
- |
Check Tenant Versions
for dir in /home/bisenbek/projects/nominate/{ky04,mi20-clevenger,testsite}; do
echo "$(basename $dir): $(cd $dir && git describe --tags HEAD 2>/dev/null || git rev-parse --short HEAD)"
done
Quick Commands
Service Management
# Restart tenant manager
sudo systemctl restart tenant-manager tenant-manager-frontend
# Restart all cbapp tenants
sudo systemctl restart testsite-api testsite-frontend
sudo systemctl restart ky04-api ky04-frontend
sudo systemctl restart mi20-clevenger-api mi20-clevenger-frontend
# Check service status
systemctl status cbworkflow-api cbworkflow-app cbdistricts-api cbmodels-api
Documentation
# Rebuild docs
cd /home/bisenbek/projects/nominate/cbtenant
mkdocs build --clean
# Restart docs server
sudo systemctl restart mkdocs
SSL Certificates
All *.nominate.ai domains use Let's Encrypt certificates managed via Certbot.
# Check certificate status
sudo certbot certificates
# Renew certificates
sudo certbot renew
This inventory is maintained in cbtenant and published to docs.nominate.ai