<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Tool Integration on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/tool-integration/</link>
        <description>Recent content in Tool Integration on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Thu, 23 Oct 2025 15:28:53 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/tool-integration/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>parlant</title>
        <link>https://producthunt.programnotes.cn/en/p/parlant/</link>
        <pubDate>Thu, 23 Oct 2025 15:28:53 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/parlant/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1614761064736-ce11c09670f8?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NjEyMDQ1MTB8&amp;ixlib=rb-4.1.0" alt="Featured image of post parlant" /&gt;&lt;h1 id=&#34;emcie-coparlant&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/emcie-co/parlant&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;emcie-co/parlant&lt;/a&gt;
&lt;/h1&gt;&lt;div align=&#34;center&#34;&gt;
&lt;picture&gt;
  &lt;source media=&#34;(prefers-color-scheme: dark)&#34; srcset=&#34;https://github.com/emcie-co/parlant/blob/develop/docs/LogoTransparentLight.png?raw=true&#34;&gt;
  &lt;img alt=&#34;Parlant - AI Agent Framework&#34; src=&#34;https://github.com/emcie-co/parlant/blob/develop/docs/LogoTransparentDark.png?raw=true&#34; width=400 /&gt;
&lt;/picture&gt;
&lt;h3&gt;Finally, LLM agents that actually follow instructions&lt;/h3&gt;
&lt;p&gt;
  &lt;a href=&#34;https://www.parlant.io/&#34; target=&#34;_blank&#34;&gt;🌐 Website&lt;/a&gt; •
  &lt;a href=&#34;https://www.parlant.io/docs/quickstart/installation&#34; target=&#34;_blank&#34;&gt;⚡ Quick Start&lt;/a&gt; •
  &lt;a href=&#34;https://discord.gg/duxWqxKk6J&#34; target=&#34;_blank&#34;&gt;💬 Discord&lt;/a&gt; •
  &lt;a href=&#34;https://www.parlant.io/docs/quickstart/examples&#34; target=&#34;_blank&#34;&gt;📖 Examples&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
  &lt;!-- Keep these links. Translations will automatically update with the README. --&gt;
  &lt;a href=&#34;https://zdoc.app/de/emcie-co/parlant&#34;&gt;Deutsch&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/es/emcie-co/parlant&#34;&gt;Español&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/fr/emcie-co/parlant&#34;&gt;français&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/ja/emcie-co/parlant&#34;&gt;日本語&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/ko/emcie-co/parlant&#34;&gt;한국어&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/pt/emcie-co/parlant&#34;&gt;Português&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/ru/emcie-co/parlant&#34;&gt;Русский&lt;/a&gt; |
  &lt;a href=&#34;https://zdoc.app/zh/emcie-co/parlant&#34;&gt;中文&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
  &lt;a href=&#34;https://pypi.org/project/parlant/&#34;&gt;&lt;img alt=&#34;PyPI&#34; src=&#34;https://img.shields.io/pypi/v/parlant?color=blue&#34;&gt;&lt;/a&gt;
  &lt;img alt=&#34;Python 3.10+&#34; src=&#34;https://img.shields.io/badge/python-3.10+-blue&#34;&gt;
  &lt;a href=&#34;https://opensource.org/licenses/Apache-2.0&#34;&gt;&lt;img alt=&#34;License&#34; src=&#34;https://img.shields.io/badge/license-Apache%202.0-green&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://discord.gg/duxWqxKk6J&#34;&gt;&lt;img alt=&#34;Discord&#34; src=&#34;https://img.shields.io/discord/1312378700993663007?color=7289da&amp;logo=discord&amp;logoColor=white&#34;&gt;&lt;/a&gt;
  &lt;img alt=&#34;GitHub Repo stars&#34; src=&#34;https://img.shields.io/github/stars/emcie-co/parlant?style=social&#34;&gt;
