coding-friend-cli 1.35.0 → 1.35.2

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.
@@ -520,6 +520,7 @@ async function editGitignore(globalCfg, localCfg) {
520
520
  `${docsDir}/sessions/`,
521
521
  `${docsDir}/reviews/`,
522
522
  `${docsDir}/context/`,
523
+ `${docsDir}/warm/`,
523
524
  ".coding-friend/"
524
525
  ];
525
526
  const existing = existsSync(".gitignore") ? readFileSync(".gitignore", "utf-8") : "";
package/dist/index.js CHANGED
@@ -30,11 +30,11 @@ program.command("enable").description("Re-enable the Coding Friend plugin").opti
30
30
  await enableCommand(opts);
31
31
  });
32
32
  program.command("init").description("Initialize coding-friend in current project").action(async () => {
33
- const { initCommand } = await import("./init-YM7YEEGK.js");
33
+ const { initCommand } = await import("./init-CUELDLCM.js");
34
34
  await initCommand();
35
35
  });
36
36
  program.command("config").description("Manage Coding Friend configuration").action(async () => {
37
- const { configCommand } = await import("./config-HTQAALMA.js");
37
+ const { configCommand } = await import("./config-BXLCAOG2.js");
38
38
  await configCommand();
39
39
  });
40
40
  program.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) => {
@@ -88,11 +88,11 @@ session.command("save").description("Save current Claude Code session to sync fo
88
88
  "-s, --session-id <id>",
89
89
  "session UUID to save (default: auto-detect newest)"
90
90
  ).option("-l, --label <label>", "label for this session").action(async (opts) => {
91
- const { sessionSaveCommand } = await import("./session-M4KRQ4VU.js");
91
+ const { sessionSaveCommand } = await import("./session-2TIDWOG3.js");
92
92
  await sessionSaveCommand(opts);
93
93
  });
94
94
  session.command("load").description("Load a saved session from sync folder").action(async () => {
95
- const { sessionLoadCommand } = await import("./session-M4KRQ4VU.js");
95
+ const { sessionLoadCommand } = await import("./session-2TIDWOG3.js");
96
96
  await sessionLoadCommand();
97
97
  });
98
98
  var memory = program.command("memory").description("AI memory system \u2014 store and search project knowledge");
@@ -119,7 +119,7 @@ function paddedScopeLabel(scope) {
119
119
  }
120
120
  function printSetupStatus(globalCfg, localCfg, gitAvailable) {
121
121
  const docsDir = getDocsDir(globalCfg, localCfg);
122
- const subfolders = ["plans", "memory", "research", "sessions", "reviews"];
122
+ const subfolders = ["plans", "memory", "research", "sessions", "reviews", "warm"];
123
123
  const folderStatus = subfolders.map((sub) => ({
124
124
  name: `${docsDir}/${sub}`,
125
125
  exists: existsSync(`${docsDir}/${sub}`)
@@ -244,7 +244,8 @@ async function stepDocsDir(globalCfg, localCfg) {
244
244
  "memory",
245
245
  "research",
246
246
  "sessions",
247
- "reviews"
247
+ "reviews",
248
+ "warm"
248
249
  ];
249
250
  ensureDocsFolders(globalValue, DOCS_SUBFOLDERS2);
250
251
  return;
@@ -269,7 +270,8 @@ async function stepDocsDir(globalCfg, localCfg) {
269
270
  "memory",
270
271
  "research",
271
272
  "sessions",
272
- "reviews"
273
+ "reviews",
274
+ "warm"
273
275
  ];
274
276
  applyDocsDirChange(value, currentValue, scope, DOCS_SUBFOLDERS);
275
277
  writeToScope(scope, { docsDir: value });
@@ -311,6 +313,7 @@ async function stepGitignore(docsDir) {
311
313
  `${docsDir}/sessions/`,
312
314
  `${docsDir}/reviews/`,
313
315
  `${docsDir}/context/`,
316
+ `${docsDir}/warm/`,
314
317
  ".coding-friend/"
315
318
  ];
316
319
  let entries = allEntries;
@@ -150,7 +150,7 @@ function resolveDocsDir() {
150
150
  }
151
151
  function formatSessionChoice(meta) {
152
152
  const date = new Date(meta.savedAt).toLocaleString();
153
- const preview = meta.previewText.slice(0, 60).replace(/\n/g, " ");
153
+ const preview = (meta.previewText ?? "").slice(0, 60).replace(/\n/g, " ");
154
154
  return `[${meta.label}] ${date} @${meta.machine} \u2014 ${preview}`;
155
155
  }
156
156
  async function sessionSaveCommand(opts = {}) {
@@ -6,7 +6,6 @@
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "coding-friend-cf-memory",
9
- "version": "0.0.1",
10
9
  "dependencies": {
11
10
  "@hono/node-server": "^1.19.11",
12
11
  "@modelcontextprotocol/sdk": "^1.27.0",
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "coding-friend-cli",
3
- "version": "1.35.0",
3
+ "version": "1.35.2",
4
4
  "description": "CLI for coding-friend — host learning docs, setup MCP server, initialize projects",
5
5
  "type": "module",
6
6
  "bin": {
7
- "cf": "./dist/index.js"
7
+ "cf": "./dist/index.js",
8
+ "cdf": "./dist/index.js"
8
9
  },
9
10
  "scripts": {
10
11
  "build": "tsup src/index.ts src/postinstall.ts --format esm --dts --clean",