{% extends "base.html" %} {% import "macros.html" as m %} {% block title %}Make it yours{% endblock %} {% block content %}

Make Hermit yours

Describe what you want and your own AI agent builds it in your data folder: fields, pages, dashboards, routines, bulk clean-ups, templates. Every change is one commit you can undo below.

{% if handoff.how == 'copy' %} Your agent: not named yet. You get a prompt to paste into any agent started in {{ handoff.folder_shown }}. Name your agent {% else %} Your agent: {{ handoff.label }}, {{ 'opens' if handoff.how == 'link' else 'starts' }} in {{ handoff.folder_shown }} Change {% endif %} How it works

{% if problems %}
hermitcrm check found {{ problems | length }} problem{{ '' if problems | length == 1 else 's' }} in files your agent writes. Hermit keeps working with what it could read; paste this to your agent to fix it:
{{ problems | join('\n') }}
{% endif %}
{{ m.handoff(handoff, 'describe-request', '', '', 'Describe a change', text=describe_text) }}

Start from an idea

All {% for f, n in families if n %}{{ f }} {{ n }} {% endfor %}
{% for c in cards %}
{{ c.family }}

{{ c.title }}

{{ c.text | placeholders }}

Changes: {% if c.changes_file %}{{ c.changes_file }}{% endif %}{{ c.changes_note }} {{ c.safety }}

Use this {% if c.recipe in recipe_topics %}What your agent reads{% endif %}
{% endfor %}

Suggested for you

{% if suggested %} {% else %}

Nothing stands out in your data right now. Suggestions come from a few plain rules, such as a score that no list ranks by; no AI reads your data for them.

{% endif %}

What you've built

{% if built %}
{% for b in built %} {% endfor %}
KindWhatState
{{ b.kind | capitalize }} {% if b.url %}{{ b.title }}{% else %}{{ b.title }}{% endif %} {{ b.detail }} Adjust
{% else %}

Nothing yet. Your dashboards, routines, fields and look show up here once your agent builds them, each with an Adjust link.

{% endif %}

Recent changes

{% if undo_note %}

{{ undo_note }}

{% endif %} {% if changes %}
{% for c, when in changes %} {% endfor %}
WhenChangeTouched
{{ when }} {{ c.subject }} {{ c.sha7 }} {{ c.touched }} {% if c.can_undo %}
{% elif c.undone %}undone {% else %}merge{% endif %}

Undo makes a new commit that reverses the change; nothing is deleted from your history. In a terminal: hermitcrm undo <commit>.

{% else %}

No changes yet. When your agent changes a field, the look, a dashboard or a routine, or makes a bulk change, it is listed here with an Undo button.

{% endif %}
Something Hermit can't do yet? Describe it anyway. Your agent first checks whether a field, page layout, dashboard or routine covers it (it usually does). If it really needs new code, it writes the feature request for you to send, or builds it in your own copy of Hermit if you are a developer.
Describe it
{% endblock %}