In your editor
Inside a Strapi project — zero config, no type generation.
Autocomplete
Section titled “Autocomplete”Inside a magic string, suggests the real values for the context at your cursor: UIDs, services, controllers, policies, middlewares, components, and a content-type’s route actions.
Diagnostics
Section titled “Diagnostics”Underlines references that don’t exist (with quick fixes that suggest the closest
match), and flags Strapi v4 patterns (entityService, data.attributes) used
in a v5 project.
Go to definition
Section titled “Go to definition”Ctrl/Cmd-click a string to jump to the right target: a UID → its schema.json, a
service/controller/policy/middleware → its file, a route handler → the
controller method, a component → its JSON, a plugin('a').service('b') chain
→ the plugin’s service.
Find references & CodeLens
Section titled “Find references & CodeLens”A “N references” lens on every definition, including per-method usages
(strapi.service('x').find() calls and route handlers) the TypeScript server
can’t see, because strapi.service(...) is typed any. A second
“N incoming relations” lens on schema.json.
Rename — Pro
Section titled “Rename — Pro”Renaming an entity or a method propagates to every call-site and route
handler, renames the underlying file/folder, and updates relation targets — no
grep-and-pray. See Pro.
Describes what a string resolves to, with the signature for service methods and usage insights (incoming relations, route handlers, data usages).