@sentry/warden 0.3.0 → 0.5.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 (148) hide show
  1. package/.claude-plugin/marketplace.json +20 -0
  2. package/README.md +1 -1
  3. package/dist/cli/args.d.ts +3 -1
  4. package/dist/cli/args.d.ts.map +1 -1
  5. package/dist/cli/args.js +15 -4
  6. package/dist/cli/args.js.map +1 -1
  7. package/dist/cli/commands/add.d.ts.map +1 -1
  8. package/dist/cli/commands/add.js +51 -31
  9. package/dist/cli/commands/add.js.map +1 -1
  10. package/dist/cli/commands/init.d.ts.map +1 -1
  11. package/dist/cli/commands/init.js +12 -14
  12. package/dist/cli/commands/init.js.map +1 -1
  13. package/dist/cli/context.d.ts.map +1 -1
  14. package/dist/cli/context.js +3 -1
  15. package/dist/cli/context.js.map +1 -1
  16. package/dist/cli/git.d.ts +4 -0
  17. package/dist/cli/git.d.ts.map +1 -1
  18. package/dist/cli/git.js +7 -1
  19. package/dist/cli/git.js.map +1 -1
  20. package/dist/cli/index.js +11 -4
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/cli/main.d.ts +7 -0
  23. package/dist/cli/main.d.ts.map +1 -1
  24. package/dist/cli/main.js +41 -26
  25. package/dist/cli/main.js.map +1 -1
  26. package/dist/cli/output/formatters.d.ts +18 -3
  27. package/dist/cli/output/formatters.d.ts.map +1 -1
  28. package/dist/cli/output/formatters.js +32 -7
  29. package/dist/cli/output/formatters.js.map +1 -1
  30. package/dist/cli/output/index.d.ts +1 -1
  31. package/dist/cli/output/index.d.ts.map +1 -1
  32. package/dist/cli/output/index.js +1 -1
  33. package/dist/cli/output/index.js.map +1 -1
  34. package/dist/cli/output/ink-runner.d.ts.map +1 -1
  35. package/dist/cli/output/ink-runner.js +29 -8
  36. package/dist/cli/output/ink-runner.js.map +1 -1
  37. package/dist/cli/output/jsonl.d.ts +39 -1
  38. package/dist/cli/output/jsonl.d.ts.map +1 -1
  39. package/dist/cli/output/jsonl.js +12 -0
  40. package/dist/cli/output/jsonl.js.map +1 -1
  41. package/dist/cli/output/reporter.d.ts +2 -2
  42. package/dist/cli/output/reporter.d.ts.map +1 -1
  43. package/dist/cli/output/reporter.js +70 -37
  44. package/dist/cli/output/reporter.js.map +1 -1
  45. package/dist/cli/output/tasks.d.ts +12 -0
  46. package/dist/cli/output/tasks.d.ts.map +1 -1
  47. package/dist/cli/output/tasks.js +157 -42
  48. package/dist/cli/output/tasks.js.map +1 -1
  49. package/dist/cli/output/tty.d.ts +9 -0
  50. package/dist/cli/output/tty.d.ts.map +1 -1
  51. package/dist/cli/output/tty.js +13 -0
  52. package/dist/cli/output/tty.js.map +1 -1
  53. package/dist/cli/output/verbosity.d.ts +2 -1
  54. package/dist/cli/output/verbosity.d.ts.map +1 -1
  55. package/dist/cli/output/verbosity.js +3 -2
  56. package/dist/cli/output/verbosity.js.map +1 -1
  57. package/dist/cli/terminal.d.ts +2 -2
  58. package/dist/cli/terminal.d.ts.map +1 -1
  59. package/dist/cli/terminal.js +33 -20
  60. package/dist/cli/terminal.js.map +1 -1
  61. package/dist/config/loader.d.ts +40 -12
  62. package/dist/config/loader.d.ts.map +1 -1
  63. package/dist/config/loader.js +71 -23
  64. package/dist/config/loader.js.map +1 -1
  65. package/dist/config/schema.d.ts +147 -111
  66. package/dist/config/schema.d.ts.map +1 -1
  67. package/dist/config/schema.js +67 -49
  68. package/dist/config/schema.js.map +1 -1
  69. package/dist/config/writer.d.ts +5 -5
  70. package/dist/config/writer.d.ts.map +1 -1
  71. package/dist/config/writer.js +76 -45
  72. package/dist/config/writer.js.map +1 -1
  73. package/dist/event/context.d.ts.map +1 -1
  74. package/dist/event/context.js +3 -1
  75. package/dist/event/context.js.map +1 -1
  76. package/dist/event/schedule-context.d.ts.map +1 -1
  77. package/dist/event/schedule-context.js +1 -0
  78. package/dist/event/schedule-context.js.map +1 -1
  79. package/dist/index.d.ts +5 -5
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +5 -3
  82. package/dist/index.js.map +1 -1
  83. package/dist/output/dedup.d.ts +3 -1
  84. package/dist/output/dedup.d.ts.map +1 -1
  85. package/dist/output/dedup.js +25 -32
  86. package/dist/output/dedup.js.map +1 -1
  87. package/dist/output/github-checks.d.ts +6 -4
  88. package/dist/output/github-checks.d.ts.map +1 -1
  89. package/dist/output/github-checks.js +67 -88
  90. package/dist/output/github-checks.js.map +1 -1
  91. package/dist/output/github-issues.d.ts.map +1 -1
  92. package/dist/output/github-issues.js +9 -14
  93. package/dist/output/github-issues.js.map +1 -1
  94. package/dist/output/issue-renderer.js +1 -1
  95. package/dist/output/issue-renderer.js.map +1 -1
  96. package/dist/output/renderer.d.ts.map +1 -1
  97. package/dist/output/renderer.js +18 -31
  98. package/dist/output/renderer.js.map +1 -1
  99. package/dist/output/stale.d.ts +4 -0
  100. package/dist/output/stale.d.ts.map +1 -1
  101. package/dist/output/stale.js +7 -2
  102. package/dist/output/stale.js.map +1 -1
  103. package/dist/output/types.d.ts +2 -7
  104. package/dist/output/types.d.ts.map +1 -1
  105. package/dist/sdk/analyze.d.ts.map +1 -1
  106. package/dist/sdk/analyze.js +89 -24
  107. package/dist/sdk/analyze.js.map +1 -1
  108. package/dist/sdk/extract.d.ts +12 -2
  109. package/dist/sdk/extract.d.ts.map +1 -1
  110. package/dist/sdk/extract.js +22 -3
  111. package/dist/sdk/extract.js.map +1 -1
  112. package/dist/sdk/haiku.d.ts +55 -0
  113. package/dist/sdk/haiku.d.ts.map +1 -0
  114. package/dist/sdk/haiku.js +190 -0
  115. package/dist/sdk/haiku.js.map +1 -0
  116. package/dist/sdk/model-pricing.json +104 -0
  117. package/dist/sdk/pricing.d.ts +17 -0
  118. package/dist/sdk/pricing.d.ts.map +1 -0
  119. package/dist/sdk/pricing.js +41 -0
  120. package/dist/sdk/pricing.js.map +1 -0
  121. package/dist/sdk/runner.d.ts +4 -3
  122. package/dist/sdk/runner.d.ts.map +1 -1
  123. package/dist/sdk/runner.js +4 -2
  124. package/dist/sdk/runner.js.map +1 -1
  125. package/dist/sdk/types.d.ts +15 -0
  126. package/dist/sdk/types.d.ts.map +1 -1
  127. package/dist/sdk/types.js.map +1 -1
  128. package/dist/sdk/usage.d.ts +13 -1
  129. package/dist/sdk/usage.d.ts.map +1 -1
  130. package/dist/sdk/usage.js +46 -0
  131. package/dist/sdk/usage.js.map +1 -1
  132. package/dist/triggers/matcher.d.ts +18 -3
  133. package/dist/triggers/matcher.d.ts.map +1 -1
  134. package/dist/triggers/matcher.js +75 -18
  135. package/dist/triggers/matcher.js.map +1 -1
  136. package/dist/types/index.d.ts +42 -0
  137. package/dist/types/index.d.ts.map +1 -1
  138. package/dist/types/index.js +14 -0
  139. package/dist/types/index.js.map +1 -1
  140. package/package.json +4 -2
  141. package/plugins/.claude-plugin/marketplace.json +14 -0
  142. package/plugins/warden/.claude-plugin/plugin.json +7 -0
  143. package/plugins/warden/skills/warden/SKILL.md +78 -0
  144. package/plugins/warden/skills/warden/references/cli-reference.md +144 -0
  145. package/plugins/warden/skills/warden/references/config-schema.md +111 -0
  146. package/plugins/warden/skills/warden/references/configuration.md +108 -0
  147. package/plugins/warden/skills/warden/references/creating-skills.md +85 -0
  148. package/scripts/update-pricing.ts +88 -0
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.d.ts","sourceRoot":"","sources":["../../src/triggers/matcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQhG,gDAAgD;AAChD,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AA8CD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CA6C7E;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAIlF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAI7F;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAMhF"}
1
+ {"version":3,"file":"matcher.d.ts","sourceRoot":"","sources":["../../src/triggers/matcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQhG,gDAAgD;AAChD,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AA8CD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEhE;AAsCD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACpD,YAAY,CAkCd;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,YAAY,EACrB,WAAW,CAAC,EAAE,WAAW,GAAG,QAAQ,GACnC,OAAO,CAoCT;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAIlF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAI7F;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAMhF"}
@@ -56,26 +56,12 @@ export function matchGlob(pattern, path) {
56
56
  return globToRegex(pattern).test(path);
57
57
  }
58
58
  /**
59
- * Check if a trigger matches the given event context.
59
+ * Check if a file list matches the path filters.
60
+ * Returns true if paths match (or no filters), false if all files are excluded.
60
61
  */
61
- export function matchTrigger(trigger, context) {
62
- if (trigger.event !== context.eventType) {
63
- return false;
64
- }
65
- // Schedule events don't have actions - they match based on whether
66
- // any files match the paths filter (context was already built with matching files)
67
- if (trigger.event === 'schedule') {
68
- return (context.pullRequest?.files.length ?? 0) > 0;
69
- }
70
- // For non-schedule events, actions must match
71
- if (!trigger.actions?.includes(context.action)) {
72
- return false;
73
- }
74
- const filenames = context.pullRequest?.files.map((f) => f.filename);
75
- const pathPatterns = trigger.filters?.paths;
76
- const ignorePatterns = trigger.filters?.ignorePaths;
62
+ function matchPathFilters(filters, filenames) {
63
+ const { paths: pathPatterns, ignorePaths: ignorePatterns } = filters;
77
64
  // Fail trigger match when path filters are defined but filenames unavailable
78
- // This prevents filters from being silently bypassed on API failures
79
65
  if ((pathPatterns || ignorePatterns) && (!filenames || filenames.length === 0)) {
80
66
  return false;
81
67
  }
@@ -93,6 +79,77 @@ export function matchTrigger(trigger, context) {
93
79
  }
94
80
  return true;
95
81
  }
82
+ /**
83
+ * Return a copy of the context with only files matching the path filters.
84
+ * If no filters are set, returns the original context unchanged (no copy).
85
+ */
86
+ export function filterContextByPaths(context, filters) {
87
+ const { paths: pathPatterns, ignorePaths: ignorePatterns } = filters;
88
+ // No filters — return original reference
89
+ if (!pathPatterns && !ignorePatterns) {
90
+ return context;
91
+ }
92
+ // No PR context — nothing to filter
93
+ if (!context.pullRequest) {
94
+ return context;
95
+ }
96
+ let files = context.pullRequest.files;
97
+ if (pathPatterns) {
98
+ files = files.filter((f) => pathPatterns.some((pattern) => matchGlob(pattern, f.filename)));
99
+ }
100
+ if (ignorePatterns) {
101
+ files = files.filter((f) => !ignorePatterns.some((pattern) => matchGlob(pattern, f.filename)));
102
+ }
103
+ return {
104
+ ...context,
105
+ pullRequest: {
106
+ ...context.pullRequest,
107
+ files,
108
+ },
109
+ };
110
+ }
111
+ /**
112
+ * Check if a trigger matches the given event context and environment.
113
+ *
114
+ * Trigger types:
115
+ * - '*' (wildcard): matches all environments, skips event/action checks
116
+ * - 'local': matches only when environment is 'local'
117
+ * - 'pull_request': matches when environment is 'github' and event is pull_request
118
+ * - 'schedule': matches when event is schedule
119
+ */
120
+ export function matchTrigger(trigger, context, environment) {
121
+ // Wildcard triggers match everywhere, only check path filters
122
+ if (trigger.type === '*') {
123
+ const filenames = context.pullRequest?.files.map((f) => f.filename);
124
+ return matchPathFilters(trigger.filters, filenames);
125
+ }
126
+ // Type-based matching with early returns
127
+ if (trigger.type === 'local') {
128
+ if (environment !== 'local') {
129
+ return false;
130
+ }
131
+ }
132
+ if (trigger.type === 'pull_request') {
133
+ if (environment === 'local') {
134
+ return false;
135
+ }
136
+ if (context.eventType !== 'pull_request') {
137
+ return false;
138
+ }
139
+ if (!trigger.actions?.includes(context.action)) {
140
+ return false;
141
+ }
142
+ }
143
+ if (trigger.type === 'schedule') {
144
+ if (context.eventType !== 'schedule') {
145
+ return false;
146
+ }
147
+ return (context.pullRequest?.files.length ?? 0) > 0;
148
+ }
149
+ // Apply path filters
150
+ const filenames = context.pullRequest?.files.map((f) => f.filename);
151
+ return matchPathFilters(trigger.filters, filenames);
152
+ }
96
153
  /**
97
154
  * Check if a report has any findings at or above the given severity threshold.
98
155
  * Returns false if failOn is 'off' (disabled).
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/triggers/matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/triggers/matcher.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,14 @@ export declare const UsageStatsSchema: z.ZodObject<{
85
85
  costUSD: z.ZodNumber;
86
86
  }, z.core.$strip>;
87
87
  export type UsageStats = z.infer<typeof UsageStatsSchema>;
88
+ export declare const AuxiliaryUsageMapSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
89
+ inputTokens: z.ZodNumber;
90
+ outputTokens: z.ZodNumber;
91
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
92
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
93
+ costUSD: z.ZodNumber;
94
+ }, z.core.$strip>>;
95
+ export type AuxiliaryUsageMap = z.infer<typeof AuxiliaryUsageMapSchema>;
88
96
  export declare const SkippedFileSchema: z.ZodObject<{
89
97
  filename: z.ZodString;
90
98
  reason: z.ZodEnum<{
@@ -94,6 +102,19 @@ export declare const SkippedFileSchema: z.ZodObject<{
94
102
  pattern: z.ZodOptional<z.ZodString>;
95
103
  }, z.core.$strip>;
96
104
  export type SkippedFile = z.infer<typeof SkippedFileSchema>;
105
+ export declare const FileReportSchema: z.ZodObject<{
106
+ filename: z.ZodString;
107
+ findingCount: z.ZodNumber;
108
+ durationMs: z.ZodOptional<z.ZodNumber>;
109
+ usage: z.ZodOptional<z.ZodObject<{
110
+ inputTokens: z.ZodNumber;
111
+ outputTokens: z.ZodNumber;
112
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
113
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
114
+ costUSD: z.ZodNumber;
115
+ }, z.core.$strip>>;
116
+ }, z.core.$strip>;
117
+ export type FileReport = z.infer<typeof FileReportSchema>;
97
118
  export declare const SkillReportSchema: z.ZodObject<{
98
119
  skill: z.ZodString;
99
120
  summary: z.ZodString;
@@ -143,6 +164,25 @@ export declare const SkillReportSchema: z.ZodObject<{
143
164
  }, z.core.$strip>>>;
144
165
  failedHunks: z.ZodOptional<z.ZodNumber>;
145
166
  failedExtractions: z.ZodOptional<z.ZodNumber>;
167
+ auxiliaryUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
168
+ inputTokens: z.ZodNumber;
169
+ outputTokens: z.ZodNumber;
170
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
171
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
172
+ costUSD: z.ZodNumber;
173
+ }, z.core.$strip>>>;
174
+ files: z.ZodOptional<z.ZodArray<z.ZodObject<{
175
+ filename: z.ZodString;
176
+ findingCount: z.ZodNumber;
177
+ durationMs: z.ZodOptional<z.ZodNumber>;
178
+ usage: z.ZodOptional<z.ZodObject<{
179
+ inputTokens: z.ZodNumber;
180
+ outputTokens: z.ZodNumber;
181
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
182
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
183
+ costUSD: z.ZodNumber;
184
+ }, z.core.$strip>>;
185
+ }, z.core.$strip>>>;
146
186
  }, z.core.$strip>;
147
187
  export type SkillReport = z.infer<typeof SkillReportSchema>;
148
188
  export declare const GitHubEventTypeSchema: z.ZodEnum<{
@@ -191,6 +231,7 @@ export declare const PullRequestContextSchema: z.ZodObject<{
191
231
  baseBranch: z.ZodString;
192
232
  headBranch: z.ZodString;
193
233
  headSha: z.ZodString;
234
+ baseSha: z.ZodString;
194
235
  files: z.ZodArray<z.ZodObject<{
195
236
  filename: z.ZodString;
196
237
  status: z.ZodEnum<{
@@ -240,6 +281,7 @@ export declare const EventContextSchema: z.ZodObject<{
240
281
  baseBranch: z.ZodString;
241
282
  headBranch: z.ZodString;
242
283
  headSha: z.ZodString;
284
+ baseSha: z.ZodString;
243
285
  files: z.ZodArray<z.ZodObject<{
244
286
  filename: z.ZodString;
245
287
  status: z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -68,12 +68,21 @@ export const UsageStatsSchema = z.object({
68
68
  cacheCreationInputTokens: z.number().int().nonnegative().optional(),
69
69
  costUSD: z.number().nonnegative(),
70
70
  });
71
+ // Auxiliary usage from non-SDK LLM calls (extraction repair, semantic dedup, etc.)
72
+ export const AuxiliaryUsageMapSchema = z.record(z.string(), UsageStatsSchema);
71
73
  // Skipped file info for chunking
72
74
  export const SkippedFileSchema = z.object({
73
75
  filename: z.string(),
74
76
  reason: z.enum(['pattern', 'builtin']),
75
77
  pattern: z.string().optional(),
76
78
  });
79
+ // Per-file report within a skill
80
+ export const FileReportSchema = z.object({
81
+ filename: z.string(),
82
+ findingCount: z.number().int().nonnegative(),
83
+ durationMs: z.number().nonnegative().optional(),
84
+ usage: UsageStatsSchema.optional(),
85
+ });
77
86
  // Skill report output
78
87
  export const SkillReportSchema = z.object({
79
88
  skill: z.string(),
@@ -88,6 +97,10 @@ export const SkillReportSchema = z.object({
88
97
  failedHunks: z.number().int().nonnegative().optional(),
89
98
  /** Number of hunks where findings extraction failed (JSON parse errors) */
90
99
  failedExtractions: z.number().int().nonnegative().optional(),
100
+ /** Usage from auxiliary LLM calls (extraction repair, semantic dedup, etc.) */
101
+ auxiliaryUsage: AuxiliaryUsageMapSchema.optional(),
102
+ /** Per-file breakdown of findings, timing, and usage */
103
+ files: z.array(FileReportSchema).optional(),
91
104
  });
