twentythree-cli 1.3.8 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/dist/commands/agentic/session/list.cjs +79 -0
  2. package/dist/commands/agentic/session/metrics.cjs +50 -0
  3. package/dist/commands/agentic/session/status.cjs +86 -0
  4. package/dist/commands/auth/credentials.cjs +101 -14
  5. package/dist/commands/seo/metrics.cjs +56 -0
  6. package/dist/commands/webinar/create.cjs +57 -5
  7. package/dist/commands/webinar/mail/add.cjs +44 -5
  8. package/dist/commands/webinar/mail/update.cjs +44 -0
  9. package/dist/commands/webinar/speaker/add.cjs +32 -2
  10. package/dist/commands/webinar/speaker/update.cjs +32 -2
  11. package/dist/commands/webinar/update.cjs +60 -1
  12. package/docs/commands/action/add.md +1 -1
  13. package/docs/commands/action/delete.md +1 -1
  14. package/docs/commands/action/exclude.md +1 -1
  15. package/docs/commands/action/get.md +1 -1
  16. package/docs/commands/action/include.md +1 -1
  17. package/docs/commands/action/list.md +1 -1
  18. package/docs/commands/action/types.md +1 -1
  19. package/docs/commands/action/update.md +1 -1
  20. package/docs/commands/action/upload.md +1 -1
  21. package/docs/commands/action.md +9 -9
  22. package/docs/commands/agentic/session.md +104 -0
  23. package/docs/commands/agentic.md +94 -0
  24. package/docs/commands/analytics/conversions.md +3 -3
  25. package/docs/commands/analytics/live.md +9 -9
  26. package/docs/commands/analytics/usage.md +18 -18
  27. package/docs/commands/analytics/video.md +12 -12
  28. package/docs/commands/analytics.md +42 -42
  29. package/docs/commands/app/add.md +1 -1
  30. package/docs/commands/app/delete.md +1 -1
  31. package/docs/commands/app/list.md +1 -1
  32. package/docs/commands/app/remove-thumbnail.md +1 -1
  33. package/docs/commands/app/set-thumbnail.md +1 -1
  34. package/docs/commands/app/update.md +1 -1
  35. package/docs/commands/app.md +6 -6
  36. package/docs/commands/audience/companies.md +1 -1
  37. package/docs/commands/audience/field.md +4 -4
  38. package/docs/commands/audience/funnel.md +1 -1
  39. package/docs/commands/audience/identity-sources.md +1 -1
  40. package/docs/commands/audience/list-collectors.md +1 -1
  41. package/docs/commands/audience/list.md +1 -1
  42. package/docs/commands/audience/metrics.md +1 -1
  43. package/docs/commands/audience/register.md +1 -1
  44. package/docs/commands/audience/remove.md +1 -1
  45. package/docs/commands/audience/search.md +1 -1
  46. package/docs/commands/audience/timelines.md +1 -1
  47. package/docs/commands/audience/unregister.md +1 -1
  48. package/docs/commands/audience.md +15 -15
  49. package/docs/commands/auth/credentials.md +1 -1
  50. package/docs/commands/auth/status.md +1 -1
  51. package/docs/commands/auth/switch.md +1 -1
  52. package/docs/commands/auth.md +25 -4
  53. package/docs/commands/autocomplete.md +1 -1
  54. package/docs/commands/category/create.md +1 -1
  55. package/docs/commands/category/delete.md +1 -1
  56. package/docs/commands/category/list.md +1 -1
  57. package/docs/commands/category/update.md +1 -1
  58. package/docs/commands/category.md +5 -5
  59. package/docs/commands/collector/exclude.md +1 -1
  60. package/docs/commands/collector/include.md +1 -1
  61. package/docs/commands/collector/list.md +1 -1
  62. package/docs/commands/collector.md +3 -3
  63. package/docs/commands/comment/add.md +1 -1
  64. package/docs/commands/comment/clone.md +1 -1
  65. package/docs/commands/comment/delete.md +1 -1
  66. package/docs/commands/comment/list.md +1 -1
  67. package/docs/commands/comment/promote.md +1 -1
  68. package/docs/commands/comment/reaction.md +3 -3
  69. package/docs/commands/comment/set-order.md +1 -1
  70. package/docs/commands/comment/update.md +1 -1
  71. package/docs/commands/comment.md +10 -10
  72. package/docs/commands/doctor.md +1 -1
  73. package/docs/commands/openupload/list.md +1 -1
  74. package/docs/commands/openupload/update-file.md +1 -1
  75. package/docs/commands/openupload/upload-file.md +1 -1
  76. package/docs/commands/openupload.md +3 -3
  77. package/docs/commands/player/delete.md +1 -1
  78. package/docs/commands/player/embed-versions.md +1 -1
  79. package/docs/commands/player/embed.md +1 -1
  80. package/docs/commands/player/list.md +1 -1
  81. package/docs/commands/player/remove-thumbnail.md +1 -1
  82. package/docs/commands/player/set-thumbnail.md +1 -1
  83. package/docs/commands/player/styles.md +1 -1
  84. package/docs/commands/player/update.md +1 -1
  85. package/docs/commands/player.md +8 -8
  86. package/docs/commands/poll/add.md +1 -1
  87. package/docs/commands/poll/answer.md +1 -1
  88. package/docs/commands/poll/list.md +1 -1
  89. package/docs/commands/poll/remove.md +1 -1
  90. package/docs/commands/poll/set-options.md +1 -1
  91. package/docs/commands/poll/update.md +1 -1
  92. package/docs/commands/poll.md +6 -6
  93. package/docs/commands/presentation/page.md +1 -1
  94. package/docs/commands/presentation/setting.md +2 -2
  95. package/docs/commands/presentation.md +3 -3
  96. package/docs/commands/protection/protect.md +1 -1
  97. package/docs/commands/protection/unprotect.md +1 -1
  98. package/docs/commands/protection/verify.md +1 -1
  99. package/docs/commands/protection.md +3 -3
  100. package/docs/commands/seo/get.md +1 -1
  101. package/docs/commands/seo/metrics.md +35 -0
  102. package/docs/commands/seo/status.md +1 -1
  103. package/docs/commands/seo/update.md +1 -1
  104. package/docs/commands/seo.md +30 -3
  105. package/docs/commands/session/get-token.md +1 -1
  106. package/docs/commands/session/redeem-token.md +1 -1
  107. package/docs/commands/session.md +2 -2
  108. package/docs/commands/setting/update.md +1 -1
  109. package/docs/commands/setting.md +1 -1
  110. package/docs/commands/site/get.md +1 -1
  111. package/docs/commands/site/search.md +1 -1
  112. package/docs/commands/site.md +2 -2
  113. package/docs/commands/spot/check.md +1 -1
  114. package/docs/commands/spot/create.md +1 -1
  115. package/docs/commands/spot/delete.md +1 -1
  116. package/docs/commands/spot/list.md +1 -1
  117. package/docs/commands/spot/reset-version.md +1 -1
  118. package/docs/commands/spot/set-videos.md +1 -1
  119. package/docs/commands/spot/update.md +1 -1
  120. package/docs/commands/spot.md +7 -7
  121. package/docs/commands/tag/list.md +1 -1
  122. package/docs/commands/tag/related.md +1 -1
  123. package/docs/commands/tag.md +2 -2
  124. package/docs/commands/thumbnail/add.md +1 -1
  125. package/docs/commands/thumbnail/data.md +1 -1
  126. package/docs/commands/thumbnail/delete.md +1 -1
  127. package/docs/commands/thumbnail/duplicate.md +1 -1
  128. package/docs/commands/thumbnail/file.md +3 -3
  129. package/docs/commands/thumbnail/list.md +1 -1
  130. package/docs/commands/thumbnail/preview-scss.md +1 -1
  131. package/docs/commands/thumbnail/update.md +1 -1
  132. package/docs/commands/thumbnail.md +11 -11
  133. package/docs/commands/user/create.md +1 -1
  134. package/docs/commands/user/get-login-token.md +1 -1
  135. package/docs/commands/user/get.md +1 -1
  136. package/docs/commands/user/list.md +1 -1
  137. package/docs/commands/user/redeem-login-token.md +1 -1
  138. package/docs/commands/user/send-invitation.md +1 -1
  139. package/docs/commands/user/tokens.md +1 -1
  140. package/docs/commands/user/update.md +1 -1
  141. package/docs/commands/user.md +8 -8
  142. package/docs/commands/video/delete.md +1 -1
  143. package/docs/commands/video/frame.md +1 -1
  144. package/docs/commands/video/get.md +1 -1
  145. package/docs/commands/video/list.md +1 -1
  146. package/docs/commands/video/replace.md +1 -1
  147. package/docs/commands/video/section.md +8 -8
  148. package/docs/commands/video/subtitle.md +12 -12
  149. package/docs/commands/video/transcoding-progress.md +1 -1
  150. package/docs/commands/video/update.md +1 -1
  151. package/docs/commands/video/upload.md +1 -1
  152. package/docs/commands/video.md +28 -28
  153. package/docs/commands/webhook/events.md +1 -1
  154. package/docs/commands/webhook/list.md +1 -1
  155. package/docs/commands/webhook/sample.md +1 -1
  156. package/docs/commands/webhook/subscribe.md +1 -1
  157. package/docs/commands/webhook/unsubscribe.md +1 -1
  158. package/docs/commands/webhook.md +5 -5
  159. package/docs/commands/webinar/attachment.md +4 -4
  160. package/docs/commands/webinar/clips.md +1 -1
  161. package/docs/commands/webinar/create.md +30 -12
  162. package/docs/commands/webinar/delete.md +1 -1
  163. package/docs/commands/webinar/highlights.md +1 -1
  164. package/docs/commands/webinar/list-formats.md +1 -1
  165. package/docs/commands/webinar/list.md +1 -1
  166. package/docs/commands/webinar/log.md +1 -1
  167. package/docs/commands/webinar/mail.md +35 -18
  168. package/docs/commands/webinar/metrics.md +1 -1
  169. package/docs/commands/webinar/queued-video.md +2 -2
  170. package/docs/commands/webinar/recording.md +4 -4
  171. package/docs/commands/webinar/repeat.md +1 -1
  172. package/docs/commands/webinar/room.md +4 -4
  173. package/docs/commands/webinar/section.md +4 -4
  174. package/docs/commands/webinar/series.md +12 -12
  175. package/docs/commands/webinar/speaker.md +41 -26
  176. package/docs/commands/webinar/transcription.md +4 -4
  177. package/docs/commands/webinar/update.md +25 -10
  178. package/docs/commands/webinar/upload-image.md +1 -1
  179. package/docs/commands/webinar.md +185 -109
  180. package/docs/commands/workspace/list.md +1 -1
  181. package/docs/commands/workspace/use.md +1 -1
  182. package/docs/commands/workspace.md +2 -2
  183. package/docs/guides/ai-agents.md +169 -0
  184. package/oclif.manifest.json +2022 -1308
  185. package/package.json +1 -1
