{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Lsproxy Docs","colors":{"primary":"#0D9373","light":"#2DB0B3","dark":"#0D9373"},"favicon":"logo/agentic_logo.png","logo":{"light":"https://mintcdn.com/agenticlabs-2964319e/iD3j-Tz9pOfvLayG/logo/agentic_logo.png?fit=max\u0026auto=format\u0026n=iD3j-Tz9pOfvLayG\u0026q=85\u0026s=2aa1671e6e2263e42bd436462418914a","dark":"https://mintcdn.com/agenticlabs-2964319e/iD3j-Tz9pOfvLayG/logo/agentic_logo.png?fit=max\u0026auto=format\u0026n=iD3j-Tz9pOfvLayG\u0026q=85\u0026s=2aa1671e6e2263e42bd436462418914a","href":"https://lsproxy.dev"},"api":{"playground":{"display":"simple"}},"navbar":{"primary":{"type":"github","href":"https://github.com/agentic-labs/lsproxy"}},"footer":{"socials":{"x":"https://x.com/agentic_labs","linkedin":"https://www.linkedin.com/company/agentic-labs"}},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"agenticlabs-2964319e","hasAudioNarration":false,"actualSubdomain":"agenticlabs-2964319e","customDomains":["docs.lsproxy.dev"],"gitSource":{"type":"github","owner":"robmck1995","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a20c5a241886f9eab77e9b5","collectionId":"5014e149-5de8-4cba-969b-8adc5554b67c","schemaVersion":"v2"},"entitlements":{},"buildId":"6a20c5a241886f9eab77e9b5:success","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":8},{"language":"default","tag":"symbol","count":5},{"language":"default","tag":"Get Started","count":4},{"language":"default","tag":"workspace","count":2},{"language":"default","tag":"system","count":1}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep","slug":"/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep","pageMetadata":{"title":"Get symbols in a specific file (uses ast-grep)","description":"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file.\n\nOnly the variabels defined at the file level are included.\n\nThe returned positions point to the start of the symbol's identifier.\n\ne.g. for `User` on line 0 of `src/main.py`:\n```\n0: class User:\n_________^\n1: def __init__(self, name, age):\n2: self.name = name\n3: self.age = age\n```","deprecated":null,"version":null,"openapi":"openapi.json get /symbol/definitions-in-file","href":"/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n pre: \"pre\",\n span: \"span\",\n ..._provideComponents(),\n ...props.components\n }, {CodeBlock} = _components;\n if (!CodeBlock) _missingMdxReference(\"CodeBlock\", true);\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Only the variabels defined at the file level are included.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"The returned positions point to the start of the symbol’s identifier.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"e.g. for \", _jsx(_components.code, {\n children: \"User\"\n }), \" on line 0 of \", _jsx(_components.code, {\n children: \"src/main.py\"\n }), \":\"]\n }), \"\\n\", _jsx(CodeBlock, {\n numberOfLines: \"6\",\n language: \"text\",\n children: _jsx(_components.pre, {\n className: \"shiki shiki-themes github-light-default dark-plus\",\n style: {\n backgroundColor: \"#ffffff\",\n \"--shiki-dark-bg\": \"#0B0C0E\",\n color: \"#1f2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n language: \"text\",\n children: _jsxs(_components.code, {\n language: \"text\",\n numberOfLines: \"6\",\n children: [_jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {\n children: \"0: class User:\"\n })\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {\n children: \"_________^\"\n })\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {\n children: \"1: def __init__(self, name, age):\"\n })\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {\n children: \"2: self.name = name\"\n })\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {\n children: \"3: self.age = age\"\n })\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\",\n children: _jsx(_components.span, {})\n })]\n })\n })\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\nfunction _missingMdxReference(id, component) {\n throw new Error(\"Expected \" + (component ? \"component\" : \"object\") + \" `\" + id + \"` to be defined: you likely forgot to import, pass, or provide it.\");\n}\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get symbols in a specific file (uses ast-grep)","description":"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file.\n\nOnly the variabels defined at the file level are included.\n\nThe returned positions point to the start of the symbol's identifier.\n\ne.g. for `User` on line 0 of `src/main.py`:\n```\n0: class User:\n_________^\n1: def __init__(self, name, age):\n2: self.name = name\n3: self.age = age\n```","deprecated":null,"version":null,"openapi":"openapi.json get /symbol/definitions-in-file","href":"/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["symbol"],"summary":"Get symbols in a specific file (uses ast-grep)","description":"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file.\n\nOnly the variabels defined at the file level are included.\n\nThe returned positions point to the start of the symbol's identifier.\n\ne.g. for `User` on line 0 of `src/main.py`:\n```\n0: class User:\n_________^\n1: def __init__(self, name, age):\n2: self.name = name\n3: self.age = age\n```","operationId":"definitions_in_file","parameters":["cafbc2c0-3d9a-4491-b3d3-6a3d817be10f"],"responses":{"200":"9c6893a1-a73f-4dd8-8c53-58c86d92eb38","400":"09c2c1b5-2e6d-4326-9cf4-09dfd39852a5","500":"8c8a5aca-c49d-4748-a9dd-71b3d29a795e"},"method":"get","type":"path","servers":["89e32637-1c15-409a-9b63-72b5b6da9a60"],"security":["d5181418-c172-4f34-ac26-eb0ac96a7cb4"],"path":"/symbol/definitions-in-file","baseUrlOptions":["http://localhost:4444/v1"],"title":"Get symbols in a specific file (uses ast-grep)","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"cafbc2c0-3d9a-4491-b3d3-6a3d817be10f":{"name":"file_path","in":"query","description":"The path to the file to get the symbols for, relative to the root of the workspace.","required":true,"schema":{"type":"string","isRequired":true,"description":"The path to the file to get the symbols for, relative to the root of the workspace.","uniqueKey":"","typeLabel":"string"}}},"responses":{"9c6893a1-a73f-4dd8-8c53-58c86d92eb38":{"description":"Symbols retrieved successfully","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","required":["name","kind","identifier_position","file_range"],"properties":{"file_range":{"type":"object","description":"The full range of the symbol.","required":["path","range"],"properties":{"path":{"type":"string","description":"The path to the file.","example":"src/main.py","isRequired":true,"uniqueKey":"items.[INDEX].file_range.path","typeLabel":"string"},"range":{"type":"object","required":["start","end"],"properties":{"end":{"type":"object","description":"The end position of the range.","required":["line","character"],"properties":{"character":{"type":"integer","format":"int32","description":"0-indexed character index within the line.","example":5,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.end.character","typeLabel":"integer\u003cint32>"},"line":{"type":"integer","format":"int32","description":"0-indexed line number.","example":10,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.end.line","typeLabel":"integer\u003cint32>"}},"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.end","typeLabel":"object"},"start":{"type":"object","description":"The start position of the range.","required":["line","character"],"properties":{"character":{"type":"integer","format":"int32","description":"0-indexed character index within the line.","example":5,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.start.character","typeLabel":"integer\u003cint32>"},"line":{"type":"integer","format":"int32","description":"0-indexed line number.","example":10,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.start.line","typeLabel":"integer\u003cint32>"}},"isRequired":true,"uniqueKey":"items.[INDEX].file_range.range.start","typeLabel":"object"}},"description":"The range within the file","isRequired":true,"uniqueKey":"items.[INDEX].file_range.range","typeLabel":"object"}},"isRequired":true,"uniqueKey":"items.[INDEX].file_range","typeLabel":"object"},"identifier_position":{"type":"object","description":"The start position of the symbol's identifier.","required":["path","position"],"properties":{"path":{"type":"string","description":"Path to the file, relative to the workspace root","example":"src/main.py","isRequired":true,"uniqueKey":"items.[INDEX].identifier_position.path","typeLabel":"string"},"position":{"type":"object","description":"Position within the file","required":["line","character"],"properties":{"character":{"type":"integer","format":"int32","description":"0-indexed character index within the line.","example":5,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].identifier_position.position.character","typeLabel":"integer\u003cint32>"},"line":{"type":"integer","format":"int32","description":"0-indexed line number.","example":10,"minimum":0,"isRequired":true,"uniqueKey":"items.[INDEX].identifier_position.position.line","typeLabel":"integer\u003cint32>"}},"isRequired":true,"uniqueKey":"items.[INDEX].identifier_position.position","typeLabel":"object"}},"isRequired":true,"uniqueKey":"items.[INDEX].identifier_position","typeLabel":"object"},"kind":{"type":"string","description":"The kind of the symbol (e.g., function, class).","example":"class","isRequired":true,"uniqueKey":"items.[INDEX].kind","typeLabel":"string"},"name":{"type":"string","description":"The name of the symbol.","example":"User","isRequired":true,"uniqueKey":"items.[INDEX].name","typeLabel":"string"}},"uniqueKey":"items.[INDEX]","typeLabel":"object"},"uniqueKey":"","typeLabel":"object[]"},"examples":{"Example":{"title":"Example","value":[{"file_range":{"path":"src/main.py","range":{"end":{"character":5,"line":10},"start":{"character":5,"line":10}}},"identifier_position":{"path":"src/main.py","position":{"character":5,"line":10}},"kind":"class","name":"User"}]}},"exampleType":"generated"}},"exampleType":"generated"},"09c2c1b5-2e6d-4326-9cf4-09dfd39852a5":{"description":"Bad request","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"8c8a5aca-c49d-4748-a9dd-71b3d29a795e":{"description":"Internal server error","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"d5181418-c172-4f34-ac26-eb0ac96a7cb4":{"bearer_auth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","scopes":[]}}},"servers":{"89e32637-1c15-409a-9b63-72b5b6da9a60":{"url":"http://localhost:4444/v1","description":"API server v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearer_auth","name":"Authorization"}],"title":"bearer_auth"}]},"originalFileLocation":"openapi.json"},"subdomain":"agenticlabs-2964319e","siteName":"Lsproxy Docs","title":"Get symbols in a specific file (uses ast-grep) - Lsproxy Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-07T03:49:51.368Z","originalFileLocation":"api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file. Only the variabels defined at the file level are included. The returned positions point to the start of the symbol\u0026#x27;s identifier. e.g. for User on line 0 of src/main.py: 0: class User: _______^ 1: def init__(self, name, age): 2: self.name = name 3: self.age = age\">\u003cmeta data-mint-head name=\"application-name\" content=\"Lsproxy Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get symbols in a specific file (uses ast-grep) - Lsproxy Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file. Only the variabels defined at the file level are included. The returned positions point to the start of the symbol\u0026#x27;s identifier. e.g. for User on line 0 of src/main.py: 0: class User: _______^ 1: def init__(self, name, age): 2: self.name = name 3: self.age = age\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Lsproxy Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://agenticlabs-2964319e.mintlify.app/_mintlify/api/og/v2?division=symbol\u0026amp;title=Get+symbols+in+a+specific+file+%28uses+ast-grep%29\u0026amp;description=Returns+a+list+of+symbols+%28functions%2C+classes%2C+variables%2C+etc.%29+defined+in+the+specified+file.%0A%0AOnly+the+variabels+defined+at+the+file+level+are+included.%0A%0AThe+\u0026amp;theme=697867495ad406c2b538c5e2\u0026amp;signature=523f92b681aaef2c4cd8e531bb15cdce35c88e99789d77b675762e8238d854a4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get symbols in a specific file (uses ast-grep) - Lsproxy Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file. Only the variabels defined at the file level are included. The returned positions point to the start of the symbol\u0026#x27;s identifier. e.g. for User on line 0 of src/main.py: 0: class User: _______^ 1: def init__(self, name, age): 2: self.name = name 3: self.age = age\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://agenticlabs-2964319e.mintlify.app/_mintlify/api/og/v2?division=symbol\u0026amp;title=Get+symbols+in+a+specific+file+%28uses+ast-grep%29\u0026amp;description=Returns+a+list+of+symbols+%28functions%2C+classes%2C+variables%2C+etc.%29+defined+in+the+specified+file.%0A%0AOnly+the+variabels+defined+at+the+file+level+are+included.%0A%0AThe+\u0026amp;theme=697867495ad406c2b538c5e2\u0026amp;signature=523f92b681aaef2c4cd8e531bb15cdce35c88e99789d77b675762e8238d854a4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/agenticlabs-2964319e/KOUEMwyUBLnsf-_2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Lsproxy Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.lsproxy.dev/#organization\",\"name\":\"Lsproxy Docs\",\"url\":\"https://docs.lsproxy.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/agenticlabs-2964319e/iD3j-Tz9pOfvLayG/logo/agentic_logo.png?fit=max\u0026auto=format\u0026n=iD3j-Tz9pOfvLayG\u0026q=85\u0026s=2aa1671e6e2263e42bd436462418914a\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.lsproxy.dev#website\",\"name\":\"Lsproxy Docs\",\"url\":\"https://docs.lsproxy.dev\",\"publisher\":{\"@id\":\"https://docs.lsproxy.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep#webpage\",\"url\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep\",\"name\":\"Get symbols in a specific file (uses ast-grep)\",\"description\":\"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file. Only the variabels defined at the file level are included. The returned positions point to the start of the symbol's identifier. e.g. for User on line 0 of src/main.py: 0: class User: _______^ 1: def init__(self, name, age): 2: self.name = name 3: self.age = age\",\"dateModified\":\"2026-01-07T03:49:51.368Z\",\"isPartOf\":{\"@id\":\"https://docs.lsproxy.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Lsproxy Docs\",\"item\":\"https://docs.lsproxy.dev\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get symbols in a specific file (uses ast-grep)\",\"item\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep#apireference\",\"headline\":\"Get symbols in a specific file (uses ast-grep)\",\"name\":\"Get symbols in a specific file (uses ast-grep)\",\"description\":\"Returns a list of symbols (functions, classes, variables, etc.) defined in the specified file. Only the variabels defined at the file level are included. The returned positions point to the start of the symbol's identifier. e.g. for User on line 0 of src/main.py: 0: class User: _______^ 1: def init__(self, name, age): 2: self.name = name 3: self.age = age\",\"url\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep\",\"mainEntityOfPage\":{\"@id\":\"https://docs.lsproxy.dev/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep#webpage\"},\"dateModified\":\"2026-01-07T03:49:51.368Z\",\"publisher\":{\"@id\":\"https://docs.lsproxy.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.lsproxy.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Lsproxy Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Lsproxy Docs","nav":{"global":null,"tabs":[{"tab":"Get Started","pages":[{"title":"Get Started","href":"/get-started/introduction"}]},{"tab":"API Reference","groups":[{"group":"symbol","pages":[{"title":"Get symbols in a specific file (uses ast-grep)","deprecated":null,"version":null,"openapi":"openapi.json get /symbol/definitions-in-file","href":"/api-reference/symbol/get-symbols-in-a-specific-file-uses-ast-grep"},{"title":"Get the definition of a symbol at a specific position in a file","description":"Returns the location of the definition for the symbol at the given position.\n\nThe input position should point inside the symbol's identifier, e.g.\n\nThe returned position points to the identifier of the symbol, and the file_path from workspace root\n\ne.g. for the definition of `User` on line 5 of `src/main.py` with the code:\n```\n0: class User:\noutput___^\n1: def __init__(self, name, age):\n2: self.name = name\n3: self.age = age\n4:\n5: user = User(\"John\", 30)\ninput_____^^^^\n```","deprecated":null,"version":null,"openapi":"openapi.json post /symbol/find-definition","href":"/api-reference/symbol/get-the-definition-of-a-symbol-at-a-specific-position-in-a-file"},{"title":"Finds occurrences of an identifier by name in a file","deprecated":null,"version":null,"openapi":"openapi.json post /symbol/find-identifier","href":"/api-reference/symbol/finds-occurrences-of-an-identifier-by-name-in-a-file"},{"title":"Find all symbols that are referenced from a given symbol's definition","deprecated":null,"version":null,"openapi":"openapi.json post /symbol/find-referenced-symbols","href":"/api-reference/symbol/find-all-symbols-that-are-referenced-from-a-given-symbols-definition"},{"title":"Find all references to a symbol","deprecated":null,"version":null,"openapi":"openapi.json post /symbol/find-references","href":"/api-reference/symbol/find-all-references-to-a-symbol"}]},{"group":"system","pages":[{"title":"Get health status of the LSP proxy service","deprecated":null,"version":null,"openapi":"openapi.json get /system/health","href":"/api-reference/system/get-health-status-of-the-lsp-proxy-service"}]},{"group":"workspace","pages":[{"title":"Get a list of all files in the workspace","deprecated":null,"version":null,"openapi":"openapi.json get /workspace/list-files","href":"/api-reference/workspace/get-a-list-of-all-files-in-the-workspace"},{"title":"Read source code from a file in the workspace","deprecated":null,"version":null,"openapi":"openapi.json post /workspace/read-source-code","href":"/api-reference/workspace/read-source-code-from-a-file-in-the-workspace"}]}]}]},"basePath":"","title":"Get symbols in a specific file (uses ast-grep) - Lsproxy Docs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}