@harness-nexus/cli 0.1.0-alpha.3 → 0.1.0-alpha.4

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.
@@ -1,3 +1,5 @@
1
- import type { WorkspaceDirectory } from '@harness-nexus/shared';
1
+ import type { WorkspaceDirectory, WorkspaceFile } from '@harness-nexus/shared';
2
2
  export declare function listDirectories(path: string): Promise<WorkspaceDirectory[]>;
3
+ /** 9 W9 C — regular files at one level, for the @-reference picker. */
4
+ export declare function listFiles(path: string): Promise<WorkspaceFile[]>;
3
5
  //# sourceMappingURL=workspace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/daemon/workspace.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAahE,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAWjF"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/daemon/workspace.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAc/E,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAWjF;AAED,uEAAuE;AACvE,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAWtE"}
@@ -1,14 +1,15 @@
1
1
  import { readdir } from 'node:fs/promises';
2
2
  import { join } from 'node:path';
3
3
  /**
4
- * Workspace directory listing (Phase 9 W6) — one level of subdirectories for
5
- * the chat session picker. The server has ALREADY validated containment
6
- * against the machine's baseWorkspace before emitting `workspace:list`; this
7
- * module keeps the listing itself honest and bounded: directories only
8
- * (symlinks are excluded `Dirent.isDirectory()` is false for them), hidden
9
- * `.*` entries skipped, name-sorted, capped at 512.
4
+ * Workspace directory listing (Phase 9 W6; 9 W9 C adds files) — one level of
5
+ * entries for the chat session picker and the composer's @-reference picker.
6
+ * The server has ALREADY validated containment against the machine's
7
+ * baseWorkspace before emitting `workspace:list`; this module keeps the
8
+ * listing itself honest and bounded: directories and regular files only
9
+ * (symlinks are excluded `Dirent.isDirectory()` / `isFile()` are false for
10
+ * them), hidden `.*` entries skipped, name-sorted, capped at 512 each.
10
11
  */
11
- const MAX_DIRECTORIES = 512;
12
+ const MAX_ENTRIES = 512;
12
13
  export async function listDirectories(path) {
13
14
  const entries = await readdir(path, { withFileTypes: true });
14
15
  const out = [];
@@ -18,7 +19,23 @@ export async function listDirectories(path) {
18
19
  if (entry.name.startsWith('.'))
19
20
  continue;
20
21
  out.push({ name: entry.name, path: join(path, entry.name) });
21
- if (out.length >= MAX_DIRECTORIES)
22
+ if (out.length >= MAX_ENTRIES)
23
+ break;
24
+ }
25
+ out.sort((a, b) => a.name.localeCompare(b.name));
26
+ return out;
27
+ }
28
+ /** 9 W9 C — regular files at one level, for the @-reference picker. */
29
+ export async function listFiles(path) {
30
+ const entries = await readdir(path, { withFileTypes: true });
31
+ const out = [];
32
+ for (const entry of entries) {
33
+ if (!entry.isFile())
34
+ continue; // skips dirs AND symlinks-to-files
35
+ if (entry.name.startsWith('.'))
36
+ continue;
37
+ out.push({ name: entry.name, path: join(path, entry.name) });
38
+ if (out.length >= MAX_ENTRIES)
22
39
  break;
23
40
  }
24
41
  out.sort((a, b) => a.name.localeCompare(b.name));
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/daemon/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC;;;;;;;GAOG;AAEH,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAyB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS,CAAC,mCAAmC;QACvE,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QACzC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,GAAG,CAAC,MAAM,IAAI,eAAe;YAAE,MAAM;IAC3C,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/daemon/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC;;;;;;;;GAQG;AAEH,MAAM,WAAW,GAAG,GAAG,CAAC;AAExB,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAyB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS,CAAC,mCAAmC;QACvE,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QACzC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,GAAG,CAAC,MAAM,IAAI,WAAW;YAAE,MAAM;IACvC,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAAE,SAAS,CAAC,mCAAmC;QAClE,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QACzC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,GAAG,CAAC,MAAM,IAAI,WAAW;YAAE,MAAM;IACvC,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harness-nexus/cli",
3
- "version": "0.1.0-alpha.3",
3
+ "version": "0.1.0-alpha.4",
4
4
  "description": "Harness Nexus one-click install CLI — pulls profiles/resources and writes them into a target Agent tool.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -12,10 +12,10 @@
12
12
  "@modelcontextprotocol/sdk": "^1.29.0",
13
13
  "js-yaml": "^4.1.0",
14
14
  "socket.io-client": "^4.8.3",
15
- "@harness-nexus/core": "0.1.0-alpha.3",
16
- "@harness-nexus/shared": "0.1.0-alpha.3",
17
- "@harness-nexus/mcp-runtime": "^0.1.0-alpha.3",
18
- "@harness-nexus/sdk": "0.1.0-alpha.3"
15
+ "@harness-nexus/mcp-runtime": "^0.1.0-alpha.4",
16
+ "@harness-nexus/shared": "0.1.0-alpha.4",
17
+ "@harness-nexus/core": "0.1.0-alpha.4",
18
+ "@harness-nexus/sdk": "0.1.0-alpha.4"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@types/js-yaml": "^4.0.9",