@commitsage/mcp-server 1.0.1 → 1.1.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.
Files changed (43) hide show
  1. package/README.md +56 -0
  2. package/dist/models/errors.d.ts +0 -12
  3. package/dist/models/errors.d.ts.map +1 -1
  4. package/dist/models/errors.js +0 -24
  5. package/dist/models/errors.js.map +1 -1
  6. package/dist/models/types.d.ts +0 -19
  7. package/dist/models/types.d.ts.map +1 -1
  8. package/dist/models/types.js.map +1 -1
  9. package/dist/server/mcpServer.d.ts.map +1 -1
  10. package/dist/server/mcpServer.js +2 -6
  11. package/dist/server/mcpServer.js.map +1 -1
  12. package/dist/server/tools.d.ts +1 -4
  13. package/dist/server/tools.d.ts.map +1 -1
  14. package/dist/server/tools.js +20 -18
  15. package/dist/server/tools.js.map +1 -1
  16. package/dist/services/baseAIService.d.ts +15 -26
  17. package/dist/services/baseAIService.d.ts.map +1 -1
  18. package/dist/services/baseAIService.js +53 -62
  19. package/dist/services/baseAIService.js.map +1 -1
  20. package/dist/services/codestralService.d.ts.map +1 -1
  21. package/dist/services/codestralService.js +11 -35
  22. package/dist/services/codestralService.js.map +1 -1
  23. package/dist/services/geminiService.d.ts +2 -6
  24. package/dist/services/geminiService.d.ts.map +1 -1
  25. package/dist/services/geminiService.js +61 -84
  26. package/dist/services/geminiService.js.map +1 -1
  27. package/dist/services/ollamaService.d.ts +1 -2
  28. package/dist/services/ollamaService.d.ts.map +1 -1
  29. package/dist/services/ollamaService.js +16 -35
  30. package/dist/services/ollamaService.js.map +1 -1
  31. package/dist/services/openaiService.d.ts +0 -1
  32. package/dist/services/openaiService.d.ts.map +1 -1
  33. package/dist/services/openaiService.js +12 -33
  34. package/dist/services/openaiService.js.map +1 -1
  35. package/dist/utils/config.d.ts +1 -0
  36. package/dist/utils/config.d.ts.map +1 -1
  37. package/dist/utils/config.js +3 -0
  38. package/dist/utils/config.js.map +1 -1
  39. package/dist/utils/httpUtils.d.ts +1 -2
  40. package/dist/utils/httpUtils.d.ts.map +1 -1
  41. package/dist/utils/httpUtils.js +7 -8
  42. package/dist/utils/httpUtils.js.map +1 -1
  43. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"openaiService.d.ts","sourceRoot":"","sources":["../../src/services/openaiService.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAuBrE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAa;WAElC,qBAAqB,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,GAAE,MAAU,GAClB,OAAO,CAAC,aAAa,CAAC;WAmDZ,oBAAoB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC;IAwBpB,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAIpC"}
