NS8 Hermes Agent module

Hi all,

I’d like to share a new NS8 module I’m working on: Hermes Agent.

What is Hermes Agent?

Hermes Agent is an open-source autonomous agent from Nous Research. It is designed to run on your server, keep context over time, and become more capable as it learns, rather than being just a local chatbot or IDE copilot.

Why I made this NS8 module

I built this module because I wanted the easiest way to deploy one or multiple Hermes agents on NethServer 8. Every istance of the module manages one or more Hermes Agent runtimes.
The goal is to make setup and day-to-day management much simpler for NS8 users.

How to try it

Install it:

add-module ghcr.io/stell0/hermes-agent:0.1.0 1

Than from NS8 UI configure

  • a virtualhost for the agent dashboard like hermes.example.com
  • select a user domain from the dropdown, which binds the module to that domain and populates the allowed_user selectors for each agent
  • one or more agents with unique allowed_user values from the selected user domain

Configuration will create the agents and publish the dashboard at https://hermes.example.com/ with per-agent authentication and routing.

From dashboard, you can setup a Telegram and everything else.

Future development

Planned improvements include:

  • NethForge deployment

  • default SKILLS based on role

  • Open WebUI for chatting with the bot

  • multiple users for one bot, and multiple bots for one user

  • easier integration with other NethServer 8 modules

  • multiple agent profiles for each agent

Known issues

  • the Dashboard Web UI is build every time the container starts, so it takes a bit of time to be available after the agent service is started.

  • the module does not support multiple agents with the same allowed_user value.

  • after changing the configuration from dashboard, the agent service needs to be restarted to apply the new configuration. At the moment it can be done with the /restart command, but the first time you coinfigure a messaging platform you need to restart the service from terminal with systemctl --user restart hermes@<id>.service or saving changes from NS8 ui

  • At the moment, saving changes from NS8 UI restart all the agents, but in the future we will implement a smarter logic to restart only the agent that needs it.

Feedback and contribution

Feedback, testing, ideas, and contributions are very welcome.

If you try it, I’d be interested in feedback on the deployment flow, the UI, and how this should integrate with the rest of the NethServer 8 ecosystem.

Repository: Stell0/ns8-hermes-agent.

Disclaimers:

  1. I’m a Nethesis developer, but this isn’t a Nethesis supported application
  2. Agents are wild. Never trust them with sensitive data
  3. This is not production ready and absolutely not foolprof, know what you are doing when you deploy it
  4. This is not stable, expect breaking changes
7 Likes

Thank you for providing this.
Quick note: The installation went smoothly and I’ve managed to set up the first agent (Developer). I can access the dashboard.

I can’t say much about using it yet, as I still feel a bit unsure. I have no experience with agent-based AI and am simply curious.

I’m now looking forward to seeing what experiences are shared here in the community. I hope my appetite will grow as I go along.

I don’t know if my hope is justified. But I wish there were a way to get a consolidated analysis of the various DMARC reports (xml.gz attachments to incoming emails) from different email providers.

2 Likes

Thank you @capote

I’ve added some tips about first configuration on README
If you have a ChatGPT Plus account you can setup it without requiring an API key and is really straightforward and cheapest option at the moment. Use tha command line cli for configuration, it will guide you. The bare minimum is setting up a LLM provider than you can access the CLI and chat with your bot. Settin up also a messaging platform like Telegram is really helpful (also easy and free).

Mattermost integration works fine too, but is a bit more complex.

I wish there were a way to get a consolidated analysis of the various DMARC reports (xml.gz attachments to incoming emails) from different email providers.

It can access emails and I think your bot should be able to set up this. Just ask him to do it

1 Like

Thank you.
I don’t own any payed AI-account (merely misusing a Perplexity Pro plan as a better search engine).
However, I have installed an Ollama instance on my MacBook Pro, and I have already considered installing one on my Proxmox as well.

Would that be an option?

1 Like