&lt;/p&gt;
&lt;a href=&#34;https://trendshift.io/repositories/12768&#34; target=&#34;_blank&#34;&gt;
  &lt;img src=&#34;https://trendshift.io/api/badge/repositories/12768&#34; alt=&#34;Trending on TrendShift&#34; style=&#34;width: 250px; height: 55px;&#34; width=&#34;250&#34; height=&#34;55&#34;/&gt;
&lt;/a&gt;
&lt;/div&gt;
&lt;h2 id=&#34;-the-problem-every-ai-developer-faces&#34;&gt;🎯 The Problem Every AI Developer Faces
&lt;/h2&gt;&lt;p&gt;You build an AI agent. It works great in testing. Then real users start talking to it and&amp;hellip;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;❌ It ignores your carefully crafted system prompts&lt;/li&gt;
&lt;li&gt;❌ It hallucinates responses in critical moments&lt;/li&gt;
&lt;li&gt;❌ It can&amp;rsquo;t handle edge cases consistently&lt;/li&gt;
&lt;li&gt;❌ Each conversation feels like a roll of the dice&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Sound familiar?&lt;/strong&gt; You&amp;rsquo;re not alone. This is the #1 pain point for developers building production AI agents.&lt;/p&gt;
&lt;h2 id=&#34;-the-solution-stop-fighting-prompts-teach-principles&#34;&gt;⚡ The Solution: Stop Fighting Prompts, Teach Principles
&lt;/h2&gt;&lt;p&gt;Parlant flips the script on AI agent development. Instead of hoping your LLM will follow instructions, &lt;strong&gt;Parlant ensures it&lt;/strong&gt;.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Traditional approach: Cross your fingers 🤞&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;system_prompt&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;You are a helpful assistant. Please follow these 47 rules...&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Parlant approach: Ensured compliance ✅&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;agent&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;create_guideline&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Customer asks about refunds&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;action&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Check order status first to see if eligible&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;tools&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_order_status&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;✅ &lt;a class=&#34;link&#34; href=&#34;https://www.parlant.io/blog/how-parlant-guarantees-compliance&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Blog: How Parlant Ensures Agent Compliance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;🆚 &lt;a class=&#34;link&#34; href=&#34;https://www.parlant.io/blog/parlant-vs-dspy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Blog: Parlant vs DSPy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;parlant-gives-you-all-the-structure-you-need-to-build-customer-facing-agents-that-behave-exactly-as-your-business-requires&#34;&gt;Parlant gives you all the structure you need to build customer-facing agents that behave exactly as your business requires:
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/concepts/customization/journeys&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Journeys&lt;/a&gt;&lt;/strong&gt;:
Define clear customer journeys and how your agent should respond at each step.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/concepts/customization/guidelines&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Behavioral Guidelines&lt;/a&gt;&lt;/strong&gt;:
Easily craft agent behavior; Parlant will match the relevant elements contextually.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/concepts/customization/tools&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Tool Use&lt;/a&gt;&lt;/strong&gt;:
Attach external APIs, data fetchers, or backend services to specific interaction events.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/concepts/customization/glossary&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Domain Adaptation&lt;/a&gt;&lt;/strong&gt;:
Teach your agent domain-specific terminology and craft personalized responses.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/concepts/customization/canned-responses&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Canned Responses&lt;/a&gt;&lt;/strong&gt;:
Use response templates to eliminate hallucinations and guarantee style consistency.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/advanced/explainability&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Explainability&lt;/a&gt;&lt;/strong&gt;:
Understand why and when each guideline was matched and followed.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div align=&#34;center&#34;&gt;
&lt;h2 id=&#34;-get-your-agent-running-in-60-seconds&#34;&gt;🚀 Get Your Agent Running in 60 Seconds
&lt;/h2&gt;&lt;/div&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install parlant
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;25
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;26
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;27
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;28
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;29
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;30
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;31
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;32
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;33
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;34
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;35
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;36
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;37
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;38
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;39
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;40
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;parlant.sdk&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;p&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@p.tool&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolContext&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;city&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolResult&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Your weather API logic here&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolResult&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Sunny, 72°F in &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;city&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nd&#34;&gt;@p.tool&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;get_datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolContext&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolResult&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;datetime&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ToolResult&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;main&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;():&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;async&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;with&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;as&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;server&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;agent&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;server&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;create_agent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;WeatherBot&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Helpful weather assistant&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# Have the agent&amp;#39;s context be updated on every response (though&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# update interval is customizable) using a context variable.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;agent&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;create_variable&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;current-datetime&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;tool&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# Control and guide agent behavior with natural language&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;await&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;agent&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;create_guideline&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;condition&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;User asks about weather&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;action&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Get current weather and provide a friendly response with suggestions&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;tools&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_weather&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# Add other (reliably enforced) behavioral modeling elements&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# ...&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# 🎉 Test playground ready at http://localhost:8800&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# Integrate the official React widget into your app,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;c1&#34;&gt;# or follow the tutorial to build your own frontend!&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;vm&#34;&gt;__name__&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;__main__&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;asyncio&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;asyncio&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;run&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;main&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s it!&lt;/strong&gt; Your agent is running with ensured rule-following behavior.&lt;/p&gt;
&lt;h2 id=&#34;-see-it-in-action&#34;&gt;🎬 See It In Action
&lt;/h2&gt;&lt;img alt=&#34;Parlant Demo&#34; src=&#34;https://github.com/emcie-co/parlant/blob/develop/docs/demo.gif?raw=true&#34; width=&#34;100%&#34; /&gt;
&lt;h2 id=&#34;-why-developers-are-switching-to-parlant&#34;&gt;🔥 Why Developers Are Switching to Parlant
&lt;/h2&gt;&lt;table width=&#34;100%&#34;&gt;
&lt;tr&gt;
  &lt;td width=&#34;50%&#34;&gt;
