diff options
| author | ThePrimeagen <the.primeagen@gmail.com> | 2026-02-08 20:07:12 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-08 20:07:12 -0800 |
| commit | 33bad88948f9a27ad10c7860e87f9b3bb199154b (patch) | |
| tree | ca8b76d13b5671f79c5a1f5107f6b9f67569a8cb /README.md | |
| parent | 93af8f12a695b0665e03b1b9c48ea0048615c472 (diff) | |
| parent | 549c063632ce5b88a81f82c07f4276542ddbbc8d (diff) | |
| download | a4-33bad88948f9a27ad10c7860e87f9b3bb199154b.tar.xz a4-33bad88948f9a27ad10c7860e87f9b3bb199154b.zip | |
Merge pull request #106 from codegirl-007/back-that-hash-up
Add ability to reference files in prompt buffer
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 40 |
1 files changed, 34 insertions, 6 deletions
@@ -24,7 +24,7 @@ is for people who dont have "skill issues." This is meant to streamline the req 3. Still very alpha, could have severe problems ## How to use -**you must have opencode installed and setup** +**you must have a supported AI CLI installed (opencode, claude, or cursor-agent — see [Providers](#providers) below)** Add the following configuration to your neovim config @@ -41,15 +41,15 @@ I make the assumption you are using Lazy local cwd = vim.uv.cwd() local basename = vim.fs.basename(cwd) _99.setup({ + -- provider = _99.ClaudeCodeProvider, -- default: OpenCodeProvider logger = { level = _99.DEBUG, path = "/tmp/" .. basename .. ".99.debug", print_on_error = true, }, - --- A new feature that is centered around tags + --- Completions: #rules and @files in the prompt buffer completion = { - --- Defaults to .cursor/rules -- I am going to disable these until i understand the -- problem better. Inside of cursor rules there is also -- application rules, which means i need to apply these @@ -72,6 +72,14 @@ I make the assumption you are using Lazy "scratch/custom_rules/", }, + --- Configure @file completion (all fields optional, sensible defaults) + files = { + -- enabled = true, + -- max_file_size = 102400, -- bytes, skip files larger than this + -- max_files = 5000, -- cap on total discovered files + -- exclude = { ".env", ".env.*", "node_modules", ".git", ... }, + }, + --- What autocomplete do you use. We currently only --- support cmp right now source = "cmp", @@ -110,10 +118,30 @@ I make the assumption you are using Lazy }, ``` -## Completion -When prompting, if you have cmp installed as your autocomplete you can use an autocomplete for rule inclusion in your prompt. +## Completions +When prompting, you can reference rules and files to add context to your request. + +- `#` references rules — type `#` in the prompt to autocomplete rule files from your configured rule directories +- `@` references files — type `@` to fuzzy-search project files + +Referenced content is automatically resolved and injected into the AI context. Requires cmp (`source = "cmp"` in your completion config). -How skill completion and inclusion works is that you start by typing `@`. +## Providers +99 supports multiple AI CLI backends. Set `provider` in your setup to switch. If you don't set `model`, the provider's default is used. + +| Provider | CLI tool | Default model | +|---|---|---| +| `OpenCodeProvider` (default) | `opencode` | `opencode/claude-sonnet-4-5` | +| `ClaudeCodeProvider` | `claude` | `claude-sonnet-4-5` | +| `CursorAgentProvider` | `cursor-agent` | `sonnet-4.5` | + +```lua +_99.setup({ + provider = _99.ClaudeCodeProvider, + -- model is optional, overrides the provider's default + model = "claude-sonnet-4-5", +}) +``` ## API You can see the full api at [99 API](./lua/99/init.lua) |
