system.md carries {{ label }}-style variables and an {% if not archetype %} block in place of the config:repo / config:archetype marker pairs, so prompt.rs drops its line filter, marker parsers and string replaces. The rendered prompt is byte for byte the old one for a custom agent, an archetype agent and an empty archetype name, with and without hive, swarm, docs and operators. hive-template now drops a block tag's own line.
867 B
867 B
hive-template
The one template language the hyperhive workspace renders with: Jinja, through
minijinja. A value is {{ name }}, a
block is {% if cond %}...{% endif %}, and a lone { or } stays plain text.
render(template, &context): the text, or a message when the template does not parse or names a variable the context lacks. An unknown variable is an error, never an empty string.- A block tag alone on its line leaves no line behind (
trim_blocksandlstrip_blocksare on), so a template ending in a block tag and a newline loses that newline. variables(template): the variables the template reads, so a caller can refuse an unknown field when the template is saved instead of when it renders.
Used by the notification router's flow templates (swarm-notify-router,
swarm-wire).