← 返回 Skills 市场
melvynx

tella-cli

作者 Melvyn · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ✓ 安全检测通过
54
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install tella-cli
功能描述
Manage Tella via CLI - videos, clips, playlists, webhooks. Use when user mentions 'tella', 'tella.tv', 'tella video', 'screen recording', 'video transcript',...
使用说明 (SKILL.md)

tella-cli

When To Use This Skill

Use the tella-cli skill when you need to:

  • List, fetch, update, or delete videos in a Tella workspace
  • Pull transcripts (cut or uncut) for a clip with word-level timestamps
  • Generate video or clip thumbnails (jpg/png/webp/gif/mp4) at custom sizes/timestamps
  • Trigger video exports at 1080p or 4k, 30/60fps, with optional burned-in subtitles
  • Duplicate a video or clip, optionally trimmed
  • Edit clips: cut time ranges, reorder, remove filler words, find silent ranges
  • Add or update visual edits: blurs, highlights, layouts, zooms (manual or tracking)
  • Manage playlists and add/remove videos from them
  • Add workspace collaborators (editor or viewer) to a video
  • Create webhook endpoints, fetch signing secrets, and inspect recent deliveries

Capabilities

  • Read every video and playlist in the workspace, including metadata, view counts, and share links
  • Push fine-grained edits to clips (cuts, reorders, blurs, highlights, layouts, zooms) without opening the Tella editor
  • Pull transcripts for downstream search, summarization, or accessibility workflows
  • Start exports and poll/list webhook deliveries to know when files are ready
  • Manage sharing: linkScope, password, allowed embed domains, search-engine indexing
  • Subscribe to events (video.created, export.ready, transcript.ready, etc.) and recover delivery messages

Common Use Cases

  • "List my last 20 Tella videos and dump them as JSON for a content audit"
  • "Get the uncut transcript for clip X so I can generate chapter timestamps"
  • "Export video Y at 4k 60fps with subtitles burned in"
  • "Add a blur over the credentials shown between 4.2s and 7.8s on this clip"
  • "Create a playlist 'Tutorials' and add these 5 videos to it"
  • "Wire up a webhook so I get notified when an export is ready"
  • "Remove filler words from this clip and then fetch the cleaned transcript"

Setup

If tella-cli is not found, install and build it:

bun --version || curl -fsSL https://bun.sh/install | bash
npx api2cli bundle tella
npx api2cli link tella

api2cli link adds ~/.local/bin to PATH automatically. The CLI is available in the next command.

Always use --json when calling commands programmatically.

Working Rules

  • Always use --json for agent-driven calls so downstream steps can parse the result
  • Run \x3Cresource> --help or \x3Cresource> \x3Caction> --help when unsure of flags rather than guessing
  • For destructive actions (delete, remove-*), read first with get/list to confirm the target
  • Most clip mutations require both \x3CvideoId> and \x3CclipId> as positional args (in that order)
  • Coordinates for masks (blurs, highlights) and zoom focus points are normalized to 0-1 of the canvas
  • Times are in milliseconds (*-ms flags) unless the docs say otherwise

Authentication

tella-cli auth set "tella_pk_xxx..."   # API key from https://www.tella.tv/settings/api-keys
tella-cli auth test                     # Verify the key works
tella-cli auth show                     # Show masked token
tella-cli auth remove                   # Delete stored token

Token is stored at ~/.config/tokens/tella-cli.txt (chmod 600).

Resources

videos

Action Description Key Flags
list List videos in the workspace --cursor, --limit, --playlist-id, --fields
get \x3Cid> Get a single video's metadata -
update \x3Cid> Update title, description, sharing, playback --name, --description, --link-scope, --password, --allowed-embed-domains, --custom-thumbnail-url, --default-playback-rate, --captions-default-enabled, --comments-enabled, --comment-emails-enabled, --downloads-enabled, --raw-downloads-enabled, --publish-date-enabled, --search-engine-indexing-enabled, --transcripts-enabled, --view-count-enabled
delete \x3Cid> Delete a video -
duplicate \x3Cid> Duplicate, optionally trimmed --name, --trim-start-ms, --trim-end-ms
export \x3Cid> Start an export job --resolution (1080p/4k), --fps (30/60), --speed, --granularity (video/clips/raw), --subtitles
thumbnail \x3Cid> Get thumbnail/animated preview --format (jpg/png/webp/gif/mp4), --inpoint-ms, --duration-ms, --width, --height, --download, --response json
add-collaborator \x3Cid> Add a workspace member --email (required), --role editor|viewer (required)

clips

Most clip commands take \x3CvideoId> \x3CclipId> as positional args.

