Skip to content

Commit bc8eaf1

Browse files
Add all-agents option for ctx7 skills install (#2424)
* Add all-agents option for ctx7 skills install * Update docs and add changeset for skills install flags
1 parent 36463ad commit bc8eaf1

7 files changed

Lines changed: 31 additions & 2 deletions

File tree

.changeset/fuzzy-camels-wave.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"ctx7": patch
3+
---
4+
5+
Add `--all-agents` and `--yes` support to `ctx7 skills install` for non-interactive multi-agent installs.

docs/clients/cli.mdx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,13 +229,16 @@ ctx7 skills install /anthropics/skills pdf --claude # Claude Code
229229
ctx7 skills install /anthropics/skills pdf --cursor # Cursor
230230
ctx7 skills install /anthropics/skills pdf --universal # Universal (.agents/skills/)
231231
ctx7 skills install /anthropics/skills pdf --antigravity
232+
ctx7 skills install /anthropics/skills pdf --all-agents # Universal + all vendor-specific locations
232233
```
233234

234235
**Install globally** (available across all projects):
235236

236237
```bash
237238
ctx7 skills install /anthropics/skills pdf --global
238239
ctx7 skills install /anthropics/skills --all --global
240+
ctx7 skills install /anthropics/skills pdf --global --universal --yes
241+
ctx7 skills install /anthropics/skills pdf --global --all-agents --yes
239242
```
240243

241244
<Note>

docs/skills.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ ctx7 login
8787
ctx7 skills generate
8888
```
8989

90-
All install commands accept `--claude`, `--cursor`, `--universal`, and `--global` flags to target a specific client or install location.
90+
All install commands accept `--claude`, `--cursor`, `--universal`, `--all-agents`, and `--global` flags to target a specific client or install location. Use `--yes` to skip confirmation prompts for non-interactive installs.
9191

9292
See the [CLI reference](/clients/cli#skills) for the full flag reference and examples.
9393

packages/cli/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,12 @@ ctx7 skills install /anthropics/skills pdf --universal
177177

178178
# Install globally (home directory instead of current project)
179179
ctx7 skills install /anthropics/skills pdf --global
180+
181+
# Install non-interactively
182+
ctx7 skills install /anthropics/skills pdf --global --universal --yes
183+
184+
# Install to all supported agent locations
185+
ctx7 skills install /anthropics/skills pdf --all-agents
180186
```
181187

182188
### Search for skills

packages/cli/src/commands/skill.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,8 @@ export function registerSkillCommands(program: Command): void {
9999
.argument("<repository>", "GitHub repository (/owner/repo)")
100100
.argument("[skill]", "Specific skill name to install")
101101
.option("--all", "Install all skills without prompting")
102+
.option("--all-agents", "Install to all supported agent locations")
103+
.option("-y, --yes", "Skip confirmation prompts")
102104
.option("--global", "Install globally instead of current directory")
103105
.option("--claude", "Claude Code (.claude/skills/)")
104106
.option("--cursor", "Cursor (.cursor/skills/)")
@@ -173,6 +175,8 @@ export function registerSkillAliases(program: Command): void {
173175
.argument("<repository>", "GitHub repository (/owner/repo)")
174176
.argument("[skill]", "Specific skill name to install")
175177
.option("--all", "Install all skills without prompting")
178+
.option("--all-agents", "Install to all supported agent locations")
179+
.option("-y, --yes", "Skip confirmation prompts")
176180
.option("--global", "Install globally instead of current directory")
177181
.option("--claude", "Claude Code (.claude/skills/)")
178182
.option("--cursor", "Cursor (.cursor/skills/)")

packages/cli/src/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ export type IDE = "claude" | "cursor" | "antigravity" | "universal";
129129
export type Scope = "project" | "global";
130130

131131
export interface IDEOptions {
132+
allAgents?: boolean;
132133
claude?: boolean;
133134
cursor?: boolean;
134135
universal?: boolean;

packages/cli/src/utils/ide.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ import {
2727
} from "../types.js";
2828

2929
export function getSelectedIdes(options: IDEOptions): IDE[] {
30+
if (options.allAgents) {
31+
return ["universal", ...VENDOR_SPECIFIC_AGENTS];
32+
}
33+
3034
const ides: IDE[] = [];
3135
if (options.claude) ides.push("claude");
3236
if (options.cursor) ides.push("cursor");
@@ -36,7 +40,13 @@ export function getSelectedIdes(options: IDEOptions): IDE[] {
3640
}
3741

3842
export function hasExplicitIdeOption(options: IDEOptions): boolean {
39-
return !!(options.claude || options.cursor || options.universal || options.antigravity);
43+
return !!(
44+
options.allAgents ||
45+
options.claude ||
46+
options.cursor ||
47+
options.universal ||
48+
options.antigravity
49+
);
4050
}
4151

4252
/** Detect vendor-specific agents whose parent directory exists. */

0 commit comments

Comments
 (0)