92
105
  // GitHub event types
93
106
  export const GitHubEventTypeSchema = z.enum([
@@ -133,6 +146,7 @@ export const PullRequestContextSchema = z.object({
133
146
  baseBranch: z.string(),
134
147
  headBranch: z.string(),
135
148
  headSha: z.string(),
149
+ baseSha: z.string(),
136
150
  files: z.array(FileChangeSchema),
137
151
  });
138
152
  // Repository context
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentry/warden",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "Event-driven agent that reacts to GitHub events and executes skills via Claude Code SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -46,6 +46,7 @@
46
46
  "ignore": "^7.0.5",
47
47
  "ink": "^5.2.1",
48
48
  "ink-spinner": "^5.0.0",
49
+ "nanoid": "^5.1.6",
49
50
  "react": "^18.3.1",
50
51
  "smol-toml": "^1.6.0",
51
52
  "zod": "^4.3.6"
@@ -77,6 +78,7 @@
77
78
  "test": "vitest run",
78
79
  "test:watch": "vitest",
79
80
  "test:examples": "vitest run --config vitest.integration.config.ts",
80
- "typecheck": "tsc --noEmit"
81
+ "typecheck": "tsc --noEmit",
82
+ "update-pricing": "tsx scripts/update-pricing.ts"
81
83
  }
82
84
  }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "warden-local",