1
+ {"version":3,"file":"openaiService.d.ts","sourceRoot":"","sources":["../../src/services/openaiService.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAmBrE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAa;WAElC,qBAAqB,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,GAAE,MAAU,GAClB,OAAO,CAAC,aAAa,CAAC;WA2BZ,oBAAoB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC;IAwBpB,OAAO,CAAC,MAAM,CAAC,oBAAoB;CAIpC"}
@@ -1,47 +1,26 @@
1
1
  import axios from "axios";
2
2
  import { Logger } from "../utils/logger.js";
3
3
  import { ConfigService } from "../utils/config.js";
4
- import { ApiKeyInvalidError } from "../models/errors.js";
5
4
  import { BaseAIService } from "./baseAIService.js";
6
5
  import { HttpUtils } from "../utils/httpUtils.js";
7
- import { RetryUtils } from "../utils/retryUtils.js";
8
- // AI сервис для работы с OpenAI/совместимыми API
9
- // Реализует интерфейс IModelService со статическими методами (включая fetchAvailableModels)
10
6
  export class OpenAIService {
11
- static chatCompletionsPath = "/chat/completions";
12
7
  static modelsPath = "/models";
13
8
  static async generateCommitMessage(prompt, progress, attempt = 1) {
14
- try {
15
- const apiKey = ConfigService.getApiKey("openai");
16
- const model = ConfigService.getOpenAIModel();
17
- const baseUrl = ConfigService.getOpenAIBaseUrl();
18
- const payload = {
9
+ const apiKey = ConfigService.getApiKey("openai");
10
+ const model = ConfigService.getOpenAIModel();
11
+ const baseUrl = ConfigService.getOpenAIBaseUrl();
12
+ return BaseAIService.generateWithRetry({
13
+ url: `${baseUrl}/chat/completions`,
14
+ payload: {
19
15
  model,
20
16
  messages: [{ role: "user", content: prompt }],
21
17
  temperature: 0.7,
22
18
  maxTokens: 1024,
23
- };
24
- await RetryUtils.updateProgressForAttempt(progress, attempt);
25
- const headers = HttpUtils.createRequestHeaders(apiKey);
26
- const requestConfig = HttpUtils.createRequestConfig(headers);
27
- const response = await axios.post(`${baseUrl}/chat/completions`, payload, requestConfig);
28
- progress.report({
29
- message: "Processing generated message...",
30
- increment: 90,
31
- });
32
- const message = this.extractCommitMessage(response.data);
33
- void Logger.log(`Commit message generated using ${model} model`);
34
- return { message, model };
35
- }
36
- catch (error) {
37
- // Обработка специальных случаев для OpenAI
38
- const axiosError = error;
39
- if (axiosError.response?.status === 401) {
40
- throw new ApiKeyInvalidError("OpenAI");
41
- }
42
- // Используем retry utils для retry логики
43
- return RetryUtils.handleGenerationError(error, prompt, progress, attempt, this.generateCommitMessage.bind(this), BaseAIService.handleOpenAIError.bind(BaseAIService));
44
- }
19
+ },
20
+ headers: HttpUtils.createRequestHeaders(apiKey),
21
+ model,
22
+ providerName: "OpenAI",
23
+ }, (data) => this.extractCommitMessage(data), (error) => BaseAIService.handleHttpError(error, "OpenAI API"), progress, attempt, this.generateCommitMessage.bind(this), prompt);
45
24
  }
46
25
  static async fetchAvailableModels(baseUrl, apiKey) {
47
26
  try {
@@ -53,7 +32,7 @@ export class OpenAIService {
53
32
  }
54
33
  const models = response.data.data.map((model) => model.id);
55
34
  if (models.length > 0) {
56
- void Logger.log(`Successfully fetched ${models.length} models`);
35
+ Logger.log(`Successfully fetched ${models.length} models`);
57
36
  }
58
37
  return models;
59
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openaiService.js","sourceRoot":"","sources":["../../src/services/openaiService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openaiService.js","sourceRoot":"","sources":["../../src/services/openaiService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAiBlD,MAAM,OAAO,aAAa;IAChB,MAAM,CAAU,UAAU,GAAG,SAAS,CAAC;IAE/C,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAChC,MAAc,EACd,QAA0B,EAC1B,UAAkB,CAAC;QAEnB,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,aAAa,CAAC,gBAAgB,EAAE,CAAC;QAEjD,OAAO,aAAa,CAAC,iBAAiB,CACpC;YACE,GAAG,EAAE,GAAG,OAAO,mBAAmB;YAClC,OAAO,EAAE;gBACP,KAAK;gBACL,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC7C,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,IAAI;aAChB;YACD,OAAO,EAAE,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC;YAC/C,KAAK;YACL,YAAY,EAAE,QAAQ;SACvB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EACzC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,EAC7D,QAAQ,EACR,OAAO,EACP,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EACrC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAC/B,OAAe,EACf,MAAc;QAEd,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,GAAG,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAC9B,aAAa,CACd,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzB,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,QAAwB;QAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;QACxD,OAAO,aAAa,CAAC,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC"}
@@ -21,6 +21,7 @@ export declare class ConfigService {
21
21
  static getOllamaBaseUrl(): string;
22
22
  static getOllamaModel(): string;
23
23
  static getApiRequestTimeout(): number;
24
+ static getOnlyStaged(): boolean;
24
25
  static useCustomInstructions(): boolean;
25
26
  static getCustomInstructions(): string;
26
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,SAAS,GACT,UAAU,GACV,SAAS,CAAC;AACd,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,MAAM,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAExE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAkC;IAExD,MAAM,CAAC,UAAU,IAAI,IAAI;IAiBzB,MAAM,CAAC,WAAW,IAAI,YAAY;IASlC,MAAM,CAAC,eAAe,IAAI,YAAY;IAKtC,MAAM,CAAC,iBAAiB,IAAI,cAAc;IAK1C,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAE,YAAiC,GAAG,MAAM;IAUrE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO;IAIjD,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,gBAAgB,IAAI,MAAM;IAIjC,MAAM,CAAC,iBAAiB,IAAI,MAAM;IAIlC,MAAM,CAAC,gBAAgB,IAAI,MAAM;IAIjC,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,oBAAoB,IAAI,MAAM;IAKrC,MAAM,CAAC,qBAAqB,IAAI,OAAO;IAIvC,MAAM,CAAC,qBAAqB,IAAI,MAAM;CAGvC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,SAAS,GACT,UAAU,GACV,SAAS,CAAC;AACd,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,MAAM,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAExE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAkC;IAExD,MAAM,CAAC,UAAU,IAAI,IAAI;IAiBzB,MAAM,CAAC,WAAW,IAAI,YAAY;IASlC,MAAM,CAAC,eAAe,IAAI,YAAY;IAKtC,MAAM,CAAC,iBAAiB,IAAI,cAAc;IAK1C,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAE,YAAiC,GAAG,MAAM;IAUrE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO;IAIjD,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,gBAAgB,IAAI,MAAM;IAIjC,MAAM,CAAC,iBAAiB,IAAI,MAAM;IAIlC,MAAM,CAAC,gBAAgB,IAAI,MAAM;IAIjC,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B,MAAM,CAAC,oBAAoB,IAAI,MAAM;IAKrC,MAAM,CAAC,aAAa,IAAI,OAAO;IAI/B,MAAM,CAAC,qBAAqB,IAAI,OAAO;IAIvC,MAAM,CAAC,qBAAqB,IAAI,MAAM;CAGvC"}
@@ -70,6 +70,9 @@ export class ConfigService {
70
70
  const timeout = parseInt(process.env.API_REQUEST_TIMEOUT || "30", 10);
71
71
  return timeout === -1 ? 0 : timeout * 1000; // Convert to milliseconds
72
72
  }
73
+ static getOnlyStaged() {
74
+ return process.env.ONLY_STAGED === "true";
75
+ }
73
76
  static useCustomInstructions() {
74
77
  return process.env.USE_CUSTOM_INSTRUCTIONS === "true";
75
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,8 @@
2
2
  * HTTP utilities for MCP server
3
3
  * Adapted from VSCode extension
4
4
  */
5
- import { AxiosError } from 'axios';
5
+ import { AxiosError } from "axios";
6
6
  export declare class HttpUtils {
7
- static readonly DEFAULT_TIMEOUT = 30000;
8
7
  /**
9
8
  * Create request headers with API key
10
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"httpUtils.d.ts","sourceRoot":"","sources":["../../src/utils/httpUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,qBAAa,SAAS;IACpB,MAAM,CAAC,QAAQ,CAAC,eAAe,SAAS;IAExC;;OAEG;IACH,MAAM,CAAC,oBAAoB,CACzB,MAAM,CAAC,EAAE,MAAM,EACf,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACzC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAazB,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAQnC;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,MAAM,GACf;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAOnE;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IAUjD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE;QACvC,KAAK,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9B,GAAG,MAAM,GAAG,SAAS;CAGvB"}
1
+ {"version":3,"file":"httpUtils.d.ts","sourceRoot":"","sources":["../../src/utils/httpUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,qBAAa,SAAS;IACpB;;OAEG;IACH,MAAM,CAAC,oBAAoB,CACzB,MAAM,CAAC,EAAE,MAAM,EACf,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACzC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAazB,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAQnC;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,MAAM,GACf;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAOnE;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IAUjD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE;QACvC,KAAK,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9B,GAAG,MAAM,GAAG,SAAS;CAGvB"}
@@ -2,19 +2,18 @@
2
2
  * HTTP utilities for MCP server
3
3
  * Adapted from VSCode extension
4
4
  */
5
- import { ConfigService } from './config.js';
5
+ import { ConfigService } from "./config.js";
6
6
  export class HttpUtils {
7
- static DEFAULT_TIMEOUT = 30000;
8
7
  /**
9
8
  * Create request headers with API key
10
9
  */
11
10
  static createRequestHeaders(apiKey, additionalHeaders) {
12
11
  const headers = {
13
- 'content-type': 'application/json',
12
+ "content-type": "application/json",
14
13
  ...additionalHeaders,
15
14
  };
16
15
  if (apiKey) {
17
- headers['Authorization'] = `Bearer ${apiKey}`;
16
+ headers["Authorization"] = `Bearer ${apiKey}`;
18
17
  }
19
18
  return headers;
20
19
  }
@@ -38,10 +37,10 @@ export class HttpUtils {
38
37
  * Check if error is a network error
39
38
  */
40
39
  static isNetworkError(error) {
41
- return (error.code === 'ECONNREFUSED' ||
42
- error.code === 'ETIMEDOUT' ||
43
- error.message?.includes('ECONNREFUSED') ||
44
- error.message?.includes('ETIMEDOUT') ||
40
+ return (error.code === "ECONNREFUSED" ||
41
+ error.code === "ETIMEDOUT" ||
42
+ error.message?.includes("ECONNREFUSED") ||
43
+ error.message?.includes("ETIMEDOUT") ||
45
44
  false);
46
45
  }
47
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"httpUtils.js","sourceRoot":"","sources":["../../src/utils/httpUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,SAAS;IACpB,MAAM,CAAU,eAAe,GAAG,KAAK,CAAC;IAExC;;OAEG;IACH,MAAM,CAAC,oBAAoB,CACzB,MAAe,EACf,iBAA0C;QAE1C,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,GAAG,iBAAiB;SACrB,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,MAAM,CAAC,oBAAoB;QACjC,MAAM,SAAS,GAAG,aAAa,CAAC,oBAAoB,EAAE,CAAC;QACvD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,CAAC,aAAa;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,OAA+B,EAC/B,OAAgB;QAEhB,OAAO;YACL,OAAO;YACP,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE;SACvE,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAiB;QACrC,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,cAAc;YAC7B,KAAK,CAAC,IAAI,KAAK,WAAW;YAC1B,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC;YACvC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC;YACpC,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAE1B;QACC,OAAO,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC;IACtC,CAAC"}
1
+ {"version":3,"file":"httpUtils.js","sourceRoot":"","sources":["../../src/utils/httpUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,SAAS;IACpB;;OAEG;IACH,MAAM,CAAC,oBAAoB,CACzB,MAAe,EACf,iBAA0C;QAE1C,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,GAAG,iBAAiB;SACrB,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,MAAM,CAAC,oBAAoB;QACjC,MAAM,SAAS,GAAG,aAAa,CAAC,oBAAoB,EAAE,CAAC;QACvD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,CAAC,aAAa;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,OAA+B,EAC/B,OAAgB;QAEhB,OAAO;YACL,OAAO;YACP,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE;SACvE,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAiB;QACrC,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,cAAc;YAC7B,KAAK,CAAC,IAAI,KAAK,WAAW;YAC1B,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC;YACvC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC;YACpC,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAE1B;QACC,OAAO,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC;IACtC,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commitsage/mcp-server",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "MCP server for CommitSage - AI-powered commit message generation with Gemini, OpenAI, Codestral, and Ollama support",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",