To use 99 in Neovim, add it to your plugin manager and call require("99").setup() with an options object.
Key configuration options include:
logger: Configure logging level and path. Use _99.DEBUG for debugging.tmp_dir: Set the temporary directory (e.g., ./tmp). Note that if this is outside your current working directory, tools like claude code or opencode may have permission issues.completion: Configure autocomplete settings, including source ("native", "cmp", or "blink"), custom_rules (a list of directories containing SKILL.md files), and files discovery settings.md_files: A list of markdown files (e.g., "AGENT.md") to automatically add to the prompt based on the project root.provider: Specify the AI provider (defaults to OpenCodeProvider).
{
"ThePrimeagen/99",
config = function()
local _99 = require("99")
local cwd = vim.uv.cwd()
local basename = vim.fs.basename(cwd)
_99.setup({
logger = {
level = _99.DEBUG,
path = "/tmp/" .. basename .. ".99.debug",
print_on_error = true,
},
tmp_dir = "./tmp",
completion = {
custom_rules = {
"scratch/custom_rules/",
},
source = "native",
},
md_files = {
"AGENT.md",
},
})
end
},