3
+ "owner": {
4
+ "name": "dcramer"
5
+ },
6
+ "plugins": [
7
+ {
8
+ "name": "warden",
9
+ "source": "./warden",
10
+ "version": "0.0.0",
11
+ "skills": ["warden"]
12
+ }
13
+ ]
14
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "warden",
3
+ "description": "Run Warden to analyze code changes before committing",
4
+ "author": {
5
+ "name": "Sentry"
6
+ }
7
+ }
@@ -0,0 +1,78 @@
1
+ ---
2
+ name: warden
3
+ description: Run Warden to analyze code changes before committing. Use when asked to "run warden", "check my changes", "review before commit", "warden config", "warden.toml", "create a warden skill", "add trigger", or any Warden-related local development task.
4
+ ---
5
+
6
+ Run Warden to analyze code changes before committing.
7
+
8
+ ## References
9
+
10
+ Read the relevant reference when the task requires deeper detail:
11
+
12
+ | Document | Read When |
13
+ |----------|-----------|
14
+ | `${CLAUDE_SKILL_ROOT}/references/cli-reference.md` | Full option details, per-command flags, examples |
15
+ | `${CLAUDE_SKILL_ROOT}/references/configuration.md` | Editing warden.toml, triggers, patterns, troubleshooting |
16
+ | `${CLAUDE_SKILL_ROOT}/references/config-schema.md` | Exact field names, types, and defaults |
17
+ | `${CLAUDE_SKILL_ROOT}/references/creating-skills.md` | Writing custom skills, remote skills, skill discovery |
18
+
19
+ ## Running Warden
20
+
21
+ ```bash
22
+ # Analyze uncommitted changes (uses warden.toml triggers)
23
+ warden
24
+
25
+ # Run a specific skill
26
+ warden --skill find-bugs
27
+
28
+ # Analyze specific files
29
+ warden src/auth.ts src/database.ts
30
+
31
+ # Analyze changes from a git ref
32
+ warden main..HEAD
33
+ warden HEAD~3
34
+
35
+ # Auto-apply suggested fixes
36
+ warden --fix
37
+
38
+ # Fail on high-severity findings
39
+ warden --fail-on high
40
+ ```
41
+
42
+ Set `WARDEN_ANTHROPIC_API_KEY` or log in via `claude login` before running.
43
+
44
+ ## Pre-Commit Workflow
45
+
46
+ After making code changes and before committing:
47
+
48
+ 1. Run `warden` to analyze uncommitted changes
49
+ 2. Review the findings
50
+ 3. Fix issues Warden reports (or use `warden --fix` to auto-apply)
51
+ 4. Commit the changes
52
+
53
+ Run Warden once to validate work. Do not loop re-running Warden on the same changes.
54
+
55
+ ## Reading Output
56
+
57
+ **Severity levels:**
58
+ - `critical` - Must fix before merge
59
+ - `high` - Should fix before merge
60
+ - `medium` - Worth reviewing
61
+ - `low` - Minor improvement
62
+ - `info` - Informational only
63
+
64
+ **Exit codes:** `0` = no findings at or above fail threshold. `1` = findings at or above fail threshold.
65
+
66
+ **Verbosity:** `-v` shows real-time findings. `-vv` shows debug info (tokens, latency). `-q` shows errors and summary only.
67
+
68
+ ## Commands
69
+
70
+ | Command | Description |
71
+ |---------|-------------|
72
+ | `warden` | Run analysis (default) |
73
+ | `warden init` | Initialize warden.toml and GitHub workflow |
74
+ | `warden add [skill]` | Add skill trigger to warden.toml |
75
+ | `warden sync [remote]` | Update cached remote skills |
76
+ | `warden setup-app` | Create GitHub App via manifest flow |
77
+
78
+ For full options and flags, read `${CLAUDE_SKILL_ROOT}/references/cli-reference.md`.
@@ -0,0 +1,144 @@
1
+ # CLI Reference
2
+
3
+ ## Usage
4
+
5
+ ```
6
+ warden [command] [targets...] [options]
7
+ ```
8
+
9
+ Analyze code for security issues and code quality.
10
+
11
+ ## Commands
12
+
13
+ | Command | Description |
14
+ |---------|-------------|
15
+ | `(default)` | Run analysis on targets or using warden.toml skills |
16
+ | `init` | Initialize warden.toml and GitHub workflow |
17
+ | `add [skill]` | Add a skill to warden.toml |
18
+ | `sync [remote]` | Update cached remote skills to latest |
19
+ | `setup-app` | Create a GitHub App for Warden via manifest flow |
20
+
21
+ ## Targets
22
+
23
+ | Target | Description |
24
+ |--------|-------------|
25
+ | `<files>` | Analyze specific files (e.g., `src/auth.ts`) |
26
+ | `<glob>` | Analyze files matching pattern (e.g., `"src/**/*.ts"`) |
27
+ | `<git-ref>` | Analyze changes from git ref (e.g., `HEAD~3`, `main..feature`) |
28
+ | `(none)` | Analyze uncommitted changes using warden.toml skills |
29
+
30
+ Ambiguous targets (no path separator, no extension) are resolved by checking if a file exists at the path. Use `--git` to force git ref interpretation.
31
+
32
+ ## Options
33
+
34
+ | Option | Description |
35
+ |--------|-------------|
36
+ | `--skill <name>` | Run only this skill (default: run all built-in skills) |
37
+ | `--config <path>` | Path to warden.toml (default: `./warden.toml`) |
38
+ | `-m, --model <model>` | Model to use (fallback when not set in config) |
39
+ | `--json` | Output results as JSON |
40
+ | `-o, --output <path>` | Write full run output to a JSONL file |
41
+ | `--fail-on <severity>` | Exit with code 1 if findings >= severity |
42
+ | `--report-on <severity>` | Only show findings >= severity in output |
43
+ | `--fix` | Automatically apply all suggested fixes |
44
+ | `--parallel <n>` | Max concurrent skill executions (default: 4) |
45
+ | `--git` | Force ambiguous targets to be treated as git refs |
46
+ | `--offline` | Use cached remote skills without network access |
47
+ | `-q, --quiet` | Errors and final summary only |
48
+ | `-v, --verbose` | Show real-time findings and hunk details |
49
+ | `-vv` | Show debug info (token counts, latencies) |
50
+ | `--debug` | Enable debug output (equivalent to `-vv`) |
51
+ | `--log` | Use log output (no animations, timestamped) |
52
+ | `--color / --no-color` | Override color detection |
53
+ | `-h, --help` | Show help message |
54
+ | `-V, --version` | Show version number |
55
+
56
+ ## Per-Command Options
57
+
58
+ **Init:**
59
+ | Option | Description |
60
+ |--------|-------------|
61
+ | `-f, --force` | Overwrite existing files |
62
+
63
+ **Add:**
64
+ | Option | Description |
65
+ |--------|-------------|
66
+ | `--list` | List available skills |
67
+ | `--remote <ref>` | Remote repository (`owner/repo`, URL, or with `@sha`) |
68
+ | `--force` | Bypass skill cache and fetch latest |
69
+
70
+ **Sync:**
71
+ | Option | Description |
72
+ |--------|-------------|
73
+ | `--remote <ref>` | Specific remote to sync (default: all) |
74
+
75
+ **Setup-app:**
76
+ | Option | Description |
77
+ |--------|-------------|
78
+ | `--org <name>` | Create under organization (default: personal) |
79
+ | `--port <number>` | Local server port (default: 3000) |
80
+ | `--timeout <sec>` | Callback timeout in seconds (default: 300) |
81
+ | `--name <string>` | Custom app name (default: Warden) |
82
+ | `--no-open` | Print URL instead of opening browser |
83
+
84
+ ## Severity Levels
85
+
86
+ Used in `--fail-on` and `--report-on`:
87
+
88
+ | Level | Meaning |
89
+ |-------|---------|
90
+ | `critical` | Must fix before merge |
91
+ | `high` | Should fix before merge |
92
+ | `medium` | Worth reviewing |
93
+ | `low` | Minor improvement |
94
+ | `info` | Informational only |
95
+ | `off` | Disable the threshold |
96
+
97
+ ## Exit Codes
98
+
99
+ | Code | Meaning |
100
+ |------|---------|
101
+ | `0` | No findings at or above `--fail-on` threshold |
102
+ | `1` | Findings at or above `--fail-on` threshold |
103
+
104
+ ## Examples
105
+
106
+ ```bash
107
+ # Initialize
108
+ warden init
109
+
110
+ # Interactive skill selection
111
+ warden add
112
+ warden add security-review
113
+ warden add --list
114
+
115
+ # Remote skills
116
+ warden add --remote getsentry/skills --skill security-review
117
+ warden add --remote https://github.com/getsentry/skills --skill security-review
118
+ warden add --remote getsentry/skills@abc123 --skill security-review
119
+
120
+ # Run analysis
121
+ warden # Skills from warden.toml
122
+ warden src/auth.ts # Specific file
123
+ warden src/auth.ts --skill security-review
124
+ warden "src/**/*.ts" # Glob pattern
125
+ warden HEAD~3 # Git changes
126
+ warden HEAD~3 --skill security-review
127
+ warden main..HEAD # Branch diff
128
+
129
+ # Output control
130
+ warden --json
131
+ warden --fail-on high
132
+ warden -o results.jsonl
133
+
134
+ # Fix mode
135
+ warden --fix
136
+
137
+ # Cached skills only
138
+ warden --offline
139
+ warden sync # Update all unpinned remote skills
140
+
141
+ # GitHub App setup
142
+ warden setup-app
143
+ warden setup-app --org myorg
144
+ ```