Skip to content
View in the app

A better way to browse. Learn more.

Universal Devices Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Introducing eisy-ai !!!

Featured Replies

Hello everyone,

I'd like to introduce you to eisy-ai: it can do pretty much anything you can imagine including diagnostics/patterns, and developing, testing, and running plugins for you! Here's the link to [ README.md ]. It's in Beta, and you can install it from the plugin store. And, everything is done right from your eisy-ui!

Notes:

  1. Although we have tested with OpenAI, Grok, and Gemini, most of the development and test was done with Claude. So, we would love to know your experience with other LLMs

  2. We took great care in reducing token count especially for very large installations. That said, depending on the model used, and your installation, you might reach the limits of the context window

  3. Although we have put strict guards for irrecoverable changes, such as deletions, this is still in Beta and it's still AI, so it will make mistakes

  4. We are not collecting any information from you, BUT we may ask you to provide your nucore.prompt.jsonl in case we need to debug something that we cannot reproduce

Very much looking forward to hearing your feedback!

With kind regards,
Michel

@Michel Kohanim I'm trying to connect to a local model but I don't think my configuration is a problem yet because of this error I'm seeing

2026-10-16 19:23:29.051 Thread-9 (__start) udi_interface ERROR EisyaiControllerNode:start: start failed ....

2026-10-16 19:23:29.051 Thread-9 (__start) udi_interface ERROR EisyaiControllerNode:start: [Errno 13] Permission denied: '/usr/home/admin/eisyai'

2026-10-16 19:23:29.051 Thread-9 (__start) udi_interface INFO EisyaiControllerNode:__start: failed processing config ...

2026-10-16 19:23:29.051 Thread-9 (__start) udi_interface.node DEBUG node:setDriver: eisyaicontroll:eisy-ai Reporting set ST to 0 to Polyglot

47 minutes ago, bgrubb1 said:

I dont see it in either PG3 store. Am I missing something ?

It looks like it is only in the eisy Plugins store.

So to fix the permission error here is what I needed to do on the eisy:

[admin@eisy ~]$ mkdir -p /usr/home/admin/eisy-ai/generated_plugins

[admin@eisy ~]$ chmod -R 777 /usr/home/admin/eisy-ai

This seems to fix the log jam for now


Admin Edited for typo, or change in dir name

5 hours ago, sjenkins said:

So to fix the permission error here is what I needed to do on the eisy:

mkdir -p /usr/home/admin/eisyai/generated_plugins

chmod -R 777 /usr/home/admin/eisyai

This seems to fix the log jam for now

Thanks @sjenkins that got me going!

I have a subscription to ChatGPT so with the help of the AI I got it connected to my local Ollama qwen3.5:9b. I have not really done anything with it yet but here is a simple request.eisy ai.png

  • Author

Hello everyone,

Apologies for the delay and leaving the permissions in a buggy state. Permissions are a little tricky:

  1. We wanted eisy-ai to be a complete plugin, and not part of the system. This way, you could just uninstall it

  2. We didn't want to add more OS users, and therefore more passwords to manage, while we worked on getting all users on PKI certificates

  3. The plugin itself is running as plugin_{profile_number} OS user belonging to eisy-ui group. So, whatever it generates are owned by plugin_{profile_number}. We didn't want to give this user sudo permissions to change the ownership/permission of the generated plugins

  4. We wanted the contents of the generated plugin to be accessible via VS Code remotely, so you could do more debugging, stepping, etc. through VS Code

  5. So, we chose admin as the default user for local plugins. But, plugin_{profile_number} does not have permission to the admin home directory

What we are currently working on is to make this work in all situations while not violating any of our requirements above.

With kind regards,
Michel

  • Author
12 hours ago, tazman said:

I have a subscription to ChatGPT so with the help of the AI I got it connected to my local Ollama qwen3.5:9b.

