twentythree-skills 1.3.7 → 1.4.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.
package/README.md CHANGED
@@ -1,8 +1,24 @@
1
1
  # twentythree-skills
2
2
 
3
- AI agent skills for the [TwentyThree CLI](https://github.com/23/twentythree-cli) — installable markdown skill definitions for Claude Code, OpenAI Codex, GitHub Copilot, and Cursor.
3
+ AI agent skills for the [TwentyThree CLI](https://github.com/23/twentythree-cli) — installable markdown skill definitions for Claude Code, OpenAI Codex, GitHub Copilot, Cursor, Windsurf, Cline, and Gemini CLI.
4
4
 
5
- ## Install
5
+ ## Install from your AI assistant (no terminal)
6
+
7
+ Paste this into Claude Code, Codex, Cursor, Windsurf, Cline, Gemini CLI, or any agent that can run shell commands, and it will install everything for you:
8
+
9
+ ```text
10
+ Install the TwentyThree CLI and its AI skills on this machine, then verify:
11
+ 1. Run: npm install -g twentythree-cli
12
+ 2. Run: npx -y twentythree-skills
13
+ 3. Ask me for my TwentyThree workspace domain and bearer token, then run:
14
+ twentythree auth credentials --domain <domain> --token <token>
15
+ 4. Verify with: twentythree doctor
16
+ If Node 22+ / npm isn't installed, stop and tell me how to install it first.
17
+ ```
18
+
19
+ The assistant runs the install, detects its own runtime, and drops the skill files in the right place — then you can ask it to upload videos, run webinars, or query analytics in plain language.
20
+
21
+ ## Install from the terminal
6
22
 
7
23
  ```bash
8
24
  npx twentythree-skills
@@ -26,12 +42,17 @@ Installs into `.claude/skills/`, `.agents/skills/`, `.github/skills/`, or `.curs
26
42
 
27
43
  ## Supported runtimes
28
44
 
29
- | Runtime | Detection | Global install path |
30
- |---------|-----------|---------------------|
31
- | Claude Code | `~/.claude/` | `~/.claude/skills/twentythree/` |
32
- | OpenAI Codex | `~/.codex/` | `~/.codex/skills/twentythree/` |
33
- | GitHub Copilot | `~/.github/copilot/` | `~/.github/skills/twentythree/` |
34
- | Cursor | `~/.cursor/` | `~/.cursor/skills/twentythree/` |
45
+ | Runtime | Detection | Global install path | Project install path (`--project`) |
46
+ |---------|-----------|---------------------|------------------------------------|
47
+ | Claude Code | `~/.claude/` | `~/.claude/skills/twentythree/` | `.claude/skills/twentythree/` |
48
+ | OpenAI Codex | `~/.codex/` | `~/.codex/skills/twentythree/` | `.agents/skills/twentythree/` |
49
+ | GitHub Copilot | `~/.github/copilot/` | `~/.github/skills/twentythree/` | `.github/skills/twentythree/` |
50
+ | Cursor | `~/.cursor/` | `~/.cursor/skills/twentythree/` | `.cursor/skills/twentythree/` |
51
+ | Windsurf | `~/.codeium/` | `~/.codeium/windsurf/skills/twentythree/` | `.windsurf/skills/twentythree/` |
52
+ | Cline | `~/.clinerules/` | `~/.clinerules/twentythree/` | `.clinerules/twentythree/` |
53
+ | Gemini CLI | `~/.gemini/` | `~/.gemini/skills/twentythree/` | `.gemini/skills/twentythree/` |
54
+
55
+ The installer copies the same Markdown skill tree into every detected runtime's directory — each agent ingests it as project/skill context. See the [AI agents guide](https://github.com/23/twentythree-cli/blob/master/packages/twentythree-cli/docs/guides/ai-agents.md) for per-runtime quick starts.
35
56
 
36
57
  ## Prerequisites
37
58
 
package/bin/add.js CHANGED
@@ -38,6 +38,24 @@ const RUNTIMES = [
38
38
  globalDest: join(home, '.cursor', 'skills', 'twentythree'),
39
39
  projectDest: join(cwd, '.cursor', 'skills', 'twentythree'),
40
40
  },
41
+ {
42
+ name: 'Windsurf',
43
+ detect: join(home, '.codeium'),
44
+ globalDest: join(home, '.codeium', 'windsurf', 'skills', 'twentythree'),
45
+ projectDest: join(cwd, '.windsurf', 'skills', 'twentythree'),
46
+ },
47
+ {
48
+ name: 'Cline',
49
+ detect: join(home, '.clinerules'),
50
+ globalDest: join(home, '.clinerules', 'twentythree'),
51
+ projectDest: join(cwd, '.clinerules', 'twentythree'),
52
+ },
53
+ {
54
+ name: 'Gemini CLI',
55
+ detect: join(home, '.gemini'),
56
+ globalDest: join(home, '.gemini', 'skills', 'twentythree'),
57
+ projectDest: join(cwd, '.gemini', 'skills', 'twentythree'),
58
+ },
41
59
  ]
42
60
 
43
61
  function walkDir(dir) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "twentythree-skills",
3
- "version": "1.3.7",
3
+ "version": "1.4.0",
4
4
  "description": "AI agent skills for the TwentyThree CLI",
5
5
  "license": "MIT",
6
6
  "author": "TwentyThree",
package/skills/SKILL.md CHANGED
@@ -44,6 +44,14 @@ Prompts interactively for:
44
44
  - **Domain** — your workspace domain (e.g. `company.video.twentythree.com`)
45
45
  - **Bearer token** — copy from `Settings → API` inside your TwentyThree workspace admin
46
46
 
47
+ **Agentic / non-interactive setup:** the interactive prompt cannot be driven without a TTY. Pass `--domain` to configure credentials without prompts — ask the user for their domain and token first, then run:
48
+
49
+ ```bash
50
+ twentythree auth credentials --domain <domain> --token <token> --json
51
+ ```
52
+
53
+ The token can also be supplied via the `TWENTYTHREE_TOKEN` env var instead of `--token` (keeps it out of shell history). Add `--workspace "<name or domain>"` to pick the active workspace when the token unlocks several; omit the token entirely for anonymous (domain-only) access.
54
+
47
55
  Credentials are stored in the OS keychain (macOS Keychain, Windows Credential Manager, Linux Secret Service) — never in plaintext files.
48
56
 
49
57
  Verify auth is working: