@chucky.cloud/cli 0.2.8 → 0.2.9

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.
Files changed (78) hide show
  1. package/dist/commands/apply.d.ts +7 -0
  2. package/dist/commands/apply.d.ts.map +1 -0
  3. package/dist/commands/apply.js +104 -0
  4. package/dist/commands/apply.js.map +1 -0
  5. package/dist/commands/config.d.ts.map +1 -1
  6. package/dist/commands/config.js +5 -1
  7. package/dist/commands/config.js.map +1 -1
  8. package/dist/commands/delete.js +3 -3
  9. package/dist/commands/delete.js.map +1 -1
  10. package/dist/commands/deploy.d.ts +6 -2
  11. package/dist/commands/deploy.d.ts.map +1 -1
  12. package/dist/commands/deploy.js +177 -33
  13. package/dist/commands/deploy.js.map +1 -1
  14. package/dist/commands/diff.d.ts +6 -0
  15. package/dist/commands/diff.d.ts.map +1 -0
  16. package/dist/commands/diff.js +101 -0
  17. package/dist/commands/diff.js.map +1 -0
  18. package/dist/commands/discard.d.ts +6 -0
  19. package/dist/commands/discard.d.ts.map +1 -0
  20. package/dist/commands/discard.js +36 -0
  21. package/dist/commands/discard.js.map +1 -0
  22. package/dist/commands/fetch.d.ts +6 -0
  23. package/dist/commands/fetch.d.ts.map +1 -0
  24. package/dist/commands/fetch.js +147 -0
  25. package/dist/commands/fetch.js.map +1 -0
  26. package/dist/commands/init.d.ts.map +1 -1
  27. package/dist/commands/init.js +199 -57
  28. package/dist/commands/init.js.map +1 -1
  29. package/dist/commands/jobs.d.ts +3 -0
  30. package/dist/commands/jobs.d.ts.map +1 -0
  31. package/dist/commands/jobs.js +415 -0
  32. package/dist/commands/jobs.js.map +1 -0
  33. package/dist/commands/keys.d.ts.map +1 -1
  34. package/dist/commands/keys.js +6 -1
  35. package/dist/commands/keys.js.map +1 -1
  36. package/dist/commands/log.d.ts +5 -0
  37. package/dist/commands/log.d.ts.map +1 -0
  38. package/dist/commands/log.js +69 -0
  39. package/dist/commands/log.js.map +1 -0
  40. package/dist/commands/prompt.d.ts +1 -0
  41. package/dist/commands/prompt.d.ts.map +1 -1
  42. package/dist/commands/prompt.js +173 -1
  43. package/dist/commands/prompt.js.map +1 -1
  44. package/dist/commands/pull.d.ts +7 -0
  45. package/dist/commands/pull.d.ts.map +1 -0
  46. package/dist/commands/pull.js +19 -0
  47. package/dist/commands/pull.js.map +1 -0
  48. package/dist/commands/sessions.d.ts +7 -0
  49. package/dist/commands/sessions.d.ts.map +1 -0
  50. package/dist/commands/sessions.js +57 -0
  51. package/dist/commands/sessions.js.map +1 -0
  52. package/dist/commands/wait.d.ts +7 -0
  53. package/dist/commands/wait.d.ts.map +1 -0
  54. package/dist/commands/wait.js +91 -0
  55. package/dist/commands/wait.js.map +1 -0
  56. package/dist/index.js +79 -1
  57. package/dist/index.js.map +1 -1
  58. package/dist/lib/api.d.ts +130 -0
  59. package/dist/lib/api.d.ts.map +1 -1
  60. package/dist/lib/api.js +99 -0
  61. package/dist/lib/api.js.map +1 -1
  62. package/dist/lib/archive.d.ts +5 -1
  63. package/dist/lib/archive.d.ts.map +1 -1
  64. package/dist/lib/archive.js +10 -15
  65. package/dist/lib/archive.js.map +1 -1
  66. package/dist/lib/config.d.ts +80 -5
  67. package/dist/lib/config.d.ts.map +1 -1
  68. package/dist/lib/config.js +86 -9
  69. package/dist/lib/config.js.map +1 -1
  70. package/dist/lib/git.d.ts +70 -0
  71. package/dist/lib/git.d.ts.map +1 -0
  72. package/dist/lib/git.js +232 -0
  73. package/dist/lib/git.js.map +1 -0
  74. package/dist/lib/output.d.ts +42 -0
  75. package/dist/lib/output.d.ts.map +1 -0
  76. package/dist/lib/output.js +123 -0
  77. package/dist/lib/output.js.map +1 -0
  78. package/package.json +1 -1
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":"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"}
package/dist/lib/api.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { type CronDefinition } from "./config.js";
1
2
  export interface Project {
2
3
  id: string;
3
4
  name: string;
@@ -18,10 +19,76 @@ export interface UploadUrlInfo {
18
19
  export interface ValidationResult {
19
20
  valid: boolean;
20
21
  customer_id?: string;
22
+ clerkId?: string;
21
23
  email?: string;
22
24
  credit_balance_usd?: number;
23
25
  error?: string;
24
26
  }
27
+ export interface CronJob {
28
+ _id: string;
29
+ projectId: string;
30
+ cron: string;
31
+ timezone: string;
32
+ enabled: boolean;
33
+ message: string;
34
+ triggerScheduleId?: string;
35
+ }
36
+ export interface SyncCronsResult {
37
+ created: number;
38
+ deleted: number;
39
+ scheduleIds: string[];
40
+ }
41
+ export interface Job {
42
+ id: string;
43
+ status: string;
44
+ taskIdentifier: string;
45
+ createdAt: string;
46
+ updatedAt: string;
47
+ startedAt?: string;
48
+ finishedAt?: string;
49
+ isCompleted: boolean;
50
+ isSuccess: boolean;
51
+ isFailed: boolean;
52
+ output?: unknown;
53
+ error?: {
54
+ message: string;
55
+ name?: string;
56
+ };
57
+ }
58
+ export interface ListJobsResult {
59
+ jobs: Job[];
60
+ nextCursor?: string;
61
+ hasMore: boolean;
62
+ }
63
+ export interface Session {
64
+ id: string;
65
+ issuer_id: string;
66
+ user_id: string;
67
+ job_id: string | null;
68
+ status: string;
69
+ started_at: string;
70
+ completed_at: string | null;
71
+ duration_ms: number | null;
72
+ total_cost_usd: number | null;
73
+ input_tokens: number | null;
74
+ output_tokens: number | null;
75
+ has_bundle: boolean;
76
+ bundle_has_changes: boolean;
77
+ }
78
+ export interface ListSessionsResult {
79
+ sessions: Session[];
80
+ pagination: {
81
+ limit: number;
82
+ offset: number;
83
+ hasMore: boolean;
84
+ };
85
+ }
86
+ export interface SessionBundleResult {
87
+ session_id: string;
88
+ download_url: string;
89
+ has_changes: boolean;
90
+ expires_in: number;
91
+ }
25
92
  /**
26
93
  * API client for the Chucky portal
27
94
  */
@@ -72,5 +139,68 @@ export declare class ChuckyApi {
72
139
  hasWorkspace: boolean;
73
140
  projectId: string;
74
141
  }>;
142
+ /**
143
+ * List cron jobs for a project
144
+ */
145
+ listCronJobs(projectId: string): Promise<CronJob[]>;
146
+ /**
147
+ * Sync cron jobs for a project (delete all + recreate)
148
+ */
149
+ syncCrons(projectId: string, crons: CronDefinition[]): Promise<SyncCronsResult>;
150
+ /**
151
+ * List jobs (Trigger.dev runs)
152
+ */
153
+ listJobs(options?: {
154
+ status?: string;
155
+ size?: number;
156
+ cursor?: string;
157
+ }): Promise<ListJobsResult>;
158
+ /**
159
+ * Get a specific job
160
+ */
161
+ getJob(jobId: string): Promise<{
162
+ job: Job;
163
+ }>;
164
+ /**
165
+ * Cancel a job
166
+ */
167
+ cancelJob(jobId: string): Promise<{
168
+ success: boolean;
169
+ }>;
170
+ /**
171
+ * Get bundle download URL for a job
172
+ */
173
+ getJobBundle(jobId: string): Promise<{
174
+ downloadUrl: string;
175
+ hasChanges: boolean;
176
+ }>;
177
+ /**
178
+ * List sessions
179
+ */
180
+ listSessions(options?: {
181
+ limit?: number;
182
+ offset?: number;
183
+ withBundle?: boolean;
184
+ userId?: string;
185
+ jobId?: string;
186
+ projectId?: string;
187
+ }): Promise<ListSessionsResult>;
188
+ /**
189
+ * Get a specific session
190
+ */
191
+ getSession(sessionId: string): Promise<Session>;
192
+ /**
193
+ * Get bundle download URL for a session
194
+ */
195
+ getSessionBundle(sessionId: string): Promise<SessionBundleResult>;
196
+ /**
197
+ * Resolve a partial session ID to the full UUID
198
+ * Supports prefix matching like git commit hashes
199
+ */
200
+ resolveSessionId(partialId: string, projectId?: string): Promise<string>;
75
201
  }
202
+ /**
203
+ * Detect if an ID is a job ID (prefixed with run_) or a session ID
204
+ */
205
+ export declare function isJobId(id: string): boolean;
76
206
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;YAKZ,OAAO;IA0BrB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAUjD;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKxC;;OAEG;IACG,aAAa,CACjB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3D,OAAO,CAAC,mBAAmB,CAAC;IAQ/B;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAQpF;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOhF;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAM7D;;OAEG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAO3E"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
package/dist/lib/api.js CHANGED
@@ -91,5 +91,104 @@ export class ChuckyApi {
91
91
  async markWorkspaceUploaded(projectId) {
92
92
  return this.request("POST", "/api/projects/workspace-uploaded", { projectId });
93
93
  }
94
+ /**
95
+ * List cron jobs for a project
96
+ */
97
+ async listCronJobs(projectId) {
98
+ const result = await this.request("POST", "/api/crons/list", { projectId });
99
+ return result.cronJobs;
100
+ }
101
+ /**
102
+ * Sync cron jobs for a project (delete all + recreate)
103
+ */
104
+ async syncCrons(projectId, crons) {
105
+ return this.request("POST", "/api/crons/sync", {
106
+ projectId,
107
+ crons,
108
+ });
109
+ }
110
+ /**
111
+ * List jobs (Trigger.dev runs)
112
+ */
113
+ async listJobs(options) {
114
+ return this.request("POST", "/api/jobs/list", {
115
+ status: options?.status,
116
+ size: options?.size,
117
+ cursor: options?.cursor,
118
+ });
119
+ }
120
+ /**
121
+ * Get a specific job
122
+ */
123
+ async getJob(jobId) {
124
+ return this.request("POST", "/api/jobs/get", { jobId });
125
+ }
126
+ /**
127
+ * Cancel a job
128
+ */
129
+ async cancelJob(jobId) {
130
+ return this.request("POST", "/api/jobs/cancel", { jobId });
131
+ }
132
+ /**
133
+ * Get bundle download URL for a job
134
+ */
135
+ async getJobBundle(jobId) {
136
+ return this.request("POST", "/api/jobs/bundle", { jobId });
137
+ }
138
+ /**
139
+ * List sessions
140
+ */
141
+ async listSessions(options) {
142
+ return this.request("POST", "/api/sessions/list", {
143
+ limit: options?.limit,
144
+ offset: options?.offset,
145
+ with_bundle: options?.withBundle,
146
+ user_id: options?.userId,
147
+ job_id: options?.jobId,
148
+ project_id: options?.projectId,
149
+ });
150
+ }
151
+ /**
152
+ * Get a specific session
153
+ */
154
+ async getSession(sessionId) {
155
+ return this.request("POST", "/api/sessions/get", {
156
+ session_id: sessionId,
157
+ });
158
+ }
159
+ /**
160
+ * Get bundle download URL for a session
161
+ */
162
+ async getSessionBundle(sessionId) {
163
+ return this.request("POST", "/api/sessions/bundle", {
164
+ session_id: sessionId,
165
+ });
166
+ }
167
+ /**
168
+ * Resolve a partial session ID to the full UUID
169
+ * Supports prefix matching like git commit hashes
170
+ */
171
+ async resolveSessionId(partialId, projectId) {
172
+ // If it looks like a full UUID, return as-is
173
+ if (partialId.length >= 36) {
174
+ return partialId;
175
+ }
176
+ // Fetch recent sessions and find matching prefix
177
+ const result = await this.listSessions({ limit: 100, projectId });
178
+ const matches = result.sessions.filter(s => s.id.startsWith(partialId));
179
+ if (matches.length === 0) {
180
+ throw new Error(`No session found matching '${partialId}'`);
181
+ }
182
+ if (matches.length > 1) {
183
+ throw new Error(`Ambiguous session ID '${partialId}' - matches ${matches.length} sessions. Use more characters.`);
184
+ }
185
+ return matches[0].id;
186
+ }
187
+ }
188
+ /**
189
+ * Detect if an ID is a job ID (prefixed with run_) or a session ID
190
+ */
191
+ export function isJobId(id) {
192
+ return id.startsWith("run_");
94
193
  }
95
194
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,14 @@ export interface ArchiveResult {
3
3
  size: number;
4
4
  fileCount: number;
5
5
  }
6
+ export interface ArchiveOptions {
7
+ ignorePatterns?: string[];
8
+ includeGit?: boolean;
9
+ }
6
10
  /**
7
11
  * Create a tar.gz archive of a directory
8
12
  */
9
- export declare function createArchive(sourceDir: string, ignorePatterns?: string[]): Promise<ArchiveResult>;
13
+ export declare function createArchive(sourceDir: string, options?: ArchiveOptions): Promise<ArchiveResult>;
10
14
  /**
11
15
  * Format bytes to human-readable string
12
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../src/lib/archive.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,cAAc,GAAE,MAAM,EAA4B,GACjD,OAAO,CAAC,aAAa,CAAC,CAyCxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,2BAEnD"}
1
+ {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../src/lib/archive.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CA+CxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,2BAEnD"}
@@ -2,29 +2,24 @@ import { createWriteStream, createReadStream, statSync } from "node:fs";
2
2
  import { tmpdir } from "node:os";
3
3
  import { join } from "node:path";
4
4
  import archiver from "archiver";
5
- // Default patterns to ignore when creating archive
5
+ // Minimal patterns to ignore (only temp/system files)
6
6
  const DEFAULT_IGNORE_PATTERNS = [
7
- "node_modules/**",
8
- ".git/**",
9
- ".env",
10
- ".env.*",
11
- "*.log",
12
7
  ".DS_Store",
13
8
  "Thumbs.db",
14
- ".chucky.json",
15
- "dist/**",
16
- "build/**",
17
- ".next/**",
18
- ".nuxt/**",
19
- "coverage/**",
20
- ".cache/**",
21
9
  "*.tgz",
22
10
  "*.tar.gz",
23
11
  ];
12
+ // Patterns to ignore when not including git
13
+ const GIT_IGNORE_PATTERNS = [".git/**"];
24
14
  /**
25
15
  * Create a tar.gz archive of a directory
26
16
  */
27
- export async function createArchive(sourceDir, ignorePatterns = DEFAULT_IGNORE_PATTERNS) {
17
+ export async function createArchive(sourceDir, options = {}) {
18
+ const { ignorePatterns = DEFAULT_IGNORE_PATTERNS, includeGit = false } = options;
19
+ // Build final ignore patterns
20
+ const finalIgnorePatterns = includeGit
21
+ ? ignorePatterns
22
+ : [...ignorePatterns, ...GIT_IGNORE_PATTERNS];
28
23
  const archiveName = `workspace-${Date.now()}.tgz`;
29
24
  const archivePath = join(tmpdir(), archiveName);
30
25
  return new Promise((resolve, reject) => {
@@ -52,7 +47,7 @@ export async function createArchive(sourceDir, ignorePatterns = DEFAULT_IGNORE_P
52
47
  // Add directory contents, respecting ignore patterns
53
48
  archive.glob("**/*", {
54
49
  cwd: sourceDir,
55
- ignore: ignorePatterns,
50
+ ignore: finalIgnorePatterns,
56
51
  dot: true, // Include dotfiles
57
52
  });
58
53
  archive.finalize();
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/lib/archive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/lib/archive.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,56 @@ export interface GlobalConfig {
3
3
  email?: string;
4
4
  portalUrl: string;
5
5
  }
6
- export interface ProjectConfig {
6
+ export interface CronCallback {
7
+ url: string;
8
+ headers?: Record<string, string>;
9
+ secret?: string;
10
+ }
11
+ export interface CronDefinition {
12
+ cron: string;
13
+ message: string;
14
+ timezone?: string;
15
+ enabled?: boolean;
16
+ callback?: CronCallback;
17
+ model?: string;
18
+ fallbackModel?: string;
19
+ maxTurns?: number;
20
+ maxBudgetUsd?: number;
21
+ maxThinkingTokens?: number;
22
+ systemPrompt?: string | {
23
+ type: "preset";
24
+ preset: string;
25
+ append?: string;
26
+ };
27
+ tools?: string[] | "claude_code";
28
+ allowedTools?: string[];
29
+ disallowedTools?: string[];
30
+ mcpServers?: unknown[];
31
+ agents?: Record<string, unknown>;
32
+ betas?: string[];
33
+ permissionMode?: "default" | "plan" | "bypassPermissions";
34
+ allowDangerouslySkipPermissions?: boolean;
35
+ env?: Record<string, string>;
36
+ outputFormat?: {
37
+ type: "json_schema";
38
+ schema: object;
39
+ };
40
+ }
41
+ export interface ChuckyConfig {
42
+ name: string;
43
+ description?: string;
44
+ folder?: string;
45
+ crons?: CronDefinition[];
46
+ }
47
+ export interface ProjectBinding {
7
48
  projectId: string;
8
- projectName: string;
49
+ }
50
+ export interface ProjectConfig {
51
+ name: string;
52
+ description?: string;
9
53
  folder: string;
10
- hmacKey?: string;
54
+ crons?: CronDefinition[];
55
+ projectId?: string;
11
56
  }
12
57
  /**
13
58
  * Load global config
@@ -18,11 +63,28 @@ export declare function loadGlobalConfig(): GlobalConfig | null;
18
63
  */
19
64
  export declare function saveGlobalConfig(config: GlobalConfig): void;
20
65
  /**
21
- * Load project config from current directory
66
+ * Load chucky.json config (committed file)
67
+ */
68
+ export declare function loadChuckyConfig(cwd?: string): ChuckyConfig | null;
69
+ /**
70
+ * Save chucky.json config (committed file)
71
+ */
72
+ export declare function saveChuckyConfig(config: ChuckyConfig, cwd?: string): void;
73
+ /**
74
+ * Load .chucky project binding (gitignored file)
75
+ */
76
+ export declare function loadProjectBinding(cwd?: string): ProjectBinding | null;
77
+ /**
78
+ * Save .chucky project binding (gitignored file)
79
+ */
80
+ export declare function saveProjectBinding(binding: ProjectBinding, cwd?: string): void;
81
+ /**
82
+ * Load combined project config (chucky.json + .chucky)
22
83
  */
23
84
  export declare function loadProjectConfig(cwd?: string): ProjectConfig | null;
24
85
  /**
25
- * Save project config to current directory
86
+ * Legacy: Save project config (for backwards compatibility during migration)
87
+ * @deprecated Use saveChuckyConfig and saveProjectBinding separately
26
88
  */
27
89
  export declare function saveProjectConfig(config: ProjectConfig, cwd?: string): void;
28
90
  /**
@@ -37,12 +99,25 @@ export declare function requireApiKey(): string;
37
99
  * Get portal URL
38
100
  */
39
101
  export declare function getPortalUrl(): string;
102
+ /**
103
+ * Get worker URL (ChuckyBox)
104
+ */
105
+ export declare function getWorkerUrl(): string;
40
106
  /**
41
107
  * Get project config or throw if not initialized
42
108
  */
43
109
  export declare function requireProjectConfig(): ProjectConfig;
110
+ /**
111
+ * Check if chucky.json exists in current directory
112
+ */
113
+ export declare function hasChuckyConfig(): boolean;
114
+ /**
115
+ * Check if project is bound (has .chucky with projectId)
116
+ */
117
+ export declare function isProjectBound(): boolean;
44
118
  /**
45
119
  * Check if project is initialized in current directory
120
+ * @deprecated Use hasChuckyConfig() and isProjectBound() separately
46
121
  */
47
122
  export declare function isProjectInitialized(): boolean;
48
123
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAkBD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,GAAG,IAAI,CAUtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAG3D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAsB,GAAG,aAAa,GAAG,IAAI,CAWnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,GAAE,MAAsB,GAAG,IAAI,CAG1F;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAGpC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAYtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAGrC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,aAAa,CAMpD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAE7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAGhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;IAGxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,mBAAmB,CAAC;IAC1D,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD;AAGD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;CAC1B;AAGD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,aAAa;IAE5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IAEzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAmBD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,GAAG,IAAI,CAUtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAG3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAsB,GAAG,YAAY,GAAG,IAAI,CAWjF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,GAAE,MAAsB,GAAG,IAAI,CAGxF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAsB,GAAG,cAAc,GAAG,IAAI,CAWrF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,GAAE,MAAsB,GAAG,IAAI,CAG7F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAsB,GAAG,aAAa,GAAG,IAAI,CAenF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,GAAE,MAAsB,GAAG,IAAI,CAa1F;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAGpC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAYtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAGrC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,aAAa,CAMpD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C"}
@@ -3,7 +3,8 @@ import { homedir } from "node:os";
3
3
  import { join } from "node:path";
4
4
  const CONFIG_DIR = join(homedir(), ".chucky");
5
5
  const GLOBAL_CONFIG_PATH = join(CONFIG_DIR, "config.json");
6
- const PROJECT_CONFIG_FILE = ".chucky.json";
6
+ const CHUCKY_CONFIG_FILE = "chucky.json"; // Committed
7
+ const PROJECT_BINDING_FILE = ".chucky"; // Gitignored
7
8
  // Default portal URL (production)
8
9
  const DEFAULT_PORTAL_URL = "https://doting-hornet-490.convex.site";
9
10
  /**
@@ -37,11 +38,11 @@ export function saveGlobalConfig(config) {
37
38
  writeFileSync(GLOBAL_CONFIG_PATH, JSON.stringify(config, null, 2));
38
39
  }
39
40
  /**
40
- * Load project config from current directory
41
+ * Load chucky.json config (committed file)
41
42
  */
42
- export function loadProjectConfig(cwd = process.cwd()) {
43
+ export function loadChuckyConfig(cwd = process.cwd()) {
43
44
  try {
44
- const configPath = join(cwd, PROJECT_CONFIG_FILE);
45
+ const configPath = join(cwd, CHUCKY_CONFIG_FILE);
45
46
  if (!existsSync(configPath)) {
46
47
  return null;
47
48
  }
@@ -53,12 +54,69 @@ export function loadProjectConfig(cwd = process.cwd()) {
53
54
  }
54
55
  }
55
56
  /**
56
- * Save project config to current directory
57
+ * Save chucky.json config (committed file)
57
58
  */
58
- export function saveProjectConfig(config, cwd = process.cwd()) {
59
- const configPath = join(cwd, PROJECT_CONFIG_FILE);
59
+ export function saveChuckyConfig(config, cwd = process.cwd()) {
60
+ const configPath = join(cwd, CHUCKY_CONFIG_FILE);
60
61
  writeFileSync(configPath, JSON.stringify(config, null, 2));
61
62
  }
63
+ /**
64
+ * Load .chucky project binding (gitignored file)
65
+ */
66
+ export function loadProjectBinding(cwd = process.cwd()) {
67
+ try {
68
+ const bindingPath = join(cwd, PROJECT_BINDING_FILE);
69
+ if (!existsSync(bindingPath)) {
70
+ return null;
71
+ }
72
+ const content = readFileSync(bindingPath, "utf-8");
73
+ return JSON.parse(content);
74
+ }
75
+ catch {
76
+ return null;
77
+ }
78
+ }
79
+ /**
80
+ * Save .chucky project binding (gitignored file)
81
+ */
82
+ export function saveProjectBinding(binding, cwd = process.cwd()) {
83
+ const bindingPath = join(cwd, PROJECT_BINDING_FILE);
84
+ writeFileSync(bindingPath, JSON.stringify(binding, null, 2));
85
+ }
86
+ /**
87
+ * Load combined project config (chucky.json + .chucky)
88
+ */
89
+ export function loadProjectConfig(cwd = process.cwd()) {
90
+ const chuckyConfig = loadChuckyConfig(cwd);
91
+ if (!chuckyConfig) {
92
+ return null;
93
+ }
94
+ const binding = loadProjectBinding(cwd);
95
+ return {
96
+ name: chuckyConfig.name,
97
+ description: chuckyConfig.description,
98
+ folder: chuckyConfig.folder || ".",
99
+ crons: chuckyConfig.crons,
100
+ projectId: binding?.projectId,
101
+ };
102
+ }
103
+ /**
104
+ * Legacy: Save project config (for backwards compatibility during migration)
105
+ * @deprecated Use saveChuckyConfig and saveProjectBinding separately
106
+ */
107
+ export function saveProjectConfig(config, cwd = process.cwd()) {
108
+ // Save chucky.json (committed)
109
+ saveChuckyConfig({
110
+ name: config.name,
111
+ description: config.description,
112
+ folder: config.folder,
113
+ crons: config.crons,
114
+ }, cwd);
115
+ // Save .chucky (gitignored) if projectId exists
116
+ if (config.projectId) {
117
+ saveProjectBinding({ projectId: config.projectId }, cwd);
118
+ }
119
+ }
62
120
  /**
63
121
  * Check if user is logged in
64
122
  */
@@ -88,20 +146,39 @@ export function getPortalUrl() {
88
146
  const config = loadGlobalConfig();
89
147
  return config?.portalUrl || DEFAULT_PORTAL_URL;
90
148
  }
149
+ /**
150
+ * Get worker URL (ChuckyBox)
151
+ */
152
+ export function getWorkerUrl() {
153
+ return process.env.CHUCKY_WORKER_URL || "https://conjure.chucky.cloud";
154
+ }
91
155
  /**
92
156
  * Get project config or throw if not initialized
93
157
  */
94
158
  export function requireProjectConfig() {
95
159
  const config = loadProjectConfig();
96
160
  if (!config) {
97
- throw new Error("Project not initialized. Run 'chucky init' first.");
161
+ throw new Error("No chucky.json found. Run 'chucky init' first.");
98
162
  }
99
163
  return config;
100
164
  }
165
+ /**
166
+ * Check if chucky.json exists in current directory
167
+ */
168
+ export function hasChuckyConfig() {
169
+ return loadChuckyConfig() !== null;
170
+ }
171
+ /**
172
+ * Check if project is bound (has .chucky with projectId)
173
+ */
174
+ export function isProjectBound() {
175
+ return loadProjectBinding() !== null;
176
+ }
101
177
  /**
102
178
  * Check if project is initialized in current directory
179
+ * @deprecated Use hasChuckyConfig() and isProjectBound() separately
103
180
  */
104
181
  export function isProjectInitialized() {
105
- return loadProjectConfig() !== null;
182
+ return hasChuckyConfig();
106
183
  }
107
184
  //# sourceMappingURL=config.js.map