### Required

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L3-L3)
Do not import Node.js builtin module "fs"

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L3-L3)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L4-L4)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L5-L5)
A `require()` style import is forbidden.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L4-L4)
Do not import Node.js builtin module "path"

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L5-L5)
Do not import Node.js builtin module "child_process"

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L33-L33)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L38-L38)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L53-L53)[\[4\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L66-L66)[\[5\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L68-L68)[\[6\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L81-L81)[\[7\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/commands/title-generator.ts#L81-L81)[\[8\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L165-L165)
Unexpected console statement. Only these console methods are allowed: warn, error, debug.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L57-L57)
Obsidian's configuration folder is not necessarily `.obsidian`, it can be configured by the user.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/ollama.ts#L9-L9)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/ollama.ts#L24-L24)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/ollama.ts#L46-L46)
Unexpected use of 'fetch'. Use the built-in `requestUrl` function instead of `fetch` for network requests in Obsidian.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/ollama.ts#L37-L37)
Unexpected any. Specify a different type.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/openai.ts#L17-L17)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/commands/title-generator.ts#L13-L13)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/commands/title-generator.ts#L18-L18)[\[4\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L19-L19)[\[5\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L31-L31)[\[6\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L35-L35)[\[7\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L46-L46)[\[8\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L47-L47)[\[9\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L49-L49)[\[10\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L61-L61)[\[11\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L74-L74)[\[12\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L117-L117)[\[13\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L118-L118)[\[14\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L134-L134)
Use sentence case for UI text.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L29-L29)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L55-L55)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L66-L66)[\[4\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L112-L112)[\[5\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L151-L151)[\[6\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/main.ts#L191-L191)[\[7\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L26-L26)[\[8\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L70-L70)
Promises must be awaited, end with a call to .catch, end with a call to .then with a rejection handler or be explicitly marked as ignored with the `void` operator.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L19-L19)[\[2\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L126-L126)[\[3\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/ui/settings-tab.ts#L134-L134)
Use `new Setting(containerEl).setName(...).setHeading()` instead of creating HTML heading elements directly.



---

### Optional

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/build.js#L39-L39)
'error' is defined but never used.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/api/ollama.ts#L2-L2)
'OllamaModel' is defined but never used.

[\[1\]](https://github.com/dpshade/auto-title/blob/bf186af7165c4cadb96f44bd547741331f3bda3c/src/commands/title-generator.ts#L27-L27)
'readError' is defined but never used.

