gitmyhub

rivet

TypeScript ★ 4.6k updated 18d ago

The open-source visual AI programming environment and TypeScript library

Rivet is a desktop app where you build AI agents by drawing a visual diagram instead of writing code, then run those agents inside your own app with a small TypeScript library.

TypeScriptNode.jsNPMsetup: easycomplexity 3/5

Rivet is a desktop application and programming environment for building AI agents visually. Instead of writing code to chain together prompts and AI calls, you draw the logic as a graph, connecting nodes that represent different steps. The result is a visual diagram that shows exactly how your AI system works, which makes it much easier to understand, debug, and share with others.

The application works with several AI providers out of the box. You can connect to OpenAI models like GPT-3.5 and GPT-4, Anthropic's Claude family of models, and AssemblyAI for converting speech to text. It also supports storing and searching information using OpenAI Embeddings and Pinecone, which lets you build agents that can look things up from a large document collection or knowledge base.

Beyond the visual editor, Rivet ships a TypeScript library called Rivet Core that developers can drop into their own applications. Once a graph is designed in the desktop app, the library can run it inside a product without the user ever opening the visual tool. This means a non-technical person or designer can build the AI logic in the visual environment, and a developer can then wire it into a live product with a small amount of code. The library is published on NPM under the names @ironclad/rivet-core and @ironclad/rivet-node.

Installation is straightforward. Prebuilt downloads are available for macOS, Windows, and Linux. There is no server to set up for the desktop app itself. Running it from source is covered in the contributing guide for anyone who wants to modify the code.

The project is open source and welcomes contributions of all kinds, including bug reports, documentation improvements, and feature suggestions. A Discord server is available for questions and community discussion.

Where it fits