@guanmu/ccprofile 0.1.18 → 0.1.19
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/dist/index.js +56 -29
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -636,12 +636,16 @@ async function interactiveMode() {
|
|
|
636
636
|
const action = await p.select({
|
|
637
637
|
message: "Choose action:",
|
|
638
638
|
options: [
|
|
639
|
-
{ value: "install", label: "Install", hint: "
|
|
640
|
-
{ value: "add", label: "Add plugin", hint: "
|
|
641
|
-
{ value: "remove", label: "Remove plugin", hint: "Remove a plugin" },
|
|
642
|
-
{ value: "
|
|
639
|
+
{ value: "install", label: "Install", hint: "Install all plugins from profile" },
|
|
640
|
+
{ value: "add", label: "Add plugin", hint: "Add a plugin to profile" },
|
|
641
|
+
{ value: "remove", label: "Remove plugin", hint: "Remove a plugin from profile" },
|
|
642
|
+
{ value: "list", label: "List plugins", hint: "List plugins in current profile" },
|
|
643
|
+
{ value: "search", label: "Search marketplace", hint: "Search plugins in marketplaces" },
|
|
644
|
+
{ value: "init", label: "Init project", hint: "Create .ccx.json for this project" },
|
|
645
|
+
{ value: "sync", label: "Sync project", hint: "Sync .claude/plugins/ to .ccx.json" },
|
|
646
|
+
{ value: "save", label: "Save as profile", hint: "Save .ccx.json plugins to a profile" },
|
|
643
647
|
{ value: "switch", label: "Switch profile", hint: "Choose a different profile" },
|
|
644
|
-
{ value: "delete", label: "Delete profile", hint: "
|
|
648
|
+
{ value: "delete", label: "Delete profile", hint: "Delete this profile" },
|
|
645
649
|
{ value: "exit", label: "Exit" },
|
|
646
650
|
],
|
|
647
651
|
});
|
|
@@ -660,6 +664,9 @@ async function interactiveMode() {
|
|
|
660
664
|
case "remove":
|
|
661
665
|
await removePlugin(currentProfile);
|
|
662
666
|
break;
|
|
667
|
+
case "list":
|
|
668
|
+
await listPlugins(currentProfile);
|
|
669
|
+
break;
|
|
663
670
|
case "search": {
|
|
664
671
|
const found = await browsePlugins(currentProfile);
|
|
665
672
|
if (found.length > 0) {
|
|
@@ -670,6 +677,15 @@ async function interactiveMode() {
|
|
|
670
677
|
}
|
|
671
678
|
break;
|
|
672
679
|
}
|
|
680
|
+
case "init":
|
|
681
|
+
await initProjectConfig();
|
|
682
|
+
break;
|
|
683
|
+
case "sync":
|
|
684
|
+
syncProjectConfig();
|
|
685
|
+
break;
|
|
686
|
+
case "save":
|
|
687
|
+
await saveToProfile();
|
|
688
|
+
break;
|
|
673
689
|
case "switch":
|
|
674
690
|
stayInProfile = false;
|
|
675
691
|
break;
|
|
@@ -684,33 +700,44 @@ async function interactiveMode() {
|
|
|
684
700
|
p.outro("Done.");
|
|
685
701
|
}
|
|
686
702
|
function printHelp() {
|
|
703
|
+
const require = createRequire(import.meta.url);
|
|
704
|
+
const pkg = require("../package.json");
|
|
687
705
|
console.log(`${renderLogo()}
|
|
706
|
+
${pc.bold("ccx")} ${pc.dim("- Agent Profile Manager for Claude Code")} ${pc.gray(`v${pkg.version}`)}
|
|
707
|
+
|
|
708
|
+
${pc.bold("Usage:")}
|
|
709
|
+
${pc.cyan("ccx")} Interactive mode (TTY)
|
|
710
|
+
${pc.cyan("ccx ui")} Interactive mode (TTY)
|
|
711
|
+
|
|
712
|
+
${pc.bold("Project:")}
|
|
713
|
+
${pc.cyan("ccx init")} Create .ccx.json for current project
|
|
714
|
+
${pc.cyan("ccx sync")} Sync installed plugins to .ccx.json
|
|
715
|
+
${pc.cyan("ccx install")} Install plugins from .ccx.json
|
|
716
|
+
${pc.cyan("ccx save")} ${pc.dim("[name]")} Save .ccx.json as a reusable profile
|
|
717
|
+
|
|
718
|
+
${pc.bold("Profiles:")}
|
|
719
|
+
${pc.cyan("ccx create")} ${pc.dim("<name>")} Create a new profile
|
|
720
|
+
${pc.cyan("ccx delete")} ${pc.dim("<name>")} Delete a profile
|
|
721
|
+
${pc.cyan("ccx profiles")} List all profiles
|
|
722
|
+
|
|
723
|
+
${pc.bold("Plugins:")}
|
|
724
|
+
${pc.cyan("ccx install")} ${pc.dim("<profile>")} Install all plugins from a profile
|
|
725
|
+
${pc.cyan("ccx add")} ${pc.dim("<profile> <plugin>")} Add a plugin to a profile
|
|
726
|
+
${pc.cyan("ccx remove")} ${pc.dim("<profile> <plugin>")} Remove a plugin from a profile
|
|
727
|
+
${pc.cyan("ccx list")} ${pc.dim("<profile>")} List plugins in a profile
|
|
728
|
+
${pc.cyan("ccx search")} ${pc.dim("<keyword>")} Search plugins in marketplaces
|
|
688
729
|
|
|
689
|
-
|
|
730
|
+
${pc.bold("Options:")}
|
|
731
|
+
${pc.cyan("ccx -v, --version")} Show version
|
|
690
732
|
|
|
691
|
-
|
|
692
|
-
ccx
|
|
693
|
-
ccx
|
|
694
|
-
ccx
|
|
695
|
-
ccx
|
|
696
|
-
ccx
|
|
697
|
-
ccx
|
|
698
|
-
ccx
|
|
699
|
-
ccx create <name> Create a new profile
|
|
700
|
-
ccx delete <name> Remove a profile
|
|
701
|
-
ccx profiles List all profiles
|
|
702
|
-
ccx add <profile> <plugin> Add plugin to profile
|
|
703
|
-
ccx remove <profile> <plugin> Remove plugin from profile
|
|
704
|
-
ccx list <profile> List plugins in profile
|
|
705
|
-
ccx search <keyword> Search plugins in marketplaces
|
|
706
|
-
ccx <profile> Install all plugins from profile
|
|
707
|
-
ccx <profile> add [plugin] Add plugin to profile (legacy)
|
|
708
|
-
ccx <profile> remove [plugin] Remove plugin from profile (legacy)
|
|
709
|
-
ccx <profile> list List plugins in profile (legacy)
|
|
710
|
-
ccx add <name> Create a new profile (legacy)
|
|
711
|
-
ccx remove <name> Remove a profile (legacy)
|
|
712
|
-
ccx list List all profiles (legacy)
|
|
713
|
-
ccx -v, --version Show version`);
|
|
733
|
+
${pc.dim("Legacy:")}
|
|
734
|
+
${pc.dim("ccx <profile>")} ${pc.dim("Same as ccx install <profile>")}
|
|
735
|
+
${pc.dim("ccx <profile> add [plugin]")} ${pc.dim("Same as ccx add <profile> <plugin>")}
|
|
736
|
+
${pc.dim("ccx <profile> remove [plugin]")} ${pc.dim("Same as ccx remove <profile> <plugin>")}
|
|
737
|
+
${pc.dim("ccx <profile> list")} ${pc.dim("Same as ccx list <profile>")}
|
|
738
|
+
${pc.dim("ccx add <name>")} ${pc.dim("Same as ccx create <name>")}
|
|
739
|
+
${pc.dim("ccx remove <name>")} ${pc.dim("Same as ccx delete <name>")}
|
|
740
|
+
${pc.dim("ccx list")} ${pc.dim("Same as ccx profiles")}`);
|
|
714
741
|
}
|
|
715
742
|
// ── Main ──────────────────────────────────────────────────
|
|
716
743
|
async function main(args) {
|