copilotkit 0.0.39 → 0.0.41
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/dist/commands/base-command.js +1 -1
- package/dist/commands/base-command.js.map +1 -1
- package/dist/commands/dev.js +1 -1
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.js +332 -118
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.js +1 -1
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.js +1 -1
- package/dist/commands/logout.js.map +1 -1
- package/dist/lib/init/ide-docs.d.ts +25 -0
- package/dist/lib/init/ide-docs.js +156 -0
- package/dist/lib/init/ide-docs.js.map +1 -0
- package/dist/lib/init/index.d.ts +3 -1
- package/dist/lib/init/index.js +267 -69
- package/dist/lib/init/index.js.map +1 -1
- package/dist/lib/init/questions.js +117 -6
- package/dist/lib/init/questions.js.map +1 -1
- package/dist/lib/init/scaffold/env.js +10 -3
- package/dist/lib/init/scaffold/env.js.map +1 -1
- package/dist/lib/init/scaffold/index.js +15 -6
- package/dist/lib/init/scaffold/index.js.map +1 -1
- package/dist/lib/init/scaffold/shadcn.js +12 -3
- package/dist/lib/init/scaffold/shadcn.js.map +1 -1
- package/dist/lib/init/types/index.d.ts +1 -1
- package/dist/lib/init/types/index.js +13 -3
- package/dist/lib/init/types/index.js.map +1 -1
- package/dist/lib/init/types/questions.d.ts +33 -13
- package/dist/lib/init/types/questions.js +13 -3
- package/dist/lib/init/types/questions.js.map +1 -1
- package/dist/utils/version.d.ts +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/utils/version.js.map +1 -1
- package/oclif.manifest.json +26 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _oclif_core_interfaces from '@oclif/core/interfaces';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
|
|
4
|
-
declare const MODES: readonly ["LangGraph", "CrewAI", "Mastra", "AG2", "MCP", "Standard"];
|
|
4
|
+
declare const MODES: readonly ["LangGraph", "CrewAI", "Mastra", "LlamaIndex", "Agno", "AG2", "MCP", "Standard"];
|
|
5
5
|
declare const CREW_TYPES: readonly ["Crews", "Flows"];
|
|
6
6
|
declare const CHAT_COMPONENTS: readonly ["CopilotChat", "CopilotSidebar", "Headless", "CopilotPopup"];
|
|
7
7
|
declare const LANGGRAPH_AGENTS: readonly ["Python Starter", "TypeScript Starter"];
|
|
@@ -13,7 +13,7 @@ declare const sanitizers: {
|
|
|
13
13
|
lowercase: (value: string) => string;
|
|
14
14
|
apiKey: (value: string) => string;
|
|
15
15
|
};
|
|
16
|
-
declare const ModeSchema: z.ZodEnum<["LangGraph", "CrewAI", "Mastra", "AG2", "MCP", "Standard"]>;
|
|
16
|
+
declare const ModeSchema: z.ZodEnum<["LangGraph", "CrewAI", "Mastra", "LlamaIndex", "Agno", "AG2", "MCP", "Standard"]>;
|
|
17
17
|
declare const CrewTypeSchema: z.ZodEnum<["Crews", "Flows"]>;
|
|
18
18
|
declare const ChatComponentSchema: z.ZodEnum<["CopilotChat", "CopilotSidebar", "Headless", "CopilotPopup"]>;
|
|
19
19
|
declare const LangGraphAgentSchema: z.ZodEnum<["Python Starter", "TypeScript Starter"]>;
|
|
@@ -22,10 +22,11 @@ declare const YesNoSchema: z.ZodEnum<["Yes", "No"]>;
|
|
|
22
22
|
declare const UrlSchema: z.ZodEffects<z.ZodString, string, unknown>;
|
|
23
23
|
declare const TokenSchema: z.ZodEffects<z.ZodString, string, unknown>;
|
|
24
24
|
declare const ApiKeySchema: z.ZodEffects<z.ZodString, string, unknown>;
|
|
25
|
+
declare const LLMApiKeySchema: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, unknown>;
|
|
25
26
|
declare const NameSchema: z.ZodEffects<z.ZodString, string, unknown>;
|
|
26
27
|
declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
27
28
|
copilotKitVersion: z.ZodOptional<z.ZodString>;
|
|
28
|
-
mode: z.ZodEnum<["LangGraph", "CrewAI", "Mastra", "AG2", "MCP", "Standard"]>;
|
|
29
|
+
mode: z.ZodEnum<["LangGraph", "CrewAI", "Mastra", "LlamaIndex", "Agno", "AG2", "MCP", "Standard"]>;
|
|
29
30
|
chatUi: z.ZodOptional<z.ZodEnum<["CopilotChat", "CopilotSidebar", "Headless", "CopilotPopup"]>>;
|
|
30
31
|
alreadyDeployed: z.ZodOptional<z.ZodEnum<["Yes", "No"]>>;
|
|
31
32
|
fastApiEnabled: z.ZodOptional<z.ZodEnum<["Yes", "No"]>>;
|
|
@@ -40,9 +41,11 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
40
41
|
crewBearerToken: z.ZodOptional<z.ZodEffects<z.ZodString, string, unknown>>;
|
|
41
42
|
copilotCloudPublicApiKey: z.ZodOptional<z.ZodString>;
|
|
42
43
|
langSmithApiKey: z.ZodOptional<z.ZodEffects<z.ZodString, string, unknown>>;
|
|
43
|
-
llmToken: z.ZodOptional<z.ZodEffects<z.ZodString
|
|
44
|
+
llmToken: z.ZodOptional<z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, unknown>>;
|
|
45
|
+
setupIDEDocs: z.ZodOptional<z.ZodEnum<["Yes", "No"]>>;
|
|
46
|
+
selectedIDE: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["cursor", "windsurf"]>, z.ZodLiteral<"skip">]>>;
|
|
44
47
|
}, "strip", z.ZodTypeAny, {
|
|
45
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
48
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
46
49
|
copilotKitVersion?: string | undefined;
|
|
47
50
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
48
51
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -59,8 +62,10 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
59
62
|
copilotCloudPublicApiKey?: string | undefined;
|
|
60
63
|
langSmithApiKey?: string | undefined;
|
|
61
64
|
llmToken?: string | undefined;
|
|
65
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
66
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
62
67
|
}, {
|
|
63
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
68
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
64
69
|
copilotKitVersion?: string | undefined;
|
|
65
70
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
66
71
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -77,8 +82,10 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
77
82
|
copilotCloudPublicApiKey?: string | undefined;
|
|
78
83
|
langSmithApiKey?: unknown;
|
|
79
84
|
llmToken?: unknown;
|
|
85
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
86
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
80
87
|
}>, {
|
|
81
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
88
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
82
89
|
copilotKitVersion?: string | undefined;
|
|
83
90
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
84
91
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -95,8 +102,10 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
95
102
|
copilotCloudPublicApiKey?: string | undefined;
|
|
96
103
|
langSmithApiKey?: string | undefined;
|
|
97
104
|
llmToken?: string | undefined;
|
|
105
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
106
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
98
107
|
}, {
|
|
99
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
108
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
100
109
|
copilotKitVersion?: string | undefined;
|
|
101
110
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
102
111
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -113,8 +122,10 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
113
122
|
copilotCloudPublicApiKey?: string | undefined;
|
|
114
123
|
langSmithApiKey?: unknown;
|
|
115
124
|
llmToken?: unknown;
|
|
125
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
126
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
116
127
|
}>, {
|
|
117
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
128
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
118
129
|
copilotKitVersion?: string | undefined;
|
|
119
130
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
120
131
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -131,8 +142,10 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
131
142
|
copilotCloudPublicApiKey?: string | undefined;
|
|
132
143
|
langSmithApiKey?: string | undefined;
|
|
133
144
|
llmToken?: string | undefined;
|
|
145
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
146
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
134
147
|
}, {
|
|
135
|
-
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "AG2" | "Standard";
|
|
148
|
+
mode: "CrewAI" | "MCP" | "LangGraph" | "Mastra" | "LlamaIndex" | "Agno" | "AG2" | "Standard";
|
|
136
149
|
copilotKitVersion?: string | undefined;
|
|
137
150
|
chatUi?: "CopilotChat" | "CopilotSidebar" | "Headless" | "CopilotPopup" | undefined;
|
|
138
151
|
alreadyDeployed?: "Yes" | "No" | undefined;
|
|
@@ -149,15 +162,20 @@ declare const ConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
|
149
162
|
copilotCloudPublicApiKey?: string | undefined;
|
|
150
163
|
langSmithApiKey?: unknown;
|
|
151
164
|
llmToken?: unknown;
|
|
165
|
+
setupIDEDocs?: "Yes" | "No" | undefined;
|
|
166
|
+
selectedIDE?: "cursor" | "windsurf" | "skip" | undefined;
|
|
152
167
|
}>;
|
|
153
168
|
type Config = z.infer<typeof ConfigSchema>;
|
|
154
169
|
type Question = {
|
|
155
170
|
type: 'input' | 'yes/no' | 'select';
|
|
156
171
|
name: keyof Config;
|
|
157
172
|
message: string;
|
|
158
|
-
choices?: readonly string[]
|
|
173
|
+
choices?: readonly string[] | (() => Promise<{
|
|
174
|
+
name: string;
|
|
175
|
+
value: string;
|
|
176
|
+
}[]>);
|
|
159
177
|
default?: string;
|
|
160
|
-
when?: (answers: Partial<Config>) => boolean
|
|
178
|
+
when?: (answers: Partial<Config>) => boolean | Promise<boolean>;
|
|
161
179
|
sensitive?: boolean;
|
|
162
180
|
validate?: (input: string) => true | string;
|
|
163
181
|
sanitize?: (input: string) => string;
|
|
@@ -174,6 +192,8 @@ declare const ConfigFlags: {
|
|
|
174
192
|
'crew-bearer-token': _oclif_core_interfaces.OptionFlag<string | undefined, _oclif_core_interfaces.CustomOptions>;
|
|
175
193
|
'langsmith-api-key': _oclif_core_interfaces.OptionFlag<string | undefined, _oclif_core_interfaces.CustomOptions>;
|
|
176
194
|
'llm-token': _oclif_core_interfaces.OptionFlag<string | undefined, _oclif_core_interfaces.CustomOptions>;
|
|
195
|
+
'setup-ide-docs': _oclif_core_interfaces.OptionFlag<string | undefined, _oclif_core_interfaces.CustomOptions>;
|
|
196
|
+
'selected-ide': _oclif_core_interfaces.OptionFlag<string | undefined, _oclif_core_interfaces.CustomOptions>;
|
|
177
197
|
};
|
|
178
198
|
|
|
179
|
-
export { ApiKeySchema, CHAT_COMPONENTS, CREW_FLOW_TEMPLATES, CREW_TYPES, ChatComponentSchema, type Config, ConfigFlags, ConfigSchema, CrewFlowTemplateSchema, CrewTypeSchema, LANGGRAPH_AGENTS, LangGraphAgentSchema, MODES, ModeSchema, NameSchema, type Question, TokenSchema, UrlSchema, YES_NO, YesNoSchema, sanitizers };
|
|
199
|
+
export { ApiKeySchema, CHAT_COMPONENTS, CREW_FLOW_TEMPLATES, CREW_TYPES, ChatComponentSchema, type Config, ConfigFlags, ConfigSchema, CrewFlowTemplateSchema, CrewTypeSchema, LANGGRAPH_AGENTS, LLMApiKeySchema, LangGraphAgentSchema, MODES, ModeSchema, NameSchema, type Question, TokenSchema, UrlSchema, YES_NO, YesNoSchema, sanitizers };
|
|
@@ -8,7 +8,7 @@ var isLocalhost = (url) => {
|
|
|
8
8
|
};
|
|
9
9
|
|
|
10
10
|
// src/lib/init/types/questions.ts
|
|
11
|
-
var MODES = ["LangGraph", "CrewAI", "Mastra", "AG2", "MCP", "Standard"];
|
|
11
|
+
var MODES = ["LangGraph", "CrewAI", "Mastra", "LlamaIndex", "Agno", "AG2", "MCP", "Standard"];
|
|
12
12
|
var CREW_TYPES = ["Crews", "Flows"];
|
|
13
13
|
var CHAT_COMPONENTS = ["CopilotChat", "CopilotSidebar", "Headless", "CopilotPopup"];
|
|
14
14
|
var LANGGRAPH_AGENTS = ["Python Starter", "TypeScript Starter"];
|
|
@@ -51,6 +51,7 @@ var ApiKeySchema = z.preprocess(
|
|
|
51
51
|
(val) => sanitizers.apiKey(String(val)),
|
|
52
52
|
z.string().min(1, "API key is required")
|
|
53
53
|
);
|
|
54
|
+
var LLMApiKeySchema = z.preprocess((val) => sanitizers.apiKey(String(val)), z.string().optional());
|
|
54
55
|
var NameSchema = z.preprocess((val) => sanitizers.trim(String(val)), z.string().min(1, "Name is required"));
|
|
55
56
|
var ConfigSchema = z.object({
|
|
56
57
|
// Core fields
|
|
@@ -74,7 +75,10 @@ var ConfigSchema = z.object({
|
|
|
74
75
|
// API keys and tokens
|
|
75
76
|
copilotCloudPublicApiKey: z.string().optional(),
|
|
76
77
|
langSmithApiKey: ApiKeySchema.optional(),
|
|
77
|
-
llmToken:
|
|
78
|
+
llmToken: LLMApiKeySchema.optional(),
|
|
79
|
+
// IDE Documentation setup fields
|
|
80
|
+
setupIDEDocs: YesNoSchema.optional(),
|
|
81
|
+
selectedIDE: z.union([z.enum(["cursor", "windsurf"]), z.literal("skip")]).optional()
|
|
78
82
|
}).refine(
|
|
79
83
|
(data) => {
|
|
80
84
|
if (data.mode === "CrewAI") {
|
|
@@ -109,7 +113,12 @@ var ConfigFlags = {
|
|
|
109
113
|
"crew-url": Flags.string({ description: "URL endpoint for your CrewAI agent" }),
|
|
110
114
|
"crew-bearer-token": Flags.string({ description: "Bearer token for CrewAI authentication" }),
|
|
111
115
|
"langsmith-api-key": Flags.string({ description: "LangSmith API key for LangGraph observability" }),
|
|
112
|
-
"llm-token": Flags.string({ description: "API key for your preferred LLM provider" })
|
|
116
|
+
"llm-token": Flags.string({ description: "API key for your preferred LLM provider" }),
|
|
117
|
+
"setup-ide-docs": Flags.string({ description: "Setup IDE documentation rules for AI assistance", options: YES_NO }),
|
|
118
|
+
"selected-ide": Flags.string({
|
|
119
|
+
description: "IDE to configure with documentation rules",
|
|
120
|
+
options: ["cursor", "windsurf", "skip"]
|
|
121
|
+
})
|
|
113
122
|
};
|
|
114
123
|
export {
|
|
115
124
|
ApiKeySchema,
|
|
@@ -122,6 +131,7 @@ export {
|
|
|
122
131
|
CrewFlowTemplateSchema,
|
|
123
132
|
CrewTypeSchema,
|
|
124
133
|
LANGGRAPH_AGENTS,
|
|
134
|
+
LLMApiKeySchema,
|
|
125
135
|
LangGraphAgentSchema,
|
|
126
136
|
MODES,
|
|
127
137
|
ModeSchema,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/lib/init/types/questions.ts","../../../../src/lib/init/utils.ts"],"sourcesContent":["import {z} from 'zod'\nimport {Flags} from '@oclif/core'\nimport {isLocalhost} from '../utils.js'\n\n// ===== Core Constants =====\nexport const MODES = ['LangGraph', 'CrewAI', 'Mastra', 'AG2', 'MCP', 'Standard'] as const\nexport const CREW_TYPES = ['Crews', 'Flows'] as const\nexport const CHAT_COMPONENTS = ['CopilotChat', 'CopilotSidebar', 'Headless', 'CopilotPopup'] as const\nexport const LANGGRAPH_AGENTS = ['Python Starter', 'TypeScript Starter'] as const\nexport const CREW_FLOW_TEMPLATES = ['Starter'] as const\nexport const YES_NO = ['Yes', 'No'] as const\n\n// ===== Sanitizers =====\nexport const sanitizers = {\n // Remove trailing slash from URLs\n url: (value: string): string => {\n if (!value) return value\n return value.trim().replace(/\\/+$/, '')\n },\n\n // Trim whitespace from strings\n trim: (value: string): string => {\n if (!value) return value\n return value.trim()\n },\n\n // Lowercase strings\n lowercase: (value: string): string => {\n if (!value) return value\n return value.toLowerCase().trim()\n },\n\n // Clean API keys (remove whitespace)\n apiKey: (value: string): string => {\n if (!value) return value\n return value.trim().replace(/\\s/g, '')\n },\n}\n\n// ===== Zod Schemas =====\n\n// Basic schemas\nexport const ModeSchema = z.enum(MODES)\nexport const CrewTypeSchema = z.enum(CREW_TYPES)\nexport const ChatComponentSchema = z.enum(CHAT_COMPONENTS)\nexport const LangGraphAgentSchema = z.enum(LANGGRAPH_AGENTS)\nexport const CrewFlowTemplateSchema = z.enum(CREW_FLOW_TEMPLATES)\nexport const YesNoSchema = z.enum(YES_NO)\n\n// URL validation schema with preprocessing to remove trailing slash\nexport const UrlSchema = z.preprocess(\n (val) => sanitizers.url(String(val)),\n z.string().url('Please enter a valid URL').min(1, 'URL is required'),\n)\n\n// Token validation schema with preprocessing to trim\nexport const TokenSchema = z.preprocess((val) => sanitizers.trim(String(val)), z.string().min(1, 'Token is required'))\n\n// API key validation schema with preprocessing to remove whitespace\nexport const ApiKeySchema = z.preprocess(\n (val) => sanitizers.apiKey(String(val)),\n z.string().min(1, 'API key is required'),\n)\n\n// Name validation schema with preprocessing to trim\nexport const NameSchema = z.preprocess((val) => sanitizers.trim(String(val)), z.string().min(1, 'Name is required'))\n\n// Config schema\nexport const ConfigSchema = z\n .object({\n // Core fields\n copilotKitVersion: z.string().optional(),\n mode: ModeSchema,\n chatUi: ChatComponentSchema.optional(),\n\n // Yes/No fields\n alreadyDeployed: YesNoSchema.optional(),\n fastApiEnabled: YesNoSchema.optional(),\n useCopilotCloud: YesNoSchema.optional(),\n\n // LangGraph specific fields\n langGraphAgent: LangGraphAgentSchema.optional(),\n langGraphPlatform: YesNoSchema.optional(),\n langGraphPlatformUrl: UrlSchema.optional(),\n langGraphRemoteEndpointURL: UrlSchema.optional(),\n\n // CrewAI specific fields\n crewType: CrewTypeSchema.optional(),\n crewName: NameSchema.optional(),\n crewUrl: UrlSchema.optional(),\n crewBearerToken: TokenSchema.optional(),\n\n // API keys and tokens\n copilotCloudPublicApiKey: z.string().optional(),\n langSmithApiKey: ApiKeySchema.optional(),\n llmToken: ApiKeySchema.optional(),\n })\n .refine(\n (data) => {\n // If CrewAI is selected, require crew URL and bearer token\n if (data.mode === 'CrewAI') {\n return !!data.crewUrl && !!data.crewBearerToken\n }\n return true\n },\n {\n message: 'Crew URL and bearer token are required for CrewAI',\n path: ['crewUrl', 'crewBearerToken'],\n },\n )\n .refine(\n (data) => {\n // If LangGraph is selected with LangGraph Platform, require platform URL and LangSmith API key\n if (data.mode === 'LangGraph' && data.alreadyDeployed === 'Yes' && data.langGraphPlatform === 'Yes') {\n return (!!data.langGraphPlatformUrl && !!data.langSmithApiKey) || isLocalhost(data.langGraphPlatformUrl || '')\n }\n return true\n },\n {\n message: 'LangGraph Platform URL and LangSmith API key are required',\n path: ['langGraphPlatformUrl', 'langSmithApiKey'],\n },\n )\n\n// Export the inferred type from the schema\nexport type Config = z.infer<typeof ConfigSchema>\n\n// Question type definition with improved validation and sanitization\nexport type Question = {\n type: 'input' | 'yes/no' | 'select'\n name: keyof Config\n message: string\n choices?: readonly string[]\n default?: string\n when?: (answers: Partial<Config>) => boolean\n sensitive?: boolean\n validate?: (input: string) => true | string // Return true if valid, error message string if invalid\n sanitize?: (input: string) => string // Function to sanitize input before validation\n}\n\n// CLI flags definition with descriptions\nexport const ConfigFlags = {\n booth: Flags.boolean({description: 'Use CopilotKit in booth mode', default: false, char: 'b'}),\n mode: Flags.string({description: 'How you will be interacting with AI', options: MODES, char: 'm'}),\n 'copilotkit-version': Flags.string({description: 'CopilotKit version to use (e.g. 1.7.0)'}),\n 'use-copilot-cloud': Flags.string({description: 'Use Copilot Cloud for production-ready hosting', options: YES_NO}),\n 'langgraph-agent': Flags.string({description: 'LangGraph agent template to use', options: LANGGRAPH_AGENTS}),\n 'crew-type': Flags.string({description: 'CrewAI implementation type', options: CREW_TYPES}),\n 'crew-name': Flags.string({description: 'Name for your CrewAI agent'}),\n 'crew-url': Flags.string({description: 'URL endpoint for your CrewAI agent'}),\n 'crew-bearer-token': Flags.string({description: 'Bearer token for CrewAI authentication'}),\n 'langsmith-api-key': Flags.string({description: 'LangSmith API key for LangGraph observability'}),\n 'llm-token': Flags.string({description: 'API key for your preferred LLM provider'}),\n}\n","export const isLocalhost = (url: string): boolean => {\n return url.includes('localhost') || url.includes('127.0.0.1') || url.includes('0.0.0.0')\n}\n"],"mappings":";AAAA,SAAQ,SAAQ;AAChB,SAAQ,aAAY;;;ACDb,IAAM,cAAc,CAAC,QAAyB;AACnD,SAAO,IAAI,SAAS,WAAW,KAAK,IAAI,SAAS,WAAW,KAAK,IAAI,SAAS,SAAS;AACzF;;;ADGO,IAAM,QAAQ,CAAC,aAAa,UAAU,UAAU,OAAO,OAAO,UAAU;AACxE,IAAM,aAAa,CAAC,SAAS,OAAO;AACpC,IAAM,kBAAkB,CAAC,eAAe,kBAAkB,YAAY,cAAc;AACpF,IAAM,mBAAmB,CAAC,kBAAkB,oBAAoB;AAChE,IAAM,sBAAsB,CAAC,SAAS;AACtC,IAAM,SAAS,CAAC,OAAO,IAAI;AAG3B,IAAM,aAAa;AAAA;AAAA,EAExB,KAAK,CAAC,UAA0B;AAC9B,QAAI,CAAC,MAAO,QAAO;AACnB,WAAO,MAAM,KAAK,EAAE,QAAQ,QAAQ,EAAE;AAAA,EACxC;AAAA;AAAA,EAGA,MAAM,CAAC,UAA0B;AAC/B,QAAI,CAAC,MAAO,QAAO;AACnB,WAAO,MAAM,KAAK;AAAA,EACpB;AAAA;AAAA,EAGA,WAAW,CAAC,UAA0B;AACpC,QAAI,CAAC,MAAO,QAAO;AACnB,WAAO,MAAM,YAAY,EAAE,KAAK;AAAA,EAClC;AAAA;AAAA,EAGA,QAAQ,CAAC,UAA0B;AACjC,QAAI,CAAC,MAAO,QAAO;AACnB,WAAO,MAAM,KAAK,EAAE,QAAQ,OAAO,EAAE;AAAA,EACvC;AACF;AAKO,IAAM,aAAa,EAAE,KAAK,KAAK;AAC/B,IAAM,iBAAiB,EAAE,KAAK,UAAU;AACxC,IAAM,sBAAsB,EAAE,KAAK,eAAe;AAClD,IAAM,uBAAuB,EAAE,KAAK,gBAAgB;AACpD,IAAM,yBAAyB,EAAE,KAAK,mBAAmB;AACzD,IAAM,cAAc,EAAE,KAAK,MAAM;AAGjC,IAAM,YAAY,EAAE;AAAA,EACzB,CAAC,QAAQ,WAAW,IAAI,OAAO,GAAG,CAAC;AAAA,EACnC,EAAE,OAAO,EAAE,IAAI,0BAA0B,EAAE,IAAI,GAAG,iBAAiB;AACrE;AAGO,IAAM,cAAc,EAAE,WAAW,CAAC,QAAQ,WAAW,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAG,mBAAmB,CAAC;AAG9G,IAAM,eAAe,EAAE;AAAA,EAC5B,CAAC,QAAQ,WAAW,OAAO,OAAO,GAAG,CAAC;AAAA,EACtC,EAAE,OAAO,EAAE,IAAI,GAAG,qBAAqB;AACzC;AAGO,IAAM,aAAa,EAAE,WAAW,CAAC,QAAQ,WAAW,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAG,kBAAkB,CAAC;AAG5G,IAAM,eAAe,EACzB,OAAO;AAAA;AAAA,EAEN,mBAAmB,EAAE,OAAO,EAAE,SAAS;AAAA,EACvC,MAAM;AAAA,EACN,QAAQ,oBAAoB,SAAS;AAAA;AAAA,EAGrC,iBAAiB,YAAY,SAAS;AAAA,EACtC,gBAAgB,YAAY,SAAS;AAAA,EACrC,iBAAiB,YAAY,SAAS;AAAA;AAAA,EAGtC,gBAAgB,qBAAqB,SAAS;AAAA,EAC9C,mBAAmB,YAAY,SAAS;AAAA,EACxC,sBAAsB,UAAU,SAAS;AAAA,EACzC,4BAA4B,UAAU,SAAS;AAAA;AAAA,EAG/C,UAAU,eAAe,SAAS;AAAA,EAClC,UAAU,WAAW,SAAS;AAAA,EAC9B,SAAS,UAAU,SAAS;AAAA,EAC5B,iBAAiB,YAAY,SAAS;AAAA;AAAA,EAGtC,0BAA0B,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9C,iBAAiB,aAAa,SAAS;AAAA,EACvC,UAAU,aAAa,SAAS;AAClC,CAAC,EACA;AAAA,EACC,CAAC,SAAS;AAER,QAAI,KAAK,SAAS,UAAU;AAC1B,aAAO,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,KAAK;AAAA,IAClC;AACA,WAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,MAAM,CAAC,WAAW,iBAAiB;AAAA,EACrC;AACF,EACC;AAAA,EACC,CAAC,SAAS;AAER,QAAI,KAAK,SAAS,eAAe,KAAK,oBAAoB,SAAS,KAAK,sBAAsB,OAAO;AACnG,aAAQ,CAAC,CAAC,KAAK,wBAAwB,CAAC,CAAC,KAAK,mBAAoB,YAAY,KAAK,wBAAwB,EAAE;AAAA,IAC/G;AACA,WAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,MAAM,CAAC,wBAAwB,iBAAiB;AAAA,EAClD;AACF;AAmBK,IAAM,cAAc;AAAA,EACzB,OAAO,MAAM,QAAQ,EAAC,aAAa,gCAAgC,SAAS,OAAO,MAAM,IAAG,CAAC;AAAA,EAC7F,MAAM,MAAM,OAAO,EAAC,aAAa,uCAAuC,SAAS,OAAO,MAAM,IAAG,CAAC;AAAA,EAClG,sBAAsB,MAAM,OAAO,EAAC,aAAa,yCAAwC,CAAC;AAAA,EAC1F,qBAAqB,MAAM,OAAO,EAAC,aAAa,kDAAkD,SAAS,OAAM,CAAC;AAAA,EAClH,mBAAmB,MAAM,OAAO,EAAC,aAAa,mCAAmC,SAAS,iBAAgB,CAAC;AAAA,EAC3G,aAAa,MAAM,OAAO,EAAC,aAAa,8BAA8B,SAAS,WAAU,CAAC;AAAA,EAC1F,aAAa,MAAM,OAAO,EAAC,aAAa,6BAA4B,CAAC;AAAA,EACrE,YAAY,MAAM,OAAO,EAAC,aAAa,qCAAoC,CAAC;AAAA,EAC5E,qBAAqB,MAAM,OAAO,EAAC,aAAa,yCAAwC,CAAC;AAAA,EACzF,qBAAqB,MAAM,OAAO,EAAC,aAAa,gDAA+C,CAAC;AAAA,EAChG,aAAa,MAAM,OAAO,EAAC,aAAa,0CAAyC,CAAC;AACpF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/init/types/questions.ts","../../../../src/lib/init/utils.ts"],"sourcesContent":["import { z } from 'zod'\nimport { Flags } from '@oclif/core'\nimport { isLocalhost } from '../utils.js'\n\n// ===== Core Constants =====\nexport const MODES = ['LangGraph', 'CrewAI', 'Mastra', 'LlamaIndex', 'Agno', 'AG2', 'MCP', 'Standard'] as const\nexport const CREW_TYPES = ['Crews', 'Flows'] as const\nexport const CHAT_COMPONENTS = ['CopilotChat', 'CopilotSidebar', 'Headless', 'CopilotPopup'] as const\nexport const LANGGRAPH_AGENTS = ['Python Starter', 'TypeScript Starter'] as const\nexport const CREW_FLOW_TEMPLATES = ['Starter'] as const\nexport const YES_NO = ['Yes', 'No'] as const\n\n// ===== Sanitizers =====\nexport const sanitizers = {\n // Remove trailing slash from URLs\n url: (value: string): string => {\n if (!value) return value\n return value.trim().replace(/\\/+$/, '')\n },\n\n // Trim whitespace from strings\n trim: (value: string): string => {\n if (!value) return value\n return value.trim()\n },\n\n // Lowercase strings\n lowercase: (value: string): string => {\n if (!value) return value\n return value.toLowerCase().trim()\n },\n\n // Clean API keys (remove whitespace)\n apiKey: (value: string): string => {\n if (!value) return value\n return value.trim().replace(/\\s/g, '')\n },\n}\n\n// ===== Zod Schemas =====\n\n// Basic schemas\nexport const ModeSchema = z.enum(MODES)\nexport const CrewTypeSchema = z.enum(CREW_TYPES)\nexport const ChatComponentSchema = z.enum(CHAT_COMPONENTS)\nexport const LangGraphAgentSchema = z.enum(LANGGRAPH_AGENTS)\nexport const CrewFlowTemplateSchema = z.enum(CREW_FLOW_TEMPLATES)\nexport const YesNoSchema = z.enum(YES_NO)\n\n// URL validation schema with preprocessing to remove trailing slash\nexport const UrlSchema = z.preprocess(\n (val) => sanitizers.url(String(val)),\n z.string().url('Please enter a valid URL').min(1, 'URL is required'),\n)\n\n// Token validation schema with preprocessing to trim\nexport const TokenSchema = z.preprocess((val) => sanitizers.trim(String(val)), z.string().min(1, 'Token is required'))\n\n// API key validation schema with preprocessing to remove whitespace\nexport const ApiKeySchema = z.preprocess(\n (val) => sanitizers.apiKey(String(val)),\n z.string().min(1, 'API key is required'),\n)\n\nexport const LLMApiKeySchema = z.preprocess((val) => sanitizers.apiKey(String(val)), z.string().optional())\n\n// Name validation schema with preprocessing to trim\nexport const NameSchema = z.preprocess((val) => sanitizers.trim(String(val)), z.string().min(1, 'Name is required'))\n\n// Config schema\nexport const ConfigSchema = z\n .object({\n // Core fields\n copilotKitVersion: z.string().optional(),\n mode: ModeSchema,\n chatUi: ChatComponentSchema.optional(),\n\n // Yes/No fields\n alreadyDeployed: YesNoSchema.optional(),\n fastApiEnabled: YesNoSchema.optional(),\n useCopilotCloud: YesNoSchema.optional(),\n\n // LangGraph specific fields\n langGraphAgent: LangGraphAgentSchema.optional(),\n langGraphPlatform: YesNoSchema.optional(),\n langGraphPlatformUrl: UrlSchema.optional(),\n langGraphRemoteEndpointURL: UrlSchema.optional(),\n\n // CrewAI specific fields\n crewType: CrewTypeSchema.optional(),\n crewName: NameSchema.optional(),\n crewUrl: UrlSchema.optional(),\n crewBearerToken: TokenSchema.optional(),\n\n // API keys and tokens\n copilotCloudPublicApiKey: z.string().optional(),\n langSmithApiKey: ApiKeySchema.optional(),\n llmToken: LLMApiKeySchema.optional(),\n\n // IDE Documentation setup fields\n setupIDEDocs: YesNoSchema.optional(),\n selectedIDE: z.union([z.enum(['cursor', 'windsurf']), z.literal('skip')]).optional(),\n })\n .refine(\n (data) => {\n // If CrewAI is selected, require crew URL and bearer token\n if (data.mode === 'CrewAI') {\n return !!data.crewUrl && !!data.crewBearerToken\n }\n return true\n },\n {\n message: 'Crew URL and bearer token are required for CrewAI',\n path: ['crewUrl', 'crewBearerToken'],\n },\n )\n .refine(\n (data) => {\n // If LangGraph is selected with LangGraph Platform, require platform URL and LangSmith API key\n if (data.mode === 'LangGraph' && data.alreadyDeployed === 'Yes' && data.langGraphPlatform === 'Yes') {\n return (!!data.langGraphPlatformUrl && !!data.langSmithApiKey) || isLocalhost(data.langGraphPlatformUrl || '')\n }\n return true\n },\n {\n message: 'LangGraph Platform URL and LangSmith API key are required',\n path: ['langGraphPlatformUrl', 'langSmithApiKey'],\n },\n )\n\n// Export the inferred type from the schema\nexport type Config = z.infer<typeof ConfigSchema>\n\n// Question type definition with improved validation and sanitization\nexport type Question = {\n type: 'input' | 'yes/no' | 'select'\n name: keyof Config\n message: string\n choices?: readonly string[] | (() => Promise<{ name: string; value: string }[]>)\n default?: string\n when?: (answers: Partial<Config>) => boolean | Promise<boolean>\n sensitive?: boolean\n validate?: (input: string) => true | string // Return true if valid, error message string if invalid\n sanitize?: (input: string) => string // Function to sanitize input before validation\n}\n\n// CLI flags definition with descriptions\nexport const ConfigFlags = {\n booth: Flags.boolean({ description: 'Use CopilotKit in booth mode', default: false, char: 'b' }),\n mode: Flags.string({ description: 'How you will be interacting with AI', options: MODES, char: 'm' }),\n 'copilotkit-version': Flags.string({ description: 'CopilotKit version to use (e.g. 1.7.0)' }),\n 'use-copilot-cloud': Flags.string({ description: 'Use Copilot Cloud for production-ready hosting', options: YES_NO }),\n 'langgraph-agent': Flags.string({ description: 'LangGraph agent template to use', options: LANGGRAPH_AGENTS }),\n 'crew-type': Flags.string({ description: 'CrewAI implementation type', options: CREW_TYPES }),\n 'crew-name': Flags.string({ description: 'Name for your CrewAI agent' }),\n 'crew-url': Flags.string({ description: 'URL endpoint for your CrewAI agent' }),\n 'crew-bearer-token': Flags.string({ description: 'Bearer token for CrewAI authentication' }),\n 'langsmith-api-key': Flags.string({ description: 'LangSmith API key for LangGraph observability' }),\n 'llm-token': Flags.string({ description: 'API key for your preferred LLM provider' }),\n 'setup-ide-docs': Flags.string({ description: 'Setup IDE documentation rules for AI assistance', options: YES_NO }),\n 'selected-ide': Flags.string({\n description: 'IDE to configure with documentation rules',\n options: ['cursor', 'windsurf', 'skip'],\n }),\n}\n","export const isLocalhost = (url: string): boolean => {\n return url.includes('localhost') || url.includes('127.0.0.1') || url.includes('0.0.0.0')\n}\n"],"mappings":"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","names":[]}
|
package/dist/utils/version.d.ts
CHANGED
package/dist/utils/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/version.ts"],"sourcesContent":["// This is auto generated!\nexport const LIB_VERSION = \"0.0.
|
|
1
|
+
{"version":3,"sources":["../../src/utils/version.ts"],"sourcesContent":["// This is auto generated!\nexport const LIB_VERSION = \"0.0.41\";\n"],"mappings":";AACO,IAAM,cAAc;","names":[]}
|
package/oclif.manifest.json
CHANGED
|
@@ -138,6 +138,8 @@
|
|
|
138
138
|
"LangGraph",
|
|
139
139
|
"CrewAI",
|
|
140
140
|
"Mastra",
|
|
141
|
+
"LlamaIndex",
|
|
142
|
+
"Agno",
|
|
141
143
|
"AG2",
|
|
142
144
|
"MCP",
|
|
143
145
|
"Standard"
|
|
@@ -219,6 +221,29 @@
|
|
|
219
221
|
"multiple": false,
|
|
220
222
|
"type": "option"
|
|
221
223
|
},
|
|
224
|
+
"setup-ide-docs": {
|
|
225
|
+
"description": "Setup IDE documentation rules for AI assistance",
|
|
226
|
+
"name": "setup-ide-docs",
|
|
227
|
+
"hasDynamicHelp": false,
|
|
228
|
+
"multiple": false,
|
|
229
|
+
"options": [
|
|
230
|
+
"Yes",
|
|
231
|
+
"No"
|
|
232
|
+
],
|
|
233
|
+
"type": "option"
|
|
234
|
+
},
|
|
235
|
+
"selected-ide": {
|
|
236
|
+
"description": "IDE to configure with documentation rules",
|
|
237
|
+
"name": "selected-ide",
|
|
238
|
+
"hasDynamicHelp": false,
|
|
239
|
+
"multiple": false,
|
|
240
|
+
"options": [
|
|
241
|
+
"cursor",
|
|
242
|
+
"windsurf",
|
|
243
|
+
"skip"
|
|
244
|
+
],
|
|
245
|
+
"type": "option"
|
|
246
|
+
},
|
|
222
247
|
"runtimeUrl": {
|
|
223
248
|
"description": "runtime URL",
|
|
224
249
|
"name": "runtimeUrl",
|
|
@@ -301,5 +326,5 @@
|
|
|
301
326
|
]
|
|
302
327
|
}
|
|
303
328
|
},
|
|
304
|
-
"version": "0.0.
|
|
329
|
+
"version": "0.0.41"
|
|
305
330
|
}
|