[{"data":1,"prerenderedAt":674},["ShallowReactive",2],{"navigation_docs":3,"-tools-find-similar":340,"-tools-find-similar-surround":669},[4,30,55,254,271,294,311],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","/getting-started","1.getting-started",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"Introduction","/getting-started/introduction","1.getting-started/1.introduction",{"title":14,"path":15,"stem":16},"Platform","/getting-started/platforms","1.getting-started/2.platforms",{"title":18,"path":19,"stem":20},"Installation","/getting-started/installation","1.getting-started/3.installation",{"title":22,"path":23,"stem":24},"Licensing","/getting-started/licensing","1.getting-started/4.licensing",{"title":26,"path":27,"stem":28},"Quick Start","/getting-started/quick-start","1.getting-started/5.quick-start",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Features","/features","2.features",[35,39,43,47,51],{"title":36,"path":37,"stem":38},"Features Overview","/features/overview","2.features/1.overview",{"title":40,"path":41,"stem":42},"Code Quality Metrics","/features/code-quality-metrics","2.features/2.code-quality-metrics",{"title":44,"path":45,"stem":46},"Technical Debt Analysis","/features/technical-debt-analysis","2.features/3.technical-debt-analysis",{"title":48,"path":49,"stem":50},"Code Search","/features/code-search","2.features/4.code-search",{"title":52,"path":53,"stem":54},"Reports","/features/reports","2.features/5.reports",{"title":56,"path":57,"stem":58,"children":59,"page":29},"Tools","/tools","3.tools",[60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,142,148,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222,226,230,234,238,242,246,250],{"title":61,"path":62,"stem":63},"Tools Overview","/tools/overview","3.tools/1.overview",{"title":65,"path":66,"stem":67},"stellarion_get_symbol_info","/tools/get-symbol-info","3.tools/10.get-symbol-info",{"title":69,"path":70,"stem":71},"stellarion_symbol_search","/tools/symbol-search","3.tools/11.symbol-search",{"title":73,"path":74,"stem":75},"stellarion_get_callers","/tools/get-callers","3.tools/12.get-callers",{"title":77,"path":78,"stem":79},"stellarion_get_callees","/tools/get-callees","3.tools/13.get-callees",{"title":81,"path":82,"stem":83},"stellarion_get_detailed_symbol","/tools/get-detailed-symbol","3.tools/14.get-detailed-symbol",{"title":85,"path":86,"stem":87},"stellarion_find_by_imports","/tools/find-by-imports","3.tools/15.find-by-imports",{"title":89,"path":90,"stem":91},"stellarion_find_by_signature","/tools/find-by-signature","3.tools/16.find-by-signature",{"title":93,"path":94,"stem":95},"stellarion_find_entry_points","/tools/find-entry-points","3.tools/17.find-entry-points",{"title":97,"path":98,"stem":99},"stellarion_find_implementors","/tools/find-implementors","3.tools/18.find-implementors",{"title":101,"path":102,"stem":103},"stellarion_traverse_graph","/tools/traverse-graph","3.tools/19.traverse-graph",{"title":105,"path":106,"stem":107},"stellarion_get_ai_context","/tools/get-ai-context","3.tools/2.get-ai-context",{"title":109,"path":110,"stem":111},"stellarion_memory_store","/tools/memory-store","3.tools/20.memory-store",{"title":113,"path":114,"stem":115},"stellarion_memory_search","/tools/memory-search","3.tools/21.memory-search",{"title":117,"path":118,"stem":119},"stellarion_memory_get","/tools/memory-get","3.tools/22.memory-get",{"title":121,"path":122,"stem":123},"stellarion_memory_context","/tools/memory-context","3.tools/23.memory-context",{"title":125,"path":126,"stem":127},"stellarion_memory_invalidate","/tools/memory-invalidate","3.tools/24.memory-invalidate",{"title":129,"path":130,"stem":131},"stellarion_memory_list","/tools/memory-list","3.tools/25.memory-list",{"title":133,"path":134,"stem":135},"stellarion_memory_stats","/tools/memory-stats","3.tools/26.memory-stats",{"title":137,"path":138,"stem":139,"children":140},"stellarion_reindex_workspace","/tools/reindex-workspace","3.tools/27.reindex-workspace",[141],{"title":137,"path":138,"stem":139},{"title":143,"path":144,"stem":145,"children":146},"stellarion_index_files","/tools/index-files","3.tools/28.index-files",[147],{"title":143,"path":144,"stem":145},{"title":149,"path":150,"stem":151,"children":152},"stellarion_index_directory","/tools/index-directory","3.tools/29.index-directory",[153],{"title":149,"path":150,"stem":151},{"title":155,"path":156,"stem":157},"stellarion_get_edit_context","/tools/get-edit-context","3.tools/3.get-edit-context",{"title":159,"path":160,"stem":161},"stellarion_scan_security [Pro]","/tools/scan-security","3.tools/30.scan-security",{"title":163,"path":164,"stem":165},"stellarion_analyze_coupling [Pro]","/tools/analyze-coupling","3.tools/31.analyze-coupling",{"title":167,"path":168,"stem":169},"stellarion_find_unused_code [Pro]","/tools/find-unused-code","3.tools/32.find-unused-code",{"title":171,"path":172,"stem":173},"stellarion_codebase_health [Pro]","/tools/codebase-health","3.tools/33.codebase-health",{"title":175,"path":176,"stem":177},"stellarion_tech_debt_report [Pro]","/tools/tech-debt-report","3.tools/34.tech-debt-report",{"title":179,"path":180,"stem":181},"stellarion_assess_change_risk [Pro]","/tools/assess-change-risk","3.tools/35.assess-change-risk",{"title":183,"path":184,"stem":185},"stellarion_dependency_drift [Pro]","/tools/dependency-drift","3.tools/36.dependency-drift",{"title":187,"path":188,"stem":189},"stellarion_api_surface [Pro]","/tools/api-surface","3.tools/37.api-surface",{"title":191,"path":192,"stem":193},"stellarion_find_duplicates [Pro]","/tools/find-duplicates","3.tools/38.find-duplicates",{"title":195,"path":196,"stem":197},"stellarion_find_similar [Pro]","/tools/find-similar","3.tools/39.find-similar",{"title":199,"path":200,"stem":201},"stellarion_get_curated_context","/tools/get-curated-context","3.tools/4.get-curated-context",{"title":203,"path":204,"stem":205},"stellarion_cluster_symbols [Pro]","/tools/cluster-symbols","3.tools/40.cluster-symbols",{"title":207,"path":208,"stem":209},"stellarion_compare_symbols [Pro]","/tools/compare-symbols","3.tools/41.compare-symbols",{"title":211,"path":212,"stem":213},"stellarion_mine_git_history [Pro]","/tools/mine-git-history","3.tools/42.mine-git-history",{"title":215,"path":216,"stem":217},"stellarion_mine_git_history_for_file [Pro]","/tools/mine-git-history-for-file","3.tools/43.mine-git-history-for-file",{"title":219,"path":220,"stem":221},"stellarion_search_git_history [Pro]","/tools/search-git-history","3.tools/44.search-git-history",{"title":223,"path":224,"stem":225},"stellarion_find_eda_calls [Pro · EDA]","/tools/find-eda-calls","3.tools/45.find-eda-calls",{"title":227,"path":228,"stem":229},"stellarion_get_flow_graph [Pro · EDA]","/tools/get-flow-graph","3.tools/46.get-flow-graph",{"title":231,"path":232,"stem":233},"stellarion_find_duplicate_constraints [Pro · EDA]","/tools/find-duplicate-constraints","3.tools/47.find-duplicate-constraints",{"title":235,"path":236,"stem":237},"stellarion_analyze_impact","/tools/analyze-impact","3.tools/5.analyze-impact",{"title":239,"path":240,"stem":241},"stellarion_analyze_complexity","/tools/analyze-complexity","3.tools/6.analyze-complexity",{"title":243,"path":244,"stem":245},"stellarion_get_call_graph","/tools/get-call-graph","3.tools/7.get-call-graph",{"title":247,"path":248,"stem":249},"stellarion_get_dependency_graph","/tools/get-dependency-graph","3.tools/8.get-dependency-graph",{"title":251,"path":252,"stem":253},"stellarion_find_related_tests","/tools/find-related-tests","3.tools/9.find-related-tests",{"title":255,"path":256,"stem":257,"children":258,"page":29},"Integrations","/integrations","4.integrations",[259,263,267],{"title":260,"path":261,"stem":262},"Claude Code","/integrations/claude-code","4.integrations/1.claude-code",{"title":264,"path":265,"stem":266},"Cursor","/integrations/cursor","4.integrations/2.cursor",{"title":268,"path":269,"stem":270},"Other MCP Clients","/integrations/other-mcp-clients","4.integrations/3.other-mcp-clients",{"title":272,"path":273,"stem":274,"children":275,"page":29},"Guides","/guides","5.guides",[276,282,286,290],{"title":277,"path":278,"stem":279,"children":280},"Indexing Your Project","/guides/indexing-your-project","5.guides/1.indexing-your-project",[281],{"title":277,"path":278,"stem":279},{"title":283,"path":284,"stem":285},"Improving Code Quality","/guides/improving-code-quality","5.guides/2.improving-code-quality",{"title":287,"path":288,"stem":289},"Reducing Technical Debt","/guides/reducing-technical-debt","5.guides/3.reducing-technical-debt",{"title":291,"path":292,"stem":293},"Slash Commands","/guides/slash-commands","5.guides/4.slash-commands",{"title":295,"path":296,"stem":297,"children":298,"page":29},"Reference","/reference","6.reference",[299,303,307],{"title":300,"path":301,"stem":302},"CLI Commands","/reference/cli-commands","6.reference/1.cli-commands",{"title":304,"path":305,"stem":306},"Environment Variables","/reference/environment-variables","6.reference/2.environment-variables",{"title":308,"path":309,"stem":310},"Troubleshooting","/reference/troubleshooting","6.reference/3.troubleshooting",{"title":312,"path":313,"stem":314,"children":315,"page":29},"Quality","/quality","7.quality",[316,320,324,328,332,336],{"title":317,"path":318,"stem":319},"Code Quality Metrics Overview","/quality/stellarion_quality_metrics","7.quality/1.Stellarion_Quality_Metrics",{"title":321,"path":322,"stem":323},"Cognitive Complexity","/quality/cognitive-complexity","7.quality/2.cognitive-complexity",{"title":325,"path":326,"stem":327},"Cyclomatic Complexity","/quality/cyclomatic-complexity","7.quality/3.cyclomatic-complexity",{"title":329,"path":330,"stem":331},"Maintainability Index","/quality/maintainability","7.quality/4.maintainability",{"title":333,"path":334,"stem":335},"Circular Dependencies","/quality/circular-dependencies","7.quality/5.circular-dependencies",{"title":337,"path":338,"stem":339},"Unused Code Detection","/quality/unused-code","7.quality/6.unused-code",{"id":341,"title":195,"body":342,"description":662,"extension":663,"links":664,"meta":665,"navigation":666,"path":196,"seo":667,"stem":197,"__hash__":668},"docs/3.tools/39.find-similar.md",{"type":343,"value":344,"toc":648},"minimark",[345,358,362,367,383,387,498,510,514,519,529,537,541,547,552,556,562,569,573,579,582,586,589,616,619,623],[346,347,349,350,357],"callout",{"type":348},"info","This is a Pro tool. Requires a ",[351,352,356],"a",{"href":353,"rel":354},"https://stellarion.ai/pro",[355],"nofollow","Stellarion Pro license",". A 180-day free trial starts automatically.",[359,360,361],"p",{},"Given a specific function, finds the most semantically similar functions in the codebase. Identify the target function by node ID or by file path and line number. Works across languages.",[363,364,366],"h2",{"id":365},"when-to-use","When to Use",[368,369,370,374,377,380],"ul",{},[371,372,373],"li",{},"To find related implementations when you need to understand a pattern used elsewhere",[371,375,376],{},"To locate functions that could share a common abstraction",[371,378,379],{},"When fixing a bug in one function and wanting to check if similar functions have the same bug",[371,381,382],{},"To find test examples — locate a tested function similar to yours and study its tests",[363,384,386],{"id":385},"parameters","Parameters",[388,389,390,412],"table",{},[391,392,393],"thead",{},[394,395,396,400,403,406,409],"tr",{},[397,398,399],"th",{},"Parameter",[397,401,402],{},"Type",[397,404,405],{},"Required",[397,407,408],{},"Default",[397,410,411],{},"Description",[413,414,415,440,458,479],"tbody",{},[394,416,417,424,427,430,433],{},[418,419,420],"td",{},[421,422,423],"code",{},"uri",[418,425,426],{},"string",[418,428,429],{},"No",[418,431,432],{},"—",[418,434,435,436,439],{},"File path of the target function (used with ",[421,437,438],{},"line",")",[394,441,442,446,449,451,453],{},[418,443,444],{},[421,445,438],{},[418,447,448],{},"number",[418,450,429],{},[418,452,432],{},[418,454,455,456,439],{},"Line number of the target function (used with ",[421,457,423],{},[394,459,460,465,467,469,471],{},[418,461,462],{},[421,463,464],{},"nodeId",[418,466,426],{},[418,468,429],{},[418,470,432],{},[418,472,473,474,476,477,439],{},"Graph node ID of the target function (alternative to ",[421,475,423],{}," + ",[421,478,438],{},[394,480,481,486,488,490,495],{},[418,482,483],{},[421,484,485],{},"limit",[418,487,448],{},[418,489,429],{},[418,491,492],{},[421,493,494],{},"10",[418,496,497],{},"Maximum number of similar functions to return",[359,499,500,501,503,504,506,507,509],{},"Provide either ",[421,502,464],{}," or both ",[421,505,423],{}," and ",[421,508,438],{}," to identify the target function.",[363,511,513],{"id":512},"examples","Examples",[515,516,518],"h3",{"id":517},"find-similar-functions-by-file-and-line","Find similar functions by file and line",[520,521,526],"pre",{"className":522,"code":524,"language":525},[523],"language-text","Find functions similar to the one at src/services/auth.ts line 42.\n","text",[421,527,524],{"__ignoreMap":528},"",[359,530,531,532,506,534,536],{},"Uses ",[421,533,423],{},[421,535,438],{}," to locate the function, then returns the 10 most similar functions.",[515,538,540],{"id":539},"find-similar-functions-by-node-id","Find similar functions by node ID",[520,542,545],{"className":543,"code":544,"language":525},[523],"Find functions similar to node abc123.\n",[421,546,544],{"__ignoreMap":528},[359,548,531,549,551],{},[421,550,464],{}," for precise identification when you have a node ID from a previous query.",[515,553,555],{"id":554},"limit-results","Limit results",[520,557,560],{"className":558,"code":559,"language":525},[523],"Show me the 5 most similar functions to processOrder in src/handlers/order.rs.\n",[421,561,559],{"__ignoreMap":528},[359,563,564,565,568],{},"Sets ",[421,566,567],{},"limit: 5"," for a concise result set.",[515,570,572],{"id":571},"bug-hunting-across-similar-code","Bug-hunting across similar code",[520,574,577],{"className":575,"code":576,"language":525},[523],"I found a bug in validate_input at src/validators.py line 88.\nFind similar functions — they might have the same bug.\n",[421,578,576],{"__ignoreMap":528},[359,580,581],{},"Returns semantically similar validation functions that may share the same flaw.",[363,583,585],{"id":584},"output-format","Output Format",[359,587,588],{},"Returns a ranked list of similar functions, each containing:",[368,590,591,598,604,610],{},[371,592,593,597],{},[594,595,596],"strong",{},"Function name"," — the matched function",[371,599,600,603],{},[594,601,602],{},"File path and line number"," — where it lives",[371,605,606,609],{},[594,607,608],{},"Language"," — which language the function is written in",[371,611,612,615],{},[594,613,614],{},"Similarity score"," — 0.0 to 1.0",[359,617,618],{},"Results are sorted by similarity, highest first.",[363,620,622],{"id":621},"tips","Tips",[368,624,625,632,635,638,641],{},[371,626,627,628,631],{},"This is a targeted search starting from a specific function — use ",[421,629,630],{},"stellarion_find_duplicates"," for a broader codebase-wide scan",[371,633,634],{},"Similarity is based on semantic embeddings, not text matching — functions that do the same thing in different ways will still match",[371,636,637],{},"Use this to find \"family\" patterns: if you find a good implementation, search for similar ones that might be worse and could be replaced",[371,639,640],{},"When a function has no similar matches (all scores below 0.5), it is likely unique logic",[371,642,643,644,647],{},"Combine with ",[421,645,646],{},"stellarion_compare_symbols"," to do a detailed diff between the original and a similar function",{"title":528,"searchDepth":649,"depth":649,"links":650},2,[651,652,653,660,661],{"id":365,"depth":649,"text":366},{"id":385,"depth":649,"text":386},{"id":512,"depth":649,"text":513,"children":654},[655,657,658,659],{"id":517,"depth":656,"text":518},3,{"id":539,"depth":656,"text":540},{"id":554,"depth":656,"text":555},{"id":571,"depth":656,"text":572},{"id":584,"depth":649,"text":585},{"id":621,"depth":649,"text":622},"Find functions most similar to a given function","md",null,{},true,{"title":195,"description":662},"zCcqeUJoXW30vYEOC9lVNWDkaK3hEwtieZ8dg40e0RU",[670,672],{"title":191,"path":192,"stem":193,"description":671,"children":-1},"Detect duplicate and near-duplicate functions using semantic embeddings",{"title":199,"path":200,"stem":201,"description":673,"children":-1},"Cross-codebase context for natural language queries",1777612939610]