DEV Community

Cover image for ⚡ From `git clone` to Full Company Operating System in 60 Seconds.
mamoor123
mamoor123

Posted on

⚡ From `git clone` to Full Company Operating System in 60 Seconds.

⚡ From git clone to Full Company Operating System in 60 Seconds.

HiveOps — One command to rule them all


⏱️ Seriously. 60 Seconds.

You're a developer. You don't want to read a 40-page setup guide. You don't want to "contact sales." You don't want to configure 12 integrations before you see a dashboard.

You want to run a command and see something working.

That's exactly what HiveOps does.

git clone https://github.com/mamoor123/hiveops.git && cd hiveops
cp .env.example .env
openssl rand -base64 32  # paste into .env as JWT_SECRET
docker-compose up --build
Enter fullscreen mode Exit fullscreen mode

Open http://localhost:3000. Done. 🎉

You now have a full company operating system running on your machine. Let me show you what's inside. 📦


🧠 Wait — What Did I Just Deploy?

A complete, production-ready platform that handles:

Module What It Does
📋 Task Management Create, assign, track — with priorities, statuses, comments, and file attachments
🤖 AI Agents Per-department agents that autonomously execute tasks
⚙️ Workflow Engine Triggers → Conditions → Actions. Your ops logic, automated
📧 Real Email SMTP + IMAP. Inbox, drafts, replies. AI drafts responses for you
📚 Knowledge Base Articles with full-text search
💬 Real-Time Chat Channel-based messaging with Socket.IO
📊 Dashboard Live stats on tasks, agents, emails, and workflows
🔐 Auth System JWT tokens, role-based access, brute-force protection

All in one Docker Compose file. 🐳


🔍 What Happened in Those 60 Seconds?

Let me break down what docker-compose up actually started:

🗄️ 1. PostgreSQL 16

A full database with 14 tables — ready to go.

users | departments | agents | tasks | task_comments | messages
knowledge_base | workflows | workflow_logs | emails
notifications | uploads | scheduled_tasks | schema_migrations
Enter fullscreen mode Exit fullscreen mode

No migrations to run manually. The app handles it on boot. ✅

🖥️ 2. The API Server (Node.js + Express)

Running on port 3001. Serving 12+ route modules:

# Auth
POST /api/auth/register     → Create account
POST /api/auth/login        → Get JWT token
GET  /api/auth/me           → Current user

# Tasks
GET  /api/tasks             → List tasks (filterable)
POST /api/tasks             → Create task
GET  /api/tasks/:id         → Task detail

# AI Agents
POST /api/ai/chat/:agentId        → Chat with agent
POST /api/ai/execute/:taskId      → Execute task via agent
POST /api/ai/delegate             → Agent-to-agent delegation

# Workflows
POST /api/workflows         → Create workflow
POST /api/workflows/:id/toggle    → Enable/disable

# Email
GET  /api/email/folder/:folder    → List emails
POST /api/email/send              → Send email

# Knowledge Base
POST /api/knowledge/search        → Full-text search
Enter fullscreen mode Exit fullscreen mode

🎨 3. The Frontend (Next.js 14)

Running on port 3000. App Router. 12 pages covering every module.


🤖 The AI Agents — This Is Where It Gets Interesting

Most "AI integrations" are chat widgets. Type a question, get an answer. That's it.

HiveOps agents are workers. 💪

🏢 One agent per department

📣 Marketing Agent
   → system prompt: "You handle campaigns, content, and social media strategy"
   → receives tasks assigned to marketing
   → executes them autonomously

💻 Engineering Agent
   → system prompt: "You handle code reviews, deployments, and bug triage"
   → receives tasks assigned to engineering
   → executes them autonomously

🎧 Support Agent
   → system prompt: "You handle customer issues, escalations, and follow-ups"
   → receives tasks assigned to support
   → executes them autonomously
Enter fullscreen mode Exit fullscreen mode

⚡ The execution loop

📥 Task assigned to agent
  → 🤖 Agent picks it up
  → ▶️ Executes with the task context
  → ✅ Success? Mark complete.
  → ❌ Failed?
       → 🔄 Retry #1 (10s delay)
       → ❌ Failed?
            → 🔄 Retry #2 (20s delay)
            → ❌ Failed?
                 → 🔄 Retry #3 (40s delay)
                 → ❌ Failed?
                      → 💀 Dead letter queue
                      → 🔔 Notify task creator
Enter fullscreen mode Exit fullscreen mode

Exponential backoff. Dead letter queues. Error history tracking. This isn't a weekend project. This is production infrastructure. 🏗️

🔗 Agent delegation

Agent A can hand off a sub-task to Agent B:

🤖 Engineering Agent: "I need a deployment verification"
   → delegates to →
🤖 DevOps Agent: "Running smoke tests..."
   → reports back →
🤖 Engineering Agent: "All clear. Marking task complete."
Enter fullscreen mode Exit fullscreen mode

Chain agents together for complex workflows. 🔗


⚙️ Workflow Engine — Zapier Without the Bill

Build automation rules with three components:

🔀 Triggers (when something happens)

  • task_created — A new task is born
  • task_completed — A task is done
  • task_updated — Someone changed a field
  • user_registered — New team member
  • schedule_daily — Runs every day

🎯 Conditions (only if...)

  • priority == urgent
  • due_date is past
  • field contains specific text
  • status == blocked
  • A field exists

▶️ Actions (then do this)

  • 🔔 Notify a user, manager, or admin
  • 📝 Update task fields
  • 💬 Send a channel message
  • ➕ Create a new task

Example workflow:

