solver-sdk 2.6.2 → 2.7.0
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.
- package/README.md +44 -55
- package/dist/cjs/api/chat-api/index.js +68 -68
- package/dist/cjs/api/chat-api/index.js.map +1 -1
- package/dist/cjs/api/projects-api.js +7 -0
- package/dist/cjs/api/projects-api.js.map +1 -1
- package/dist/cjs/code-solver-sdk.js +24 -2
- package/dist/cjs/code-solver-sdk.js.map +1 -1
- package/dist/cjs/constants/websocket-events.constants.js +5 -0
- package/dist/cjs/constants/websocket-events.constants.js.map +1 -1
- package/dist/cjs/constants/websocket-namespaces.constants.js +2 -0
- package/dist/cjs/constants/websocket-namespaces.constants.js.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces/websocket/vscode-command.interfaces.js +42 -0
- package/dist/cjs/interfaces/websocket/vscode-command.interfaces.js.map +1 -0
- package/dist/cjs/utils/http-client.js +11 -3
- package/dist/cjs/utils/http-client.js.map +1 -1
- package/dist/cjs/ws/file-editing-ws-client.js +162 -0
- package/dist/cjs/ws/file-editing-ws-client.js.map +1 -0
- package/dist/esm/api/chat-api/index.js +68 -68
- package/dist/esm/api/chat-api/index.js.map +1 -1
- package/dist/esm/api/projects-api.js +7 -0
- package/dist/esm/api/projects-api.js.map +1 -1
- package/dist/esm/code-solver-sdk.js +24 -2
- package/dist/esm/code-solver-sdk.js.map +1 -1
- package/dist/esm/constants/websocket-events.constants.js +5 -0
- package/dist/esm/constants/websocket-events.constants.js.map +1 -1
- package/dist/esm/constants/websocket-namespaces.constants.js +2 -0
- package/dist/esm/constants/websocket-namespaces.constants.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces/websocket/vscode-command.interfaces.js +39 -0
- package/dist/esm/interfaces/websocket/vscode-command.interfaces.js.map +1 -0
- package/dist/esm/utils/http-client.js +11 -3
- package/dist/esm/utils/http-client.js.map +1 -1
- package/dist/esm/ws/file-editing-ws-client.js +158 -0
- package/dist/esm/ws/file-editing-ws-client.js.map +1 -0
- package/dist/types/api/chat-api/index.d.ts +7 -0
- package/dist/types/api/chat-api/index.d.ts.map +1 -1
- package/dist/types/api/chat-api/interfaces.d.ts +7 -0
- package/dist/types/api/chat-api/interfaces.d.ts.map +1 -1
- package/dist/types/api/chat-api/models.d.ts +10 -1
- package/dist/types/api/chat-api/models.d.ts.map +1 -1
- package/dist/types/api/projects-api.d.ts +18 -0
- package/dist/types/api/projects-api.d.ts.map +1 -1
- package/dist/types/code-solver-sdk.d.ts +8 -0
- package/dist/types/code-solver-sdk.d.ts.map +1 -1
- package/dist/types/constants/websocket-events.constants.d.ts +5 -1
- package/dist/types/constants/websocket-events.constants.d.ts.map +1 -1
- package/dist/types/constants/websocket-namespaces.constants.d.ts +3 -1
- package/dist/types/constants/websocket-namespaces.constants.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/interfaces/websocket/vscode-command.interfaces.d.ts +56 -0
- package/dist/types/interfaces/websocket/vscode-command.interfaces.d.ts.map +1 -0
- package/dist/types/utils/http-client.d.ts.map +1 -1
- package/dist/types/ws/file-editing-ws-client.d.ts +85 -0
- package/dist/types/ws/file-editing-ws-client.d.ts.map +1 -0
- package/docs/ARCHITECTURE.md +268 -0
- package/docs/QUICK_START.md +126 -0
- package/docs/README.md +25 -279
- package/docs/VSCODE_INTEGRATION.md +432 -0
- package/docs/WEBSOCKET.md +49 -10
- package/package.json +1 -1
- package/docs/API_REFERENCE.md +0 -703
- package/docs/INTEGRATION_GUIDE_V2.5.md +0 -516
- package/docs/README_V2.5.md +0 -266
package/docs/README_V2.5.md
DELETED
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
# AI Solver SDK v2.5.0
|
|
2
|
-
|
|
3
|
-
JavaScript/TypeScript SDK для взаимодействия с AI Solver Backend API - умной системой работы с кодом, reasoning и AI-ассистентами.
|
|
4
|
-
|
|
5
|
-
## Установка
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install @ai-solver/sdk
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Основные возможности
|
|
12
|
-
|
|
13
|
-
- **🚀 Проекты**: создание, индексация и управление
|
|
14
|
-
- **🧠 AI Reasoning**: умное рассуждение в контексте кода
|
|
15
|
-
- **💬 AI Chat**: взаимодействие с Claude 4 thinking + tools
|
|
16
|
-
- **🔍 Поиск**: семантический поиск по коду
|
|
17
|
-
- **⚡ WebSocket**: real-time события и streaming
|
|
18
|
-
- **🌐 Мультиплатформенность**: Browser + Node.js
|
|
19
|
-
|
|
20
|
-
## Быстрый старт v2.5.0
|
|
21
|
-
|
|
22
|
-
```javascript
|
|
23
|
-
import { CodeSolverSDK } from '@ai-solver/sdk';
|
|
24
|
-
|
|
25
|
-
// Рекомендуемый способ инициализации
|
|
26
|
-
const sdk = CodeSolverSDK.create({
|
|
27
|
-
baseURL: 'http://localhost:3000',
|
|
28
|
-
apiKey: 'dev_sk_test_12345678',
|
|
29
|
-
autoConnect: false // Контролируемые WebSocket подключения
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
// Проверка всех endpoints
|
|
33
|
-
const results = await sdk.diagnoseAPI();
|
|
34
|
-
console.log('API статус:', results);
|
|
35
|
-
|
|
36
|
-
// Создание проекта
|
|
37
|
-
const project = await sdk.projects.create({
|
|
38
|
-
name: 'My AI Project',
|
|
39
|
-
path: '/path/to/project',
|
|
40
|
-
description: 'Test project for AI Solver'
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
// Запуск индексации
|
|
44
|
-
await sdk.projects.startIndexing(project.id);
|
|
45
|
-
|
|
46
|
-
// WebSocket события (подключение по требованию)
|
|
47
|
-
await sdk.projects.connectWebSocket();
|
|
48
|
-
sdk.projects.onIndexingProgress((progress) => {
|
|
49
|
-
console.log(`Прогресс: ${progress.percentage}%`);
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
// AI Reasoning процесс
|
|
53
|
-
const reasoning = await sdk.reasoning.create({
|
|
54
|
-
projectId: project.id,
|
|
55
|
-
query: 'Проанализируй архитектуру этого проекта'
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
await sdk.reasoning.start(reasoning.id);
|
|
59
|
-
|
|
60
|
-
// Chat с Claude 4 thinking
|
|
61
|
-
const response = await sdk.chat.stream([
|
|
62
|
-
{
|
|
63
|
-
role: 'user',
|
|
64
|
-
content: 'Объясни как работает эта функция',
|
|
65
|
-
tools: createStandardDevelopmentTools()
|
|
66
|
-
}
|
|
67
|
-
], {
|
|
68
|
-
projectId: project.id,
|
|
69
|
-
model: 'claude-3-5-sonnet-20241022',
|
|
70
|
-
thinking: true
|
|
71
|
-
});
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
## Новые возможности v2.5.0
|
|
75
|
-
|
|
76
|
-
### ✨ **Complex Content Support**
|
|
77
|
-
```javascript
|
|
78
|
-
// Поддержка сложного контента
|
|
79
|
-
const message = {
|
|
80
|
-
role: 'user',
|
|
81
|
-
content: [
|
|
82
|
-
{ type: 'text', text: 'Анализируй этот код:' },
|
|
83
|
-
{ type: 'text', text: 'function example() { return 42; }' },
|
|
84
|
-
{ type: 'tool_use', id: 'tool_1', name: 'code_analyzer' }
|
|
85
|
-
]
|
|
86
|
-
};
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### 🔧 **Tool Choice Validation**
|
|
90
|
-
```javascript
|
|
91
|
-
// Только auto/none с thinking
|
|
92
|
-
const response = await sdk.chat.stream(messages, {
|
|
93
|
-
thinking: true,
|
|
94
|
-
tool_choice: { type: 'auto' } // ✅ Работает
|
|
95
|
-
// tool_choice: { type: 'any' } // ❌ Ошибка с thinking
|
|
96
|
-
});
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### 🔐 **Signature Preservation**
|
|
100
|
-
```javascript
|
|
101
|
-
// Автоматическое сохранение криптографических подписей
|
|
102
|
-
sdk.chat.onThinkingSignature((signature) => {
|
|
103
|
-
console.log('Подпись thinking блока:', signature);
|
|
104
|
-
});
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
### 🌊 **Streaming Events**
|
|
108
|
-
```javascript
|
|
109
|
-
// Новые события streaming
|
|
110
|
-
sdk.chat.onTextDelta((text) => console.log('Текст:', text));
|
|
111
|
-
sdk.chat.onThinkingDelta((thinking) => console.log('Мышление:', thinking));
|
|
112
|
-
sdk.chat.onSignatureDelta((sig) => console.log('Подпись:', sig));
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
## Контролируемые WebSocket
|
|
116
|
-
|
|
117
|
-
```javascript
|
|
118
|
-
// v2.5.0 - полный контроль подключений
|
|
119
|
-
const sdk = CodeSolverSDK.create({
|
|
120
|
-
autoConnect: false // Важно!
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
// Подключение только когда нужно
|
|
124
|
-
await sdk.projects.connectWebSocket();
|
|
125
|
-
await sdk.reasoning.connectWebSocket();
|
|
126
|
-
await sdk.chat.connectWebSocket();
|
|
127
|
-
|
|
128
|
-
// Отключение когда не нужно
|
|
129
|
-
await sdk.projects.disconnectWebSocket();
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
## API Алиасы для совместимости
|
|
133
|
-
|
|
134
|
-
```javascript
|
|
135
|
-
// Полные названия (рекомендуемые)
|
|
136
|
-
await sdk.reasoning.createReasoning(data);
|
|
137
|
-
await sdk.reasoning.startReasoning(id);
|
|
138
|
-
await sdk.reasoning.stopReasoning(id);
|
|
139
|
-
|
|
140
|
-
// Короткие алиасы
|
|
141
|
-
await sdk.reasoning.create(data);
|
|
142
|
-
await sdk.reasoning.start(id);
|
|
143
|
-
await sdk.reasoning.stop(id);
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
## Helper функции
|
|
147
|
-
|
|
148
|
-
```javascript
|
|
149
|
-
import {
|
|
150
|
-
createStandardDevelopmentTools,
|
|
151
|
-
extractThinkingBlocks,
|
|
152
|
-
extractToolUseBlocks,
|
|
153
|
-
createToolResultMessage,
|
|
154
|
-
createComplexAssistantMessage
|
|
155
|
-
} from '@ai-solver/sdk';
|
|
156
|
-
|
|
157
|
-
// 8 стандартных инструментов как в Cursor
|
|
158
|
-
const tools = createStandardDevelopmentTools();
|
|
159
|
-
|
|
160
|
-
// Извлечение thinking блоков
|
|
161
|
-
const thinkingBlocks = extractThinkingBlocks(response);
|
|
162
|
-
|
|
163
|
-
// Создание сложных сообщений
|
|
164
|
-
const complexMessage = createComplexAssistantMessage(
|
|
165
|
-
'Результат анализа:',
|
|
166
|
-
thinkingBlocks,
|
|
167
|
-
toolUseBlocks
|
|
168
|
-
);
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
## Диагностика и debugging
|
|
172
|
-
|
|
173
|
-
```javascript
|
|
174
|
-
// Проверка всех endpoints
|
|
175
|
-
const results = await sdk.diagnoseAPI();
|
|
176
|
-
console.log('Доступные endpoints:', results);
|
|
177
|
-
|
|
178
|
-
// Детальная диагностика
|
|
179
|
-
const detailed = await sdk.diagnoseFull();
|
|
180
|
-
console.log('Статус backend:', detailed);
|
|
181
|
-
|
|
182
|
-
// Проверка WebSocket
|
|
183
|
-
const wsStatus = await sdk.diagnoseWebSocket();
|
|
184
|
-
console.log('WebSocket статус:', wsStatus);
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
## Обработка ошибок
|
|
188
|
-
|
|
189
|
-
```javascript
|
|
190
|
-
try {
|
|
191
|
-
const project = await sdk.projects.create(projectData);
|
|
192
|
-
} catch (error) {
|
|
193
|
-
if (error.status === 404) {
|
|
194
|
-
console.error('Backend недоступен');
|
|
195
|
-
} else if (error.status === 400) {
|
|
196
|
-
console.error('Некорректные данные:', error.message);
|
|
197
|
-
} else {
|
|
198
|
-
console.error('Неожиданная ошибка:', error);
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
## Environment Configuration
|
|
204
|
-
|
|
205
|
-
```javascript
|
|
206
|
-
// Production
|
|
207
|
-
const sdk = CodeSolverSDK.create({
|
|
208
|
-
baseURL: 'https://api.ai-solver.com',
|
|
209
|
-
apiKey: process.env.AI_SOLVER_API_KEY,
|
|
210
|
-
autoConnect: false
|
|
211
|
-
});
|
|
212
|
-
|
|
213
|
-
// Development
|
|
214
|
-
const sdk = CodeSolverSDK.create({
|
|
215
|
-
baseURL: 'http://localhost:3000',
|
|
216
|
-
apiKey: 'dev_sk_test_12345678',
|
|
217
|
-
autoConnect: false
|
|
218
|
-
});
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
## Миграция с v2.4.x
|
|
222
|
-
|
|
223
|
-
### Изменения инициализации:
|
|
224
|
-
```javascript
|
|
225
|
-
// ❌ v2.4.x (deprecated):
|
|
226
|
-
const sdk = new CodeSolverSDK(options);
|
|
227
|
-
await sdk.initialize();
|
|
228
|
-
|
|
229
|
-
// ✅ v2.5.0:
|
|
230
|
-
const sdk = CodeSolverSDK.create(options);
|
|
231
|
-
// initialize() больше не нужен
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
### Изменения методов:
|
|
235
|
-
```javascript
|
|
236
|
-
// ❌ v2.4.x:
|
|
237
|
-
await sdk.projects.createProject(name, path, options);
|
|
238
|
-
|
|
239
|
-
// ✅ v2.5.0:
|
|
240
|
-
await sdk.projects.create({ name, path, description });
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
### WebSocket изменения:
|
|
244
|
-
```javascript
|
|
245
|
-
// ❌ v2.4.x (автоподключение):
|
|
246
|
-
const sdk = new CodeSolverSDK(options); // Автоматически подключался
|
|
247
|
-
|
|
248
|
-
// ✅ v2.5.0 (контролируемое):
|
|
249
|
-
const sdk = CodeSolverSDK.create({ autoConnect: false });
|
|
250
|
-
await sdk.projects.connectWebSocket(); // Явное подключение
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
## Поддерживаемые платформы
|
|
254
|
-
|
|
255
|
-
- **Node.js**: 16.x и выше
|
|
256
|
-
- **Browsers**: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+
|
|
257
|
-
- **TypeScript**: 4.5+ (опционально)
|
|
258
|
-
|
|
259
|
-
## Лицензия
|
|
260
|
-
|
|
261
|
-
MIT
|
|
262
|
-
|
|
263
|
-
---
|
|
264
|
-
|
|
265
|
-
**Обновлено для AI Solver SDK v2.5.0**
|
|
266
|
-
**Совместимо с AI Solver Backend v1.0.0**
|