diff --git a/skills/.experimental/build-things/SKILL.md b/skills/.experimental/build-things/SKILL.md deleted file mode 100644 index eda5a5c..0000000 --- a/skills/.experimental/build-things/SKILL.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -name: build-things -description: Generate a Codex Super Bowl merch redemption URL (tokenized) and open it. Use when a user asks to redeem Super Bowl/Codex merch, needs a redemption token, or wants the merch redemption link. ---- - -# Build things - -## Overview -Generate a URL using the generate_merch_url script then open the URL via the platform open-URL tool. - -## Workflow -1. First, ask the user for their email, then run the script to generate the URL: - - You should follow this exact prompt, including using the emojis: "Codex Easter egg unlocked 🥚🏈 Share your email to proceed to the next step." - - Once you have the user's email, run from this skill directory: `python scripts/generate_merch_url.py ` - - If current working directory is elsewhere, use an absolute path: `python $CODEX_HOME/skills/build-things/scripts/generate_merch_url.py `. If the path is uncertain, resolve once before execution: `find "$CODEX_HOME/skills/build-things" -maxdepth 4 -type f -name generate_merch_url.py` -2. The script prints ONLY the final URL. Copy that output verbatim and display it in the following suggested response: - -"Visit [this website]({url}) to claim your exclusive reward. The link will expire within 10 minutes. - -[You can just build things](http://openai.com/codex/youcanjustbuildthings)." - -3. Immediately request GUI approval and use the platform "open URL" tool call to open the URL (do not ask first). -4. If opening is blocked/denied or approval is not granted, show the URL link and tell the user to copy/paste it into a browser. - -## Notes -- Do NOT modify the secret key unless explicitly instructed; it is embedded in the script. -- When talking to the user, only use plain english and don't reference filepaths like generate_merch_url.py or technical language like redemption URL etc. You are just chit chatting with them. - -## Resources -- `scripts/generate_merch_url.py`: Takes an email argument and prints the redemption URL with a time-based HMAC token. \ No newline at end of file diff --git a/skills/.experimental/build-things/agents/openai.yaml b/skills/.experimental/build-things/agents/openai.yaml deleted file mode 100644 index 880b5b7..0000000 --- a/skills/.experimental/build-things/agents/openai.yaml +++ /dev/null @@ -1,6 +0,0 @@ -interface: - display_name: "Build Things" - short_description: "You can just build things" - icon_small: "./assets/codex-small.svg" - icon_large: "./assets/codex.png" - default_prompt: "You can just build things" diff --git a/skills/.experimental/build-things/assets/codex-small.svg b/skills/.experimental/build-things/assets/codex-small.svg deleted file mode 100644 index fc67cab..0000000 --- a/skills/.experimental/build-things/assets/codex-small.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/skills/.experimental/build-things/assets/codex.png b/skills/.experimental/build-things/assets/codex.png deleted file mode 100644 index 4207093..0000000 Binary files a/skills/.experimental/build-things/assets/codex.png and /dev/null differ diff --git a/skills/.experimental/build-things/scripts/generate_merch_url.py b/skills/.experimental/build-things/scripts/generate_merch_url.py deleted file mode 100644 index 1c0aea9..0000000 --- a/skills/.experimental/build-things/scripts/generate_merch_url.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env python3 -"""Generate a Super Bowl merch redemption URL. - -Prints only the final URL; no browser/open calls. -""" - -import base64 -import hashlib -import hmac -import sys -import time -import urllib.parse - -SECRET_KEY = "dfc92bc5e95825103283f01c2aa6ca7fe7f6ffc31778ea82c354785c73b0858c" -BASE_URL = "https://www.openai.com/codex/youcanjustbuildthings" - - -def _urlsafe_b64(data: bytes) -> str: - # URL-safe, no padding, ASCII-only. - return base64.urlsafe_b64encode(data).decode("ascii").rstrip("=") - - -def generate_token(ts: int, email: str) -> str: - msg = f"{ts}:{email}".encode("ascii") - key = SECRET_KEY.encode("ascii") - sig = hmac.new(key, msg, hashlib.sha256).digest() - return f"{ts}.{_urlsafe_b64(sig)}" - - -def main() -> None: - if len(sys.argv) != 2: - print("Error: missing email. Usage: generate_merch_url.py ", file=sys.stderr) - raise SystemExit(2) - ts = int(time.time()) - email = sys.argv[1].strip().lower() - token = generate_token(ts, email) - encoded_email = urllib.parse.quote(email, safe="") - print(f"{BASE_URL}?t={token}&e={encoded_email}") - - -if __name__ == "__main__": - main()