@sentry/warden 0.4.0 → 0.6.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.
Files changed (101) hide show
  1. package/.claude-plugin/marketplace.json +20 -0
  2. package/dist/cli/args.d.ts +1 -1
  3. package/dist/cli/args.js +4 -4
  4. package/dist/cli/args.js.map +1 -1
  5. package/dist/cli/commands/add.d.ts.map +1 -1
  6. package/dist/cli/commands/add.js +30 -28
  7. package/dist/cli/commands/add.js.map +1 -1
  8. package/dist/cli/commands/init.d.ts.map +1 -1
  9. package/dist/cli/commands/init.js +12 -14
  10. package/dist/cli/commands/init.js.map +1 -1
  11. package/dist/cli/context.d.ts.map +1 -1
  12. package/dist/cli/context.js +3 -1
  13. package/dist/cli/context.js.map +1 -1
  14. package/dist/cli/git.d.ts +6 -0
  15. package/dist/cli/git.d.ts.map +1 -1
  16. package/dist/cli/git.js +33 -1
  17. package/dist/cli/git.js.map +1 -1
  18. package/dist/cli/main.js +20 -20
  19. package/dist/cli/main.js.map +1 -1
  20. package/dist/cli/output/formatters.d.ts +3 -3
  21. package/dist/cli/output/formatters.d.ts.map +1 -1
  22. package/dist/cli/output/formatters.js +3 -6
  23. package/dist/cli/output/formatters.js.map +1 -1
  24. package/dist/cli/output/jsonl.d.ts +27 -0
  25. package/dist/cli/output/jsonl.d.ts.map +1 -1
  26. package/dist/cli/output/jsonl.js.map +1 -1
  27. package/dist/cli/output/reporter.d.ts.map +1 -1
  28. package/dist/cli/output/reporter.js +16 -0
  29. package/dist/cli/output/reporter.js.map +1 -1
  30. package/dist/cli/output/tasks.d.ts.map +1 -1
  31. package/dist/cli/output/tasks.js +8 -5
  32. package/dist/cli/output/tasks.js.map +1 -1
  33. package/dist/cli/output/tty.d.ts +9 -0
  34. package/dist/cli/output/tty.d.ts.map +1 -1
  35. package/dist/cli/output/tty.js +13 -0
  36. package/dist/cli/output/tty.js.map +1 -1
  37. package/dist/cli/terminal.d.ts +2 -2
  38. package/dist/cli/terminal.d.ts.map +1 -1
  39. package/dist/cli/terminal.js +26 -7
  40. package/dist/cli/terminal.js.map +1 -1
  41. package/dist/config/loader.d.ts +40 -12
  42. package/dist/config/loader.d.ts.map +1 -1
  43. package/dist/config/loader.js +71 -23
  44. package/dist/config/loader.js.map +1 -1
  45. package/dist/config/schema.d.ts +147 -124
  46. package/dist/config/schema.d.ts.map +1 -1
  47. package/dist/config/schema.js +67 -53
  48. package/dist/config/schema.js.map +1 -1
  49. package/dist/config/writer.d.ts +5 -5
  50. package/dist/config/writer.d.ts.map +1 -1
  51. package/dist/config/writer.js +76 -45
  52. package/dist/config/writer.js.map +1 -1
  53. package/dist/event/context.d.ts.map +1 -1
  54. package/dist/event/context.js +3 -1
  55. package/dist/event/context.js.map +1 -1
  56. package/dist/event/schedule-context.d.ts.map +1 -1
  57. package/dist/event/schedule-context.js +1 -0
  58. package/dist/event/schedule-context.js.map +1 -1
  59. package/dist/index.d.ts +3 -3
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +3 -3
  62. package/dist/index.js.map +1 -1
  63. package/dist/output/dedup.d.ts.map +1 -1
  64. package/dist/output/dedup.js +18 -28
  65. package/dist/output/dedup.js.map +1 -1
  66. package/dist/output/github-checks.d.ts +3 -3
  67. package/dist/output/github-checks.d.ts.map +1 -1
  68. package/dist/output/github-checks.js +66 -93
  69. package/dist/output/github-checks.js.map +1 -1
  70. package/dist/output/github-issues.d.ts.map +1 -1
  71. package/dist/output/github-issues.js +9 -14
  72. package/dist/output/github-issues.js.map +1 -1
  73. package/dist/output/renderer.d.ts.map +1 -1
  74. package/dist/output/renderer.js +14 -27
  75. package/dist/output/renderer.js.map +1 -1
  76. package/dist/output/stale.d.ts +4 -0
  77. package/dist/output/stale.d.ts.map +1 -1
  78. package/dist/output/stale.js +7 -2
  79. package/dist/output/stale.js.map +1 -1
  80. package/dist/output/types.d.ts +2 -7
  81. package/dist/output/types.d.ts.map +1 -1
  82. package/dist/sdk/haiku.d.ts +55 -0
  83. package/dist/sdk/haiku.d.ts.map +1 -0
  84. package/dist/sdk/haiku.js +190 -0
  85. package/dist/sdk/haiku.js.map +1 -0
  86. package/dist/triggers/matcher.d.ts +18 -3
  87. package/dist/triggers/matcher.d.ts.map +1 -1
  88. package/dist/triggers/matcher.js +75 -21
  89. package/dist/triggers/matcher.js.map +1 -1
  90. package/dist/types/index.d.ts +2 -0
  91. package/dist/types/index.d.ts.map +1 -1
  92. package/dist/types/index.js +1 -0
  93. package/dist/types/index.js.map +1 -1
  94. package/package.json +1 -1
  95. package/plugins/.claude-plugin/marketplace.json +14 -0
  96. package/plugins/warden/.claude-plugin/plugin.json +7 -0
  97. package/plugins/warden/skills/warden/SKILL.md +78 -0
  98. package/plugins/warden/skills/warden/references/cli-reference.md +144 -0
  99. package/plugins/warden/skills/warden/references/config-schema.md +111 -0
  100. package/plugins/warden/skills/warden/references/configuration.md +108 -0
  101. package/plugins/warden/skills/warden/references/creating-skills.md +85 -0
