parlant
AGENTS.md18k starsChanged 22 months agoApache-2.0View on GitHub
This is the main repo of Parlant (https://parlant.io). Parlant is a vibe-coding platform for chat agents that talk to customers. Someone describes how their agent should behave, and their coding agent implements it against Parlant's Python SDK. Parlant provides the rest: an engine that keeps the agent on those rules in every conversation, plus the parts every customer-facing agent needs — a chat widget, human handoff, testing and hosting. Three things follow from that, and they apply to every change…
Trending
Steady talk.about the whole repository
Who's talking about emcie-co/parlant
- Tech With Tim“How I Built a Full-Stack AI App in 5 Hours (Agents, Streamlit, Python & More)”YouTube · Jan 6, 2025 · 34k views
- Fahd Mirza“Run Parlant with Ollama Locally - Control Your AI Agents”YouTube · Aug 26, 2025 · 3.1k views
- Angel Poon“I Can't Believe How This Founder Turned His Life Around. 🧘”YouTube · Aug 21, 2025 · 857 views
- Prateek Singh“Control Agent Behavior in Production using Parlant”YouTube · Apr 17, 2026 · 715 views
- GitHub Daily Trend AI Podcast“GitHub - emcie-co/parlant: The behavior guidance framework for customer-facing LLM agents”YouTube · Jan 20, 2025 · 223 views
The biggest 5 of 28 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 28
Talked about on GitHub, YouTube and Bluesky (28 times).
On GitHub · 15
- Dec 31, 2025Feature request: Add support for parlant agents — dermatologist/dhti-elixir-base1 reaction
- Oct 20, 2026Wispral: deep source audit + real REA → copy-first master replanning (Codex mission) — TheHalfMoon/Wispral0 reactions
- Sep 3, 2026feat: add aimlapi.com as an NLP service — aimlapi/parlant-aimlapi0 reactions
- Jun 11, 2026chore(deps): bump parlant from 3.3.1 to 3.3.2 — band-ai/band-sdk-python0 reactions · 1 comment
- May 13, 2026versus Parlant — AgentEra/Agently0 reactions · 1 comment
10 more on GitHub
- Mar 2, 2026[ADD] Parlant — PyTorchKR/landscape0 reactions · 3 comments
- Dec 31, 2025Add Parlant agent implementation for healthcare domain — dermatologist/dhti-elixir-base0 reactions · 1 comment
- Oct 23, 2025Posted: emcie-co / parlant — nanameru/x-post-automation0 reactions
- Sep 5, 2025emcie-co/parlant: LLM agents built for control. Designed for real-world use. Deployed in minutes. — st01cs/moke-bookmarks0 reactions · 1 comment
- Aug 22, 2025Parlant v3 - reindex emcie-co/parlant please — upstash/context70 reactions · 1 comment
- Aug 19, 2025Check trending repo: emcie-co/parlant — uibm/trending-watcher0 reactions · 1 comment
- Aug 18, 2025Check trending repo: emcie-co/parlant — uibm/trending-watcher0 reactions · 1 comment
- Mar 7, 2025Latest 15 Papers - March 07, 2025 — Ep11phany/DailyArXiv0 reactions
- Mar 7, 2025Latest 5 Papers - March 07, 2025 — dingyue772/DailyArxiv0 reactions
- Mar 6, 2025Latest 15 Papers - March 07, 2025 — tangwen-qian/DailyArXiv0 reactions
On YouTube · 9
- Jan 6, 2025How I Built a Full-Stack AI App in 5 Hours (Agents, Streamlit, Python & More) — Tech With Tim34k views · 71 comments
- Aug 26, 2025Run Parlant with Ollama Locally - Control Your AI Agents — Fahd Mirza3.1k views · 14 comments
- Aug 21, 2025I Can't Believe How This Founder Turned His Life Around. 🧘 — Angel Poon857 views · 2 comments
- Apr 17, 2026Control Agent Behavior in Production using Parlant — Prateek Singh715 views · 1 comment
- Jan 20, 2025GitHub - emcie-co/parlant: The behavior guidance framework for customer-facing LLM agents — GitHub Daily Trend AI Podcast223 views · 1 comment
4 more on YouTube
- May 10, 2025ARQs: Boosting LLM Instruction Following — AI Research Roundup148 views · 3 comments
- Jul 19, 2026Parlant Setup Guide: Build a Deterministic AI Agent Beyond Fragile System Prompts — Alex Hitt98 views
- Oct 2, 2025🚀 Parlant: ساخت چتباتهای هوش مصنوعی که واقعا دستورات شما رو اجرا میکنن! (در چند دقیقه) 😱 — Amir Coder 8043 views · 2 comments
- Jan 20, 2025emcie-co/parlant - Gource visualisation — Gourcer28 views · 1 comment
On Bluesky · 4
- Dec 18, 2024Parlant A structured approach to building and guiding customer-facing AI agents. https://github.com/emcie-co/parlant — @pythonhub.dev6 likes and reposts
- Aug 20, 2025🛠️ Parlant #AI: #OSS framework for reliable #LLM instruction following. Tool use, analytics, guardrails. Apache 2.0 lic 👉 Discuss in… — @qdrddr.bsky.social2 likes and reposts
- Sep 9, 2025💎 Hidden Gem! 💎 (1000+ new stars) 📦 emcie-co / parlant ⭐ 11,015 (+1,178) 🗒 Python LLM agents built for control. Designed for real-world… — @github-trending.bsky.social1 likes and repost · 1 reply
- Sep 4, 2025He estado probando Parlant y… 👌👌👌👌 Framework en #Python para montar agentes de #IA que NO ALUCINAN y siguen tus reglas: ⚙️ Engancha… — @baumannzone.dev0 likes and reposts · 1 reply
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,774 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repositoryOne other file it gives its agents.
- llms.txtllms.txt
The file
We split this AGENTS.md into the rules it gives an agent
10 rules. About 0 are common, 8 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈8
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 23
Always ensure you stick to Hexagonal Architecture patterns in line with how they're used in this codebase.
- Distinctive: line 24
Every time you add something, look for similar things in the codebase and ensure you follow the coding style.
- Distinctive: line 26
If you need to add a test for something, first say where you plan to add it and ask for confirmation.
- Very specific: line 29
If you need to test classes/methods in sdk.py (or generally to test things that relate to engine behavior) make sure you inherit from …
- Distinctive: line 30
Test names should go "test*that*..." using clear names that explain the context, what is executed, and what is the expected result.
- Distinctive: line 33
Always follow this plan when asked to code a feature or fix a bug:
- Distinctive: line 35
Consider the codebase's structure
- Distinctive: line 40
Ask for plan confirmation.
- Distinctive: line 44
Make sure to format all of the files you changed using ruff (it is installed in the environment).
- Very specific: line 45
Run uv run python scripts/lint.py --mypy --ruff to ensure your code has no lint issues.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
This is the main repo of Parlant (https://parlant.io).
Parlant is a vibe-coding platform for chat agents that talk to customers. Someone describes how their agent should behave, and their coding agent implements it against Parlant's Python SDK. Parlant provides the rest: an engine that keeps the agent on those rules in every conversation, plus the parts every customer-facing agent needs — a chat widget, human handoff, testing and hosting.
Three things follow from that, and they apply to every change you make here:
- Agents built on Parlant must stay compliant and controlled. A rule the engine can quietly drop is a bug, not a tuning problem.
- Conversational management is meant to come out of the box. If a capability only works when the integrator writes glue code around it, it isn't finished.
- It has to support enterprise, large-scale use cases, where SLAs, stability and security are paramount. That is a bar every change has to clear, not the audience Parlant is built around.
Most people reach Parlant through their coding agent rather than by typing calls themselves. That agent cannot ask what a flag does or what an error was getting at — it reads the docstring, the --help text and the error string, and acts on them. Write those as part of the API: say what to do next, not only what went wrong.
The repo's structure follows the Hexagonal Architecture (Ports and Adapters) approach.
- src/parlant
- core: Core framework code
- adapters: Implementations of interfaces using 3rd party tools
- api: REST API layer using FastAPI. Uses modules from core/
- tests: all tests for the project. Structure strives to mirror that which is under src/parlant.
General Coding Instructions:
- Always ensure you stick to Hexagonal Architecture patterns in line with how they're used in this codebase.
- Every time you add something, look for similar things in the codebase and ensure you follow the coding style.
- We use MyPy on strict mode. Every parameter needs to be type-annotated. Every function's result too.
- If you need to add a test for something, first say where you plan to add it and ask for confirmation.
- We follow TDD. When you make a change, first create a failing test. Once it fails, implement just enough so it passes.
- We avoid the mock-ist approach to testing. We follow classical TDD as much as possible, unless to avoid very slow tests in particular component tests... SDK tests never use mocks. Other tests may mock specific LLM or embedding requests, especially to generate edge-cases deterministically. Otherwise, we always follow classical testing by integrating real components. This makes for a more stable and robust test suite.
- If you need to test classes/methods in sdk.py (or generally to test things that relate to engine behavior) make sure you inherit from SDKTest and understand how it works and how to use it.
- Test names should go "testthat..." using clear names that explain the context, what is executed, and what is the expected result.
- You can run tests using pytest. Make sure you run "uv run pytest tests/path/to/test/file.py" while also specifying the test name that you need to run.
Always follow this plan when asked to code a feature or fix a bug:
- Consider the codebase's structure
- Describe your implementation plan, including: a. What tests you will write (test names + files they would live in) b. Why do you think the tests would initially fail c. Where you would plan to implement the code that would make the tests pass
- Ask for plan confirmation. If you get feedback, revise your plan and ask for confirmation again until you get it.
- Implement the tests first. Ask for confirmation and code review.
- Once tests are approved, once again suggest your implementation plan for making them pass, and get plan review until confirmation.
- Once your implementation plan is confirmed, go ahead with implementing the code to pass them.
- Make sure to format all of the files you changed using ruff (it is installed in the environment).
- Run
uv run python scripts/lint.py --mypy --ruffto ensure your code has no lint issues. - Update
CHANGELOG.mdunder## [Unreleased]as part of the same commit, in the matching section (Added,Changed,Deprecated,Removed,Fixed,Security). Write it for the person upgrading: what changed and what it means for them, not which files you touched. A change nobody outside this repo can observe — a refactor, a test, a comment — needs no entry.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

