Configuration
The .inkdex/config.toml file: languages, ignores, limits, library mode.
This page is about the index's configuration. inkdex-vuln's own file, .inkdex-vuln.toml (the CI threshold, excluded paths, ignored findings), is described in Ignoring findings.
inkdex init creates .inkdex/config.toml in the repository. Its defaults suit most projects:
langs = ["python", "typescript", "javascript", "rust", "go", "elixir", "java"]
ignores = []
default_ignores = ["node_modules/", "__pycache__/", "dist/", "build/", "vendor/"]
use_gitignore = true
follow_symlinks = false
max_file_size = 5242880
jobs = 0
[resolve]
declared_return_types = true
unique_name_fallback = false
[sec]
library = false| Key | Meaning |
|---|---|
langs | Languages to parse. Other files are listed but not parsed. inkdex init --langs py,ts sets it. |
ignores | Extra patterns to skip, in .gitignore syntax. |
default_ignores | Directories skipped by default. .git/ and .inkdex/ are always skipped. |
use_gitignore | Honour .gitignore files. Files tracked by git are indexed even when a .gitignore lists them. A .inkdexignore file always applies. |
follow_symlinks | Follow symbolic links instead of skipping them. |
max_file_size | Files larger than this (in bytes) are skipped. inkdex index --max-file-size 10M overrides it once. |
jobs | Threads used to read files; 0 uses every core. inkdex index --jobs N overrides it once. |
resolve.declared_return_types | Type a call's result by the function's declared return type (-> Foo). Turning it off resolves fewer calls. |
resolve.unique_name_fallback | Resolve a call nothing else resolves to the only function of that name in the repository. More calls resolved, some wrongly. |
sec.library | The repository is a library: the arguments of its exported functions are input. Same as scan --library. |
Ignoring files
Put patterns in .inkdexignore at the repository root (same syntax as .gitignore) to skip files for inkdex only:
docs/
**/*.min.js
legacy/Where things are
| Path | What |
|---|---|
.inkdex/ (in the repository) | The index: a SQLite database, the compressed contents it read, config.toml. Safe to delete: inkdex init then inkdex index rebuild it (init writes a default config.toml again). |
~/.config/inkdex/license.json | Your license key and license, readable by you only. INKDEX_HOME moves it. |