How to Update the Dashboard
This dashboard is powered by JSON files in the repo. No database, no admin panel. Edit a file, push to git, and it's live.
Quick Start
1. Clone the repo (first time only)
git clone git@github.com:coachtonyle/ai-hub.git cd ai-hub
You need GitHub access to the coachtonyle/ai-hub repo. Ask Tony if you don't have it.
2. Edit the data files
All dashboard data lives in the /data/ folder. Edit these JSON files directly — no database, no admin panel.
3. Commit your changes
git add data/ git commit -m "update: describe what you changed"
Write a short, clear commit message so the team knows what changed.
4. Push to deploy
git push origin main
The server pulls from GitHub and rebuilds automatically. Changes go live in ~30 seconds.
Data Files Reference
Every page on the dashboard reads from these files. Edit the right file and the corresponding page updates automatically.
data/config.jsonDashboard settings- -Update current phase number
- -Log actual monthly API spend
- -Change last_updated date and who updated it
data/checklist.jsonRollout tasks by phase- -Mark a task done: change "status": "not-started" to "status": "done"
- -Mark a task blocked: change status to "blocked" and add notes
- -Add a new task to any phase
data/agents.jsonAgent cards (Cornelius, Emerson, Jarvis)- -Change agent status: "planned" → "in-progress" → "live"
- -Update Tailscale IPs or machine assignments
- -Add or remove capabilities
data/use-cases.jsonAll 23 use cases with layers and costs- -Change use case status: "planned" → "building" → "live"
- -Update estimated costs as actuals come in
- -Add new use cases
data/team.jsonTeam seat assignments- -Change someone's seat type (none/standard/premium)
- -Move someone to a different wave
- -Add or remove project assignments
data/docs.jsonDocumentation articles- -Add docs manually (or use the AI generator on the Docs page)
- -Update existing documentation
Common Updates Cheat Sheet
Mark a checklist task as done
data/checklist.jsonFind this
"status": "not-started"
Change to
"status": "done"
Update the current phase
data/config.jsonFind this
"phase_current": 0
Change to
"phase_current": 1
Change an agent status to live
data/agents.jsonFind this
"status": "in-progress"
Change to
"status": "live"
Log API costs for the month
data/config.jsonFind this
"monthly_api_actual": 0
Change to
"monthly_api_actual": 47.50
Assign someone an AI seat
data/team.jsonFind this
"seat": "none", "cost": 0
Change to
"seat": "standard", "cost": 25
Infrastructure
| Hosted on | DigitalOcean droplet (egelloc-main) |
| IP | 165.232.155.132 |
| URL | https://aihub.egelloc.com |
| App directory | /var/www/egelloc-ai-hub |
| Process manager | PM2 (name: ai-hub, port 3004) |
| Reverse proxy | Nginx + Let's Encrypt SSL |
| GitHub repo | coachtonyle/ai-hub (private) |
| Stack | Next.js 14, Tailwind CSS, TypeScript |
Troubleshooting
Changes not showing up?
SSH into the server and run: cd /var/www/egelloc-ai-hub && bash deploy.sh
Build failing?
Make sure your JSON is valid. A missing comma or bracket will break the build. Use npx jsonlint data/checklist.json to check.
Need to restart the app?
SSH into server: pm2 restart ai-hub