transitive-bullshit / agentic

AI agent stdlib that works with any LLM and TypeScript AI SDK.
MIT License
16.07k stars 2.11k forks source link

Project transition from ChatGPT SDK to Agentic #644

Open transitive-bullshit opened 1 month ago

transitive-bullshit commented 1 month ago

This repo started as an experiment to enable hackers to access the unofficial ChatGPT API way back when ChatGPT was first launched at the end of 2022. I had a lot of fun playing cat & mouse with OpenAI's security team 😂 The project's gone through many changes since then, but ever since OpenAI released their official chat completions API, this project hasn't been particularly useful when you could use the official openai sdk or a lightweight alternative like openai-fetch (which I'm also a contributor to and endorse 💯 ).

I've spent the past year since then working on various private TS AI DX experiments and am finally happy to be making some of them public with this initial release and rebrand of the OSS project to Agentic. The license stays the same (MIT), and you can still access the previous major version of this project under the chatgpt-api branch.

My main goal with Agentic is to provide OSS building blocks for TypeScript AI engineers that will hopefully prove useful regardless of which LLM or AI SDK you're using.

When I was building the first version of Agentic, I started off with a more ambitious plan of building "Next.js for AI agents", but I quickly realized that imho this was premature. The only thing worse than no abstraction is the wrong abstraction, and in order to build a world-class DX middleware layer like this, you really need to be building on top of stable foundations. Like Next.js building on top of React & the web. Or like Kubernetes building on top of Docker & Linux. With the speed that AI is moving today, building this type of general purpose AI SDK would've yielded another kitchen sink framework like LangChain / LlamaIndex. Don't get me wrong; these projects are amazing, but it really didn't match what I had set out to do, and to me the DX side of things is extremely important.

So I decided to pivot and focus on building smaller OSS agentic building blocks that would be useful regardless of how the model capabilities change, which LLM you're using, and which AI SDK you're using.

The first Agentic release is the @agentic/stdlib package which provides a standard library of common AI functions which are optimized for both normal TS-usage as well as LLM-based apps. These types of functions are fundamental to building AI agents, and they're the type of standard primitive I think the TS AI community will really benefit from.

Expect more Agentic packages soon.

I'd love to hear thoughts & feedback from the community on this new direction – especially if you have ideas on TS AI primitives you'd like to see. Feel free to DM me on Twitter or reply to this issue directly.

Thanks! 💕