proagents 1.6.20 → 1.6.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/.proagents/custom-commands.yaml +0 -1
  2. package/.proagents/docs/command-details.md +1 -2
  3. package/.proagents/getting-started/ai-training-setup.md +0 -1
  4. package/.proagents/performance/README.md +59 -0
  5. package/.proagents/performance/bundle-analysis.md +375 -0
  6. package/.proagents/performance/load-testing.md +563 -0
  7. package/.proagents/performance/runtime-metrics.md +489 -0
  8. package/.proagents/performance/web-vitals.md +425 -0
  9. package/.proagents/proagents.config.yaml +0 -1
  10. package/.proagents/workflow-modes/entry-modes.md +1 -6
  11. package/lib/commands/init.js +57 -8
  12. package/package.json +1 -1
  13. package/.proagents/api-versioning/README.md +0 -257
  14. package/.proagents/api-versioning/changelog-template.md +0 -225
  15. package/.proagents/api-versioning/deprecation-workflow.md +0 -470
  16. package/.proagents/api-versioning/versioning-strategy.md +0 -291
  17. package/.proagents/automation/README.md +0 -38
  18. package/.proagents/automation/ai-behavior-rules.md +0 -339
  19. package/.proagents/automation/ai-prompt-injection.md +0 -331
  20. package/.proagents/automation/auto-decisions.md +0 -535
  21. package/.proagents/automation/decision-defaults.yaml +0 -317
  22. package/.proagents/cache/README.md +0 -110
  23. package/.proagents/cache/analysis-metadata.json +0 -76
  24. package/.proagents/cache/conventions.json +0 -125
  25. package/.proagents/cache/dependencies.json +0 -85
  26. package/.proagents/cache/features.json +0 -115
  27. package/.proagents/cache/patterns.json +0 -105
  28. package/.proagents/cache/schemas/conventions-schema.json +0 -138
  29. package/.proagents/cache/schemas/dependencies-schema.json +0 -95
  30. package/.proagents/cache/schemas/features-schema.json +0 -104
  31. package/.proagents/cache/schemas/metadata-schema.json +0 -83
  32. package/.proagents/cache/schemas/patterns-schema.json +0 -136
  33. package/.proagents/cache/schemas/structure-schema.json +0 -72
  34. package/.proagents/cache/structure.json +0 -109
  35. package/.proagents/checklists/README.md +0 -261
  36. package/.proagents/checklists/code-quality.md +0 -137
  37. package/.proagents/checklists/code-review.md +0 -148
  38. package/.proagents/checklists/pr-checklist.md +0 -78
  39. package/.proagents/checklists/pre-deployment.md +0 -132
  40. package/.proagents/checklists/pre-implementation.md +0 -80
  41. package/.proagents/checklists/testing.md +0 -120
  42. package/.proagents/checkpoints.json +0 -13
  43. package/.proagents/cicd/README.md +0 -338
  44. package/.proagents/cicd/azure-devops.md +0 -267
  45. package/.proagents/cicd/github-actions.md +0 -375
  46. package/.proagents/cicd/gitlab-ci.md +0 -278
  47. package/.proagents/cicd/jenkins.md +0 -317
  48. package/.proagents/collaboration/README.md +0 -143
  49. package/.proagents/collaboration/roles.md +0 -248
  50. package/.proagents/collaboration/sessions.md +0 -390
  51. package/.proagents/collaboration/sync.md +0 -358
  52. package/.proagents/cost/README.md +0 -48
  53. package/.proagents/cost/cost-template.md +0 -283
  54. package/.proagents/cost/estimation-framework.md +0 -287
  55. package/.proagents/database/README.md +0 -72
  56. package/.proagents/database/examples/001-create-users.sql +0 -129
  57. package/.proagents/database/examples/002-add-preferences.sql +0 -94
  58. package/.proagents/database/examples/003-add-index.sql +0 -105
  59. package/.proagents/database/examples/004-rename-column.sql +0 -122
  60. package/.proagents/database/examples/005-add-foreign-key.sql +0 -142
  61. package/.proagents/database/examples/006-data-migration.sql +0 -196
  62. package/.proagents/database/examples/007-drop-column.sql +0 -163
  63. package/.proagents/database/examples/README.md +0 -89
  64. package/.proagents/database/migration-workflow.md +0 -478
  65. package/.proagents/database/rollback-scripts.md +0 -487
  66. package/.proagents/database/safety-checks.md +0 -447
  67. package/.proagents/git/README.md +0 -68
  68. package/.proagents/git/branch-strategy.md +0 -164
  69. package/.proagents/git/commit-conventions.md +0 -241
  70. package/.proagents/git/pr-workflow.md +0 -286
  71. package/.proagents/git/rollback-procedures.md +0 -416
  72. package/.proagents/ide-integration/README.md +0 -124
  73. package/.proagents/ide-integration/cline-config.md +0 -429
  74. package/.proagents/ide-integration/continue-config.md +0 -380
  75. package/.proagents/ide-integration/cursor-rules.md +0 -280
  76. package/.proagents/ide-integration/github-copilot.md +0 -384
  77. package/.proagents/ide-integration/windsurf-rules.md +0 -314
  78. package/.proagents/integrations/README.md +0 -97
  79. package/.proagents/integrations/pm/README.md +0 -344
  80. package/.proagents/learning/README.md +0 -136
  81. package/.proagents/learning/adaptation.md +0 -305
  82. package/.proagents/learning/data-collection.md +0 -283
  83. package/.proagents/learning/implementation-guide.md +0 -865
  84. package/.proagents/learning/reports.md +0 -306
  85. package/.proagents/mcp/README.md +0 -133
  86. package/.proagents/mcp/context-providers.md +0 -442
  87. package/.proagents/mcp/server-config.md +0 -306
  88. package/.proagents/mcp/tools-definition.md +0 -513
  89. package/.proagents/pm-integration/README.md +0 -151
  90. package/.proagents/pm-integration/asana.md +0 -346
  91. package/.proagents/pm-integration/github-issues.md +0 -308
  92. package/.proagents/pm-integration/gitlab-issues.md +0 -482
  93. package/.proagents/pm-integration/jira.md +0 -364
  94. package/.proagents/pm-integration/linear.md +0 -409
  95. package/.proagents/pm-integration/notion.md +0 -275
  96. package/.proagents/pm-integration/sync-config.md +0 -533
  97. package/.proagents/pm-integration/trello.md +0 -159
  98. package/.proagents/rules/README.md +0 -179
  99. package/.proagents/rules/custom-rules-template.yaml +0 -286
  100. package/.proagents/rules/custom-rules.md +0 -754
  101. package/.proagents/rules/validation-rules-template.yaml +0 -517
  102. package/.proagents/runbooks/README.md +0 -219
  103. package/.proagents/runbooks/dependency-vulnerability.md +0 -505
  104. package/.proagents/runbooks/incident-response.md +0 -451
  105. package/.proagents/runbooks/performance-degradation.md +0 -584
  106. package/.proagents/runbooks/production-debugging.md +0 -489
  107. package/.proagents/sprints/README.md +0 -58
  108. package/.proagents/team/README.md +0 -256
  109. package/.proagents/team/code-ownership.md +0 -306
  110. package/.proagents/team/communication-templates.md +0 -441
  111. package/.proagents/team/handoff-protocol.md +0 -380
  112. package/.proagents/team/ide-setup/README.md +0 -103
  113. package/.proagents/team/ide-setup/cursor.md +0 -276
  114. package/.proagents/team/ide-setup/jetbrains.md +0 -330
  115. package/.proagents/team/ide-setup/neovim.md +0 -640
  116. package/.proagents/team/ide-setup/vscode.md +0 -348
  117. package/.proagents/team/onboarding.md +0 -278
  118. package/.proagents/time-tracking.json +0 -19
  119. package/.proagents/troubleshooting/README.md +0 -730
  120. package/.proagents/troubleshooting/ai-issues.md +0 -601
  121. package/.proagents/troubleshooting/workflow-issues.md +0 -571
