create-agentmark 0.1.0 → 0.2.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/dist/index.js CHANGED
@@ -35,6 +35,15 @@ const main = async () => {
35
35
  initial: "",
36
36
  });
37
37
  apiKey = providedApiKey || "";
38
+ const { adapter } = await prompts({
39
+ name: "adapter",
40
+ type: "select",
41
+ message: "Which adapter would you like to use?",
42
+ choices: [
43
+ { title: "AI SDK (Vercel)", value: "ai-sdk" },
44
+ { title: "Mastra", value: "mastra" },
45
+ ],
46
+ });
38
47
  const { client } = await prompts({
39
48
  name: "client",
40
49
  type: "select",
@@ -47,7 +56,7 @@ const main = async () => {
47
56
  { title: "Skip", value: "skip" },
48
57
  ],
49
58
  });
50
- await createExampleApp(provider, model, client, targetPath, apiKey);
59
+ await createExampleApp(provider, model, client, targetPath, apiKey, adapter);
51
60
  // Always generate agentmark.json so config is consistent
52
61
  fs.writeJsonSync(`${targetPath}/agentmark.json`, config, { spaces: 2 });
53
62
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,MAAM,MAAM,GAAQ;QAClB,OAAO,EACL,6GAA6G;QAC/G,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,GAAG;KACnB,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAErC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,OAAO,CAAC;QACnC,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,oDAAoD;QAC7D,OAAO,EAAE,kBAAkB;KAC5B,CAAC,CAAC;IAEH,2BAA2B;IAC3B,MAAM,UAAU,GAAG,KAAK,UAAU,EAAE,CAAC;IACrC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAE7B,mEAAmE;IACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC;IAE1B,6DAA6D;IAC7D,MAAM,KAAK,GAAG,SAAS,CAAC,QAAkC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAE9E,yDAAyD;IAEzD,MAAM,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,CAAC;IAE/B,qCAAqC;IACrC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,OAAO,CAAC;QACvC,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,qDAAqD;QAC9D,OAAO,EAAE,EAAE;KACZ,CAAC,CAAC;IACH,MAAM,GAAG,cAAc,IAAI,EAAE,CAAC;IAE9B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,mCAAmC;QAC5C,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;YAC9C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACpC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;YACrC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;YAC9B,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;SACjC;KACF,CAAC,CAAC;IAEH,MAAM,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAEpE,yDAAyD;IACzD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,iBAAiB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const createExampleApp: (modelProvider: string, model: string, client: string, targetPath?: string, apiKey?: string) => Promise<void>;
1
+ export declare const createExampleApp: (modelProvider: string, model: string, client: string, targetPath?: string, apiKey?: string, adapter?: string) => Promise<void>;
2
2
  //# sourceMappingURL=create-example-app.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-example-app.d.ts","sourceRoot":"","sources":["../../../src/utils/examples/create-example-app.ts"],"names":[],"mappings":"AAwHA,eAAO,MAAM,gBAAgB,GAC3B,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,aAAY,MAAY,EACxB,SAAQ,MAAW,kBAuIpB,CAAC"}
1
+ {"version":3,"file":"create-example-app.d.ts","sourceRoot":"","sources":["../../../src/utils/examples/create-example-app.ts"],"names":[],"mappings":"AAyHA,eAAO,MAAM,gBAAgB,GAC3B,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,aAAY,MAAY,EACxB,SAAQ,MAAW,EACnB,UAAS,MAAiB,kBAyI3B,CAAC"}
@@ -8,7 +8,8 @@ const setupMCPServer = (client, targetPath) => {
8
8
  console.log("Skipping MCP server setup.");
9
9
  return;
10
10
  }
11
- const folderName = targetPath.replace("./", "");
11
+ // Keep ./ prefix for display in messages
12
+ const folderName = targetPath;
12
13
  // Handle VS Code
