Repository navigation
Quick Help
Alexander Liberov edited this page Oct 16, 2026
·
2 revisions
One line per feature, grouped as on Features, with the short help and the words people search for. Every line links the feature's own page; this page is generated from the feature registry and never edited by hand.
- Auto-Document Whole Project -- Writes DocInsight documentation into every public declaration a project owns. More
- migrate-dbs -- Moves project index databases into each project's own D-RAG folder, matching the current index layout. More
- pp-profile -- Diagnostic that prints the resolved preprocessor define profile for a project, one symbol per line. More
- purge-locals -- A size escape hatch for an index database that has grown too large: it drops local-variable and parameter symbols and runs VACUUM to reclaim space. More
- Rebuild Index for This Project -- Walks a project's .dproj compile closure and (re)builds its index. More
- register-project -- Add a new project to the manifest so index --all and the IDE can see it. More
- schema -- Prints the live schema of an index database: schemaversion, every table and column, and row counts. More
- Show Resolved DBs (debug) -- Prints which database(s) drag-lint would actually use for a given project, file, or platform, without running a real query. More
- call-path -- Finds the shortest resolved call path from one symbol to another. More
- Class Surface -- Shows the public surface of a class: its members and signatures, without the method bodies. More
- Compiler Hints -- Uses query hints to surface compiler hint/warning findings that have been imported into the index, filtered by code or severity. More
- context -- Returns a compact context bundle for a symbol -- its doc comment, class surface (signatures), the target's own body, and a capped list of callers. More
- Find Undocumented (public) -- Uses query find to list indexed symbols filtered by documentation state, kind, or visibility. More
- Find Usages -- Lists every reference to the symbol under the editor caret across the indexed project. More
- Find Usages -- Lists references to the symbol represented by a Structure-tree node. More
- find-callees -- Lists the resolved outgoing calls of one routine. More
- find-unit -- Finds which indexed unit declares a symbol, and adds that unit to a file's uses clause. More
- Go to Declaration -- Jumps the editor caret to the declaration of the symbol represented by a Structure-tree node. More
- Go to Definition -- Jumps the editor caret to the declaration of the symbol under the cursor. More
- Go to Implementation -- Jumps the editor caret to the implementation of the symbol represented by a Structure-tree node. More
- helpers-of -- Lists record/class helper edges targeting a given type, anywhere in the index. More
- Hover at Cursor -- Shows a hover card for the symbol under the editor caret: signature, documentation, and callers. More
- outline -- Prints the file-scoped symbol outline for one Pascal unit. More
- query --kind --all -- Lists every symbol of one kind -- every unit, every class, every enum -- with no name, no doc clause and no row cap. More
- query --name-like -- Case-insensitive substring search over symbol names. More
- query ancestors -- Resolves the transitive class/interface hierarchy of a type. More
- query descendants -- The reverse of query ancestors: lists every class that descends from a given ancestor, across all scanned databases. More
- query find-callers -- Lists callers of a routine by name, with an option to restrict results to precise, resolved callers. More
- query type-usage -- Answers one question, of a list of type names, about one file. More
- query typecat -- Resolves a type's category -- float, string, class, interface, and so on. More
- query unit-usage -- Answers one question, about one unit and one file. More
- Show Completion -- Shows an index-backed completion list at the editor caret. More
- Show Signature Help -- Shows parameter help for the call being typed at the editor caret. More
- Show Structure -- Shows a structural outline of the current unit. More
- Symbol Search -- Searches symbols by name across the indexed projects. More
- Symbol Slice -- Shows the slice of code relevant to one symbol: its declaration, body, and immediate context. More
- Type at Cursor -- Resolves the static type of the expression under the editor caret. More
- usages -- Finds usage sites of a named symbol, with a choice of report width. More
- wiki -- Looks up the dl:wiki concept topics a team has written into their own doc comments, and routes a human phrase to the code that implements it. More
- Copy All Diagnostics -- Puts every lint finding for the current unit onto the clipboard, starting from the Structure form. More
- Copy Diagnostics (Current File) -- Puts the current file's lint findings onto the clipboard. More
- Copy Selected Diagnostics -- Copies only the Diagnostics rows selected in the Structure form (Ctrl/Shift-click, Ctrl+C) to the clipboard. Select one or several Diagnostics rows in the Structure form and choose Copy or press Ctrl+C. The rows are copied in panel order, one finding per line. Selecting the Diagnostics root copies everything, like Copy All Diagnostics. More
- drag-lint: Project Rules -- Shows the catalog of lint rules in the context of a specific project. More
- exceptions-sync -- Declare one exception class per distinct raise Exception.Create message, then rewrite the raise sites. More
- Fix all in project -- Applies autofixes for every fixable finding across the whole project, starting from the Structure form. More
- Fix all in unit -- Applies autofixes for every fixable finding in the current unit, starting from the Structure form. More
- Fix all reliability (1.31.3) -- Fix all no longer drops every rename for library-root members, shows a wait cursor and refuses a second fix, and keeps E-prefixed exception classes. Autofix fixes: owner freshness ignores library-root members, IDE busy guard, exception ancestor prefix More
- Fix it -- Applies the fix for the single lint finding on a Structure-tree node; an unused unit is removed or moved to implementation by compiling. More
- Format Whole Project with YADF -- Runs YADF formatting across a project's files, with indexing involved as part of the same action. More
- Format with YADF -- Reformats one Pascal unit by driving the external YADF formatter. More
- Lint Buffer (Unsaved) -- Lints the current editor buffer's in-memory content, including unsaved edits, without writing it to disk first. More
- Lint rules -- 190 rules, 23 fixable. Every lint rule the engine ships, imported from rules --json. More
- lint-project -- Runs project-scoped structural lint rules against an index -- checks such as god-class, unused-public-symbol. More
- lint-tree -- Answers one question lint-all cannot: does an interface edit to this unit reach any dependent?. More
- Rename across every project that compiles a shared unit -- A naming fix on a unit several project indexes own renames it in every owner or in none, after an IDE confirmation listing the projects. Use it when a naming finding (const-casing, type-name-prefix, ...) sits in a unit that more than one project compiles: the rename is checked and applied in every indexed project, or refused with the reason. More
- Rescan this unit -- Re-indexes the active project and re-lints the current unit on demand, so the Diagnostics panel drops findings already fixed. Use it when the Diagnostics panel still shows a finding you have already fixed. Rules such as unused-unit-in-uses read the project index, and a save is not an edit, so this reindexes the project incrementally and re-lints the unit when that lands. Runs in the background; the status strip shows it. More
- Run AST Checks -- Runs drag-lint's AST-level checks against a file. More
- Run Diagnostics (didSave) -- Runs drag-lint's diagnostics pass on a file automatically when it is saved, mirroring the LSP textDocument/didSave notification. More
- Run Lint All (Full Report) -- Runs the whole rule catalog against a project's indexed code and reports every surviving finding -- the overall project health check. More
- dl:wiki concept blocks -- The format of a dl:wiki block -- the concept notes the wiki verb reads. More
- Doc Comment Stub (symbol) -- Uses generate-docs to produce a doc-comment stub for one qualified symbol. More
- doc-drift -- Diagnostic that computes deterministic doc-vs-code drift findings for one symbol. More
- doc-forget -- Reap or rename the project tags on inbound documentation facts; a dry run unless told to apply. More
- Document it -- Generates or repairs a managed DocInsight comment on the single symbol represented by a Structure-tree node. More
- Document project -- Generates or repairs managed DocInsight comments for every public declaration the project owns, starting from a Structure-tree node's project. More
- Document unit -- Generates or repairs managed DocInsight comments for every public declaration in the unit represented by a Structure-tree node (facts-only). More
- document-all -- Documents every public declaration in every indexed unit, with no project scope. More
- Effect Summary Legend -- The purity analysis writes a short token string for every routine it judges -- symbolfacts.effectsummary in the index. More
- shared-unit -- Reads or extends the dl:shared marker on a unit, recording which projects share it. More
- Allow this message -- Records a dl:ok review of one finding, so it stops being reported without being fixed. More
- allow -- Records a dl:ok review of one finding, so it stops being reported without being fixed. More
- Create helper class -- Generates a Byte-family record helper for an enum type represented by a Structure-tree node. More
- create-enum-helper -- Generates a Byte-family record helper (ToByte/FromByte/ToInteger/ FromInteger/ToString/FromString) for an enum type. More
- extract-method -- Pulls a run of statements out of a routine into a new method. More
- Quick-Fix: Add Unit for Inline Hint (H2443) at Cursor -- The same idea as the undeclared-identifier quick-fix, but for compiler hint H2443 -- an inline routine whose declaring unit is not in scope. More
- Quick-Fix: Add Unit for Undeclared at Cursor (Ctrl+Alt+U) -- Finds which unit declares the identifier under the caret and adds that unit to the current unit's uses clause. More
- Quick-Fix: Convert Public Field to Property at Cursor -- Rewrites a public field under the caret as a property. More
- Reconcile Project Members (.dpr/.dproj) -- Compares a project file's declared member list against what is on disk and in the compile closure. More
- Rename Symbol -- Renames a symbol across the whole indexed project. More
- safe-delete -- Deletes a symbol if and only if it has zero references in the index. More
- Unit Test Stub (symbol) -- Uses generate-test to produce a unit-test skeleton for one qualified symbol. More
- Uses & Deps Tab -- Open the Uses & Deps tab to review uses-clause fixes and apply them. More
- Uses Audit -- interface->impl moves + unused (this unit) -- For one unit, reports which uses entries could move from the interface section to implementation, and which are unused entirely. More
- Uses Cleanup Preview (compiler-verified, this unit) -- The removals a Uses Audit suggests, but verified by actually compiling. More
- Convert progress -- ConvRulesEditor Convert tab: per-step progress (unit, book, phase, elapsed) on the status bar and the tab. See where a long Convert run is and how long each unit takes. More
- convert-apply -- Locates .dfm component instances that match a #convert rule from a conversion-rules file and rewrites all five surfaces: declaration retype, uses-add. More
- convert-reemit (internal) -- The DFM re-emit stage of the conversion pipeline, driven by convert-apply and by test runners. More
- convert-scaffold -- Auto-generates a valid conversion-rules file from the real property trees of a from-type and a to-type. More
- convert-validate -- Parses and validates a conversion-rules file (a reFind-superset DSL), checking its #link/#default paths against the real property trees. More
- ConvRulesEditor -- Visual rulebook editor for the conversion rules; its Convert tab reports StripDB value casts, cast sites to convert by hand and uses changes (engine 1.27). More
- glyph-vacuum -- Measure every streamed glyph or picture under a tree before writing a glyph rule. More
- proptree -- Recursive deep-property enumerator for a class: flattens its own and inherited properties into dotted paths, recursing into class-typed properties. More
- Reindex project -- ConvRulesEditor command: incremental index --project of the editor's project index, cancellable. Refresh the project index after IDE edits or between conversion stages. More
- Work list -- ConvRulesEditor tab: what the last Convert run's converted code still uses from the old components (engine pas_uses). Get the manual to-do list of a conversion: unmapped members, dangling globals, refused casts. More
- butterfly -- Composes a symbol's callers (upward wing) and callees (downward wing) into one combined chart in a single command. More
- Call Graph (Butterfly) -- Shows callers and callees of one symbol together in a single "butterfly" view. More
- callgraph -- Prints an N-deep resolved call tree for a symbol, in either direction. More
- Circular Dependency Report (worked example) -- A worked example: a real four-unit uses cycle, and the report drag-lint produces for it. More
- Circular Uses Report (cycles + fix plan) -- Finds uses cycles among indexed units and, on request, proposes a followable refactoring plan to break them. More
- deps-report -- Produces a third-party dependency rollup from an index: which external units/libraries an indexed codebase depends on. More
- Export Enums (Delphi const) -- Uses export enums with --format delphi-const to dump indexed enum types as Delphi const declarations. More
- Export Graph (DOT) -- Uses graph to export the indexed call/reference graph in DOT format, either whole or rooted at a name substring. More
- Export to Obsidian -- Uses export obsidian to write the indexed project out as a set of Obsidian vault markdown pages. More
- Find Dead Code -- Scans the index for code with no references -- candidates to delete. More
- Forms for testers (CSV) -- A CSV of a project's forms, one row per form, telling a tester how to reach each one from the main form. Hand a tester one spreadsheet that says how to reach every form: drag-lint > Reports > Forms for testers (CSV)... or drag-lint forms-csv --project --db . Each row gives the menu, ribbon or tab path, the control, the handler, the modal flag and the preconditions per hop; popup forms the index cannot trace go under popupForms in drag-lint-project.json. Needs the project index. More
- Impact / Blast Radius (symbol) -- Reports what would be affected if a chosen symbol changes -- the set of code to retest. More
- Reverse Call Tree (clickable, Messages window) -- The same reverse call tree, rendered into the IDE's Messages window so each line navigates to the caller. More
- Reverse Call Tree (who calls this, N-deep) -- Builds the tree of callers of a chosen symbol, transitively, to a chosen depth. More
- Scan TODOs / FIXMEs -- Scans source for TODO/FIXME/HACK/XXX/REVIEW/NOTE markers. More
- Show in Call Graph -- Opens the call graph rooted at the symbol represented by a Structure-tree node. More
- Show Wiring (Spring4D DI + DFM events) -- Surfaces bindings the compiler does not make obvious: Spring4D container registrations and DFM event hookups for a type. More
- Top Symbols (fan-in) -- Ranks indexed symbols by fan-in -- how many places reference them. More
- Uses Report (CSV) -- Exports the project's unit-dependency data as a CSV file. More
- ask -- Ask one report question and print the answer as text. Read this when you want a report answer on stdout -- drag-lint ask --target --project <P.dproj> prints the DocInsight block the Reports menu copies (or the plain answer with --plain), with Ask-Report's exit codes. Ported questions answer in-process; the rest run charts\src\Ask-Report.ps1, so they need PowerShell 7. More
- Chart questions -- 26 questions. Every chart question of the Reports submenu and Ask-Report.ps1, imported from REPORT_QUESTIONS. More
- Charts and the IDE -- Ask a chart question, open the answer, read a round-trip trace, jump to RAD Studio. Read this when you first ask a chart question: how to ask one from drag-lint > Reports or a script, where the answer lands, how to read a round-trip trace, and the one-time draglint:// registration that makes a chart row open its line in RAD Studio. Needs a repository clone and PowerShell 7. More
- Compare a report with current code -- Reruns a saved or pasted report and shows before / delta / after. Read this when a DocInsight report, a tester sheet or a chart may have gone stale: compare reruns its COMMAND against the current index and diffs the normalised text, a forms CSV by row, or a chart by nodes and edges. More
- Where the charts find the engine and Graphviz -- Every chart script finds drag-lint.exe and dot.exe by -Engine/-Dot, env, settings.json, the installed layout, then the shared defaults. Point the charts at a different engine or Graphviz without editing a script: pass -Engine / -Dot, set DRAGLINT_ENGINE / DRAGLINT_DOT, or put engine / dot keys in %APPDATA%\drag-lint\settings.json. A path you set that does not exist is an error naming where it was set; nothing set means the installed layout, then the shared defaults. More aliases: DRAGLINT_DOT, DRAGLINT_ENGINE, settings.json
- Add Missing Units to uses (whole unit) -- The whole-unit form of the undeclared-identifier quick-fix: resolves every unresolved name in a unit at once and adds the units that declare them. More
- Compile & Diagnose -- Compiles a project or unit and folds the compiler's errors and warnings into drag-lint findings. More
- Compile Buffer (unsaved) -- Compiles a project with the current editor buffer's unsaved content substituted for its file on disk, then restores the original file unchanged. More
- Compile Dependents -- Check the units that depend on the one being edited now, instead of waiting for the automatic quiet-period pass (lint-tree tier 3). More
- compile-check -- Runs a compiler-backed check against a single Delphi project (.dproj) or source file (.pas) and reports the result. More
- Full Compile Sweep -- Recompiles a project's stale units and refreshes its stored compiler findings, forcing a full build rather than the default stale-count threshold. More
- ghost-check -- Compiles a project with one or more units' content temporarily replaced by their unsaved editor buffers, then restores the original files unchanged. More
- ghost-recover -- Scans a project's hidden D-RAG folder for recovery journals left behind when a ghost-check overlay was interrupted by a crash. More
- Import Build Log -- Parses an external dcc or msbuild build log and folds its errors and warnings into drag-lint's stored findings. More
- preprocess-file -- Diagnostic that prints a file's {$IFDEF}-resolved source to stdout under a given define set. More
- project-facts -- Report what the build does: defines that are on and what sets each, imports, output paths and packages. More
- Recover Buffer-Compile Files -- Restores any file left holding unsaved-buffer content after a Compile Buffer (unsaved) run was interrupted (for example by a crash). More
- fb-snapshot -- Connects to a Firebird database and captures a snapshot into a sqlite index. More
- link-orm -- Links a project's code index to a SQL index so ORM-style relationships between Delphi symbols and SQL objects can be resolved across both. More
- drag-lint Graph (dockable) -- Opens the drag-lint graph viewer as a dockable window inside the IDE, so it can sit beside Structure. More
- drag-lint Graph -- This page documents the "View > Tool Windows > drag-lint Graph" menu entry -- the drag-lint graph viewer. More
- drag-lint Options -- The plugin's settings dialog for drag-lint: lets you browse and toggle the lint rule catalog. More
- drag-lint Panel (dockable) -- Opens the main drag-lint dockable tool window inside the IDE. More
- drag-lint -- This page documents the "View > Tool Windows > drag-lint" menu entry -- the main drag-lint dockable tool window. More
- IDE Menu Reference -- What every item in the drag-lint menu does. More
- ide-release -- Asks a running drag-lint Delphi IDE plugin not to respawn its drag-lint.exe child processes for a while -- and to drop the running one on its next request. More
- Installation -- Getting the CLI, the IDE plugin, or the LSP running. More
- lsp -- Starts the LSP (Language Server Protocol) stdio server. More
- Register the MCP server (Claude Code, VS Code) -- Adds drag-lint serve to Claude Code and VS Code MCP config: merged, backed up, idempotent, removable. Run Set-DragLintMcpConfig.ps1 -All (try -DryRun first) once after installing, so Claude Code and VS Code can start drag-lint's MCP server. Pass -DbPath to pin one index per entry (-Name); -Remove takes only its own entry out again. Needs PowerShell 7 and the engine found by the charts' lookup. More aliases: claude mcp add, mcp setup, mcp.json
- serve -- Starts the MCP (Model Context Protocol) stdio server, for AI clients such as Claude or Cursor to query a drag-lint index. More
- Setup installer (experimental) -- One Inno Setup installer for the engine, chart scripts, Graphviz dot, the IDE plugin, ConvRulesEditor, drag-lint-graph and YADF. drag-lint-setup-.exe installs the whole tool set per user or for all users, registers the IDE plugins only where RAD Studio 13 is installed, and uninstalls only what it wrote. More
- workspace add -- Registers a project file into a .drag-lint-workspace.json workspace config, so multi-project workspace commands know about it. More
- workspace index -- Indexes every project registered in a .drag-lint-workspace.json workspace config in one pass. More
- workspace status -- Reports the status of every project registered in a .drag-lint-workspace.json workspace config. More
- About and Status -- The plugin's status window -- versions, connection health, and which indexes are actually in use. More
- ambiguous-calls -- Resolver-coverage diagnostic that reports call sites the engine could not pin to exactly one target -- unresolved or ambiguous calls. More
- bench-context -- Benchmarks the context command by building context bundles for a sample of symbols against a database. More
- contrast-selftest (internal) -- Self-test for the hover contrast computation, driven by a test runner. More
- diff -- Compares two index databases and reports what changed between them -- for example an index snapshot taken before and after a refactor. More
- doc-facts-selftest (internal) -- Self-test for the doc-facts renderer, driven by test runners. More
- dump-call-edges -- Diagnostic that dumps every resolved call edge in the index as refid|targetqname|confidence rows. More
- dump-pp-eval (internal) -- Diagnostic dump of preprocessor expression evaluation, paired with dump-pp-lex. More
- dump-pp-lex (internal) -- Diagnostic dump of the preprocessor lexer; the documented preprocessor verbs are preprocess-file and pp-profile. More
- dump-refs -- Diagnostic that dumps every ref in a file together with its enclosingsymbolid attribution. More
- Feature registry -- The machine-checked master list of every feature, and the generator of the index pages. Register a feature with tools\feature-registry.ps1 add, regenerate the pages with tools\build-feature-pages.ps1, and let the battery guard name what is missing. Needs PowerShell 7.3 and a repository clone. More aliases: blast radius, feature list, quick help, registry
- info -- Prints engine self-info: version, build date, license (MIT), tree-sitter details, and capabilities. More
- Library Drift Check -- Flags registered library roots that have source on disk but nothing in the index. More
- Maintenance -- Indexes, the manifest, reindexing, and what to do when something looks wrong. More
- Open Plugin Log -- Opens the drag-lint plugin's own log file. More
- resolve-uses (internal) -- The diagnostic behind check-unit --resolve-uses; not a verb of its own. More
- selftest (internal) -- Umbrella self-test dispatcher (manifest-merge, glob, closure, dbselect, drift) used by the test battery, not a user verb. More
- shutdown -- Ask running lsp engines to close their indexes and stand down, so an index can be rebuilt without killing them. More
- sql -- Runs one read-only SQL statement against an index database and prints the result set. More
- test-store-freshness (internal) -- Store-freshness probe used by a test runner; it needs --db and does nothing else. More
The guard verifies CLI verbs, menu captions, MCP tools, scripts and pages. The surfaces below are declared by their entries and exercised only by the periodic review; a green battery does not prove them.
- Allow this message: host 'Structure form' (the caption is verified, the host is declared)
- Charts and the IDE: procedure docs\wiki\Charts-and-the-IDE.md
- Circular Dependency Report (worked example): procedure docs\wiki\Circular-Dependency-Report.md
- ConvRulesEditor: menu 'Convert tab (--convert-request ; the IDE plugin probes --write-capabilities )' inside ConvRulesEditor.exe
- Convert progress: menu 'Convert tab progress line' inside ConvRulesEditor.exe
- Copy All Diagnostics: host 'Structure form' (the caption is verified, the host is declared)
- Copy Selected Diagnostics: host 'Structure form' (the caption is verified, the host is declared)
- Create helper class: host 'Structure form' (the caption is verified, the host is declared)
- Document it: host 'Structure form' (the caption is verified, the host is declared)
- Document project: host 'Structure form' (the caption is verified, the host is declared)
- Document unit: host 'Structure form' (the caption is verified, the host is declared)
- Effect Summary Legend: procedure docs\wiki\Effect-Summary-Legend.md
- Feature registry: procedure docs\wiki\Feature-Registry.md
- Find Usages: host 'Structure form' (the caption is verified, the host is declared)
- Fix all in project: host 'Structure form' (the caption is verified, the host is declared)
- Fix all in unit: host 'Structure form' (the caption is verified, the host is declared)
- Fix all reliability (1.31.3): host 'Structure form' (the caption is verified, the host is declared)
- Fix it: host 'Structure form' (the caption is verified, the host is declared)
- Go to Declaration: host 'Structure form' (the caption is verified, the host is declared)
- Go to Implementation: host 'Structure form' (the caption is verified, the host is declared)
- IDE Menu Reference: procedure docs\wiki\IDE-Menu-Reference.md
- Installation: procedure docs\wiki\Installation.md
- Maintenance: procedure docs\wiki\Maintenance.md
- Reindex project: menu 'Conversion > Reindex project' inside ConvRulesEditor.exe
- Rename across every project that compiles a shared unit: host 'Structure form' (the caption is verified, the host is declared)
- Rescan this unit: host 'Structure form' (the caption is verified, the host is declared)
- Setup installer: procedure docs\wiki\Setup-Installer.md
- Show in Call Graph: host 'Structure form' (the caption is verified, the host is declared)
- Where the charts find the engine and Graphviz: procedure charts\README.md
- Work list: menu 'View > Work list' inside ConvRulesEditor.exe
- dl:wiki concept blocks: procedure docs\wiki\Wiki-Blocks-Authoring.md
- drag-lint: Project Rules: host 'Project Manager' (the caption is verified, the host is declared)
Generated by tools\build-feature-pages.ps1 from features\; do not edit by hand.