@liendev/lien 0.29.1 → 0.32.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/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -8524,7 +8524,8 @@ var ListFunctionsSchema = external_exports.object({
|
|
|
8524
8524
|
),
|
|
8525
8525
|
language: external_exports.string().optional().describe(
|
|
8526
8526
|
"Filter by programming language.\n\nExamples: 'typescript', 'python', 'javascript', 'php'\n\nIf omitted, searches all languages."
|
|
8527
|
-
)
|
|
8527
|
+
),
|
|
8528
|
+
symbolType: external_exports.enum(["function", "method", "class", "interface"]).optional().describe("Filter by symbol type. If omitted, returns all types.")
|
|
8528
8529
|
});
|
|
8529
8530
|
|
|
8530
8531
|
// src/mcp/schemas/dependents.schema.ts
|
|
@@ -8647,6 +8648,10 @@ Batch calls are more efficient than multiple single-file calls.`
|
|
|
8647
8648
|
Examples:
|
|
8648
8649
|
- "Show all controllers" \u2192 list_functions({ pattern: ".*Controller.*" })
|
|
8649
8650
|
- "Find service classes" \u2192 list_functions({ pattern: ".*Service$" })
|
|
8651
|
+
- "List all class methods" \u2192 list_functions({ symbolType: "method" })
|
|
8652
|
+
- "Find standalone functions" \u2192 list_functions({ symbolType: "function" })
|
|
8653
|
+
|
|
8654
|
+
Filter by symbol type (function, method, class, interface) to narrow results.
|
|
8650
8655
|
|
|
8651
8656
|
10x faster than semantic_search for structural/architectural queries. Use semantic_search instead when searching by what code DOES.`
|
|
8652
8657
|
),
|
|
@@ -9244,6 +9249,7 @@ async function performContentScan(vectorDB, args, log) {
|
|
|
9244
9249
|
log("Falling back to content scan...");
|
|
9245
9250
|
let results = await vectorDB.scanWithFilter({
|
|
9246
9251
|
language: args.language,
|
|
9252
|
+
symbolType: args.symbolType,
|
|
9247
9253
|
limit: 200
|
|
9248
9254
|
// Fetch more, we'll filter by symbolName
|
|
9249
9255
|
});
|
|
@@ -9271,9 +9277,10 @@ async function handleListFunctions(args, ctx) {
|
|
|
9271
9277
|
const results = await vectorDB.querySymbols({
|
|
9272
9278
|
language: validatedArgs.language,
|
|
9273
9279
|
pattern: validatedArgs.pattern,
|
|
9280
|
+
symbolType: validatedArgs.symbolType,
|
|
9274
9281
|
limit: 50
|
|
9275
9282
|
});
|
|
9276
|
-
if (results.length === 0 && (validatedArgs.language || validatedArgs.pattern)) {
|
|
9283
|
+
if (results.length === 0 && (validatedArgs.language || validatedArgs.pattern || validatedArgs.symbolType)) {
|
|
9277
9284
|
log("No symbol results, falling back to content scan...");
|
|
9278
9285
|
queryResult = await performContentScan(vectorDB, validatedArgs, log);
|
|
9279
9286
|
} else {
|