aidex-mcp 1.4.1

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 (76) hide show
  1. package/CHANGELOG.md +128 -0
  2. package/LICENSE +21 -0
  3. package/MCP-API-REFERENCE.md +690 -0
  4. package/README.md +314 -0
  5. package/build/commands/files.d.ts +28 -0
  6. package/build/commands/files.js +124 -0
  7. package/build/commands/index.d.ts +14 -0
  8. package/build/commands/index.js +14 -0
  9. package/build/commands/init.d.ts +24 -0
  10. package/build/commands/init.js +396 -0
  11. package/build/commands/link.d.ts +45 -0
  12. package/build/commands/link.js +167 -0
  13. package/build/commands/note.d.ts +29 -0
  14. package/build/commands/note.js +105 -0
  15. package/build/commands/query.d.ts +36 -0
  16. package/build/commands/query.js +176 -0
  17. package/build/commands/scan.d.ts +25 -0
  18. package/build/commands/scan.js +104 -0
  19. package/build/commands/session.d.ts +52 -0
  20. package/build/commands/session.js +216 -0
  21. package/build/commands/signature.d.ts +52 -0
  22. package/build/commands/signature.js +171 -0
  23. package/build/commands/summary.d.ts +56 -0
  24. package/build/commands/summary.js +324 -0
  25. package/build/commands/update.d.ts +36 -0
  26. package/build/commands/update.js +273 -0
  27. package/build/constants.d.ts +10 -0
  28. package/build/constants.js +10 -0
  29. package/build/db/database.d.ts +69 -0
  30. package/build/db/database.js +126 -0
  31. package/build/db/index.d.ts +7 -0
  32. package/build/db/index.js +6 -0
  33. package/build/db/queries.d.ts +163 -0
  34. package/build/db/queries.js +273 -0
  35. package/build/db/schema.sql +136 -0
  36. package/build/index.d.ts +13 -0
  37. package/build/index.js +74 -0
  38. package/build/parser/extractor.d.ts +41 -0
  39. package/build/parser/extractor.js +249 -0
  40. package/build/parser/index.d.ts +7 -0
  41. package/build/parser/index.js +7 -0
  42. package/build/parser/languages/c.d.ts +28 -0
  43. package/build/parser/languages/c.js +70 -0
  44. package/build/parser/languages/cpp.d.ts +28 -0
  45. package/build/parser/languages/cpp.js +91 -0
  46. package/build/parser/languages/csharp.d.ts +32 -0
  47. package/build/parser/languages/csharp.js +97 -0
  48. package/build/parser/languages/go.d.ts +28 -0
  49. package/build/parser/languages/go.js +83 -0
  50. package/build/parser/languages/index.d.ts +21 -0
  51. package/build/parser/languages/index.js +107 -0
  52. package/build/parser/languages/java.d.ts +28 -0
  53. package/build/parser/languages/java.js +58 -0
  54. package/build/parser/languages/php.d.ts +28 -0
  55. package/build/parser/languages/php.js +75 -0
  56. package/build/parser/languages/python.d.ts +28 -0
  57. package/build/parser/languages/python.js +67 -0
  58. package/build/parser/languages/ruby.d.ts +28 -0
  59. package/build/parser/languages/ruby.js +68 -0
  60. package/build/parser/languages/rust.d.ts +28 -0
  61. package/build/parser/languages/rust.js +73 -0
  62. package/build/parser/languages/typescript.d.ts +28 -0
  63. package/build/parser/languages/typescript.js +82 -0
  64. package/build/parser/tree-sitter.d.ts +30 -0
  65. package/build/parser/tree-sitter.js +132 -0
  66. package/build/server/mcp-server.d.ts +7 -0
  67. package/build/server/mcp-server.js +36 -0
  68. package/build/server/tools.d.ts +18 -0
  69. package/build/server/tools.js +1245 -0
  70. package/build/viewer/git-status.d.ts +25 -0
  71. package/build/viewer/git-status.js +163 -0
  72. package/build/viewer/index.d.ts +5 -0
  73. package/build/viewer/index.js +5 -0
  74. package/build/viewer/server.d.ts +12 -0
  75. package/build/viewer/server.js +1122 -0
  76. package/package.json +66 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,128 @@
