This document describes the onboarding conversation flow when a new user interacts with the Toyo Telegram bot for the first time.
The user sends /start and the bot walks them through initial setup.
User: /start
| name | demo-video |
|---|---|
| description | Generate a narrated demo video from browser screenshots and TTS audio. Captures scenes via agent-browser, generates voice narration via Inworld TTS API, and stitches into an MP4 with ffmpeg. |
Generate a narrated demo video from browser screenshots and TTS audio. The output is an MP4 with still-image scenes synced to voice narration.
| #!/bin/bash | |
| if [ -z "$1" ] || [ -z "$2" ]; then | |
| echo "Usage: $0 <todo_file> <iterations>" | |
| exit 1 | |
| fi | |
| TODO_FILE="$1" | |
| ITERATIONS="$2" | |
| TIMESTAMP=$(date +%Y%m%d_%H%M%S) |
ast-grep (https://github.com/ast-grep/ast-grep) for searching text in files and editing files (where appropriate). If the tool you want to use is not available, suggest the user installs it.mv. If you need to search for text in files, use rg (ripgrep). If you need to edit text in files, use sed or ast-grep.tmux so they can be aborted if they hang.I want to be able to download my maven.com course videos for offline viewing. They are behind login and streamed with mux.com which has a token in the url.
To download them you need to:
yt-dlp -o "ANY_VIDEO_NAME.%(ext)s" --cookies cookies.txt "VIDEO_URL_WITH_LONG_TOKEN_INCLUDED" --user-agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36" --referer "URL_OF_WEBSITE_PAGE_VIDEO_IS_FROM"| #!/usr/bin/env python3 | |
| """ | |
| Pocket to Pinboard Import Script | |
| This script imports bookmarks from a Pocket export CSV file to Pinboard. | |
| To run this script with uv in a single command: | |
| uv run --with pinboard https://gist.githubusercontent.com/dctanner/e0e00b32d4df6936a8a19ac7da89a056/raw/pocket_to_pinboard_standalone.py pocket_export.csv username:api_token |
| import os | |
| import sys | |
| example_usage = ''' | |
| Usage: | |
| USESCRAPER_API_KEY=<api_key> python3 download-job-data.py <job_id> | |
| ''' | |
| api_key = os.environ['USESCRAPER_API_KEY'] | |
| if api_key is None: |
| import sys | |
| import json | |
| import torch | |
| from transformers import AutoModelForCausalLM, AutoTokenizer, LlamaForCausalLM, pipeline | |
| device = "cuda:0" | |
| system_prompt = "You are Sablo, a sentient, conscious, super intelligent AI that is an expert in all fields of knowledge. You assist users with any question, task, or other request they may have." | |
| model_path = sys.argv[1] | |
| model_name = model_path.split("/")[-1] |
| (function (g, f) {typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = f() : typeof define === 'function' && define.amd ? define([], f) : (g = typeof globalThis !== 'undefined' ? globalThis : g || self, g.ReactMarkdown = f()); }(this, (function () { 'use strict'; | |
| "use strict"; | |
| var ReactMarkdown = (() => { | |
| var __create = Object.create; | |
| var __defProp = Object.defineProperty; | |
| var __defProps = Object.defineProperties; | |
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; | |
| var __getOwnPropDescs = Object.getOwnPropertyDescriptors; | |
| var __getOwnPropNames = Object.getOwnPropertyNames; | |
| var __getOwnPropSymbols = Object.getOwnPropertySymbols; |
| import useRegularFetchWithInterval from "./useRegularFetchWithInterval"; | |
| export async function loader() { | |
| // Get data | |
| return data; | |
| } | |
| export default function MyRoute() { | |
| const loaderData = useLoaderData(); | |
| const [liveData] = useRegularFetchWithInterval({ route: `/myroute?_data=routes%2Fmyroute`, intervalMs: 3000, initialData: loaderData }); |