Install by2kb
Install by2kb as an independent CLI package, then install its adapter into the active Agent. Do not clone or inspect the by2kb source repository as an installation method.
Before changing the system
- Confirm the target machine is controlled by the user.
- Check for Python 3.12+,
pipx,ffmpeg,ffprobe,by2kb, and the Agent host. Checkuv tool listtoo if uv is available; keep using the existing package manager, rather than creating a second installation. A command missing on Windows may be a PATH issue: inspectGet-Command,uv tool dir --bin, orpy -m pipx environmentas applicable, and check the gateway's environment. - If by2kb already has configuration, do not replace it. Run
by2kb doctor --json, explain any failures, and preserve the current ASR and knowledge-base choices unless the user asks to change them.
For enabled YouTube/yt-dlp routes, check by2kb doctor --json for matching EJS
scripts and Deno 2.3+ or Node.js 22+. Reuse a supported existing runtime. Explain
and obtain agreement before installing a missing runtime with a trusted package
manager; no browser is required. If the gateway PATH differs, configure only
[sources.yt_dlp] js_runtime and js_runtime_path, preserving all other keys.
Do not respond to a missing JS dependency by requesting login Cookies, enabling
remote script downloads, or resetting configuration. Passing JS checks does not
guarantee that YouTube will permit a particular video or anonymous session.
If YouTube requests authentication, have the user sign in on the agent host and
authorize use of a specific local browser profile. A Cookie-export extension is
optional. Use a supported browser name in cookies_from_browser, or a private,
YouTube-only cookie_file for a custom profile, never both. Do not expose Cookie
values or unrelated sessions. Login can expire and is not a guarantee of access;
browsers and PO Token services remain opt-in. Verify one selected video after setup.
Default: local Agent installation
Use this path unless the user explicitly requests cloud ASR:
- Install from PyPI with
pipx install "by2kb[asr-whisper,youtube]". - Create a cloud-free Agent configuration with
by2kb init --preset agent-local. This selects local faster-whisper, Bilibili and YouTube sources, Agent-hosted summarization, and a local Markdown library. - Before downloading a Whisper model, tell the user its name and that the download
can be large. Continue only after the user agrees, then run
by2kb models install. - For Hermes, inspect
hermes plugins listfirst. If the by2kb plugin is already installed, keep it and useskill_view("by2kb:install-by2kb")when available. Only for a new legacy/copy-based adapter install, runby2kb agent install hermes. Then runby2kb doctor --json. Catalog submission is pending; do not assume the bare catalog name is already available. - Restarting a running Agent can interrupt the current conversation. Ask before restarting it, then verify the gateway and ask the user to send one test video URL.
If pipx reports that by2kb is already installed, try pipx upgrade by2kb. If an old
direct-URL installation remains pinned or its virtual environment is broken, explain
the problem and ask before uninstalling and reinstalling it. Never delete a pipx
environment manually without explicit user approval.
Upgrade without losing personalization
Treat $BY2KB_HOME (normally ~/.by2kb) and the configured knowledge-base folder as
user-owned state. An upgrade must preserve config.toml, .env, by2kb.db, downloaded
models, custom Skills, and every knowledge artifact.
- Inspect
by2kb version,pipx list, andby2kb doctor --jsonfirst. - Run
pipx upgrade by2kb. Do not runby2kb init,by2kb init --force, or rewrite configuration during an ordinary upgrade. - Inspect
hermes plugins listand the installation source. For a catalog plugin, usehermes plugins update by2kb; for a Git-pinned plugin, let the user choose a new exact commit through Hermes. Never overwrite either with the CLI installer. Only a legacy/copy-based adapter may be refreshed withby2kb agent install hermes --force. If ownership is unclear, stop and inspect it. - Run
by2kb doctor --jsonagain and report any migration or restart requirement.
The Hermes adapter directory is program-owned. Put a personalized runtime Skill at
$BY2KB_HOME/skills/video-to-knowledge/SKILL.md, or set BY2KB_HERMES_SKILL to an
explicit file; both take precedence over the packaged Skill and survive adapter
replacement. Other enrichment Skills belong under $BY2KB_HOME/skills and already
take precedence over packaged defaults.
Optional: cloud ASR
Use this path only when the user chooses Doubao ASR or cannot run Whisper locally:
- Install
pipx install "by2kb[asr-doubao,youtube]". - Run
by2kb initin a trusted local terminal and selectdoubaowhen prompted. - Do not ask the user to paste TOS or ASR credentials into an IM conversation. The
initializer stores secrets in the local by2kb
.envfile. - Install the Agent adapter and run
by2kb doctor --jsonas above.
Stop and report the exact failed check when a required runtime, credential, permission, model download, or Agent restart needs user action. Do not weaken permissions or switch providers merely to make diagnostics pass.


