@skroyc/librarian 0.1.0 → 0.2.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.
Files changed (76) hide show
  1. package/README.md +4 -16
  2. package/dist/agents/context-schema.d.ts +1 -1
  3. package/dist/agents/context-schema.d.ts.map +1 -1
  4. package/dist/agents/context-schema.js +5 -2
  5. package/dist/agents/context-schema.js.map +1 -1
  6. package/dist/agents/react-agent.d.ts.map +1 -1
  7. package/dist/agents/react-agent.js +36 -27
  8. package/dist/agents/react-agent.js.map +1 -1
  9. package/dist/agents/tool-runtime.d.ts.map +1 -1
  10. package/dist/cli.d.ts +1 -1
  11. package/dist/cli.d.ts.map +1 -1
  12. package/dist/cli.js +53 -49
  13. package/dist/cli.js.map +1 -1
  14. package/dist/config.d.ts +1 -1
  15. package/dist/config.d.ts.map +1 -1
  16. package/dist/config.js +115 -69
  17. package/dist/config.js.map +1 -1
  18. package/dist/index.d.ts +1 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +246 -150
  21. package/dist/index.js.map +1 -1
  22. package/dist/tools/file-finding.tool.d.ts +1 -1
  23. package/dist/tools/file-finding.tool.d.ts.map +1 -1
  24. package/dist/tools/file-finding.tool.js +70 -130
  25. package/dist/tools/file-finding.tool.js.map +1 -1
  26. package/dist/tools/file-listing.tool.d.ts +7 -1
  27. package/dist/tools/file-listing.tool.d.ts.map +1 -1
  28. package/dist/tools/file-listing.tool.js +96 -80
  29. package/dist/tools/file-listing.tool.js.map +1 -1
  30. package/dist/tools/file-reading.tool.d.ts +4 -1
  31. package/dist/tools/file-reading.tool.d.ts.map +1 -1
  32. package/dist/tools/file-reading.tool.js +107 -45
  33. package/dist/tools/file-reading.tool.js.map +1 -1
  34. package/dist/tools/grep-content.tool.d.ts +13 -1
  35. package/dist/tools/grep-content.tool.d.ts.map +1 -1
  36. package/dist/tools/grep-content.tool.js +186 -144
  37. package/dist/tools/grep-content.tool.js.map +1 -1
  38. package/dist/utils/error-utils.d.ts +9 -0
  39. package/dist/utils/error-utils.d.ts.map +1 -0
  40. package/dist/utils/error-utils.js +61 -0
  41. package/dist/utils/error-utils.js.map +1 -0
  42. package/dist/utils/file-utils.d.ts +1 -0
  43. package/dist/utils/file-utils.d.ts.map +1 -1
  44. package/dist/utils/file-utils.js +81 -9
  45. package/dist/utils/file-utils.js.map +1 -1
  46. package/dist/utils/format-utils.d.ts +25 -0
  47. package/dist/utils/format-utils.d.ts.map +1 -0
  48. package/dist/utils/format-utils.js +111 -0
  49. package/dist/utils/format-utils.js.map +1 -0
  50. package/dist/utils/gitignore-service.d.ts +10 -0
  51. package/dist/utils/gitignore-service.d.ts.map +1 -0
  52. package/dist/utils/gitignore-service.js +91 -0
  53. package/dist/utils/gitignore-service.js.map +1 -0
  54. package/dist/utils/logger.d.ts +2 -2
  55. package/dist/utils/logger.d.ts.map +1 -1
  56. package/dist/utils/logger.js +35 -34
  57. package/dist/utils/logger.js.map +1 -1
  58. package/dist/utils/path-utils.js +3 -3
  59. package/dist/utils/path-utils.js.map +1 -1
  60. package/package.json +1 -1
  61. package/src/agents/context-schema.ts +5 -2
  62. package/src/agents/react-agent.ts +667 -641
  63. package/src/agents/tool-runtime.ts +4 -4
  64. package/src/cli.ts +95 -57
  65. package/src/config.ts +192 -90
  66. package/src/index.ts +402 -180
  67. package/src/tools/file-finding.tool.ts +198 -310
  68. package/src/tools/file-listing.tool.ts +245 -202
  69. package/src/tools/file-reading.tool.ts +225 -138
  70. package/src/tools/grep-content.tool.ts +387 -307
  71. package/src/utils/error-utils.ts +95 -0
  72. package/src/utils/file-utils.ts +104 -19
  73. package/src/utils/format-utils.ts +190 -0
  74. package/src/utils/gitignore-service.ts +123 -0
  75. package/src/utils/logger.ts +112 -77
  76. package/src/utils/path-utils.ts +3 -3
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- export declare const fileFindTool: import("langchain").DynamicStructuredTool<z.ZodObject<{
2
+ export declare const findTool: import("langchain").DynamicStructuredTool<z.ZodObject<{
3
3
  searchPath: z.ZodString;
4
4
  patterns: z.ZodArray<z.ZodString>;
5
5
  exclude: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"file-finding.tool.d.ts","sourceRoot":"","sources":["../../src/tools/file-finding.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoKxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;UA8JxB,CAAC"}
1
+ {"version":3,"file":"file-finding.tool.d.ts","sourceRoot":"","sources":["../../src/tools/file-finding.tool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;UAyMpB,CAAC"}
@@ -1,99 +1,14 @@
1
- import { tool } from "langchain";
2
- import { z } from "zod";
3
1
  import fs from "node:fs/promises";
4
2
  import path from "node:path";
3
+ import { Glob } from "bun";
4
+ import { tool } from "langchain";
5
+ import { z } from "zod";
6
+ import { formatToolError, getToolSuggestion } from "../utils/error-utils.js";
7
+ import { GitIgnoreService } from "../utils/gitignore-service.js";
5
8
  import { logger } from "../utils/logger.js";
6
- async function findFiles(searchPath, patterns, options = {}) {
7
- const { exclude = [], recursive = true, maxResults = 1000, includeHidden = false, } = options;
8
- const foundFiles = [];
9
- const processedPaths = new Set();
10
- for (const pattern of patterns) {
11
- const effectivePattern = recursive && !pattern.includes("**") && !pattern.includes("/")
12
- ? `**/${pattern}`
13
- : pattern;
14
- const matchingFiles = await simpleGlobSearch(searchPath, effectivePattern, {
15
- recursive,
16
- includeHidden,
17
- });
18
- for (const file of matchingFiles) {
19
- if (foundFiles.length >= maxResults) {
20
- break;
21
- }
22
- if (processedPaths.has(file)) {
23
- continue;
24
- }
25
- processedPaths.add(file);
26
- const relativePath = path.relative(searchPath, file);
27
- if (exclude.some((excl) => simpleMatch(relativePath, excl))) {
28
- continue;
29
- }
30
- foundFiles.push(file);
31
- }
32
- if (foundFiles.length >= maxResults) {
33
- break;
34
- }
35
- }
36
- return foundFiles.slice(0, maxResults);
37
- }
38
- async function handleDirectoryEntry(entry, basePath, pattern, options, results) {
39
- const fullPath = path.join(basePath, entry.name);
40
- if (pattern === "**" || pattern.includes("**") || options.recursive) {
41
- const basePattern = pattern.split("/")[0] || pattern;
42
- if (simpleMatch(entry.name, basePattern)) {
43
- results.push(fullPath);
44
- }
45
- if (options.recursive) {
46
- const subDirResults = await simpleGlobSearch(fullPath, pattern, options);
47
- results.push(...subDirResults);
48
- }
49
- }
50
- }
51
- function handleFileEntry(entry, basePath, pattern, results) {
52
- const fullPath = path.join(basePath, entry.name);
53
- const relativePath = path.relative(basePath, fullPath);
54
- const basePattern = pattern.includes("**/")
55
- ? pattern.split("**/")[1] || ""
56
- : pattern;
57
- if (simpleMatch(entry.name, basePattern) ||
58
- simpleMatch(relativePath, basePattern)) {
59
- results.push(fullPath);
60
- }
61
- }
62
- async function simpleGlobSearch(basePath, pattern, options) {
63
- const results = [];
64
- try {
65
- const entries = await fs.readdir(basePath, { withFileTypes: true });
66
- for (const entry of entries) {
67
- if (!options.includeHidden && entry.name.startsWith(".")) {
68
- continue;
69
- }
70
- if (entry.isDirectory()) {
71
- await handleDirectoryEntry(entry, basePath, pattern, options, results);
72
- }
73
- else if (entry.isFile()) {
74
- handleFileEntry(entry, basePath, pattern, results);
75
- }
76
- }
77
- }
78
- catch {
79
- return [];
80
- }
81
- return results;
82
- }
83
- function simpleMatch(str, pattern) {
84
- if (pattern === str) {
85
- return true;
86
- }
87
- const regexPattern = pattern
88
- .replace(/\./g, "\\.")
89
- .replace(/\*/g, ".*")
90
- .replace(/\?/g, ".");
91
- const regex = new RegExp(`^${regexPattern}$`);
92
- return regex.test(str);
93
- }
94
- export const fileFindTool = tool(async ({ searchPath = ".", patterns, exclude = [], recursive = true, maxResults = 1000, includeHidden = false, }, config) => {
95
- const timingId = logger.timingStart("fileFind");
96
- logger.info("TOOL", "file_find called", {
9
+ export const findTool = tool(async ({ searchPath = ".", patterns, exclude = [], recursive = true, maxResults = 100, includeHidden = false, }, config) => {
10
+ const timingId = logger.timingStart("find");
11
+ logger.info("TOOL", "find called", {
97
12
  searchPath,
98
13
  patterns,
99
14
  exclude,
@@ -106,57 +21,82 @@ export const fileFindTool = tool(async ({ searchPath = ".", patterns, exclude =
106
21
  if (!workingDir) {
107
22
  throw new Error("Context with workingDir is required for file operations");
108
23
  }
109
- logger.debug("TOOL", "Working directory", {
110
- workingDir: workingDir.replace(Bun.env.HOME || "", "~"),
111
- });
112
24
  const resolvedPath = path.resolve(workingDir, searchPath);
113
25
  const resolvedWorkingDir = path.resolve(workingDir);
114
26
  const relativePath = path.relative(resolvedWorkingDir, resolvedPath);
115
- logger.debug("TOOL", "Path validation", {
116
- resolvedPath: resolvedPath.replace(Bun.env.HOME || "", "~"),
117
- resolvedWorkingDir: resolvedWorkingDir.replace(Bun.env.HOME || "", "~"),
118
- relativePath,
119
- validated: !relativePath.startsWith(".."),
120
- });
121
27
  if (relativePath.startsWith("..")) {
122
- logger.error("PATH", "Search path escapes working directory sandbox", undefined, { searchPath, relativePath });
123
28
  throw new Error(`Search path "${searchPath}" attempts to escape the working directory sandbox`);
124
29
  }
125
- const stats = await fs.stat(resolvedPath);
30
+ let stats;
31
+ try {
32
+ stats = await fs.stat(resolvedPath);
33
+ }
34
+ catch (error) {
35
+ if (error.code === "ENOENT") {
36
+ throw new Error(`Search path "${searchPath}" does not exist`);
37
+ }
38
+ throw error;
39
+ }
126
40
  if (!stats.isDirectory()) {
127
- logger.error("TOOL", "Search path is not a directory", undefined, {
128
- searchPath,
129
- });
130
41
  throw new Error(`Search path "${searchPath}" is not a directory`);
131
42
  }
132
- const foundFiles = await findFiles(resolvedPath, patterns || ["*"], {
133
- exclude,
134
- recursive,
135
- maxResults,
136
- includeHidden,
137
- });
138
- logger.timingEnd(timingId, "TOOL", "file_find completed");
139
- logger.debug("TOOL", "File search successful", {
140
- searchPath,
141
- foundCount: foundFiles.length,
142
- patterns,
143
- });
144
- if (foundFiles.length === 0) {
145
- return `No files found matching patterns: ${patterns?.join(", ") || "*"}`;
43
+ if (!patterns || patterns.length === 0) {
44
+ throw new Error('The "patterns" parameter must contain at least one glob pattern');
45
+ }
46
+ const gitignore = new GitIgnoreService(workingDir);
47
+ await gitignore.initialize();
48
+ const foundFiles = [];
49
+ const excludeGlobs = exclude.map((pattern) => new Glob(pattern));
50
+ for (const pattern of patterns) {
51
+ if (foundFiles.length >= maxResults) {
52
+ break;
53
+ }
54
+ const effectivePattern = recursive && !pattern.includes("/") && !pattern.includes("**")
55
+ ? `**/${pattern}`
56
+ : pattern;
57
+ const glob = new Glob(effectivePattern);
58
+ for await (const file of glob.scan({
59
+ cwd: resolvedPath,
60
+ onlyFiles: true,
61
+ dot: includeHidden,
62
+ })) {
63
+ if (foundFiles.length >= maxResults) {
64
+ break;
65
+ }
66
+ const fullPath = path.resolve(resolvedPath, file);
67
+ const relativeToWorkingDir = path.relative(resolvedWorkingDir, fullPath);
68
+ if (gitignore.shouldIgnore(fullPath, false)) {
69
+ continue;
70
+ }
71
+ const isExcluded = excludeGlobs.some((eg) => eg.match(relativeToWorkingDir));
72
+ if (isExcluded) {
73
+ continue;
74
+ }
75
+ if (!foundFiles.includes(relativeToWorkingDir)) {
76
+ foundFiles.push(relativeToWorkingDir);
77
+ }
78
+ }
146
79
  }
147
- let output = `Found ${foundFiles.length} files matching patterns [${patterns?.join(", ") || "*"}]:\n\n`;
148
- for (const file of foundFiles) {
149
- const relativePath = path.relative(resolvedPath, file);
150
- output += `${relativePath}\n`;
80
+ logger.timingEnd(timingId, "TOOL", "find completed");
81
+ if (foundFiles.length === 0) {
82
+ return `No files found matching patterns: ${patterns.join(", ")}`;
151
83
  }
84
+ foundFiles.sort();
85
+ let output = `Found ${foundFiles.length} files matching patterns [${patterns.join(", ")}]:\n\n`;
86
+ output += foundFiles.join("\n");
152
87
  return output;
153
88
  }
154
89
  catch (error) {
155
- logger.error("TOOL", "file_find failed", error instanceof Error ? error : new Error(String(error)), { searchPath, patterns });
156
- return `Error finding files: ${error.message}`;
90
+ logger.error("TOOL", "find failed", error instanceof Error ? error : new Error(String(error)), { searchPath, patterns });
91
+ return formatToolError({
92
+ operation: "find",
93
+ path: searchPath,
94
+ cause: error,
95
+ suggestion: getToolSuggestion("find", searchPath),
96
+ });
157
97
  }
158
98
  }, {
159
- name: "find_files",
99
+ name: "find",
160
100
  description: `Discovers files using glob patterns. Respects .gitignore.
161
101
  Usage
162
102
  - Fast file pattern matching command that works with any codebase size
@@ -177,7 +117,7 @@ Usage
177
117
  .array(z.string())
178
118
  .optional()
179
119
  .default([])
180
- .describe("Array of patterns to exclude from results. Defaults to none"),
120
+ .describe("Array of glob patterns to exclude from results. Use full glob patterns for exclusions (e.g., '**/node_modules/**' to exclude a directory and its contents recursively). Defaults to none"),
181
121
  recursive: z
182
122
  .boolean()
183
123
  .optional()
@@ -187,7 +127,7 @@ Usage
187
127
  .number()
188
128
  .optional()
189
129
  .default(100)
190
- .describe("Maximum number of files to return. Maximum of 100 by default"),
130
+ .describe("Maximum number of files to return. Defaults to 100"),
191
131
  includeHidden: z
192
132
  .boolean()
193
133
  .optional()
@@ -1 +1 @@
1
- {"version":3,"file":"file-finding.tool.js","sourceRoot":"","sources":["../../src/tools/file-finding.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-finding.tool.js","sourceRoot":"","sources":["../../src/tools/file-finding.tool.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,18 @@
1
1
  import { z } from "zod";
2
- export declare const fileListTool: import("langchain").DynamicStructuredTool<z.ZodObject<{
2
+ export declare const listTool: import("langchain").DynamicStructuredTool<z.ZodObject<{
3
3
  directoryPath: z.ZodString;
4
4
  includeHidden: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
5
+ recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ maxDepth: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5
7
  }, z.core.$strip>, {
6
8
  directoryPath: string;
7
9
  includeHidden: boolean;
10
+ recursive: boolean;
11
+ maxDepth: number;
8
12
  }, {
9
13
  directoryPath: string;
10
14
  includeHidden?: boolean | undefined;
15
+ recursive?: boolean | undefined;
16
+ maxDepth?: number | undefined;
11
17
  }, string>;
12
18
  //# sourceMappingURL=file-listing.tool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-listing.tool.d.ts","sourceRoot":"","sources":["../../src/tools/file-listing.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuHxB,eAAO,MAAM,YAAY;;;;;;;;;UA2FxB,CAAC"}
1
+ {"version":3,"file":"file-listing.tool.d.ts","sourceRoot":"","sources":["../../src/tools/file-listing.tool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+IxB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;UA4GpB,CAAC"}