|
1 | | -# Claude Code Plugin Information |
2 | | - |
3 | | -## Useful Commands |
4 | | - |
5 | | -### Git Commands |
6 | | -- `git -C /home/gregg/Projects/neovim/plugins/claude-code commit -am "message"` - Add all changes and commit |
7 | | -- `git -C /home/gregg/Projects/neovim/plugins/claude-code push` - Push changes to remote |
8 | | -- `git -C /home/gregg/Projects/neovim/plugins/claude-code status` - Check current status |
9 | | -- `git -C /home/gregg/Projects/neovim/plugins/claude-code diff` - Show changes |
10 | | -- `git -C /home/gregg/Projects/neovim/plugins/claude-code log -n 5` - Show last 5 commits |
11 | | - |
12 | | -### Development Commands |
13 | | -- `stylua lua/ -c` - Check Lua formatting |
14 | | -- `stylua lua/` - Format Lua code |
15 | | -- `luacheck lua/` - Run Lua linter |
16 | | -- `nvim --headless -c "lua require('claude-code.test').run()"` - Run tests |
17 | | - |
18 | | -## Codebase Information |
19 | | - |
20 | | -### Config Options |
21 | | -The plugin supports the following configuration options: |
22 | | - |
23 | | -```lua |
24 | | -require("claude-code").setup({ |
25 | | - -- Terminal window settings |
26 | | - window = { |
27 | | - height_ratio = 0.3, -- Percentage of screen height for the terminal window |
28 | | - position = "botright", -- Position of the window: "botright", "topleft", etc. |
29 | | - enter_insert = true, -- Whether to enter insert mode when opening Claude Code |
30 | | - hide_numbers = true, -- Hide line numbers in the terminal window |
31 | | - hide_signcolumn = true, -- Hide the sign column in the terminal window |
32 | | - }, |
33 | | - -- File refresh settings |
34 | | - refresh = { |
35 | | - enable = true, -- Enable file change detection |
36 | | - updatetime = 100, -- updatetime when Claude Code is active (milliseconds) |
37 | | - timer_interval = 1000, -- How often to check for file changes (milliseconds) |
38 | | - show_notifications = true, -- Show notification when files are reloaded |
39 | | - }, |
40 | | - -- Keymaps |
41 | | - keymaps = { |
42 | | - toggle = { |
43 | | - normal = "<leader>ac", -- Normal mode keymap for toggling Claude Code |
44 | | - terminal = "<C-.>", -- Terminal mode keymap for toggling Claude Code |
45 | | - }, |
46 | | - window_navigation = true, -- Enable window navigation keymaps (<C-h/j/k/l>) |
47 | | - scrolling = true, -- Enable scrolling keymaps (<C-f/b>) for page up/down |
48 | | - } |
49 | | -}) |
50 | | -``` |
51 | | - |
52 | | -### Project Structure |
53 | | -- `lua/claude-code/init.lua` - Main plugin file |
54 | | -- `lua/claude-code/config.lua` - Configuration module |
55 | | -- `lua/claude-code/terminal.lua` - Terminal management |
56 | | -- `lua/claude-code/buffer.lua` - Buffer utilities |
57 | | -- `lua/claude-code/autocmds.lua` - Autocommands for file refresh |
58 | | -- `lua/claude-code/version.lua` - Version information |
59 | | - |
60 | | -### Features |
61 | | -- Seamless Neovim integration with Claude Code AI |
62 | | -- Terminal-based interface for Claude interaction |
63 | | -- File change detection and auto-refresh |
64 | | -- Customizable window positioning and appearance |
65 | | -- Integration with file context and projects |
66 | | -- Convenient keymaps for toggling and navigation |
67 | | - |
68 | | -### Version Management |
69 | | -- Current version: v0.4.2 |
70 | | -- Version file: `lua/claude-code/version.lua` |
71 | | - |
72 | | -### Key Files |
73 | | -- `README.md` - Plugin documentation |
74 | | -- `CLAUDE.md` - Internal notes and info for Claude Code |
75 | | -- `LICENSE` - MIT License |
| 1 | +# Project: Claude Code Plugin |
| 2 | + |
| 3 | +## Overview |
| 4 | +Claude Code Plugin provides seamless integration between the Claude Code AI assistant and Neovim. It enables direct communication with the Claude Code CLI from within the editor, context-aware interactions, and various utilities to enhance AI-assisted development within Neovim. |
| 5 | + |
| 6 | +## Essential Commands |
| 7 | +- Run Tests: `env -C /home/gregg/Projects/neovim/plugins/claude-code lua tests/run_tests.lua` |
| 8 | +- Check Formatting: `env -C /home/gregg/Projects/neovim/plugins/claude-code stylua lua/ -c` |
| 9 | +- Format Code: `env -C /home/gregg/Projects/neovim/plugins/claude-code stylua lua/` |
| 10 | +- Run Linter: `env -C /home/gregg/Projects/neovim/plugins/claude-code luacheck lua/` |
| 11 | +- Build Documentation: `env -C /home/gregg/Projects/neovim/plugins/claude-code mkdocs build` |
| 12 | + |
| 13 | +## Project Structure |
| 14 | +- `/lua/claude-code`: Main plugin code |
| 15 | +- `/lua/claude-code/cli`: Claude Code CLI integration |
| 16 | +- `/lua/claude-code/ui`: UI components for interactions |
| 17 | +- `/lua/claude-code/context`: Context management utilities |
| 18 | +- `/after/plugin`: Plugin setup and initialization |
| 19 | +- `/tests`: Test files for plugin functionality |
| 20 | +- `/doc`: Vim help documentation |
| 21 | + |
| 22 | +## Current Focus |
| 23 | +- Integrating nvim-toolkit for shared utilities |
| 24 | +- Adding hooks-util as git submodule for development workflow |
| 25 | +- Enhancing bidirectional communication with Claude Code CLI |
| 26 | +- Implementing better context synchronization |
| 27 | +- Adding buffer-specific context management |
| 28 | + |
| 29 | +## Documentation Links |
| 30 | +- Tasks: `/home/gregg/Projects/docs-projects/neovim-ecosystem-docs/tasks/claude-code-tasks.md` |
| 31 | +- Project Status: `/home/gregg/Projects/docs-projects/neovim-ecosystem-docs/project-status.md` |
0 commit comments