13
14
  if (client === "vscode") {
14
15
  try {
@@ -97,30 +98,33 @@ const setupMCPServer = (client, targetPath) => {
97
98
  return;
98
99
  }
99
100
  };
100
- export const createExampleApp = async (modelProvider, model, client, targetPath = ".", apiKey = "") => {
101
+ export const createExampleApp = async (modelProvider, model, client, targetPath = ".", apiKey = "", adapter = "ai-sdk") => {
101
102
  try {
102
103
  console.log("Creating Agent Mark example app...");
104
+ // Keep ./ prefix for display in messages
105
+ const folderName = targetPath;
103
106
  // Create directory structure
104
107
  fs.ensureDirSync(`${targetPath}/agentmark`);
105
108
  setupMCPServer(client, targetPath);
106
109
  // Create example prompts
107
- createExamplePrompts(model, targetPath);
110
+ createExamplePrompts(model, targetPath, adapter);
111
+ console.log(`✅ Example prompts and datasets created in ${folderName}/agentmark/`);
108
112
  // Create user client config at project root
109
113
  // Prefer TS for dev ergonomics
110
114
  const langModels = Providers[modelProvider].languageModels.slice(0, 1);
111
- fs.writeFileSync(`${targetPath}/agentmark.client.ts`, getClientConfigContent({ provider: modelProvider, languageModels: langModels }));
115
+ fs.writeFileSync(`${targetPath}/agentmark.client.ts`, getClientConfigContent({ provider: modelProvider, languageModels: langModels, adapter }));
112
116
  // Create .env file
113
117
  fs.writeFileSync(`${targetPath}/.env`, getEnvFileContent(modelProvider, apiKey));
114
118
  // Create .gitignore
115
119
  const gitignore = ['node_modules', '.env', '*.agentmark-outputs/', '.agentmark'].join('\n');
116
120
  fs.writeFileSync(`${targetPath}/.gitignore`, gitignore);
117
121
  // Create the main application file
118
- fs.writeFileSync(`${targetPath}/index.ts`, getIndexFileContent());
122
+ fs.writeFileSync(`${targetPath}/index.ts`, getIndexFileContent(adapter));
119
123
  // Create tsconfig.json
120
124
  fs.writeJsonSync(`${targetPath}/tsconfig.json`, getTsConfigContent(), { spaces: 2 });
121
125
  // Setup package.json and install dependencies
122
126
  setupPackageJson(targetPath);
123
- installDependencies(modelProvider, targetPath);
127
+ installDependencies(modelProvider, targetPath, adapter);
124
128
  // Generate types file using the type generation library
125
129
  console.log("Generating types from prompts...");
126
130
  try {
@@ -139,9 +143,9 @@ export const createExampleApp = async (modelProvider, model, client, targetPath
139
143
  console.log("Creating development server entry point...");
140
144
  const agentmarkInternalDir = path.join(targetPath, '.agentmark');
141
145
  fs.ensureDirSync(agentmarkInternalDir);
142
- // For now, hardcode to ai-sdk-v4 adapter (will be configurable in future)
143
- const adapterName = 'ai-sdk-v4';
144
- const runnerClassName = 'VercelAdapterRunner';
146
+ // Set adapter-specific values
147
+ const adapterName = adapter === 'mastra' ? 'mastra-v0' : 'ai-sdk-v5';
148
+ const runnerClassName = adapter === 'mastra' ? 'MastraAdapterRunner' : 'VercelAdapterRunner';
145
149
  const devEntryContent = `// Auto-generated runner server entry point
146
150
  // To customize, create a dev-server.ts file in your project root
147
151
 
@@ -154,19 +158,19 @@ async function main() {
154
158
 
155
159
  const args = process.argv.slice(2);
156
160
  const runnerPortArg = args.find(arg => arg.startsWith('--runner-port='));
157
- const fileServerPortArg = args.find(arg => arg.startsWith('--file-server-port='));
161
+ const apiServerPortArg = args.find(arg => arg.startsWith('--api-server-port='));
158
162
 
159
163
  const runnerPort = runnerPortArg ? parseInt(runnerPortArg.split('=')[1]) : 9417;
160
- const fileServerPort = fileServerPortArg ? parseInt(fileServerPortArg.split('=')[1]) : 9418;
164
+ const apiServerPort = apiServerPortArg ? parseInt(apiServerPortArg.split('=')[1]) : 9418;
161
165
 
162
166
  const runner = new ${runnerClassName}(client as any);
163
- const fileServerUrl = \`http://localhost:\${fileServerPort}\`;
167
+ const apiServerUrl = \`http://localhost:\${apiServerPort}\`;
164
168
  const templatesDirectory = path.join(process.cwd(), 'agentmark');
165
169
 
166
170
  await createRunnerServer({
167
171
  port: runnerPort,
168
172
  runner,
169
- fileServerUrl,
173
+ apiServerUrl,
170
174
  templatesDirectory
171
175
  });
172
176
  }
@@ -188,12 +192,11 @@ main().catch((err) => {
188
192
  ╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝
189
193
 
190
194
  `);
191
- const folderName = targetPath.replace("./", "");
192
195
  console.log('\n' + '═'.repeat(70));
193
196
  console.log('Next Steps');
194
197
  console.log('═'.repeat(70));
195
198
  console.log('\n Initialize Server:');
196
- if (folderName !== ".") {
199
+ if (folderName !== "." && folderName !== "./") {
197
200
  console.log(` $ cd ${folderName}`);
198
201
  }
199
202
  console.log(' $ npm run dev\n');
@@ -1 +1 @@
1
- {"version":3,"file":"create-example-app.js","sourceRoot":"","sources":["../../../src/utils/examples/create-example-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-example-app.js","sourceRoot":"","sources":["../../../src/utils/examples/create-example-app.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const getIndexFileContent: () => string;
1
+ export declare const getIndexFileContent: (adapter?: string) => string;
2
2
  //# sourceMappingURL=app-index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-index.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/app-index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,QAAO,MA0CtC,CAAC"}
1
+ {"version":3,"file":"app-index.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/app-index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,GAAI,UAAS,MAAiB,KAAG,MA4FhE,CAAC"}
@@ -1,5 +1,55 @@
1
- export const getIndexFileContent = () => {
2
- return `import "dotenv/config";
1
+ export const getIndexFileContent = (adapter = "ai-sdk") => {
2
+ if (adapter === "mastra") {
3
+ return `import "dotenv/config";
4
+ import { Agent } from "@mastra/core/agent";
5
+ import { client } from "./agentmark.client";
6
+
7
+ const telemetry = {
8
+ isEnabled: true,
9
+ metadata: {
10
+ traceId: "trace-123",
11
+ traceName: "customer-support",
12
+ userId: "user-123",
13
+ sessionId: "session-123",
14
+ sessionName: "my-first-session",
15
+ },
16
+ };
17
+
18
+ const runCustomerSupport = async (customer_message: string) => {
19
+ const prompt = await client.loadTextPrompt("customer-support-agent.prompt.mdx");
20
+ const agentConfig = await prompt.formatAgent({
21
+ options: {
22
+ telemetry,
23
+ },
24
+ });
25
+
26
+ const [messages, generateOptions] = await agentConfig.formatMessages({
27
+ props: {
28
+ customer_question: customer_message,
29
+ },
30
+ });
31
+
32
+ const agent = new Agent(agentConfig);
33
+ const response = await agent.generate(messages, generateOptions);
34
+
35
+ return (response as any).text || (response as any).content || String(response);
36
+ };
37
+
38
+ const main = async () => {
39
+ try {
40
+ const user_message = "How long does shipping take?";
41
+ const assistant = await runCustomerSupport(user_message);
42
+ console.log("Customer support response:", assistant);
43
+ } catch (error) {
44
+ console.error(error);
45
+ }
46
+ };
47
+
48
+ main();
49
+ `;
50
+ }
51
+ else {
52
+ return `import "dotenv/config";
3
53
  import { generateText } from "ai";
4
54
  import { client } from "./agentmark.client";
5
55
 
@@ -40,5 +90,6 @@ const main = async () => {
40
90
 
41
91
  main();
42
92
  `;
93
+ }
43
94
  };
44
95
  //# sourceMappingURL=app-index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-index.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/app-index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAW,EAAE;IAC9C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCR,CAAC;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"app-index.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/app-index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAAkB,QAAQ,EAAU,EAAE;IACxE,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CV,CAAC;IACA,CAAC;SAAM,CAAC;QACN,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCV,CAAC;IACA,CAAC;AACH,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const createExamplePrompts: (model: string, targetPath?: string) => void;
1
+ export declare const createExamplePrompts: (model: string, targetPath?: string, adapter?: string) => void;
2
2
  //# sourceMappingURL=example-prompts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"example-prompts.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/example-prompts.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,GAAI,OAAO,MAAM,EAAE,aAAY,MAAY,SA6B3E,CAAC"}
1
+ {"version":3,"file":"example-prompts.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/example-prompts.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,GAAI,OAAO,MAAM,EAAE,aAAY,MAAY,EAAE,UAAS,MAAiB,SA+BvG,CAAC"}
@@ -4,14 +4,16 @@ import { getCustomerSupportPrompt } from './customer-support-prompt.js';
4
4
  import { getPartyPlannerPrompt } from './party-planner-prompt.js';
5
5
  import { getStoryTellerPrompt } from './story-teller-prompt.js';
6
6
  import { getAnimalDataset, getCustomerQueryDataset, getPartyDataset, getStoryDataset } from './datasets.js';
7
- export const createExamplePrompts = (model, targetPath = ".") => {
7
+ export const createExamplePrompts = (model, targetPath = ".", adapter = "ai-sdk") => {
8
8
  // Ensure the templates directory exists
9
9
  fs.ensureDirSync(`${targetPath}/agentmark`);
10
- // Create animal drawing prompt and dataset
11
- const animalDrawingPrompt = getAnimalDrawingPrompt();
12
- fs.writeFileSync(`${targetPath}/agentmark/animal-drawing.prompt.mdx`, animalDrawingPrompt);
13
- const animalDataset = getAnimalDataset();
14
- fs.writeFileSync(`${targetPath}/agentmark/animal.jsonl`, animalDataset);
10
+ // Create animal drawing prompt and dataset (skip for mastra adapter)
11
+ if (adapter !== "mastra") {
12
+ const animalDrawingPrompt = getAnimalDrawingPrompt();
13
+ fs.writeFileSync(`${targetPath}/agentmark/animal-drawing.prompt.mdx`, animalDrawingPrompt);
14
+ const animalDataset = getAnimalDataset();
15
+ fs.writeFileSync(`${targetPath}/agentmark/animal.jsonl`, animalDataset);
16
+ }
15
17
  // Create customer support prompt and dataset
16
18
  const customerSupportPrompt = getCustomerSupportPrompt(model);
17
19
  fs.writeFileSync(`${targetPath}/agentmark/customer-support-agent.prompt.mdx`, customerSupportPrompt);
@@ -22,11 +24,12 @@ export const createExamplePrompts = (model, targetPath = ".") => {
22
24
  fs.writeFileSync(`${targetPath}/agentmark/party-planner.prompt.mdx`, partyPlannerPrompt);
23
25
  const partyDataset = getPartyDataset();
24
26
  fs.writeFileSync(`${targetPath}/agentmark/party.jsonl`, partyDataset);
25
- // Create story teller prompt and dataset
26
- const storyTellerPrompt = getStoryTellerPrompt();
27
- fs.writeFileSync(`${targetPath}/agentmark/story-teller.prompt.mdx`, storyTellerPrompt);
28
- const storyDataset = getStoryDataset();
29
- fs.writeFileSync(`${targetPath}/agentmark/story.jsonl`, storyDataset);
30
- console.log('✅ Example prompts and datasets created in agentmark folder');
27
+ // Create story teller prompt and dataset (skip for mastra adapter)
28
+ if (adapter !== "mastra") {
29
+ const storyTellerPrompt = getStoryTellerPrompt();
30
+ fs.writeFileSync(`${targetPath}/agentmark/story-teller.prompt.mdx`, storyTellerPrompt);
31
+ const storyDataset = getStoryDataset();
32
+ fs.writeFileSync(`${targetPath}/agentmark/story.jsonl`, storyDataset);
33
+ }
31
34
  };
32
35
  //# sourceMappingURL=example-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"example-prompts.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/example-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE5G,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAE,aAAqB,GAAG,EAAE,EAAE;IAC9E,wCAAwC;IACxC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,YAAY,CAAC,CAAC;IAE5C,2CAA2C;IAC3C,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;IACrD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,sCAAsC,EAAE,mBAAmB,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,yBAAyB,EAAE,aAAa,CAAC,CAAC;IAExE,6CAA6C;IAC7C,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9D,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,8CAA8C,EAAE,qBAAqB,CAAC,CAAC;IACrG,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;IACvD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,iCAAiC,EAAE,oBAAoB,CAAC,CAAC;IAEvF,0CAA0C;IAC1C,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACxD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,qCAAqC,EAAE,kBAAkB,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,wBAAwB,EAAE,YAAY,CAAC,CAAC;IAEtE,yCAAyC;IACzC,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;IACjD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,oCAAoC,EAAE,iBAAiB,CAAC,CAAC;IACvF,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,wBAAwB,EAAE,YAAY,CAAC,CAAC;IAEtE,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;AAC5E,CAAC,CAAC"}
1
+ {"version":3,"file":"example-prompts.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/example-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE5G,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAE,aAAqB,GAAG,EAAE,UAAkB,QAAQ,EAAE,EAAE;IAC1G,wCAAwC;IACxC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,YAAY,CAAC,CAAC;IAE5C,qEAAqE;IACrE,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;QACrD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,sCAAsC,EAAE,mBAAmB,CAAC,CAAC;QAC3F,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,yBAAyB,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAED,6CAA6C;IAC7C,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9D,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,8CAA8C,EAAE,qBAAqB,CAAC,CAAC;IACrG,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;IACvD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,iCAAiC,EAAE,oBAAoB,CAAC,CAAC;IAEvF,0CAA0C;IAC1C,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACxD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,qCAAqC,EAAE,kBAAkB,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,wBAAwB,EAAE,YAAY,CAAC,CAAC;IAEtE,mEAAmE;IACnE,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;QACjD,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,oCAAoC,EAAE,iBAAiB,CAAC,CAAC;QACvF,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,EAAE,CAAC,aAAa,CAAC,GAAG,UAAU,wBAAwB,EAAE,YAAY,CAAC,CAAC;IACxE,CAAC;AACH,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export declare const setupPackageJson: (targetPath?: string) => void;
2
- export declare const installDependencies: (modelProvider: string, targetPath?: string) => void;
2
+ export declare const installDependencies: (modelProvider: string, targetPath?: string, adapter?: string) => void;
3
3
  //# sourceMappingURL=package-setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"package-setup.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/package-setup.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,GAAI,aAAY,MAAY,SAyBxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,eAAe,MAAM,EACrB,aAAY,MAAY,SAqCzB,CAAC"}
1
+ {"version":3,"file":"package-setup.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/package-setup.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,GAAI,aAAY,MAAY,SAyBxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,eAAe,MAAM,EACrB,aAAY,MAAY,EACxB,UAAS,MAAiB,SAoD3B,CAAC"}
@@ -23,7 +23,7 @@ export const setupPackageJson = (targetPath = ".") => {
23
23
  };
24
24
  fs.writeJsonSync(packageJsonPath, pkgJson, { spaces: 2 });
25
25
  };
26
- export const installDependencies = (modelProvider, targetPath = ".") => {
26
+ export const installDependencies = (modelProvider, targetPath = ".", adapter = "ai-sdk") => {
27
27
  console.log("Installing required packages...");
28
28
  console.log("This might take a moment...");
29
29
  try {
@@ -34,19 +34,24 @@ export const installDependencies = (modelProvider, targetPath = ".") => {
34
34
  cwd: targetPath,
35
35
  });
36
36
  // Install the common packages
37
- // Use different package names for different providers
38
- // Pin required major versions: ai@v4, @ai-sdk/<provider>@v1
39
- const providerPackage = modelProvider === "ollama" ? "ollama-ai-provider" : `@ai-sdk/${modelProvider}@^1`;
40
37
  // SDK is required for both local (connects to agentmark serve) and cloud (connects to API)
41
38
  const installArgs = [
42
39
  "install",
43
40
  "dotenv",
44
41
  "@agentmark/prompt-core",
45
- "@agentmark/ai-sdk-v4-adapter",
46
42
  "@agentmark/sdk",
47
- providerPackage,
48
- "ai@^4",
49
43
  ];
44
+ // Install adapter-specific packages
45
+ if (adapter === "mastra") {
46
+ const providerPackage = `@ai-sdk/${modelProvider}`;
47
+ installArgs.push("@agentmark/mastra-v0-adapter", "@mastra/core@<0.20.0", "@mastra/mcp@<0.13.4", providerPackage);
48
+ }
49
+ else {
50
+ // Use different package names for different providers
51
+ // Pin required major versions: ai@v5, @ai-sdk/<provider>@v2
52
+ const providerPackage = `@ai-sdk/${modelProvider}@^2`;
53
+ installArgs.push("@agentmark/ai-sdk-v5-adapter", providerPackage, "ai@^5");
54
+ }
50
55
  execFileSync("npm", installArgs, { stdio: "inherit", cwd: targetPath });
51
56
  console.log("Packages installed successfully!");
52
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"package-setup.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/package-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,aAAqB,GAAG,EAAE,EAAE;IAC3D,MAAM,eAAe,GAAG,GAAG,UAAU,eAAe,CAAC;IAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,QAAQ,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,8DAA8D;IAC9D,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IACjD,OAAO,CAAC,IAAI;QACV,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI;YACtC,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnB,OAAO,CAAC,WAAW;QACjB,OAAO,CAAC,WAAW,IAAI,8CAA8C,CAAC;IAExE,OAAO,CAAC,OAAO,GAAG;QAChB,GAAG,OAAO,CAAC,OAAO;QAClB,MAAM,EAAE,kBAAkB;QAC1B,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,sBAAsB;QAChC,YAAY,EAAE,0BAA0B;KACzC,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,aAAqB,EACrB,aAAqB,GAAG,EACxB,EAAE;IACF,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,IAAI,CAAC;QACH,+DAA+D;QAC/D,wFAAwF;QACxF,QAAQ,CAAC,sEAAsE,EAAE;YAC/E,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,UAAU;SAChB,CAAC,CAAC;QAEH,8BAA8B;QAC9B,sDAAsD;QACtD,4DAA4D;QAC5D,MAAM,eAAe,GAAG,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,aAAa,KAAK,CAAC;QAC1G,2FAA2F;QAC3F,MAAM,WAAW,GAAG;YAClB,SAAS;YACT,QAAQ;YACR,wBAAwB;YACxB,8BAA8B;YAC9B,gBAAgB;YAChB,eAAe;YACf,OAAO;SACR,CAAC;QAEF,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QAExE,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"package-setup.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/package-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,aAAqB,GAAG,EAAE,EAAE;IAC3D,MAAM,eAAe,GAAG,GAAG,UAAU,eAAe,CAAC;IAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,QAAQ,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,8DAA8D;IAC9D,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IACjD,OAAO,CAAC,IAAI;QACV,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI;YACtC,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnB,OAAO,CAAC,WAAW;QACjB,OAAO,CAAC,WAAW,IAAI,8CAA8C,CAAC;IAExE,OAAO,CAAC,OAAO,GAAG;QAChB,GAAG,OAAO,CAAC,OAAO;QAClB,MAAM,EAAE,kBAAkB;QAC1B,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,sBAAsB;QAChC,YAAY,EAAE,0BAA0B;KACzC,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,aAAqB,EACrB,aAAqB,GAAG,EACxB,UAAkB,QAAQ,EAC1B,EAAE;IACF,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,IAAI,CAAC;QACH,+DAA+D;QAC/D,wFAAwF;QACxF,QAAQ,CAAC,sEAAsE,EAAE;YAC/E,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,UAAU;SAChB,CAAC,CAAC;QAEH,8BAA8B;QAC9B,2FAA2F;QAC3F,MAAM,WAAW,GAAG;YAClB,SAAS;YACT,QAAQ;YACR,wBAAwB;YACxB,gBAAgB;SACjB,CAAC;QAGF,oCAAoC;QACpC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,eAAe,GAAG,WAAW,aAAa,EAAE,CAAC;YACnD,WAAW,CAAC,IAAI,CACd,8BAA8B,EAC9B,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,4DAA4D;YAC5D,MAAM,eAAe,GAAG,WAAW,aAAa,KAAK,CAAC;YACtD,WAAW,CAAC,IAAI,CACd,8BAA8B,EAC9B,eAAe,EACf,OAAO,CACR,CAAC;QACJ,CAAC;QAED,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QAExE,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export declare const getClientConfigContent: (options: {
2
2
  provider: string;
3
3
  languageModels: string[];
4
+ adapter: string;
4
5
  }) => string;
5
6
  //# sourceMappingURL=user-client-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-client-config.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,GAAI,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,WAmF7F,CAAC"}
1
+ {"version":3,"file":"user-client-config.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,GAAI,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,WAmK9G,CAAC"}
@@ -1,17 +1,95 @@
1
1
  export const getClientConfigContent = (options) => {
2
- const { provider, languageModels } = options;
3
- const providerImport = provider === 'ollama'
4
- ? "import { ollama } from 'ollama-ai-provider';"
5
- : `import { ${provider} } from '@ai-sdk/${provider}';`;
6
- const extraModelRegs = provider === 'openai'
7
- ? `.registerModels(["dall-e-3"], (name: string) => ${provider}.image(name))
2
+ const { provider, languageModels, adapter } = options;
3
+ if (adapter === "mastra") {
4
+ const providerImport = provider === 'ollama'
5
+ ? "import { ollama } from 'ollama-ai-provider';"
6
+ : `import { ${provider} } from '@ai-sdk/${provider}';`;
7
+ return `// agentmark.client.ts
8
+ import path from 'node:path';
9
+ import dotenv from 'dotenv';
10
+ dotenv.config({ path: path.resolve(__dirname, '.env') });
11
+ import { createAgentMarkClient, MastraModelRegistry, MastraToolRegistry, EvalRegistry } from "@agentmark/mastra-v0-adapter";
12
+ import { AgentMarkSDK } from "@agentmark/sdk";
13
+ import AgentMarkTypes, { Tools } from './agentmark.types';
14
+ ${providerImport}
15
+
16
+ function createModelRegistry() {
17
+ const modelRegistry = new MastraModelRegistry();
18
+ modelRegistry.registerModels(${JSON.stringify(languageModels)}, (name: string) => ${provider}(name));
19
+ return modelRegistry;
20
+ }
21
+
22
+ function createToolRegistry() {
23
+ const toolRegistry = new MastraToolRegistry<Tools>()
24
+ .register('search_knowledgebase', async ({ query }) => {
25
+ // Simulate search delay
26
+ await new Promise(resolve => setTimeout(resolve, 500));
27
+
28
+ // Return all three knowledge base articles
29
+ // The LLM will select the relevant one based on the query
30
+ return {
31
+ articles: [
32
+ { topic: 'shipping', content: 'Standard shipping takes 3–5 business days.' },
33
+ { topic: 'warranty', content: 'All products include a 1-year limited warranty.' },
34
+ { topic: 'returns', content: 'You can return items within 30 days of delivery.' }
35
+ ]
36
+ };
37
+ });
38
+ return toolRegistry;
39
+ }
40
+
41
+ function createEvalRegistry() {
42
+ const evalRegistry = new EvalRegistry()
43
+ .register('exact_match_json', ({ output, expectedOutput }) => {
44
+ if (!expectedOutput) {
45
+ return { score: 0, label: 'error', reason: 'No expected output provided', passed: false };
46
+ }
47
+ try {
48
+ const ok = JSON.stringify(output) === JSON.stringify(JSON.parse(expectedOutput));
49
+ return {
50
+ score: ok ? 1 : 0,
51
+ label: ok ? 'correct' : 'incorrect',
52
+ reason: ok ? 'Exact match' : 'Mismatch',
53
+ passed: ok
54
+ };
55
+ } catch (e) {
56
+ return { score: 0, label: 'error', reason: 'Failed to parse expected output as JSON', passed: false };
57
+ }
58
+ });
59
+ return evalRegistry;
60
+ }
61
+
62
+ function createClient(ctx?: { env?: Record<string,string|undefined> }) {
63
+ const env = (ctx?.env ?? process.env) as Record<string, string | undefined>;
64
+ // For local development, connect to the local agentmark serve instance (default: http://localhost:9418)
65
+ // For cloud deployment, set AGENTMARK_BASE_URL, AGENTMARK_API_KEY, and AGENTMARK_APP_ID
66
+ const baseUrl = env.AGENTMARK_BASE_URL || 'http://localhost:9418';
67
+ const apiKey = env.AGENTMARK_API_KEY || '';
68
+ const appId = env.AGENTMARK_APP_ID || '';
69
+ const sdk = new AgentMarkSDK({ apiKey, appId, baseUrl });
70
+ const fileLoader = sdk.getFileLoader();
71
+ const modelRegistry = createModelRegistry();
72
+ const toolRegistry = createToolRegistry();
73
+ const evalRegistry = createEvalRegistry();
74
+ return createAgentMarkClient<AgentMarkTypes, typeof toolRegistry>({ loader: fileLoader, modelRegistry, toolRegistry, evalRegistry });
75
+ }
76
+
77
+ export const client = createClient();
78
+ `;
79
+ }
80
+ else {
81
+ const providerImport = provider === 'ollama'
82
+ ? "import { ollama } from 'ollama-ai-provider';"
83
+ : `import { ${provider} } from '@ai-sdk/${provider}';`;
84
+ const extraModelRegs = provider === 'openai'
85
+ ? `.registerModels(["dall-e-3"], (name: string) => ${provider}.image(name))
8
86
  .registerModels(["tts-1-hd"], (name: string) => ${provider}.speech(name))`
9
- : '';
10
- return `// agentmark.client.ts
87
+ : '';
88
+ return `// agentmark.client.ts
11
89
  import path from 'node:path';
12
90
  import dotenv from 'dotenv';
13
91
  dotenv.config({ path: path.resolve(__dirname, '.env') });
14
- import { createAgentMarkClient, VercelAIModelRegistry, VercelAIToolRegistry, EvalRegistry } from "@agentmark/ai-sdk-v4-adapter";
92
+ import { createAgentMarkClient, VercelAIModelRegistry, VercelAIToolRegistry, EvalRegistry } from "@agentmark/ai-sdk-v5-adapter";
15
93
  import { AgentMarkSDK } from "@agentmark/sdk";
16
94
  import AgentMarkTypes, { Tools } from './agentmark.types';
17
95
  ${providerImport}
@@ -75,10 +153,11 @@ function createClient(ctx?: { env?: Record<string,string|undefined> }) {
75
153
  const modelRegistry = createModelRegistry();
76
154
  const toolRegistry = createToolRegistry();
77
155
  const evalRegistry = createEvalRegistry();
78
- return createAgentMarkClient<AgentMarkTypes>({ loader: fileLoader, modelRegistry, toolRegistry, evalRegistry });
156
+ return createAgentMarkClient<AgentMarkTypes, typeof toolRegistry>({ loader: fileLoader, modelRegistry, toolRegistry, evalRegistry });
79
157
  }
80
158
 
81
159
  export const client = createClient();
82
160
  `;
161
+ }
83
162
  };
84
163
  //# sourceMappingURL=user-client-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-client-config.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAuD,EAAE,EAAE;IAChG,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAC7C,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;QAC1C,CAAC,CAAC,8CAA8C;QAChD,CAAC,CAAC,YAAY,QAAQ,oBAAoB,QAAQ,IAAI,CAAC;IACzD,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;QAC1C,CAAC,CAAC,mDAAmD,QAAQ;sDACX,QAAQ,gBAAgB;QAC1E,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;;;;;EAOP,cAAc;;;;sBAIM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,uBAAuB,QAAQ;MAC7E,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DnB,CAAC;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"user-client-config.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAwE,EAAE,EAAE;IACjH,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEtD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;YAC1C,CAAC,CAAC,8CAA8C;YAChD,CAAC,CAAC,YAAY,QAAQ,oBAAoB,QAAQ,IAAI,CAAC;QAEzD,OAAO;;;;;;;EAOT,cAAc;;;;iCAIiB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,uBAAuB,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4D7F,CAAC;IACA,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;YAC1C,CAAC,CAAC,8CAA8C;YAChD,CAAC,CAAC,YAAY,QAAQ,oBAAoB,QAAQ,IAAI,CAAC;QACzD,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;YAC1C,CAAC,CAAC,mDAAmD,QAAQ;sDACb,QAAQ,gBAAgB;YACxE,CAAC,CAAC,EAAE,CAAC;QAEP,OAAO;;;;;;;EAOT,cAAc;;;;sBAIM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,uBAAuB,QAAQ;MAC7E,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DnB,CAAC;IACA,CAAC;AACH,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-agentmark",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "type": "module",
5
5
  "description": "Create AgentMark projects with npm create agentmark",
6
6
  "main": "dist/index.js",