&lt;h3 id=&#34;-traditional-ai-frameworks&#34;&gt;🏗️ &lt;strong&gt;Traditional AI Frameworks&lt;/strong&gt;
&lt;/h3&gt;  &lt;/td&gt;
  &lt;td width=&#34;50%&#34;&gt;
&lt;h3 id=&#34;-parlant&#34;&gt;⚡ &lt;strong&gt;Parlant&lt;/strong&gt;
&lt;/h3&gt;  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width=&#34;50%&#34;&gt;
&lt;ul&gt;
&lt;li&gt;Write complex system prompts&lt;/li&gt;
&lt;li&gt;Hope the LLM follows them&lt;/li&gt;
&lt;li&gt;Debug unpredictable behaviors&lt;/li&gt;
&lt;li&gt;Scale by prompt engineering&lt;/li&gt;
&lt;li&gt;Cross fingers for reliability&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;td width=&#34;50%&#34;&gt;
&lt;ul&gt;
&lt;li&gt;Define rules in natural language&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ensured&lt;/strong&gt; rule compliance&lt;/li&gt;
&lt;li&gt;Predictable, consistent behavior&lt;/li&gt;
&lt;li&gt;Scale by adding guidelines&lt;/li&gt;
&lt;li&gt;Production-ready from day one&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h2 id=&#34;-perfect-for-your-use-case&#34;&gt;🎯 Perfect For Your Use Case
&lt;/h2&gt;&lt;div align=&#34;center&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Financial Services&lt;/strong&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Healthcare&lt;/strong&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;E-commerce&lt;/strong&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Legal Tech&lt;/strong&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Compliance-first design&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;HIPAA-ready agents&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Customer service at scale&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Precise legal guidance&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Built-in risk management&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Patient data protection&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Order processing automation&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Document review assistance&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h2 id=&#34;-enterprise-grade-features&#34;&gt;🛠️ Enterprise-Grade Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;🧭 Conversational Journeys&lt;/strong&gt; - Lead the customer step-by-step to a goal&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;🎯 Dynamic Guideline Matching&lt;/strong&gt; - Context-aware rule application&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;🔧 Reliable Tool Integration&lt;/strong&gt; - APIs, databases, external services&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;📊 Conversation Analytics&lt;/strong&gt; - Deep insights into agent behavior&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;🔄 Iterative Refinement&lt;/strong&gt; - Continuously improve agent responses&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;🛡️ Built-in Guardrails&lt;/strong&gt; - Prevent hallucination and off-topic responses&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;📱 React Widget&lt;/strong&gt; - &lt;a class=&#34;link&#34; href=&#34;https://github.com/emcie-co/parlant-chat-react&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Drop-in chat UI for any web app&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;🔍 Full Explainability&lt;/strong&gt; - Understand every decision your agent makes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-join-10000-developers-building-better-ai&#34;&gt;📈 Join 10,000+ Developers Building Better AI
&lt;/h2&gt;&lt;div align=&#34;center&#34;&gt;
&lt;p&gt;&lt;strong&gt;Companies using Parlant:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Financial institutions • Healthcare providers • Legal firms • E-commerce platforms&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://star-history.com/#emcie-co/parlant&amp;amp;Date&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://api.star-history.com/svg?repos=emcie-co/parlant&amp;amp;type=Date&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Star History Chart&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h2 id=&#34;-what-developers-are-saying&#34;&gt;🌟 What Developers Are Saying
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;ldquo;By far the most elegant conversational AI framework that I&amp;rsquo;ve come across! Developing with Parlant is pure joy.&amp;rdquo;&lt;/em&gt; &lt;strong&gt;— Vishal Ahuja, Senior Lead, Customer-Facing Conversational AI @ JPMorgan Chase&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;-quick-start-paths&#34;&gt;🏃‍♂️ Quick Start Paths
&lt;/h2&gt;&lt;table border=&#34;0&#34;&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🎯 I want to test it myself&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://www.parlant.io/docs/quickstart/installation&#34;&gt;→ 5-minute quickstart&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🛠️ I want to see an example&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://www.parlant.io/docs/quickstart/examples&#34;&gt;→ Healthcare agent example&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🚀 I want to get involved&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://discord.gg/duxWqxKk6J&#34;&gt;→ Join our Discord community&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h2 id=&#34;-community--support&#34;&gt;🤝 Community &amp;amp; Support
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;💬 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://discord.gg/duxWqxKk6J&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Discord Community&lt;/a&gt;&lt;/strong&gt; - Get help from the team and community&lt;/li&gt;
&lt;li&gt;📖 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/docs/quickstart/installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Documentation&lt;/a&gt;&lt;/strong&gt; - Comprehensive guides and examples&lt;/li&gt;
&lt;li&gt;🐛 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/emcie-co/parlant/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub Issues&lt;/a&gt;&lt;/strong&gt; - Bug reports and feature requests&lt;/li&gt;
&lt;li&gt;📧 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/contact&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Direct Support&lt;/a&gt;&lt;/strong&gt; - Direct line to our engineering team&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-license&#34;&gt;📄 License
&lt;/h2&gt;&lt;p&gt;Apache 2.0 - Use it anywhere, including commercial projects.&lt;/p&gt;
&lt;hr&gt;
&lt;div align=&#34;center&#34;&gt;
&lt;p&gt;&lt;strong&gt;Ready to build AI agents that actually work?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;⭐ &lt;strong&gt;Star this repo&lt;/strong&gt; • 🚀 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://parlant.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Try Parlant now&lt;/a&gt;&lt;/strong&gt; • 💬 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://discord.gg/duxWqxKk6J&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Join Discord&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Built with ❤️ by the team at &lt;a class=&#34;link&#34; href=&#34;https://emcie.co&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Emcie&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
</description>
        </item>
        
    </channel>
</rss>