Trigger: task_created
Condition: priority == urgent
Action: notify manager

Trigger: schedule_daily
Condition: due_date is past
Action: notify assigned_user + update status to "blocked"

Trigger: task_completed
Condition: department == engineering
Action: create new task "Deploy to staging" for DevOps agent
Enter fullscreen mode Exit fullscreen mode

Build it once. It runs forever. No per-action billing. No premium tier. 🆓


📧 Email That Actually Works

Not a "send notification" endpoint. Real email. 📬

  • 📥 Inbox — pull emails via IMAP polling
  • 📤 Send — SMTP outbound (Gmail, custom SMTP)
  • 📝 Drafts — AI writes draft replies based on email context
  • Star & Label — organize your mail
  • 🔍 Search — find anything
  • 🔔 Notifications — new email? You know instantly

The agent reads incoming emails and drafts intelligent responses. Review and send. Or let it send autonomously — your call. ✍️


🛠️ Under the Hood

Backend Architecture

server/
├── src/
│   ├── config/
│   │   ├── db.js              🗄️ Dual SQLite/PostgreSQL adapter
│   │   ├── logger.js          📋 Pino structured logging
│   │   └── migrate.js         🔄 Versioned migrations
│   ├── middleware/
│   │   ├── auth.js            🔐 JWT + role-based access
│   │   ├── rateLimit.js       🛡️ Brute-force protection (login abuse)
│   │   └── validate.js        🧹 Input sanitization
│   ├── routes/                🛣️ 12 API modules
│   └── services/
│       ├── ai-engine.js       🧠 LLM integration (OpenAI-compatible)
│       ├── email-real.js      📧 SMTP + IMAP
│       ├── execution-loop.js  🔄 Retry + exponential backoff + DLQ
│       ├── scheduler.js       ⏰ DB-persisted cron jobs
│       ├── workflows.js       ⚙️ Rule engine
│       └── notifications.js   🔔 Socket.IO broadcast
└── __tests__/                 🧪 58 tests (Jest + Supertest)
Enter fullscreen mode Exit fullscreen mode

Frontend

web/
├── app/                       📄 12 pages (Next.js 14 App Router)
├── components/                🧩 Shared UI components
└── lib/                       🔌 API client + auth helpers
Enter fullscreen mode Exit fullscreen mode

Tests — Because We're Serious

Suite Tests Covers
🔐 Auth 14 Register, login, profile, password, tokens
📋 Tasks 13 CRUD, filters, comments, completion
⚙️ Workflows 8 CRUD, toggle, triggers, validation
🤖 AI 11 Chat, execution, delegation, agents
🏢 Departments 12 Departments, knowledge, email

58 tests. All passing.


🗄️ Database: SQLite or PostgreSQL — Your Choice

Same API. Same code. One env var difference.

# SQLite (default — just works)
DB_PATH=./data/hiveops.db

# PostgreSQL (production scale)
DATABASE_URL=postgres://user:pass@host:5432/hiveops
Enter fullscreen mode Exit fullscreen mode
Mode Best For
🟢 SQLite Local dev, prototyping, small teams
🔵 PostgreSQL Production, scale, complex queries

Switch anytime. No code changes. No migrations to redo. 🔄


🧠 LLM: Works With Anything OpenAI-Compatible

# OpenAI
LLM_API_URL=https://api.openai.com/v1/chat/completions
LLM_API_KEY=sk-your-key

# Ollama (local)
LLM_API_URL=http://localhost:11434/v1/chat/completions
LLM_API_KEY=ollama

# No key? No problem.
# Simulated fallback mode works out of the box.
Enter fullscreen mode Exit fullscreen mode

No vendor lock-in. Run your own models locally with Ollama. Or plug in any provider. 🔌


📊 The Numbers That Matter

Metric Value
🐳 Docker containers 3 (Postgres + API + Web)
⏱️ Setup time ~60 seconds
📄 API routes 12 modules
🗄️ Database tables 14
🧪 Test suite 58 tests
💰 Cost $0 forever
🔒 Data location Your server

🎯 Who Should Use This?

  • 🚀 Startups — Can't burn $500/mo on SaaS before you have revenue
  • 🌍 Remote teams — One platform instead of five disconnected tabs
  • 👩‍💻 Developers — Self-hosted > vendor-dependent
  • 🏗️ Agencies — White-label the OS for your clients
  • 😤 Anyone with SaaS fatigue — Time to own your stack

🔮 What's Next?

The project is alive and growing. Here's what's on the roadmap (based on the codebase):

  • 📊 More dashboard widgets
  • 🔌 Additional LLM provider integrations
  • 📱 Mobile-responsive improvements
  • 🏷️ Enhanced labeling and tagging
  • 📈 Reporting and analytics

📜 Open Source. Fully. No Gimmicks.

No "open core." No "enterprise edition." No "contact sales." 🚫

git clone https://github.com/mamoor123/hiveops.git
Enter fullscreen mode Exit fullscreen mode

⭐ Star it if you like it. 🍴 Fork it if you want to change it. 🚀 Deploy it if you need it.

🔗 github.com/mamoor123/hiveops


📌 Quick Links

Link Description
📖 README Full documentation
🐛 Issues Bugs & feature requests
🧪 Tests 58 tests
🐳 Docker Compose file

🐝 From git clone to full company OS. One command. 60 seconds. Zero dollars.


Tags: opensource, selfhosted, ai, docker, devops, productivity, nodejs, nextjs

Top comments (1)

Collapse
 
bta_ghost_3973f23df97163c profile image
BTA GHOST

Thanks