1
+ # Changelog
2
+
3
+ All notable changes to AiDex will be documented in this file.
4
+
5
+ ## [1.4.1] - 2026-01-31
6
+
7
+ ### Fixed
8
+ - **Git Status for Subfolder Projects**: Viewer now correctly shows git status for projects that are subdirectories of a git repo (e.g., a library inside a monorepo)
9
+ - `isGitRepo()` now uses `simpleGit().checkIsRepo()` instead of checking for `.git` directory — traverses parent dirs
10
+ - New `toProjectRelative()` helper maps git-root-relative paths to project-relative paths
11
+ - Files outside the project subfolder are properly filtered out
12
+
13
+ ## [1.4.0] - 2026-01-31
14
+
15
+ ### Breaking Changes
16
+ - **Renamed from CodeGraph to AiDex**: Package name, MCP server name, and all internal references updated
17
+ - MCP prefix changes from `mcp__codegraph__` to `mcp__aidex__` (requires config update)
18
+ - Index directory changed from `.codegraph/` to `.aidex/`
19
+ - Batch scripts renamed: `codegraph-scan.bat` → `aidex-scan.bat`, `codegraph-init-all.bat` → `aidex-init-all.bat`
20
+ - Old `.codegraph/` directories can be safely deleted
21
+
22
+ ### Added
23
+ - **Automatic Cleanup**: `aidex_init` now removes files that became excluded (e.g., build outputs)
24
+ - Reports `filesRemoved` count in result
25
+ - Uses minimatch for proper glob pattern matching
26
+ - **Git Status in Viewer**: File tree now shows git status with cat icons
27
+ - 🟢 Pushed (committed and up-to-date)
28
+ - 🟡 Modified (uncommitted changes)
29
+ - 🔵 Staged (added to index)
30
+ - ⚪ Untracked (new files)
31
+ - **aidex-init-all.bat**: New batch script to recursively index all git projects in a directory tree
32
+
33
+ ### Changed
34
+ - Added minimatch dependency for exclude pattern handling
35
+ - Updated all documentation (README, CLAUDE.md, MCP-API-REFERENCE) with correct MCP prefix info
36
+
37
+ ## [1.3.0] - 2026-01-27
38
+
39
+ ### Added
40
+ - **Interactive Viewer**: New `aidex_viewer` tool opens a browser-based project explorer
41
+ - Interactive file tree (click to expand directories)
42
+ - Click files to view signatures (types, methods)
43
+ - Tabs: Code files / All files, Overview / Source code
44
+ - **Live reload** with chokidar file watcher
45
+ - WebSocket for real-time updates
46
+ - Syntax highlighting with highlight.js
47
+ - Runs on `http://localhost:3333`
48
+ - **Recent Files Filter**: New `modified_since` parameter for `aidex_files`
49
+ - Find files changed in current session: `modified_since: "30m"`
50
+ - Supports relative time (`2h`, `1d`, `1w`) and ISO dates
51
+
52
+ ### Changed
53
+ - Viewer auto-reindexes changed files before refreshing tree
54
+
55
+ ### Fixed
56
+ - Server version now correctly reports 1.3.0
57
+
58
+ ## [1.2.0] - 2026-01-27
59
+
60
+ ### Added
61
+ - **Session Notes**: New `aidex_note` tool to persist reminders between sessions
62
+ - Write, append, read, and clear notes
63
+ - Stored in SQLite database (survives restarts)
64
+ - Use cases: handover notes, test reminders, context for next session
65
+ - **Session Tracking**: New `aidex_session` tool for automatic session management
66
+ - Detects new sessions (>5 min since last activity)
67
+ - Records session start/end times
68
+ - Detects files modified externally (outside sessions)
69
+ - Auto-reindexes changed files on session start
70
+ - Returns session note if one exists
71
+
72
+ ### Changed
73
+ - Database schema: Added `metadata` table for key-value storage (session times, notes)
74
+
75
+ ## [1.1.0] - 2026-01-27
76
+
77
+ ### Added
78
+ - **Time-based Filtering**: New `modified_since` and `modified_before` parameters for `aidex_query`
79
+ - Relative time: `30m`, `2h`, `1d`, `1w`
80
+ - ISO dates: `2026-01-27` or `2026-01-27T14:30:00`
81
+ - Track line-level changes across updates
82
+ - **Project Structure**: New `aidex_files` tool to query all project files
83
+ - File types: `code`, `config`, `doc`, `asset`, `test`, `other`, `dir`
84
+ - Glob pattern filtering
85
+ - Statistics by file type
86
+
87
+ ### Changed
88
+ - `aidex_init` now indexes complete project structure (all files, not just code)
89
+ - `aidex_update` preserves modification timestamps for unchanged lines (hash-based diff)
90
+ - Path normalization to forward slashes across all commands
91
+
92
+ ### Technical
93
+ - New `project_files` table in database schema
94
+ - New `line_hash` and `modified` columns in `lines` table
95
+ - Hash-based change detection for accurate timestamps
96
+
97
+ ## [1.0.0] - 2026-01-27
98
+
99
+ ### Added
100
+ - **11 Language Support**: C#, TypeScript, JavaScript, Rust, Python, C, C++, Java, Go, PHP, Ruby
101
+ - **Core Tools**:
102
+ - `aidex_init` - Index a project
103
+ - `aidex_query` - Search terms (exact/contains/starts_with)
104
+ - `aidex_signature` - Get file signatures (methods, types)
105
+ - `aidex_signatures` - Batch signatures with glob patterns
106
+ - `aidex_update` - Re-index single files
107
+ - `aidex_remove` - Remove files from index
108
+ - `aidex_summary` - Project overview with auto-detected entry points
109
+ - `aidex_tree` - File tree with statistics
110
+ - `aidex_describe` - Add documentation to summary
111
+ - `aidex_status` - Index statistics
112
+ - **Cross-Project Support**:
113
+ - `aidex_link` - Link dependency projects
114
+ - `aidex_unlink` - Remove linked projects
115
+ - `aidex_links` - List all linked projects
116
+ - **Discovery**:
117
+ - `aidex_scan` - Find all indexed projects in directory tree
118
+ - CLI commands: `scan`, `init`
119
+ - **Technical**:
120
+ - Tree-sitter parsing for accurate identifier extraction
121
+ - SQLite with WAL mode for fast, reliable storage
122
+ - Keyword filtering per language (excludes language keywords from index)
123
+ - 1MB parser buffer for large files
124
+
125
+ ### Infrastructure
126
+ - MCP Server protocol implementation
127
+ - MIT License
128
+ - Comprehensive documentation
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Uwe Chalas / CSC-Software
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.