Using Prompt Builder
PromptBuilder (Jinja2)
Render prompts with Jinja2 using AgentContext and k-limited history.
from l6e_forge.prompt import PromptBuilder
builder = PromptBuilder()
rendered = await builder.render(
"""
You are {{ context.agent_id or 'an assistant' }}.
Recent conversation (last {{ k }} messages):
{% for m in history_k(k) %}
- [{{ m.role }}] {{ m.content }}
{% endfor %}
User says: {{ user_input }}
Provide a helpful, concise answer.
""",
context,
extra_vars={"user_input": message.content, "k": 8},
k_limit=8,
)
Load from file:
rendered = await builder.render_from_file(
"chat.j2", context, extra_vars={"user_input": message.content, "k": 8},
k_limit=8, agent_name="my-agent",
)
Template locations searched:
<workspace>/templates/<workspace>/shared/prompts/<workspace>/agents/<agent>/templates/