@@ -63,12 +63,25 @@ export declare const SkillDefinitionSchema: z.ZodObject<{
63
63
  rootDir: z.ZodOptional<z.ZodString>;
64
64
  }, z.core.$strip>;
65
65
  export type SkillDefinition = z.infer<typeof SkillDefinitionSchema>;
66
- export declare const PathFilterSchema: z.ZodObject<{
67
- paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
68
- ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
66
+ export declare const ScheduleConfigSchema: z.ZodObject<{
67
+ issueTitle: z.ZodOptional<z.ZodString>;
68
+ createFixPR: z.ZodDefault<z.ZodBoolean>;
69
+ fixBranchPrefix: z.ZodDefault<z.ZodString>;
69
70
  }, z.core.$strip>;
70
- export type PathFilter = z.infer<typeof PathFilterSchema>;
71
- export declare const OutputConfigSchema: z.ZodObject<{
71
+ export type ScheduleConfig = z.infer<typeof ScheduleConfigSchema>;
72
+ export declare const TriggerTypeSchema: z.ZodEnum<{
73
+ pull_request: "pull_request";
74
+ schedule: "schedule";
75
+ local: "local";
76
+ }>;
77
+ export type TriggerType = z.infer<typeof TriggerTypeSchema>;
78
+ export declare const SkillTriggerSchema: z.ZodObject<{
79
+ type: z.ZodEnum<{
80
+ pull_request: "pull_request";
81
+ schedule: "schedule";
82
+ local: "local";
83
+ }>;
84
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
72
85
  failOn: z.ZodOptional<z.ZodEnum<{
73
86
  critical: "critical";
74
87
  high: "high";
@@ -77,7 +90,7 @@ export declare const OutputConfigSchema: z.ZodObject<{
77
90
  info: "info";
78
91
  off: "off";
79
92
  }>>;
80
- commentOn: z.ZodOptional<z.ZodEnum<{
93
+ reportOn: z.ZodOptional<z.ZodEnum<{
81
94
  critical: "critical";
82
95
  high: "high";
83
96
  medium: "medium";
@@ -86,36 +99,48 @@ export declare const OutputConfigSchema: z.ZodObject<{
86
99
  off: "off";
87
100
  }>>;
88
101
  maxFindings: z.ZodOptional<z.ZodNumber>;
89
- commentOnSuccess: z.ZodOptional<z.ZodBoolean>;
90
- }, z.core.$strip>;
91
- export type OutputConfig = z.infer<typeof OutputConfigSchema>;
92
- export declare const ScheduleConfigSchema: z.ZodObject<{
93
- issueTitle: z.ZodOptional<z.ZodString>;
94
- createFixPR: z.ZodDefault<z.ZodBoolean>;
95
- fixBranchPrefix: z.ZodDefault<z.ZodString>;
102
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
103
+ model: z.ZodOptional<z.ZodString>;
104
+ maxTurns: z.ZodOptional<z.ZodNumber>;
105
+ schedule: z.ZodOptional<z.ZodObject<{
106
+ issueTitle: z.ZodOptional<z.ZodString>;
107
+ createFixPR: z.ZodDefault<z.ZodBoolean>;
108
+ fixBranchPrefix: z.ZodDefault<z.ZodString>;
109
+ }, z.core.$strip>>;
96
110
  }, z.core.$strip>;
97
- export type ScheduleConfig = z.infer<typeof ScheduleConfigSchema>;
98
- export declare const WardenEnvironmentSchema: z.ZodEnum<{
99
- local: "local";
100
- github: "github";
101
- }>;
102
- export type WardenEnvironment = z.infer<typeof WardenEnvironmentSchema>;
103
- export declare const TriggerSchema: z.ZodObject<{
111
+ export type SkillTrigger = z.infer<typeof SkillTriggerSchema>;
112
+ export declare const SkillConfigSchema: z.ZodObject<{
104
113
  name: z.ZodString;
105
- event: z.ZodEnum<{
106
- pull_request: "pull_request";
107
- issues: "issues";
108
- issue_comment: "issue_comment";
109
- schedule: "schedule";
110
- }>;
111
- actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
112
- skill: z.ZodString;
114
+ paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
115
+ ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
113
116
  remote: z.ZodOptional<z.ZodString>;
114
- filters: z.ZodOptional<z.ZodObject<{
115
- paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
116
- ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
117
- }, z.core.$strip>>;
118
- output: z.ZodOptional<z.ZodObject<{
117
+ failOn: z.ZodOptional<z.ZodEnum<{
118
+ critical: "critical";
119
+ high: "high";
120
+ medium: "medium";
121
+ low: "low";
122
+ info: "info";
123
+ off: "off";
124
+ }>>;
125
+ reportOn: z.ZodOptional<z.ZodEnum<{
126
+ critical: "critical";
127
+ high: "high";
128
+ medium: "medium";
129
+ low: "low";
130
+ info: "info";
131
+ off: "off";
132
+ }>>;
133
+ maxFindings: z.ZodOptional<z.ZodNumber>;
134
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
135
+ model: z.ZodOptional<z.ZodString>;
136
+ maxTurns: z.ZodOptional<z.ZodNumber>;
137
+ triggers: z.ZodOptional<z.ZodArray<z.ZodObject<{
138
+ type: z.ZodEnum<{
139
+ pull_request: "pull_request";
140
+ schedule: "schedule";
141
+ local: "local";
142
+ }>;
143
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
119
144
  failOn: z.ZodOptional<z.ZodEnum<{
120
145
  critical: "critical";
121
146
  high: "high";
@@ -124,7 +149,7 @@ export declare const TriggerSchema: z.ZodObject<{
124
149
  info: "info";
125
150
  off: "off";
126
151
  }>>;
127
- commentOn: z.ZodOptional<z.ZodEnum<{
152
+ reportOn: z.ZodOptional<z.ZodEnum<{
128
153
  critical: "critical";
129
154
  high: "high";
130
155
  medium: "medium";
@@ -133,21 +158,17 @@ export declare const TriggerSchema: z.ZodObject<{
133
158
  off: "off";
134
159
  }>>;
135
160
  maxFindings: z.ZodOptional<z.ZodNumber>;
136
- commentOnSuccess: z.ZodOptional<z.ZodBoolean>;
137
- }, z.core.$strip>>;
138
- model: z.ZodOptional<z.ZodString>;
139
- maxTurns: z.ZodOptional<z.ZodNumber>;
140
- environments: z.ZodOptional<z.ZodArray<z.ZodEnum<{
141
- local: "local";
142
- github: "github";
143
- }>>>;
144
- schedule: z.ZodOptional<z.ZodObject<{
145
- issueTitle: z.ZodOptional<z.ZodString>;
146
- createFixPR: z.ZodDefault<z.ZodBoolean>;
147
- fixBranchPrefix: z.ZodDefault<z.ZodString>;
148
- }, z.core.$strip>>;
161
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
162
+ model: z.ZodOptional<z.ZodString>;
163
+ maxTurns: z.ZodOptional<z.ZodNumber>;
164
+ schedule: z.ZodOptional<z.ZodObject<{
165
+ issueTitle: z.ZodOptional<z.ZodString>;
166
+ createFixPR: z.ZodDefault<z.ZodBoolean>;
167
+ fixBranchPrefix: z.ZodDefault<z.ZodString>;
168
+ }, z.core.$strip>>;
169
+ }, z.core.$strip>>>;
149
170
  }, z.core.$strip>;
150
- export type Trigger = z.infer<typeof TriggerSchema>;
171
+ export type SkillConfig = z.infer<typeof SkillConfigSchema>;
151
172
  export declare const RunnerConfigSchema: z.ZodObject<{
152
173
  concurrency: z.ZodOptional<z.ZodNumber>;
153
174
  }, z.core.$strip>;
@@ -184,32 +205,27 @@ export declare const ChunkingConfigSchema: z.ZodObject<{
184
205
  }, z.core.$strip>;
185
206
  export type ChunkingConfig = z.infer<typeof ChunkingConfigSchema>;
186
207
  export declare const DefaultsSchema: z.ZodObject<{
187
- filters: z.ZodOptional<z.ZodObject<{
188
- paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
189
- ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
190
- }, z.core.$strip>>;
191
- output: z.ZodOptional<z.ZodObject<{
192
- failOn: z.ZodOptional<z.ZodEnum<{
193
- critical: "critical";
194
- high: "high";
195
- medium: "medium";
196
- low: "low";
197
- info: "info";
198
- off: "off";
199
- }>>;
200
- commentOn: z.ZodOptional<z.ZodEnum<{
201
- critical: "critical";
202
- high: "high";
203
- medium: "medium";
204
- low: "low";
205
- info: "info";
206
- off: "off";
207
- }>>;
208
- maxFindings: z.ZodOptional<z.ZodNumber>;
209
- commentOnSuccess: z.ZodOptional<z.ZodBoolean>;
210
- }, z.core.$strip>>;
208
+ failOn: z.ZodOptional<z.ZodEnum<{
209
+ critical: "critical";
210
+ high: "high";
211
+ medium: "medium";
212
+ low: "low";
213
+ info: "info";
214
+ off: "off";
215
+ }>>;
216
+ reportOn: z.ZodOptional<z.ZodEnum<{
217
+ critical: "critical";
218
+ high: "high";
219
+ medium: "medium";
220
+ low: "low";
221
+ info: "info";
222
+ off: "off";
223
+ }>>;
224
+ maxFindings: z.ZodOptional<z.ZodNumber>;
225
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
211
226
  model: z.ZodOptional<z.ZodString>;
212
227
  maxTurns: z.ZodOptional<z.ZodNumber>;
228
+ ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
213
229
  defaultBranch: z.ZodOptional<z.ZodString>;
214
230
  chunking: z.ZodOptional<z.ZodObject<{
215
231
  filePatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -232,32 +248,27 @@ export type Defaults = z.infer<typeof DefaultsSchema>;
232
248
  export declare const WardenConfigSchema: z.ZodObject<{
233
249
  version: z.ZodLiteral<1>;
234
250
  defaults: z.ZodOptional<z.ZodObject<{
235
- filters: z.ZodOptional<z.ZodObject<{
236
- paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
237
- ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
238
- }, z.core.$strip>>;
239
- output: z.ZodOptional<z.ZodObject<{
240
- failOn: z.ZodOptional<z.ZodEnum<{
241
- critical: "critical";
242
- high: "high";
243
- medium: "medium";
244
- low: "low";
245
- info: "info";
246
- off: "off";
247
- }>>;
248
- commentOn: z.ZodOptional<z.ZodEnum<{
249
- critical: "critical";
250
- high: "high";
251
- medium: "medium";
252
- low: "low";
253
- info: "info";
254
- off: "off";
255
- }>>;
256
- maxFindings: z.ZodOptional<z.ZodNumber>;
257
- commentOnSuccess: z.ZodOptional<z.ZodBoolean>;
258
- }, z.core.$strip>>;
251
+ failOn: z.ZodOptional<z.ZodEnum<{
252
+ critical: "critical";
253
+ high: "high";
254
+ medium: "medium";
255
+ low: "low";
256
+ info: "info";
257
+ off: "off";
258
+ }>>;
259
+ reportOn: z.ZodOptional<z.ZodEnum<{
260
+ critical: "critical";
261
+ high: "high";
262
+ medium: "medium";
263
+ low: "low";
264
+ info: "info";
265
+ off: "off";
266
+ }>>;
267
+ maxFindings: z.ZodOptional<z.ZodNumber>;
268
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
259
269
  model: z.ZodOptional<z.ZodString>;
260
270
  maxTurns: z.ZodOptional<z.ZodNumber>;
271
+ ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
261
272
  defaultBranch: z.ZodOptional<z.ZodString>;
262
273
  chunking: z.ZodOptional<z.ZodObject<{
263
274
  filePatterns: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -276,22 +287,38 @@ export declare const WardenConfigSchema: z.ZodObject<{
276
287
  }, z.core.$strip>>;
277
288
  batchDelayMs: z.ZodOptional<z.ZodNumber>;
278
289
  }, z.core.$strip>>;
279
- triggers: z.ZodDefault<z.ZodArray<z.ZodObject<{
290
+ skills: z.ZodDefault<z.ZodArray<z.ZodObject<{
280
291
  name: z.ZodString;
281
- event: z.ZodEnum<{
282
- pull_request: "pull_request";
283
- issues: "issues";
284
- issue_comment: "issue_comment";
285
- schedule: "schedule";
286
- }>;
287
- actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
288
- skill: z.ZodString;
292
+ paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
293
+ ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
289
294
  remote: z.ZodOptional<z.ZodString>;
290
- filters: z.ZodOptional<z.ZodObject<{
291
- paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
292
- ignorePaths: z.ZodOptional<z.ZodArray<z.ZodString>>;
293
- }, z.core.$strip>>;
294
- output: z.ZodOptional<z.ZodObject<{
295
+ failOn: z.ZodOptional<z.ZodEnum<{
296
+ critical: "critical";
297
+ high: "high";
298
+ medium: "medium";
299
+ low: "low";
300
+ info: "info";
301
+ off: "off";
302
+ }>>;
303
+ reportOn: z.ZodOptional<z.ZodEnum<{
304
+ critical: "critical";
305
+ high: "high";
306
+ medium: "medium";
307
+ low: "low";
308
+ info: "info";
309
+ off: "off";
310
+ }>>;
311
+ maxFindings: z.ZodOptional<z.ZodNumber>;
312
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
313
+ model: z.ZodOptional<z.ZodString>;
314
+ maxTurns: z.ZodOptional<z.ZodNumber>;
315
+ triggers: z.ZodOptional<z.ZodArray<z.ZodObject<{
316
+ type: z.ZodEnum<{
317
+ pull_request: "pull_request";
318
+ schedule: "schedule";
319
+ local: "local";
320
+ }>;
321
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
295
322
  failOn: z.ZodOptional<z.ZodEnum<{
296
323
  critical: "critical";
297
324
  high: "high";
@@ -300,7 +327,7 @@ export declare const WardenConfigSchema: z.ZodObject<{
300
327
  info: "info";
301
328
  off: "off";
302
329
  }>>;
303
- commentOn: z.ZodOptional<z.ZodEnum<{
330
+ reportOn: z.ZodOptional<z.ZodEnum<{
304
331
  critical: "critical";
305
332
  high: "high";
306
333
  medium: "medium";
@@ -309,19 +336,15 @@ export declare const WardenConfigSchema: z.ZodObject<{
309
336
  off: "off";
310
337
  }>>;
311
338
  maxFindings: z.ZodOptional<z.ZodNumber>;
312
- commentOnSuccess: z.ZodOptional<z.ZodBoolean>;
313
- }, z.core.$strip>>;
314
- model: z.ZodOptional<z.ZodString>;
315
- maxTurns: z.ZodOptional<z.ZodNumber>;
316
- environments: z.ZodOptional<z.ZodArray<z.ZodEnum<{
317
- local: "local";
318
- github: "github";
319
- }>>>;
320
- schedule: z.ZodOptional<z.ZodObject<{
321
- issueTitle: z.ZodOptional<z.ZodString>;
322
- createFixPR: z.ZodDefault<z.ZodBoolean>;
323
- fixBranchPrefix: z.ZodDefault<z.ZodString>;
324
- }, z.core.$strip>>;
339
+ reportOnSuccess: z.ZodOptional<z.ZodBoolean>;
340
+ model: z.ZodOptional<z.ZodString>;
341
+ maxTurns: z.ZodOptional<z.ZodNumber>;
342
+ schedule: z.ZodOptional<z.ZodObject<{
343
+ issueTitle: z.ZodOptional<z.ZodString>;
344
+ createFixPR: z.ZodDefault<z.ZodBoolean>;
345
+ fixBranchPrefix: z.ZodDefault<z.ZodString>;
346
+ }, z.core.$strip>>;
347
+ }, z.core.$strip>>>;
325
348
  }, z.core.$strip>>>;
326
349
  runner: z.ZodOptional<z.ZodObject<{
327
350
  concurrency: z.ZodOptional<z.ZodNumber>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;;;;;;EASzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAGtD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAGpE,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;iBAQ7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAG9D,eAAO,MAAM,oBAAoB;;;;iBAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,uBAAuB;;;EAA8B,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGxE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0CzB,CAAC;AACF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAGpD,eAAO,MAAM,kBAAkB;;iBAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAG9D,eAAO,MAAM,iBAAiB;;;;;;;iBAK5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D,eAAO,MAAM,oBAAoB;;;;iBAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;iBAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAazB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAGtD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB3B,CAAC;AACL,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;;;;;;EASzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAGtD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAGpE,eAAO,MAAM,oBAAoB;;;;iBAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,iBAAiB;;;;EAAgD,CAAC;AAC/E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0B9B,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAG9D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmB5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D,eAAO,MAAM,kBAAkB;;iBAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAG9D,eAAO,MAAM,iBAAiB;;;;;;;iBAK5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAG5D,eAAO,MAAM,oBAAoB;;;;iBAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;iBAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoBzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAGtD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgC3B,CAAC;AACL,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -26,69 +26,62 @@ export const SkillDefinitionSchema = z.object({
26
26
  /** Directory where the skill was loaded from, for resolving resources (scripts/, references/, assets/) */
27
27
  rootDir: z.string().optional(),
28
28
  });
29
- // Path filter for triggers
30
- export const PathFilterSchema = z.object({
31
- paths: z.array(z.string()).optional(),
32
- ignorePaths: z.array(z.string()).optional(),
33
- });
34
- // Output configuration per trigger
35
- export const OutputConfigSchema = z.object({
36
- /** Fail the build and request PR changes when findings meet this severity */
37
- failOn: SeverityThresholdSchema.optional(),
38
- /** Only post comments for findings at or above this severity */
39
- commentOn: SeverityThresholdSchema.optional(),
40
- maxFindings: z.number().int().positive().optional(),
41
- /** Post a PR comment even when there are no findings (default: false) */
42
- commentOnSuccess: z.boolean().optional(),
43
- });
44
29
  // Schedule-specific configuration
45
30
  export const ScheduleConfigSchema = z.object({
46
- /** Title for the tracking issue (default: "Warden: {triggerName}") */
31
+ /** Title for the tracking issue (default: "Warden: {skillName}") */
47
32
  issueTitle: z.string().optional(),
48
33
  /** Create PR with fixes when suggestedFix is available */
49
34
  createFixPR: z.boolean().default(false),
50
35
  /** Branch prefix for fix PRs (default: "warden-fix") */
51
36
  fixBranchPrefix: z.string().default('warden-fix'),
52
37
  });
53
- // Environment where a trigger can run
54
- export const WardenEnvironmentSchema = z.enum(['local', 'github']);
55
- // Trigger definition
56
- export const TriggerSchema = z.object({
57
- name: z.string().min(1),
58
- event: z.enum(['pull_request', 'issues', 'issue_comment', 'schedule']),
59
- /** Actions to trigger on. Required for all events except 'schedule'. */
38
+ // Trigger type: where the trigger runs
39
+ export const TriggerTypeSchema = z.enum(['pull_request', 'local', 'schedule']);
40
+ // Skill trigger definition (nested under [[skills.triggers]])
41
+ export const SkillTriggerSchema = z.object({
42
+ /** Trigger type: pull_request (GitHub), local (CLI), or schedule (cron) */
43
+ type: TriggerTypeSchema,
44
+ /** Actions to trigger on (only for pull_request type) */
60
45
  actions: z.array(z.string()).min(1).optional(),
61
- skill: z.string().min(1),
62
- /** Remote repository reference for the skill (e.g., "owner/repo" or "owner/repo@sha") */
63
- remote: z.string().optional(),
64
- filters: PathFilterSchema.optional(),
65
- output: OutputConfigSchema.optional(),
66
- /** Model to use for this trigger (e.g., 'claude-sonnet-4-20250514'). Uses SDK default if not specified. */
46
+ // Per-trigger overrides (flattened output fields)
47
+ failOn: SeverityThresholdSchema.optional(),
48
+ reportOn: SeverityThresholdSchema.optional(),
49
+ maxFindings: z.number().int().positive().optional(),
50
+ reportOnSuccess: z.boolean().optional(),
67
51
  model: z.string().optional(),
68
- /** Maximum agentic turns (API round-trips) per hunk analysis. Overrides defaults.maxTurns. */
69
52
  maxTurns: z.number().int().positive().optional(),
70
- /** Environments where this trigger runs. Omit to run everywhere. */
71
- environments: z.array(WardenEnvironmentSchema).min(1).optional(),
72
- /** Schedule-specific configuration. Only used when event is 'schedule'. */
53
+ /** Schedule-specific configuration. Only used when type is 'schedule'. */
73
54
  schedule: ScheduleConfigSchema.optional(),
74
55
  }).refine((data) => {
75
- // actions is required unless event is 'schedule'
76
- if (data.event !== 'schedule') {
56
+ // actions is required for pull_request type
57
+ if (data.type === 'pull_request') {
77
58
  return data.actions !== undefined && data.actions.length > 0;
78
59
  }
79
60
  return true;
80
61
  }, {
81
- message: "actions is required for non-schedule events",
62
+ message: "actions is required for pull_request triggers",
82
63
  path: ["actions"],
83
- }).refine((data) => {
84
- // paths filter is required for schedule events
85
- if (data.event === 'schedule') {
86
- return data.filters?.paths !== undefined && data.filters.paths.length > 0;
87
- }
88
- return true;
89
- }, {
90
- message: "filters.paths is required for schedule events",
91
- path: ["filters", "paths"],
64
+ });
65
+ // Skill configuration (top-level [[skills]])
66
+ export const SkillConfigSchema = z.object({
67
+ name: z.string().min(1),
68
+ /** Path patterns to include */
69
+ paths: z.array(z.string()).optional(),
70
+ /** Path patterns to exclude */
71
+ ignorePaths: z.array(z.string()).optional(),
72
+ /** Remote repository reference for the skill (e.g., "owner/repo" or "owner/repo@sha") */
73
+ remote: z.string().optional(),
74
+ // Flattened output fields (skill-level defaults)
75
+ failOn: SeverityThresholdSchema.optional(),
76
+ reportOn: SeverityThresholdSchema.optional(),
77
+ maxFindings: z.number().int().positive().optional(),
78
+ reportOnSuccess: z.boolean().optional(),
79
+ /** Model to use for this skill (e.g., 'claude-sonnet-4-20250514'). Uses SDK default if not specified. */
80
+ model: z.string().optional(),
81
+ /** Maximum agentic turns (API round-trips) per hunk analysis. Overrides defaults.maxTurns. */
82
+ maxTurns: z.number().int().positive().optional(),
83
+ /** Triggers defining when/where this skill runs. Omit to run everywhere (wildcard). */
84
+ triggers: z.array(SkillTriggerSchema).optional(),
92
85
  });
93
86
  // Runner configuration
94
87
  export const RunnerConfigSchema = z.object({
@@ -118,14 +111,21 @@ export const ChunkingConfigSchema = z.object({
118
111
  /** Coalescing options for merging nearby hunks */
119
112
  coalesce: CoalesceConfigSchema.optional(),
120
113
  });
121
- // Default configuration that triggers inherit from
114
+ // Default configuration that skills inherit from
122
115
  export const DefaultsSchema = z.object({
123
- filters: PathFilterSchema.optional(),
124
- output: OutputConfigSchema.optional(),
125
- /** Default model for all triggers (e.g., 'claude-sonnet-4-20250514') */
116
+ /** Fail the build when findings meet this severity */
117
+ failOn: SeverityThresholdSchema.optional(),
118
+ /** Only report findings at or above this severity */
119
+ reportOn: SeverityThresholdSchema.optional(),
120
+ maxFindings: z.number().int().positive().optional(),
121
+ /** Report even when there are no findings (default: false) */
122
+ reportOnSuccess: z.boolean().optional(),
123
+ /** Default model for all skills (e.g., 'claude-sonnet-4-20250514') */
126
124
  model: z.string().optional(),
127
125
  /** Maximum agentic turns (API round-trips) per hunk analysis. Default: 50 */
128
126
  maxTurns: z.number().int().positive().optional(),
127
+ /** Path patterns to exclude from all skills */
128
+ ignorePaths: z.array(z.string()).optional(),
129
129
  /** Default branch for the repository (e.g., 'main', 'master', 'develop'). Auto-detected if not specified. */
130
130
  defaultBranch: z.string().optional(),
131
131
  /** Chunking configuration for controlling how files are processed */
@@ -138,18 +138,32 @@ export const WardenConfigSchema = z
138
138
  .object({
139
139
  version: z.literal(1),
140
140
  defaults: DefaultsSchema.optional(),
141
- triggers: z.array(TriggerSchema).default([]),
141
+ skills: z.array(SkillConfigSchema).default([]),
142
142
  runner: RunnerConfigSchema.optional(),
143
143
  })
144
144
  .superRefine((config, ctx) => {
145
- const names = config.triggers.map((t) => t.name);
145
+ const names = config.skills.map((s) => s.name);
146
146
  const duplicates = names.filter((name, i) => names.indexOf(name) !== i);
147
147
  if (duplicates.length > 0) {
148
148
  ctx.addIssue({
149
149
  code: z.ZodIssueCode.custom,
150
- message: `Duplicate trigger names: ${[...new Set(duplicates)].join(', ')}`,
151
- path: ['triggers'],
150
+ message: `Duplicate skill names: ${[...new Set(duplicates)].join(', ')}`,
151
+ path: ['skills'],
152
152
  });
153
153
  }
154
+ // Validate schedule skills have paths
155
+ for (const [i, skill] of config.skills.entries()) {
156
+ if (skill.triggers) {
157
+ for (const trigger of skill.triggers) {
158
+ if (trigger.type === 'schedule' && (!skill.paths || skill.paths.length === 0)) {
159
+ ctx.addIssue({
160
+ code: z.ZodIssueCode.custom,
161
+ message: "paths is required for skills with schedule triggers",
162
+ path: ['skills', i, 'paths'],
163
+ });
164
+ }
165
+ }
166
+ }
167
+ }
154
168
  });
155
169
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { Trigger } from './schema.js';
1
+ import type { SkillConfig } from './schema.js';
2
2
  /**
3
- * Generate TOML representation of a trigger.
3
+ * Generate TOML representation of a skill.
4
4
  */
5
- export declare function generateTriggerToml(trigger: Trigger): string;
5
+ export declare function generateSkillToml(skill: SkillConfig): string;
6
6
  /**
7
- * Append a trigger to the warden.toml configuration file.
7
+ * Append a skill to the warden.toml configuration file.
8
8
  * Preserves existing content and formatting by appending to the end.
9
9
  */
10
- export declare function appendTrigger(configPath: string, trigger: Trigger): void;
10
+ export declare function appendSkill(configPath: string, skill: SkillConfig): void;
11
11
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/config/writer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAsD5D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAiBxE"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/config/writer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAiG5D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAiBxE"}