8 ms·
My Homelab AI Dev Platform
- gaotus 4mo agoi work on something similar, hope to finish soon
- variety8675 4mo agoHow do you run inference for Open Code? What models are you running
- znnajdla 4mo agoFor me personally: I sync OpenCode authentication tokens across all containers using Syncthing (will probably get a NAS at some point) and keep it signed it to Codex, DeepSeek, Kimi as well as a local Gemma 4 12B running on a MacMini. For frontier inference API endpoints you can also use vibeproxy to give you OpenAI compatible endpoints to Codex/Antigravity.
- johnnytech 4mo agoReally cool! Do you autoapprove edits or do you approve manually?
- rsgm 4mo agoI'll verify the PR code myself before merging, but that's usually a quick skim.
- fazgha 4mo agoSo first post in the blog, and it went directly HN frontpage. Then, I said homelab AI, I thought it's an interesting post about local GPU setup (and I am really interested in this topic).. but no, just another hype post about how to use whatever-code...
- reactordev 4mo agoyou can't explain the HN hug. You feel it, or your servers do.
- rsgm 4mo agoI looked into running local models last month. They just aren't quite there for agentic tool use workflows without spending a small fortune. I'm hopeful smaller local models get much better soon. I was also hoping to put out another post on my homelab setup, it has some neat stuff, but I haven't had a chance to finish it.
- sosodev 4mo agoI think it heavily depends on what you're asking the model to do. Qwen3.6, both 27B and 35B-A3B, do agentic tool use very well. Their decision making is sus, but the dense model is decent in that way. A 4-bit quant for either of those can run on many home systems with a bit of configuration. The biggest issue I've noticed is that the chat templates for open models are really hit or miss. The default Qwen3.6 chat template mostly works these days, but depending on your workload it may cause major issues. There are plenty of "fixed" chat templates on hugging face, but people report mixed success. It really seems to depend a lot on what the tool you're using expects.
- nyrikki 4mo agoMy workflow is too different right now (gradually constrained to network less builds for reasons) but I am really enjoying how zeds agents have worked out in the past few weeks. I have 27b, 35B-A3B and a cpu backed gpt-oss configured and use them in parallel, checking if one is getting ratholed and adding context or manual fixes. I had various other systems setup and commercial models but really don’t use them. It may be too interactive for some people, but it is a good mix of fail fast and often the places qwen3.6 was failing was eventually problems with the frontier models. And this is with the unsloth defaults and hardened llama.cpp podman containers. I do sometimes load other models or honestly just feed things into google’s free agent. But that is rare and to be honest manually fixing is typically faster and less error prone
- _def 4mo agoI wonder how gitops is done with docker compose
- rsgm 4mo agoI recently setup Arcane and started migrating stuff from Truenas apps, they were all deployed as custom docker compose services so it worked out. Arcane supports Git syncs to auto deploy compose stacks, https://getarcane.app/docs/features/projects#sync-from-git https://getarcane.app/docs/features/projects#sync-from-git I'll write up some posts on my full setup soon.
- blumomo 4mo agoWhat _IS_ Arcane? I fail to understand from their website https://getarcane.app/ https://getarcane.app/ Is it a deployment automation platform where it can run a project’s docker services, with rollback and all?
- rsgm 4mo agoso, the project is pretty much vibe coded, including the docs. It makes a lot more sense if you play around with it. It's just a docker host management UI, I like using it. It has gitops built in and a nice container log view. It doesn't do rollbacks, it only seems to sync from git and run compose up.
- zbentley 4mo agoIs it analogous to portainer with a git-pull-compose-apply loop?
- stryan 4mo agoI see a lot of people using Komodo for it, though if I had to pick I'd go with Doco CD[0]. You can also use standard Ansible for just cron+bash script to git pull. On the Podman side, I wrote a tool named Materia[1] for it, but there's also the wonderful Ansible quadlet role as well as Quadit and Orchess. [0] https://github.com/kimdre/doco-cd https://github.com/kimdre/doco-cd [1] https://primamateria.systems https://primamateria.systems or https://github.com/stryan/materia https://github.com/stryan/materia
- dlxfoo 4mo agoIm doing something very similar. Running my OpenCode on a proxmox lxc. I have an additional layer of Kimaki, which gives you Discord integration (hate it or love it). Chatting with your codebase (voice messages, too, if that’s your jam), is very very cool.
- rsgm 4mo agoThat's very cool. Thanks, I'll have to check that out.
- taleodor 4mo agoVery cool, we're doing similar except we let agents open PRs as well + we track release metadata and agentic sessions via our ReARM system + we've recently launched an option for agents to track helm-based deployments via ReARM - https://docs.rearmhq.com/workflows/devops.html https://docs.rearmhq.com/workflows/devops.html
- rsgm 4mo agoI didn't mention this part, but while writing this I realized I could easily add a skill to hit the Forgejo PR API. There's no forgejo CLI like there is with GitHub sadly.
- bityard 4mo agoThat seems like a problem an LLM could solve. ;) (Assuming Forgejo has a reasonable REST/whatever API.)
- cosnenc 4mo agoThere is: https://forgejo.org/docs/latest/admin/command-line/ https://forgejo.org/docs/latest/admin/command-line/
- mfenniak 4mo agoThat's not an API tool. It performs direct database access for administrative functions on the Forgejo server. But there is a different tool that is an API accessing CLI: https://codeberg.org/forgejo-contrib/forgejo-cli https://codeberg.org/forgejo-contrib/forgejo-cli
- t0mas88 4mo agoThere is, but it's limited. For example Forgejo does not expose CI build logs via the API so it's hard to make Claude auto-fix a build issue. I still need to find the time to get into the Forgejo code and add that endpoint.
- kenosha 4mo agoI just use the tea CLI. There is pretty good compatibility between tea and forgejo. The only place I’ve found it to be incomplete is forgejo’s actions api was missing some endpoints.
- doctorspazz 4mo agoI've been trying to find the motivation to do a write up on my AI lab, and this is just what I needed. Thanks for sharing. My setup is a similar idea, just with n8n/git/argo/k3s. It's mainly for automated workflows that Qwen or Gemma4 can handle.
- david-giesberg 4mo agoI've been doing something pretty similar, except instead of having a persistent opencode server, I've been using this workflow that runs opencode inside of the Forgejo action runners: https://codeberg.org/dragonfyre13/forgejo-opencode https://codeberg.org/dragonfyre13/forgejo-opencode Still tinkering with it, but the gist is that I can invoke Opencode with /oc inside of an Forgejo issue, then it will come back with a PR for me to review.
- t0mas88 4mo agoNice! I've done that with Claude Code + Forgejo but as a small separate app to run Claude in Docker: https://github.com/smithy-ai/smithy-ai https://github.com/smithy-ai/smithy-ai
- chamoda 4mo agoI did this with github actions + opencode. It has mainly two components called daydream and nightwatch. Daydream runs on a daily schedule looking at the VISION.MD file in the project and also look at the project and suggest new ideas, security , maintenance tasks (you can set a ratio of maintenance vs new ideas) and create a new issue. Then nightwatch runs daily at night and picks up oldest issue and suggest a PR. I'm in total control of merging, can ask for changes which agent again will execute immediately. This has been helpful to revive few old projects and keep momentum on active projects. I've been closing more PRs than merging but I think that's fine. I quickly ran out of free github action hours so I had to self host actions. However basic self-host actions setup may not be secure enough because VM is not destroyed after each action like github own action jobs environment. Anybody can try it out actions from https://github.com/chamoda/agent-foundry https://github.com/chamoda/agent-foundry, minimal setup don't need any API keys, works with mimo 2.5 free model by default.
- MisterPea 4mo agoSome times I feel like a lot of people in tech independently go through the same things right around the same time with few people writing/sharing about it. I am also creating this and enjoyed the post and comments all going through the same thing :)
- MAustriaGA 4mo ago[flagged]
- plmpsu 4mo agoNot only in tech. This is a common phenomenon. We're not that original.
- jatora 4mo ago[flagged]
- iagooar 4mo agoI have created this in 3 different ways, also with e2b.dev (great service). And yeah, that is my problem - I spend 99% of time hacking cool stuff, 1% yapping about it. Should do more yapping.
- girvo 4mo agoDepressingly in todays attention economy, you absolutely should! It'll be good for you directly. At least one upside is it can help others too I suppose, I just get sad when I think about how important attention is now
- palmotea 4mo ago> I set up OpenCode Web UI with Git access to make my homelab easier to manage. OpenCode pushes to Git, I approve the PRs, GitOps deploys the changes. Best of all, OpenCode runs as a server with persistent coding sessions synced across devices. > I’ll share my homelab setup soon. There are about a dozen docker compose stacks for the services that I manage. That is probably neat, but before I read, how many thousands of dollars would I need to spend to acquire the RAM and GPUs needed to do something similar?
- zaptheimpaler 4mo ago0? OpenCode is just a harness, it can connect to any model hosted online.
- jagged-chisel 4mo ago> ... hosted online. Oh, so not that kind of Home Lab.
- Carrok 4mo agoIt can connect to any model hosted anywhere.
- estetlinus 4mo agoDo you use this at work or is it for vibe coding? Also, I don’t quite understand the problem you are solving. The solutions is a lot of technical parts put together, but why?
- templar_snow 4mo agoThis is great. Homelab AI feels like it's going to fun as heck. I currently have Claude maintain my homelab across all devices; it made homelab setup and maintenance go from "This is a trap that will fascinate you for years but never fully work right and waste time that would have better been spent elsewhere" to "This is actually a great idea and really extends my capabilities."
- ohyoutravel 4mo agoI’ve found, even using the latest models, there are some time saving nuggets but mostly subtle config difficulties that just cause an enormous amount of debugging and a net negative on balance, unless you’re just asking for super targeted tasks like “set up a docker compose file” or “give me an NSD config.” But with both of those you need to already know you need the underlying tech and what to ask.
- templar_snow 4mo agoOf course, it still requires tremendous domain knowledge, although that domain knowledge is faster acquired working with AI. However, although the debugging trap is of course real with ALL sub-Fable models it seems, it takes the tedium out of running a homelab and turns it into a net positive to even have in your home!
- eugmai86 4mo ago[flagged]
- msukkarieh 4mo agoWe have a lot of folks using Sourcebot in their home lab as a nice free code search across their projects. Hope it could be helpful! https://github.com/sourcebot-dev/sourcebot https://github.com/sourcebot-dev/sourcebot
- ericmaciver 4mo ago[dead]
- orangeisthe 4mo agoTwo main reasons I don't have this setup already is - the resource you need to give the VM running opencode to build your projects - Faster testing I run pi coding agent right on my mac and I run our entire software suite - example: redis, postgres, kratos, .. etc. With coding agent running on my main development device, I can build faster (assuming opencode VM is a on a low specd machine) as well as test it faster. Example: I can just rebuild the backend and restart it and test it on the UI client with the new changes.
- schanz 4mo agoAny idea as of why this domain is blocked by quad9 resolvers? I am unable to open the website because Quad9 filters the domain: dig @9.9.9.9 rsgm.dev NS ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ; EDE: 17 (Filtered)
- abtinf 4mo agoIf I had to guess, it's because the registration is brand new (about 8 hours old), created at 2026-06-15 14:01:25 UTC.
- saint_yossarian 4mo agoIt's on a malware list: https://quad9.net/result/?url=rsgm.dev#domain-tester https://quad9.net/result/?url=rsgm.dev#domain-tester
- cantalopes 4mo agoI get DNS_PROBE_POSSIBLE trying to open that domain
- hottrends 4mo ago[flagged]
- deleted 4mo ago[deleted]
- CGamesPlay 4mo agoNice! I am still looking for the best AI integration for my setup. Currently I don't have any interaction between Forgejo and my coding agent. I experimented with a Forgejo Actions runner, but the problem that I had was there's not a great way to manage the context there: you get what's in the issue or PR, but it gets muddy once you have multiple rounds and/or discussion moves from the issue to the PR.
- Patchistry 4mo ago[flagged]
- constGard 4mo agoI've added a few more bells and whistles to my agentic rube goldberg, but the gist is forgejo tag listeners triggering argo workflows to orchestrate 1. issue tag 2. write pr 3. testing 4. review+revise loop 5. merge mutex to ensure you don't get a merge storm 6. rebase and merge I've been trying really hard to have it properly implement agentic identity where the pod gets a spiffe-attested token and then trades that for access to the vault secret for a project-scoped forgejo service account. I wish forgejo could configure a trusted external jwt signing authority so I could skip vault and the accounts. Here's the inspiration for the auth model I've been trying to implement: https://datatracker.ietf.org/doc/draft-klrc-aiagent-auth/ https://datatracker.ietf.org/doc/draft-klrc-aiagent-auth/ The last piece has been using gvisor + kubernetes agent sandboxes. My fable adventure last week was having it debug the process of attesting and distributing workload identities for agents running in gvisor, as it creates a layer of indirection that confuses spire to the point it won't issue an ID.
- vinnymac 4mo agoI’m working on an open source Forgejo Frontend that exposes additional features like this, and offers a better user experience, faster large diffs, and basically fixes every little thing I don’t like about Forgejo. Would be interested in hearing more of your complaints so I can continue to improve.
- vannomad 4mo agoIsn't contributing a better way especially if it's fixing broken stuff?
- atn34 4mo agoI've got a gitea instance and a systemd timer polling for issues assigned to my bot. The systemd timer clones the repo etc and spawns the agent in a restricted environment where it has a private localhost (enforced by systemd), and then I set HTTP_PROXY to an inner proxy that connects to an outer proxy over a unix socket. The outer proxy enforces an allowlist and injects credentials. The agent doesn't have access to any credentials inside its sandbox. For the agent I was using `claude -p` with a pro subscription, but they've been treating their paying subscribers like they're on a free trial (they're subsidizing it so heavily it might as well be). So now I'm using an ollama pro subscription and a homebuilt agent with a bash tool and a str_replace tool. It gets on just fine with only those two
- xyzzy123 4mo agoI use hermes with crons and kanban for this. I have a "self driving" homelab where upgrades & config changes happen in a non-prod ct before being applied to "prod" (just, a diff ct). Its mainly compose stacks with data volumes on zfs that gets snapshotted a lot to limit possible data loss. I use the orchestrator to break down regular tasks like "health check the whole env" or "find all containers that need an update", "update terraform providers" into changes with their own card & MR, actioned serially via kanban. The task detail is just in playbooks in the repo, like a human would use. Executed by qwen 3.6 27B. I still use claude to help define and oversee workflows though. Probably CI is the better primitive, I usually use gitlab though and I felt "put off" by all their native AI features being license gated.
- torgeros 4mo agoI think it is very descriptive for this AI title that the server is not available, HECK, the Domain does not even resolve to an IP... xD
- Pranavsingh431 4mo ago[dead]
- thousandflowers 4mo ago[flagged]
- gaotus 4mo ago[dead]
- zhayujie 4mo ago[flagged]
- zjgkknk 4mo agoI’ve been building something similar for quite a while, with a stronger focus on minimizing dependencies on external services: https://github.com/kvladsrc/gym/tree/main/production https://github.com/kvladsrc/gym/tree/main/production I find it convenient to interact with frontier LLMs through a Kanban board powered by Kanboard. For example, the LLM creates backlog tasks based on alerts from the cluster. I manually move selected tasks from the backlog to Ready, the model picks them up, works on them, and submits a patch for review in the comments. From there, the usual pipeline takes over: CI, LGTM, merge, and CD. Another surprisingly useful part is desktop configuration management, covering everything from the compositor and system tray to text editor configuration with the same pipeline. For once, I genuinely enjoy using Linux on the desktop.