-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathStructure.txt
More file actions
38 lines (38 loc) · 2.55 KB
/
Structure.txt
File metadata and controls
38 lines (38 loc) · 2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
.
├── src/
│ ├── extension.ts # Main activation point, command registration, initializes core components & UI
│ │
│ ├── core/ # Central logic of the extension
│ │ ├── mcpServer.ts # Orchestrates analysis requests, manages context cache
│ │ ├── aiModelRouter.ts # Determines the best AI model based on context
│ │ ├── contextBuilder.ts # NEW: Handles gathering workspace/file/selection context (symbols, imports, etc.)
│ │ └── types/ # Shared type definitions
│ │ ├── workspaceContext.ts # Definition of WorkspaceContext
│ │ └── aiModel.ts # Definition of AIModel interface and related types
│ │
│ ├── models/ # Implementations or simulations of different AI models
│ │ ├── codeAnalyzer.ts # Logic for the 'code' analysis model/specialty
│ │ ├── testAnalyzer.ts # Logic for the 'testing' analysis model/specialty
│ │ ├── docAnalyzer.ts # Logic for the 'documentation' analysis model/specialty
│ │ └── modelProvider.ts # NEW: Manages/provides instances of available models to the router
│ │
│ ├── services/ # Lower-level services interacting with VS Code API or external resources
│ │ ├── vscodeService.ts # NEW: Wraps common VS Code API interactions (documents, symbols, progress, FS)
│ │ └── configurationService.ts # NEW: Manages reading/accessing extension settings
│ │
│ ├── ui/ # UI related components
│ │ ├── statusBarProvider.ts # Manages the status bar item
│ │ ├── webviewProvider.ts # Manages the results webview panel
│ │ ├── codeLensProvider.ts # Provides the 'Analyze' code lenses
│ │ └── notificationService.ts# NEW: Centralizes showing messages, progress, errors
│ │
│ └── utils/ # Common utility functions
│ └── helpers.ts # General helper functions (e.g., flattening symbols)
│
├── .vscode/
│ └── launch.json # Debugging configuration
├── .eslintrc.json # ESLint configuration
├── .gitignore
├── package.json # Extension manifest, dependencies, scripts
├── README.md # Documentation
└── tsconfig.json # TypeScript configuration