Action Description Key Flags
list \x3CvideoId> List clips for a video --fields
get \x3CvideoId> \x3CclipId> Get a single clip -
update \x3CvideoId> \x3CclipId> Rename or reorder --name, --order
delete \x3CvideoId> \x3CclipId> Delete a clip -
duplicate \x3CvideoId> \x3CclipId> Duplicate the clip --name, --order
cut \x3CvideoId> \x3CclipId> Cut a time range out --from-ms (req), --to-ms (req)
reorder \x3CvideoId> \x3CclipId> Move to new position --order (req)
remove-fillers \x3CvideoId> \x3CclipId> Auto-remove filler words -
silences \x3CvideoId> \x3CclipId> List silent ranges --min-duration-ms
transcript-cut \x3CvideoId> \x3CclipId> Edited transcript (post-cuts) -
transcript-uncut \x3CvideoId> \x3CclipId> Original transcript -
thumbnail \x3CvideoId> \x3CclipId> Clip thumbnail/preview --format, --inpoint-ms, --duration-ms, --width, --height, --download, --response
list-sources \x3CvideoId> \x3CclipId> List recording sources --fields
source-thumbnail \x3CvideoId> \x3CclipId> \x3CsourceId> Source thumbnail same as clip thumbnail
source-waveform \x3CvideoId> \x3CclipId> \x3CsourceId> Audio waveform JSON -
list-blurs \x3CvideoId> \x3CclipId> List blur masks -
add-blur \x3CvideoId> \x3CclipId> Add a blur mask --start-time-ms, --duration-ms, --point-x, --point-y, --dim-width, --dim-height (all required)
update-blur \x3CvideoId> \x3CclipId> \x3CmaskId> Update a blur any of the mask flags above
remove-blur \x3CvideoId> \x3CclipId> \x3CmaskId> Remove a blur -
list-highlights \x3CvideoId> \x3CclipId> List highlight masks -
add-highlight \x3CvideoId> \x3CclipId> Add a highlight same mask flags as add-blur
update-highlight \x3CvideoId> \x3CclipId> \x3CmaskId> Update a highlight mask flags
remove-highlight \x3CvideoId> \x3CclipId> \x3CmaskId> Remove a highlight -
list-layouts \x3CvideoId> \x3CclipId> List layouts -
add-layout \x3CvideoId> \x3CclipId> Add a layout (JSON shape) --layout (JSON, req), --start-time-ms, --duration-ms, --transition-style
update-layout \x3CvideoId> \x3CclipId> \x3ClayoutId> Update a layout --layout, time flags, --transition-style
remove-layout \x3CvideoId> \x3CclipId> \x3ClayoutId> Remove a layout -
list-zooms \x3CvideoId> \x3CclipId> List zooms -
add-zoom \x3CvideoId> \x3CclipId> Add a zoom --type manualZoom|trackingZoom (req), --start-time-ms (req), --duration-ms (req), --scale, --focus-x, --focus-y
update-zoom \x3CvideoId> \x3CclipId> \x3CzoomId> Update a zoom same as add-zoom
remove-zoom \x3CvideoId> \x3CclipId> \x3CzoomId> Remove a zoom -

Mask coordinates (--point-*, --dim-*, --focus-*) are normalized 0-1 of the canvas.

playlists

Action Description Key Flags
list List all playlists --visibility (personal/org), --cursor, --limit, --fields
get \x3Cid> Get playlist details -
create Create a new playlist --name (req), --description, --emoji, --link-scope, --password, --visibility, --search-engine-indexing-enabled
update \x3Cid> Update a playlist --name, --description, --link-scope, --password, --search-engine-indexing-enabled
delete \x3Cid> Delete a playlist -
add-video \x3Cid> Add a video to it --video-id (req)
remove-video \x3Cid> \x3CvideoId> Remove a video from it -

webhooks

Action Description Key Flags
create-endpoint Subscribe to events --url (req), --filter-types (req, comma-separated, e.g. video.created,export.ready)
delete-endpoint \x3Cid> Delete an endpoint -
get-secret \x3Cid> Get the signing secret -
list-messages Recent delivery messages --event-types, --limit, --fields
get-message \x3Cid> Get a specific message -

Available event types include: video.created, video.viewed, view.milestone, transcript.ready, export.ready, playlist.created, playlist.video_added.

Output Format

--json returns a standardized envelope:

{ "ok": true, "data": { ... }, "meta": { "total": 42 } }

On error: { "ok": false, "error": { "message": "...", "status": 401 } }

Quick Reference

tella-cli --help                       # List all resources and global flags
tella-cli videos --help                # List actions on videos
tella-cli videos list --help           # Show flags for videos list
tella-cli clips add-zoom --help        # Show flags for add-zoom

Global Flags

All commands support: --json, --format \x3Ctext|json|csv|yaml>, --verbose, --no-color, --no-header

Exit codes: 0 = success, 1 = API error, 2 = usage error

安全使用建议
Install this only if you want an agent to operate your Tella workspace. Use the narrowest Tella API key available, confirm before deletes, collaborator changes, sharing/password changes, exports, webhook changes, or secret retrieval, and treat transcripts and share links as potentially sensitive.
能力标签
requires-sensitive-credentials
能力评估
Purpose & Capability
The stated purpose is managing Tella videos, clips, playlists, collaborators, exports, transcripts, sharing settings, and webhooks; the capabilities listed in SKILL.md match that purpose.
Instruction Scope
The skill includes broad trigger phrases such as screen recording and video transcript, and it exposes high-impact actions, but those actions are disclosed and tied to Tella workflows.
Install Mechanism
Setup instructs users to install Bun via curl-to-bash if missing and then run npx api2cli commands; no bundled executable or hidden installer file was present.
Credentials
Network/API access and a Tella API key are proportionate for a Tella CLI integration, and the artifact states what workspace data it can read or modify.
Persistence & Privilege
The skill stores a Tella token at ~/.config/tokens/tella-cli.txt with chmod 600 and can retrieve webhook signing secrets; this is sensitive but disclosed and purpose-aligned.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install tella-cli
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /tella-cli 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.0
Publish Tella CLI AgentSkill generated with api2cli
元数据
Slug tella-cli
版本 0.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

tella-cli 是什么?

Manage Tella via CLI - videos, clips, playlists, webhooks. Use when user mentions 'tella', 'tella.tv', 'tella video', 'screen recording', 'video transcript',... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 54 次。

如何安装 tella-cli?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install tella-cli」即可一键安装,无需额外配置。

tella-cli 是免费的吗?

是的,tella-cli 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

tella-cli 支持哪些平台?

tella-cli 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 tella-cli?

由 Melvyn(@melvynx)开发并维护,当前版本 v0.1.0。

💬 留言讨论