Open-source AI agents: licenses, hosting and control
Compare agent frameworks and self-hosted application platforms by license, deployment, model access and evidence. Learn what running locally does and does not prove.
Separate four decisions
An open-source code license, a self-hosted application, a locally running model and an offline workflow are different properties. You can run an application on your own server while sending prompts to a hosted model. You can also run a local model while connectors reach external services. Choose each part explicitly instead of treating the word local as a privacy or cost guarantee.
Framework or finished application?
CrewAI documents Crews for collaborative agent tasks and Flows for structured, event-driven execution. LangGraph documents an orchestration runtime combining deterministic and model-driven steps with persistence and human intervention. Dify documents a visual LLM application platform. They operate at different levels: a framework requires you to build more of the application yourself.
| Project | Documented role | Repository license observation | Selection implication |
|---|---|---|---|
| CrewAI | Crews and Flows for agent workflows | Permissive MIT-style license text in the inspected repository | Evaluate code, tools and deployment; hosted services and model terms are separate. |
| LangGraph | Stateful orchestration runtime | MIT license in the inspected repository | Plan application code, state storage and operational visibility. |
| Dify | Visual LLM application and workflow platform | Modified Apache 2.0 terms with additional conditions | Read the multi-tenant and frontend-branding conditions before commercial use. |
Why downloadable code is not a blanket license
A project may describe itself as open source while its own license contains additional conditions. The table preserves the inspected terms rather than certifying compliance with a legal or open-source definition. Model weights, plugins, datasets and hosted services may have different licenses. Inspect the version you actually deploy; the current main branch can change after this review.
Trace the real data path
Draw the route from the input to document processing, embeddings, model inference, tool calls, logging and storage. For each step, record its destination and credentials. A local user interface cannot by itself establish that those steps stay on the device. Test with synthetic material first and verify where your chosen configuration sends it.
Use existing evidence at its actual scope
The linked uAgentKit profiles contain their own native runtime or model records where available. A failed local-model answer is evidence about that input, model and configuration; it is not a universal verdict on the framework. A control-flow check without a model can verify a branch or approval path, but it cannot establish generated-answer quality. The evidence center keeps those types separate.
Account for maintenance, not just API charges
Self-hosting shifts work to the operator: upgrades, backups, access control, model capacity and failure diagnosis still need an owner. A zero API charge does not measure hardware, electricity or staff time. Before adoption, prove that you can reproduce one useful result and recover the workflow after a failure. Prefer a smaller configuration you can inspect to a complex agent team whose tool behavior is unclear.
Continue your comparison
CrewAI profile and recorded cases →
LangGraph profile and runtime evidence →
Dify profile and preparation limits →
Sources supporting this guide
Research method & original evidence · Who operates uAgentKit · Commercial disclosure