This commit is contained in:
Spherrrical 2026-06-03 20:39:25 +00:00
parent 40c2ff1142
commit 9283d01aa6
8 changed files with 41 additions and 36 deletions

View file

@ -162,6 +162,14 @@
<div id="content" role="main">
<section id="prompt-target">
<span id="id1"></span><h1>Prompt Target<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#prompt-target"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h1>
<div class="deprecated">
<p><span class="versionmodified deprecated">Deprecated since version v0.4.22: </span><strong>Prompt Targets are deprecated and no longer actively maintained.</strong> This concept is
retained for existing users on older Plano configurations, but new applications should
not adopt it. For deterministic, task-specific workloads, use <a class="reference internal" href="agents.html#agents"><span class="std std-ref">Agents</span></a>
together with <a class="reference internal" href="../guides/function_calling.html#function-calling"><span class="std std-ref">Function Calling</span></a> instead. The
<code class="docutils literal notranslate"><span class="pre">prompt_targets</span></code> configuration block and related CLI commands will continue to
function for now, but may be removed in a future release.</p>
</div>
<p>A Prompt Target is a deterministic, task-specific backend function or API endpoint that your application calls via Plano.
Unlike agents (which handle wide-ranging, open-ended tasks), prompt targets are designed for focused, specific workloads where Plano can add value through input clarification and validation.</p>
<p>Plano helps by:</p>

View file

@ -235,8 +235,8 @@
<div class="sd-card sd-sphinx-override sd-w-100 sd-shadow-sm sd-card-hover docutils">
<div class="sd-card-body docutils">
<div class="sd-card-title sd-font-weight-bold docutils">
<svg aria-hidden="true" class="sd-octicon sd-octicon-workflow" height="1.0em" version="1.1" viewbox="0 0 16 16" width="1.0em"><path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path></svg> Prompt Target</div>
<p class="sd-card-text">Understand how Plano handles prompts</p>
<svg aria-hidden="true" class="sd-octicon sd-octicon-workflow" height="1.0em" version="1.1" viewbox="0 0 16 16" width="1.0em"><path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path></svg> Prompt Target (Deprecated)</div>
<p class="sd-card-text">Deprecated — kept for existing users. New apps should use Agents.</p>
</div>
<a class="sd-stretched-link sd-hide-link-text reference external" href="../concepts/prompt_target.html"><span>../concepts/prompt_target.html</span></a></div>
</div>

View file

@ -368,6 +368,11 @@
</section>
<section id="deterministic-api-calls-with-prompt-targets">
<span id="quickstart-prompt-targets"></span><h3>Deterministic API calls with prompt targets<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#deterministic-api-calls-with-prompt-targets" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#deterministic-api-calls-with-prompt-targets'"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h3>
<div class="deprecated">
<p><span class="versionmodified deprecated">Deprecated since version v0.4.22: </span><a class="reference internal" href="../concepts/prompt_target.html#prompt-target"><span class="std std-ref">Prompt Targets</span></a> are deprecated and no longer actively
maintained. The walkthrough below is preserved for users on existing configs;
new applications should use <a class="reference internal" href="../concepts/agents.html#agents"><span class="std std-ref">Agents</span></a> instead.</p>
</div>
<p>Next, well show Planos deterministic API calling using a single prompt target. Well build a currency exchange backend powered by <cite>https://api.frankfurter.dev/</cite>, assuming USD as the base currency.</p>
<section id="id2">
<h4>Step 1. Create plano config file<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#id2"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h4>

View file

@ -164,6 +164,12 @@
<span id="id1"></span><h1>Function Calling<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#function-calling"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h1>
<p><strong>Function Calling</strong> is a powerful feature in Plano that allows your application to dynamically execute backend functions or services based on user prompts.
This enables seamless integration between natural language interactions and backend operations, turning user inputs into actionable results.</p>
<div class="deprecated">
<p><span class="versionmodified deprecated">Deprecated since version v0.4.22: </span>The prompt-target based workflow shown below (see <a class="reference internal" href="#function-calling"><span class="std std-ref">Step 2</span></a>)
is deprecated. <a class="reference internal" href="../concepts/prompt_target.html#prompt-target"><span class="std std-ref">Prompt Targets</span></a> are no longer actively
maintained and may be removed in a future release. For new function-calling
workloads, prefer <a class="reference internal" href="../concepts/agents.html#agents"><span class="std std-ref">Agents</span></a> with tool definitions.</p>
</div>
<section id="what-is-function-calling">
<h2>What is Function Calling?<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#what-is-function-calling" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#what-is-function-calling'"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h2>
<p>Function Calling refers to the mechanism where the users prompt is parsed, relevant parameters are extracted, and a designated backend function (or API) is triggered to execute a particular task.

View file

