{"id":50187641,"url":"https://github.com/dingent/dingent","last_synced_at":"2026-06-01T12:00:46.738Z","repository":{"id":307926234,"uuid":"1027439225","full_name":"Dingent/Dingent","owner":"Dingent","description":"A lightweight, user-friendly LLM Agent framework focused on simplifying data retrieval application development.","archived":false,"fork":false,"pushed_at":"2026-05-25T09:29:47.000Z","size":32253,"stargazers_count":51,"open_issues_count":0,"forks_count":6,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-25T11:29:12.094Z","etag":null,"topics":["agent","agents","ai","ai-agents","framework","langchain","langgraph"],"latest_commit_sha":null,"homepage":"https://ngdc.cncb.ac.cn/dingent/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dingent.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-07-28T02:37:57.000Z","updated_at":"2026-05-25T09:29:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"f04b6711-d2bb-44f0-987a-f45d336e9f08","html_url":"https://github.com/Dingent/Dingent","commit_stats":null,"previous_names":["saya-ashen/dingent","dingent/dingent"],"tags_count":90,"template":false,"template_full_name":null,"purl":"pkg:github/Dingent/Dingent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dingent%2FDingent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dingent%2FDingent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dingent%2FDingent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dingent%2FDingent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dingent","download_url":"https://codeload.github.com/Dingent/Dingent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dingent%2FDingent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33773782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-01T02:00:06.963Z","response_time":115,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","agents","ai","ai-agents","framework","langchain","langgraph"],"created_at":"2026-05-25T11:02:33.673Z","updated_at":"2026-06-01T12:00:46.732Z","avatar_url":"https://github.com/Dingent.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e This project is currently under **rapid development**. For the latest and most accurate documentation, please visit:\n\u003e **[ngdc.cncb.ac.cn/dingent](https://ngdc.cncb.ac.cn/dingent/)**\n\u003e\n\u003e 最新文档和使用指南，请访问：\n\u003e **[ngdc.cncb.ac.cn/dingent](https://ngdc.cncb.ac.cn/dingent/)**\n\n\u003cdiv align=\"center\"\u003e\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n# Dingent\n\n**A powerful, yet user-friendly LLM Agent framework designed to streamline the\nentire development lifecycle of intelligent applications.**\n\n\u003c/div\u003e\n\n**Dingent** is an agent framework whose core goal is to simplify the process of\ncreating any application powered by Large Language Models (LLMs). We provide a\nconcise yet powerful toolkit... to build applications capable of automating\ncomplex workflows, interacting with various services, and performing intelligent\nanalysis. For any custom logic or integration, Dingent offers a flexible\nframework that developers can easily extend by writing custom code.\n\n### Chat Interface\n\n|          Chat View 1          |          Chat View 2          |\n| :---------------------------: | :---------------------------: |\n| ![chat1](./assets/Chart1.png) | ![chat2](./assets/Chart2.png) |\n\n### Admin Dashboard\n\n|             Dashboard - Overview             |           Dashboard - Workflows            |\n| :------------------------------------------: | :----------------------------------------: |\n|   ![overview](./assets/admin-overview.png)   | ![workflows](./assets/admin-workflows.png) |\n|           **Dashboard - Settings**           |            **Dashboard - Logs**            |\n|   ![settings](./assets/admin-settings.png)   |      ![logs](./assets/admin-logs.png)      |\n|          **Dashboard - Assistants**          |           **Dashboard - Market**           |\n| ![assistants](./assets/admin-assistants.png) |    ![market](./assets/admin-market.png)    |\n\n## 🎯 Why Choose Dingent?\n\nWhen building LLM applications, developers often spend a significant amount of\ntime on \"glue code\": creating backend services, wrapping APIs, setting up\nfrontend-backend communication... These tasks are tedious and repetitive.\n\n**Dingent's core value lies in:**\n\n- **No More Repetition**: We package the best practices for backend services\n  (LangGraph), data interfaces (**Plugin System**), a chat interface\n  (CopilotKit), and a **full-featured admin dashboard** into a single command.\n  You no longer need to build everything from scratch and can start writing your\n  core business logic immediately.\n\n* **Configuration via UI**: Forget manually editing complex configuration files.\n  With Dingent's integrated admin dashboard, you can manage assistants, build\n  workflows, and configure settings through an intuitive graphical interface.\n* **Extensible and Versatile**: While Dingent began with a focus on data\n  retrieval, it has evolved into a powerful general-purpose framework. Its\n  modular architecture and robust plugin system allow you to build any type of\n  agent—from simple task automation bots to complex multi-agent systems. Dingent\n  provides the solid foundation, you bring the vision.\n* **Core Features Built-In**: We believe a simple and easy-to-use agent\n  shouldn't require users to spend a lot of time maintaining plugins. Therefore,\n  we are committed to integrating features the community deems important\n  directly into the framework. If you think a feature is crucial, we encourage\n  you to open an Issue or PR. This directly reflects our core mission of \"making\n  Agents simpler for users.\"\n\n- **Smooth Learning Curve**: You only need a basic understanding of Python to\n  build powerful, general-purpose agents, without needing to be an expert in\n  LangGraph or FastAPI. At the same time, we retain the flexibility to expand\n  functionalities, ensuring the framework can fully support custom development\n  when needed.\n\n## ✨ Features\n\n- **Instant Project Setup**: Simply run `dingent dev` in any directory to\n  initialize a new project.\n- **Integrated Admin Dashboard**: A powerful, React-based web interface to\n  visually manage your assistants, workflows, plugins, and settings.\n- **Bundled Frontend**: A pre-built, standalone Next.js chat interface is\n  included out-of-the-box. No need for manual setup or compilation.\n- **Lightweight and Easy to Use**: A clean design and a gentle learning curve\n  let you focus on business logic rather than tedious configuration.\n- **Guest Mode Support**: Allow unauthenticated users to chat with AI agents\n  without requiring registration. See\n  [Guest Mode Documentation](./GUEST_MODE.md) for details.\n\n## 🚀 Quick Start\n\nJust download the latest executable for your platform from the releases page and run it.\n\n\n# Run the development server\nuvx dingent dev # or uvx dingent run\n```\n\nThe first time you run this command, Dingent will ask if you want to create a\n`dingent.toml` configuration file, officially turning the directory into a\nDingent project root.\n\nThe `dev` command will start all necessary services:\n\n- **Frontend Chat**: Accessible at\n  [http://localhost:3000](http://localhost:3000)\n- **Backend API**: Running at [http://localhost:8000](http://localhost:8000)\n- **Admin Dashboard**: Accessible at\n  [http://localhost:8000/admin](http://localhost:8000/admin)\n\nYour project is now live\\! You can now:\n\n- **Configure your application**: Open the admin dashboard at\n  `http://localhost:8000/admin` to create assistants, build workflows, and\n  configure your LLM settings.\n- **Add custom tools**: Place your custom MCP server plugins into the `plugins/`\n  directory.\n- **Interact with your agent**: Start chatting with your agent through the\n  frontend at `http://localhost:3000`.\n\n## 🐳 Docker Deployment\n\nDingent can also be deployed using Docker and Docker Compose for easy setup and deployment.\n\n### Prerequisites\n\n- **Docker**: [Install Docker](https://docs.docker.com/get-docker/)\n- **Docker Compose**: [Install Docker Compose](https://docs.docker.com/compose/install/)\n\n### Quick Start with Docker\n\n1. Clone the repository:\n\n```bash\ngit clone -b Docker-Dev https://github.com/littleLice/Dingent.git\ncd Dingent\n```\n\n2. Start the services using Docker Compose:\n\n```bash\ndocker-compose up -d\n```\n\nThis will pull the pre-built images and start both the backend and frontend services.\n\n3. Access the services:\n\n- **Frontend Chat**: [http://localhost:3000](http://localhost:3000)\n- **Backend API**: [http://localhost:8000](http://localhost:8000)\n- **Admin Dashboard**: [http://localhost:8000/admin](http://localhost:8000/admin)\n\n### Stopping the Services\n\nTo stop the services, run:\n\n```bash\ndocker-compose down\n```\n\n### Rebuilding the Services\n\nIf you make changes to the code and need to rebuild the Docker images:\n\n```bash\ndocker-compose up -d --build\n```\n\n## 🏛️ Project Architecture\n\nA Dingent project has a simple and intuitive structure, managed automatically\nfor you:\n\n```plaintext\nmy-awesome-agent/\n├── 📄 dingent.toml     # Main project config (ports, model, etc.). Marks the project root.\n├── 📁 config/          # Stores all application configurations managed by the dashboard.\n│   ├── 📁 assistants/\n│   ├── 📁 plugins/\n│   └── 📁 workflows/\n└── 📁 plugins/         # Directory for your custom tool plugins (e.g., MCP servers).\n```\n\n- **`dingent.toml`**: The single source of truth for your project's core\n  settings. The presence of this file tells Dingent commands that they are in a\n  project directory.\n- **`config/`**: This directory holds the configuration for your assistants,\n  plugins, and workflows. You typically won't need to edit these files manually,\n  as they are managed through the **Admin Dashboard**.\n- **`plugins/`**: This is where you add your own functionality. Place any\n  MCP-compatible server in this directory, and Dingent will automatically\n  discover and integrate it.\n\n## 🗺️ Roadmap\n\n- **✅ 1. Documentation \u0026 Tutorials**\n\n  - [x] **Basic Docs:** Installation and configuration guides.\n  - [x] **Core Concepts:** In-depth explanations of key features and design.\n  - [ ] **Plugin Dev Guide:** How to build your own plugins.\n  - [x] **End-to-End Tutorials:** Complete, step-by-step project examples.\n\n- **✅ 2. Admin Dashboard**\n\n  - [x] **Core UI**: Fully functional dashboard for managing assistants,\n        workflows, and settings.\n  - [x] **Plugin Management**: Add/remove plugins directly from the UI.\n  - [x] **Advanced Workflow Editor**: Visual node-based tools for building complex\n        agent behaviors and logic flow.\n\n- **✅ 3. Plugin System**\n\n  - [x] **Auto-Discovery**: Automatically loads plugins from the `plugins/`\n        directory.\n  - [ ] ~~**Plugin CLI:** Install and manage plugins via the command line.~~\n        (Superseded by UI management in the Admin Dashboard)\n  - [x] **Plugin Marketplace:** Discover, search, and dynamically mount community\n        plugins via the dashboard.\n\n- **✅ 4. Core Plugins**\n\n  - [x] **Database Plugin:** Connect to mainstream databases via specialized Text2SQL engines.\n  - [x] **Knowledge Base Q\\\u0026A Plugin:** Intelligent retrieval and QA using entity-enhanced RAG and vector databases.\n  - [x] **Heterogeneous Integration:** Out-of-the-box support for cross-platform data sources (e.g., GenBase, iDog, BioKA).\n\n- **✅ 5. Core Architecture \u0026 Deployment**\n\n  - [x] **Dynamic Workflow Engine:** `GraphFactory` for zero-code, Just-In-Time (JIT) compilation of multi-agent state machines.\n  - [x] **MCP Native:** Deep integration with the Model Context Protocol for decoupled, decentralized tool execution and sandboxing.\n  - [x] **Zero-Config Deployment:** Heterogeneous dual-process packaging (Next.js + PyInstaller) for seamless cross-platform setup.\n\n## 🤝 How to Contribute\n\nWe created this project to make Agents simpler for users, not to build yet\nanother complex development framework. Therefore, we warmly welcome and heavily\nrely on community contributions to shape the future of **Dingent**.\n\nIf a feature is important to you, we strongly encourage you to discuss it by\nopening a GitHub Issue or contributing code directly through a Pull Request. Our\ncore philosophy is that the developer community should decide which features are\nbuilt into the software, rather than leaving users to maintain their own\nplugins\\!\n\nIf you share our vision and wish to contribute code, please follow these steps:\n\n1. Fork this repository.\n2. Create a new feature branch (`git checkout -b feature/YourAmazingFeature`).\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`).\n4. Push your branch to GitHub (`git push origin feature/YourAmazingFeature`).\n5. Create a Pull Request and clearly describe the value of your feature.\n\nWe believe that through our collective efforts, Dingent can become a truly\npowerful and \"out-of-the-box\" tool.\n\n## 📄 License\n\nThis project is licensed under the [MIT License](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdingent%2Fdingent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdingent%2Fdingent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdingent%2Fdingent/lists"}