@sentry/warden 0.1.0 → 0.2.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 (588) hide show
  1. package/dist/cli/commands/init.d.ts.map +1 -1
  2. package/dist/cli/commands/init.js +3 -1
  3. package/dist/cli/commands/init.js.map +1 -1
  4. package/dist/cli/commands/setup-app/manifest.d.ts.map +1 -1
  5. package/dist/cli/commands/setup-app/manifest.js +3 -1
  6. package/dist/cli/commands/setup-app/manifest.js.map +1 -1
  7. package/dist/cli/commands/setup-app.js +1 -1
  8. package/dist/cli/commands/setup-app.js.map +1 -1
  9. package/dist/cli/files.d.ts +11 -1
  10. package/dist/cli/files.d.ts.map +1 -1
  11. package/dist/cli/files.js +145 -4
  12. package/dist/cli/files.js.map +1 -1
  13. package/dist/cli/git.d.ts.map +1 -1
  14. package/dist/cli/git.js +5 -9
  15. package/dist/cli/git.js.map +1 -1
  16. package/dist/cli/index.js +0 -0
  17. package/dist/cli/output/icons.d.ts +4 -0
  18. package/dist/cli/output/icons.d.ts.map +1 -1
  19. package/dist/cli/output/icons.js +4 -0
  20. package/dist/cli/output/icons.js.map +1 -1
  21. package/dist/cli/output/ink-runner.d.ts +20 -0
  22. package/dist/cli/output/ink-runner.d.ts.map +1 -1
  23. package/dist/cli/output/ink-runner.js +53 -19
  24. package/dist/cli/output/ink-runner.js.map +1 -1
  25. package/dist/cli/output/tasks.d.ts.map +1 -1
  26. package/dist/cli/output/tasks.js +5 -1
  27. package/dist/cli/output/tasks.js.map +1 -1
  28. package/dist/config/schema.d.ts.map +1 -1
  29. package/dist/config/schema.js +15 -1
  30. package/dist/config/schema.js.map +1 -1
  31. package/dist/diff/coalesce.d.ts +32 -2
  32. package/dist/diff/coalesce.d.ts.map +1 -1
  33. package/dist/diff/coalesce.js +174 -2
  34. package/dist/diff/coalesce.js.map +1 -1
  35. package/dist/output/dedup.d.ts.map +1 -1
  36. package/dist/output/dedup.js +8 -3
  37. package/dist/output/dedup.js.map +1 -1
  38. package/dist/output/renderer.d.ts.map +1 -1
  39. package/dist/output/renderer.js +49 -5
  40. package/dist/output/renderer.js.map +1 -1
  41. package/dist/output/stale.d.ts.map +1 -1
  42. package/dist/output/stale.js +7 -0
  43. package/dist/output/stale.js.map +1 -1
  44. package/dist/output/types.d.ts +15 -1
  45. package/dist/output/types.d.ts.map +1 -1
  46. package/dist/sdk/analyze.d.ts +18 -0
  47. package/dist/sdk/analyze.d.ts.map +1 -0
  48. package/dist/sdk/analyze.js +425 -0
  49. package/dist/sdk/analyze.js.map +1 -0
  50. package/dist/sdk/errors.d.ts +23 -0
  51. package/dist/sdk/errors.d.ts.map +1 -0
  52. package/dist/sdk/errors.js +72 -0
  53. package/dist/sdk/errors.js.map +1 -0
  54. package/dist/sdk/extract.d.ts +44 -0
  55. package/dist/sdk/extract.d.ts.map +1 -0
  56. package/dist/sdk/extract.js +224 -0
  57. package/dist/sdk/extract.js.map +1 -0
  58. package/dist/sdk/prepare.d.ts +13 -0
  59. package/dist/sdk/prepare.d.ts.map +1 -0
  60. package/dist/sdk/prepare.js +73 -0
  61. package/dist/sdk/prepare.js.map +1 -0
  62. package/dist/sdk/prompt.d.ts +30 -0
  63. package/dist/sdk/prompt.d.ts.map +1 -0
  64. package/dist/sdk/prompt.js +109 -0
  65. package/dist/sdk/prompt.js.map +1 -0
  66. package/dist/sdk/retry.d.ts +12 -0
  67. package/dist/sdk/retry.d.ts.map +1 -0
  68. package/dist/sdk/retry.js +31 -0
  69. package/dist/sdk/retry.js.map +1 -0
  70. package/dist/sdk/runner.d.ts +22 -199
  71. package/dist/sdk/runner.d.ts.map +1 -1
  72. package/dist/sdk/runner.js +26 -884
  73. package/dist/sdk/runner.js.map +1 -1
  74. package/dist/sdk/types.d.ts +127 -0
  75. package/dist/sdk/types.d.ts.map +1 -0
  76. package/dist/sdk/types.js +5 -0
  77. package/dist/sdk/types.js.map +1 -0
  78. package/dist/sdk/usage.d.ts +20 -0
  79. package/dist/sdk/usage.d.ts.map +1 -0
  80. package/dist/sdk/usage.js +44 -0
  81. package/dist/sdk/usage.js.map +1 -0
  82. package/dist/skills/remote.d.ts.map +1 -1
  83. package/dist/skills/remote.js +3 -7
  84. package/dist/skills/remote.js.map +1 -1
  85. package/dist/types/index.d.ts +1 -0
  86. package/dist/types/index.d.ts.map +1 -1
  87. package/dist/types/index.js +2 -0
  88. package/dist/types/index.js.map +1 -1
  89. package/dist/utils/exec.d.ts +61 -0
  90. package/dist/utils/exec.d.ts.map +1 -0
  91. package/dist/utils/exec.js +111 -0
  92. package/dist/utils/exec.js.map +1 -0
  93. package/dist/utils/index.d.ts +2 -0
  94. package/dist/utils/index.d.ts.map +1 -1
  95. package/dist/utils/index.js +1 -0
  96. package/dist/utils/index.js.map +1 -1
  97. package/package.json +15 -16
  98. package/.agents/skills/find-bugs/SKILL.md +0 -75
  99. package/.agents/skills/vercel-react-best-practices/AGENTS.md +0 -2934
  100. package/.agents/skills/vercel-react-best-practices/SKILL.md +0 -136
  101. package/.agents/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  102. package/.agents/skills/vercel-react-best-practices/rules/advanced-init-once.md +0 -42
  103. package/.agents/skills/vercel-react-best-practices/rules/advanced-use-latest.md +0 -39
  104. package/.agents/skills/vercel-react-best-practices/rules/async-api-routes.md +0 -38
  105. package/.agents/skills/vercel-react-best-practices/rules/async-defer-await.md +0 -80
  106. package/.agents/skills/vercel-react-best-practices/rules/async-dependencies.md +0 -51
  107. package/.agents/skills/vercel-react-best-practices/rules/async-parallel.md +0 -28
  108. package/.agents/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -99
  109. package/.agents/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -59
  110. package/.agents/skills/vercel-react-best-practices/rules/bundle-conditional.md +0 -31
  111. package/.agents/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -49
  112. package/.agents/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  113. package/.agents/skills/vercel-react-best-practices/rules/bundle-preload.md +0 -50
  114. package/.agents/skills/vercel-react-best-practices/rules/client-event-listeners.md +0 -74
  115. package/.agents/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -71
  116. package/.agents/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -48
  117. package/.agents/skills/vercel-react-best-practices/rules/client-swr-dedup.md +0 -56
  118. package/.agents/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -107
  119. package/.agents/skills/vercel-react-best-practices/rules/js-cache-function-results.md +0 -80
  120. package/.agents/skills/vercel-react-best-practices/rules/js-cache-property-access.md +0 -28
  121. package/.agents/skills/vercel-react-best-practices/rules/js-cache-storage.md +0 -70
  122. package/.agents/skills/vercel-react-best-practices/rules/js-combine-iterations.md +0 -32
  123. package/.agents/skills/vercel-react-best-practices/rules/js-early-exit.md +0 -50
  124. package/.agents/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -45
  125. package/.agents/skills/vercel-react-best-practices/rules/js-index-maps.md +0 -37
  126. package/.agents/skills/vercel-react-best-practices/rules/js-length-check-first.md +0 -49
  127. package/.agents/skills/vercel-react-best-practices/rules/js-min-max-loop.md +0 -82
  128. package/.agents/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -24
  129. package/.agents/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -57
  130. package/.agents/skills/vercel-react-best-practices/rules/rendering-activity.md +0 -26
  131. package/.agents/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  132. package/.agents/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -40
  133. package/.agents/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -38
  134. package/.agents/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  135. package/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  136. package/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +0 -30
  137. package/.agents/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -28
  138. package/.agents/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +0 -75
  139. package/.agents/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -39
  140. package/.agents/skills/vercel-react-best-practices/rules/rerender-dependencies.md +0 -45
  141. package/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +0 -40
  142. package/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state.md +0 -29
  143. package/.agents/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -74
  144. package/.agents/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  145. package/.agents/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +0 -38
  146. package/.agents/skills/vercel-react-best-practices/rules/rerender-memo.md +0 -44
  147. package/.agents/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +0 -45
  148. package/.agents/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -35
  149. package/.agents/skills/vercel-react-best-practices/rules/rerender-transitions.md +0 -40
  150. package/.agents/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +0 -73
  151. package/.agents/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -73
  152. package/.agents/skills/vercel-react-best-practices/rules/server-auth-actions.md +0 -96
  153. package/.agents/skills/vercel-react-best-practices/rules/server-cache-lru.md +0 -41
  154. package/.agents/skills/vercel-react-best-practices/rules/server-cache-react.md +0 -76
  155. package/.agents/skills/vercel-react-best-practices/rules/server-dedup-props.md +0 -65
  156. package/.agents/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -83
  157. package/.agents/skills/vercel-react-best-practices/rules/server-serialization.md +0 -38
  158. package/.claude/settings.json +0 -57
  159. package/.claude/skills/agent-prompt/SKILL.md +0 -54
  160. package/.claude/skills/agent-prompt/references/agentic-patterns.md +0 -94
  161. package/.claude/skills/agent-prompt/references/anti-patterns.md +0 -140
  162. package/.claude/skills/agent-prompt/references/context-design.md +0 -124
  163. package/.claude/skills/agent-prompt/references/core-principles.md +0 -75
  164. package/.claude/skills/agent-prompt/references/model-guidance.md +0 -118
  165. package/.claude/skills/agent-prompt/references/output-formats.md +0 -98
  166. package/.claude/skills/agent-prompt/references/skill-structure.md +0 -115
  167. package/.claude/skills/agent-prompt/references/system-prompts.md +0 -115
  168. package/.claude/skills/notseer/SKILL.md +0 -131
  169. package/.claude/skills/skill-writer/SKILL.md +0 -140
  170. package/.claude/skills/testing-guidelines/SKILL.md +0 -132
  171. package/.claude/skills/warden-skill/SKILL.md +0 -250
  172. package/.claude/skills/warden-skill/references/config-schema.md +0 -133
  173. package/.dex/config.toml +0 -2
  174. package/.github/workflows/ci.yml +0 -33
  175. package/.github/workflows/release.yml +0 -59
  176. package/.github/workflows/warden.yml +0 -40
  177. package/AGENTS.md +0 -89
  178. package/CONTRIBUTING.md +0 -60
  179. package/SPEC.md +0 -263
  180. package/action.yml +0 -87
  181. package/assets/favicon.png +0 -0
  182. package/assets/warden-icon-bw.svg +0 -5
  183. package/assets/warden-icon-purple.png +0 -0
  184. package/assets/warden-icon-purple.svg +0 -5
  185. package/dist/action/159.index.js +0 -523
  186. package/dist/action/159.index.js.map +0 -1
  187. package/dist/action/action/index.d.ts +0 -2
  188. package/dist/action/action/index.d.ts.map +0 -1
  189. package/dist/action/action/main.d.ts +0 -2
  190. package/dist/action/action/main.d.ts.map +0 -1
  191. package/dist/action/cli/args.d.ts +0 -74
  192. package/dist/action/cli/args.d.ts.map +0 -1
  193. package/dist/action/cli/args.test.d.ts +0 -2
  194. package/dist/action/cli/args.test.d.ts.map +0 -1
  195. package/dist/action/cli/commands/add.d.ts +0 -7
  196. package/dist/action/cli/commands/add.d.ts.map +0 -1
  197. package/dist/action/cli/commands/init.d.ts +0 -10
  198. package/dist/action/cli/commands/init.d.ts.map +0 -1
  199. package/dist/action/cli/commands/init.test.d.ts +0 -2
  200. package/dist/action/cli/commands/init.test.d.ts.map +0 -1
  201. package/dist/action/cli/commands/setup-app/browser.d.ts +0 -9
  202. package/dist/action/cli/commands/setup-app/browser.d.ts.map +0 -1
  203. package/dist/action/cli/commands/setup-app/credentials.d.ts +0 -15
  204. package/dist/action/cli/commands/setup-app/credentials.d.ts.map +0 -1
  205. package/dist/action/cli/commands/setup-app/manifest.d.ts +0 -24
  206. package/dist/action/cli/commands/setup-app/manifest.d.ts.map +0 -1
  207. package/dist/action/cli/commands/setup-app/server.d.ts +0 -28
  208. package/dist/action/cli/commands/setup-app/server.d.ts.map +0 -1
  209. package/dist/action/cli/commands/setup-app.d.ts +0 -11
  210. package/dist/action/cli/commands/setup-app.d.ts.map +0 -1
  211. package/dist/action/cli/commands/sync.d.ts +0 -9
  212. package/dist/action/cli/commands/sync.d.ts.map +0 -1
  213. package/dist/action/cli/context.d.ts +0 -27
  214. package/dist/action/cli/context.d.ts.map +0 -1
  215. package/dist/action/cli/files.d.ts +0 -22
  216. package/dist/action/cli/files.d.ts.map +0 -1
  217. package/dist/action/cli/files.test.d.ts +0 -2
  218. package/dist/action/cli/files.test.d.ts.map +0 -1
  219. package/dist/action/cli/fix.d.ts +0 -41
  220. package/dist/action/cli/fix.d.ts.map +0 -1
  221. package/dist/action/cli/fix.test.d.ts +0 -2
  222. package/dist/action/cli/fix.test.d.ts.map +0 -1
  223. package/dist/action/cli/git.d.ts +0 -73
  224. package/dist/action/cli/git.d.ts.map +0 -1
  225. package/dist/action/cli/git.test.d.ts +0 -2
  226. package/dist/action/cli/git.test.d.ts.map +0 -1
  227. package/dist/action/cli/index.d.ts +0 -3
  228. package/dist/action/cli/index.d.ts.map +0 -1
  229. package/dist/action/cli/main.d.ts +0 -7
  230. package/dist/action/cli/main.d.ts.map +0 -1
  231. package/dist/action/cli/output/box.d.ts +0 -75
  232. package/dist/action/cli/output/box.d.ts.map +0 -1
  233. package/dist/action/cli/output/formatters.d.ts +0 -90
  234. package/dist/action/cli/output/formatters.d.ts.map +0 -1
  235. package/dist/action/cli/output/formatters.test.d.ts +0 -2
  236. package/dist/action/cli/output/formatters.test.d.ts.map +0 -1
  237. package/dist/action/cli/output/icons.d.ts +0 -11
  238. package/dist/action/cli/output/icons.d.ts.map +0 -1
  239. package/dist/action/cli/output/index.d.ts +0 -10
  240. package/dist/action/cli/output/index.d.ts.map +0 -1
  241. package/dist/action/cli/output/ink-runner.d.ts +0 -9
  242. package/dist/action/cli/output/ink-runner.d.ts.map +0 -1
  243. package/dist/action/cli/output/jsonl.d.ts +0 -43
  244. package/dist/action/cli/output/jsonl.d.ts.map +0 -1
  245. package/dist/action/cli/output/jsonl.test.d.ts +0 -2
  246. package/dist/action/cli/output/jsonl.test.d.ts.map +0 -1
  247. package/dist/action/cli/output/reporter.d.ts +0 -108
  248. package/dist/action/cli/output/reporter.d.ts.map +0 -1
  249. package/dist/action/cli/output/tasks.d.ts +0 -89
  250. package/dist/action/cli/output/tasks.d.ts.map +0 -1
  251. package/dist/action/cli/output/tty.d.ts +0 -21
  252. package/dist/action/cli/output/tty.d.ts.map +0 -1
  253. package/dist/action/cli/output/tty.test.d.ts +0 -2
  254. package/dist/action/cli/output/tty.test.d.ts.map +0 -1
  255. package/dist/action/cli/output/verbosity.d.ts +0 -20
  256. package/dist/action/cli/output/verbosity.d.ts.map +0 -1
  257. package/dist/action/cli/output/verbosity.test.d.ts +0 -2
  258. package/dist/action/cli/output/verbosity.test.d.ts.map +0 -1
  259. package/dist/action/cli/terminal.d.ts +0 -19
  260. package/dist/action/cli/terminal.d.ts.map +0 -1
  261. package/dist/action/cli/terminal.test.d.ts +0 -2
  262. package/dist/action/cli/terminal.test.d.ts.map +0 -1
  263. package/dist/action/config/index.d.ts +0 -4
  264. package/dist/action/config/index.d.ts.map +0 -1
  265. package/dist/action/config/loader.d.ts +0 -27
  266. package/dist/action/config/loader.d.ts.map +0 -1
  267. package/dist/action/config/loader.test.d.ts +0 -2
  268. package/dist/action/config/loader.test.d.ts.map +0 -1
  269. package/dist/action/config/schema.d.ts +0 -318
  270. package/dist/action/config/schema.d.ts.map +0 -1
  271. package/dist/action/config/writer.d.ts +0 -11
  272. package/dist/action/config/writer.d.ts.map +0 -1
  273. package/dist/action/config/writer.test.d.ts +0 -2
  274. package/dist/action/config/writer.test.d.ts.map +0 -1
  275. package/dist/action/diff/classify.d.ts +0 -29
  276. package/dist/action/diff/classify.d.ts.map +0 -1
  277. package/dist/action/diff/classify.test.d.ts +0 -2
  278. package/dist/action/diff/classify.test.d.ts.map +0 -1
  279. package/dist/action/diff/coalesce.d.ts +0 -42
  280. package/dist/action/diff/coalesce.d.ts.map +0 -1
  281. package/dist/action/diff/coalesce.test.d.ts +0 -2
  282. package/dist/action/diff/coalesce.test.d.ts.map +0 -1
  283. package/dist/action/diff/context.d.ts +0 -30
  284. package/dist/action/diff/context.d.ts.map +0 -1
  285. package/dist/action/diff/context.test.d.ts +0 -2
  286. package/dist/action/diff/context.test.d.ts.map +0 -1
  287. package/dist/action/diff/index.d.ts +0 -5
  288. package/dist/action/diff/index.d.ts.map +0 -1
  289. package/dist/action/diff/parser.d.ts +0 -52
  290. package/dist/action/diff/parser.d.ts.map +0 -1
  291. package/dist/action/diff/parser.test.d.ts +0 -2
  292. package/dist/action/diff/parser.test.d.ts.map +0 -1
  293. package/dist/action/event/context.d.ts +0 -9
  294. package/dist/action/event/context.d.ts.map +0 -1
  295. package/dist/action/event/index.d.ts +0 -3
  296. package/dist/action/event/index.d.ts.map +0 -1
  297. package/dist/action/event/schedule-context.d.ts +0 -30
  298. package/dist/action/event/schedule-context.d.ts.map +0 -1
  299. package/dist/action/examples/examples.integration.test.d.ts +0 -2
  300. package/dist/action/examples/examples.integration.test.d.ts.map +0 -1
  301. package/dist/action/examples/index.d.ts +0 -50
  302. package/dist/action/examples/index.d.ts.map +0 -1
  303. package/dist/action/examples/index.test.d.ts +0 -2
  304. package/dist/action/examples/index.test.d.ts.map +0 -1
  305. package/dist/action/examples/setup.d.ts +0 -2
  306. package/dist/action/examples/setup.d.ts.map +0 -1
  307. package/dist/action/index.d.ts +0 -11
  308. package/dist/action/index.d.ts.map +0 -1
  309. package/dist/action/index.js +0 -38231
  310. package/dist/action/index.js.map +0 -1
  311. package/dist/action/licenses.txt +0 -992
  312. package/dist/action/main.d.ts +0 -2
  313. package/dist/action/main.d.ts.map +0 -1
  314. package/dist/action/main.js +0 -707
  315. package/dist/action/main.js.map +0 -1
  316. package/dist/action/output/dedup.d.ts +0 -153
  317. package/dist/action/output/dedup.d.ts.map +0 -1
  318. package/dist/action/output/dedup.test.d.ts +0 -2
  319. package/dist/action/output/dedup.test.d.ts.map +0 -1
  320. package/dist/action/output/github-checks.d.ts +0 -106
  321. package/dist/action/output/github-checks.d.ts.map +0 -1
  322. package/dist/action/output/github-checks.test.d.ts +0 -2
  323. package/dist/action/output/github-checks.test.d.ts.map +0 -1
  324. package/dist/action/output/github-issues.d.ts +0 -35
  325. package/dist/action/output/github-issues.d.ts.map +0 -1
  326. package/dist/action/output/index.d.ts +0 -6
  327. package/dist/action/output/index.d.ts.map +0 -1
  328. package/dist/action/output/issue-renderer.d.ts +0 -20
  329. package/dist/action/output/issue-renderer.d.ts.map +0 -1
  330. package/dist/action/output/renderer.d.ts +0 -4
  331. package/dist/action/output/renderer.d.ts.map +0 -1
  332. package/dist/action/output/renderer.test.d.ts +0 -2
  333. package/dist/action/output/renderer.test.d.ts.map +0 -1
  334. package/dist/action/output/stale.d.ts +0 -31
  335. package/dist/action/output/stale.d.ts.map +0 -1
  336. package/dist/action/output/stale.test.d.ts +0 -2
  337. package/dist/action/output/stale.test.d.ts.map +0 -1
  338. package/dist/action/output/types.d.ts +0 -31
  339. package/dist/action/output/types.d.ts.map +0 -1
  340. package/dist/action/package.json +0 -3
  341. package/dist/action/sdk/index.d.ts +0 -2
  342. package/dist/action/sdk/index.d.ts.map +0 -1
  343. package/dist/action/sdk/runner.d.ts +0 -202
  344. package/dist/action/sdk/runner.d.ts.map +0 -1
  345. package/dist/action/sdk/runner.test.d.ts +0 -2
  346. package/dist/action/sdk/runner.test.d.ts.map +0 -1
  347. package/dist/action/skills/index.d.ts +0 -5
  348. package/dist/action/skills/index.d.ts.map +0 -1
  349. package/dist/action/skills/loader.d.ts +0 -111
  350. package/dist/action/skills/loader.d.ts.map +0 -1
  351. package/dist/action/skills/loader.test.d.ts +0 -2
  352. package/dist/action/skills/loader.test.d.ts.map +0 -1
  353. package/dist/action/skills/remote.d.ts +0 -117
  354. package/dist/action/skills/remote.d.ts.map +0 -1
  355. package/dist/action/skills/remote.test.d.ts +0 -2
  356. package/dist/action/skills/remote.test.d.ts.map +0 -1
  357. package/dist/action/sourcemap-register.cjs +0 -1
  358. package/dist/action/triggers/matcher.d.ts +0 -30
  359. package/dist/action/triggers/matcher.d.ts.map +0 -1
  360. package/dist/action/triggers/matcher.test.d.ts +0 -2
  361. package/dist/action/triggers/matcher.test.d.ts.map +0 -1
  362. package/dist/action/types/index.d.ts +0 -269
  363. package/dist/action/types/index.d.ts.map +0 -1
  364. package/dist/action/utils/async.d.ts +0 -5
  365. package/dist/action/utils/async.d.ts.map +0 -1
  366. package/dist/action/utils/index.d.ts +0 -16
  367. package/dist/action/utils/index.d.ts.map +0 -1
  368. package/dist/action/utils/index.test.d.ts +0 -2
  369. package/dist/action/utils/index.test.d.ts.map +0 -1
  370. package/dist/action/utils/version.d.ts +0 -3
  371. package/dist/action/utils/version.d.ts.map +0 -1
  372. package/dist/cli/args.test.d.ts +0 -2
  373. package/dist/cli/args.test.d.ts.map +0 -1
  374. package/dist/cli/args.test.js +0 -392
  375. package/dist/cli/args.test.js.map +0 -1
  376. package/dist/cli/commands/init.test.d.ts +0 -2
  377. package/dist/cli/commands/init.test.d.ts.map +0 -1
  378. package/dist/cli/commands/init.test.js +0 -117
  379. package/dist/cli/commands/init.test.js.map +0 -1
  380. package/dist/cli/files.test.d.ts +0 -2
  381. package/dist/cli/files.test.d.ts.map +0 -1
  382. package/dist/cli/files.test.js +0 -117
  383. package/dist/cli/files.test.js.map +0 -1
  384. package/dist/cli/fix.test.d.ts +0 -2
  385. package/dist/cli/fix.test.d.ts.map +0 -1
  386. package/dist/cli/fix.test.js +0 -251
  387. package/dist/cli/fix.test.js.map +0 -1
  388. package/dist/cli/git.test.d.ts +0 -2
  389. package/dist/cli/git.test.d.ts.map +0 -1
  390. package/dist/cli/git.test.js +0 -96
  391. package/dist/cli/git.test.js.map +0 -1
  392. package/dist/cli/output/formatters.test.d.ts +0 -2
  393. package/dist/cli/output/formatters.test.d.ts.map +0 -1
  394. package/dist/cli/output/formatters.test.js +0 -152
  395. package/dist/cli/output/formatters.test.js.map +0 -1
  396. package/dist/cli/output/jsonl.test.d.ts +0 -2
  397. package/dist/cli/output/jsonl.test.d.ts.map +0 -1
  398. package/dist/cli/output/jsonl.test.js +0 -284
  399. package/dist/cli/output/jsonl.test.js.map +0 -1
  400. package/dist/cli/output/tty.test.d.ts +0 -2
  401. package/dist/cli/output/tty.test.d.ts.map +0 -1
  402. package/dist/cli/output/tty.test.js +0 -105
  403. package/dist/cli/output/tty.test.js.map +0 -1
  404. package/dist/cli/output/verbosity.test.d.ts +0 -2
  405. package/dist/cli/output/verbosity.test.d.ts.map +0 -1
  406. package/dist/cli/output/verbosity.test.js +0 -35
  407. package/dist/cli/output/verbosity.test.js.map +0 -1
  408. package/dist/cli/terminal.test.d.ts +0 -2
  409. package/dist/cli/terminal.test.d.ts.map +0 -1
  410. package/dist/cli/terminal.test.js +0 -123
  411. package/dist/cli/terminal.test.js.map +0 -1
  412. package/dist/config/loader.test.d.ts +0 -2
  413. package/dist/config/loader.test.d.ts.map +0 -1
  414. package/dist/config/loader.test.js +0 -263
  415. package/dist/config/loader.test.js.map +0 -1
  416. package/dist/config/writer.test.d.ts +0 -2
  417. package/dist/config/writer.test.d.ts.map +0 -1
  418. package/dist/config/writer.test.js +0 -98
  419. package/dist/config/writer.test.js.map +0 -1
  420. package/dist/diff/classify.test.d.ts +0 -2
  421. package/dist/diff/classify.test.d.ts.map +0 -1
  422. package/dist/diff/classify.test.js +0 -140
  423. package/dist/diff/classify.test.js.map +0 -1
  424. package/dist/diff/coalesce.test.d.ts +0 -2
  425. package/dist/diff/coalesce.test.d.ts.map +0 -1
  426. package/dist/diff/coalesce.test.js +0 -159
  427. package/dist/diff/coalesce.test.js.map +0 -1
  428. package/dist/diff/context.test.d.ts +0 -2
  429. package/dist/diff/context.test.d.ts.map +0 -1
  430. package/dist/diff/context.test.js +0 -190
  431. package/dist/diff/context.test.js.map +0 -1
  432. package/dist/diff/parser.test.d.ts +0 -2
  433. package/dist/diff/parser.test.d.ts.map +0 -1
  434. package/dist/diff/parser.test.js +0 -178
  435. package/dist/diff/parser.test.js.map +0 -1
  436. package/dist/examples/examples.integration.test.d.ts +0 -2
  437. package/dist/examples/examples.integration.test.d.ts.map +0 -1
  438. package/dist/examples/examples.integration.test.js +0 -55
  439. package/dist/examples/examples.integration.test.js.map +0 -1
  440. package/dist/examples/index.test.d.ts +0 -2
  441. package/dist/examples/index.test.d.ts.map +0 -1
  442. package/dist/examples/index.test.js +0 -88
  443. package/dist/examples/index.test.js.map +0 -1
  444. package/dist/output/dedup.test.d.ts +0 -2
  445. package/dist/output/dedup.test.d.ts.map +0 -1
  446. package/dist/output/dedup.test.js +0 -357
  447. package/dist/output/dedup.test.js.map +0 -1
  448. package/dist/output/github-checks.test.d.ts +0 -2
  449. package/dist/output/github-checks.test.d.ts.map +0 -1
  450. package/dist/output/github-checks.test.js +0 -255
  451. package/dist/output/github-checks.test.js.map +0 -1
  452. package/dist/output/renderer.test.d.ts +0 -2
  453. package/dist/output/renderer.test.d.ts.map +0 -1
  454. package/dist/output/renderer.test.js +0 -645
  455. package/dist/output/renderer.test.js.map +0 -1
  456. package/dist/output/stale.test.d.ts +0 -2
  457. package/dist/output/stale.test.d.ts.map +0 -1
  458. package/dist/output/stale.test.js +0 -330
  459. package/dist/output/stale.test.js.map +0 -1
  460. package/dist/sdk/runner.test.d.ts +0 -2
  461. package/dist/sdk/runner.test.d.ts.map +0 -1
  462. package/dist/sdk/runner.test.js +0 -677
  463. package/dist/sdk/runner.test.js.map +0 -1
  464. package/dist/skills/loader.test.d.ts +0 -2
  465. package/dist/skills/loader.test.d.ts.map +0 -1
  466. package/dist/skills/loader.test.js +0 -241
  467. package/dist/skills/loader.test.js.map +0 -1
  468. package/dist/skills/remote.test.d.ts +0 -2
  469. package/dist/skills/remote.test.d.ts.map +0 -1
  470. package/dist/skills/remote.test.js +0 -582
  471. package/dist/skills/remote.test.js.map +0 -1
  472. package/dist/triggers/matcher.test.d.ts +0 -2
  473. package/dist/triggers/matcher.test.d.ts.map +0 -1
  474. package/dist/triggers/matcher.test.js +0 -234
  475. package/dist/triggers/matcher.test.js.map +0 -1
  476. package/dist/utils/index.test.d.ts +0 -2
  477. package/dist/utils/index.test.d.ts.map +0 -1
  478. package/dist/utils/index.test.js +0 -68
  479. package/dist/utils/index.test.js.map +0 -1
  480. package/docs/astro.config.mjs +0 -43
  481. package/docs/package.json +0 -19
  482. package/docs/pnpm-lock.yaml +0 -4000
  483. package/docs/public/favicon.svg +0 -5
  484. package/docs/src/components/Code.astro +0 -141
  485. package/docs/src/components/PackageManagerTabs.astro +0 -183
  486. package/docs/src/components/Terminal.astro +0 -212
  487. package/docs/src/layouts/Base.astro +0 -380
  488. package/docs/src/pages/cli.astro +0 -167
  489. package/docs/src/pages/config.astro +0 -395
  490. package/docs/src/pages/guide.astro +0 -450
  491. package/docs/src/pages/index.astro +0 -490
  492. package/docs/src/styles/global.css +0 -551
  493. package/docs/src/utils/version.ts +0 -6
  494. package/docs/tsconfig.json +0 -3
  495. package/docs/vercel.json +0 -5
  496. package/eslint.config.js +0 -33
  497. package/src/action/index.ts +0 -1
  498. package/src/action/main.ts +0 -868
  499. package/src/cli/args.test.ts +0 -477
  500. package/src/cli/args.ts +0 -414
  501. package/src/cli/commands/add.ts +0 -447
  502. package/src/cli/commands/init.test.ts +0 -137
  503. package/src/cli/commands/init.ts +0 -134
  504. package/src/cli/commands/setup-app/browser.ts +0 -38
  505. package/src/cli/commands/setup-app/credentials.ts +0 -45
  506. package/src/cli/commands/setup-app/manifest.ts +0 -48
  507. package/src/cli/commands/setup-app/server.ts +0 -172
  508. package/src/cli/commands/setup-app.ts +0 -156
  509. package/src/cli/commands/sync.ts +0 -114
  510. package/src/cli/context.ts +0 -131
  511. package/src/cli/files.test.ts +0 -155
  512. package/src/cli/files.ts +0 -89
  513. package/src/cli/fix.test.ts +0 -310
  514. package/src/cli/fix.ts +0 -387
  515. package/src/cli/git.test.ts +0 -119
  516. package/src/cli/git.ts +0 -318
  517. package/src/cli/index.ts +0 -14
  518. package/src/cli/main.ts +0 -672
  519. package/src/cli/output/box.ts +0 -235
  520. package/src/cli/output/formatters.test.ts +0 -187
  521. package/src/cli/output/formatters.ts +0 -269
  522. package/src/cli/output/icons.ts +0 -13
  523. package/src/cli/output/index.ts +0 -44
  524. package/src/cli/output/ink-runner.tsx +0 -337
  525. package/src/cli/output/jsonl.test.ts +0 -347
  526. package/src/cli/output/jsonl.ts +0 -126
  527. package/src/cli/output/reporter.ts +0 -434
  528. package/src/cli/output/tasks.ts +0 -374
  529. package/src/cli/output/tty.test.ts +0 -117
  530. package/src/cli/output/tty.ts +0 -60
  531. package/src/cli/output/verbosity.test.ts +0 -40
  532. package/src/cli/output/verbosity.ts +0 -31
  533. package/src/cli/terminal.test.ts +0 -148
  534. package/src/cli/terminal.ts +0 -301
  535. package/src/config/index.ts +0 -3
  536. package/src/config/loader.test.ts +0 -313
  537. package/src/config/loader.ts +0 -103
  538. package/src/config/schema.ts +0 -168
  539. package/src/config/writer.test.ts +0 -119
  540. package/src/config/writer.ts +0 -84
  541. package/src/diff/classify.test.ts +0 -162
  542. package/src/diff/classify.ts +0 -92
  543. package/src/diff/coalesce.test.ts +0 -208
  544. package/src/diff/coalesce.ts +0 -133
  545. package/src/diff/context.test.ts +0 -226
  546. package/src/diff/context.ts +0 -201
  547. package/src/diff/index.ts +0 -4
  548. package/src/diff/parser.test.ts +0 -212
  549. package/src/diff/parser.ts +0 -149
  550. package/src/event/context.ts +0 -132
  551. package/src/event/index.ts +0 -2
  552. package/src/event/schedule-context.ts +0 -101
  553. package/src/examples/examples.integration.test.ts +0 -66
  554. package/src/examples/index.test.ts +0 -101
  555. package/src/examples/index.ts +0 -122
  556. package/src/examples/setup.ts +0 -25
  557. package/src/index.ts +0 -115
  558. package/src/output/dedup.test.ts +0 -419
  559. package/src/output/dedup.ts +0 -607
  560. package/src/output/github-checks.test.ts +0 -300
  561. package/src/output/github-checks.ts +0 -476
  562. package/src/output/github-issues.ts +0 -329
  563. package/src/output/index.ts +0 -5
  564. package/src/output/issue-renderer.ts +0 -197
  565. package/src/output/renderer.test.ts +0 -727
  566. package/src/output/renderer.ts +0 -217
  567. package/src/output/stale.test.ts +0 -375
  568. package/src/output/stale.ts +0 -155
  569. package/src/output/types.ts +0 -34
  570. package/src/sdk/index.ts +0 -1
  571. package/src/sdk/runner.test.ts +0 -806
  572. package/src/sdk/runner.ts +0 -1232
  573. package/src/skills/index.ts +0 -36
  574. package/src/skills/loader.test.ts +0 -300
  575. package/src/skills/loader.ts +0 -423
  576. package/src/skills/remote.test.ts +0 -704
  577. package/src/skills/remote.ts +0 -604
  578. package/src/triggers/matcher.test.ts +0 -277
  579. package/src/triggers/matcher.ts +0 -152
  580. package/src/types/index.ts +0 -194
  581. package/src/utils/async.ts +0 -18
  582. package/src/utils/index.test.ts +0 -84
  583. package/src/utils/index.ts +0 -51
  584. package/src/utils/version.ts +0 -17
  585. package/tsconfig.json +0 -25
  586. package/vitest.config.ts +0 -8
  587. package/vitest.integration.config.ts +0 -11
  588. package/warden.toml +0 -19
