Parlant is a framework for controlling how customer-facing AI agents use conversational context, rules, knowledge, and tools. It is for teams building consistent, compliant, traceable interactions in consumer and sensitive business settings.
Borrowing it
Nothing to install: this file belongs to emcie-co/parlant. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/emcie-co/parlant/develop/AGENTS.mdgit clone --depth 1 https://github.com/emcie-co/parlantWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/emcie-co/parlant/agents-md)<a href="https://agentmods.dev/instructions/emcie-co/parlant/agents-md"><img src="https://agentmods.dev/badge/instructions/emcie-co/parlant/agents-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/emcie-co/parlant/agents-md"><img src="https://agentmods.dev/badge/instructions/emcie-co/parlant/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00986 | $0.00986 |
| Opus 5.5 | $0.00394 | $0.00394 |
| Sonnet 5.5 | $0.00197 | $0.00197 |
| Haiku 4.5 | $0.00099 | $0.00099 |
Grade A, and why
parlant AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 47 lines — stays where its author put it; the contents beside it link to each section 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 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.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 47 lines · 986 tokens per session scan A 95ed9957f6c9
parlant AGENTS.md is an instructions file published in the GitHub repository emcie-co/parlant (18,324 stars, last pushed yesterday), licensed Apache-2.0. It adds 986 tokens to every session, about $0.0039 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-11-03.
parlant AGENTS.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| parlant AGENTS.mdemcie-co/parlant | Instructions file | 18k | yesterday | Apache-2.0 | A | 986 | Codex, OpenCode |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | today | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | today | MIT | A | 7,461 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | today | MIT | A | 5,516 | GitHub Copilot |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | today | MIT | A | 4,680 | Codex, OpenCode |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | today | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |