Codync
免费开源的 1:1 Grok Bot 与 Muse 替代方案。可在 iPhone、Mac 或 Linux 桌面上将 Claude 代码、Codex、Cursor 以及 40 多个编码代理作为持久机器人使用。支持群组聊天、线程、应用。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
Transcrição com timestamps de vídeos do YouTube, a partir das legendas existentes. Funciona pelo terminal (CLI) e por uma página web servida por uma API HTTP, na porta 3000.
[00:00:12] Antes de investir em uma empresa,
precisamos analisar seus fundamentos.
[00:00:19] O preço de uma ação não determina,
sozinho, se ela está barata ou cara.
asdf install, versão em .tool-versions).venv)python -m venv .venv
.venv/bin/pip install -r requirements-dev.txt
.venv/bin/pip install -e .
source .venv/bin/activate
ytscript "https://www.youtube.com/watch?v=VIDEO_ID"
ytscript "https://youtu.be/VIDEO_ID" > transcricao.txt # salvar em TXT
Transcrição no stdout; erros no stderr. Saída: 0 sucesso, 1 erro, 2 argumentos inválidos.
uvicorn ytscript.api:app --port 3000
Abra http://localhost:3000, cole a URL e clique em Transcrever. A página mostra título, canal, duração e idioma do vídeo, e permite escolher idioma, formato (.txt/.srt/.md), timestamps, copiar e baixar. A API fica em POST /api/transcripts ({"url": "...", "language"?, "translate_to"?}) e GET /api/health. O POST é limitado por IP a 10 requisições por minuto e 100 por dia, com teto global de 2000 por dia (YTSCRIPT_RATE_LIMIT, YTSCRIPT_RATE_WINDOW, YTSCRIPT_DAILY_LIMIT, YTSCRIPT_GLOBAL_DAILY_LIMIT); acima disso responde 429. Detalhes em architecture.md.
Para scripts e automações, gere uma chave e informe-a no servidor:
python -c "import secrets; print(secrets.token_urlsafe(32))" # gera a chave
export YTSCRIPT_API_KEYS="chave1,chave2" # no servidor (várias, separadas por vírgula)
curl -X POST http://localhost:3000/api/transcripts \
-H "Content-Type: application/json" -H "X-API-Key: chave1" \
-d '{"url": "https://youtu.be/VIDEO_ID"}'
Com chave valem limites próprios: 30 por minuto e 1000 por dia por chave, 5000 por dia no total (YTSCRIPT_KEY_RATE_LIMIT, YTSCRIPT_KEY_DAILY_LIMIT, YTSCRIPT_KEY_GLOBAL_DAILY_LIMIT). Chave inválida responde 401; chaves com menos de 32 caracteres são ignoradas. Para revogar, retire a chave da lista e faça novo deploy. Nunca commite as chaves.
O FastAPI roda como função Python (entrypoint app.py) e public/ é servida pelo CDN. Como cada requisição pode cair numa instância diferente, o rate limit precisa do Redis: adicione a integração Upstash Redis ao projeto (Marketplace da Vercel) e confira em Settings → Environment Variables se UPSTASH_REDIS_REST_URL e UPSTASH_REDIS_REST_TOKEN (ou KV_REST_API_URL e KV_REST_API_TOKEN) foram criadas. Não há banco de dados nem cron: os contadores expiram sozinhos. Sem essas variáveis o limite cai para a memória do processo e deixa de valer na prática.
black --check .
pytest
Documentação em docs/: arquitetura, commits, código, testes, erros.
youtube-transcript-api usa endpoints não oficiais.正在加载完整 README。
查看完整 README ↗