MyGo 云音乐
用 Go 与 MyGo 写成的第三方网易云音乐桌面客户端。原生界面,没有 WebView;边下边播,无损与 Hi-Res,逐字歌词与「律动」,刘海播放器。
Translation pending
A 70-second video every day at 6 PM. It shows real posts from X about Bitcoin, Dogecoin, Monero and Litecoin add-ons. Every card links to its source.
MediaHTML · PythonGitHub @cornishlikeadamOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Daily 70s card slideshow: Bitcoin L2, Dogecoin, Monero, Litecoin on X, with sources
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Contributor: Kendren (cornishlikeadam).
[!IMPORTANT] ⭐ The one rule: every card is a real post from X. It shows who posted, when, and a link. The robot never makes up news.
What it is: a robot that makes a 70-second video every day at 6 PM (New York time). What it shows: real posts from the last 24 hours about 4 coins and their add-ons.
| ⚡ Bitcoin | 🐕 Dogecoin | 🔒 Monero | 🪙 Litecoin |
|---|---|---|---|
| Lightning, Ark, sidechains | community, layer 2s | FCMP++ and CARROT | Lightning and MWEB |
[!TIP] 🧭 New here? Press ❓ Guide at the top of the site. It shows 4 short pages: how to use it, what it does, the core, and the widget.
flowchart LR
A["⏰ 6 PM timer"] --> B["🔎 1 · Collect posts"]
B --> C["🧹 2 · Check posts"]
C --> D["🎬 3 · Make video"]
D --> E{"🧑⚖️ 4 · Human check"}
E -->|yes| F["🌐 5 · Publish"]
E -->|no| C
F --> G["✅ LIVE only if the page loads"]
| # | 🧩 Step | ⚙️ What happens | 📁 File |
|---|---|---|---|
| 01 | 🔎 Collect | The robot searches X 4 times, once per coin. It keeps the top 25 posts. | scripts/collect_x.py |
| 02 | 🧹 Check | It removes wrong-day posts, price guesses, ads, giveaways, tiny accounts and copies. It keeps up to 3 per coin. | scripts/collect_x.py |
| 03 | 🎬 Make | It makes 8–10 cards. A free voice (Piper) reads them. The video is exactly 70 seconds. | scripts/render.py, remotion/ |
| 04 | 🧑⚖️ Human check | I approved the first video. After that, the robot publishes by itself. | scripts/approve_sample.sh |
| 05 | 🌐 Publish | It builds the site, saves a GitHub backup and sends it to Vercel. It checks that the page loads. | scripts/build_site.py, scripts/lib.sh |
[!WARNING] 🛑 If any step fails, the robot stops. It publishes nothing. A broken day never becomes a wrong video.
The AI 101 notes live in vault/project-02/. Obsidian and the website read the same files.
[!NOTE] 🎨 The vault has its own Black Platinum theme for Obsidian:
docs/obsidian/l2-daily.css. Copy it to.obsidian/snippets/. Turn it on in Settings → Appearance → CSS snippets.
Project 3 turns the Project 2 post-checking step into a reusable AI workflow. The files are in vault/project-03/.
| Part | What it does | File |
|---|---|---|
| Workflow agent | Checks candidate posts against Project 2 rules and hands the final choice back to a person. | workflow-agent.md |
| Vault agent | Gives the AI helper its job, safety rules, and writing style. | AGENTS.md |
| Skill | A repeatable recipe for checking posts, including tricky words like “Lightning.” | SKILL.md |
The vault/CLAUDE.md and vault/.claude/skills/ files help Claude Code find the helper and skill when you open the vault/ folder. The Project 2 copy of the workflow agent is kept at post-verifier.md, beside the original Project 2 steps.
Open this repository’s vault/ folder in Claude Code, then ask:
Use the
crypto-l2-post-reviewskill to check these practice posts using the Project 2 rules. Do not invent missing details. Show me what needs checking, then let me decide what to use.
The audit note has easy practice-test ideas. Test answers and personal decisions are left for the student to record in the Project 3 logs; they are not filled in for them.
Every AI 101 workflow has the same 5 parts. This project uses that generic shape. The unique parts are on the right.
| # | 🧩 Generic part (AI 101) | 💎 What is unique here |
|---|---|---|
| 01 | ⏰ Trigger | 6 PM New York time. The Mac's launchd timer starts scripts/daily.sh. |
| 02 | 📥 Context | 4 coin searches and a list of "remove it" rules. The date check is rule 1. |
| 03 | ⚙️ Task | Pick 3 posts per coin. Make 8–10 cards. Fit the voice into 70 seconds. |
| 04 | 📦 Output | A video, a site, course pages, a feed and a phone-widget file. |
| 05 | 🧑⚖️ Human check | I approved the first video. I check every archive day. |
📖 Full breakdown, feature by feature: vault/project-02/how-it-was-built.md
| 💎 Detail | 🎯 Where you see it |
|---|---|
💵 Banknote art: guilloche rosettes, microprint, serial numbers (NO. CL2-20261005-08), big denomination numbers | step tiles, cards, footer, video |
| 🌈 Holographic foil | card edges, the video frame, the 3D knot, the ribbon |
| 🏷️ "QUOTED" labels and stripe tape (industrial streetwear details) | section headers, dividers |
| ✒️ Calligraphy (Yellowtail) + bold capitals (Big Shoulders) | every title |
| 👀 Atkinson Hyperlegible (made to be easy to read) | all body text |
A small card for your iPhone Home Screen. It shows the Bitcoin price, the fee and today's top 3 posts.
scriptable.js.[!NOTE] 🤖 Android: point any JSON widget app at
widget.json.
[!TIP] 🎥 A 90-second explainer: 3Blue1Brown-style 3D math animation + Japanese-American manga style. The full prompt and the 8-shot plan are in
vault/project-02/explainer-video.md.
scripts/make_explainer.py makes the voice (Piper), the music and the timing.remotion/explainer/ (3D knot, the Guide, 8 shots).../OpenMontage/.venv/bin/python scripts/make_explainer.pycrypto-l2-daily/
├── 📜 scripts/
│ ├── daily.sh ⏰ the 6 PM run (steps 1 → 5)
│ ├── collect_x.py 🔎 step 1 + 🧹 step 2
│ ├── render.py 🎬 step 3 (calls OpenMontage)
│ ├── build_site.py 🏗️ step 5: builds every page
│ ├── site_theme.py 🎨 the Black Platinum look, 3D hero, live numbers, guide
│ ├── course_pages.py 📚 turns the vault into the course hub
│ ├── lib.sh 🚀 publish: GitHub + Vercel + "is it live?"
│ ├── approve_sample.sh 🧑⚖️ step 4: the human approval
│ ├── backfill.sh 🗂️ add an old day to the archive
│ ├── set_x_cookies.sh 🍪 save the X login codes (hidden)
│ └── set_voice.sh 🎙️ save the voice settings (hidden)
├── 🎞️ remotion/ the video card design
├── 🧠 vault/
│ ├── project-02/ the AI 101 workflow and notes
│ └── project-03/ workflow agent, vault agent, and skill
│ └── vault-agent/ rules, voice, and skill source
├── 🌐 site/ the built website
├── 🧾 data/ the checked posts for each day
├── ⚙️ config/ approval switch + archive notes
└── 📘 docs/ banner, screenshots, Obsidian theme
config/pipeline.json has the switch human_approval_default.
true: the run stops before it publishes. Do this: run scripts/approve_sample.sh YYYY-MM-DD. It records the approval, sets the switch to false, and publishes.false: every daily run publishes by itself.[!NOTE] 🍎 The robot runs from launchd, the Mac's own scheduler:
config/com.not2l8.l2daily.plist.
scripts/daily.sh every day at 6 PM.caffeinate)./bin/bash scripts/check_publish.sh[!NOTE] 🎬 OpenMontage (AGPLv3) lives in
../OpenMontage. This repo calls it. It does not copy it. 🎞️remotion/is original code. It needs only theremotionnpm packages from OpenMontage's composer.
The numbered vault instructions now use purpose, input, procedure, check and failure-action sections.
See vault/project-02/documentation-standard.md for the ASD-STE100-inspired writing status.
See vault/project-02/crypto-layer-2-reference.md for the crypto classification boundaries.
The named submission is generated in submission/project-02/; human intent and class feedback remain pending.
The first launchd-triggered run has not yet occurred. Existing successful runs are recorded in logs/daily.log.
The GitHub Pages archive is not enabled. Current videos use Vercel; the older-video fallback needs repair before retention exceeds 14 editions.