Not really, you can use local models, but you need a pretty good one to do something useful.
BTW you can setup an OpenRouter account and pay per use.
Nous Research have their API portal that should give all the service that Hermes could use (web search, image generation, TTS, STT. The more services it can access to the more powerful it is.
I haven’t tried their portal yet, but I’ll do it soon as its a very good way to found their development.

1 Like

I’d like to start with Ollama first and gain some initial experience. I’ve also configured the API key and Base-URL. But how do I specify an LLM modell available in Ollama?

At the moment, it’s still routing to Anthropic Claude?

API call failed (attempt 1/3): NotFoundError [HTTP 404]
   🔌 Provider: ollama-cloud  Model: anthropic/claude-opus-4.6
   🌐 Endpoint: http://192.168.3.155:11434/v1
   📝 Error: HTTP 404: model 'anthropic/claude-opus-4.6' not found
   📋 Details: {'message': "model 'anthropic/claude-opus-4.6' not found", 'type': 'not_found_error', 'param': None, 'code': None}
⚠️ Non-retryable error (HTTP 404) — trying fallback...
❌ Non-retryable error (HTTP 404): HTTP 404: model 'anthropic/claude-opus-4.6' not found
❌ Non-retryable client error (HTTP 404). Aborting.
   🔌 Provider: ollama-cloud  Model: anthropic/claude-opus-4.6
   🌐 Endpoint: http://192.168.3.155:11434/v1
   💡 This type of error won't be fixed by retrying.

I don’t use it, so I’m not sure, but this should work:

use ollama serve

to have your endpoint
use podman exec -it hermes-1 hermes model
choose: Custom endpoint

Maybe you need to restart it (not sure)

systemctl –user restart hermes@1

1 Like

I found the right and easy wa to setup the default modell within th porta :face_with_spiral_eyes:l:
Config:General

I had mistakenly expected it to be in the ‘Keys’ section for ollama.

well the dashboard isn’t great, they released it just last week. I think we’ll see a lot of improvements ahead

1 Like

Wikified

1 Like

Wow, what a great Release,

I always thought hermes didnt have UI, so never put too much thought into it, now i can try.

Could you prioritise OpenwebUI, since alot more other cool stuff can be done with it.

I Also think, its time to have LiteLLM as an NS8 Module

We now have agent0, I saw somewhere an Unannounced Openclaw Module.

For those looking for cheap OSS inference: CrofAI - Pricing got you covered

But TBH, a single sub nowadays doesn’t cut it.

2 Likes

I can’t really judge this from a professional perspective, but it seems to me that Paperclip might also be worth a look.

I think, cloning technology is almost here.
Can you clone yourself with AI. Your thoughts, philosophies, approach, styles, etc.
then put that Agent to Work.

We use Dokploy and coolify extensively to deploy websites, and web apps we build, for prod and demo.
We build, and commit to github
github actions, takes over, he site is deployed, and updated.

recently, Dokploy Added a Comprehensive MCP, which means, the deployment, is an end to end process, without Human in the Loop.

DNS, can now be written to file, Pushed to git, audited by AI, actions validate, Push Updates to DNS provider, Site is built with another agent, committed and pushed, Now we can create Research agents, for market an competitor analysis, Automated dashboard creations for ingestation

an agent that does social media posting (kilo uses one) and responds accordingly.
anaother that gets user feedback, and docuemnts it as issue

an agent that reviews the issues, does market analysis, assigns it to build agent, that implements, and the solution is built.

WHERE THE HECK ARE WE HEADING TO?
AGI/ASI was never a single Model

1 Like

GitHub - NousResearch/hermes-paperclip-adapter: Paperclip adapter for Hermes Agent — run Hermes as a managed employee in a Paperclip company · GitHub yeah

My Hermes bot made a pr for this yesterday (good boy), but it still need some work.

Maybe I’ll be able to make it in the weekend

There is this, for populated any UI you want into a single dashabord using AI,
agent0ai/space-agent: The agent that re-shapes the Space

widgets for everything

Can we pair this module generator, @kemboielvis22 NSgeniusdynamics/ns8-module-generator: NEthserver 8 Modules generator, that takes an existing compose yaml file and converts it into a nethserver 8 module

With knowledge from All other Modules, to Create a Comprehensive Skill, for Building NS8 Modules?

Did it build on its own, or did it commands, Claude/Opencode or similer agents to do the works.

@mrmarkuz Don’t be left behind :winking_face_with_tongue:

at the moment it’s quite hard, but for building ns8-hermes-agent i created a NS8_RESOURCE_MAP.md in the repo and in the AGENTS.md I told to “browse the authoritative docs, and gather similar code patterns or prior art”
Thats works a bit, but I’m not really satisfied.
I’m learning that by doing it and I’m refining my agentic engineering skills while doing it.
BTW we decided @ Nethesis to start including our agents and skills files in the repositories, I hope that the agentic engineering knoledge that we’re building compounds.
RN if you try to use an agentic harness to change ns8-hermes-agent it should know what to do as those files are in the repository and maintained. This repo is a kind of experiment for that.

It can do both, it has skills for using them. But I haven’t experimented yet to use another harness inside hermes

Nice Nice
I will test this today an check where i can improve and it to be able to work with the ns8 module genarator