coding-friend-cli 1.39.0 → 1.40.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 +5 -0
- package/dist/{chunk-ODW27NAC.js → chunk-B44ROTV6.js} +10 -10
- package/dist/{chunk-ZGIUKUL2.js → chunk-CZW36H3D.js} +39 -7
- package/dist/{chunk-FQUIO5BW.js → chunk-E4NBTQXR.js} +13 -7
- package/dist/{chunk-IV5OPG34.js → chunk-IYBIIRH4.js} +29 -1
- package/dist/{chunk-GTOEIGDM.js → chunk-KCBMCHSA.js} +295 -44
- package/dist/{chunk-463QKRBN.js → chunk-KG6HYBGD.js} +23 -7
- package/dist/{chunk-WJHQUCOF.js → chunk-KTUPGMIV.js} +111 -15
- package/dist/{chunk-7JQZRMOG.js → chunk-NIMO4VJW.js} +37 -6
- package/dist/{chunk-OFEC6OVI.js → chunk-OBCNHQFA.js} +42 -2
- package/dist/{chunk-4CPUWHIN.js → chunk-Q2QDSYQT.js} +1 -1
- package/dist/{chunk-JSH6BMVZ.js → chunk-RG3EMZH6.js} +11 -1
- package/dist/{chunk-2EY7VVFT.js → chunk-SUYE5S2W.js} +1 -1
- package/dist/{chunk-YPW67OGP.js → chunk-TFF47F7P.js} +1 -1
- package/dist/{chunk-ZZNTNIM4.js → chunk-TN3Y75WG.js} +2 -2
- package/dist/{chunk-VMODQCSL.js → chunk-Z5XTSF7L.js} +5 -5
- package/dist/{clean-LPWEBJJ5.js → clean-PKSSS662.js} +3 -3
- package/dist/{config-VNSC2NAY.js → config-2CH4GI2L.js} +47 -26
- package/dist/{dev-NRTDUQAR.js → dev-HWKNWOZY.js} +7 -7
- package/dist/{disable-NROSQUHR.js → disable-DCGVIHKG.js} +22 -8
- package/dist/{enable-26FFJGX5.js → enable-YYWJDOYB.js} +21 -8
- package/dist/{guide-HCLEOAGR.js → guide-45EIK76P.js} +1 -1
- package/dist/{host-2JOPHLN3.js → host-GZJSMJSF.js} +7 -7
- package/dist/index.js +67 -46
- package/dist/{init-MHHII5EP.js → init-TUBWQCBQ.js} +236 -53
- package/dist/{install-OEFJLAWA.js → install-45O5ICBA.js} +68 -11
- package/dist/{learn-SSNBBDY3.js → learn-AJT7Z6F7.js} +5 -5
- package/dist/{mcp-J5VO3OH7.js → mcp-JGBZMNWL.js} +26 -13
- package/dist/{mcp-serve-55DSE2J4.js → mcp-serve-SHS5MQRW.js} +5 -5
- package/dist/{mcp-serve-learn-EDBWNL4I.js → mcp-serve-learn-HXZZ3DUI.js} +6 -6
- package/dist/{memory-CDZKWOFL.js → memory-4NVLWOFS.js} +10 -10
- package/dist/{permission-DPKPA2HU.js → permission-L5QMNMID.js} +25 -25
- package/dist/{session-YWJDLNBP.js → session-GBHL5TH3.js} +3 -3
- package/dist/{status-4WMIQL7L.js → status-KQQJNSEZ.js} +33 -15
- package/dist/{statusline-R5BNYK3H.js → statusline-B7PXP3AQ.js} +3 -3
- package/dist/{uninstall-EV7362NK.js → uninstall-6QKNGLKK.js} +38 -13
- package/dist/{update-YQBBAIIF.js → update-YJ363TBU.js} +11 -11
- package/dist/{update-check-EJSGVGO6.js → update-check-5JZUJGUM.js} +1 -1
- package/package.json +1 -1
- package/dist/permissions-HZYUVKCY.js +0 -38
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ensureStatusline
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-Q2QDSYQT.js";
|
|
4
4
|
import "./chunk-3WIZA5OZ.js";
|
|
5
5
|
import {
|
|
6
6
|
ensureShellCompletion
|
|
@@ -8,21 +8,21 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
isMarketplaceRegistered,
|
|
10
10
|
isPluginInstalled
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-SUYE5S2W.js";
|
|
12
|
+
import {
|
|
13
|
+
readJson,
|
|
14
|
+
writeJson
|
|
15
|
+
} from "./chunk-5UVDWG5L.js";
|
|
12
16
|
import {
|
|
13
17
|
commandExists,
|
|
14
18
|
run,
|
|
15
19
|
runWithStderr
|
|
16
20
|
} from "./chunk-EVGXUDX4.js";
|
|
17
|
-
import {
|
|
18
|
-
readJson,
|
|
19
|
-
writeJson
|
|
20
|
-
} from "./chunk-5UVDWG5L.js";
|
|
21
21
|
import {
|
|
22
22
|
devStatePath,
|
|
23
23
|
knownMarketplacesPath,
|
|
24
24
|
pluginCachePath
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-IYBIIRH4.js";
|
|
26
26
|
import {
|
|
27
27
|
log,
|
|
28
28
|
printBanner
|
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isPluginDisabled,
|
|
3
3
|
setPluginEnabled
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SUYE5S2W.js";
|
|
5
5
|
import {
|
|
6
6
|
isCodexPluginDisabled,
|
|
7
7
|
setCodexPluginEnabled
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RG3EMZH6.js";
|
|
9
9
|
import {
|
|
10
|
+
isAgyPluginEnabled,
|
|
11
|
+
setAgyPluginEnabled,
|
|
10
12
|
setOmpAgentDisabled
|
|
11
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-KCBMCHSA.js";
|
|
12
14
|
import {
|
|
13
15
|
resolveHostFlags,
|
|
14
16
|
resolveScope
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-EVGXUDX4.js";
|
|
17
|
+
} from "./chunk-Z5XTSF7L.js";
|
|
18
|
+
import "./chunk-TN3Y75WG.js";
|
|
19
|
+
import "./chunk-OBCNHQFA.js";
|
|
19
20
|
import "./chunk-5UVDWG5L.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-EVGXUDX4.js";
|
|
22
|
+
import "./chunk-IYBIIRH4.js";
|
|
21
23
|
import {
|
|
22
24
|
log
|
|
23
25
|
} from "./chunk-NREZK463.js";
|
|
@@ -47,6 +49,18 @@ async function disableCommand(opts = {}) {
|
|
|
47
49
|
log.dim("Restart omp for the change to take effect.");
|
|
48
50
|
return;
|
|
49
51
|
}
|
|
52
|
+
if (host === "agy") {
|
|
53
|
+
if (!isAgyPluginEnabled()) {
|
|
54
|
+
log.info("Coding Friend is already disabled for Antigravity.");
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
log.step("Disabling Antigravity plugin...");
|
|
58
|
+
setAgyPluginEnabled(false);
|
|
59
|
+
log.success("Coding Friend disabled for Antigravity.");
|
|
60
|
+
log.dim("Restart Antigravity for the change to take effect.");
|
|
61
|
+
log.dim(`Run ${chalk.bold("cf enable --agy")} to re-enable.`);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
50
64
|
const scope = await resolveScope(
|
|
51
65
|
opts,
|
|
52
66
|
"Where should Coding Friend be disabled?"
|
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isPluginDisabled,
|
|
3
3
|
setPluginEnabled
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SUYE5S2W.js";
|
|
5
5
|
import {
|
|
6
6
|
isCodexPluginDisabled,
|
|
7
7
|
setCodexPluginEnabled
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RG3EMZH6.js";
|
|
9
9
|
import {
|
|
10
|
+
isAgyPluginEnabled,
|
|
11
|
+
setAgyPluginEnabled,
|
|
10
12
|
setOmpAgentEnabled
|
|
11
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-KCBMCHSA.js";
|
|
12
14
|
import {
|
|
13
15
|
resolveHostFlags,
|
|
14
16
|
resolveScope
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-EVGXUDX4.js";
|
|
17
|
+
} from "./chunk-Z5XTSF7L.js";
|
|
18
|
+
import "./chunk-TN3Y75WG.js";
|
|
19
|
+
import "./chunk-OBCNHQFA.js";
|
|
19
20
|
import "./chunk-5UVDWG5L.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-EVGXUDX4.js";
|
|
22
|
+
import "./chunk-IYBIIRH4.js";
|
|
21
23
|
import {
|
|
22
24
|
log
|
|
23
25
|
} from "./chunk-NREZK463.js";
|
|
@@ -52,6 +54,17 @@ async function enableCommand(opts = {}) {
|
|
|
52
54
|
log.dim("Restart omp for the change to take effect.");
|
|
53
55
|
return;
|
|
54
56
|
}
|
|
57
|
+
if (host === "agy") {
|
|
58
|
+
if (isAgyPluginEnabled()) {
|
|
59
|
+
log.info("Coding Friend is already enabled for Antigravity.");
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
log.step("Enabling Antigravity plugin...");
|
|
63
|
+
setAgyPluginEnabled(true);
|
|
64
|
+
log.success("Coding Friend enabled for Antigravity.");
|
|
65
|
+
log.dim("Restart Antigravity for the change to take effect.");
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
55
68
|
const scope = await resolveScope(
|
|
56
69
|
opts,
|
|
57
70
|
"Where should Coding Friend be enabled?"
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveLearnDir
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-E4NBTQXR.js";
|
|
4
4
|
import "./chunk-3WIZA5OZ.js";
|
|
5
5
|
import {
|
|
6
6
|
getLibPath
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-TN3Y75WG.js";
|
|
8
|
+
import "./chunk-OBCNHQFA.js";
|
|
9
|
+
import {
|
|
10
|
+
readJson
|
|
11
|
+
} from "./chunk-5UVDWG5L.js";
|
|
9
12
|
import {
|
|
10
13
|
run,
|
|
11
14
|
streamExec
|
|
12
15
|
} from "./chunk-EVGXUDX4.js";
|
|
13
|
-
import {
|
|
14
|
-
readJson
|
|
15
|
-
} from "./chunk-5UVDWG5L.js";
|
|
16
16
|
import {
|
|
17
17
|
globalConfigPath
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-IYBIIRH4.js";
|
|
19
19
|
import {
|
|
20
20
|
log,
|
|
21
21
|
printBanner
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
installedPluginsPath
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-IYBIIRH4.js";
|
|
5
5
|
|
|
6
6
|
// src/index.ts
|
|
7
7
|
import { Command } from "commander";
|
|
@@ -42,34 +42,49 @@ var program = new Command();
|
|
|
42
42
|
program.name("cf").description(
|
|
43
43
|
"coding-friend CLI \u2014 host learning docs, setup MCP, init projects"
|
|
44
44
|
).version(wantsVersion ? buildVersionString() : pkg.version, "-v, --version");
|
|
45
|
-
program.command("install").description("Install the Coding Friend plugin into a supported host").option("--user", "Install at user scope (all projects)").option("--global", "Install at user scope (all projects)").option("--project", "Install at project scope (shared via git)").option("--local", "Install at local scope (this machine only)").option(
|
|
46
|
-
|
|
45
|
+
program.command("install").description("Install the Coding Friend plugin into a supported host").option("--user", "Install at user scope (all projects)").option("--global", "Install at user scope (all projects)").option("--project", "Install at project scope (shared via git)").option("--local", "Install at local scope (this machine only)").option(
|
|
46
|
+
"--agent <agent>",
|
|
47
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
48
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").action(async (opts) => {
|
|
49
|
+
const { installCommand } = await import("./install-45O5ICBA.js");
|
|
47
50
|
await installCommand(opts);
|
|
48
51
|
});
|
|
49
|
-
program.command("uninstall").description("Uninstall the Coding Friend plugin from a supported host").option("--user", "Uninstall from user scope (all projects)").option("--global", "Uninstall from user scope (all projects)").option("--project", "Uninstall from project scope").option("--local", "Uninstall from local scope").option(
|
|
52
|
+
program.command("uninstall").description("Uninstall the Coding Friend plugin from a supported host").option("--user", "Uninstall from user scope (all projects)").option("--global", "Uninstall from user scope (all projects)").option("--project", "Uninstall from project scope").option("--local", "Uninstall from local scope").option(
|
|
53
|
+
"--agent <agent>",
|
|
54
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
55
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").option(
|
|
50
56
|
"--remove-marketplace",
|
|
51
57
|
"Also remove the host marketplace registration"
|
|
52
58
|
).action(async (opts) => {
|
|
53
|
-
const { uninstallCommand } = await import("./uninstall-
|
|
59
|
+
const { uninstallCommand } = await import("./uninstall-6QKNGLKK.js");
|
|
54
60
|
await uninstallCommand(opts);
|
|
55
61
|
});
|
|
56
|
-
program.command("disable").description("Disable the Coding Friend plugin without uninstalling").option("--user", "Disable at user scope (all projects)").option("--global", "Disable at user scope (all projects)").option("--project", "Disable at project scope").option("--local", "Disable at local scope").option(
|
|
57
|
-
|
|
62
|
+
program.command("disable").description("Disable the Coding Friend plugin without uninstalling").option("--user", "Disable at user scope (all projects)").option("--global", "Disable at user scope (all projects)").option("--project", "Disable at project scope").option("--local", "Disable at local scope").option(
|
|
63
|
+
"--agent <agent>",
|
|
64
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
65
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").action(async (opts) => {
|
|
66
|
+
const { disableCommand } = await import("./disable-DCGVIHKG.js");
|
|
58
67
|
await disableCommand(opts);
|
|
59
68
|
});
|
|
60
|
-
program.command("enable").description("Re-enable the Coding Friend plugin").option("--user", "Enable at user scope (all projects)").option("--global", "Enable at user scope (all projects)").option("--project", "Enable at project scope").option("--local", "Enable at local scope").option(
|
|
61
|
-
|
|
69
|
+
program.command("enable").description("Re-enable the Coding Friend plugin").option("--user", "Enable at user scope (all projects)").option("--global", "Enable at user scope (all projects)").option("--project", "Enable at project scope").option("--local", "Enable at local scope").option(
|
|
70
|
+
"--agent <agent>",
|
|
71
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
72
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").action(async (opts) => {
|
|
73
|
+
const { enableCommand } = await import("./enable-YYWJDOYB.js");
|
|
62
74
|
await enableCommand(opts);
|
|
63
75
|
});
|
|
64
|
-
program.command("init").description("Initialize coding-friend in current project").option(
|
|
76
|
+
program.command("init").description("Initialize coding-friend in current project").option(
|
|
77
|
+
"--agent <agent>",
|
|
78
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
79
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").option(
|
|
65
80
|
"--trust-project",
|
|
66
81
|
"For Codex, mark the current project trusted in ~/.codex/config.toml"
|
|
67
82
|
).action(async (opts) => {
|
|
68
|
-
const { initCommand } = await import("./init-
|
|
83
|
+
const { initCommand } = await import("./init-TUBWQCBQ.js");
|
|
69
84
|
await initCommand(opts);
|
|
70
85
|
});
|
|
71
86
|
program.command("config").description("Manage Coding Friend configuration").action(async () => {
|
|
72
|
-
const { configCommand } = await import("./config-
|
|
87
|
+
const { configCommand } = await import("./config-2CH4GI2L.js");
|
|
73
88
|
await configCommand();
|
|
74
89
|
});
|
|
75
90
|
var learn = program.command("learn").description("Manage learning docs \u2014 host as a website or push to git");
|
|
@@ -81,58 +96,64 @@ Learn subcommands:
|
|
|
81
96
|
learn push [path] Commit and push learning docs (only if learn dir is the git root)`
|
|
82
97
|
);
|
|
83
98
|
learn.command("host").description("Build and serve learning docs as a static website").argument("[path]", "path to docs folder").option("-p, --port <port>", "port number", "3333").action(async (path, opts) => {
|
|
84
|
-
const { hostCommand } = await import("./host-
|
|
99
|
+
const { hostCommand } = await import("./host-GZJSMJSF.js");
|
|
85
100
|
await hostCommand(path, opts);
|
|
86
101
|
});
|
|
87
102
|
learn.command("push").description("Commit and push learning docs to origin").argument("[path]", "path to docs folder").action(async (path) => {
|
|
88
|
-
const { learnPushCommand } = await import("./learn-
|
|
103
|
+
const { learnPushCommand } = await import("./learn-AJT7Z6F7.js");
|
|
89
104
|
await learnPushCommand(path);
|
|
90
105
|
});
|
|
91
106
|
program.command("host", { hidden: true }).argument("[path]", "path to docs folder").option("-p, --port <port>", "port number", "3333").action(async (path, opts) => {
|
|
92
|
-
const { hostCommand } = await import("./host-
|
|
107
|
+
const { hostCommand } = await import("./host-GZJSMJSF.js");
|
|
93
108
|
await hostCommand(path, opts);
|
|
94
109
|
});
|
|
95
110
|
program.command("mcp").description("Setup MCP server for learning docs").action(async () => {
|
|
96
|
-
const { mcpCommand } = await import("./mcp-
|
|
111
|
+
const { mcpCommand } = await import("./mcp-JGBZMNWL.js");
|
|
97
112
|
await mcpCommand();
|
|
98
113
|
});
|
|
99
114
|
program.command("mcp-serve").description(
|
|
100
115
|
"Start the cf-memory MCP server (used internally by npx). When memoryDir is omitted, resolves from CLAUDE_PROJECT_DIR at runtime."
|
|
101
116
|
).argument("[memoryDir]", "path to memory directory (optional)").action(async (memoryDir) => {
|
|
102
|
-
const { mcpServeCommand } = await import("./mcp-serve-
|
|
117
|
+
const { mcpServeCommand } = await import("./mcp-serve-SHS5MQRW.js");
|
|
103
118
|
await mcpServeCommand(memoryDir);
|
|
104
119
|
});
|
|
105
120
|
program.command("mcp-serve-learn").description("Start the learn MCP server (used internally by npx)").argument("<docsDir>", "path to docs directory").action(async (docsDir) => {
|
|
106
|
-
const { mcpServeLearnCommand } = await import("./mcp-serve-learn-
|
|
121
|
+
const { mcpServeLearnCommand } = await import("./mcp-serve-learn-HXZZ3DUI.js");
|
|
107
122
|
await mcpServeLearnCommand(docsDir);
|
|
108
123
|
});
|
|
109
124
|
program.command("permission").description("Manage host permission and approval settings for Coding Friend").option("--all", "Apply all recommended permissions without prompts").option("--user", "Save to user-level settings (~/.claude/settings.json)").option(
|
|
110
125
|
"--project",
|
|
111
126
|
"Save to project-level settings (.claude/settings.local.json)"
|
|
112
|
-
).option(
|
|
127
|
+
).option(
|
|
128
|
+
"--agent <agent>",
|
|
129
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
130
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").option(
|
|
113
131
|
"--enable-auto-approve",
|
|
114
132
|
"For Codex, enable deterministic Coding Friend auto-approve"
|
|
115
133
|
).option(
|
|
116
134
|
"--disable-auto-approve",
|
|
117
135
|
"For Codex, disable deterministic Coding Friend auto-approve"
|
|
118
136
|
).action(async (opts) => {
|
|
119
|
-
const { permissionCommand } = await import("./permission-
|
|
137
|
+
const { permissionCommand } = await import("./permission-L5QMNMID.js");
|
|
120
138
|
await permissionCommand(opts);
|
|
121
139
|
});
|
|
122
140
|
program.command("statusline").description("Setup coding-friend statusline in Claude Code").action(async () => {
|
|
123
|
-
const { statuslineCommand } = await import("./statusline-
|
|
141
|
+
const { statuslineCommand } = await import("./statusline-B7PXP3AQ.js");
|
|
124
142
|
await statuslineCommand();
|
|
125
143
|
});
|
|
126
|
-
program.command("update").description("Update coding-friend plugin, CLI, and statusline").option("--cli", "Update only the CLI (npm package)").option("--plugin", "Update only the host plugin").option("--statusline", "Update only the statusline").option("--user", "Update plugin at user scope (all projects)").option("--global", "Update plugin at user scope (all projects)").option("--project", "Update plugin at project scope").option("--local", "Update plugin at local scope").option(
|
|
127
|
-
|
|
144
|
+
program.command("update").description("Update coding-friend plugin, CLI, and statusline").option("--cli", "Update only the CLI (npm package)").option("--plugin", "Update only the host plugin").option("--statusline", "Update only the statusline").option("--user", "Update plugin at user scope (all projects)").option("--global", "Update plugin at user scope (all projects)").option("--project", "Update plugin at project scope").option("--local", "Update plugin at local scope").option(
|
|
145
|
+
"--agent <agent>",
|
|
146
|
+
"Operate on host agent: claude, codex, omp, or agy"
|
|
147
|
+
).option("--codex", "Alias for --agent codex").option("--omp", "Alias for --agent omp").option("--agy", "Shortcut for --agent agy (beta)").action(async (opts) => {
|
|
148
|
+
const { updateCommand } = await import("./update-YJ363TBU.js");
|
|
128
149
|
await updateCommand(opts);
|
|
129
150
|
});
|
|
130
151
|
program.command("status").description("Show comprehensive Coding Friend status").action(async () => {
|
|
131
|
-
const { statusCommand } = await import("./status-
|
|
152
|
+
const { statusCommand } = await import("./status-KQQJNSEZ.js");
|
|
132
153
|
await statusCommand();
|
|
133
154
|
});
|
|
134
155
|
program.command("clean").description("Clean files generated by Coding Friend in docs/").action(async () => {
|
|
135
|
-
const { cleanCommand } = await import("./clean-
|
|
156
|
+
const { cleanCommand } = await import("./clean-PKSSS662.js");
|
|
136
157
|
await cleanCommand();
|
|
137
158
|
});
|
|
138
159
|
var session = program.command("session").description("[beta] Save and load Claude Code sessions across machines");
|
|
@@ -147,11 +168,11 @@ session.command("save").description("Save current Claude Code session to sync fo
|
|
|
147
168
|
"-s, --session-id <id>",
|
|
148
169
|
"session UUID to save (default: auto-detect newest)"
|
|
149
170
|
).option("-l, --label <label>", "label for this session").action(async (opts) => {
|
|
150
|
-
const { sessionSaveCommand } = await import("./session-
|
|
171
|
+
const { sessionSaveCommand } = await import("./session-GBHL5TH3.js");
|
|
151
172
|
await sessionSaveCommand(opts);
|
|
152
173
|
});
|
|
153
174
|
session.command("load").description("Load a saved session from sync folder").action(async () => {
|
|
154
|
-
const { sessionLoadCommand } = await import("./session-
|
|
175
|
+
const { sessionLoadCommand } = await import("./session-GBHL5TH3.js");
|
|
155
176
|
await sessionLoadCommand();
|
|
156
177
|
});
|
|
157
178
|
var memory = program.command("memory").description("AI memory system \u2014 store and search project knowledge");
|
|
@@ -171,43 +192,43 @@ Memory subcommands:
|
|
|
171
192
|
memory mcp Show MCP server setup instructions`
|
|
172
193
|
);
|
|
173
194
|
memory.command("status").description("Show memory system status").action(async () => {
|
|
174
|
-
const { memoryStatusCommand } = await import("./memory-
|
|
195
|
+
const { memoryStatusCommand } = await import("./memory-4NVLWOFS.js");
|
|
175
196
|
await memoryStatusCommand();
|
|
176
197
|
});
|
|
177
198
|
memory.command("search").description("Search memories by query").argument("<query>", "search query").action(async (query) => {
|
|
178
|
-
const { memorySearchCommand } = await import("./memory-
|
|
199
|
+
const { memorySearchCommand } = await import("./memory-4NVLWOFS.js");
|
|
179
200
|
await memorySearchCommand(query);
|
|
180
201
|
});
|
|
181
202
|
memory.command("list").description(
|
|
182
203
|
"List memories in current project, or all projects with --projects"
|
|
183
204
|
).option("--projects", "List all project databases with size and metadata").action(async (opts) => {
|
|
184
|
-
const { memoryListCommand } = await import("./memory-
|
|
205
|
+
const { memoryListCommand } = await import("./memory-4NVLWOFS.js");
|
|
185
206
|
await memoryListCommand(opts);
|
|
186
207
|
});
|
|
187
208
|
memory.command("init").description(
|
|
188
209
|
"Initialize memory system \u2014 interactive wizard (first time) or config menu"
|
|
189
210
|
).action(async () => {
|
|
190
|
-
const { memoryInitCommand } = await import("./memory-
|
|
211
|
+
const { memoryInitCommand } = await import("./memory-4NVLWOFS.js");
|
|
191
212
|
await memoryInitCommand();
|
|
192
213
|
});
|
|
193
214
|
memory.command("config").description("Configure memory system settings").action(async () => {
|
|
194
|
-
const { memoryConfigCommand } = await import("./memory-
|
|
215
|
+
const { memoryConfigCommand } = await import("./memory-4NVLWOFS.js");
|
|
195
216
|
await memoryConfigCommand();
|
|
196
217
|
});
|
|
197
218
|
memory.command("start-daemon").description("Start the memory daemon (Tier 2 \u2014 MiniSearch)").action(async () => {
|
|
198
|
-
const { memoryStartDaemonCommand } = await import("./memory-
|
|
219
|
+
const { memoryStartDaemonCommand } = await import("./memory-4NVLWOFS.js");
|
|
199
220
|
await memoryStartDaemonCommand();
|
|
200
221
|
});
|
|
201
222
|
memory.command("stop-daemon").description("Stop the memory daemon").action(async () => {
|
|
202
|
-
const { memoryStopDaemonCommand } = await import("./memory-
|
|
223
|
+
const { memoryStopDaemonCommand } = await import("./memory-4NVLWOFS.js");
|
|
203
224
|
await memoryStopDaemonCommand();
|
|
204
225
|
});
|
|
205
226
|
memory.command("rebuild").description("Rebuild the daemon search index").action(async () => {
|
|
206
|
-
const { memoryRebuildCommand } = await import("./memory-
|
|
227
|
+
const { memoryRebuildCommand } = await import("./memory-4NVLWOFS.js");
|
|
207
228
|
await memoryRebuildCommand();
|
|
208
229
|
});
|
|
209
230
|
memory.command("mcp").description("Show MCP server setup instructions").action(async () => {
|
|
210
|
-
const { memoryMcpCommand } = await import("./memory-
|
|
231
|
+
const { memoryMcpCommand } = await import("./memory-4NVLWOFS.js");
|
|
211
232
|
await memoryMcpCommand();
|
|
212
233
|
});
|
|
213
234
|
memory.command("rm").description("Remove a project database").option("--project-id <id>", "Project ID to remove").option("--all", "Remove all project databases").option(
|
|
@@ -215,17 +236,17 @@ memory.command("rm").description("Remove a project database").option("--project-
|
|
|
215
236
|
"Remove orphaned projects (source dir missing or 0 memories)"
|
|
216
237
|
).action(
|
|
217
238
|
async (opts) => {
|
|
218
|
-
const { memoryRmCommand } = await import("./memory-
|
|
239
|
+
const { memoryRmCommand } = await import("./memory-4NVLWOFS.js");
|
|
219
240
|
await memoryRmCommand(opts);
|
|
220
241
|
}
|
|
221
242
|
);
|
|
222
243
|
var guide = program.command("guide").description("Manage custom skill guides");
|
|
223
244
|
guide.command("create").description("Create a custom guide for a skill").argument("<skill-name>", "skill to create guide for (e.g. cf-commit)").action(async (skillName) => {
|
|
224
|
-
const { guideCreateCommand } = await import("./guide-
|
|
245
|
+
const { guideCreateCommand } = await import("./guide-45EIK76P.js");
|
|
225
246
|
guideCreateCommand(skillName);
|
|
226
247
|
});
|
|
227
248
|
guide.command("list").description("List existing custom guides").action(async () => {
|
|
228
|
-
const { guideListCommand } = await import("./guide-
|
|
249
|
+
const { guideListCommand } = await import("./guide-45EIK76P.js");
|
|
229
250
|
guideListCommand();
|
|
230
251
|
});
|
|
231
252
|
var dev = program.command("dev").description("Development mode commands");
|
|
@@ -241,28 +262,28 @@ Dev subcommands:
|
|
|
241
262
|
dev update [path] Update local dev plugin to latest version`
|
|
242
263
|
);
|
|
243
264
|
dev.command("on").description("Switch to local plugin source").argument("[path]", "path to local coding-friend repo (default: cwd)").action(async (path) => {
|
|
244
|
-
const { devOnCommand } = await import("./dev-
|
|
265
|
+
const { devOnCommand } = await import("./dev-HWKNWOZY.js");
|
|
245
266
|
await devOnCommand(path);
|
|
246
267
|
});
|
|
247
268
|
dev.command("off").description("Switch back to remote marketplace").action(async () => {
|
|
248
|
-
const { devOffCommand } = await import("./dev-
|
|
269
|
+
const { devOffCommand } = await import("./dev-HWKNWOZY.js");
|
|
249
270
|
await devOffCommand();
|
|
250
271
|
});
|
|
251
272
|
dev.command("status").description("Show current dev mode").action(async () => {
|
|
252
|
-
const { devStatusCommand } = await import("./dev-
|
|
273
|
+
const { devStatusCommand } = await import("./dev-HWKNWOZY.js");
|
|
253
274
|
await devStatusCommand();
|
|
254
275
|
});
|
|
255
276
|
dev.command("sync").description(
|
|
256
277
|
"Copy local source files to plugin cache (no version bump needed)"
|
|
257
278
|
).action(async () => {
|
|
258
|
-
const { devSyncCommand } = await import("./dev-
|
|
279
|
+
const { devSyncCommand } = await import("./dev-HWKNWOZY.js");
|
|
259
280
|
await devSyncCommand();
|
|
260
281
|
});
|
|
261
282
|
dev.command("restart").description("Reinstall local dev plugin (off + on)").argument(
|
|
262
283
|
"[path]",
|
|
263
284
|
"path to local coding-friend repo (default: saved path or cwd)"
|
|
264
285
|
).action(async (path) => {
|
|
265
|
-
const { devRestartCommand } = await import("./dev-
|
|
286
|
+
const { devRestartCommand } = await import("./dev-HWKNWOZY.js");
|
|
266
287
|
await devRestartCommand(path);
|
|
267
288
|
});
|
|
268
289
|
dev.command("update").description(
|
|
@@ -271,13 +292,13 @@ dev.command("update").description(
|
|
|
271
292
|
"[path]",
|
|
272
293
|
"path to local coding-friend repo (default: saved path or cwd)"
|
|
273
294
|
).action(async (path) => {
|
|
274
|
-
const { devUpdateCommand } = await import("./dev-
|
|
295
|
+
const { devUpdateCommand } = await import("./dev-HWKNWOZY.js");
|
|
275
296
|
await devUpdateCommand(path);
|
|
276
297
|
});
|
|
277
298
|
program.hook("postAction", async () => {
|
|
278
299
|
const topCmd = process.argv[2];
|
|
279
300
|
if (topCmd === "update") return;
|
|
280
|
-
const { checkAndNotifyCliUpdate } = await import("./update-check-
|
|
301
|
+
const { checkAndNotifyCliUpdate } = await import("./update-check-5JZUJGUM.js");
|
|
281
302
|
checkAndNotifyCliUpdate(pkg.version);
|
|
282
303
|
});
|
|
283
304
|
await program.parseAsync();
|