mycontext-cli 0.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.
- package/README.md +440 -0
- package/dist/cli/src/agents/implementations/CodeGenSubAgent.d.ts +43 -0
- package/dist/cli/src/agents/implementations/CodeGenSubAgent.d.ts.map +1 -0
- package/dist/cli/src/agents/implementations/CodeGenSubAgent.js +1440 -0
- package/dist/cli/src/agents/implementations/CodeGenSubAgent.js.map +1 -0
- package/dist/cli/src/agents/implementations/DocsSubAgent.d.ts +35 -0
- package/dist/cli/src/agents/implementations/DocsSubAgent.d.ts.map +1 -0
- package/dist/cli/src/agents/implementations/DocsSubAgent.js +351 -0
- package/dist/cli/src/agents/implementations/DocsSubAgent.js.map +1 -0
- package/dist/cli/src/agents/implementations/QASubAgent.d.ts +31 -0
- package/dist/cli/src/agents/implementations/QASubAgent.d.ts.map +1 -0
- package/dist/cli/src/agents/implementations/QASubAgent.js +190 -0
- package/dist/cli/src/agents/implementations/QASubAgent.js.map +1 -0
- package/dist/cli/src/agents/interfaces/SubAgent.d.ts +157 -0
- package/dist/cli/src/agents/interfaces/SubAgent.d.ts.map +1 -0
- package/dist/cli/src/agents/interfaces/SubAgent.js +7 -0
- package/dist/cli/src/agents/interfaces/SubAgent.js.map +1 -0
- package/dist/cli/src/agents/orchestrator/SubAgentOrchestrator.d.ts +59 -0
- package/dist/cli/src/agents/orchestrator/SubAgentOrchestrator.d.ts.map +1 -0
- package/dist/cli/src/agents/orchestrator/SubAgentOrchestrator.js +305 -0
- package/dist/cli/src/agents/orchestrator/SubAgentOrchestrator.js.map +1 -0
- package/dist/cli/src/agents/personalities/definitions.d.ts +34 -0
- package/dist/cli/src/agents/personalities/definitions.d.ts.map +1 -0
- package/dist/cli/src/agents/personalities/definitions.js +360 -0
- package/dist/cli/src/agents/personalities/definitions.js.map +1 -0
- package/dist/cli/src/cli.d.ts +3 -0
- package/dist/cli/src/cli.d.ts.map +1 -0
- package/dist/cli/src/cli.js +286 -0
- package/dist/cli/src/cli.js.map +1 -0
- package/dist/cli/src/commands/auth.d.ts +23 -0
- package/dist/cli/src/commands/auth.d.ts.map +1 -0
- package/dist/cli/src/commands/auth.js +212 -0
- package/dist/cli/src/commands/auth.js.map +1 -0
- package/dist/cli/src/commands/generate-components.d.ts +28 -0
- package/dist/cli/src/commands/generate-components.d.ts.map +1 -0
- package/dist/cli/src/commands/generate-components.js +680 -0
- package/dist/cli/src/commands/generate-components.js.map +1 -0
- package/dist/cli/src/commands/generate.d.ts +108 -0
- package/dist/cli/src/commands/generate.d.ts.map +1 -0
- package/dist/cli/src/commands/generate.js +1984 -0
- package/dist/cli/src/commands/generate.js.map +1 -0
- package/dist/cli/src/commands/init.d.ts +13 -0
- package/dist/cli/src/commands/init.d.ts.map +1 -0
- package/dist/cli/src/commands/init.js +91 -0
- package/dist/cli/src/commands/init.js.map +1 -0
- package/dist/cli/src/commands/list.d.ts +17 -0
- package/dist/cli/src/commands/list.d.ts.map +1 -0
- package/dist/cli/src/commands/list.js +209 -0
- package/dist/cli/src/commands/list.js.map +1 -0
- package/dist/cli/src/commands/preview.d.ts +23 -0
- package/dist/cli/src/commands/preview.d.ts.map +1 -0
- package/dist/cli/src/commands/preview.js +1200 -0
- package/dist/cli/src/commands/preview.js.map +1 -0
- package/dist/cli/src/commands/status.d.ts +21 -0
- package/dist/cli/src/commands/status.d.ts.map +1 -0
- package/dist/cli/src/commands/status.js +287 -0
- package/dist/cli/src/commands/status.js.map +1 -0
- package/dist/cli/src/commands/validate.d.ts +22 -0
- package/dist/cli/src/commands/validate.d.ts.map +1 -0
- package/dist/cli/src/commands/validate.js +259 -0
- package/dist/cli/src/commands/validate.js.map +1 -0
- package/dist/cli/src/types/index.d.ts +152 -0
- package/dist/cli/src/types/index.d.ts.map +1 -0
- package/dist/cli/src/types/index.js +3 -0
- package/dist/cli/src/types/index.js.map +1 -0
- package/dist/cli/src/utils/apiKeyManager.d.ts +137 -0
- package/dist/cli/src/utils/apiKeyManager.d.ts.map +1 -0
- package/dist/cli/src/utils/apiKeyManager.js +471 -0
- package/dist/cli/src/utils/apiKeyManager.js.map +1 -0
- package/dist/cli/src/utils/errorHandler.d.ts +105 -0
- package/dist/cli/src/utils/errorHandler.d.ts.map +1 -0
- package/dist/cli/src/utils/errorHandler.js +332 -0
- package/dist/cli/src/utils/errorHandler.js.map +1 -0
- package/dist/cli/src/utils/fileSystem.d.ts +58 -0
- package/dist/cli/src/utils/fileSystem.d.ts.map +1 -0
- package/dist/cli/src/utils/fileSystem.js +230 -0
- package/dist/cli/src/utils/fileSystem.js.map +1 -0
- package/dist/cli/src/utils/githubModels.d.ts +53 -0
- package/dist/cli/src/utils/githubModels.d.ts.map +1 -0
- package/dist/cli/src/utils/githubModels.js +239 -0
- package/dist/cli/src/utils/githubModels.js.map +1 -0
- package/dist/cli/src/utils/spinner.d.ts +28 -0
- package/dist/cli/src/utils/spinner.d.ts.map +1 -0
- package/dist/cli/src/utils/spinner.js +112 -0
- package/dist/cli/src/utils/spinner.js.map +1 -0
- package/dist/cli/src/utils/xaiClient.d.ts +59 -0
- package/dist/cli/src/utils/xaiClient.d.ts.map +1 -0
- package/dist/cli/src/utils/xaiClient.js +244 -0
- package/dist/cli/src/utils/xaiClient.js.map +1 -0
- package/dist/lib/analytics/usage-tracker.d.ts +125 -0
- package/dist/lib/analytics/usage-tracker.d.ts.map +1 -0
- package/dist/lib/analytics/usage-tracker.js +429 -0
- package/dist/lib/analytics/usage-tracker.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export interface GitHubModelsConfig {
|
|
2
|
+
token: string;
|
|
3
|
+
model?: string;
|
|
4
|
+
temperature?: number;
|
|
5
|
+
maxTokens?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface GitHubModelsRequest {
|
|
8
|
+
prompt: string;
|
|
9
|
+
model?: string;
|
|
10
|
+
temperature?: number;
|
|
11
|
+
maxTokens?: number;
|
|
12
|
+
systemPrompt?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface GitHubModelsResponse {
|
|
15
|
+
content: string;
|
|
16
|
+
model: string;
|
|
17
|
+
usage?: {
|
|
18
|
+
promptTokens: number;
|
|
19
|
+
completionTokens: number;
|
|
20
|
+
totalTokens: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export declare class GitHubModelsClient {
|
|
24
|
+
private client;
|
|
25
|
+
private config;
|
|
26
|
+
private endpoint;
|
|
27
|
+
constructor(config: GitHubModelsConfig);
|
|
28
|
+
/**
|
|
29
|
+
* Generate content using GitHub Models
|
|
30
|
+
*/
|
|
31
|
+
generate(request: GitHubModelsRequest): Promise<GitHubModelsResponse>;
|
|
32
|
+
/**
|
|
33
|
+
* Generate a component list using GitHub Models
|
|
34
|
+
*/
|
|
35
|
+
generateComponentList(projectDescription: string): Promise<any>;
|
|
36
|
+
/**
|
|
37
|
+
* Generate a React component using GitHub Models
|
|
38
|
+
*/
|
|
39
|
+
generateComponent(componentSpec: any, groupName: string): Promise<string>;
|
|
40
|
+
/**
|
|
41
|
+
* Generate documentation for a component
|
|
42
|
+
*/
|
|
43
|
+
generateComponentDocs(componentCode: string, componentSpec: any): Promise<string>;
|
|
44
|
+
/**
|
|
45
|
+
* Test the connection to GitHub Models
|
|
46
|
+
*/
|
|
47
|
+
testConnection(): Promise<boolean>;
|
|
48
|
+
/**
|
|
49
|
+
* Get available models (this would require a different API endpoint)
|
|
50
|
+
*/
|
|
51
|
+
listModels(): Promise<string[]>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=githubModels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"githubModels.d.ts","sourceRoot":"","sources":["../../../../src/utils/githubModels.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,QAAQ,CAAwC;gBAE5C,MAAM,EAAE,kBAAkB;IAQtC;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA8C3E;;OAEG;IACG,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsDrE;;OAEG;IACG,iBAAiB,CACrB,aAAa,EAAE,GAAG,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC;IA6ClB;;OAEG;IACG,qBAAqB,CACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,GAAG,GACjB,OAAO,CAAC,MAAM,CAAC;IAiClB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAaxC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAWtC"}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.GitHubModelsClient = void 0;
|
|
37
|
+
const ai_inference_1 = __importStar(require("@azure-rest/ai-inference"));
|
|
38
|
+
const core_auth_1 = require("@azure/core-auth");
|
|
39
|
+
class GitHubModelsClient {
|
|
40
|
+
constructor(config) {
|
|
41
|
+
this.endpoint = "https://models.github.ai/inference";
|
|
42
|
+
this.config = config;
|
|
43
|
+
this.client = (0, ai_inference_1.default)(this.endpoint, new core_auth_1.AzureKeyCredential(config.token));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Generate content using GitHub Models
|
|
47
|
+
*/
|
|
48
|
+
async generate(request) {
|
|
49
|
+
try {
|
|
50
|
+
const model = request.model || this.config.model || "deepseek/DeepSeek-V3-0324";
|
|
51
|
+
const temperature = request.temperature || this.config.temperature || 0.7;
|
|
52
|
+
const maxTokens = request.maxTokens || this.config.maxTokens || 4000;
|
|
53
|
+
const messages = [];
|
|
54
|
+
if (request.systemPrompt) {
|
|
55
|
+
messages.push({ role: "system", content: request.systemPrompt });
|
|
56
|
+
}
|
|
57
|
+
messages.push({ role: "user", content: request.prompt });
|
|
58
|
+
const response = await this.client.path("/chat/completions").post({
|
|
59
|
+
body: {
|
|
60
|
+
messages,
|
|
61
|
+
temperature,
|
|
62
|
+
top_p: 1.0,
|
|
63
|
+
max_tokens: maxTokens,
|
|
64
|
+
model: model,
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
if ((0, ai_inference_1.isUnexpected)(response)) {
|
|
68
|
+
throw new Error(response.body.error?.message || "GitHub Models API error");
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
content: response.body.choices[0]?.message?.content || "",
|
|
72
|
+
model: response.body.model || model,
|
|
73
|
+
usage: response.body.usage,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
console.error("GitHub Models API error:", error);
|
|
78
|
+
throw new Error(`GitHub Models generation failed: ${error instanceof Error ? error.message : "Unknown error"}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Generate a component list using GitHub Models
|
|
83
|
+
*/
|
|
84
|
+
async generateComponentList(projectDescription) {
|
|
85
|
+
const prompt = `Generate a comprehensive component list for a React/Next.js project with the following description:
|
|
86
|
+
|
|
87
|
+
${projectDescription}
|
|
88
|
+
|
|
89
|
+
Please generate a JSON structure with the following format:
|
|
90
|
+
{
|
|
91
|
+
"project": {
|
|
92
|
+
"name": "Project Name",
|
|
93
|
+
"description": "Project description",
|
|
94
|
+
"version": "1.0.0"
|
|
95
|
+
},
|
|
96
|
+
"groups": [
|
|
97
|
+
{
|
|
98
|
+
"name": "Group Name",
|
|
99
|
+
"description": "Group description",
|
|
100
|
+
"priority": "high|medium|low",
|
|
101
|
+
"components": [
|
|
102
|
+
{
|
|
103
|
+
"name": "ComponentName",
|
|
104
|
+
"description": "Component description",
|
|
105
|
+
"type": "component type",
|
|
106
|
+
"priority": "high|medium|low",
|
|
107
|
+
"userStories": ["User story 1", "User story 2"],
|
|
108
|
+
"actionFunctions": ["function1", "function2"],
|
|
109
|
+
"dependencies": ["dependency1", "dependency2"],
|
|
110
|
+
"tags": ["tag1", "tag2"]
|
|
111
|
+
}
|
|
112
|
+
]
|
|
113
|
+
}
|
|
114
|
+
]
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
Focus on creating a well-structured component architecture with clear separation of concerns.`;
|
|
118
|
+
const response = await this.generate({
|
|
119
|
+
prompt,
|
|
120
|
+
systemPrompt: "You are an expert React/Next.js developer who creates well-structured component architectures. Always respond with valid JSON.",
|
|
121
|
+
temperature: 0.3,
|
|
122
|
+
maxTokens: 4000,
|
|
123
|
+
});
|
|
124
|
+
try {
|
|
125
|
+
return JSON.parse(response.content);
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
throw new Error(`Failed to parse component list JSON: ${error instanceof Error ? error.message : "Invalid JSON"}`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Generate a React component using GitHub Models
|
|
133
|
+
*/
|
|
134
|
+
async generateComponent(componentSpec, groupName) {
|
|
135
|
+
const prompt = `Generate a production-ready React component with TypeScript for the following specification:
|
|
136
|
+
|
|
137
|
+
Component Name: ${componentSpec.name}
|
|
138
|
+
Description: ${componentSpec.description}
|
|
139
|
+
Type: ${componentSpec.type}
|
|
140
|
+
Group: ${groupName}
|
|
141
|
+
|
|
142
|
+
User Stories:
|
|
143
|
+
${componentSpec.userStories?.map((story) => `- ${story}`).join("\n")}
|
|
144
|
+
|
|
145
|
+
Action Functions:
|
|
146
|
+
${componentSpec.actionFunctions?.map((func) => `- ${func}`).join("\n")}
|
|
147
|
+
|
|
148
|
+
Dependencies:
|
|
149
|
+
${componentSpec.dependencies?.map((dep) => `- ${dep}`).join("\n")}
|
|
150
|
+
|
|
151
|
+
Tags:
|
|
152
|
+
${componentSpec.tags?.map((tag) => `- ${tag}`).join("\n")}
|
|
153
|
+
|
|
154
|
+
Requirements:
|
|
155
|
+
- Use TypeScript with strict typing
|
|
156
|
+
- Use modern React patterns (hooks, functional components)
|
|
157
|
+
- Include proper error handling and loading states
|
|
158
|
+
- Use Tailwind CSS for styling
|
|
159
|
+
- Include shadcn/ui components where appropriate
|
|
160
|
+
- Add comprehensive JSDoc comments
|
|
161
|
+
- Include proper accessibility attributes
|
|
162
|
+
- Use Zustand for state management if needed
|
|
163
|
+
- Include proper prop validation
|
|
164
|
+
- Add example usage
|
|
165
|
+
|
|
166
|
+
Generate a complete, production-ready component that can be used immediately.`;
|
|
167
|
+
const response = await this.generate({
|
|
168
|
+
prompt,
|
|
169
|
+
systemPrompt: "You are an expert React/TypeScript developer who creates production-ready components. Always generate complete, functional code with proper TypeScript types and modern React patterns.",
|
|
170
|
+
temperature: 0.4,
|
|
171
|
+
maxTokens: 4000,
|
|
172
|
+
});
|
|
173
|
+
return response.content;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Generate documentation for a component
|
|
177
|
+
*/
|
|
178
|
+
async generateComponentDocs(componentCode, componentSpec) {
|
|
179
|
+
const prompt = `Generate comprehensive documentation for the following React component:
|
|
180
|
+
|
|
181
|
+
Component Name: ${componentSpec.name}
|
|
182
|
+
Description: ${componentSpec.description}
|
|
183
|
+
|
|
184
|
+
Component Code:
|
|
185
|
+
\`\`\`tsx
|
|
186
|
+
${componentCode}
|
|
187
|
+
\`\`\`
|
|
188
|
+
|
|
189
|
+
Please generate a README.md file that includes:
|
|
190
|
+
- Component overview
|
|
191
|
+
- Props documentation
|
|
192
|
+
- Usage examples
|
|
193
|
+
- Best practices
|
|
194
|
+
- Accessibility considerations
|
|
195
|
+
- Dependencies
|
|
196
|
+
- Installation instructions
|
|
197
|
+
|
|
198
|
+
Make the documentation clear, comprehensive, and easy to follow.`;
|
|
199
|
+
const response = await this.generate({
|
|
200
|
+
prompt,
|
|
201
|
+
systemPrompt: "You are a technical writer who creates clear, comprehensive documentation for React components. Always generate well-structured markdown documentation.",
|
|
202
|
+
temperature: 0.3,
|
|
203
|
+
maxTokens: 2000,
|
|
204
|
+
});
|
|
205
|
+
return response.content;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Test the connection to GitHub Models
|
|
209
|
+
*/
|
|
210
|
+
async testConnection() {
|
|
211
|
+
try {
|
|
212
|
+
await this.generate({
|
|
213
|
+
prompt: "Hello, this is a test message.",
|
|
214
|
+
maxTokens: 10,
|
|
215
|
+
});
|
|
216
|
+
return true;
|
|
217
|
+
}
|
|
218
|
+
catch (error) {
|
|
219
|
+
console.error("GitHub Models connection test failed:", error);
|
|
220
|
+
return false;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Get available models (this would require a different API endpoint)
|
|
225
|
+
*/
|
|
226
|
+
async listModels() {
|
|
227
|
+
// For now, return a list of known GitHub Models
|
|
228
|
+
return [
|
|
229
|
+
"deepseek/DeepSeek-V3-0324",
|
|
230
|
+
"claude-3-5-sonnet",
|
|
231
|
+
"gpt-4o",
|
|
232
|
+
"gpt-4o-mini",
|
|
233
|
+
"grok-3",
|
|
234
|
+
"grok-3-mini",
|
|
235
|
+
];
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
exports.GitHubModelsClient = GitHubModelsClient;
|
|
239
|
+
//# sourceMappingURL=githubModels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"githubModels.js","sourceRoot":"","sources":["../../../../src/utils/githubModels.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare class EnhancedSpinner {
|
|
2
|
+
private text;
|
|
3
|
+
private isSpinning;
|
|
4
|
+
private spinnerChars;
|
|
5
|
+
private currentFrame;
|
|
6
|
+
private interval;
|
|
7
|
+
private startTime;
|
|
8
|
+
private lastLineLength;
|
|
9
|
+
private encouragementMessages;
|
|
10
|
+
private lastEncouragementTime;
|
|
11
|
+
constructor(text: string);
|
|
12
|
+
private clearLine;
|
|
13
|
+
private getEncouragementMessage;
|
|
14
|
+
private updateSpinner;
|
|
15
|
+
start(): this;
|
|
16
|
+
success(options?: {
|
|
17
|
+
text?: string;
|
|
18
|
+
}): this;
|
|
19
|
+
error(options?: {
|
|
20
|
+
text?: string;
|
|
21
|
+
}): this;
|
|
22
|
+
warn(options?: {
|
|
23
|
+
text?: string;
|
|
24
|
+
}): this;
|
|
25
|
+
updateText(newText: string): this;
|
|
26
|
+
stop(): this;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=spinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../../../src/utils/spinner.ts"],"names":[],"mappings":"AAEA,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,YAAY,CAAW;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,qBAAqB,CAAW;IACxC,OAAO,CAAC,qBAAqB,CAAS;gBAE1B,IAAI,EAAE,MAAM;IAuBxB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,aAAa;IAoBrB,KAAK,IAAI,IAAI;IAUb,OAAO,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAY9C,KAAK,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAU5C,IAAI,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAY3C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC,IAAI,IAAI,IAAI;CAQb"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.EnhancedSpinner = void 0;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
class EnhancedSpinner {
|
|
9
|
+
constructor(text) {
|
|
10
|
+
this.text = text;
|
|
11
|
+
this.isSpinning = false;
|
|
12
|
+
this.spinnerChars = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
|
|
13
|
+
this.currentFrame = 0;
|
|
14
|
+
this.interval = null;
|
|
15
|
+
this.startTime = null;
|
|
16
|
+
this.lastLineLength = 0;
|
|
17
|
+
this.encouragementMessages = [
|
|
18
|
+
" Hang in there! 🚀",
|
|
19
|
+
" Lol sorry it's taking long... ☕",
|
|
20
|
+
" Grab some coffee/water while we work! ☕",
|
|
21
|
+
" Did you dream last night? 🌙",
|
|
22
|
+
" Almost there, promise! 💪",
|
|
23
|
+
" Building something awesome... 🎨",
|
|
24
|
+
" Rome wasn't built in a day! 🏛️",
|
|
25
|
+
" Good things take time... ⏰",
|
|
26
|
+
" Still cooking your project... 👨🍳",
|
|
27
|
+
" Patience, young padawan... 🧘♂️",
|
|
28
|
+
];
|
|
29
|
+
this.lastEncouragementTime = 0;
|
|
30
|
+
}
|
|
31
|
+
clearLine() {
|
|
32
|
+
// Clear the current line completely
|
|
33
|
+
process.stdout.write("\r" + " ".repeat(this.lastLineLength) + "\r");
|
|
34
|
+
}
|
|
35
|
+
getEncouragementMessage() {
|
|
36
|
+
const now = Date.now();
|
|
37
|
+
// Show encouragement every 5 seconds after 10 seconds have passed
|
|
38
|
+
if (now - (this.startTime || 0) > 10000 &&
|
|
39
|
+
now - this.lastEncouragementTime > 5000) {
|
|
40
|
+
this.lastEncouragementTime = now;
|
|
41
|
+
const randomIndex = Math.floor(Math.random() * this.encouragementMessages.length);
|
|
42
|
+
return this.encouragementMessages[randomIndex];
|
|
43
|
+
}
|
|
44
|
+
return "";
|
|
45
|
+
}
|
|
46
|
+
updateSpinner() {
|
|
47
|
+
const elapsed = this.startTime ? Date.now() - this.startTime : 0;
|
|
48
|
+
const elapsedSeconds = Math.floor(elapsed / 1000);
|
|
49
|
+
const timeDisplay = elapsedSeconds > 0 ? chalk_1.default.gray(` (${elapsedSeconds}s)`) : "";
|
|
50
|
+
const encouragement = this.getEncouragementMessage();
|
|
51
|
+
// Clear the current line completely
|
|
52
|
+
this.clearLine();
|
|
53
|
+
// Show main spinner line with encouragement inline
|
|
54
|
+
const mainLine = `${chalk_1.default.blue(this.spinnerChars[this.currentFrame])} ${this.text}${timeDisplay}${encouragement}`;
|
|
55
|
+
process.stdout.write(mainLine);
|
|
56
|
+
this.lastLineLength = mainLine.replace(/\x1b\[[0-9;]*m/g, "").length;
|
|
57
|
+
this.currentFrame = (this.currentFrame + 1) % this.spinnerChars.length;
|
|
58
|
+
}
|
|
59
|
+
start() {
|
|
60
|
+
this.isSpinning = true;
|
|
61
|
+
this.startTime = Date.now();
|
|
62
|
+
this.lastEncouragementTime = this.startTime;
|
|
63
|
+
this.interval = setInterval(() => {
|
|
64
|
+
this.updateSpinner();
|
|
65
|
+
}, 100);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
success(options = {}) {
|
|
69
|
+
if (this.isSpinning) {
|
|
70
|
+
if (this.interval)
|
|
71
|
+
clearInterval(this.interval);
|
|
72
|
+
this.clearLine();
|
|
73
|
+
process.stdout.write(`${chalk_1.default.green("✅")} ${options.text || this.text}\n`);
|
|
74
|
+
this.isSpinning = false;
|
|
75
|
+
}
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
error(options = {}) {
|
|
79
|
+
if (this.isSpinning) {
|
|
80
|
+
if (this.interval)
|
|
81
|
+
clearInterval(this.interval);
|
|
82
|
+
this.clearLine();
|
|
83
|
+
process.stdout.write(`${chalk_1.default.red("❌")} ${options.text || this.text}\n`);
|
|
84
|
+
this.isSpinning = false;
|
|
85
|
+
}
|
|
86
|
+
return this;
|
|
87
|
+
}
|
|
88
|
+
warn(options = {}) {
|
|
89
|
+
if (this.isSpinning) {
|
|
90
|
+
if (this.interval)
|
|
91
|
+
clearInterval(this.interval);
|
|
92
|
+
this.clearLine();
|
|
93
|
+
process.stdout.write(`${chalk_1.default.yellow("⚠️")} ${options.text || this.text}\n`);
|
|
94
|
+
this.isSpinning = false;
|
|
95
|
+
}
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
updateText(newText) {
|
|
99
|
+
this.text = newText;
|
|
100
|
+
return this;
|
|
101
|
+
}
|
|
102
|
+
stop() {
|
|
103
|
+
if (this.isSpinning && this.interval) {
|
|
104
|
+
clearInterval(this.interval);
|
|
105
|
+
this.clearLine();
|
|
106
|
+
this.isSpinning = false;
|
|
107
|
+
}
|
|
108
|
+
return this;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.EnhancedSpinner = EnhancedSpinner;
|
|
112
|
+
//# sourceMappingURL=spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../../../src/utils/spinner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
export interface XAIConfig {
|
|
2
|
+
apiKey: string;
|
|
3
|
+
model?: string;
|
|
4
|
+
temperature?: number;
|
|
5
|
+
maxTokens?: number;
|
|
6
|
+
baseUrl?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface XAIRequest {
|
|
9
|
+
prompt: string;
|
|
10
|
+
model?: string;
|
|
11
|
+
temperature?: number;
|
|
12
|
+
maxTokens?: number;
|
|
13
|
+
systemPrompt?: string;
|
|
14
|
+
stream?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface XAIResponse {
|
|
17
|
+
content: string;
|
|
18
|
+
model: string;
|
|
19
|
+
usage?: {
|
|
20
|
+
promptTokens: number;
|
|
21
|
+
completionTokens: number;
|
|
22
|
+
totalTokens: number;
|
|
23
|
+
};
|
|
24
|
+
finishReason?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare class XAIClient {
|
|
27
|
+
private config;
|
|
28
|
+
private baseUrl;
|
|
29
|
+
constructor(config: XAIConfig);
|
|
30
|
+
/**
|
|
31
|
+
* Generate content using X.AI API
|
|
32
|
+
*/
|
|
33
|
+
generate(request: XAIRequest): Promise<XAIResponse>;
|
|
34
|
+
/**
|
|
35
|
+
* Generate context files using X.AI
|
|
36
|
+
*/
|
|
37
|
+
generateContext(projectDescription: string): Promise<Record<string, string>>;
|
|
38
|
+
/**
|
|
39
|
+
* Generate component list using X.AI
|
|
40
|
+
*/
|
|
41
|
+
generateComponentList(projectDescription: string): Promise<any>;
|
|
42
|
+
/**
|
|
43
|
+
* Generate individual component using X.AI
|
|
44
|
+
*/
|
|
45
|
+
generateComponent(componentSpec: any, groupName: string): Promise<string>;
|
|
46
|
+
/**
|
|
47
|
+
* Generate component documentation using X.AI
|
|
48
|
+
*/
|
|
49
|
+
generateComponentDocs(componentCode: string, componentSpec: any): Promise<string>;
|
|
50
|
+
/**
|
|
51
|
+
* Test connection to X.AI API
|
|
52
|
+
*/
|
|
53
|
+
testConnection(): Promise<boolean>;
|
|
54
|
+
/**
|
|
55
|
+
* List available models
|
|
56
|
+
*/
|
|
57
|
+
listModels(): Promise<string[]>;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=xaiClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xaiClient.d.ts","sourceRoot":"","sources":["../../../../src/utils/xaiClient.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,SAAS;IAK7B;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAwDzD;;OAEG;IACG,eAAe,CACnB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqClC;;OAEG;IACG,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkDrE;;OAEG;IACG,iBAAiB,CACrB,aAAa,EAAE,GAAG,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC;IA6ClB;;OAEG;IACG,qBAAqB,CACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,GAAG,GACjB,OAAO,CAAC,MAAM,CAAC;IAkClB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAaxC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAItC"}
|