The concept is that any kind of automation or workflow can be enabled by task instructions executed by the VM, rather than hardcoded functions in the app. It’s close to the concept of rules engines.
There are 4 demo task instructions:
- *chain* - Creates next task once when another completes. Removes calldata after call - called once - *either* - Sets complete if either one or another task is completed + deletes not completed task (see gif) - *destructable* - task self destructs when it’s status set to complete - *hide* - Keeps task hidden while specified task’s status is not complete.
It is possible to add your own instructions to calldata.toml and use them within todo example:
cargo run -- add <TASK_TITLE > -calldata <INSTRUCTION_NAME> <PARAMETERS>
demo gif: https://lemmy.ml/pictrs/image/674bea85-d6b0-40d7-ba7f-dd1c10649aee.gif
repo: https://github.com/tracyspacy/spacydo
todo example : https://github.com/tracyspacy/spacydo/tree/main/examples/todo