create-agentmark 0.2.0 → 0.3.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
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from "fs-extra";
3
3
  import prompts from "prompts";
4
- import { Providers } from "./utils/providers.js";
5
- import { createExampleApp } from "./utils/examples/create-example-app.js";
4
+ import { createExampleApp } from "./utils/examples/create-example-app";
6
5
  const main = async () => {
7
6
  const config = {
8
7
  $schema: "https://raw.githubusercontent.com/agentmark-ai/agentmark/refs/heads/main/packages/cli/agentmark.schema.json",
@@ -20,12 +19,7 @@ const main = async () => {
20
19
  // Create the target folder
21
20
  const targetPath = `./${folderName}`;
22
21
  fs.ensureDirSync(targetPath);
23
- // Force OpenAI provider for initial setup to streamline onboarding
24
- const provider = 'openai';
25
- // Default to the first language model of the chosen provider
26
- const model = Providers[provider].languageModels[0];
27
- // Model is selected implicitly for setup; no need to log
28
- config.builtInModels = [model];
22
+ config.builtInModels = ['gpt-4o'];
29
23
  // Prompt only for the OpenAI API key
30
24
  let apiKey = "";
31
25
  const { providedApiKey } = await prompts({
@@ -56,7 +50,7 @@ const main = async () => {
56
50
  { title: "Skip", value: "skip" },
57
51
  ],
58
52
  });
59
- await createExampleApp(provider, model, client, targetPath, apiKey, adapter);
53
+ await createExampleApp(client, targetPath, apiKey, adapter);
60
54
  // Always generate agentmark.json so config is consistent
61
55
  fs.writeJsonSync(`${targetPath}/agentmark.json`, config, { spaces: 2 });
62
56
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
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,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAEvE,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,MAAM,CAAC,aAAa,GAAG,CAAC,QAAQ,CAAC,CAAC;IAElC,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,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC;QAChC,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,sCAAsC;QAC/C,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC7C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;SACrC;KACF,CAAC,CAAC;IAEH,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,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAE5D,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,2 +1,2 @@
1
- export declare const createExampleApp: (modelProvider: string, model: string, client: string, targetPath?: string, apiKey?: string, adapter?: string) => Promise<void>;
1
+ export declare const createExampleApp: (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":"AAyHA,eAAO,MAAM,gBAAgB,GAC3B,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,aAAY,MAAY,EACxB,SAAQ,MAAW,EACnB,UAAS,MAAiB,kBAyI3B,CAAC"}
1
+ {"version":3,"file":"create-example-app.d.ts","sourceRoot":"","sources":["../../../src/utils/examples/create-example-app.ts"],"names":[],"mappings":"AA0HA,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,MAAM,EACd,aAAY,MAAY,EACxB,SAAQ,MAAW,EACnB,UAAS,MAAiB,kBA0K3B,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import fs from "fs-extra";
2
+ import { readFileSync, writeFileSync, existsSync } from "fs";
2
3
  import * as path from "path";
3
4
  import { Providers } from "../providers.js";
4
- import { setupPackageJson, installDependencies, getIndexFileContent, getTsConfigContent, getEnvFileContent, createExamplePrompts, getClientConfigContent, } from "./templates/index.js";
5
+ import { setupPackageJson, installDependencies, getIndexFileContent, getTsConfigContent, getEnvFileContent, createExamplePrompts, getClientConfigContent, getAdapterConfig, } from "./templates/index.js";
5
6
  import { fetchPromptsFrontmatter, generateTypeDefinitions } from "@agentmark/shared-utils";
6
7
  const setupMCPServer = (client, targetPath) => {
7
8
  if (client === "skip") {
@@ -98,8 +99,10 @@ const setupMCPServer = (client, targetPath) => {
98
99
  return;
99
100
  }
100
101
  };
101
- export const createExampleApp = async (modelProvider, model, client, targetPath = ".", apiKey = "", adapter = "ai-sdk") => {
102
+ export const createExampleApp = async (client, targetPath = ".", apiKey = "", adapter = "ai-sdk") => {
102
103
  try {
104
+ const modelProvider = 'openai';
105
+ const model = 'gpt-4o';
103
106
  console.log("Creating Agent Mark example app...");
104
107
  // Keep ./ prefix for display in messages
105
108
  const folderName = targetPath;
@@ -143,34 +146,43 @@ export const createExampleApp = async (modelProvider, model, client, targetPath
143
146
  console.log("Creating development server entry point...");
144
147
  const agentmarkInternalDir = path.join(targetPath, '.agentmark');
145
148
  fs.ensureDirSync(agentmarkInternalDir);
146
- // Set adapter-specific values
147
- const adapterName = adapter === 'mastra' ? 'mastra-v0' : 'ai-sdk-v5';
148
- const runnerClassName = adapter === 'mastra' ? 'MastraAdapterRunner' : 'VercelAdapterRunner';
149
- const devEntryContent = `// Auto-generated runner server entry point
149
+ // Get adapter-specific values from config
150
+ const adapterConfig = getAdapterConfig(adapter);
151
+ const { webhookHandler } = adapterConfig.classes;
152
+ const devEntryContent = `// Auto-generated webhook server entry point
150
153
  // To customize, create a dev-server.ts file in your project root
151
154
 
152
- import { createRunnerServer } from '@agentmark/cli/runner-server';
153
- import { ${runnerClassName} } from '@agentmark/${adapterName}-adapter/runner';
155
+ import { createWebhookServer } from '@agentmark/cli/runner-server';
156
+ import { ${webhookHandler} } from '${adapterConfig.package}/runner';
157
+ import { AgentMarkSDK } from '@agentmark/sdk';
154
158
  import path from 'path';
155
159
 
156
160
  async function main() {
157
161
  const { client } = await import('../agentmark.client.js');
158
162
 
159
163
  const args = process.argv.slice(2);
160
- const runnerPortArg = args.find(arg => arg.startsWith('--runner-port='));
161
- const apiServerPortArg = args.find(arg => arg.startsWith('--api-server-port='));
164
+ const webhookPortArg = args.find(arg => arg.startsWith('--webhook-port='));
165
+ const fileServerPortArg = args.find(arg => arg.startsWith('--file-server-port='));
162
166
 
163
- const runnerPort = runnerPortArg ? parseInt(runnerPortArg.split('=')[1]) : 9417;
164
- const apiServerPort = apiServerPortArg ? parseInt(apiServerPortArg.split('=')[1]) : 9418;
167
+ const webhookPort = webhookPortArg ? parseInt(webhookPortArg.split('=')[1]) : 9417;
168
+ const fileServerPort = fileServerPortArg ? parseInt(fileServerPortArg.split('=')[1]) : 9418;
165
169
 
166
- const runner = new ${runnerClassName}(client as any);
167
- const apiServerUrl = \`http://localhost:\${apiServerPort}\`;
170
+ // Initialize OpenTelemetry tracing to export traces to the API server
171
+ const fileServerUrl = \`http://localhost:\${fileServerPort}\`;
172
+ const sdk = new AgentMarkSDK({
173
+ apiKey: '',
174
+ appId: '',
175
+ baseUrl: fileServerUrl,
176
+ });
177
+ sdk.initTracing({ disableBatch: true });
178
+
179
+ const handler = new ${webhookHandler}(client as any);
168
180
  const templatesDirectory = path.join(process.cwd(), 'agentmark');
169
181
 
170
- await createRunnerServer({
171
- port: runnerPort,
172
- runner,
173
- apiServerUrl,
182
+ await createWebhookServer({
183
+ port: webhookPort,
184
+ handler,
185
+ fileServerUrl,
174
186
  templatesDirectory
175
187
  });
176
188
  }
@@ -181,6 +193,22 @@ main().catch((err) => {
181
193
  });
182
194
  `;
183
195
  fs.writeFileSync(path.join(agentmarkInternalDir, 'dev-entry.ts'), devEntryContent);
196
+ // Create .env file with webhook URL configuration
197
+ // Always use Express runner server (port 9417) for local development
198
+ // regardless of deployment platform
199
+ const webhookUrl = 'http://localhost:9417';
200
+ const envPath = path.join(targetPath, '.env');
201
+ let envContent = '';
202
+ if (existsSync(envPath)) {
203
+ envContent = readFileSync(envPath, 'utf8');
204
+ if (!envContent.includes('AGENTMARK_WEBHOOK_URL')) {
205
+ envContent += `\n# AgentMark runner server URL\nAGENTMARK_WEBHOOK_URL=${webhookUrl}\n`;
206
+ }
207
+ }
208
+ else {
209
+ envContent = `# AgentMark runner server URL\nAGENTMARK_WEBHOOK_URL=${webhookUrl}\n\n# Add your API keys here\n# OPENAI_API_KEY=your-key-here\n`;
210
+ }
211
+ writeFileSync(envPath, envContent, 'utf8');
184
212
  // Success message
185
213
  console.log("\n✅ Agentmark initialization completed successfully!");
186
214
  console.log(`
@@ -195,7 +223,8 @@ main().catch((err) => {
195
223
  console.log('\n' + '═'.repeat(70));
196
224
  console.log('Next Steps');
197
225
  console.log('═'.repeat(70));
198
- console.log('\n Initialize Server:');
226
+ // Simplified instructions - always just "npm run dev"
227
+ console.log('\n Get Started:');
199
228
  if (folderName !== "." && folderName !== "./") {
200
229
  console.log(` $ cd ${folderName}`);
201
230
  }
@@ -203,7 +232,7 @@ main().catch((err) => {
203
232
  console.log('─'.repeat(70));
204
233
  console.log('Resources');
205
234
  console.log('─'.repeat(70));
206
- console.log(' Deploy to Production: https://docs.agentmark.co/platform/getting_started/quickstart');
235
+ console.log(' Documentation: https://docs.agentmark.co');
207
236
  console.log('═'.repeat(70) + '\n');
208
237
  }
209
238
  catch (error) {
@@ -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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"}
@@ -0,0 +1,15 @@
1
+ export interface AdapterConfig {
2
+ /** npm package name for the adapter */
3
+ package: string;
4
+ /** Additional npm packages required by this adapter */
5
+ dependencies: string[];
6
+ /** Class names used in generated code */
7
+ classes: {
8
+ modelRegistry: string;
9
+ toolRegistry: string;
10
+ webhookHandler: string;
11
+ };
12
+ }
13
+ export declare const ADAPTERS: Record<string, AdapterConfig>;
14
+ export declare function getAdapterConfig(adapter: string): AdapterConfig;
15
+ //# sourceMappingURL=adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/adapters.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,yCAAyC;IACzC,OAAO,EAAE;QACP,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAmBlD,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAM/D"}
@@ -0,0 +1,28 @@
1
+ export const ADAPTERS = {
2
+ 'ai-sdk': {
3
+ package: '@agentmark/ai-sdk-v5-adapter',
4
+ dependencies: ['ai@^5'],
5
+ classes: {
6
+ modelRegistry: 'VercelAIModelRegistry',
7
+ toolRegistry: 'VercelAIToolRegistry',
8
+ webhookHandler: 'VercelAdapterWebhookHandler',
9
+ },
10
+ },
11
+ 'mastra': {
12
+ package: '@agentmark/mastra-v0-adapter',
13
+ dependencies: ['@mastra/core@<0.20.0', '@mastra/mcp@<0.13.4'],
14
+ classes: {
15
+ modelRegistry: 'MastraModelRegistry',
16
+ toolRegistry: 'MastraToolRegistry',
17
+ webhookHandler: 'MastraAdapterWebhookHandler',
18
+ },
19
+ },
20
+ };
21
+ export function getAdapterConfig(adapter) {
22
+ const config = ADAPTERS[adapter];
23
+ if (!config) {
24
+ throw new Error(`Unknown adapter: ${adapter}. Available adapters: ${Object.keys(ADAPTERS).join(', ')}`);
25
+ }
26
+ return config;
27
+ }
28
+ //# sourceMappingURL=adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/adapters.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,QAAQ,GAAkC;IACrD,QAAQ,EAAE;QACR,OAAO,EAAE,8BAA8B;QACvC,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,OAAO,EAAE;YACP,aAAa,EAAE,uBAAuB;YACtC,YAAY,EAAE,sBAAsB;YACpC,cAAc,EAAE,6BAA6B;SAC9C;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,8BAA8B;QACvC,YAAY,EAAE,CAAC,sBAAsB,EAAE,qBAAqB,CAAC;QAC7D,OAAO,EAAE;YACP,aAAa,EAAE,qBAAqB;YACpC,YAAY,EAAE,oBAAoB;YAClC,cAAc,EAAE,6BAA6B;SAC9C;KACF;CACF,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,yBAAyB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1G,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const getEnvFileContent: (modelProvider: string, apiKey?: string) => string;
1
+ export declare const getEnvFileContent: (_modelProvider: string, apiKey?: string) => string;
2
2
  //# sourceMappingURL=env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/env.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,iBAAiB,GAC5B,eAAe,MAAM,EACrB,SAAQ,MAAW,KAClB,MAsBF,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/env.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,GAC5B,gBAAgB,MAAM,EACtB,SAAQ,MAAW,KAClB,MAWF,CAAC"}
@@ -1,30 +1,12 @@
1
- // Map providers to their correct environment variable names
2
- const providerApiKeyMap = {
3
- openai: "OPENAI_API_KEY",
4
- anthropic: "ANTHROPIC_API_KEY",
5
- google: "GOOGLE_GENERATIVE_AI_API_KEY",
6
- groq: "GROQ_API_KEY",
7
- xai: "XAI_API_KEY",
8
- ollama: "" // Ollama doesn't need an API key for local usage
9
- };
10
- export const getEnvFileContent = (modelProvider, apiKey = '') => {
11
- const envVarName = providerApiKeyMap[modelProvider] || `${modelProvider.toUpperCase()}_API_KEY`;
1
+ export const getEnvFileContent = (_modelProvider, apiKey = '') => {
12
2
  const apiKeyValue = apiKey || 'your_api_key_here';
13
- // Ollama doesn't need an API key for local usage
14
- const needsApiKey = modelProvider !== 'ollama';
15
- let content = `# Cloud deployment: Set these environment variables
3
+ return `# Cloud deployment: Set these environment variables
16
4
  # AGENTMARK_BASE_URL=https://api.agentmark.co
17
5
  # AGENTMARK_API_KEY=your_agentmark_api_key
18
6
  # AGENTMARK_APP_ID=your_agentmark_app_id
19
7
  # Learn more: https://docs.agentmark.co/platform/getting_started/quickstart
20
8
 
9
+ OPENAI_API_KEY=${apiKeyValue}
21
10
  `;
22
- if (needsApiKey) {
23
- content += `${envVarName}=${apiKeyValue}\n`;
24
- }
25
- else {
26
- content += `# No API key needed for ${modelProvider}\n`;
27
- }
28
- return content;
29
11
  };
30
12
  //# sourceMappingURL=env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/env.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,MAAM,iBAAiB,GAA2B;IAChD,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,8BAA8B;IACtC,IAAI,EAAE,cAAc;IACpB,GAAG,EAAE,aAAa;IAClB,MAAM,EAAE,EAAE,CAAC,iDAAiD;CAC7D,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,aAAqB,EACrB,SAAiB,EAAE,EACX,EAAE;IACV,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC;IAChG,MAAM,WAAW,GAAG,MAAM,IAAI,mBAAmB,CAAC;IAElD,iDAAiD;IACjD,MAAM,WAAW,GAAG,aAAa,KAAK,QAAQ,CAAC;IAE/C,IAAI,OAAO,GAAG;;;;;;CAMf,CAAC;IAEA,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,GAAG,UAAU,IAAI,WAAW,IAAI,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,2BAA2B,aAAa,IAAI,CAAC;IAC1D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/env.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,cAAsB,EACtB,SAAiB,EAAE,EACX,EAAE;IACV,MAAM,WAAW,GAAG,MAAM,IAAI,mBAAmB,CAAC;IAElD,OAAO;;;;;;iBAMQ,WAAW;CAC3B,CAAC;AACF,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './adapters.js';
1
2
  export * from './app-index.js';
2
3
  export * from './env.js';
3
4
  export * from './package-setup.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './adapters.js';
1
2
  export * from './app-index.js';
2
3
  export * from './env.js';
3
4
  export * from './package-setup.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC"}
@@ -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,EACxB,UAAS,MAAiB,SAoD3B,CAAC"}
1
+ {"version":3,"file":"package-setup.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/package-setup.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,GAAI,aAAY,MAAY,SA4BxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,eAAe,MAAM,EACrB,aAAY,MAAY,EACxB,UAAS,MAAiB,SAuC3B,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import fs from "fs-extra";
2
2
  import { execSync, execFileSync } from "child_process";
3
+ import { getAdapterConfig } from "./adapters.js";
3
4
  export const setupPackageJson = (targetPath = ".") => {
4
5
  const packageJsonPath = `${targetPath}/package.json`;
5
6
  if (!fs.existsSync(packageJsonPath)) {
@@ -14,10 +15,12 @@ export const setupPackageJson = (targetPath = ".") => {
14
15
  : pkgJson.name;
15
16
  pkgJson.description =
16
17
  pkgJson.description || "A simple Node.js app using the Agentmark SDK";
18
+ // All platforms use "agentmark dev" which runs their respective dev-entry.ts
19
+ const devScript = "agentmark dev";
17
20
  pkgJson.scripts = {
18
21
  ...pkgJson.scripts,
19
22
  "demo": "npx tsx index.ts",
20
- "dev": "agentmark dev",
23
+ "dev": devScript,
21
24
  "prompt": "agentmark run-prompt",
22
25
  "experiment": "agentmark run-experiment",
23
26
  };
@@ -26,10 +29,12 @@ export const setupPackageJson = (targetPath = ".") => {
26
29
  export const installDependencies = (modelProvider, targetPath = ".", adapter = "ai-sdk") => {
27
30
  console.log("Installing required packages...");
28
31
  console.log("This might take a moment...");
32
+ const adapterConfig = getAdapterConfig(adapter);
29
33
  try {
30
34
  // Install TypeScript, ts-node, CLI, and other dev dependencies
31
35
  // CLI needs to be a devDep so dev-entry.ts can import from @agentmark/cli/runner-server
32
- execSync("npm install --save-dev typescript ts-node @types/node @agentmark/cli", {
36
+ const devDepsCmd = "npm install --save-dev typescript ts-node @types/node @agentmark/cli --legacy-peer-deps";
37
+ execSync(devDepsCmd, {
33
38
  stdio: "inherit",
34
39
  cwd: targetPath,
35
40
  });
@@ -40,18 +45,11 @@ export const installDependencies = (modelProvider, targetPath = ".", adapter = "
40
45
  "dotenv",
41
46
  "@agentmark/prompt-core",
42
47
  "@agentmark/sdk",
48
+ adapterConfig.package,
49
+ `@ai-sdk/${modelProvider}@^2`,
50
+ ...adapterConfig.dependencies,
51
+ "--legacy-peer-deps",
43
52
  ];
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
- }
55
53
  execFileSync("npm", installArgs, { stdio: "inherit", cwd: targetPath });
56
54
  console.log("Packages installed successfully!");
57
55
  }
@@ -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,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
+ {"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;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,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,6EAA6E;IAC7E,MAAM,SAAS,GAAG,eAAe,CAAC;IAElC,OAAO,CAAC,OAAO,GAAG;QAChB,GAAG,OAAO,CAAC,OAAO;QAClB,MAAM,EAAE,kBAAkB;QAC1B,KAAK,EAAE,SAAS;QAChB,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,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC;QACH,+DAA+D;QAC/D,wFAAwF;QACxF,MAAM,UAAU,GAAG,yFAAyF,CAAC;QAE7G,QAAQ,CAAC,UAAU,EAAE;YACnB,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;YAChB,aAAa,CAAC,OAAO;YACrB,WAAW,aAAa,KAAK;YAC7B,GAAG,aAAa,CAAC,YAAY;YAC7B,oBAAoB;SACrB,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 +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,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,WAmK9G,CAAC"}
1
+ {"version":3,"file":"user-client-config.d.ts","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,GAAI,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,WAqF9G,CAAC"}
@@ -1,108 +1,31 @@
1
+ import { getAdapterConfig } from "./adapters.js";
1
2
  export const getClientConfigContent = (options) => {
2
3
  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))
4
+ const adapterConfig = getAdapterConfig(adapter);
5
+ const { modelRegistry, toolRegistry } = adapterConfig.classes;
6
+ const providerImport = `import { ${provider} } from '@ai-sdk/${provider}';`;
7
+ const extraModelRegs = provider === 'openai'
8
+ ? `.registerModels(["dall-e-3"], (name: string) => ${provider}.image(name))
86
9
  .registerModels(["tts-1-hd"], (name: string) => ${provider}.speech(name))`
87
- : '';
88
- return `// agentmark.client.ts
10
+ : '';
11
+ return `// agentmark.client.ts
89
12
  import path from 'node:path';
90
13
  import dotenv from 'dotenv';
91
14
  dotenv.config({ path: path.resolve(__dirname, '.env') });
92
- import { createAgentMarkClient, VercelAIModelRegistry, VercelAIToolRegistry, EvalRegistry } from "@agentmark/ai-sdk-v5-adapter";
15
+ import { createAgentMarkClient, ${modelRegistry}, ${toolRegistry}, EvalRegistry } from "${adapterConfig.package}";
93
16
  import { AgentMarkSDK } from "@agentmark/sdk";
94
17
  import AgentMarkTypes, { Tools } from './agentmark.types';
95
18
  ${providerImport}
96
19
 
97
20
  function createModelRegistry() {
98
- const modelRegistry = new VercelAIModelRegistry()
21
+ const modelRegistry = new ${modelRegistry}()
99
22
  .registerModels(${JSON.stringify(languageModels)}, (name: string) => ${provider}(name))
100
23
  ${extraModelRegs};
101
24
  return modelRegistry;
102
25
  }
103
26
 
104
27
  function createToolRegistry() {
105
- const toolRegistry = new VercelAIToolRegistry<Tools>()
28
+ const toolRegistry = new ${toolRegistry}<Tools>()
106
29
  .register('search_knowledgebase', async ({ query }) => {
107
30
  // Simulate search delay
108
31
  await new Promise(resolve => setTimeout(resolve, 500));
@@ -158,6 +81,5 @@ function createClient(ctx?: { env?: Record<string,string|undefined> }) {
158
81
 
159
82
  export const client = createClient();
160
83
  `;
161
- }
162
84
  };
163
85
  //# 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,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"}
1
+ {"version":3,"file":"user-client-config.js","sourceRoot":"","sources":["../../../../src/utils/examples/templates/user-client-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAwE,EAAE,EAAE;IACjH,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACtD,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC;IAE9D,MAAM,cAAc,GAAG,YAAY,QAAQ,oBAAoB,QAAQ,IAAI,CAAC;IAE5E,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;QAC1C,CAAC,CAAC,mDAAmD,QAAQ;sDACX,QAAQ,gBAAgB;QAC1E,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;;kCAIyB,aAAa,KAAK,YAAY,0BAA0B,aAAa,CAAC,OAAO;;;EAG7G,cAAc;;;8BAGc,aAAa;sBACrB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,uBAAuB,QAAQ;MAC7E,cAAc;;;;;6BAKS,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDxC,CAAC;AACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-agentmark",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "description": "Create AgentMark projects with npm create agentmark",
6
6
  "main": "dist/index.js",
@@ -12,6 +12,7 @@
12
12
  "scripts": {
13
13
  "build": "node -e \"require('fs').rmSync('./dist', { recursive: true, force: true })\" && tsc && node -e \"require('fs').chmodSync('dist/index.js', '755')\"",
14
14
  "test": "vitest run",
15
+ "lint": "eslint .",
15
16
  "prepack": "node -e \"try { require('fs').chmodSync('dist/index.js', '755') } catch {}\"",
16
17
  "prepare": "node -e \"try { require('fs').chmodSync('dist/index.js', '755') } catch {}\""
17
18
  },