genaicode 0.12.0 → 0.13.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 +1 -1
- package/dist/ai-service/service-configurations-types.d.ts +15 -1
- package/dist/ai-service/service-configurations-types.js +4 -0
- package/dist/ai-service/service-configurations-types.js.map +1 -1
- package/dist/cli/cli-params.d.ts +1 -0
- package/dist/cli/cli-params.js +1 -0
- package/dist/cli/cli-params.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/main/codegen-types.d.ts +2 -1
- package/dist/main/codegen.js +1 -0
- package/dist/main/codegen.js.map +1 -1
- package/dist/main/common/user-actions.d.ts +5 -2
- package/dist/main/common/user-actions.js +2 -2
- package/dist/main/common/user-actions.js.map +1 -1
- package/dist/main/config-lib.d.ts +12 -3
- package/dist/main/config-lib.js +61 -44
- package/dist/main/config-lib.js.map +1 -1
- package/dist/main/config-schema.d.ts +2 -1
- package/dist/main/config-schema.js +153 -19
- package/dist/main/config-schema.js.map +1 -1
- package/dist/main/config-types.d.ts +43 -16
- package/dist/main/config-types.js +3 -1
- package/dist/main/config-types.js.map +1 -1
- package/dist/main/config.d.ts +8 -2
- package/dist/main/config.js +59 -11
- package/dist/main/config.js.map +1 -1
- package/dist/main/plugin-loader.d.ts +1 -0
- package/dist/main/plugin-loader.js +28 -6
- package/dist/main/plugin-loader.js.map +1 -1
- package/dist/main/ui/backend/api.js +2 -0
- package/dist/main/ui/backend/api.js.map +1 -1
- package/dist/main/ui/backend/endpoints/config-endpoint.js +12 -0
- package/dist/main/ui/backend/endpoints/config-endpoint.js.map +1 -1
- package/dist/main/ui/backend/endpoints/question-endpoint.js +5 -4
- package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -1
- package/dist/main/ui/backend/service.d.ts +3 -1
- package/dist/main/ui/backend/service.js +4 -3
- package/dist/main/ui/backend/service.js.map +1 -1
- package/dist/main/ui/common/api-types.d.ts +1 -0
- package/dist/main/ui/common/api-types.js.map +1 -1
- package/dist/main/ui/frontend/assets/{index-BbIYZZub.js → index-C2MB0Z2i.js} +290 -260
- package/dist/main/ui/frontend/index.html +1 -1
- package/dist/main/ui/user-action-handlers.js +3 -1
- package/dist/main/ui/user-action-handlers.js.map +1 -1
- package/dist/prompt/function-calling-validate.js +1 -0
- package/dist/prompt/function-calling-validate.js.map +1 -1
- package/dist/prompt/function-calling.js +7 -4
- package/dist/prompt/function-calling.js.map +1 -1
- package/dist/prompt/function-defs/ask-question.d.ts +2 -2
- package/dist/prompt/function-defs/ask-question.js +60 -52
- package/dist/prompt/function-defs/ask-question.js.map +1 -1
- package/dist/prompt/function-defs/conversation-graph.d.ts +1 -1
- package/dist/prompt/function-defs/conversation-graph.js +4 -4
- package/dist/prompt/function-defs/conversation-graph.js.map +1 -1
- package/dist/prompt/function-defs/run-bash-command.d.ts +2 -0
- package/dist/prompt/function-defs/run-bash-command.js +29 -0
- package/dist/prompt/function-defs/run-bash-command.js.map +1 -0
- package/dist/prompt/function-defs/run-project-command.d.ts +2 -0
- package/dist/prompt/function-defs/run-project-command.js +37 -0
- package/dist/prompt/function-defs/run-project-command.js.map +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/send-message.js +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/send-message.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.d.ts +2 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js +31 -69
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.d.ts +2 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.js +282 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.js.map +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.d.ts +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.js +70 -3
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.d.ts +2 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.js +185 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.js.map +1 -0
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js +2 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js.map +1 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +31 -12
- package/dist/prompt/steps/step-ask-question/step-ask-question.d.ts +2 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question.js +16 -2
- package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
- package/dist/prompt/systemprompt.js +2 -2
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -74,7 +74,7 @@ GenAIcode supports various command-line options to customize its behavior:
|
|
|
74
74
|
|
|
75
75
|
## Configuration (.genaicoderc)
|
|
76
76
|
|
|
77
|
-
The `.genaicoderc` file allows you to configure various aspects of GenAIcode's behavior. Here are the available options:
|
|
77
|
+
The `.genaicoderc`(or `genaicode.config.ts` + js/mts etc.) file allows you to configure various aspects of GenAIcode's behavior. Here are the available options:
|
|
78
78
|
|
|
79
79
|
```json
|
|
80
80
|
{
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ModelSpecificSettings } from '../main/config-types.js';
|
|
2
1
|
/**
|
|
3
2
|
* Full service configuration interface.
|
|
4
3
|
* This interface includes sensitive data and should only be used internally.
|
|
@@ -64,3 +63,18 @@ export type ServiceConfigRequirements = {
|
|
|
64
63
|
export type PluginAiServiceType = `plugin:${string}`; /** Example: {@link ../../examples/genaicode_plugins/nonsense_action_handlers.ts} */
|
|
65
64
|
export type PluginActionType = `plugin:${string}`;
|
|
66
65
|
export type AiServiceType = 'vertex-ai' | 'ai-studio' | 'openai' | 'local-llm' | 'anthropic' | 'github-models' | PluginAiServiceType;
|
|
66
|
+
/**
|
|
67
|
+
* Configuration for specific model settings within a service.
|
|
68
|
+
*/
|
|
69
|
+
export interface ModelSpecificSettings {
|
|
70
|
+
/** System instructions specific to this model */
|
|
71
|
+
systemInstruction?: string[];
|
|
72
|
+
/** Maximum number of tokens to generate in the output specific to this model */
|
|
73
|
+
outputTokenLimit?: number;
|
|
74
|
+
/** Whether the model should use 'thinking' mode if available */
|
|
75
|
+
thinkingEnabled?: boolean;
|
|
76
|
+
/** The token budget for 'thinking' mode */
|
|
77
|
+
thinkingBudget?: number;
|
|
78
|
+
/** Temperature unsupported */
|
|
79
|
+
temperatureUnsupported?: boolean;
|
|
80
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-configurations-types.js","sourceRoot":"","sources":["../../src/ai-service/service-configurations-types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"service-configurations-types.js","sourceRoot":"","sources":["../../src/ai-service/service-configurations-types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
package/dist/cli/cli-params.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export declare const cheap: boolean;
|
|
|
17
17
|
export declare const interactive: boolean;
|
|
18
18
|
export declare const ui: boolean;
|
|
19
19
|
export declare const askQuestion: boolean;
|
|
20
|
+
export declare const initialActionType: string | undefined;
|
|
20
21
|
export declare const disableConversationSummary: boolean;
|
|
21
22
|
export declare const helpRequested: boolean;
|
|
22
23
|
export declare const temperature: number;
|
package/dist/cli/cli-params.js
CHANGED
|
@@ -41,6 +41,7 @@ export const cheap = params.includes('--cheap');
|
|
|
41
41
|
export const interactive = params.includes('--interactive');
|
|
42
42
|
export const ui = params.includes('--ui');
|
|
43
43
|
export const askQuestion = (interactive || ui) && !params.includes('--disable-ask-question'); // Default enabled in interactive/ui
|
|
44
|
+
export const initialActionType = params.find((param) => param.startsWith('--initial-action-type='))?.split('=')[1];
|
|
44
45
|
export const disableConversationSummary = params.includes('--disable-conversation-summary');
|
|
45
46
|
// Add support for --help option
|
|
46
47
|
export const helpRequested = params.includes('--help');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-params.js","sourceRoot":"","sources":["../../src/cli/cli-params.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-params.js","sourceRoot":"","sources":["../../src/cli/cli-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAErC,oCAAoC;AACpC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACzE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAEnE,2EAA2E;AAC3E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,iBAAiB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAE5E,wFAAwF;IACxF,IAAI,CAAC,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,8CAA8C;QAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnG,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;AAEtE,MAAM,CAAC,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhG,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3G,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;AAC5F,MAAM,CAAC,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAG3E,CAAC;AACd,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AAC5D,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC,oCAAoC;AAClI,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACnH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;AAE5F,gCAAgC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAEvD,wBAAwB;AACxB,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CACnF,CAAC,CAAC,iCAAiC;AAEpC,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AAEnH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM;KACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;KACxD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEvC,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAEnE,oDAAoD;AACpD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;AAEpH,IAAI,QAAQ,EAAE,CAAC;IACb,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,iBAAiB,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IACrC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;QACrD,SAAS,GAAG,QAAQ,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,IAAI,WAAW,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,MAAM,EAAE,CAAC;IACX,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;AACxD,CAAC;AAED,IAAI,KAAK,EAAE,CAAC;IACV,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;AACjF,CAAC;AAED,IAAI,WAAW,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,mBAAmB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;IACtB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;AAC3D,CAAC;AAED,IAAI,WAAW,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACzD,CAAC;KAAM,CAAC;IACN,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;AAC9D,CAAC;AAED,IAAI,WAAW,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC1C,CAAC;AAED,IAAI,wBAAwB,EAAE,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AACjD,CAAC;KAAM,CAAC;IACN,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;AAC1D,CAAC;AAED,kBAAkB;AAClB,IAAI,EAAE,EAAE,CAAC;IACP,OAAO,CAAC,GAAG,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;AACpD,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,4 +4,5 @@ export * from './prompt/steps/step-ask-question/step-ask-question-types.js';
|
|
|
4
4
|
export * from './main/common/content-bus.js';
|
|
5
5
|
export * from './prompt/steps/steps-types.js';
|
|
6
6
|
export * from './main/common/user-actions.js';
|
|
7
|
+
export { defineConfig } from './main/config-types.js';
|
|
7
8
|
export declare function getRcConfig(): Promise<import("./main/config-types.js").RcConfig>;
|
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@ export * from './prompt/steps/step-ask-question/step-ask-question-types.js';
|
|
|
4
4
|
export * from './main/common/content-bus.js';
|
|
5
5
|
export * from './prompt/steps/steps-types.js';
|
|
6
6
|
export * from './main/common/user-actions.js';
|
|
7
|
+
export { defineConfig } from './main/config-types.js';
|
|
7
8
|
export async function getRcConfig() {
|
|
8
9
|
const { rcConfig } = await import('./main/config.js');
|
|
9
10
|
return rcConfig;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6DAA6D,CAAC;AAC5E,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6DAA6D,CAAC;AAC5E,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { GenerateContentFunction } from '../ai-service/common-types.js';
|
|
2
2
|
import { FunctionCall, GenerateContentHook } from '../ai-service/common-types.js';
|
|
3
3
|
import { FunctionDef } from '../ai-service/common-types.js';
|
|
4
|
-
import { ActionHandler } from '../prompt/steps/step-ask-question/step-ask-question-types.js';
|
|
4
|
+
import { ActionHandler, ActionType } from '../prompt/steps/step-ask-question/step-ask-question-types.js';
|
|
5
5
|
import { AiServiceType, ServiceConfig } from '../ai-service/service-configurations-types.js';
|
|
6
6
|
export { type AiServiceType, type ServiceConfig } from '../ai-service/service-configurations-types.js';
|
|
7
7
|
export type ImagenType = 'vertex-ai' | 'dall-e';
|
|
@@ -30,6 +30,7 @@ export interface CodegenOptions {
|
|
|
30
30
|
contentMask?: string;
|
|
31
31
|
ignorePatterns?: string[];
|
|
32
32
|
askQuestion: boolean;
|
|
33
|
+
initialActionType?: ActionType;
|
|
33
34
|
interactive?: boolean;
|
|
34
35
|
ui?: boolean;
|
|
35
36
|
uiPort?: number;
|
package/dist/main/codegen.js
CHANGED
|
@@ -45,6 +45,7 @@ export async function runCodegen(isDev = false) {
|
|
|
45
45
|
contentMask: cliParams.contentMask,
|
|
46
46
|
ignorePatterns: cliParams.ignorePatterns,
|
|
47
47
|
askQuestion: cliParams.askQuestion,
|
|
48
|
+
initialActionType: cliParams.initialActionType,
|
|
48
49
|
disableCache: cliParams.disableCache,
|
|
49
50
|
interactive: cliParams.interactive,
|
|
50
51
|
ui: cliParams.ui,
|
package/dist/main/codegen.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/main/codegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/main/codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { PromptItemImage } from '../../ai-service/common-types';
|
|
2
|
+
import { ActionType } from '../../prompt/steps/step-ask-question/step-ask-question-types';
|
|
2
3
|
import { CodegenOptions } from '../codegen-types';
|
|
3
4
|
export type InputHandlerResponse = {
|
|
4
5
|
answer: string;
|
|
5
6
|
images?: PromptItemImage[];
|
|
6
7
|
options?: CodegenOptions;
|
|
8
|
+
selectedActionType?: ActionType | undefined;
|
|
7
9
|
};
|
|
8
|
-
type InputHandler = (prompt: string, message: string) => Promise<InputHandlerResponse>;
|
|
10
|
+
type InputHandler = (prompt: string, message: string, promptActionType?: boolean) => Promise<InputHandlerResponse>;
|
|
9
11
|
export type ConfirmHandlerResponse = {
|
|
10
12
|
confirmed: boolean | undefined;
|
|
11
13
|
options?: CodegenOptions;
|
|
12
14
|
answer?: string;
|
|
15
|
+
selectedActionType?: ActionType | undefined;
|
|
13
16
|
};
|
|
14
17
|
export type ConfirmHandlerProps = {
|
|
15
18
|
prompt: string;
|
|
@@ -20,7 +23,7 @@ export type ConfirmHandlerProps = {
|
|
|
20
23
|
};
|
|
21
24
|
type ConfirmHandler = (props: ConfirmHandlerProps) => Promise<ConfirmHandlerResponse>;
|
|
22
25
|
type SecretHandler = (prompt: string) => Promise<string | undefined>;
|
|
23
|
-
export declare function askUserForInput(prompt: string, message: string, options: CodegenOptions): Promise<InputHandlerResponse>;
|
|
26
|
+
export declare function askUserForInput(prompt: string, message: string, options: CodegenOptions, promptActionType?: boolean): Promise<InputHandlerResponse>;
|
|
24
27
|
export declare function askUserForConfirmation(prompt: string, defaultValue: boolean, options: CodegenOptions, confirmLabel?: string, declineLabel?: string): Promise<ConfirmHandlerResponse>;
|
|
25
28
|
export declare function askUserForConfirmationWithAnswer(prompt: string, confirmLabel: string, declineLabel: string, defaultValue: boolean, options: CodegenOptions): Promise<ConfirmHandlerResponse>;
|
|
26
29
|
export declare function askUserForSecret(prompt: string): Promise<string | undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export async function askUserForInput(prompt, message, options) {
|
|
2
|
-
return handleOptionsUpdate(await inputHandler(prompt, message), options);
|
|
1
|
+
export async function askUserForInput(prompt, message, options, promptActionType) {
|
|
2
|
+
return handleOptionsUpdate(await inputHandler(prompt, message, promptActionType), options);
|
|
3
3
|
}
|
|
4
4
|
export async function askUserForConfirmation(prompt, defaultValue, options, confirmLabel = 'Yes', declineLabel = 'No') {
|
|
5
5
|
return handleOptionsUpdate(await confirmHandler({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-actions.js","sourceRoot":"","sources":["../../../src/main/common/user-actions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"user-actions.js","sourceRoot":"","sources":["../../../src/main/common/user-actions.ts"],"names":[],"mappings":"AA+BA,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,OAAe,EACf,OAAuB,EACvB,gBAA0B;IAE1B,OAAO,mBAAmB,CAAC,MAAM,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAc,EACd,YAAqB,EACrB,OAAuB,EACvB,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,IAAI;IAEnB,OAAO,mBAAmB,CACxB,MAAM,cAAc,CAAC;QACnB,MAAM;QACN,YAAY;QACZ,YAAY;QACZ,aAAa,EAAE,KAAK;QACpB,YAAY;KACb,CAAC,EACF,OAAO,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAc,EACd,YAAoB,EACpB,YAAoB,EACpB,YAAqB,EACrB,OAAuB;IAEvB,OAAO,mBAAmB,CACxB,MAAM,cAAc,CAAC;QACnB,MAAM;QACN,YAAY;QACZ,YAAY;QACZ,aAAa,EAAE,IAAI;QACnB,YAAY;KACb,CAAC,EACF,OAAO,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAc;IACnD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,IAAI,YAA0B,CAAC;AAC/B,IAAI,cAA8B,CAAC;AACnC,IAAI,aAA4B,CAAC;AAEjC,MAAM,UAAU,oBAAoB,CAAC,OAAqB;IACxD,YAAY,GAAG,OAAO,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAuB;IAC5D,cAAc,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAsB;IAC1D,aAAa,GAAG,OAAO,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAyC,QAAW,EAAE,OAAuB;IACvG,IAAI,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;IACjD,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import { RcConfig } from './config-types.js';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Loads and parses the GenAIcode configuration using the c12 library.
|
|
4
|
+
* It searches for genaicode.config.{ts,js,mjs,cjs,json} or .genaicoderc files.
|
|
5
|
+
* If no configuration is found, it interactively prompts the user to create one.
|
|
6
|
+
*
|
|
7
|
+
* @returns A promise that resolves to the loaded configuration and its file path.
|
|
8
|
+
* @throws An error if no configuration is found and the session is not interactive or the user declines creation.
|
|
9
|
+
*/
|
|
10
|
+
export declare function loadConfiguration(): Promise<{
|
|
11
|
+
rcConfig: RcConfig;
|
|
12
|
+
configFilePath: string;
|
|
13
|
+
}>;
|
package/dist/main/config-lib.js
CHANGED
|
@@ -2,11 +2,12 @@ import fs from 'fs';
|
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import assert from 'node:assert';
|
|
4
4
|
import { confirm } from '@inquirer/prompts';
|
|
5
|
+
import { loadConfig } from 'c12';
|
|
5
6
|
import { isAncestorDirectory } from '../files/file-utils.js';
|
|
6
7
|
import { detectAndConfigureProfile, npmProfile } from '../project-profiles/index.js';
|
|
7
8
|
import { validateRcConfig } from './config-schema.js';
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
import { isPluginObject } from './plugin-loader.js';
|
|
10
|
+
const DEFAULT_CONFIG_FILENAME = '.genaicoderc';
|
|
10
11
|
/**
|
|
11
12
|
* Create initial .genaicoderc content with profile detection
|
|
12
13
|
*/
|
|
@@ -23,51 +24,67 @@ async function createInitialConfig(rcFilePath) {
|
|
|
23
24
|
};
|
|
24
25
|
return config;
|
|
25
26
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Loads and parses the GenAIcode configuration using the c12 library.
|
|
29
|
+
* It searches for genaicode.config.{ts,js,mjs,cjs,json} or .genaicoderc files.
|
|
30
|
+
* If no configuration is found, it interactively prompts the user to create one.
|
|
31
|
+
*
|
|
32
|
+
* @returns A promise that resolves to the loaded configuration and its file path.
|
|
33
|
+
* @throws An error if no configuration is found and the session is not interactive or the user declines creation.
|
|
34
|
+
*/
|
|
35
|
+
export async function loadConfiguration() {
|
|
36
|
+
const result = await loadConfig({
|
|
37
|
+
name: 'genaicode',
|
|
38
|
+
cwd: process.cwd(),
|
|
39
|
+
packageJson: false,
|
|
40
|
+
globalRc: false,
|
|
41
|
+
rcFile: false,
|
|
42
|
+
// optional: keep default config discovery too by returning undefined when .rc is absent
|
|
43
|
+
resolve: async (_, { cwd }) => {
|
|
44
|
+
if (!cwd)
|
|
45
|
+
return;
|
|
46
|
+
const p = path.join(cwd, '.genaicoderc');
|
|
47
|
+
if (!fs.existsSync(p))
|
|
48
|
+
return; // fall back to c12’s normal discovery
|
|
49
|
+
const txt = fs.readFileSync(p, 'utf-8');
|
|
50
|
+
return { config: JSON.parse(txt), configFile: p };
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
if (result && result.layers?.length) {
|
|
54
|
+
const rcConfig = result.config;
|
|
55
|
+
const configFilePath = result.configFile;
|
|
56
|
+
if (!configFilePath) {
|
|
57
|
+
throw new Error('Could not determine configuration file path from c12 result.');
|
|
58
|
+
}
|
|
59
|
+
validateRcConfig(rcConfig);
|
|
60
|
+
assert(rcConfig.rootDir, 'Root dir not configured');
|
|
61
|
+
const rootDir = path.resolve(path.dirname(configFilePath), rcConfig.rootDir);
|
|
62
|
+
assert(isAncestorDirectory(path.dirname(configFilePath), rootDir), 'Root dir is not located inside project directory');
|
|
63
|
+
if (rcConfig.plugins) {
|
|
64
|
+
assert(Array.isArray(rcConfig.plugins), 'Plugins must be an array of strings');
|
|
65
|
+
rcConfig.plugins.forEach((plugin, index) => {
|
|
66
|
+
assert(typeof plugin === 'string' || isPluginObject(plugin), `Plugin at index ${index} must be a string or Plugin type`);
|
|
67
|
+
});
|
|
50
68
|
}
|
|
51
|
-
|
|
69
|
+
return { rcConfig: { ...rcConfig, rootDir }, configFilePath };
|
|
52
70
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
assert(rcConfig.rootDir, 'Root dir not configured');
|
|
61
|
-
const rootDir = path.resolve(path.dirname(rcFilePath), rcConfig.rootDir);
|
|
62
|
-
assert(isAncestorDirectory(path.dirname(rcFilePath), rootDir), 'Root dir is not located inside project directory');
|
|
63
|
-
// Validate content using json schema
|
|
64
|
-
// Validate plugins array if it exists
|
|
65
|
-
if (rcConfig.plugins) {
|
|
66
|
-
assert(Array.isArray(rcConfig.plugins), 'Plugins must be an array of strings');
|
|
67
|
-
rcConfig.plugins.forEach((plugin, index) => {
|
|
68
|
-
assert(typeof plugin === 'string', `Plugin at index ${index} must be a string`);
|
|
71
|
+
// No config found, handle interactive creation
|
|
72
|
+
const isInteractiveSession = process.stdout.isTTY || process.argv.includes('--interactive') || process.argv.includes('--ui');
|
|
73
|
+
if (isInteractiveSession) {
|
|
74
|
+
const creationDir = process.cwd();
|
|
75
|
+
const createRcFile = await confirm({
|
|
76
|
+
message: `No GenAIcode config found. Would you like to create a default ${DEFAULT_CONFIG_FILENAME} in the current directory (${creationDir})?`,
|
|
77
|
+
default: false,
|
|
69
78
|
});
|
|
79
|
+
if (createRcFile) {
|
|
80
|
+
const newConfigPath = path.join(creationDir, DEFAULT_CONFIG_FILENAME);
|
|
81
|
+
const config = await createInitialConfig(newConfigPath);
|
|
82
|
+
fs.writeFileSync(newConfigPath, JSON.stringify(config, null, 2));
|
|
83
|
+
console.log(`Created ${DEFAULT_CONFIG_FILENAME} in ${creationDir} with detected project profile`);
|
|
84
|
+
const resolvedRootDir = path.resolve(path.dirname(newConfigPath), config.rootDir);
|
|
85
|
+
return { rcConfig: { ...config, rootDir: resolvedRootDir }, configFilePath: newConfigPath };
|
|
86
|
+
}
|
|
70
87
|
}
|
|
71
|
-
|
|
88
|
+
throw new Error('No GenAIcode config found in any parent directory.');
|
|
72
89
|
}
|
|
73
90
|
//# sourceMappingURL=config-lib.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-lib.js","sourceRoot":"","sources":["../../src/main/config-lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config-lib.js","sourceRoot":"","sources":["../../src/main/config-lib.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Schema } from 'jsonschema';
|
|
2
|
+
import { RcConfig } from './config-types.js';
|
|
2
3
|
/**
|
|
3
4
|
* This file contains the JSON schema for .genaicoderc configuration.
|
|
4
5
|
* The schema is based on the RcConfig interface and provides comprehensive
|
|
@@ -11,4 +12,4 @@ export declare const GENAICODERC_SCHEMA: Schema;
|
|
|
11
12
|
* Name of the virtual file that contains the schema
|
|
12
13
|
*/
|
|
13
14
|
export declare const SCHEMA_VIRTUAL_FILE_NAME = ".genaicoderc.schema.json";
|
|
14
|
-
export declare function validateRcConfig(rcConfig:
|
|
15
|
+
export declare function validateRcConfig(rcConfig: RcConfig): void;
|