@tazman , that's wonderful news. Very important notes for plugin generation:

  1. I don't think 9b-parameters is enough. The context window should be fine

  2. You also need an API from brave or tavily for AI search. The way the plugin works is to search the web for code snippets or publicly available APIs. So, without those, it can only develop very simplistic things that don't require any outside API knowledge

With kind regards,
Michel

Having a thick 'Tin foil hat' when it comes to ai , even though I use it at work all the time I decided to set up llama on a pretty capable macmini.

It is an M4pro and has 64G of memory, its day job is running plex.

It worked just fine, but even with this setup its painfully slow on the first interaction and only really slow on further interaction.

Very sensitive to which model is chosen as far as speed goes. Saying all that, it works! Got it to check out statuses and control some stuff. It even made a program when I asked it to flash the lights in a room (that creeped me a bit). This has lots of potential.

Some learnings:

  1. the ```json wrap is required (yes its in the example but I didn't think it would need that)

  2. provider is llamacpp for the self serve llama

  3. model is the full id , like "ggml-org/gpt-oss-20b-GGUF:MXFP4"

  4. url is your local http://10.0.10.4:9931 in my case

  5. not much feedback from the agent when its talking to the llm, hard to tell the difference between locked up and thinking. I kept a tail on the logs to understand if errors were coming.

  6. the ct number needs to be north of 100k or it will think for a long time and fail

hope this helps!

Edited by sjenkins

1 hour ago, Michel Kohanim said:

@tazman , that's wonderful news. Very important notes for plugin generation:

  1. I don't think 9b-parameters is enough. The context window should be fine

  2. You also need an API from brave or tavily for AI search. The way the plugin works is to search the web for code snippets or publicly available APIs. So, without those, it can only develop very simplistic things that don't require any outside API knowledge

With kind regards,
Michel

Yes I struggle with the local models because I only have 16GB of vram. Would you consider adding support for the monthly subscription plans? Hermes agent supports the subscription plans by sending you to their site to authorize.

I second the monthly subscription plan reccomendation.

Would be nice to have that available along with a more complete "how to" configuration to help more of us get our feet wet

  • Author

Hello everyone,

High level information about prompts, cache, and context window in eisy-ai:

  • The reason the first iteration is really slow is because all tokens MUST be processed. Tokens come from the prompt as well as the list of devices (included in the prompt). If nothing changes (no new devices, scenes, etc.), subsequent calls will be much faster. With Claude, you can put cache boundaries around static things so that at least some parts are cached. I have yet to see cache boundaries work with llama.cpp

  • Smaller models have a context windows of 128 to 200K. This is sufficient for small installations. For larger installations, you will hit the context window limit on the 2nd or 3rd iteration. You can configure these parameters in the Configuration json:
    max_iterations - the number of iterations before eisy-ai gets rid of old context
    max_turns - max number of turns per iteration (be careful with this when you use eisy-ai for plugin development as it may run out of turns before the plugin is created)

Please note that everything is open source. So, we do welcome any input you may have:
1. The core called NuCore.ai: https://github.com/NuCoreAI/nucore-ai
2. The plugin itself: eisy-ai

With kind regards,
Michel

  • Author

Hello everyone (again)!

Regarding monthly subscriptions, we thought A LOT about this, these are the reasons we decided against it for now, and till we have more data:

Option 1 - an isolated cloud infrastructure where we keep the API keys (it cannot be included in the plugin itself because of obvious reasons). This means that the plugin needs to somehow get the API Key from the cloud infrastructure without letting it be leaked. Of course, since everything is open source, one could simply use a Python debugger, step through the code, and get the API Key. Therefore, this meant that all our AI calls must go through the portal. Very costly

Option 2 - Get a unique API Key for each customer. Massive development effort especially trying to tie API calls per customer to their usage.

Once we have more data, we'll figure out the least costly and most optimal path forward.

Thanks again.

With kind regards,

Michel

1 hour ago, Michel Kohanim said:

Hello everyone (again)!

Regarding monthly subscriptions, we thought A LOT about this, these are the reasons we decided against it for now, and till we have more data:

Option 1 - an isolated cloud infrastructure where we keep the API keys (it cannot be included in the plugin itself because of obvious reasons). This means that the plugin needs to somehow get the API Key from the cloud infrastructure without letting it be leaked. Of course, since everything is open source, one could simply use a Python debugger, step through the code, and get the API Key. Therefore, this meant that all our AI calls must go through the portal. Very costly

Option 2 - Get a unique API Key for each customer. Massive development effort especially trying to tie API calls per customer to their usage.

Once we have more data, we'll figure out the least costly and most optimal path forward.

Thanks again.

With kind regards,

Michel

I think there might be a misunderstanding I meant to be able to use my ChatGPT Pro subscription plan to use the online ChatGPT models. Hermes allows this by sending you to the ChatGPT website to authenticate the account.

25 minutes ago, Michel Kohanim said:

@tazman ,

Can't you get API keys from your ChatGPT account?

With kind regards,
Michel

No the monthly plans don't seem to work that way.

You can generate an OpenAI API key by visiting the OpenAI Platform Dashboard. [1]

Note that a ChatGPT Plus or Pro subscription does not include free or shared access to the developer API; API usage is billed separately on a pay-as-you-go credit system.

@Michel Kohanim I'm not interested in more fees that is the whole point of the monthly subscription. I'm not a programmer unfortunately so I don't know how all this works when I used the Ai to setup this plugin it suggested making a skill to access eisy from Hermes. I don't even know what use I will get out of this I just like to try things. If it can not be done I'm OK with that to.

  • Author

@tazman ,

You will need to pay regardless! For instance, "Sign in with ChatGPT" by itself grants no API usage. Since OpenAI's DevDay (Sept 29, 2026), a separate "plan usage" feature lets Plus/Pro users authorize a specific participating app to run eligible requests against their ChatGPT plan instead of an API key, subject to a per-app weekly cap the user configures.

Claude is a 100% no go. They stopped all OAuth authorizations in Jan 2026.

Grok is a possibility but you need their X-Premium account.

In short, you will pay regardless.

Regarding whether this is the right tool for you, questions that you should ask yourself:

  1. Do I need any diagnostics capabilities such as why things run or do not run?

  2. Do I need help with programming?

  3. Do I need help with scenes?

  4. Do I have network resources that are uni-directional but I want to convert them to bi-directional?

  5. Do I have a device for which I want to someone (or something) make a plugin that I can use?

If the answer to all the above is no, then you don't need this plugin.

With kind regards,
Michel

@Michel Kohanim I picked my paid plan and I'm happy with my choice so far but always willing to reevaluate. I did try creating a plugin with Ai but it was an item that I was having trouble with the integration in HA so probably not the best gauge and that gave me a doubt with what to expect. I guess my answer to most of your questions are no normally but I do do run into rare occasions where I get stuck or think it would be nice to try something I can't handle on my own. Talking about this just gave me an idea to see if I can get this connected to Hermes which would give me access to my paid online Ai subscription. I will definitely be keeping my eye on your Ai plugin and keep tinkering on my end to see how it goes. Thanks for your guidance an all your hard work keeping UDI my main goto for my home automation needs.

  • Author

@tazman ,

  1. Integration with HA is definitely a good use case

  2. I have only played with Hermes so I do not know it's capabilities. As I mentioned, everything we have is open source: all the prompts, tools (for AI), and libraries. So, maybe you can get Hermes to go through the code and figure out how to make a skill out of it that you can reuse

With kind regards,

Michel

I tried to add the json object but get permission error after restart - tried to do chmod, but it still exists

BTW - Seems there is a "free" api from google/gemini https://aistudio.google.com/api-keys - as I have not been able to get access, I cannot validate it works

I think the readme.md shoudl let users know how to apply the json object - it is not obvious if you are not a programmer

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.