Files
Termix/plugins/ai

AI Assistant

An AI assistant that can read your hosts, snippets, fleets, alerts and automations, and suggest changes for you to approve.

Features

  • Chat with an assistant that can read your hosts, snippets, fleets, alerts, automations, workspaces, network graph and homepage.
  • The assistant suggests changes, and nothing is applied until you approve it.
  • Can run read-only diagnostic commands on a host if you allow it.
  • Open the assistant from the terminal toolbar with the current session as context.
  • Works with Ollama, Anthropic, OpenAI, Google Gemini and any OpenAI compatible provider.

Settings

Admin

  • AI assistant: let users turn the assistant on. While this is off it is hidden for everyone.
  • Allowed private AI hosts: hosts on your private network a provider may point at, such as a self-hosted Ollama.

User

  • Enable the AI assistant: turn the assistant on for yourself.
  • Allow read-only diagnostic commands: let the assistant run safe commands on your hosts.
  • Providers: the AI providers, models and API keys you use.

Host

  • Enable AI Assistant: allow the assistant to work with this host.

Permissions

  • ai.use: Open the assistant and ask it things. Admins and users have it by default.
  • ai.manage_providers: Add, edit and remove AI providers and their API keys. Admins and users have it by default.
  • ai.apply_proposals: Let the assistant carry out the changes it suggests. Admins and users have it by default.
  • ai.services.use: Let other features call the assistant for you. Admins and users have it by default.
  • ai.secrets.share: Let other features use the stored AI API key without seeing it. Admins and users have it by default.

Services

Uses from other plugins:

  • workspaces.saved, network-topology.graph, snippets.access, fleets.access, terminal.history, automations.access and homepage.items to read your data. Each one is optional.

Development

npm run build      # build into dist/
npm run test       # run this plugin's tests
npm run typecheck  # type-check this plugin