After some deep diving, Helper Manager integration is the best basis for the soliton. Saver is targeted to solve persistence but not lifecycle management - and Saver cannot be used in Jinja templates; a valuable/important need.
Helper Manager is already very close to solving a gap in Home Assistant variable design: the lack of persistent, and dynamically created variables.
Native Home Assistant variables provide these capabilities:
- Stores any value
- Entity states
- Static user inputs
- Template results
- Strings, numbers, booleans, lists, dictionaries, etc.
- Direct Jinja access
- Variables can be referenced directly in templates:
{{ my_variable }}
- Automation/script-scoped variables
- Each automation or script execution has its own variable scope.
- Parallel executions can maintain independent values.
- Automatic cleanup
- Variables auto-delete when the automation/script execution completes.
Native variables have significant limitations:
- They do not survive Home Assistant restarts
- Any in-memory automation state is lost if HA restarts during execution.
- They cannot be manually managed
- There is no way to explicitly persist, delete, or manage a variable outside the current execution context.
The natural evolution would be to extenda Helper Manager that handles native Variables
creating real Home Assistant Helpers from native HA variables, to make them persist state and be managed
The ideal workflow would combine native variables with dynamically managed Helpers:
Automation starts
|
|
Create temporary persistent variable
|
|
Automation receives entity reference
|
|
Use variable normally in Jinja/templates
|
|
Automation completes
|
|
Temporary variable is automatically deleted
Example concept:
variables:
alert_id: "{{ context.id }}"
action:
- helper_manager.create:
type: input_text
name: "alert_{{ alert_id }}"
temporary: true
- ... automation logic ...
- helper_manager.delete:
entity_id: "{{ created_helper }}"
The automation would receive the generated entity ID and use it like any other variable:
{{ states(created_helper) }}
Features to make Helper Manager a true runtime variable system
1. Temporary helper lifecycle
Allow helpers to be created with a temporary flag:
temporary: true
The integration would track:
- creation time
- originating automation/script context
- owner execution ID
2. Automatic cleanup
When the automation/script exits:
- successful completion
- stopped execution
- timeout
- cancellation
Helper Manager would automatically remove temporary helpers.
This would provide garbage collection similar to programming languages.
3. Restart recovery
Because the helper exists as a real HA entity:
- its value survives Home Assistant restarts
- unfinished automation runs could identify their temporary variables
- automations could optionally recover their previous state
Example:
HA restart
|
Find unfinished temporary helpers
|
Restore automation state
|
Continue execution or notify user
Why this would be valuable
Today, advanced Home Assistant users often create many permanent Helpers only because they need persistent state:
- temporary timers
- counters
- flags
- status values
- workflow states
These helpers remain forever even though they only support a single automation.
A temporary persistent variable system would provide:
- less Helper clutter
- safer parallel automation execution
- easier automation sharing
- better restart resilience
- automatic lifecycle management
Summary
Helper Manager is already solving the hardest technical problem: dynamic creation of persistent Home Assistant entities .
The next step would be adding a lifecycle layer that turns those dynamic Helpers into temporary persistent variables :
Native Variables
+
Dynamic Helper Creation
+
Automation Lifecycle Tracking
+
Automatic Cleanup
This would fill a gap in Home Assistant’s current automation engine.