Skip to content

Commit c069690

Browse files
authored
Merge pull request #108 from Servoy/claud.md_updates
Claud.md updates
2 parents 47ccb5a + 3c2df09 commit c069690

1 file changed

Lines changed: 49 additions & 5 deletions

File tree

CLAUDE.md

Lines changed: 49 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,25 @@ AssistAI is an Eclipse IDE plugin that integrates LLM assistants (OpenAI, Anthro
66
## Project Structure
77
- `plugins/com.github.gradusnikov.eclipse.plugin.assistai.main/` — main plugin (Java 21, Eclipse PDE)
88
- `src/com/github/gradusnikov/eclipse/assistai/` — source root
9-
- `mcp/servers/` — MCP server endpoint classes (`@McpServer` annotated)
10-
- `mcp/services/` — service classes with business logic
11-
- `network/clients/` — API connector clients (OpenAI, Gemini, Grok, etc.)
9+
- `chat/` — chat session management
10+
- `commands/` — Eclipse command handlers
11+
- `completion/` — code completion integration
12+
- `handlers/` — event and request handlers
13+
- `jobs/` — Eclipse background jobs
14+
- `mcp/` — MCP (Model Context Protocol) implementation
15+
- `annotations/``@McpServer`, `@Tool`, `@ToolParam` annotations
16+
- `http/` — HTTP server infrastructure (auth, registry, preferences)
17+
- `local/` — in-memory MCP transport
18+
- `servers/` — MCP server endpoint classes (`@McpServer` annotated)
19+
- `services/` — service classes with business logic for MCP tools
20+
- `models/` — data models
21+
- `network/clients/` — API connector clients (OpenAI, OpenAI Responses, Anthropic, Gemini, Grok, DeepSeek, Groq)
22+
- `preferences/` — preference pages and initializers
23+
- `prompt/` — prompt templates and management
24+
- `resources/` — resource caching
25+
- `services/` — top-level services (separate from MCP services)
26+
- `tools/` — utility classes
27+
- `view/` — UI views and editors
1228
- `tests/com.github.gradusnikov.eclipse.plugin.assistai.main.tests/` — test project
1329

1430
## MCP Tools Available
@@ -17,14 +33,42 @@ This project exposes Eclipse IDE capabilities as MCP tools. When working on code
1733
- **eclipse-coder** — file editing, refactoring, patching, formatting
1834
- **eclipse-ide** — code analysis, navigation, testing, building, search
1935
- **eclipse-runner** — launch, debug, breakpoints, stepping
36+
- **eclipse-context** — resource caching, file history, workspace context
37+
- **eclipse-git** — git operations (status, diff, commit, branch, stash)
38+
- **eclipse-pde** — PDE target platform management
39+
- **duck-duck-search** — web search via DuckDuckGo
40+
- **webpage-reader** — fetch and read web pages
41+
- **memory** — thinking/memory tool for reasoning
42+
- **time** — time zone conversion and current time
2043

2144
## Key Conventions
2245
- Use `eclipse-coder__applyPatch` for multi-hunk edits (more reliable than replaceString)
2346
- Use `eclipse-coder__replaceString` for single targeted replacements
2447
- Always check `eclipse-ide__getCompilationErrors` after code changes
2548
- Use `eclipse-ide__getProjectLayout` with `scopePath` and `maxDepth` for large projects
26-
- MCP tool annotations: `@McpServer`, `@Tool`, `@ToolParam` in the `mcp.annotations` package
49+
- MCP tool annotations: `@McpServer`, `@Tool`, `@ToolParam` in the `mcp/annotations` package
2750
- Service classes in `mcp/services/` contain business logic; server classes in `mcp/servers/` are thin wrappers
2851

52+
## Testing
53+
54+
Test project: `com.github.gradusnikov.eclipse.plugin.assistai.main.tests`
55+
56+
### Plain JUnit (run with `runClassTests` / `runAllTests`)
57+
- `com.github.gradusnikov.eclipse.assistai.chat.ConversationContextTest`
58+
- `com.github.gradusnikov.eclipse.assistai.prompt.MarkdownParserTest`
59+
- `com.github.gradusnikov.eclipse.plugin.assistai.main.HtmlToMarkdownConverterTest`
60+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.servers.TimeMcpServerTest`
61+
62+
### Plugin Tests (run with `runJUnitPluginTestClass` / `runJUnitPluginTests`)
63+
- `com.github.gradusnikov.eclipse.assistai.prompt.ChatMessageFactoryTest`
64+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.servers.PDEMcpServerTest`
65+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.CodeEditingServiceTest`
66+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.MavenServiceTest`
67+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.CodeAnalysisServiceTest`
68+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.CoverageServiceTest`
69+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.PDEServicePluginTest`
70+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.services.GitServiceTest`
71+
- `com.github.gradusnikov.eclipse.plugin.assistai.mcp.transport.SdkHttpStreamingTest`
72+
2973
## Build
30-
Eclipse PDE project — build via Eclipse or `mvn clean verify` from the repo root.
74+
Eclipse PDE project — for a full build, run `mvn clean verify` from the repo root via the shell (do not use Eclipse MCP tools for full builds).

0 commit comments

Comments
 (0)