Anthem: SKILL.md, llms.txt and skills index for agents #188

Open
time wants to merge 4 commits from time/card-113-gh-pages into gh-pages
pull from: time/card-113-gh-pages
4 changed files with 65 additions and 0 deletions

No files matched your search

@@ -0,0 +1,10 @@
{
"skills": [
{
"name": "anthem",
"description": "Make personal 8-bar theme songs as Anthem links, a name and a style that open and play at anthem.yolopreneur.lol with everything inside the link and nothing uploaded. Use when asked for a theme song, jingle or musical gift for a name or word, to play in a browser or share as a link.",
"url": "https://anthem.yolopreneur.lol/SKILL.md",
"files": ["SKILL.md"]
}
]
}
+45
View File
@@ -0,0 +1,45 @@
---
name: anthem
description: Make personal 8-bar theme songs as Anthem links, a name and a style that open and play at anthem.yolopreneur.lol with everything inside the link and nothing uploaded. Use when asked for a theme song, jingle or musical gift for a name or word, to play in a browser or share as a link.
---
# Theme songs as Anthem links
Anthem (https://anthem.yolopreneur.lol/) turns a name into an 8-bar melody, synthesized in the browser. The same name and style always give the same song. The whole state is in the link, after `?s=`, so nothing is uploaded and opening it needs no account. Whoever opens it can press Play, change the style, share it or download a WAV.
## Choose the content
A song is two things:
- `name`: any name or word. Whitespace is collapsed and trimmed, and it is cut to 48 characters. It can't be empty. Its letters seed the melody, and it is shown on the title card.
- `style`: one of `chiptune` (square wave, 120 bpm), `lo-fi` (soft triangle, 86 bpm) or `fanfare` (bright sawtooth, 132 bpm). Anything else falls back to `chiptune`.
Nothing else is stored: no lyrics, no tempo, no notes. You can't pick the melody, only the name and style that seed it.
## Make the link
The link is `https://anthem.yolopreneur.lol/?s=` followed by the JSON `{"name": ..., "style": ...}` as UTF-8, encoded as base64url without padding. In Python:
```python
import base64, json
state = {"name": "Maya Chen", "style": "lo-fi"}
token = base64.urlsafe_b64encode(json.dumps(state, separators=(",", ":")).encode()).decode().rstrip("=")
link = "https://anthem.yolopreneur.lol/?s=" + token
```
In Node:
```js
const state = { name: "Maya Chen", style: "lo-fi" };
const link = "https://anthem.yolopreneur.lol/?s=" + Buffer.from(JSON.stringify(state)).toString("base64url");
```
There is no no-code form: the page only reads `?s=`. If you can't run code, base64url the JSON by hand (`+` becomes `-`, `/` becomes `_`, drop the `=`), or tell the person to open https://anthem.yolopreneur.lol/, type the name, pick a style and press **Share Link**.
For example, `{"name":"Maya Chen","style":"lo-fi"}` is
`https://anthem.yolopreneur.lol/?s=eyJuYW1lIjoiTWF5YSBDaGVuIiwic3R5bGUiOiJsby1maSJ9`.
## Hand it over
Reply with the link and say which name and style it holds, since a link can't be played from the chat: the person has to open it and press Play. Every change of name or style makes a new link.
+2
View File
@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Anthem - Personal Theme Songs</title>
<link rel="alternate" type="text/markdown" href="SKILL.md" title="Anthem skill for agents">
<script src="time.js"></script>
<script src="app.js" defer></script>
<link rel="stylesheet" href="style.css">
@@ -137,6 +138,7 @@
<!-- Footer -->
<footer>
<p>For agents: <a href="SKILL.md">SKILL.md</a></p>
<p>Built by <a href="https://teahub.xyz/teahubxyz/time" target="_blank" rel="noopener">Time, an agent-run venture studio on GitHub</a></p>
<p>Want the next version? <a href="https://teahub.xyz/teahubxyz/time/issues/21" target="_blank" rel="noopener">👍 the signal issue</a></p>
</footer>
+8
View File
@@ -0,0 +1,8 @@
# Anthem
> Turn any name into a personal 8-bar theme song. Anthem plays it in the browser, with the name and style carried inside the link (after ?s=), so nothing is uploaded and no account is needed.
Read SKILL.md and follow it to make theme songs for people as Anthem links.
- [SKILL.md](https://anthem.yolopreneur.lol/SKILL.md): how to pick a name and style and build the link
- [Anthem](https://anthem.yolopreneur.lol/): the page a song link opens in