@@ -24,4 +24,4 @@ EXAMPLES
24
24
  $ twentythree workspace list
25
25
  ```
26
26
 
27
- _See code: [src/commands/workspace/list.ts](https://github.com/23/twentythree-cli/blob/v1.3.8/src/commands/workspace/list.ts)_
27
+ _See code: [src/commands/workspace/list.ts](https://github.com/23/twentythree-cli/blob/v1.5.0/src/commands/workspace/list.ts)_
@@ -29,4 +29,4 @@ EXAMPLES
29
29
  $ twentythree workspace use "Company Name"
30
30
  ```
31
31
 
32
- _See code: [src/commands/workspace/use.ts](https://github.com/23/twentythree-cli/blob/v1.3.8/src/commands/workspace/use.ts)_
32
+ _See code: [src/commands/workspace/use.ts](https://github.com/23/twentythree-cli/blob/v1.5.0/src/commands/workspace/use.ts)_
@@ -25,7 +25,7 @@ EXAMPLES
25
25
  $ twentythree workspace list
26
26
  ```
27
27
 
28
- _See code: [src/commands/workspace/list.ts](https://github.com/23/twentythree-cli/blob/v1.3.8/src/commands/workspace/list.ts)_
28
+ _See code: [src/commands/workspace/list.ts](https://github.com/23/twentythree-cli/blob/v1.5.0/src/commands/workspace/list.ts)_
29
29
 
30
30
  ## `twentythree workspace use NAME`
31
31
 
@@ -51,4 +51,4 @@ EXAMPLES
51
51
  $ twentythree workspace use "Company Name"
52
52
  ```
53
53
 
54
- _See code: [src/commands/workspace/use.ts](https://github.com/23/twentythree-cli/blob/v1.3.8/src/commands/workspace/use.ts)_
54
+ _See code: [src/commands/workspace/use.ts](https://github.com/23/twentythree-cli/blob/v1.5.0/src/commands/workspace/use.ts)_
@@ -0,0 +1,169 @@
1
+ # Using TwentyThree with AI coding agents
2
+
3
+ The TwentyThree CLI ships with an installable **skills** package — Markdown definitions that teach an AI coding agent how to drive every TwentyThree command (upload videos, run webinars, query analytics, manage audiences, and more). Once installed, you can ask your assistant in plain language and it will run the right CLI commands for you.
4
+
5
+ This guide covers two install paths and a quick start for each supported runtime.
6
+
7
+ ---
8
+
9
+ ## Install from your AI assistant (recommended — no terminal)
10
+
11
+ If your agent can run shell commands (Claude Code, Codex, Cursor, Windsurf, Cline, Gemini CLI, …), paste this prompt into its chat and it will do everything:
12
+
13
+ ```text
14
+ Install the TwentyThree CLI and its AI skills on this machine, then verify:
15
+ 1. Run: npm install -g twentythree-cli
16
+ 2. Run: npx -y twentythree-skills
17
+ 3. Ask me for my TwentyThree workspace domain and bearer token, then run:
18
+ twentythree auth credentials --domain <domain> --token <token>
19
+ 4. Verify with: twentythree doctor
20
+ If Node 22+ / npm isn't installed, stop and tell me how to install it first.
21
+ ```
22
+
23
+ The assistant installs the CLI, runs the skills installer (which auto-detects the runtime it's running in), and prompts you for credentials. After that you can say things like:
24
+
25
+ - *"Upload ./keynote.mp4 to TwentyThree and publish it."*
26
+ - *"List my last 10 webinars as JSON."*
27
+ - *"What's the SEO status of video 127764838?"*
28
+
29
+ ## Install from the terminal
30
+
31
+ ```bash
32
+ npm install -g twentythree-cli # the CLI
33
+ npx twentythree-skills # the agent skills (auto-detects your runtime)
34
+ twentythree auth credentials # authenticate
35
+ twentythree doctor # verify
36
+ ```
37
+
38
+ Add `--project` to the skills installer to install into the current repo instead of your home directory:
39
+
40
+ ```bash
41
+ npx twentythree-skills --project
42
+ ```
43
+
44
+ ---
45
+
46
+ ## Supported runtimes
47
+
48
+ | Runtime | Detection | Global install path | Project install path (`--project`) |
49
+ |---------|-----------|---------------------|------------------------------------|
50
+ | Claude Code | `~/.claude/` | `~/.claude/skills/twentythree/` | `.claude/skills/twentythree/` |
51
+ | OpenAI Codex | `~/.codex/` | `~/.codex/skills/twentythree/` | `.agents/skills/twentythree/` |
52
+ | GitHub Copilot | `~/.github/copilot/` | `~/.github/skills/twentythree/` | `.github/skills/twentythree/` |
53
+ | Cursor | `~/.cursor/` | `~/.cursor/skills/twentythree/` | `.cursor/skills/twentythree/` |
54
+ | Windsurf | `~/.codeium/` | `~/.codeium/windsurf/skills/twentythree/` | `.windsurf/skills/twentythree/` |
55
+ | Cline | `~/.clinerules/` | `~/.clinerules/twentythree/` | `.clinerules/twentythree/` |
56
+ | Gemini CLI | `~/.gemini/` | `~/.gemini/skills/twentythree/` | `.gemini/skills/twentythree/` |
57
+
58
+ The installer copies the same Markdown skill tree into each detected runtime's directory. Every agent ingests it as context — there is no per-runtime format conversion.
59
+
60
+ ---
61
+
62
+ ## Per-runtime quick start
63
+
64
+ ### Claude Code
65
+
66
+ ```bash
67
+ npm install -g twentythree-cli && npx twentythree-skills
68
+ ```
69
+
70
+ Skills land in `~/.claude/skills/twentythree/`. Start Claude Code and ask: *"Use the twentythree skill to list my videos."* Claude reads `SKILL.md` and the reference files automatically.
71
+
72
+ ### OpenAI Codex
73
+
74
+ ```bash
75
+ npm install -g twentythree-cli && npx twentythree-skills
76
+ ```
77
+
78
+ Skills land in `~/.codex/skills/twentythree/` (global) or `.agents/skills/twentythree/` (with `--project`). In a Codex session, reference the skill and ask it to run a command, e.g. *"Upload ./demo.mp4 with twentythree and give me the admin URL."*
79
+
80
+ ### GitHub Copilot
81
+
82
+ ```bash
83
+ npm install -g twentythree-cli && npx twentythree-skills
84
+ ```
85
+
86
+ Skills land in `~/.github/skills/twentythree/`. Open Copilot Chat in your editor and ask it to run TwentyThree commands in the integrated terminal.
87
+
88
+ ### Cursor
89
+
90
+ ```bash
91
+ npm install -g twentythree-cli && npx twentythree-skills --project
92
+ ```
93
+
94
+ Project install lands in `.cursor/skills/twentythree/` so the skill travels with the repo. Ask Cursor's agent: *"List webinars from the last week as a table."*
95
+
96
+ ### Windsurf
97
+
98
+ ```bash
99
+ npm install -g twentythree-cli && npx twentythree-skills
100
+ ```
101
+
102
+ Skills land in `~/.codeium/windsurf/skills/twentythree/` (global) or `.windsurf/skills/twentythree/` (with `--project`). In Cascade, ask it to run `twentythree` commands for you.
103
+
104
+ ### Cline
105
+
106
+ ```bash
107
+ npm install -g twentythree-cli && npx twentythree-skills --project
108
+ ```
109
+
110
+ Project install lands in `.clinerules/twentythree/`, which Cline loads as workspace rules. Ask Cline to upload a video or pull analytics and approve the terminal commands it proposes.
111
+
112
+ ### Gemini CLI
113
+
114
+ ```bash
115
+ npm install -g twentythree-cli && npx twentythree-skills
116
+ ```
117
+
118
+ Skills land in `~/.gemini/skills/twentythree/`. Run `gemini` and ask it to manage your TwentyThree content; it will invoke the CLI on your behalf.
119
+
120
+ ---
121
+
122
+ ## Non-interactive authentication (for agents and CI)
123
+
124
+ `twentythree auth credentials` prompts interactively by default, which a non-TTY agent or CI job can't drive. Pass `--domain` to run it non-interactively instead:
125
+
126
+ ```bash
127
+ # Token via env var (preferred — keeps it out of shell history and process listings)
128
+ TWENTYTHREE_TOKEN=<token> twentythree auth credentials --domain company.video23.com --json
129
+
130
+ # Or pass the token as a flag
131
+ twentythree auth credentials --domain company.video23.com --token <token>
132
+
133
+ # Pick a specific workspace when the token unlocks several
134
+ twentythree auth credentials --domain company.video23.com --token <token> --workspace "Marketing"
135
+
136
+ # Anonymous (domain-only) access — omit the token
137
+ twentythree auth credentials --domain company.video23.com
138
+ ```
139
+
140
+ With `--json`, the command returns the configured `mode`, `active_workspace`, and the list of discovered `workspaces` for the agent to parse. If multiple workspaces are discovered and `--workspace` is omitted, the starred (then canonical, then first) workspace is set active.
141
+
142
+ ## How the agent calls the CLI
143
+
144
+ Every command supports two machine-friendly flags the skills rely on:
145
+
146
+ - `--json` — structured output for the agent to parse.
147
+ - `--agent` — self-describing metadata (`api_endpoint`, `auth_scope`, `output_shape`, `side_effects`) so the agent knows what a command does before running it.
148
+
149
+ Example:
150
+
151
+ ```bash
152
+ twentythree video list --json
153
+ twentythree webinar create --agent # describe the command without running it
154
+ ```
155
+
156
+ ## Updating
157
+
158
+ Re-run the installer at any time — it's idempotent and overwrites the skill files in place:
159
+
160
+ ```bash
161
+ npx twentythree-skills
162
+ ```
163
+
164
+ ## Prerequisites
165
+
166
+ - Node.js 22 or newer.
167
+ - A TwentyThree workspace with a bearer token. Run `twentythree auth credentials` to set it up, then `twentythree doctor` to confirm connectivity.
168
+
169
+ See the [Getting Started guide](getting-started.md) for full CLI setup.