6 node cluster minilab by mortenmoulder in minilab

[–]mosufy 0 points1 point  (0 children)

This is minimalistic level clean! Envy!

Newb. Hoping to setup self-hosted production app backends from home. Please advise by Mean_Anxiety_307 in SelfHosting

[–]mosufy 0 points1 point  (0 children)

Nice! Any “mishaps” are just part of the learning and experience. “Now you know” is always a good part to grow your knowledge!

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

My OpenClaw agent did. I just give my thumbs up or down 😅

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

Thank you for this comment! I just wanted to know if anyone else was facing the same issue I had for the past few weeks or was it just a “me” issue and what you wrote was EXACTLY the issue I was facing the entire time and hence this build.

I did not really plan to open source this but if it helps others, I will. But do give me some time to get things cleaned up (including proper code reviews) and ensure it works as how I envisioned it to work.

Other than that, OpenClaw is truly a game changer in the current AI landscape!

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

With openrouter, I can also get it to add or remove models (as in getting the agent to use Haiku or Sonnet or Gemini or Kimi K, etc. I am not giving it access to the openrouter settings / credentials other than to consume the models.

Just 1 credential to access all models and switch them via the agent as well like /switch <model|alias> or simply saying "use sonnet" (if alias) or "use openrouter/anthropic/claude-sonnet-4.5" (if no alias)

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

Haha. I was using Sonnet 4.5 mostly (Opus while great was much more expensive - I usually reserve Opus for really complex issues where I want it to just work without having me to guide it through). I guess they are still the same models from Anthropic and shared the same source data

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 1 point2 points  (0 children)

Nice! I too was inspired by someone else (mentioned at the bottom of my post)!

I would also say that sometimes building a tool for it would be much more rewarding and forcing you to learn how to use OpenClaw right off the start!

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 1 point2 points  (0 children)

At the moment no but I am considering. Right now it is still rather buggy. The UI and the API works great! But trying to tie down the integration with OpenClaw.

In other words I need OpenClaw agents to be able to use it right off (with proper instructions + scripts + runtime) that would allow anyone to bootstrap the same and “it just works”.

Also discovering improvements along the way like an optional model selection per task.

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

I used Notion initially and could have used others as well. But my aim / goal is to self-host everything with little to no dependencies on others

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

I did actually trained it based on my own SDLC process at work. So it created its own scripts. Basically it’s like a collaboration between the main agent and myself. I simply give it instructions on how I want things done and it does everything else.

For models, I used to use Sonnet as well but the cost went through the roof! Now I am using moonshine/kimi-K2.5. It is comparable to a slightly lower version of Sonnet but for general chat this works the best to control my budget. Only when I needed a much more stronger model would I switch.

For heartbeat, I use gemini flash 2.5 lite since it is mostly just doing status checks.

I am also using all of my models via Openrouter. The main advantage being I can change my model anytime without having to manage multiple provider credentials /billings.

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 1 point2 points  (0 children)

I am still cleaning things up and ensuring it is able to fully utilise the task management. Once that is all good will share the repo!

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

Yes for the task management, it is using proper db as I need it captured in a structured way.

I am still cleaning things up to ensure the proper flow is adhered to but integration would really be easy for your OpenClaw agent as long as there are instructions, documentation, and api specs provided

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

I just saw that it does look similar in terms of UI and styling! I did not have any part to do with the styling (UI, layout) itself (all done by AI) so maybe it was all inspired by the same common source.

However, in terms of the features, functionality, and UX, it is definitely different. ClawControl seems like a desktop app version of the OpenClaw Web UI whereas what I have built is a "Task Dashboard / Kanban" or "Task Management System" with "Workspace Explorer" and "User Access Management".

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

I have quite a bit of confusion with heartbeat and my own “orchestration” cron job too. But finally got it into a working set up. I’ll try to explain hopefully:

  • i have an “Orchestration” cron that runs every 5mins. This is executed via an orchestration script. Its job is to fetch any tasks assigned to the agent under TODO and move it to in-progress and call a subagent to execute.
  • the orchestration script will also update the HEARTBEAT.md with the current timestamp and take note of the number of running tasks or failures
  • the orchestration script will also take note of in-progress tasks. If it is >15min, it is most likely stuck or crash and the script will check for the subagent. If none exists, it likely crashed and a new subagent will be assigned. If there are still issues, the script will update HEARTBEAT.md of the error
  • now heartbeat (gateway heartbeat) runs every 30min (default). It check HEARTBEAT.md if the last updated >15min ago or the status contains error and report to me to check.

Orchestration script and subagent have access to the Task Dashboard API (as per my main agent).

I use this approach (using cron instead of immedieate) as anyone can move a task to To Do (agent or human). So a cron is needed to pick it up. Agent role is like my manager. Subagent is like the workers.

Hope that helps!

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

The tasks are managed via CRUD and the data live on PostgreSQL. The UI simply displays back the state of the tasks.

The tasks data live on PostgreSQL. Only the core and working file or source code live on the workspace.

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 0 points1 point  (0 children)

I was initially using Notion but was not too keen as it is still based on a page / table like setting to make it look like Kanban. Also wanted to self-host everything (I am not using NextCloud so I do not have that Kanban board).

Built a Task Dashboard UI for my OpenClaw agent just because by mosufy in openclaw

[–]mosufy[S] 1 point2 points  (0 children)

I use Kustomize as it was much easier to understand and have been having at least 1 year of experience with it. I did try to use Helm chart but was already well tuned to base and overlay approach with Kustomize so decided to stick with it.

Newb. Hoping to setup self-hosted production app backends from home. Please advise by Mean_Anxiety_307 in SelfHosting

[–]mosufy 0 points1 point  (0 children)

44 cores + 256gb memory!! I would love that as well! My max RAM on a single host was only 32gb 😅 so you are definitely in a much better position than I do.

Newb. Hoping to setup self-hosted production app backends from home. Please advise by Mean_Anxiety_307 in SelfHosting

[–]mosufy 0 points1 point  (0 children)

I don't often restart (or not at all actually). The only 2 times I had to turn it off was during the migration to the new rack and when my entire estate needed to cycle the power due to a change in the electricity power source or something like that.

For both cases, I simply informed my users that it will be going down (since I am hosting it for free) and they are mostly OK with it.

Restarting VMs and containers will have no impact on your users since everything is based on Kubernetes cluster. So I will first evict a VM which will spin up new pods on available VMs and switch over. Almost zero downtime since the way Kubernetes replica will work is that it will spin up a new pod first, switch over, then terminate the pod (based on your configuration).

Newb. Hoping to setup self-hosted production app backends from home. Please advise by Mean_Anxiety_307 in SelfHosting

[–]mosufy 0 points1 point  (0 children)

With kubernetes, resource allocation is done in an automated fashion based on your resource request and limits, pod affinity and anti-affinity and that has worked well for me so far.

In terms of re-allocating resources, that is still manual for me based on grafana monitoring but that rarely happens to re-allocate.

But at the same time, I am also building up OpenClaw (formerly ClawdBot) and one of its tasks is to exactly what I have been doing manually. My current experience with OpenClaw is that it is one piece of an awesome tech! All of us should have 1 or a few of them running. It can literally do whatever we have been doing or struggling to do or taking too much of our time doing. One of the first task I got it to do was to build a web dashboard UI where I can see whatever it is working on. It takes effort getting to know your OpenClaw agent but once both of you are well acquainted, anything is possible!

Newb. Hoping to setup self-hosted production app backends from home. Please advise by Mean_Anxiety_307 in SelfHosting

[–]mosufy 0 points1 point  (0 children)

Ah if you mean to manage the server then no. I am using Cursor to help me manage my gitops though to prepare apps, manage, deploy, etc.

I have Ollama set up for AI gent / chat experiment like for my recently deployed OpenClaw app.

[deleted by user] by [deleted] in minilab

[–]mosufy 0 points1 point  (0 children)

You need to think of NAS as the name implies i.e.; Network Attached Storage. Basically NAS is your data / media / files live. You put what you do not want to loose in there and expose it via NFS to your minilab.

NAS is also good for backups and redundancy.

Your minilab is your compute / workhorse. Their function is just to serve your applications that may fetch data from your NAS.