herm-tui 1.6.0-dev.7 → 1.6.0-dev.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/eikons/ares.eikon +1 -1
- package/assets/eikons/default.eikon +1 -1
- package/assets/eikons/mono.eikon +1 -1
- package/assets/skills/eikon/SKILL.md +83 -0
- package/index.js +63 -57
- package/package.json +1 -1
package/assets/eikons/ares.eikon
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
{"eikon":1,"name":"ares","width":48,"height":24,"author":"kaio","created":"2026-05-04T02:34:15.333Z"}
|
|
1
|
+
{"eikon":1,"name":"ares","width":48,"height":24,"author":"kaio","created":"2026-05-04T02:34:15.333Z","source_url":"https://raw.githubusercontent.com/liftaris/eikon/main/eikons/ares/"}
|
|
2
2
|
{"state":"idle","fps":16,"color":"#7aa2f7","frame_count":65,"loop_from":0}
|
|
3
3
|
{"f":0,"data":"⠿⢿⣦⣌⡻⣷⣟⢯⡈⢞⣿⣿⡯⣞⡧⣿⣵⣴⣶⣾⣿⣿⠿⠾⣦⣴⣼⣻⣿⣦⢹⡿⣣⣟⣾⣿⣿⣿⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠈⠉⠹⠾⢿⢝⢳⣄⠫⣻⣷⣷⣿⡿⠟⣋⣽⣿⣿⣿⣶⣾⣶⣾⣿⣽⣿⡾⣟⡲⣼⡾⡿⣿⣿⢗⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢀⠑⣴⣿⣿⣿⢟⣽⣾⣿⣿⣿⠿⠿⢿⡛⠛⣿⣿⢿⢿⣿⣿⣮⣷⣽⢯⣾⡻⣟⣯⣯⠿⣆⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠰⣬⡿⠟⢛⣥⣿⣿⣿⠟⣿⣶⣶⣾⣿⣿⣴⣿⣿⣾⣶⣭⡻⢿⣿⣿⡻⣝⣭⣿⣶⣾⣷⣤⣄⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠈⠁⢠⠀⠸⣿⣿⡿⣻⣶⣟⣿⣏⣿⢿⣭⣽⣿⣿⣿⣿⣯⣿⣮⠊⣿⣿⣿⣯⢕⣲⣾⣿⡿⢫⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣾⣿⣿⣿⣿⣧⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⡟⢮⢿⡿⣯⣿⣿⣿⣿⣷⣢⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⡴⠃⢀⣾⣿⣿⣿⣿⣿⣿⢫⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⣄⠹⢿⡔⢿⣿⣿⡻⣿⡆⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⡼⠁⣄⣨⣭⣭⣭⣟⣛⣿⠿⢰⣾⣽⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⠉⣷⢿⣳⢿⣿⡪⡅⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢘⣵⣭⣷⣾⣿⣿⣿⣷⣾⣯⣝⡓⠧⣭⣻⣿⣿⣿⣿⣿⣿⣹⣟⣿⣿⣿⣿⣿⣷⡘⠉⣺⣄⣻⣻⣮⠆⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⡔⢁⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣾⣿⣽⣛⠿⠅⠿⣿⢿⣿⣿⣿⣿⣧⠄⢱⣫⢞⢽⣿⠧⠀⠀⠀\n⠀⠀⠀⠀⠀⠈⠄⢘⣿⣿⡿⣿⠿⠿⣿⡿⠿⠿⠿⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣫⣷⣾⣿⢿⣿⣿⣿⣷⠅⠘⣡⣿⣍⣾⢿⡂⠀⠀\n⠀⠀⠀⠀⠀⠀⣃⡘⠛⢉⣶⣿⣿⣿⣿⠿⠶⣿⣿⣿⣿⣿⣷⣿⣟⣿⣻⣿⣿⠿⢿⣯⢟⣖⢺⣻⣿⣿⡃⢨⢤⢞⣿⣏⣷⣃⠀⠀\n⠀⠀⠀⢀⠠⠪⠊⢴⢾⣽⣿⣿⣏⣥⣷⠾⠟⠋⠉⠁⠀⠀⠀⠀⠀⠈⠉⣉⡩⢽⣏⡱⣼⡿⣡⣻⡿⣿⠃⠘⣴⣿⡞⣿⣩⢷⡀⠀\n⠀⣠⣰⣷⣶⣶⣶⡿⢿⠟⠛⠋⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⣾⢿⡿⣟⣟⣾⣿⣿⣿⣦⠈⢿⣿⣿⣿⣷⣿⡆⠀\n⠘⠉⠋⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣷⣿⢼⣿⣿⣿⣯⣿⣿⣎⡸⣿⡖⢴⣯⣧⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣽⣿⣿⣿⡿⠿⠿⠿⣿⣭⣽⣾⣿⣻⡜⠙⢝⣯⢻⡀\n⠀⠀⠀⠀⠀⠀⠀⠀⢂⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣤⣴⣶⣿⣿⣿⣾⣿⣿⣿⣿⠇⠀⠀⠀⠈⠉⠀⠉⠉⠉⠿⠛⠶⢮⡟⣦\n⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⠄⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⡟⣯⣿⣿⣿⣿⣿⣿⣷⣿⣿⠀⠀⠀⠀⠀⠀⢀⡔⡶⡠⢤⣤⣯⠈⣿⡞\n⠀⠀⠀⠀⠀⠀⠀⠀⠉⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⢾⡟⠀⠀⠀⠀⠀⠀⠀⠉⢰⠪⡘⣿⣽⡏⠌⢿\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠴⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⢽⡇⠀⠀⠀⠀⠀⠀⠀⠐⢘⣸⣟⣿⣿⣷⡇⢹\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⡇⡄⠀⠀⠀⠀⠀⠀⠀⠀⣿⣧⣿⣿⣿⣿⣿⣿⣿⣝⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠈⠱⣿⣿⣿⣿⣧⠊\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣷⢁⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⡿⣣⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⢿⡿⣿⣿⣿⣂\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡘⠀⠀⠀⠀⠀⠀⠀⢸⣿⢿⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⢿⣿⣷\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣧⠂⠀⠀⠀⠀⠀⠀⣾⣿⣾⣿⣿⣿⣯⣷⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙"}
|
|
4
4
|
{"f":1,"data":"⠻⢿⢶⣬⡻⢿⣿⢯⡘⢞⣿⢿⡭⣞⡣⢯⣵⣶⣶⣾⣿⣿⠿⠶⣦⣶⣼⣹⣿⣤⢳⣿⣳⣟⣾⣿⣿⣯⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠈⠘⠙⠖⢿⢖⢷⡤⠻⣻⣷⣷⣿⣿⣟⣫⣽⣿⣿⣿⣿⣿⣷⣾⣿⣽⣿⣯⣟⣿⣽⡿⡿⣿⣿⣗⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢀⠑⣵⣿⣿⣿⢟⣽⣾⣿⣿⣿⠿⠿⢿⡛⠛⣿⣿⣿⣿⣿⣿⣮⣷⣽⣫⣿⡫⣟⣟⣯⠿⣆⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢀⣬⡿⠟⢛⣥⣿⣿⣿⠿⣻⣶⣶⣶⣿⣿⣷⣿⣿⣾⣾⣭⠿⢿⣿⣿⡻⣝⣭⣿⣶⣾⣷⣦⣄⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠁⢠⠀⢸⣿⣿⡿⣯⣾⣟⣿⣏⣿⢿⣭⣽⣿⣿⣿⣿⣧⣶⣮⡊⣿⣿⣟⣯⢴⣺⣾⣿⡿⢫⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣾⣿⣿⣿⣿⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣟⣟⢮⢿⣾⣯⣿⣿⣿⣿⣷⡦⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⡴⠃⢀⣾⣿⣿⣿⣿⣿⣿⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠹⣿⡔⢿⣿⡿⡻⣿⡆⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⡼⠁⣄⣌⣭⣭⣭⣟⣛⣿⠿⢰⣾⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠉⣷⢿⣳⢿⣯⡪⡑⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢈⣴⣽⣅⣾⣿⣿⣿⣷⣿⣭⣽⡓⠧⣯⣻⣿⣿⣿⣿⣿⣿⣸⣻⣿⣿⣿⣿⣿⣷⡘⠸⣚⡄⣻⣿⣎⠆⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⡔⠁⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣛⠿⠇⠿⣿⢿⣿⣿⣿⣿⣷⠆⢱⣫⣞⡿⣷⡧⠀⠀⠀\n⠀⠀⠀⠀⠀⠈⡄⠰⣿⣿⡿⣿⠿⠿⣿⡿⣛⠻⠿⣻⣿⣿⣿⣿⣿⣿⣿⣷⣿⣫⣷⣶⣿⢿⣿⣿⣿⣿⠄⠸⣟⣟⣿⣾⢿⡀⠀⠀\n⠀⠀⠀⠀⠀⠀⣃⡘⠛⢉⣺⣿⣿⣿⣿⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣿⣿⡿⢿⣯⢟⣑⢺⣻⣿⣿⡃⢸⢽⣾⣿⡿⢷⡃⠀⠀\n⠀⠀⠀⢀⠠⠮⠊⢴⣿⣽⣿⣿⣯⣥⣶⠾⠟⠛⠉⠁⠀⠀⠀⠀⠀⠀⢉⣉⡩⢽⣋⣱⣼⡿⣡⣻⣿⣟⠂⠘⣮⣿⠚⣿⣻⢷⡀⠀\n⠀⣠⣰⣷⣶⣶⣾⡿⢿⠟⠛⠋⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⣾⢿⡿⣟⣯⣾⣿⣿⣿⣧⠘⢣⣾⣷⢟⣷⣿⡆⠀\n⠘⠉⠋⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣷⣿⢽⣿⣿⣿⣿⣿⣿⣎⡘⣿⡏⢳⣫⣣⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⡿⠿⠿⠿⣿⣭⣽⣾⣿⣻⡝⠙⢭⣯⣟⡀\n⠀⠀⠀⠀⠀⠀⠀⠀⢂⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣤⣶⣶⣿⣿⣿⣿⣿⣿⡿⣿⠇⠀⠀⠀⠈⠉⠀⠉⠉⠉⠽⠛⠷⢯⣏⣆\n⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⠄⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⡟⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⢀⣔⣆⢤⢠⣦⣯⢬⣯⡜\n⠀⠀⠀⠀⠀⠀⠀⠀⠉⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⣾⣿⣿⣿⣿⣿⣿⣿⢾⡏⠀⠀⠀⠀⠀⠀⠀⠁⢰⠒⠐⣿⣿⡆⢉⢶\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠴⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⢽⡇⠀⠀⠀⠀⠀⠀⠀⠐⢸⣜⢊⣿⣿⣿⡇⢸\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⡇⡄⠀⠀⠀⠀⠀⠀⠀⠀⣿⣧⣿⣿⣿⣿⣿⣿⣿⣽⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣿⣿⣿⣿⡷⢌\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣷⢁⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⡿⣧⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣿⣾⣿⣿⣔\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡊⠀⠀⠀⠀⠀⠀⠀⢸⣿⢿⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⢲⣿⣿\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣧⠂⠀⠀⠀⠀⠀⠀⣾⣿⣾⣿⣿⣿⣿⣷⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
{"eikon":1,"name":"Nous","width":48,"height":24,"author":"kaio","created":"2026-05-04T02:32:53.930Z"}
|
|
1
|
+
{"eikon":1,"name":"Nous","width":48,"height":24,"author":"kaio","created":"2026-05-04T02:32:53.930Z","source_url":"https://raw.githubusercontent.com/liftaris/eikon/main/eikons/nous/"}
|
|
2
2
|
{"state":"idle","fps":16,"color":"#7aa2f7","frame_count":64,"loop_from":0}
|
|
3
3
|
{"f":0,"data":"⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣠⣤⣤⣀⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⣤⣬⣥⣄⣀⠀⠉⠙⠻⣿⣿⣿⣿⣷⣶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⡀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢀⣤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⡿⢦⡀⠀⠈⢿⣿⣿⣿⣿⣿⢿⡗⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⡰⣻⣿⣿⣿⢏⣿⣿⣿⣿⣿⣿⣿⡿⠙⠏⠀⠀⣮⡳⠀⠀⠈⢿⢿⠻⠿⡏⠁⠁⣸⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠌⠈⠉⢺⠻⢃⠊⠙⠛⢠⡀⢀⠙⠁⠁⠀⡘⣶⣷⣿⣷⣾⠀⠀⠈⣶⣆⣳⣶⣮⢔⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⡼⣴⢶⣤⣶⣾⣼⣿⣿⣿⣿⢿⣿⣿⣿⣾⣶⣿⣿⣿⣿⣿⣿⡇⣀⣠⣸⣿⣷⣻⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⢰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢯⣿⣚⣿⣿⣿⢿⣿⣿⣿⣿⣗⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⡘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⡿⠧⠻⠟⣻⠟⡓⠈⠛⠛⠛⠛⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣹⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠻⣿⡿⣿⣿⣉⣁⠀⠀⠀⠀⠸⢻⣿⡷⢦⡄⠀⠀⠀⢹⣿⣿⣿⣿⢟⣛⡻⣿⣿⣿⣯⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠈⠙⠊⢻⣏⢿⠇⠀⠀⠀⠀⠬⠿⠥⠊⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡼⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣸⣯⠊⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⢿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⠠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡾⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣿⣇⠰⣄⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⡆⠣⠄⠈⠁⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣼⣿⣿⢹⣿⣇⠀⠀⠀⠀\n⠀⠀⢠⠀⠀⠀⠀⢸⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⡏⢈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠄⣿⣿⡀⠀⠀⠀\n⠀⠀⣟⠀⠀⠀⠀⣿⣿⣿⣿⣿⣦⣀⣀⣀⣀⣠⣄⡀⠀⠀⢸⣿⣿⣿⡾⠟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠁⣹⣿⡇⠐⡄⠀\n⠀⢀⣿⣦⣀⣠⣼⣿⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣄⠀⣸⣿⣿⣯⡀⣀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢀⣿⣿⡇⠀⣷⠀\n⠀⠘⣜⠿⣿⣿⠿⠋⣱⣿⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⡾⠋⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣣⣾⣿⣿⡇⢠⣿⠀\n⠀⠀⠙⠿⣶⣤⣶⣾⣿⣿⢋⣿⣿⣿⣿⣿⣿⣿⣿⠛⢋⡠⢆⠀⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢠⣿⠏⠀\n⠀⠀⠀⠀⠀⠉⢯⣉⣉⣡⣾⣿⣿⣿⣿⣿⣿⣿⣿⣧⡀⢋⠝⠃⣀⣴⠟⠫⢛⣭⡿⠚⠋⠉⠁⠒⠫⣝⠻⣿⣿⣿⢟⣵⡿⠋⠀⠀\n⠀⠀⠀⠀⠀⠀⠈⠛⠿⠿⠛⢁⣿⣿⣿⣿⣿⣿⣿⣿⣷⣤⡶⠟⠉⠀⢀⣴⡟⠁⠀⠀⠀⠀⠀⠀⠀⠈⠳⣜⢿⡿⠟⠋⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⠿⣿⢯⡾⠋⠀⠀⢀⡔⠀⡾⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠮⠅⠀⠀⠀⠀⠀⠀"}
|
|
4
4
|
{"f":1,"data":"⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣀⣠⣠⣀⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣤⣤⣥⣤⣀⠀⠉⠉⠻⢿⣿⣿⣿⣷⣶⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣄⠀⠀⠙⢿⣿⣿⣿⣿⣿⣷⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⡿⢷⡀⠀⠈⢻⣿⣿⣿⣿⣿⣿⣧⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⡠⣫⡿⣿⣿⢟⣾⣿⡟⣿⣿⣿⣿⣿⠎⠟⠀⠀⢴⡻⠄⠀⠀⢻⣿⠿⢿⣿⠃⠉⢠⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠔⠄⠀⠙⠳⠋⠎⠉⠚⢁⣄⣀⢸⠉⠁⠀⡈⢶⣾⣿⣷⣾⡀⠀⠀⢶⣦⡴⣦⣶⣂⣦⢿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⣸⣵⣦⣧⣶⣾⣿⣿⣿⣿⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⢀⣀⡸⣿⣿⣻⣿⣷⢾⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⢠⣷⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣏⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣌⣿⣰⢿⣿⣷⢿⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⡜⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⣿⣿⣿⣿⣿⡃⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⠿⠇⠙⠛⡻⢟⣋⠉⠛⠛⠛⠛⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣹⣿⣿⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠙⢿⣟⢿⣿⣁⣐⠀⠀⠀⠀⠘⢻⣿⡷⢦⡄⠀⠀⠀⣸⣿⣿⣿⣿⠟⠛⠻⣿⣿⣿⣯⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠉⠃⢹⣏⢻⠇⠀⠀⠀⠀⠨⠽⠥⠊⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣹⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⢸⣏⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⢿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣼⠇⠠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡾⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⣿⣇⠸⣄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⡆⠫⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⢹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢻⣿⡇⠀⠀⠀⠀\n⠀⠀⡠⠀⠀⠀⠀⣸⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⠃⢘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠈⣿⣿⠀⠀⠀⠀\n⠀⢠⣧⠀⠀⠀⢀⣿⣿⣿⣿⣿⣦⣀⣀⣀⣀⣠⣄⡀⠀⠀⣿⣿⣿⣯⡶⠟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠁⢹⣿⡇⢠⠀⠀\n⠀⠈⣿⣶⣤⣤⣾⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣄⠀⣿⣿⣿⣏⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢀⣿⣿⡇⠀⣧⠀\n⠀⠘⣌⡻⠿⠿⠟⢋⣼⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡾⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣣⣾⣿⣿⡇⢰⣿⠀\n⠀⠀⠘⠻⣷⣶⣾⣿⣿⡿⢳⣿⣿⣿⣿⣿⣿⣿⣿⠛⢋⡠⢆⠈⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢠⣿⠇⠀\n⠀⠀⠀⠀⠀⠈⣯⣉⣁⣴⣿⡿⣿⣿⣿⣿⣿⣿⣿⣧⡀⢋⠝⠃⣀⣴⠟⠻⢛⣭⡿⠚⠋⠉⠁⠒⠫⣙⠻⣿⣿⣿⡟⣱⣿⠋⠀⠀\n⠀⠀⠀⠀⠀⠀⠈⠛⠛⠛⠋⣰⣿⣿⣿⣿⣿⣿⣿⣿⣷⣤⡶⠟⠉⠀⢀⣴⠟⠁⠀⠀⠀⠀⠀⠀⠀⠈⠳⣜⢿⣿⠿⠋⠁⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⣿⣿⣿⣿⠿⣿⢯⡾⠋⠀⠀⢀⡔⢀⡾⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠺⠅⠀⠀⠀⠀⠀⠀"}
|
package/assets/eikons/mono.eikon
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
{"eikon":1,"name":"mono","width":48,"height":24,"author":"kaio","created":"2026-05-04T00:57:25.119Z"}
|
|
1
|
+
{"eikon":1,"name":"mono","width":48,"height":24,"author":"kaio","created":"2026-05-04T00:57:25.119Z","source_url":"https://raw.githubusercontent.com/liftaris/eikon/main/eikons/mono/"}
|
|
2
2
|
{"state":"idle","fps":16,"frame_count":49,"loop_from":0}
|
|
3
3
|
{"f":0,"data":"⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣿⣿⣿⣿⣿⣶⣦⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⢿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⢁⠰⣌⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣡⣟⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠞⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⠁⠁⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡿⠟⠋⢉⠛⠻⠿⠿⠿⠿⢿⡥⠁⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠁⠁⠁⠥⠁⠁⠂⠁⠁⢀⣼⡇⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣦⢀⢀⢀⠄⢀⢠⣾⣿⣥⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡇⢀⠂⠁⢀⣾⣿⣿⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡇⠁⠁⢀⢸⣿⣿⣿⣿⣿⣿⣿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣿⣇⣾⢀⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣶⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⢿⠿⢟⡿⠿⠟⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⢟⠛⢉⢑⣀⢀⢉⠊⠉⢀⢀⠂⢀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠛⠻⠛⠛⠛⠋⠉⠃⠂⠂⠁⠉⠁⠁⠁⠁⠁⠁⠁⠁⠁⠁⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀"}
|
|
4
4
|
{"f":1,"data":"⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣿⣿⣿⣿⣿⣶⣦⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⢿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⢁⠰⣌⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⣡⣟⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠁⠁⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠂⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡿⠟⠛⢉⠛⠻⠿⠿⠿⠿⢿⡥⠁⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠁⠁⠁⠥⠁⠂⠂⠁⠁⢀⣼⡏⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣦⢀⠁⢀⠄⢀⢠⣾⣿⣥⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡇⢀⠂⠁⢀⣾⣿⣽⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡇⠂⠁⢀⢸⣿⣿⣿⣿⣿⣿⣿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣿⣇⣾⢀⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣶⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⢿⡿⣿⡿⠿⠿⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⢟⠛⢉⢐⡒⢀⠉⠊⠉⢀⢀⠂⢀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠛⠻⠛⠛⠛⠋⠉⠁⠁⠂⠁⠉⠁⠁⠁⠁⠁⠁⠁⠁⠁⠁⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀\n⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: eikon
|
|
3
|
+
description: Author a sidebar eikon avatar — produce/adopt a source image into ~/.hermes/eikons/<name>/, seed studio.json, then coach the user on the in-app Eikon tab controls. Filesystem is the API; no WIP files, no event polling.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Eikon — author a herm sidebar avatar
|
|
7
|
+
|
|
8
|
+
## When this fires
|
|
9
|
+
|
|
10
|
+
User asks for a new avatar, to "make an eikon", to turn an image into their sidebar avatar, or references `~/.hermes/eikons/`.
|
|
11
|
+
|
|
12
|
+
## Folder contract
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
~/.hermes/eikons/<name>/
|
|
16
|
+
<name>.eikon packed NDJSON (48×24, 6 states)
|
|
17
|
+
studio.json { rasterizer, spatial:{zoom,ox,oy}, base:{}, per:{}, glyph, sources:{} }
|
|
18
|
+
source/ base.png (or .jpg/.webp); optionally idle.png, error.png …
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Herm's Eikon tab reads `studio.json` on open and re-renders from `source/`. Ctrl+S in the tab rewrites both files. The sidebar follows `eikon` (a bare name) in `~/.hermes/herm/tui.json`, resolved against `<profile>/eikons/` then bundled.
|
|
22
|
+
|
|
23
|
+
## Steps
|
|
24
|
+
|
|
25
|
+
1. **Get a source image.** User-supplied path → use as-is. Otherwise `image_generate` a square mono portrait (prompt should specify: high contrast, centered subject, plain background, 1:1). Save to a temp path.
|
|
26
|
+
|
|
27
|
+
2. **Pick a name.** Slugify what the user asked for (`lowercase, [a-z0-9-]`). Default `custom` if unclear.
|
|
28
|
+
|
|
29
|
+
3. **Adopt + seed.** One shell block:
|
|
30
|
+
```bash
|
|
31
|
+
NAME=…; SRC=…
|
|
32
|
+
mkdir -p ~/.hermes/eikons/$NAME/source
|
|
33
|
+
cp "$SRC" ~/.hermes/eikons/$NAME/source/base.${SRC##*.}
|
|
34
|
+
cat > ~/.hermes/eikons/$NAME/studio.json <<EOF
|
|
35
|
+
{"rasterizer":"chafa","spatial":{"zoom":1,"ox":0.5,"oy":0.5},"base":{},"per":{},"glyph":"◆","sources":{"base":"base.${SRC##*.}"}}
|
|
36
|
+
EOF
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
4. **Seed a starter `.eikon`** so the tab and gallery have something to show before the user's first Ctrl+S. If `chafa` + `ffmpeg` are installed:
|
|
40
|
+
```bash
|
|
41
|
+
ffmpeg -hide_banner -loglevel error -i ~/.hermes/eikons/$NAME/source/base.* \
|
|
42
|
+
-vf "crop=min(iw\,ih):min(iw\,ih),eq=contrast=1.0" -frames:v 1 -f image2pipe -vcodec png - \
|
|
43
|
+
| chafa --size=48x24 --format=symbols --stretch --symbols=braille --colors=none --invert --preprocess off - \
|
|
44
|
+
> /tmp/eikon-frame.txt
|
|
45
|
+
```
|
|
46
|
+
Then write six copies as NDJSON:
|
|
47
|
+
```bash
|
|
48
|
+
python3 - <<'PY'
|
|
49
|
+
import json,os
|
|
50
|
+
n=os.environ["NAME"]; f=open("/tmp/eikon-frame.txt").read().rstrip("\n")
|
|
51
|
+
rows=(f.split("\n")+[""]*24)[:24]; data="\n".join(r.ljust(48)[:48] for r in rows)
|
|
52
|
+
out=[json.dumps({"eikon":1,"name":n,"width":48,"height":24,"author":os.environ.get("USER","")})]
|
|
53
|
+
for s in ["idle","listening","thinking","speaking","working","error"]:
|
|
54
|
+
out+=[json.dumps({"state":s,"fps":12,"frame_count":1,"loop_from":1}),json.dumps({"f":0,"data":data})]
|
|
55
|
+
open(os.path.expanduser(f"~/.hermes/eikons/{n}/{n}.eikon"),"w").write("\n".join(out)+"\n")
|
|
56
|
+
PY
|
|
57
|
+
```
|
|
58
|
+
If chafa/ffmpeg aren't installed, skip this step — the tab's `native` rasterizer will render on first open.
|
|
59
|
+
|
|
60
|
+
5. **Point the sidebar at it** (optional — user can do this from Gallery):
|
|
61
|
+
```bash
|
|
62
|
+
python3 -c "import json,os; p=os.path.expanduser('~/.hermes/herm/tui.json'); d=json.load(open(p)) if os.path.exists(p) else {}; d['eikon']='$NAME'; open(p,'w').write(json.dumps(d,indent=2))"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
6. **Coach.** Tell the user:
|
|
66
|
+
> Wrote `<name>`. Open the **Eikon** tab (Alt+5 or type `/eikon`). Drag the preview to reframe, scroll to zoom. If it's too dark, nudge **contrast** up in the Knobs panel; if detail is mushy, try **symbols → block**. Tab cycles panes; ←→ on a knob row adjusts it. **Ctrl+S** saves and the sidebar updates.
|
|
67
|
+
|
|
68
|
+
## Knob vocabulary (for coaching — chafa rasterizer)
|
|
69
|
+
|
|
70
|
+
- `symbols`: braille · block · ascii · sextant · quad · half · wedge
|
|
71
|
+
- `fill`: none · stipple · ascii · braille (gradient class, layers under symbols)
|
|
72
|
+
- `dither`: none · ordered · diffusion · noise (diffusion = halftone grain)
|
|
73
|
+
- `invert`: on/off (most photos want on against a dark terminal)
|
|
74
|
+
- `flip`: none · h · v · hv
|
|
75
|
+
- `contrast`: 0.5–3.0
|
|
76
|
+
|
|
77
|
+
Spatial (preview pane, not knob rows): wheel zooms; zoom/pan x/pan y sliders below the frame.
|
|
78
|
+
|
|
79
|
+
## Don't
|
|
80
|
+
|
|
81
|
+
- Write a WIP file or poll for `tool.complete` — that flow is gone.
|
|
82
|
+
- Write tonal knob values into `studio.json.base` beyond `{}` — user owns tuning.
|
|
83
|
+
- Re-run the pipeline to "adjust contrast" for the user — tell them which knob to move.
|