@@ -1,640 +0,0 @@
1
- # Neovim Setup Guide
2
-
3
- Configure Neovim for optimal ProAgents development.
4
-
5
- ---
6
-
7
- ## Overview
8
-
9
- Neovim provides a powerful, extensible environment for ProAgents workflows. This guide covers setup with modern Lua-based configuration using lazy.nvim or Packer.
10
-
11
- ---
12
-
13
- ## Prerequisites
14
-
15
- - Neovim 0.9+ (0.10+ recommended)
16
- - Node.js 18+ (for LSP servers)
17
- - ripgrep (for Telescope)
18
- - A Nerd Font (for icons)
19
-
20
- ```bash
21
- # macOS
22
- brew install neovim ripgrep fd
23
-
24
- # Ubuntu/Debian
25
- sudo apt install neovim ripgrep fd-find
26
-
27
- # Verify installation
28
- nvim --version
29
- ```
30
-
31
- ---
32
-
33
- ## Plugin Manager Setup
34
-
35
- ### Using lazy.nvim (Recommended)
36
-
37
- Create `~/.config/nvim/init.lua`:
38
-
39
- ```lua
40
- -- Bootstrap lazy.nvim
41
- local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
42
- if not vim.fn.isdirectory(lazypath) then
43
- vim.fn.system({
44
- "git", "clone", "--filter=blob:none",
45
- "https://github.com/folke/lazy.nvim.git",
46
- "--branch=stable", lazypath,
47
- })
48
- end
49
- vim.opt.rtp:prepend(lazypath)
50
-
51
- -- Leader key (set before lazy)
52
- vim.g.mapleader = " "
53
- vim.g.maplocalleader = " "
54
-
55
- -- Load plugins
56
- require("lazy").setup("plugins")
57
- ```
58
-
59
- ### Using Packer (Alternative)
60
-
61
- ```lua
62
- -- Bootstrap Packer
63
- local ensure_packer = function()
64
- local fn = vim.fn
65
- local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
66
- if fn.empty(fn.glob(install_path)) > 0 then
67
- fn.system({'git', 'clone', '--depth', '1',
68
- 'https://github.com/wbthomason/packer.nvim', install_path})
69
- vim.cmd [[packadd packer.nvim]]
70
- return true
71
- end
72
- return false
73
- end
74
-
75
- local packer_bootstrap = ensure_packer()
76
-
77
- require('packer').startup(function(use)
78
- use 'wbthomason/packer.nvim'
79
- -- Add plugins here
80
- if packer_bootstrap then
81
- require('packer').sync()
82
- end
83
- end)
84
- ```
85
-
86
- ---
87
-
88
- ## Essential Plugins
89
-
90
- Create `~/.config/nvim/lua/plugins/init.lua`:
91
-
92
- ```lua
93
- return {
94
- -- Core
95
- { "nvim-lua/plenary.nvim" },
96
-
97
- -- File Explorer
98
- {
99
- "nvim-neo-tree/neo-tree.nvim",
100
- dependencies = {
101
- "nvim-lua/plenary.nvim",
102
- "nvim-tree/nvim-web-devicons",
103
- "MunifTanjim/nui.nvim",
104
- },
105
- config = function()
106
- require("neo-tree").setup({
107
- filesystem = {
108
- filtered_items = {
109
- hide_dotfiles = false,
110
- hide_gitignored = false,
111
- hide_by_name = { "node_modules", ".git" },
112
- },
113
- },
114
- })
115
- end,
116
- },
117
-
118
- -- Fuzzy Finder
119
- {
120
- "nvim-telescope/telescope.nvim",
121
- dependencies = {
122
- "nvim-lua/plenary.nvim",
123
- { "nvim-telescope/telescope-fzf-native.nvim", build = "make" },
124
- },
125
- config = function()
126
- local telescope = require("telescope")
127
- telescope.setup({
128
- defaults = {
129
- file_ignore_patterns = { "node_modules", ".git", ".next", "dist" },
130
- },
131
- })
132
- telescope.load_extension("fzf")
133
- end,
134
- },
135
-
136
- -- LSP
137
- {
138
- "neovim/nvim-lspconfig",
139
- dependencies = {
140
- "williamboman/mason.nvim",
141
- "williamboman/mason-lspconfig.nvim",
142
- },
143
- },
144
-
145
- -- Autocompletion
146
- {
147
- "hrsh7th/nvim-cmp",
148
- dependencies = {
149
- "hrsh7th/cmp-nvim-lsp",
150
- "hrsh7th/cmp-buffer",
151
- "hrsh7th/cmp-path",
152
- "L3MON4D3/LuaSnip",
153
- "saadparwaiz1/cmp_luasnip",
154
- },
155
- },
156
-
157
- -- Treesitter
158
- {
159
- "nvim-treesitter/nvim-treesitter",
160
- build = ":TSUpdate",
161
- config = function()
162
- require("nvim-treesitter.configs").setup({
163
- ensure_installed = {
164
- "typescript", "tsx", "javascript", "json",
165
- "html", "css", "lua", "markdown", "yaml",
166
- },
167
- highlight = { enable = true },
168
- indent = { enable = true },
169
- })
170
- end,
171
- },
172
-
173
- -- Formatting
174
- {
175
- "stevearc/conform.nvim",
176
- config = function()
177
- require("conform").setup({
178
- formatters_by_ft = {
179
- javascript = { "prettier" },
180
- typescript = { "prettier" },
181
- typescriptreact = { "prettier" },
182
- javascriptreact = { "prettier" },
183
- json = { "prettier" },
184
- css = { "prettier" },
185
- markdown = { "prettier" },
186
- },
187
- format_on_save = {
188
- timeout_ms = 500,
189
- lsp_fallback = true,
190
- },
191
- })
192
- end,
193
- },
194
-
195
- -- Linting
196
- {
197
- "mfussenegger/nvim-lint",
198
- config = function()
199
- require("lint").linters_by_ft = {
200
- javascript = { "eslint" },
201
- typescript = { "eslint" },
202
- typescriptreact = { "eslint" },
203
- javascriptreact = { "eslint" },
204
- }
205
- end,
206
- },
207
-
208
- -- Git
209
- {
210
- "lewis6991/gitsigns.nvim",
211
- config = function()
212
- require("gitsigns").setup()
213
- end,
214
- },
215
-
216
- -- Status Line
217
- {
218
- "nvim-lualine/lualine.nvim",
219
- config = function()
220
- require("lualine").setup({
221
- options = { theme = "auto" },
222
- })
223
- end,
224
- },
225
-
226
- -- Terminal
227
- {
228
- "akinsho/toggleterm.nvim",
229
- config = function()
230
- require("toggleterm").setup({
231
- open_mapping = [[<c-\>]],
232
- direction = "horizontal",
233
- size = 15,
234
- })
235
- end,
236
- },
237
-
238
- -- AI Integration (choose one)
239
- { "github/copilot.vim" },
240
- -- OR
241
- -- { "Exafunction/codeium.vim" },
242
-
243
- -- Which Key (keybinding helper)
244
- {
245
- "folke/which-key.nvim",
246
- config = function()
247
- require("which-key").setup()
248
- end,
249
- },
250
-
251
- -- Comments
252
- {
253
- "numToStr/Comment.nvim",
254
- config = function()
255
- require("Comment").setup()
256
- end,
257
- },
258
-
259
- -- Autopairs
260
- {
261
- "windwp/nvim-autopairs",
262
- config = function()
263
- require("nvim-autopairs").setup()
264
- end,
265
- },
266
- }
267
- ```
268
-
269
- ---
270
-
271
- ## LSP Configuration
272
-
273
- Create `~/.config/nvim/lua/plugins/lsp.lua`:
274
-
275
- ```lua
276
- return {
277
- {
278
- "williamboman/mason.nvim",
279
- config = function()
280
- require("mason").setup()
281
- end,
282
- },
283
- {
284
- "williamboman/mason-lspconfig.nvim",
285
- config = function()
286
- require("mason-lspconfig").setup({
287
- ensure_installed = {
288
- "tsserver", -- TypeScript
289
- "eslint", -- ESLint
290
- "tailwindcss", -- Tailwind CSS
291
- "lua_ls", -- Lua
292
- "jsonls", -- JSON
293
- "html", -- HTML
294
- "cssls", -- CSS
295
- },
296
- })
297
- end,
298
- },
299
- {
300
- "neovim/nvim-lspconfig",
301
- config = function()
302
- local lspconfig = require("lspconfig")
303
- local capabilities = require("cmp_nvim_lsp").default_capabilities()
304
-
305
- -- TypeScript
306
- lspconfig.tsserver.setup({
307
- capabilities = capabilities,
308
- on_attach = function(client, bufnr)
309
- -- Disable formatting (use Prettier instead)
310
- client.server_capabilities.documentFormattingProvider = false
311
- end,
312
- })
313
-
314
- -- ESLint
315
- lspconfig.eslint.setup({
316
- capabilities = capabilities,
317
- })
318
-
319
- -- Tailwind CSS
320
- lspconfig.tailwindcss.setup({
321
- capabilities = capabilities,
322
- })
323
-
324
- -- JSON
325
- lspconfig.jsonls.setup({
326
- capabilities = capabilities,
327
- })
328
- end,
329
- },
330
- }
331
- ```
332
-
333
- ---
334
-
335
- ## Autocompletion Configuration
336
-
337
- Create `~/.config/nvim/lua/plugins/cmp.lua`:
338
-
339
- ```lua
340
- return {
341
- {
342
- "hrsh7th/nvim-cmp",
343
- config = function()
344
- local cmp = require("cmp")
345
- local luasnip = require("luasnip")
346
-
347
- cmp.setup({
348
- snippet = {
349
- expand = function(args)
350
- luasnip.lsp_expand(args.body)
351
- end,
352
- },
353
- mapping = cmp.mapping.preset.insert({
354
- ["<C-b>"] = cmp.mapping.scroll_docs(-4),
355
- ["<C-f>"] = cmp.mapping.scroll_docs(4),
356
- ["<C-Space>"] = cmp.mapping.complete(),
357
- ["<C-e>"] = cmp.mapping.abort(),
358
- ["<CR>"] = cmp.mapping.confirm({ select = true }),
359
- ["<Tab>"] = cmp.mapping(function(fallback)
360
- if cmp.visible() then
361
- cmp.select_next_item()
362
- elseif luasnip.expand_or_jumpable() then
363
- luasnip.expand_or_jump()
364
- else
365
- fallback()
366
- end
367
- end, { "i", "s" }),
368
- ["<S-Tab>"] = cmp.mapping(function(fallback)
369
- if cmp.visible() then
370
- cmp.select_prev_item()
371
- elseif luasnip.jumpable(-1) then
372
- luasnip.jump(-1)
373
- else
374
- fallback()
375
- end
376
- end, { "i", "s" }),
377
- }),
378
- sources = cmp.config.sources({
379
- { name = "nvim_lsp" },
380
- { name = "luasnip" },
381
- { name = "buffer" },
382
- { name = "path" },
383
- }),
384
- })
385
- end,
386
- },
387
- }
388
- ```
389
-
390
- ---
391
-
392
- ## Key Mappings
393
-
394
- Create `~/.config/nvim/lua/config/keymaps.lua`:
395
-
396
- ```lua
397
- local keymap = vim.keymap.set
398
- local opts = { noremap = true, silent = true }
399
-
400
- -- General
401
- keymap("n", "<leader>w", ":w<CR>", { desc = "Save file" })
402
- keymap("n", "<leader>q", ":q<CR>", { desc = "Quit" })
403
- keymap("n", "<Esc>", ":noh<CR>", { desc = "Clear search" })
404
-
405
- -- File Explorer
406
- keymap("n", "<leader>e", ":Neotree toggle<CR>", { desc = "Toggle explorer" })
407
- keymap("n", "<leader>o", ":Neotree focus<CR>", { desc = "Focus explorer" })
408
-
409
- -- Telescope (Fuzzy Finding)
410
- keymap("n", "<leader>ff", ":Telescope find_files<CR>", { desc = "Find files" })
411
- keymap("n", "<leader>fg", ":Telescope live_grep<CR>", { desc = "Live grep" })
412
- keymap("n", "<leader>fb", ":Telescope buffers<CR>", { desc = "Find buffers" })
413
- keymap("n", "<leader>fh", ":Telescope help_tags<CR>", { desc = "Help tags" })
414
- keymap("n", "<leader>fr", ":Telescope oldfiles<CR>", { desc = "Recent files" })
415
- keymap("n", "<leader>fs", ":Telescope grep_string<CR>", { desc = "Grep string" })
416
-
417
- -- LSP
418
- keymap("n", "gd", vim.lsp.buf.definition, { desc = "Go to definition" })
419
- keymap("n", "gr", vim.lsp.buf.references, { desc = "Go to references" })
420
- keymap("n", "gi", vim.lsp.buf.implementation, { desc = "Go to implementation" })
421
- keymap("n", "K", vim.lsp.buf.hover, { desc = "Hover documentation" })
422
- keymap("n", "<leader>ca", vim.lsp.buf.code_action, { desc = "Code action" })
423
- keymap("n", "<leader>rn", vim.lsp.buf.rename, { desc = "Rename" })
424
- keymap("n", "<leader>d", vim.diagnostic.open_float, { desc = "Line diagnostics" })
425
- keymap("n", "[d", vim.diagnostic.goto_prev, { desc = "Previous diagnostic" })
426
- keymap("n", "]d", vim.diagnostic.goto_next, { desc = "Next diagnostic" })
427
-
428
- -- Formatting
429
- keymap("n", "<leader>fm", function()
430
- require("conform").format({ async = true, lsp_fallback = true })
431
- end, { desc = "Format file" })
432
-
433
- -- Git
434
- keymap("n", "<leader>gs", ":Telescope git_status<CR>", { desc = "Git status" })
435
- keymap("n", "<leader>gc", ":Telescope git_commits<CR>", { desc = "Git commits" })
436
- keymap("n", "<leader>gb", ":Telescope git_branches<CR>", { desc = "Git branches" })
437
-
438
- -- Terminal
439
- keymap("n", "<leader>tt", ":ToggleTerm<CR>", { desc = "Toggle terminal" })
440
- keymap("t", "<Esc>", [[<C-\><C-n>]], { desc = "Exit terminal mode" })
441
-
442
- -- Buffers
443
- keymap("n", "<S-h>", ":bprevious<CR>", { desc = "Previous buffer" })
444
- keymap("n", "<S-l>", ":bnext<CR>", { desc = "Next buffer" })
445
- keymap("n", "<leader>bd", ":bdelete<CR>", { desc = "Delete buffer" })
446
-
447
- -- Windows
448
- keymap("n", "<C-h>", "<C-w>h", { desc = "Move to left window" })
449
- keymap("n", "<C-j>", "<C-w>j", { desc = "Move to bottom window" })
450
- keymap("n", "<C-k>", "<C-w>k", { desc = "Move to top window" })
451
- keymap("n", "<C-l>", "<C-w>l", { desc = "Move to right window" })
452
-
453
- -- ProAgents Commands (via terminal)
454
- keymap("n", "<leader>ps", ":TermExec cmd='proagents status'<CR>", { desc = "ProAgents status" })
455
- keymap("n", "<leader>pf", ":TermExec cmd='proagents feature list'<CR>", { desc = "ProAgents features" })
456
- keymap("n", "<leader>pc", ":TermExec cmd='proagents checklist current'<CR>", { desc = "ProAgents checklist" })
457
- ```
458
-
459
- ---
460
-
461
- ## ProAgents Integration
462
-
463
- ### Custom Commands
464
-
465
- Add to your config:
466
-
467
- ```lua
468
- -- ProAgents custom commands
469
- vim.api.nvim_create_user_command("ProAgentsStatus", function()
470
- vim.cmd("TermExec cmd='proagents status'")
471
- end, { desc = "Show ProAgents status" })
472
-
473
- vim.api.nvim_create_user_command("ProAgentsFeature", function(opts)
474
- local cmd = "proagents feature " .. opts.args
475
- vim.cmd("TermExec cmd='" .. cmd .. "'")
476
- end, { nargs = "+", desc = "ProAgents feature command" })
477
-
478
- vim.api.nvim_create_user_command("ProAgentsAnalyze", function()
479
- vim.cmd("TermExec cmd='proagents analyze'")
480
- end, { desc = "Analyze codebase" })
481
-
482
- vim.api.nvim_create_user_command("ProAgentsChecklist", function(opts)
483
- local checklist = opts.args ~= "" and opts.args or "current"
484
- vim.cmd("TermExec cmd='proagents checklist " .. checklist .. "'")
485
- end, { nargs = "?", desc = "Run checklist" })
486
- ```
487
-
488
- ### Telescope Extension for ProAgents
489
-
490
- Create `~/.config/nvim/lua/plugins/proagents.lua`:
491
-
492
- ```lua
493
- -- ProAgents Telescope picker
494
- local pickers = require("telescope.pickers")
495
- local finders = require("telescope.finders")
496
- local conf = require("telescope.config").values
497
- local actions = require("telescope.actions")
498
- local action_state = require("telescope.actions.state")
499
-
500
- local proagents_commands = function(opts)
501
- opts = opts or {}
502
- pickers.new(opts, {
503
- prompt_title = "ProAgents Commands",
504
- finder = finders.new_table({
505
- results = {
506
- { "status", "Show workflow status" },
507
- { "feature list", "List active features" },
508
- { "feature start", "Start new feature" },
509
- { "analyze", "Analyze codebase" },
510
- { "checklist current", "Current phase checklist" },
511
- { "checklist pre-deployment", "Pre-deployment checklist" },
512
- { "doc", "Generate documentation" },
513
- { "test", "Run tests" },
514
- },
515
- entry_maker = function(entry)
516
- return {
517
- value = entry[1],
518
- display = entry[1] .. " - " .. entry[2],
519
- ordinal = entry[1],
520
- }
521
- end,
522
- }),
523
- sorter = conf.generic_sorter(opts),
524
- attach_mappings = function(prompt_bufnr, map)
525
- actions.select_default:replace(function()
526
- actions.close(prompt_bufnr)
527
- local selection = action_state.get_selected_entry()
528
- vim.cmd("TermExec cmd='proagents " .. selection.value .. "'")
529
- end)
530
- return true
531
- end,
532
- }):find()
533
- end
534
-
535
- -- Register command
536
- vim.api.nvim_create_user_command("ProAgents", proagents_commands, {})
537
- vim.keymap.set("n", "<leader>pa", proagents_commands, { desc = "ProAgents commands" })
538
- ```
539
-
540
- ---
541
-
542
- ## Editor Options
543
-
544
- Create `~/.config/nvim/lua/config/options.lua`:
545
-
546
- ```lua
547
- local opt = vim.opt
548
-
549
- -- Line numbers
550
- opt.number = true
551
- opt.relativenumber = true
552
-
553
- -- Tabs & Indentation
554
- opt.tabstop = 2
555
- opt.shiftwidth = 2
556
- opt.softtabstop = 2
557
- opt.expandtab = true
558
- opt.smartindent = true
559
-
560
- -- Line wrapping
561
- opt.wrap = false
562
-
563
- -- Search
564
- opt.ignorecase = true
565
- opt.smartcase = true
566
- opt.hlsearch = true
567
- opt.incsearch = true
568
-
569
- -- Appearance
570
- opt.termguicolors = true
571
- opt.signcolumn = "yes"
572
- opt.cursorline = true
573
- opt.scrolloff = 8
574
- opt.sidescrolloff = 8
575
-
576
- -- Behavior
577
- opt.splitright = true
578
- opt.splitbelow = true
579
- opt.clipboard = "unnamedplus"
580
- opt.undofile = true
581
- opt.updatetime = 250
582
- opt.timeoutlen = 300
583
-
584
- -- File handling
585
- opt.backup = false
586
- opt.swapfile = false
587
- opt.fileencoding = "utf-8"
588
- ```
589
-
590
- ---
591
-
592
- ## Troubleshooting
593
-
594
- ### LSP Not Working
595
-
596
- ```vim
597
- :LspInfo " Check LSP status
598
- :Mason " Check/install LSP servers
599
- :checkhealth lsp " Health check
600
- ```
601
-
602
- ### Treesitter Issues
603
-
604
- ```vim
605
- :TSUpdate " Update parsers
606
- :TSInstall <lang> " Install specific parser
607
- :checkhealth nvim-treesitter
608
- ```
609
-
610
- ### Plugin Issues
611
-
612
- ```vim
613
- :Lazy " Open plugin manager
614
- :Lazy sync " Sync plugins
615
- :Lazy clean " Remove unused plugins
616
- ```
617
-
618
- ### Performance
619
-
620
- ```vim
621
- :checkhealth " Full health check
622
- :StartupTime " Profile startup (with plugin)
623
- ```
624
-
625
- ---
626
-
627
- ## Quick Reference
628
-
629
- | Keybinding | Action |
630
- |------------|--------|
631
- | `<Space>ff` | Find files |
632
- | `<Space>fg` | Live grep |
633
- | `<Space>e` | Toggle file explorer |
634
- | `gd` | Go to definition |
635
- | `gr` | Find references |
636
- | `K` | Hover docs |
637
- | `<Space>ca` | Code actions |
638
- | `<Space>fm` | Format file |
639
- | `<Space>pa` | ProAgents commands |
640
- | `<C-\>` | Toggle terminal |