@kya-os/create-molti 0.1.0-canary.3 → 0.1.0-canary.5

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.
@@ -130,7 +130,7 @@ export async function generateMoltiProject(options) {
130
130
  // GitHub Actions
131
131
  files.push({
132
132
  path: '.github/workflows/deploy.yml',
133
- content: generateDeployWorkflow(),
133
+ content: generateDeployWorkflow({ aiProvider: options.aiProvider }),
134
134
  encoding: 'utf-8',
135
135
  });
136
136
  // Identity file (public, safe to commit)
@@ -1 +1 @@
1
- {"version":3,"file":"generate-molti-project.js","sourceRoot":"","sources":["../../src/helpers/generate-molti-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-molti-project.js","sourceRoot":"","sources":["../../src/helpers/generate-molti-project.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  export { generateMoltiProject } from './generate-molti-project.js';
8
8
  export { generateIdentity, isValidDIDKey } from './generate-identity.js';
9
- export type { MoltiProjectOptions, MoltiGenerateResult, MoltiIdentity, GeneratedFile, } from '../types.js';
9
+ export type { MoltiProjectOptions, MoltiGenerateResult, MoltiIdentity, GeneratedFile, AiProvider, } from '../types.js';
10
10
  export { validateProjectName, type ValidationResult } from './validate-name.js';
11
11
  export { getPackageVersions, clearVersionCache, type MoltiPackageVersions } from './get-package-versions.js';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGzE,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGzE,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,UAAU,GACX,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iBAAiB;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAUzE,YAAY;AACZ,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAA6B,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iBAAiB;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAWzE,YAAY;AACZ,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAA6B,MAAM,2BAA2B,CAAC"}
@@ -3,9 +3,13 @@
3
3
  *
4
4
  * Generates the deploy.yml for CI/CD to Cloudflare.
5
5
  * Only required secrets are uploaded in the deploy step.
6
- * Optional AI provider keys (ANTHROPIC_API_KEY / OPENAI_API_KEY) are
7
- * included but commented out — uncomment once you've added them as
8
- * GitHub Secrets to avoid "Value not found in environment" errors.
6
+ * AI provider keys are conditionally included based on the
7
+ * provider selected during deployment.
9
8
  */
10
- export declare function generateDeployWorkflow(): string;
9
+ export type AiProvider = 'anthropic' | 'openai' | 'none';
10
+ export interface DeployWorkflowOptions {
11
+ /** Which AI provider key to include in the workflow. Defaults to 'none' (commented out). */
12
+ aiProvider?: AiProvider;
13
+ }
14
+ export declare function generateDeployWorkflow(options?: DeployWorkflowOptions): string;
11
15
  //# sourceMappingURL=github-workflow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github-workflow.d.ts","sourceRoot":"","sources":["../../src/templates/github-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wBAAgB,sBAAsB,IAAI,MAAM,CA+C/C"}
1
+ {"version":3,"file":"github-workflow.d.ts","sourceRoot":"","sources":["../../src/templates/github-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEzD,MAAM,WAAW,qBAAqB;IACpC,4FAA4F;IAC5F,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA0F9E"}
@@ -3,11 +3,40 @@
3
3
  *
4
4
  * Generates the deploy.yml for CI/CD to Cloudflare.
5
5
  * Only required secrets are uploaded in the deploy step.
6
- * Optional AI provider keys (ANTHROPIC_API_KEY / OPENAI_API_KEY) are
7
- * included but commented out — uncomment once you've added them as
8
- * GitHub Secrets to avoid "Value not found in environment" errors.
6
+ * AI provider keys are conditionally included based on the
7
+ * provider selected during deployment.
9
8
  */
10
- export function generateDeployWorkflow() {
9
+ export function generateDeployWorkflow(options) {
10
+ const aiProvider = options?.aiProvider ?? 'none';
11
+ // Build the secrets and env blocks based on selected AI provider
12
+ const aiSecretLines = [];
13
+ const aiEnvLines = [];
14
+ if (aiProvider === 'anthropic') {
15
+ aiSecretLines.push(' ANTHROPIC_API_KEY');
16
+ aiEnvLines.push(' ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}');
17
+ aiEnvLines.push(' # OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}');
18
+ }
19
+ else if (aiProvider === 'openai') {
20
+ aiSecretLines.push(' OPENAI_API_KEY');
21
+ aiEnvLines.push(' # ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}');
22
+ aiEnvLines.push(' OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}');
23
+ }
24
+ else {
25
+ // No provider selected — both commented out
26
+ aiEnvLines.push(' # Uncomment the AI provider you use (at least one is required):');
27
+ aiEnvLines.push(' # ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}');
28
+ aiEnvLines.push(' # OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}');
29
+ }
30
+ const secretsBlock = [
31
+ ' MCP_IDENTITY_PRIVATE_KEY',
32
+ ' AGENTSHIELD_API_KEY',
33
+ ...aiSecretLines,
34
+ ].join('\n');
35
+ const envBlock = [
36
+ ' MCP_IDENTITY_PRIVATE_KEY: \\${{ secrets.MCP_IDENTITY_PRIVATE_KEY }}',
37
+ ' AGENTSHIELD_API_KEY: \\${{ secrets.AGENTSHIELD_API_KEY }}',
38
+ ...aiEnvLines,
39
+ ].join('\n');
11
40
  return `name: Deploy to Cloudflare
12
41
 
13
42
  on:
@@ -39,20 +68,16 @@ jobs:
39
68
  uses: cloudflare/wrangler-action@v3
40
69
  with:
41
70
  apiToken: \${{ secrets.CLOUDFLARE_API_TOKEN }}
71
+ # Required when your API token has access to multiple CF accounts.
72
+ accountId: \${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
42
73
  # Secrets listed here are uploaded as Wrangler secrets.
43
74
  # IMPORTANT: Every secret listed MUST exist in your GitHub
44
75
  # repository's Settings > Secrets. Remove or comment out
45
76
  # any line for a secret you haven't added yet.
46
77
  secrets: |
47
- MCP_IDENTITY_PRIVATE_KEY
48
- AGENTSHIELD_API_KEY
49
- ANTHROPIC_API_KEY
78
+ ${secretsBlock}
50
79
  env:
51
- MCP_IDENTITY_PRIVATE_KEY: \${{ secrets.MCP_IDENTITY_PRIVATE_KEY }}
52
- AGENTSHIELD_API_KEY: \${{ secrets.AGENTSHIELD_API_KEY }}
53
- ANTHROPIC_API_KEY: \${{ secrets.ANTHROPIC_API_KEY }}
54
- # Uncomment the provider you use (at least one is required):
55
- # OPENAI_API_KEY: \${{ secrets.OPENAI_API_KEY }}
80
+ ${envBlock}
56
81
  `;
57
82
  }
58
83
  //# sourceMappingURL=github-workflow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"github-workflow.js","sourceRoot":"","sources":["../../src/templates/github-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,UAAU,sBAAsB;IACpC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CR,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"github-workflow.js","sourceRoot":"","sources":["../../src/templates/github-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,MAAM,UAAU,sBAAsB,CAAC,OAA+B;IACpE,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,MAAM,CAAC;IAEjD,iEAAiE;IACjE,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC/B,aAAa,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QACpD,UAAU,CAAC,IAAI,CACb,iEAAiE,CAClE,CAAC;QACF,UAAU,CAAC,IAAI,CACb,6DAA6D,CAC9D,CAAC;IACJ,CAAC;SAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACjD,UAAU,CAAC,IAAI,CACb,mEAAmE,CACpE,CAAC;QACF,UAAU,CAAC,IAAI,CACb,2DAA2D,CAC5D,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,4CAA4C;QAC5C,UAAU,CAAC,IAAI,CACb,2EAA2E,CAC5E,CAAC;QACF,UAAU,CAAC,IAAI,CACb,mEAAmE,CACpE,CAAC;QACF,UAAU,CAAC,IAAI,CACb,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,sCAAsC;QACtC,iCAAiC;QACjC,GAAG,aAAa;KACjB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,QAAQ,GAAG;QACf,+EAA+E;QAC/E,qEAAqE;QACrE,GAAG,UAAU;KACd,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCP,YAAY;;EAEZ,QAAQ;CACT,CAAC;AACF,CAAC"}
package/dist/types.d.ts CHANGED
@@ -15,6 +15,10 @@ export interface GeneratedFile {
15
15
  /** Encoding type */
16
16
  encoding: 'utf-8' | 'base64';
17
17
  }
18
+ /**
19
+ * AI provider selection for the deploy workflow
20
+ */
21
+ export type AiProvider = 'anthropic' | 'openai' | 'none';
18
22
  /**
19
23
  * Options for generating a Molti project
20
24
  */
@@ -35,6 +39,8 @@ export interface MoltiProjectOptions {
35
39
  instanceType?: 'lite' | 'basic' | 'standard-1' | 'standard-2' | 'standard-3' | 'standard-4';
36
40
  /** Skip identity generation (for testing) */
37
41
  skipIdentity?: boolean;
42
+ /** AI provider to include in the deploy workflow (defaults to 'none') */
43
+ aiProvider?: AiProvider;
38
44
  }
39
45
  /**
40
46
  * Generated identity from Ed25519 keypair
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,QAAQ,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;IAC5F,6CAA6C;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,qCAAqC;IACrC,QAAQ,EAAE,aAAa,CAAC;IACxB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,QAAQ,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;IAC5F,6CAA6C;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,yEAAyE;IACzE,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,qCAAqC;IACrC,QAAQ,EAAE,aAAa,CAAC;IACxB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kya-os/create-molti",
3
- "version": "0.1.0-canary.3",
3
+ "version": "0.1.0-canary.5",
4
4
  "description": "Scaffold a Moltworker project with MCP-I identity",
5
5
  "type": "module",
6
6
  "main": "./dist/helpers/index.js",
@@ -163,7 +163,7 @@ export async function generateMoltiProject(
163
163
  // GitHub Actions
164
164
  files.push({
165
165
  path: '.github/workflows/deploy.yml',
166
- content: generateDeployWorkflow(),
166
+ content: generateDeployWorkflow({ aiProvider: options.aiProvider }),
167
167
  encoding: 'utf-8',
168
168
  });
169
169
 
@@ -17,6 +17,7 @@ export type {
17
17
  MoltiGenerateResult,
18
18
  MoltiIdentity,
19
19
  GeneratedFile,
20
+ AiProvider,
20
21
  } from '../types.js';
21
22
 
22
23
  // Utilities
@@ -3,12 +3,65 @@
3
3
  *
4
4
  * Generates the deploy.yml for CI/CD to Cloudflare.
5
5
  * Only required secrets are uploaded in the deploy step.
6
- * Optional AI provider keys (ANTHROPIC_API_KEY / OPENAI_API_KEY) are
7
- * included but commented out — uncomment once you've added them as
8
- * GitHub Secrets to avoid "Value not found in environment" errors.
6
+ * AI provider keys are conditionally included based on the
7
+ * provider selected during deployment.
9
8
  */
10
9
 
11
- export function generateDeployWorkflow(): string {
10
+ export type AiProvider = 'anthropic' | 'openai' | 'none';
11
+
12
+ export interface DeployWorkflowOptions {
13
+ /** Which AI provider key to include in the workflow. Defaults to 'none' (commented out). */
14
+ aiProvider?: AiProvider;
15
+ }
16
+
17
+ export function generateDeployWorkflow(options?: DeployWorkflowOptions): string {
18
+ const aiProvider = options?.aiProvider ?? 'none';
19
+
20
+ // Build the secrets and env blocks based on selected AI provider
21
+ const aiSecretLines: string[] = [];
22
+ const aiEnvLines: string[] = [];
23
+
24
+ if (aiProvider === 'anthropic') {
25
+ aiSecretLines.push(' ANTHROPIC_API_KEY');
26
+ aiEnvLines.push(
27
+ ' ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}'
28
+ );
29
+ aiEnvLines.push(
30
+ ' # OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}'
31
+ );
32
+ } else if (aiProvider === 'openai') {
33
+ aiSecretLines.push(' OPENAI_API_KEY');
34
+ aiEnvLines.push(
35
+ ' # ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}'
36
+ );
37
+ aiEnvLines.push(
38
+ ' OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}'
39
+ );
40
+ } else {
41
+ // No provider selected — both commented out
42
+ aiEnvLines.push(
43
+ ' # Uncomment the AI provider you use (at least one is required):'
44
+ );
45
+ aiEnvLines.push(
46
+ ' # ANTHROPIC_API_KEY: \\${{ secrets.ANTHROPIC_API_KEY }}'
47
+ );
48
+ aiEnvLines.push(
49
+ ' # OPENAI_API_KEY: \\${{ secrets.OPENAI_API_KEY }}'
50
+ );
51
+ }
52
+
53
+ const secretsBlock = [
54
+ ' MCP_IDENTITY_PRIVATE_KEY',
55
+ ' AGENTSHIELD_API_KEY',
56
+ ...aiSecretLines,
57
+ ].join('\n');
58
+
59
+ const envBlock = [
60
+ ' MCP_IDENTITY_PRIVATE_KEY: \\${{ secrets.MCP_IDENTITY_PRIVATE_KEY }}',
61
+ ' AGENTSHIELD_API_KEY: \\${{ secrets.AGENTSHIELD_API_KEY }}',
62
+ ...aiEnvLines,
63
+ ].join('\n');
64
+
12
65
  return `name: Deploy to Cloudflare
13
66
 
14
67
  on:
@@ -40,19 +93,15 @@ jobs:
40
93
  uses: cloudflare/wrangler-action@v3
41
94
  with:
42
95
  apiToken: \${{ secrets.CLOUDFLARE_API_TOKEN }}
96
+ # Required when your API token has access to multiple CF accounts.
97
+ accountId: \${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
43
98
  # Secrets listed here are uploaded as Wrangler secrets.
44
99
  # IMPORTANT: Every secret listed MUST exist in your GitHub
45
100
  # repository's Settings > Secrets. Remove or comment out
46
101
  # any line for a secret you haven't added yet.
47
102
  secrets: |
48
- MCP_IDENTITY_PRIVATE_KEY
49
- AGENTSHIELD_API_KEY
50
- ANTHROPIC_API_KEY
103
+ ${secretsBlock}
51
104
  env:
52
- MCP_IDENTITY_PRIVATE_KEY: \${{ secrets.MCP_IDENTITY_PRIVATE_KEY }}
53
- AGENTSHIELD_API_KEY: \${{ secrets.AGENTSHIELD_API_KEY }}
54
- ANTHROPIC_API_KEY: \${{ secrets.ANTHROPIC_API_KEY }}
55
- # Uncomment the provider you use (at least one is required):
56
- # OPENAI_API_KEY: \${{ secrets.OPENAI_API_KEY }}
105
+ ${envBlock}
57
106
  `;
58
107
  }
package/src/types.ts CHANGED
@@ -17,6 +17,11 @@ export interface GeneratedFile {
17
17
  encoding: 'utf-8' | 'base64';
18
18
  }
19
19
 
20
+ /**
21
+ * AI provider selection for the deploy workflow
22
+ */
23
+ export type AiProvider = 'anthropic' | 'openai' | 'none';
24
+
20
25
  /**
21
26
  * Options for generating a Molti project
22
27
  */
@@ -37,6 +42,8 @@ export interface MoltiProjectOptions {
37
42
  instanceType?: 'lite' | 'basic' | 'standard-1' | 'standard-2' | 'standard-3' | 'standard-4';
38
43
  /** Skip identity generation (for testing) */
39
44
  skipIdentity?: boolean;
45
+ /** AI provider to include in the deploy workflow (defaults to 'none') */
46
+ aiProvider?: AiProvider;
40
47
  }
41
48
 
42
49
  /**