Plugin

Plugin

A plugin is a small add-on program that extends an existing program with a new function, without requiring changes to the main program itself. In the AI world, the term refers to add-on modules that let a chatbot search the web, do calculations, or access external services.

A plugin is a small add-on program that is docked onto a larger program. Afterwards, the larger program can do something it couldn’t do before. It doesn’t have to be rewritten or replaced for this. The comparison to a power drill fits well: the motor always stays the same, but depending on the attachment, the device drills, screws, or sands. The maker of the main program determines exactly where such an attachment may be plugged in and what rules apply there. Everything else can also be contributed by outside developers.

Why software doesn’t have to do everything itself

No development team can foresee everything users might want to do with a program. An image editor should crop passport photos for one person and brighten astrophotos for another. If every conceivable function were built in permanently, the program would be huge, slow, and confusing. Plugins solve this problem by letting everyone load only what they actually need.

For companies, this is also a business model. Entire markets of extensions spring up around popular programs, some free, some paid. The content management system WordPress, which powers a large share of all websites, has tens of thousands of such extensions. This selection is a key reason why users stick with the system. Experts speak of an ecosystem that makes the maker stronger than any single feature.

There is a downside, though. A plugin often runs with the same privileges as the main program. A poorly programmed or deliberately malicious add-on module can therefore steal data or bring down the entire system. Security vulnerabilities in widely used extensions are a common reason for attacks on websites.

The socket in the software

For a plugin to dock in, the main program must offer a defined interface. An interface is an agreed set of commands through which two programs talk to each other. It determines what data the plugin receives and what it is allowed to return. As long as both sides stick to this agreement, the collaboration works, even if the developers have never spoken to each other.

On startup, the main program usually searches a specific folder or a list of installed extensions. It registers every plugin it finds and notes which events should trigger it. When the user then clicks a particular button, the main program briefly hands control over to the plugin. Afterwards, it takes back control itself.

With AI systems, it works similarly, except there the language model makes the decision. It receives a description of what each available tool can do. If someone asks about the current weather, the model recognizes that it doesn’t know this information by heart. Instead, it calls up the matching module and weaves its response into its own text. Today, such modules are more often called tools or function calls rather than plugins, but the principle is the same.

From browser extensions to AI assistants

Plugins are most commonly encountered in browsers, where they are usually called extensions. Ad blockers, password managers, and translation helpers all work according to this pattern. Music programs use them too: an effect that adds reverb to a recording is a standalone plugin. Programmers know them from development environments, where they retrofit additional programming languages.

The term made big waves in tech news in 2023, when OpenAI introduced plugins for ChatGPT. This allowed the chatbot to search for flights, book restaurant reservations, or hand off calculations to a math tool. A year later, this system was replaced by other approaches because it turned out to be too inflexible. However, the underlying idea lives on in current tool interfaces and is now standard among AI assistants.

A common misconception is that a plugin makes the model itself smarter. That’s not true: the language model itself remains unchanged. It merely gains access to information and capabilities from outside. The difference is the same as between knowing more and being allowed to look something up.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.