9830a1b74270ad5589a38360546f272c668deb1b
Infrastructure: - Add Longhorn PVCs for knowledge store (1Gi) and workspace (10Gi), replacing ephemeral emptyDir for workspace - Set HARNESS_KNOWLEDGE_DIR=/data/knowledge env var in deployment Chat UI improvements: - Thinking ticker: pulsing indicator while waiting for model response and between tool-use rounds - Context bar: message count, estimated token usage, color-coded fill bar against model context window - Multiple conversation tabs: independent state per conversation with create/close/switch, model selection inherited on new tabs - Workspace binding: per-conversation repo search that injects project context into the system prompt
Homelab
Monorepo for self-hosted applications running on a k3s cluster across Intel NUC machines.
What's Inside
- Apps: Next.js frontend, Express API (TypeScript)
- Infrastructure: Ansible provisioning, ArgoCD GitOps, full Kubernetes platform
- Observability: Prometheus, Grafana, Loki
Prerequisites
Quick Start
# Install dependencies
pnpm install
# Start development
task dev
# Build all apps
task build
Bootstrap Cluster (Day 1)
- Flash Ubuntu Server 24.04 on NUCs, configure SSH access
- Configure Ubiquiti Cloud Gateway (see
infra/ubiquiti/) - Provision nodes and install k3s:
task cluster:bootstrap task cluster:kubeconfig - Install platform components:
task platform:install - Seal initial secrets:
task secrets:seal - Push an app — ArgoCD handles the rest
Branch Deploys
Push a branch or open a PR → GitHub Actions builds changed apps → ArgoCD creates a preview namespace → merge to main deploys to production.
Project Structure
homelab/
├── apps/ # Deployable applications
├── packages/ # Shared libraries
├── infra/
│ ├── ansible/ # Bare-metal provisioning
│ ├── kubernetes/ # K8s manifests (ArgoCD, platform, observability)
│ └── ubiquiti/ # Network documentation
├── scripts/ # Utility scripts
├── templates/ # App scaffolding templates
└── Taskfile.yaml # Task runner
License
Private — All rights reserved.
Description
Languages
TypeScript
94.3%
JavaScript
2.1%
Shell
1.3%
Dockerfile
1.2%
CSS
0.7%
Other
0.4%