@@ -1,140 +0,0 @@
1
- # Anti-Patterns
2
-
3
- Common mistakes to avoid when writing prompts.
4
-
5
- ## Over-Emphasis and Anchoring
6
-
7
- From [Anthropic's Opus 4.5 guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
8
-
9
- > Claude Opus 4.5 is more responsive to the system prompt than previous
10
- > models. Where you might have said "CRITICAL: You MUST...", you can
11
- > use more normal prompting.
12
-
13
- From [Vercel's AGENTS.md research](https://vercel.com/blog/agents-md-outperforms-skills-in-our-agent-evals):
14
-
15
- > Instructions stating "You MUST invoke the skill" caused agents to anchor
16
- > excessively on documentation patterns while missing project context.
17
-
18
- **Avoid:**
19
- ```markdown
20
- CRITICAL: You MUST ALWAYS check for SQL injection. NEVER skip this.
21
- IT IS ABSOLUTELY ESSENTIAL that you...
22
- ```
23
-
24
- **Prefer:**
25
- ```markdown
26
- Understand the code's intent first, then check for SQL injection:
27
- Is user input concatenated into queries instead of parameterized?
28
- ```
29
-
30
- The key insight: "MUST" language causes anchoring on the instruction at the expense of contextual understanding.
31
-
32
- ## Scope Creep
33
-
34
- Each skill should do one thing well.
35
-
36
- **Avoid:**
37
- ```markdown
38
- Find security issues, performance problems, and bugs too.
39
- ```
40
-
41
- **Prefer:** Create separate skills for each concern.
42
-
43
- ## Vague Severity
44
-
45
- **Avoid:**
46
- ```markdown
47
- Use high severity for important issues and medium for less important ones.
48
- ```
49
-
50
- **Prefer:**
51
- ```markdown
52
- - **critical**: Crash, data loss, or silent data corruption
53
- - **high**: Incorrect behavior in common scenarios
54
- - **medium**: Incorrect behavior in edge cases
55
- ```
56
-
57
- ## Negative-Only Instructions
58
-
59
- **Avoid:**
60
- ```markdown
61
- Do not output markdown.
62
- Do not include explanations.
63
- Do not wrap in code fences.
64
- ```
65
-
66
- **Prefer:**
67
- ```markdown
68
- Return ONLY valid JSON starting with {"findings":
69
- ```
70
-
71
- ## Missing Exclusions
72
-
73
- Without explicit exclusions, skills report everything tangentially related.
74
-
75
- **Avoid:** Omitting "What NOT to Report" section.
76
-
77
- **Prefer:**
78
- ```markdown
79
- ## What NOT to Report
80
-
81
- - Security vulnerabilities (use security-review skill)
82
- - Style or formatting issues
83
- - Performance concerns (unless causing incorrect behavior)
84
- ```
85
-
86
- ## Hallucination-Prone Patterns
87
-
88
- From [Anthropic's guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
89
-
90
- > Never speculate about code you have not opened.
91
-
92
- **Avoid:** Asking for analysis without providing code context.
93
-
94
- **Prefer:** Always include actual code in the prompt (Warden does this automatically).
95
-
96
- ## Over-Engineering Output
97
-
98
- From [Anthropic's guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
99
-
100
- > Claude Opus 4.5 has a tendency to overengineer by creating extra files
101
- > or adding unnecessary abstractions.
102
-
103
- For prompts, keep output requirements minimal:
104
-
105
- **Avoid:**
106
- ```markdown
107
- Include a detailed analysis section, then a summary, then recommendations,
108
- then a risk assessment matrix, then...
109
- ```
110
-
111
- **Prefer:**
112
- ```markdown
113
- Return JSON with findings array. Keep descriptions to 1-2 sentences.
114
- ```
115
-
116
- ## Conflicting Instructions
117
-
118
- **Avoid:**
119
- ```markdown
120
- Be thorough and check everything.
121
- ...
122
- Only report high-confidence issues.
123
- ```
124
-
125
- **Prefer:** Consistent stance throughout the prompt.
126
-
127
- ## Missing Examples
128
-
129
- For complex output formats, include an example:
130
-
131
- **Avoid:** Schema only without example.
132
-
133
- **Prefer:**
134
- ```markdown
135
- Example response format:
136
- {"findings": [{"id": "sql-injection-1", "severity": "high", ...}]}
137
-
138
- Full schema:
139
- ...
140
- ```
@@ -1,124 +0,0 @@
1
- # Context Design
2
-
3
- Research on how context delivery affects agent performance. Based on [Vercel's AGENTS.md evaluation](https://vercel.com/blog/agents-md-outperforms-skills-in-our-agent-evals).
4
-
5
- ## Key Finding: Passive Context Wins
6
-
7
- Vercel's evaluation showed dramatic performance differences:
8
-
9
- | Approach | Pass Rate |
10
- |----------|-----------|
11
- | No docs | 53% |
12
- | Skills (default) | 53% |
13
- | Skills with explicit instructions | 79% |
14
- | AGENTS.md (passive context) | 100% |
15
-
16
- ## Why Passive Context Outperforms
17
-
18
- Three structural advantages:
19
-
20
- ### 1. Eliminated Decision Burden
21
-
22
- Information exists automatically rather than requiring agent judgment about when retrieval is necessary.
23
-
24
- **Implication for skills:** Warden injects skill prompts directly into the system prompt. This is passive context - the agent doesn't need to decide to load the skill.
25
-
26
- ### 2. Persistent Availability
27
-
28
- Documentation remains accessible throughout every conversation turn via system prompt.
29
-
30
- **Implication for skills:** Keep skill prompts self-contained. Don't require the agent to fetch additional context to understand the task.
31
-
32
- ### 3. Avoided Sequencing Problems
33
-
34
- No competing instructions about whether to explore first vs consult docs first.
35
-
36
- **Implication for skills:** Be explicit about the analysis approach. Don't leave ordering ambiguous.
37
-
38
- ## Instruction Wording Matters
39
-
40
- Subtle wording differences produced dramatically divergent outcomes:
41
-
42
- | Wording | Effect |
43
- |---------|--------|
44
- | "You MUST invoke the skill" | Agent anchored on docs, missed project context |
45
- | "Explore project first, then invoke skill" | Agent built context first, better results |
46
-
47
- ### Recommendations
48
-
49
- **Avoid:**
50
- ```markdown
51
- You MUST check for SQL injection on every code change.
52
- ```
53
-
54
- **Prefer:**
55
- ```markdown
56
- Understand the code's intent first, then check for SQL injection:
57
- Is user input concatenated into queries?
58
- ```
59
-
60
- ## Retrieval-Led Reasoning
61
-
62
- From Vercel's research:
63
-
64
- > "Prefer retrieval-led reasoning over pre-training-led reasoning"
65
-
66
- This means: look at the actual code before applying general knowledge.
67
-
68
- **For Warden skills:**
69
- ```markdown
70
- ## Analysis Approach
71
-
72
- 1. Read the code context provided
73
- 2. Use Read/Grep to investigate related files if needed
74
- 3. Apply skill criteria to what you've observed
75
- 4. Only report issues you've verified in the code
76
- ```
77
-
78
- ## Compression Works
79
-
80
- Vercel reduced docs from 40KB to 8KB (80% reduction) with no loss in effectiveness.
81
-
82
- **Implication for skills:**
83
- - Concise prompts work as well as verbose ones
84
- - Use structured formats (tables, lists) over prose
85
- - Index references rather than including full content
86
-
87
- **Example - compressed reference:**
88
- ```markdown
89
- ### Injection Types
90
- SQL|Command|Template|Header|XSS|Path traversal
91
- ```
92
-
93
- vs verbose:
94
- ```markdown
95
- There are several types of injection vulnerabilities you should check for.
96
- First, SQL injection occurs when... Second, command injection...
97
- ```
98
-
99
- ## When Skills Add Value
100
-
101
- Skills remain valuable for:
102
- - User-triggered workflows (version upgrades, migrations)
103
- - Explicit "apply this standard" requests
104
- - Tasks requiring specific tool sequences
105
-
106
- For general knowledge that should always apply, passive context wins.
107
-
108
- ## Application to Warden
109
-
110
- Warden's architecture aligns with these findings:
111
-
112
- 1. **Passive injection** - Skill prompts are injected into system prompt
113
- 2. **Hunk context provided** - Code is in the user prompt, not requiring retrieval
114
- 3. **Read-only tools available** - Agent can investigate but starts with context
115
-
116
- To maximize effectiveness:
117
- - Write self-contained skill prompts
118
- - Include analysis approach (explore → apply criteria)
119
- - Avoid "MUST" language that causes anchoring
120
- - Keep prompts concise with structured references
121
-
122
- ## Sources
123
-
124
- - [Vercel: AGENTS.md Outperforms Skills](https://vercel.com/blog/agents-md-outperforms-skills-in-our-agent-evals)
@@ -1,75 +0,0 @@
1
- # Core Principles
2
-
3
- Foundational rules for writing effective prompts. Derived from [Anthropic's official documentation](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices).
4
-
5
- ## 1. Be Explicit
6
-
7
- Claude 4.x models respond well to clear, explicit instructions.
8
-
9
- **Less effective:**
10
- ```
11
- Review this code for issues.
12
- ```
13
-
14
- **More effective:**
15
- ```
16
- Analyze the code changes for security issues. Only report genuine
17
- security concerns, not style issues.
18
- ```
19
-
20
- ## 2. Provide Context and Motivation
21
-
22
- Explain *why* a behavior matters.
23
-
24
- **Less effective:**
25
- ```
26
- Never report style issues.
27
- ```
28
-
29
- **More effective:**
30
- ```
31
- Do not report style issues. This skill focuses on security vulnerabilities.
32
- Style issues are handled by code-simplifier and would create noise here.
33
- ```
34
-
35
- ## 3. Be Vigilant with Examples
36
-
37
- Claude pays close attention to examples. Ensure they demonstrate desired behaviors only.
38
-
39
- ## 4. Prefer Positive Instructions
40
-
41
- Tell Claude what to do, not what to avoid.
42
-
43
- **Less effective:**
44
- ```
45
- Do not use markdown in your response.
46
- ```
47
-
48
- **More effective:**
49
- ```
50
- Return ONLY valid JSON starting with {"findings":
51
- ```
52
-
53
- ## 5. Scope Narrowly
54
-
55
- Broad prompts decrease accuracy. Each skill should have one clear focus.
56
-
57
- **Less effective:**
58
- ```
59
- Find bugs, security issues, performance problems, and style violations.
60
- ```
61
-
62
- **More effective:**
63
- ```
64
- Identify functional bugs that cause incorrect behavior. Focus on null
65
- handling, off-by-one errors, and async issues.
66
- ```
67
-
68
- ## 6. Match Prompt Style to Output
69
-
70
- The formatting in your prompt influences Claude's response style. Remove markdown from prompts if you want less markdown in output.
71
-
72
- ## Sources
73
-
74
- - [Anthropic: Claude 4.x Best Practices](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices)
75
- - [OpenAI: Prompt Engineering Guide](https://platform.openai.com/docs/guides/prompt-engineering)
@@ -1,118 +0,0 @@
1
- # Model-Specific Guidance
2
-
3
- Optimizations for Claude 4.x models (Sonnet 4.5, Opus 4.5).
4
-
5
- ## Claude 4.x Strengths
6
-
7
- | Capability | Implication |
8
- |------------|-------------|
9
- | Precise instruction following | Can use simpler, more natural prompts |
10
- | Structured output (JSON) | Reliable parsing without complex extraction |
11
- | Parallel tool calling | Can investigate multiple files simultaneously |
12
- | Long-horizon state tracking | Maintains context across extended sessions |
13
-
14
- ## Prompting Adjustments
15
-
16
- ### Simpler Language
17
-
18
- Claude 4.x doesn't need aggressive emphasis:
19
-
20
- **Before (older models):**
21
- ```markdown
22
- CRITICAL: You MUST use this tool when...
23
- ```
24
-
25
- **After (Claude 4.x):**
26
- ```markdown
27
- Use this tool when...
28
- ```
29
-
30
- ### More Direct Communication
31
-
32
- From [Anthropic's guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
33
-
34
- > Claude 4.5 models have a more concise and natural communication style.
35
- > More direct and grounded, provides fact-based progress rather than
36
- > self-celebratory updates.
37
-
38
- ### Explicit Thoroughness
39
-
40
- Claude 4.x may be conservative. If you want thorough analysis:
41
-
42
- ```markdown
43
- Go beyond the basics to create a fully-featured analysis. Include
44
- as many relevant findings as possible.
45
- ```
46
-
47
- ## Thinking and Reflection
48
-
49
- Claude 4.x supports thinking between tool calls:
50
-
51
- ```markdown
52
- After receiving tool results, carefully reflect on their quality and
53
- determine optimal next steps before proceeding.
54
- ```
55
-
56
- ### Interleaved Thinking
57
-
58
- For complex multi-step analysis:
59
-
60
- ```markdown
61
- Use your thinking to plan and iterate based on new information,
62
- then take the best next action.
63
- ```
64
-
65
- ### Thinking Sensitivity
66
-
67
- From [Anthropic's guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
68
-
69
- > When extended thinking is disabled, Claude Opus 4.5 is particularly
70
- > sensitive to the word "think" and its variants.
71
-
72
- If not using extended thinking, prefer alternatives:
73
- - "consider" instead of "think about"
74
- - "evaluate" instead of "think through"
75
- - "reflect on" instead of "think over"
76
-
77
- ## Tool Usage
78
-
79
- Claude 4.x excels at parallel tool execution:
80
-
81
- ```markdown
82
- If you intend to call multiple tools and there are no dependencies,
83
- make all independent calls in parallel.
84
- ```
85
-
86
- ### Proactive vs Conservative
87
-
88
- To make Claude more proactive:
89
-
90
- ```markdown
91
- By default, implement changes rather than only suggesting them.
92
- Infer the most useful action and proceed.
93
- ```
94
-
95
- To make Claude more conservative:
96
-
97
- ```markdown
98
- Do not take action unless clearly instructed. Default to providing
99
- information and recommendations rather than making changes.
100
- ```
101
-
102
- ## Code Exploration
103
-
104
- From [Anthropic's guidance](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices):
105
-
106
- > Claude Opus 4.5 can be overly conservative when exploring code.
107
-
108
- If needed, add explicit instructions:
109
-
110
- ```markdown
111
- ALWAYS read and understand relevant files before reporting issues.
112
- Do not speculate about code you have not inspected.
113
- ```
114
-
115
- ## Sources
116
-
117
- - [Anthropic: Claude 4.x Best Practices](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-4-best-practices)
118
- - [Anthropic: What's New in Claude 4.5](https://docs.claude.com/en/about-claude/models/whats-new-claude-4-5)
@@ -1,98 +0,0 @@
1
- # Output Formats
2
-
3
- How to specify structured output for reliable parsing.
4
-
5
- ## Enforce JSON-Only Output
6
-
7
- Be explicit about format requirements:
8
-
9
- ```markdown
10
- IMPORTANT: Your response must be ONLY a valid JSON object.
11
- No markdown, no explanation, no code fences.
12
-
13
- Example response format:
14
- {"findings": [{"id": "example-1", "severity": "medium", ...}]}
15
- ```
16
-
17
- ## Provide Complete Schema
18
-
19
- Include all available fields so Claude knows the full structure:
20
-
21
- ```json
22
- {
23
- "findings": [
24
- {
25
- "id": "unique-identifier",
26
- "severity": "critical|high|medium|low|info",
27
- "confidence": "high|medium|low",
28
- "title": "Short descriptive title",
29
- "description": "Detailed explanation",
30
- "location": {
31
- "path": "path/to/file.ts",
32
- "startLine": 10,
33
- "endLine": 15
34
- },
35
- "suggestedFix": {
36
- "description": "How to fix",
37
- "diff": "unified diff format"
38
- }
39
- }
40
- ]
41
- }
42
- ```
43
-
44
- ## Field Requirements
45
-
46
- Document which fields are required vs optional:
47
-
48
- ```markdown
49
- Requirements:
50
- - Return ONLY valid JSON starting with {"findings":
51
- - "findings" array can be empty if no issues found
52
- - "location.path" is auto-filled - just provide startLine (and optionally endLine). Omit location for general findings.
53
- - "confidence" reflects certainty given codebase context
54
- - "suggestedFix" is optional - only include when the fix is complete, correct, and applies to the same file being analyzed. If the fix requires changes to a different file, describe it in the description instead.
55
- ```
56
-
57
- ## Set Length Expectations
58
-
59
- Prevent verbose output:
60
-
61
- ```markdown
62
- Keep descriptions SHORT (1-2 sentences max)
63
- Be concise - focus only on the changes shown
64
- ```
65
-
66
- ## Empty Results
67
-
68
- Explicitly allow empty arrays:
69
-
70
- ```markdown
71
- Return an empty findings array if no issues match the skill's criteria:
72
- {"findings": []}
73
- ```
74
-
75
- ## Warden's JSON Extraction
76
-
77
- The runner handles common output issues (`src/sdk/runner.ts`):
78
-
79
- - Strips markdown code fences if present
80
- - Finds `{"findings"` pattern in prose
81
- - Extracts balanced JSON with nested objects
82
- - Validates against FindingSchema with Zod
83
-
84
- This provides resilience, but clean JSON output is still preferred.
85
-
86
- ## Severity Level Definitions
87
-
88
- Severity reflects **urgency and required action**, not the type of issue. Each skill defines what "significant impact" means in its domain.
89
-
90
- | Level | Definition |
91
- |----------|----------------------------------------------------------|
92
- | critical | Must fix before merge: significant impact if ignored |
93
- | high | Should fix before merge: notable issue affecting quality |
94
- | medium | Worth reviewing: potential issue, may need action |
95
- | low | Minor: address when convenient |
96
- | info | Informational: no action required |
97
-
98
- Avoid vague definitions like "important" or "less important."
@@ -1,115 +0,0 @@
1
- # Skill Structure
2
-
3
- How to write effective Warden skill files.
4
-
5
- ## File Format
6
-
7
- Skills use YAML frontmatter + markdown body:
8
-
9
- ```markdown
10
- ---
11
- name: skill-name
12
- description: Brief description for discovery and trigger matching.
13
- allowed-tools: Read Grep Glob
14
- ---
15
-
16
- [Prompt body - the actual instructions]
17
- ```
18
-
19
- ## Required Frontmatter
20
-
21
- | Field | Purpose |
22
- |-------|---------|
23
- | `name` | Unique identifier, lowercase with hyphens |
24
- | `description` | One line explaining when to use this skill |
25
- | `allowed-tools` | Space-separated list (typically `Read Grep Glob`) |
26
-
27
- ## Recommended Body Structure
28
-
29
- ```markdown
30
- [Role statement - who the agent is]
31
-
32
- ## Your Task
33
-
34
- [Clear statement of what to analyze]
35
-
36
- ### [Category 1]
37
-
38
- - Specific pattern to look for
39
- - Guiding questions: "Is X happening? Does Y exist?"
40
-
41
- ### [Category 2]
42
-
43
- ...
44
-
45
- ## What NOT to Report
46
-
47
- [Explicit exclusions prevent scope creep]
48
-
49
- ## Severity Levels
50
-
51
- [Definitions tied to impact]
52
-
53
- ## Output Requirements
54
-
55
- [Formatting expectations]
56
- ```
57
-
58
- ## Effective Patterns
59
-
60
- ### Guiding Questions
61
-
62
- Help the agent know what to look for:
63
-
64
- ```markdown
65
- ### Injection Vulnerabilities
66
- - **SQL injection**: User input concatenated into queries instead of parameterized?
67
- - **Command injection**: User input passed to shell/exec functions?
68
- ```
69
-
70
- ### Explicit Exclusions
71
-
72
- Prevent false positives and scope creep:
73
-
74
- ```markdown
75
- ## What NOT to Report
76
-
77
- - Security vulnerabilities (use security-review skill)
78
- - Style or formatting issues
79
- - Code that "could be better" but works correctly
80
- ```
81
-
82
- ### Confidence Calibration
83
-
84
- Set expectations for certainty:
85
-
86
- ```markdown
87
- Do NOT use low or info severity - if you're not confident it's a real
88
- bug, don't report it.
89
- ```
90
-
91
- ### Severity Tied to Impact
92
-
93
- Avoid vague definitions:
94
-
95
- ```markdown
96
- - **critical**: Crash, data loss, or silent data corruption
97
- - **high**: Incorrect behavior in common scenarios
98
- - **medium**: Incorrect behavior in edge cases
99
- ```
100
-
101
- ## File Locations
102
-
103
- Skills are discovered in order (first match wins):
104
-
105
- 1. `.warden/skills/{name}/SKILL.md` - Project-specific
106
- 2. `.agents/skills/{name}/SKILL.md` - Shared agent skills
107
- 3. `.claude/skills/{name}/SKILL.md` - Claude Code skills
108
- 4. `skills/{name}/SKILL.md` - Built-in skills
109
-
110
- ## Examples
111
-
112
- See existing skills for reference:
113
- - `skills/security-review/SKILL.md` - Comprehensive checklist approach
114
- - `skills/find-bugs/SKILL.md` - Confidence-focused with exclusions
115
- - `skills/code-simplifier/SKILL.md` - Balanced "do/don't" guidance