@ -1,6 +1,6 @@
Plano Docs v0.4.22
llms.txt (auto-generated)
Generated (UTC): 2026-06-03T20:39:15.011041+00:00
Generated (UTC): 2026-06-03T20:39:22.485968+00:00
Table of contents
- Agents (concepts/agents)
@ -2294,6 +2294,13 @@ Doc: concepts/prompt_target
Prompt Target
Deprecated since version v0.4.22: Prompt Targets are deprecated and no longer actively maintained. This concept is
retained for existing users on older Plano configurations, but new applications should
not adopt it. For deterministic, task-specific workloads, use Agents
together with Function Calling instead. The
prompt_targets configuration block and related CLI commands will continue to
function for now, but may be removed in a future release.
A Prompt Target is a deterministic, task-specific backend function or API endpoint that your application calls via Plano.
Unlike agents (which handle wide-ranging, open-ended tasks), prompt targets are designed for focused, specific workloads where Plano can add value through input clarification and validation.
@ -3500,9 +3507,9 @@ Explore Planos LLM integration options
../concepts/llm_providers/llm_providers.html
<svg version="1.1" width="1.0em" height="1.0em" class="sd-octicon sd-octicon-workflow" viewBox="0 0 16 16" aria-hidden="true"><path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path></svg> Prompt Target
<svg version="1.1" width="1.0em" height="1.0em" class="sd-octicon sd-octicon-workflow" viewBox="0 0 16 16" aria-hidden="true"><path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path></svg> Prompt Target (Deprecated)
Understand how Plano handles prompts
Deprecated — kept for existing users. New apps should use Agents.
../concepts/prompt_target.html
@ -3762,6 +3769,10 @@ You can then ask a follow-up like “Also book me a hotel near JFK” and Plano-
Deterministic API calls with prompt targets
Deprecated since version v0.4.22: Prompt Targets are deprecated and no longer actively
maintained. The walkthrough below is preserved for users on existing configs;
new applications should use Agents instead.
Next, well show Planos deterministic API calling using a single prompt target. Well build a currency exchange backend powered by https://api.frankfurter.dev/, assuming USD as the base currency.
Step 1. Create plano config file
@ -3909,6 +3920,11 @@ Function Calling
Function Calling is a powerful feature in Plano that allows your application to dynamically execute backend functions or services based on user prompts.
This enables seamless integration between natural language interactions and backend operations, turning user inputs into actionable results.
Deprecated since version v0.4.22: The prompt-target based workflow shown below (see Step 2)
is deprecated. Prompt Targets are no longer actively
maintained and may be removed in a future release. For new function-calling
workloads, prefer Agents with tool definitions.
What is Function Calling?
Function Calling refers to the mechanism where the users prompt is parsed, relevant parameters are extracted, and a designated backend function (or API) is triggered to execute a particular task.
@ -6695,8 +6711,6 @@ cli_reference_init
cli_reference_trace
cli_reference_prompt_targets
cli_reference_cli_agent
@ -6914,20 +6928,6 @@ Operational notes
planoai prompt_targets
Generate prompt-target metadata from Python methods.
Synopsis
$ planoai prompt_targets --file <python-file>
Options
--file, --f <python-file>: required path to a .py source file.
planoai cli_agent
Start an interactive CLI agent session against a running Plano deployment.

Binary file not shown.

View file

@ -174,7 +174,6 @@ Use this page as the canonical source for command syntax, options, and recommend
<li><p><a class="reference internal" href="#cli-reference-logs"><span class="std std-ref">planoai logs</span></a></p></li>
<li><p><a class="reference internal" href="#cli-reference-init"><span class="std std-ref">planoai init</span></a></p></li>
<li><p><a class="reference internal" href="#cli-reference-trace"><span class="std std-ref">planoai trace</span></a></p></li>
<li><p><a class="reference internal" href="#cli-reference-prompt-targets"><span class="std std-ref">planoai prompt_targets</span></a></p></li>
<li><p><a class="reference internal" href="#cli-reference-cli-agent"><span class="std std-ref">planoai cli_agent</span></a></p></li>
</ul>
</section>
@ -368,18 +367,6 @@ Use this page as the canonical source for command syntax, options, and recommend
<li><p><code class="docutils literal notranslate"><span class="pre">--list</span></code> cannot be combined with a specific trace-id target.</p></li>
</ul>
</section>
<section id="planoai-prompt-targets">
<span id="cli-reference-prompt-targets"></span><h2>planoai prompt_targets<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#planoai-prompt-targets" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#planoai-prompt-targets'"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h2>
<p>Generate prompt-target metadata from Python methods.</p>
<p><strong>Synopsis</strong></p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><code><span id="line-1"><span class="gp">$ </span>planoai<span class="w"> </span>prompt_targets<span class="w"> </span>--file<span class="w"> </span>&lt;python-file&gt;
</span></code></pre></div>
</div>
<p><strong>Options</strong></p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">--file,</span> <span class="pre">--f</span> <span class="pre">&lt;python-file&gt;</span></code>: required path to a <code class="docutils literal notranslate"><span class="pre">.py</span></code> source file.</p></li>
</ul>
</section>
<section id="planoai-cli-agent">
<span id="cli-reference-cli-agent"></span><h2>planoai cli_agent<a @click.prevent="window.navigator.clipboard.writeText($el.href); $el.setAttribute('data-tooltip', 'Copied!'); setTimeout(() =&gt; $el.setAttribute('data-tooltip', 'Copy link to this element'), 2000)" aria-label="Copy link to this element" class="headerlink" data-tooltip="Copy link to this element" href="#planoai-cli-agent" x-intersect.margin.0%.0%.-70%.0%="activeSection = '#planoai-cli-agent'"><svg height="1em" viewbox="0 0 24 24" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></svg></a></h2>
<p>Start an interactive CLI agent session against a running Plano deployment.</p>
@ -427,7 +414,6 @@ Use this page as the canonical source for command syntax, options, and recommend
<li><a :data-current="activeSection === '#planoai-logs'" class="reference internal" href="#planoai-logs">planoai logs</a></li>
<li><a :data-current="activeSection === '#planoai-init'" class="reference internal" href="#planoai-init">planoai init</a></li>
<li><a :data-current="activeSection === '#planoai-trace'" class="reference internal" href="#planoai-trace">planoai trace</a></li>
<li><a :data-current="activeSection === '#planoai-prompt-targets'" class="reference internal" href="#planoai-prompt-targets">planoai prompt_targets</a></li>
<li><a :data-current="activeSection === '#planoai-cli-agent'" class="reference internal" href="#planoai-cli-agent">planoai cli_agent</a></li>
</ul>
</div>

File diff suppressed because one or more lines are too long