@agent-native/core 0.101.14 → 0.102.1

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 (316) hide show
  1. package/corpus/README.md +1 -1
  2. package/corpus/core/CHANGELOG.md +12 -0
  3. package/corpus/core/package.json +1 -1
  4. package/corpus/core/src/cli/templates-meta.ts +13 -0
  5. package/corpus/core/src/client/agent-page/AgentTabsPage.tsx +1 -1
  6. package/corpus/core/src/client/org/OrgSwitcher.tsx +2 -0
  7. package/corpus/templates/analytics/changelog/2026-07-15-fixed-the-agent-discarding-a-successful-dashboard-edit-and-r.md +6 -0
  8. package/corpus/templates/analytics/server/lib/real-data-actions.ts +30 -1
  9. package/corpus/templates/analytics/server/plugins/agent-chat.ts +15 -0
  10. package/corpus/templates/content/actions/_database-source-utils.ts +59 -4
  11. package/corpus/templates/content/actions/prepare-builder-source-review.ts +9 -0
  12. package/corpus/templates/content/actions/preview-builder-source-review.ts +6 -4
  13. package/corpus/templates/content/app/components/editor/DescriptionField.tsx +10 -2
  14. package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +4 -0
  15. package/corpus/templates/content/changelog/2026-07-15-page-and-database-descriptions-now-use-a-clean-single-line-f.md +6 -0
  16. package/corpus/templates/content/changelog/2026-07-15-selected-builder-reviews-now-load-only-the-chosen-rows-avoid.md +6 -0
  17. package/corpus/templates/content/shared/api.ts +1 -0
  18. package/corpus/templates/tasks/.agents/commands/visual-plan.md +9 -0
  19. package/corpus/templates/tasks/.agents/commands/visual-recap.md +8 -0
  20. package/corpus/templates/tasks/.agents/skills/actions/SKILL.md +492 -0
  21. package/corpus/templates/tasks/.agents/skills/adding-a-feature/SKILL.md +189 -0
  22. package/corpus/templates/tasks/.agents/skills/agent-native-docs/SKILL.md +76 -0
  23. package/corpus/templates/tasks/.agents/skills/agent-watchdog/README.md +43 -0
  24. package/corpus/templates/tasks/.agents/skills/agent-watchdog/SKILL.md +110 -0
  25. package/corpus/templates/tasks/.agents/skills/agent-watchdog/agents/openai.yaml +4 -0
  26. package/corpus/templates/tasks/.agents/skills/capture-learnings/SKILL.md +89 -0
  27. package/corpus/templates/tasks/.agents/skills/change-summary/SKILL.md +83 -0
  28. package/corpus/templates/tasks/.agents/skills/create-skill/SKILL.md +221 -0
  29. package/corpus/templates/tasks/.agents/skills/delegate-to-agent/SKILL.md +263 -0
  30. package/corpus/templates/tasks/.agents/skills/efficient-fable/README.md +75 -0
  31. package/corpus/templates/tasks/.agents/skills/efficient-fable/SKILL.md +95 -0
  32. package/corpus/templates/tasks/.agents/skills/efficient-frontier/README.md +53 -0
  33. package/corpus/templates/tasks/.agents/skills/efficient-frontier/SKILL.md +73 -0
  34. package/corpus/templates/tasks/.agents/skills/frontend-design/SKILL.md +112 -0
  35. package/corpus/templates/tasks/.agents/skills/plan-arbiter/README.md +41 -0
  36. package/corpus/templates/tasks/.agents/skills/plan-arbiter/SKILL.md +114 -0
  37. package/corpus/templates/tasks/.agents/skills/plan-arbiter/agents/openai.yaml +4 -0
  38. package/corpus/templates/tasks/.agents/skills/plow-ahead/README.md +42 -0
  39. package/corpus/templates/tasks/.agents/skills/plow-ahead/SKILL.md +104 -0
  40. package/corpus/templates/tasks/.agents/skills/plow-ahead/agents/openai.yaml +4 -0
  41. package/corpus/templates/tasks/.agents/skills/quick-recap/README.md +55 -0
  42. package/corpus/templates/tasks/.agents/skills/quick-recap/SKILL.md +54 -0
  43. package/corpus/templates/tasks/.agents/skills/read-the-damn-docs/README.md +54 -0
  44. package/corpus/templates/tasks/.agents/skills/read-the-damn-docs/SKILL.md +126 -0
  45. package/corpus/templates/tasks/.agents/skills/read-the-damn-docs/agents/openai.yaml +4 -0
  46. package/corpus/templates/tasks/.agents/skills/real-time-sync/SKILL.md +232 -0
  47. package/corpus/templates/tasks/.agents/skills/security/SKILL.md +280 -0
  48. package/corpus/templates/tasks/.agents/skills/self-modifying-code/SKILL.md +106 -0
  49. package/corpus/templates/tasks/.agents/skills/shadcn-ui/SKILL.md +95 -0
  50. package/corpus/templates/tasks/.agents/skills/stay-within-limits/README.md +61 -0
  51. package/corpus/templates/tasks/.agents/skills/stay-within-limits/SKILL.md +83 -0
  52. package/corpus/templates/tasks/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
  53. package/corpus/templates/tasks/.agents/skills/visual-plan/SKILL.md +547 -0
  54. package/corpus/templates/tasks/.agents/skills/visual-plan/agent-native-skill.json +12 -0
  55. package/corpus/templates/tasks/.agents/skills/visual-plan/references/canvas.md +121 -0
  56. package/corpus/templates/tasks/.agents/skills/visual-plan/references/document-quality.md +178 -0
  57. package/corpus/templates/tasks/.agents/skills/visual-plan/references/exemplar.md +62 -0
  58. package/corpus/templates/tasks/.agents/skills/visual-plan/references/wireframe.md +264 -0
  59. package/corpus/templates/tasks/.agents/skills/visual-recap/SKILL.md +634 -0
  60. package/corpus/templates/tasks/.agents/skills/visual-recap/agent-native-skill.json +12 -0
  61. package/corpus/templates/tasks/.agents/skills/visual-recap/references/wireframe.md +264 -0
  62. package/corpus/templates/tasks/.claude/commands/visual-plan.md +9 -0
  63. package/corpus/templates/tasks/.claude/commands/visual-recap.md +8 -0
  64. package/corpus/templates/tasks/.env.example +5 -0
  65. package/corpus/templates/tasks/.ignore +0 -0
  66. package/corpus/templates/tasks/.prettierrc +5 -0
  67. package/corpus/templates/tasks/AGENTS.md +158 -0
  68. package/corpus/templates/tasks/DEVELOPING.md +185 -0
  69. package/corpus/templates/tasks/README.md +16 -0
  70. package/corpus/templates/tasks/actions/bulk-delete-inbox-items.ts +24 -0
  71. package/corpus/templates/tasks/actions/bulk-delete-tasks.ts +21 -0
  72. package/corpus/templates/tasks/actions/bulk-mark-inbox-items-ready.ts +27 -0
  73. package/corpus/templates/tasks/actions/bulk-update-tasks.ts +35 -0
  74. package/corpus/templates/tasks/actions/create-custom-field.ts +22 -0
  75. package/corpus/templates/tasks/actions/create-inbox-item.ts +30 -0
  76. package/corpus/templates/tasks/actions/create-task.ts +33 -0
  77. package/corpus/templates/tasks/actions/delete-custom-field.ts +19 -0
  78. package/corpus/templates/tasks/actions/delete-inbox-item.ts +17 -0
  79. package/corpus/templates/tasks/actions/delete-task.ts +17 -0
  80. package/corpus/templates/tasks/actions/lib/boolean-query-param.ts +30 -0
  81. package/corpus/templates/tasks/actions/list-custom-fields.ts +18 -0
  82. package/corpus/templates/tasks/actions/list-inbox-items.ts +16 -0
  83. package/corpus/templates/tasks/actions/list-tasks.ts +52 -0
  84. package/corpus/templates/tasks/actions/list-visible-task-fields.ts +18 -0
  85. package/corpus/templates/tasks/actions/mark-inbox-item-ready.ts +31 -0
  86. package/corpus/templates/tasks/actions/navigate.ts +51 -0
  87. package/corpus/templates/tasks/actions/reorder-custom-fields.ts +27 -0
  88. package/corpus/templates/tasks/actions/reorder-inbox-items.ts +24 -0
  89. package/corpus/templates/tasks/actions/reorder-tasks.ts +29 -0
  90. package/corpus/templates/tasks/actions/run.ts +2 -0
  91. package/corpus/templates/tasks/actions/update-custom-field.ts +33 -0
  92. package/corpus/templates/tasks/actions/update-inbox-item.ts +24 -0
  93. package/corpus/templates/tasks/actions/update-task.ts +68 -0
  94. package/corpus/templates/tasks/actions/update-visible-task-fields.ts +27 -0
  95. package/corpus/templates/tasks/actions/view-screen-helpers.ts +68 -0
  96. package/corpus/templates/tasks/actions/view-screen.ts +207 -0
  97. package/corpus/templates/tasks/app/components/custom-fields/FieldCreateBar.tsx +121 -0
  98. package/corpus/templates/tasks/app/components/custom-fields/FieldListRow.tsx +116 -0
  99. package/corpus/templates/tasks/app/components/custom-fields/FieldsList.tsx +225 -0
  100. package/corpus/templates/tasks/app/components/custom-fields/FieldsListSkeleton.tsx +18 -0
  101. package/corpus/templates/tasks/app/components/custom-fields/FieldsPage.tsx +42 -0
  102. package/corpus/templates/tasks/app/components/custom-fields/editor/FieldEditorSidebar.tsx +69 -0
  103. package/corpus/templates/tasks/app/components/custom-fields/editor/FieldTitleSection.tsx +32 -0
  104. package/corpus/templates/tasks/app/components/custom-fields/editor/config/CurrencyConfigControl.tsx +49 -0
  105. package/corpus/templates/tasks/app/components/custom-fields/editor/config/FieldConfigControl.tsx +56 -0
  106. package/corpus/templates/tasks/app/components/custom-fields/editor/config/NumberConfigControl.tsx +52 -0
  107. package/corpus/templates/tasks/app/components/custom-fields/editor/config/PercentConfigControl.tsx +30 -0
  108. package/corpus/templates/tasks/app/components/custom-fields/editor/config/SelectConfigControl.tsx +135 -0
  109. package/corpus/templates/tasks/app/components/custom-fields/editor/config/select-colors.ts +23 -0
  110. package/corpus/templates/tasks/app/components/custom-fields/editor/config/utils.ts +52 -0
  111. package/corpus/templates/tasks/app/components/custom-fields/editor/types.ts +7 -0
  112. package/corpus/templates/tasks/app/components/dnd/SortableItem.tsx +72 -0
  113. package/corpus/templates/tasks/app/components/dnd/SortableList.tsx +136 -0
  114. package/corpus/templates/tasks/app/components/dnd/reorder-moving-items.ts +160 -0
  115. package/corpus/templates/tasks/app/components/dnd/sortable-drag-props.ts +60 -0
  116. package/corpus/templates/tasks/app/components/inbox/InboxList.tsx +222 -0
  117. package/corpus/templates/tasks/app/components/inbox/InboxListPage.tsx +39 -0
  118. package/corpus/templates/tasks/app/components/inbox/InboxListRow.tsx +122 -0
  119. package/corpus/templates/tasks/app/components/layout/Header.tsx +55 -0
  120. package/corpus/templates/tasks/app/components/layout/HeaderActions.tsx +84 -0
  121. package/corpus/templates/tasks/app/components/layout/Layout.tsx +134 -0
  122. package/corpus/templates/tasks/app/components/layout/Sidebar.tsx +211 -0
  123. package/corpus/templates/tasks/app/components/shared/AddListItemInput.tsx +57 -0
  124. package/corpus/templates/tasks/app/components/shared/AlertDialog.tsx +53 -0
  125. package/corpus/templates/tasks/app/components/shared/BulkDeleteDialog.tsx +76 -0
  126. package/corpus/templates/tasks/app/components/shared/ChipSelect.tsx +240 -0
  127. package/corpus/templates/tasks/app/components/shared/DeleteItemDialog.tsx +40 -0
  128. package/corpus/templates/tasks/app/components/shared/InlineEditable.tsx +166 -0
  129. package/corpus/templates/tasks/app/components/shared/ListEmptyState.tsx +13 -0
  130. package/corpus/templates/tasks/app/components/shared/ListErrorMessage.tsx +15 -0
  131. package/corpus/templates/tasks/app/components/shared/ListViewHeader.tsx +75 -0
  132. package/corpus/templates/tasks/app/components/shared/PageHeader.tsx +25 -0
  133. package/corpus/templates/tasks/app/components/shared/RowActionsMenu.tsx +42 -0
  134. package/corpus/templates/tasks/app/components/shared/SidePanel.tsx +99 -0
  135. package/corpus/templates/tasks/app/components/shared/dnd/ListRowPreview.tsx +37 -0
  136. package/corpus/templates/tasks/app/components/shared/list/List.tsx +63 -0
  137. package/corpus/templates/tasks/app/components/shared/list/ListRow.tsx +159 -0
  138. package/corpus/templates/tasks/app/components/shared/list/ListRowDragHandle.tsx +52 -0
  139. package/corpus/templates/tasks/app/components/shared/list/ListSkeletonRows.tsx +11 -0
  140. package/corpus/templates/tasks/app/components/shared/list/SortableListItemShell.tsx +32 -0
  141. package/corpus/templates/tasks/app/components/shared/list/types.ts +1 -0
  142. package/corpus/templates/tasks/app/components/shared/selection/ListSelectionBar.tsx +158 -0
  143. package/corpus/templates/tasks/app/components/shared/selection/ListSelectionHeaderToggle.tsx +28 -0
  144. package/corpus/templates/tasks/app/components/shared/selection/ListSelectionToolbar.tsx +81 -0
  145. package/corpus/templates/tasks/app/components/shared/selection/get-list-row-selection-ui.ts +41 -0
  146. package/corpus/templates/tasks/app/components/shared/selection/use-list-selection.ts +196 -0
  147. package/corpus/templates/tasks/app/components/tasks/TaskList.tsx +333 -0
  148. package/corpus/templates/tasks/app/components/tasks/TaskListHeaderRow.tsx +46 -0
  149. package/corpus/templates/tasks/app/components/tasks/TaskListPage.tsx +115 -0
  150. package/corpus/templates/tasks/app/components/tasks/TaskListRow.css +49 -0
  151. package/corpus/templates/tasks/app/components/tasks/TaskListRow.tsx +307 -0
  152. package/corpus/templates/tasks/app/components/tasks/fields/TaskFieldsSidebar.tsx +102 -0
  153. package/corpus/templates/tasks/app/components/tasks/fields/TaskTitleSection.tsx +27 -0
  154. package/corpus/templates/tasks/app/components/tasks/fields/controls/DateValueControl.tsx +21 -0
  155. package/corpus/templates/tasks/app/components/tasks/fields/controls/FieldValueControl.tsx +76 -0
  156. package/corpus/templates/tasks/app/components/tasks/fields/controls/MultiSelectValueControl.tsx +52 -0
  157. package/corpus/templates/tasks/app/components/tasks/fields/controls/NumberValueControl.tsx +56 -0
  158. package/corpus/templates/tasks/app/components/tasks/fields/controls/RichTextValueControl.tsx +115 -0
  159. package/corpus/templates/tasks/app/components/tasks/fields/controls/SingleSelectValueControl.tsx +61 -0
  160. package/corpus/templates/tasks/app/components/tasks/fields/controls/TextValueControl.tsx +20 -0
  161. package/corpus/templates/tasks/app/components/tasks/use-task-row-completion-animation.ts +181 -0
  162. package/corpus/templates/tasks/app/components/ui/accordion.tsx +56 -0
  163. package/corpus/templates/tasks/app/components/ui/alert-dialog.tsx +1 -0
  164. package/corpus/templates/tasks/app/components/ui/alert.tsx +1 -0
  165. package/corpus/templates/tasks/app/components/ui/aspect-ratio.tsx +5 -0
  166. package/corpus/templates/tasks/app/components/ui/avatar.tsx +1 -0
  167. package/corpus/templates/tasks/app/components/ui/badge.tsx +1 -0
  168. package/corpus/templates/tasks/app/components/ui/breadcrumb.tsx +115 -0
  169. package/corpus/templates/tasks/app/components/ui/button.tsx +1 -0
  170. package/corpus/templates/tasks/app/components/ui/calendar.tsx +70 -0
  171. package/corpus/templates/tasks/app/components/ui/card.tsx +1 -0
  172. package/corpus/templates/tasks/app/components/ui/carousel.tsx +260 -0
  173. package/corpus/templates/tasks/app/components/ui/chart.tsx +379 -0
  174. package/corpus/templates/tasks/app/components/ui/checkbox.tsx +1 -0
  175. package/corpus/templates/tasks/app/components/ui/collapsible.tsx +1 -0
  176. package/corpus/templates/tasks/app/components/ui/command.tsx +1 -0
  177. package/corpus/templates/tasks/app/components/ui/context-menu.tsx +1 -0
  178. package/corpus/templates/tasks/app/components/ui/dialog.tsx +1 -0
  179. package/corpus/templates/tasks/app/components/ui/drawer.tsx +1 -0
  180. package/corpus/templates/tasks/app/components/ui/dropdown-menu.tsx +1 -0
  181. package/corpus/templates/tasks/app/components/ui/form.tsx +177 -0
  182. package/corpus/templates/tasks/app/components/ui/hover-card.tsx +27 -0
  183. package/corpus/templates/tasks/app/components/ui/input-otp.tsx +69 -0
  184. package/corpus/templates/tasks/app/components/ui/input.tsx +1 -0
  185. package/corpus/templates/tasks/app/components/ui/label.tsx +1 -0
  186. package/corpus/templates/tasks/app/components/ui/menubar.tsx +254 -0
  187. package/corpus/templates/tasks/app/components/ui/navigation-menu.tsx +128 -0
  188. package/corpus/templates/tasks/app/components/ui/pagination.tsx +121 -0
  189. package/corpus/templates/tasks/app/components/ui/popover.tsx +1 -0
  190. package/corpus/templates/tasks/app/components/ui/progress.tsx +1 -0
  191. package/corpus/templates/tasks/app/components/ui/radio-group.tsx +1 -0
  192. package/corpus/templates/tasks/app/components/ui/resizable.tsx +43 -0
  193. package/corpus/templates/tasks/app/components/ui/scroll-area.tsx +1 -0
  194. package/corpus/templates/tasks/app/components/ui/select.tsx +1 -0
  195. package/corpus/templates/tasks/app/components/ui/separator.tsx +1 -0
  196. package/corpus/templates/tasks/app/components/ui/sheet.tsx +1 -0
  197. package/corpus/templates/tasks/app/components/ui/sidebar.tsx +782 -0
  198. package/corpus/templates/tasks/app/components/ui/skeleton.tsx +1 -0
  199. package/corpus/templates/tasks/app/components/ui/slider.tsx +1 -0
  200. package/corpus/templates/tasks/app/components/ui/sonner.tsx +1 -0
  201. package/corpus/templates/tasks/app/components/ui/spinner.tsx +1 -0
  202. package/corpus/templates/tasks/app/components/ui/switch.tsx +1 -0
  203. package/corpus/templates/tasks/app/components/ui/table.tsx +1 -0
  204. package/corpus/templates/tasks/app/components/ui/tabs.tsx +1 -0
  205. package/corpus/templates/tasks/app/components/ui/textarea.tsx +1 -0
  206. package/corpus/templates/tasks/app/components/ui/toast.tsx +1 -0
  207. package/corpus/templates/tasks/app/components/ui/toaster.tsx +1 -0
  208. package/corpus/templates/tasks/app/components/ui/toggle-group.tsx +1 -0
  209. package/corpus/templates/tasks/app/components/ui/toggle.tsx +43 -0
  210. package/corpus/templates/tasks/app/components/ui/tooltip.tsx +1 -0
  211. package/corpus/templates/tasks/app/components/ui/use-toast.ts +3 -0
  212. package/corpus/templates/tasks/app/entry.client.tsx +19 -0
  213. package/corpus/templates/tasks/app/entry.server.tsx +10 -0
  214. package/corpus/templates/tasks/app/global.css +93 -0
  215. package/corpus/templates/tasks/app/hooks/cache.ts +31 -0
  216. package/corpus/templates/tasks/app/hooks/use-custom-fields.ts +93 -0
  217. package/corpus/templates/tasks/app/hooks/use-inbox-items.ts +196 -0
  218. package/corpus/templates/tasks/app/hooks/use-mobile.tsx +21 -0
  219. package/corpus/templates/tasks/app/hooks/use-navigation-state.ts +40 -0
  220. package/corpus/templates/tasks/app/hooks/use-tasks.ts +276 -0
  221. package/corpus/templates/tasks/app/hooks/use-toast.ts +188 -0
  222. package/corpus/templates/tasks/app/hooks/use-visible-task-fields.ts +140 -0
  223. package/corpus/templates/tasks/app/lib/app-config.ts +11 -0
  224. package/corpus/templates/tasks/app/lib/tab-id.ts +1 -0
  225. package/corpus/templates/tasks/app/lib/utils.ts +1 -0
  226. package/corpus/templates/tasks/app/root.tsx +130 -0
  227. package/corpus/templates/tasks/app/routes/_index.tsx +22 -0
  228. package/corpus/templates/tasks/app/routes/extensions.$id.$slug.tsx +2 -0
  229. package/corpus/templates/tasks/app/routes/extensions.$id.tsx +11 -0
  230. package/corpus/templates/tasks/app/routes/extensions._index.tsx +11 -0
  231. package/corpus/templates/tasks/app/routes/extensions.tsx +5 -0
  232. package/corpus/templates/tasks/app/routes/fields.tsx +16 -0
  233. package/corpus/templates/tasks/app/routes/inbox.tsx +16 -0
  234. package/corpus/templates/tasks/app/routes/tasks.tsx +17 -0
  235. package/corpus/templates/tasks/app/routes/team.tsx +17 -0
  236. package/corpus/templates/tasks/app/routes.ts +4 -0
  237. package/corpus/templates/tasks/app/vite-env.d.ts +6 -0
  238. package/corpus/templates/tasks/components.json +20 -0
  239. package/corpus/templates/tasks/data/sync-config.json +1 -0
  240. package/corpus/templates/tasks/docs/features/README.md +81 -0
  241. package/corpus/templates/tasks/docs/features/f1-tasks.mdx +67 -0
  242. package/corpus/templates/tasks/docs/features/f2-custom-fields.mdx +68 -0
  243. package/corpus/templates/tasks/docs/features/f3-projects.mdx +33 -0
  244. package/corpus/templates/tasks/docs/features/f4-inbox.mdx +55 -0
  245. package/corpus/templates/tasks/docs/features/f5-views.mdx +65 -0
  246. package/corpus/templates/tasks/docs/features/f6-search.mdx +43 -0
  247. package/corpus/templates/tasks/docs/features/f7-first-run.mdx +66 -0
  248. package/corpus/templates/tasks/docs/features/f8-chat.mdx +120 -0
  249. package/corpus/templates/tasks/e2e/global-setup.ts +42 -0
  250. package/corpus/templates/tasks/e2e/helpers/inbox.ts +71 -0
  251. package/corpus/templates/tasks/e2e/helpers/tasks.ts +99 -0
  252. package/corpus/templates/tasks/learnings.defaults.md +5 -0
  253. package/corpus/templates/tasks/netlify.toml +10 -0
  254. package/corpus/templates/tasks/package.json +104 -0
  255. package/corpus/templates/tasks/playwright.config.ts +34 -0
  256. package/corpus/templates/tasks/public/agent-native-icon-dark.svg +10 -0
  257. package/corpus/templates/tasks/public/agent-native-icon-light.svg +10 -0
  258. package/corpus/templates/tasks/public/agent-native-logo-dark.svg +21 -0
  259. package/corpus/templates/tasks/public/agent-native-logo-light.svg +21 -0
  260. package/corpus/templates/tasks/public/favicon.svg +1 -0
  261. package/corpus/templates/tasks/public/icon-180.svg +1 -0
  262. package/corpus/templates/tasks/public/icon-192.svg +1 -0
  263. package/corpus/templates/tasks/public/icon-512.svg +1 -0
  264. package/corpus/templates/tasks/public/manifest.json +21 -0
  265. package/corpus/templates/tasks/react-router.config.ts +7 -0
  266. package/corpus/templates/tasks/server/custom-fields/normalize.ts +163 -0
  267. package/corpus/templates/tasks/server/custom-fields/parse.ts +146 -0
  268. package/corpus/templates/tasks/server/custom-fields/schema.ts +147 -0
  269. package/corpus/templates/tasks/server/custom-fields/store.ts +425 -0
  270. package/corpus/templates/tasks/server/custom-fields/task-fields.ts +104 -0
  271. package/corpus/templates/tasks/server/custom-fields/types.ts +98 -0
  272. package/corpus/templates/tasks/server/custom-fields/validate.ts +210 -0
  273. package/corpus/templates/tasks/server/custom-fields/values/store.ts +386 -0
  274. package/corpus/templates/tasks/server/db/bulk-write.ts +30 -0
  275. package/corpus/templates/tasks/server/db/index.ts +5 -0
  276. package/corpus/templates/tasks/server/db/record-utils.ts +7 -0
  277. package/corpus/templates/tasks/server/db/schema.ts +67 -0
  278. package/corpus/templates/tasks/server/db/test-tasks-table.ts +76 -0
  279. package/corpus/templates/tasks/server/db/transaction.ts +6 -0
  280. package/corpus/templates/tasks/server/errors.ts +31 -0
  281. package/corpus/templates/tasks/server/inbox/store.ts +216 -0
  282. package/corpus/templates/tasks/server/middleware/auth.ts +15 -0
  283. package/corpus/templates/tasks/server/plugins/agent-chat.ts +46 -0
  284. package/corpus/templates/tasks/server/plugins/auth.ts +15 -0
  285. package/corpus/templates/tasks/server/plugins/db.ts +90 -0
  286. package/corpus/templates/tasks/server/routes/[...page].get.ts +5 -0
  287. package/corpus/templates/tasks/server/stored-items/store.ts +548 -0
  288. package/corpus/templates/tasks/server/tasks/store.ts +306 -0
  289. package/corpus/templates/tasks/server/user-config/store.ts +138 -0
  290. package/corpus/templates/tasks/shared/app-state-tabs.ts +15 -0
  291. package/corpus/templates/tasks/shared/boolean-param.ts +22 -0
  292. package/corpus/templates/tasks/shared/bulk-limits.ts +7 -0
  293. package/corpus/templates/tasks/shared/list-screen-snapshot.ts +90 -0
  294. package/corpus/templates/tasks/shared/navigation.ts +104 -0
  295. package/corpus/templates/tasks/shared/visible-task-fields.ts +2 -0
  296. package/corpus/templates/tasks/ssr-entry.ts +15 -0
  297. package/corpus/templates/tasks/tsconfig.json +24 -0
  298. package/corpus/templates/tasks/vite.config.ts +19 -0
  299. package/corpus/templates/tasks/vitest.config.ts +8 -0
  300. package/dist/cli/templates-meta.d.ts.map +1 -1
  301. package/dist/cli/templates-meta.js +13 -0
  302. package/dist/cli/templates-meta.js.map +1 -1
  303. package/dist/client/agent-page/AgentTabsPage.js +1 -1
  304. package/dist/client/agent-page/AgentTabsPage.js.map +1 -1
  305. package/dist/client/org/OrgSwitcher.d.ts.map +1 -1
  306. package/dist/client/org/OrgSwitcher.js +2 -1
  307. package/dist/client/org/OrgSwitcher.js.map +1 -1
  308. package/dist/collab/routes.d.ts +1 -1
  309. package/dist/collab/struct-routes.d.ts +1 -1
  310. package/dist/notifications/routes.d.ts +2 -2
  311. package/dist/observability/routes.d.ts +5 -5
  312. package/dist/resources/handlers.d.ts +3 -3
  313. package/dist/secrets/routes.d.ts +9 -9
  314. package/dist/server/agent-engine-api-key-route.d.ts +1 -1
  315. package/dist/server/transcribe-voice.d.ts +1 -1
  316. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ # /efficient-frontier
2
+
3
+ Apply the same orchestration as `/efficient-fable` to any high-cost frontier
4
+ model.
5
+
6
+ `/efficient-frontier` is the model-agnostic version of `/efficient-fable`. It
7
+ works for any high-cost model where the expensive part should be reserved for
8
+ judgment, synthesis, integration, and final quality.
9
+
10
+ ## What It Does
11
+
12
+ - Separates frontier-only decisions from delegable work.
13
+ - Pushes research scans, docs extraction, log reduction, browser checks,
14
+ mechanical edits, and narrow coding tasks to cheaper agents.
15
+ - Asks delegated agents for compact evidence instead of broad essays.
16
+ - Uses self-contained handoff packets with scope, verification, and stop
17
+ conditions.
18
+ - Treats delegated findings as leads that the frontier model verifies before
19
+ relying on them.
20
+ - Keeps final integration and risk assessment with the frontier model.
21
+
22
+ ## When To Use It
23
+
24
+ Use it for large or ambiguous work where independent slices can run in parallel:
25
+ repo exploration, refactors, multi-file implementation, test-failure clustering,
26
+ or PR-quality validation.
27
+
28
+ Skip it when the work is tiny, when edits are all in the same fragile files, or
29
+ when the next step depends on one immediate blocker you need to inspect yourself.
30
+
31
+ ## Testing Guidance
32
+
33
+ The frontier model should choose the validation plan. Cheaper agents can run
34
+ unit checks, browser flows, screenshots, and log reduction, then return exact
35
+ commands, failures, likely causes, and the signal quality.
36
+
37
+ ## Delegation Quality
38
+
39
+ Give each delegated agent enough context to succeed without the full chat:
40
+ objective, repo path, in-scope files, out-of-scope areas, expected evidence,
41
+ verification commands, and stop conditions.
42
+
43
+ The frontier model should reopen important cited files, review high-risk diffs,
44
+ and spot-check verification before presenting the final answer.
45
+
46
+ ## Install
47
+
48
+ ```sh
49
+ npx @agent-native/skills@latest add --skill efficient-frontier --update-instructions
50
+ ```
51
+
52
+ Use `--update-instructions` when you want the orchestration convention added to
53
+ project instructions.
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: efficient-frontier
3
+ description: Apply the same orchestration as `/efficient-fable` to any high-cost frontier model: delegate research, coding, and testing to cheaper subagents while keeping planning, synthesis, and final review with the expensive model.
4
+ ---
5
+
6
+ # Efficient Frontier
7
+
8
+ Use the expensive frontier model where its marginal judgment matters. Push
9
+ repeatable, bounded, or token-heavy work to cheaper/faster subagents.
10
+
11
+ ## Workflow
12
+
13
+ 1. Identify the frontier-only decisions: architecture, prioritization,
14
+ ambiguity resolution, risk, synthesis, and final review.
15
+ 2. Identify delegable work: research scans, repository inventory, search, docs
16
+ extraction, browser/testing passes, log reduction, test failure clustering,
17
+ narrow coding, and mechanical edits.
18
+ 3. Spawn parallel subagents for independent slices with clear ownership,
19
+ bounded scope, verification gates, and expected evidence.
20
+ 4. Require compact returns: findings, changed files, commands run, residual
21
+ risk, stop conditions hit, and anything the frontier model must decide.
22
+ 5. Integrate and review centrally before presenting the result.
23
+
24
+ ## Handoff Packets
25
+
26
+ Write delegated prompts as self-contained packets. Assume the receiving agent
27
+ has not seen the conversation. Include the repo path, objective, scope,
28
+ out-of-scope areas, relevant files or search targets, expected return format,
29
+ verification commands, and stop conditions.
30
+
31
+ Useful stop conditions:
32
+
33
+ - The live code does not match the assumption in the handoff.
34
+ - A verification command fails twice after a reasonable fix or retry.
35
+ - The work appears to require files outside the assigned scope.
36
+ - The agent cannot produce concrete evidence for its claim.
37
+
38
+ ## Review Loop
39
+
40
+ Treat delegated output as evidence to inspect, not a verdict to forward. Reopen
41
+ important cited files, skim high-risk diffs, and rerun or spot-check the
42
+ verification that matters before claiming completion. If delegated agents
43
+ disagree, resolve the disagreement at the frontier-model layer.
44
+
45
+ ## Common Scenarios
46
+
47
+ Use these as soft suggestions:
48
+
49
+ - Research: delegate broad repo scans, docs extraction, and source comparison;
50
+ the frontier model keeps the judgment about what matters.
51
+ - Coding: delegate bounded patches, refactors, or mechanical edits when file
52
+ ownership is clear; integrate and review centrally.
53
+ - Testing: let the frontier model choose the validation strategy and scripts,
54
+ then use cheaper agents to run unit checks, browser flows, screenshots, and
55
+ log reduction. Ask them to return exact commands, failures, likely causes, and
56
+ whether the signal looks flaky, environmental, or product-relevant.
57
+ - Debugging: send independent agents after separate theories, logs, or repro
58
+ paths; keep the final diagnosis with the frontier model.
59
+
60
+ ## Guardrails
61
+
62
+ - Do not delegate the immediate blocker if your next step depends on it.
63
+ - Do not ask multiple agents to edit the same files at the same time.
64
+ - Do not trust subagent conclusions blindly when the risk is high; inspect the
65
+ important evidence yourself.
66
+ - Do not claim universal savings. The pattern works best when exploration and
67
+ implementation, testing, or research can be parallelized.
68
+
69
+ ## Default Framing
70
+
71
+ "I will use the frontier model as the orchestrator and reviewer, and use
72
+ cheaper subagents for token-heavy research, coding, or testing so the expensive
73
+ tokens go to judgment, synthesis, and final quality."
@@ -0,0 +1,112 @@
1
+ ---
2
+ name: frontend-design
3
+ description: >-
4
+ Create distinctive, production-grade frontend interfaces with high design
5
+ quality. Use when building web components, pages, artifacts, posters, or
6
+ applications (websites, landing pages, dashboards, React components,
7
+ HTML/CSS layouts, or when styling/beautifying any web UI). Generates
8
+ creative, polished UI that avoids generic AI aesthetics.
9
+ scope: dev
10
+ license: Complete terms in LICENSE.txt
11
+ source: https://github.com/anthropics/skills/blob/main/skills/frontend-design/SKILL.md
12
+ metadata:
13
+ internal: true
14
+ ---
15
+
16
+ # Frontend Design
17
+
18
+ This skill guides creation of distinctive, production-grade frontend interfaces. Implement real working code with strong product judgment, excellent accessibility, and a clear visual point of view.
19
+
20
+ The user may ask for a component, page, full app, dashboard, marketing surface, or restyle. Before coding, understand the audience and pick a direction that fits the product instead of defaulting to generic SaaS polish.
21
+
22
+ ## Design Thinking
23
+
24
+ Before coding, decide:
25
+
26
+ - **Purpose**: What workflow does this surface make easier? What is the primary action?
27
+ - **Audience**: Who will use it repeatedly, and what should feel fast, calm, playful, premium, editorial, technical, or utilitarian?
28
+ - **Tone**: Choose a concrete aesthetic direction: refined minimal, dense operations console, editorial, playful, industrial, warm handmade, high-contrast data tool, etc.
29
+ - **Information hierarchy**: What must be visible in the first five seconds, and what should be progressively disclosed?
30
+ - **Differentiation**: What makes this feel designed for this exact domain?
31
+
32
+ Then implement working code that is cohesive, accessible, responsive, and polished in small details: typography, spacing, copy, motion, empty states, loading states, focus states, and error states.
33
+
34
+ ## Minimalism And Progressive Disclosure
35
+
36
+ Default to Apple/Linear-level restraint: make the primary workflow obvious, then remove everything that does not help that workflow right now. A polished UI often has fewer visible controls, fewer borders, fewer labels, and fewer explanatory surfaces than the first reasonable implementation.
37
+
38
+ - **Start by subtracting**: Before adding a visible control, banner, toolbar row, card, or explanatory block, ask what can be removed, merged, renamed, or moved into an existing affordance.
39
+ - **One primary action**: Each surface should have one dominant next action. Secondary actions belong in menus, popovers, command palettes, disclosure rows, or contextual hover/focus states unless they are used constantly.
40
+ - **Progressively disclose rare work**: Advanced options, diagnostics, metadata, settings, import/export, destructive actions, and inspection tools should stay tucked away until requested. Prefer small icon triggers with tooltips, popovers, drawers, or detail panels over permanent chrome.
41
+ - **Keep chrome quiet**: Avoid new always-visible bars, badges, callouts, helper text, and counters unless they prevent mistakes or are central to repeated use. Status can often be a dot, ring, muted count, or tooltip.
42
+ - **Favor content over containers**: Do not wrap every section in a card. Use whitespace, alignment, typography, dividers, and full-width bands before adding boxes.
43
+ - **Design for repeated use**: Production app UI should feel calm after the hundredth use. If a control shouts, animates, explains itself, or occupies a full row for an occasional action, hide or compress it.
44
+ - **Make absence intentional**: Empty states should be sparse and action-oriented. Do not fill blank space with marketing copy, decorative art, or lists of features just because the screen feels empty.
45
+ - **Use familiar primitives**: Icon buttons need clear tooltips. Menus, popovers, tabs, switches, and segmented controls should carry complexity instead of exposing every option at once.
46
+
47
+ ## Aesthetic Guidelines
48
+
49
+ - **Typography**: Use the product's existing type system first. For net-new public pages, choose characterful but readable type and keep sizing appropriate to the surface.
50
+ - **Color and theme**: Use semantic tokens and CSS variables. Avoid one-note palettes and default purple/blue gradients unless the brand demands them.
51
+ - **Motion**: Prefer purposeful transitions and small state changes. Use CSS transitions/keyframes unless the app already uses a motion library. Never `transition-all` — list the properties that actually change (e.g. `transition-[opacity,transform]`). Use the shared easing tokens defined in `packages/core/src/styles/agent-native.css` instead of hand-typing curves: `var(--ease-drawer)` (260ms, drawers/app chrome), `var(--ease-collapse)` (200ms, expand/collapse), `var(--ease-out-strong)` (snappy entrances) — in Tailwind, `ease-[var(--ease-collapse)]`. Enter/exit with ease-out, never `ease-in`. Overlays that zoom in must set the Radix origin var (e.g. `origin-[--radix-popover-content-transform-origin]`). Animate `transform`/`opacity`, not width/height/padding/box-shadow. Gate looping or large-movement animations with `motion-reduce:`. Command palettes and keyboard-triggered actions get no animation.
52
+ - **Composition**: Match the workflow. Operational apps should be dense and scannable; marketing or portfolio pages can be more immersive.
53
+ - **Visual assets**: Websites, games, and object-focused pages need real or generated media when images help users understand the subject.
54
+ - **Responsive fit**: Text must not overflow buttons, cards, tabs, sidebars, or fixed-format tools. Use stable dimensions for boards, grids, toolbars, and counters.
55
+
56
+ **Beat convergence, not just defaults.** You sample toward the "on-distribution" center, so naming what to avoid is not enough: every "don't" needs a "do", or you converge on the next safe option (ban Inter and you reach for Roboto; ban purple gradients and you reach for Space Grotesk + a teal accent on every screen). Commit to one named direction, pair any reference with the reason it fits ("Linear: the quiet confidence of its spacing" — a bare "Linear" collapses back to the average), and match implementation effort to the vision: maximalist wants elaborate motion and effects, minimal wants restraint and precise spacing. When building on an existing app, inspect its tokens/type/components first and treat any drift back to a default as a missing token to pin, not something to re-prompt.
57
+
58
+ ## Agent-Native UI Rules
59
+
60
+ - Agent-native apps use React, Vite, Tailwind CSS, shadcn/ui, and `@tabler/icons-react`.
61
+ - **Use shadcn/ui primitives for standard UI**: `DropdownMenu`, `Popover`, `Dialog`, `AlertDialog`, `Sheet`, `Tabs`, `Tooltip`, `Select`, `Command`, `Sidebar`, `Table`, `Card`, `Badge`, `Skeleton`, and related primitives.
62
+ - **When touching shadcn/ui components, also read `shadcn-ui` if it exists.** That skill covers `components.json`, CLI docs, component composition, theming, and registry workflows.
63
+ - Check `app/components/ui/` before importing a shadcn component. If a primitive is missing, add it from the app root with `pnpm dlx shadcn@latest add <component>`, then review the generated file.
64
+ - Do not build custom dropdowns, menus, popovers, modals, or confirmations with manual absolute positioning and click-outside effects.
65
+ - Never use browser dialogs (`window.alert`, `window.confirm`, `window.prompt`). Use `AlertDialog`, `Dialog`, or app-specific confirmation UI.
66
+ - Use Tabler icons for all first-party UI icons. Do not add Lucide, Heroicons, inline SVG icon sets, or emoji icons.
67
+ - Use `useActionQuery` and `useActionMutation` from `@agent-native/core/client` for action-backed UI. Standard CRUD should go through actions, not custom `/api/` routes.
68
+ - Keep UI optimistic where possible: update cache and navigation immediately, then reconcile or roll back on mutation result.
69
+ - Custom styles belong in Tailwind classes, component CSS, or the existing global CSS theme file; avoid inline styles.
70
+
71
+ ## shadcn/ui Design Rules
72
+
73
+ - Use built-in component variants first (`variant`, `size`) before overriding classes.
74
+ - Use semantic tokens (`bg-background`, `text-muted-foreground`, `border-border`, `bg-primary`) instead of raw Tailwind colors for app chrome and reusable components.
75
+ - Use `gap-*` in flex/grid layouts instead of `space-x-*` or `space-y-*`.
76
+ - Use `size-*` when width and height are equal, and `truncate` instead of spelling out overflow/ellipsis/nowrap.
77
+ - Use `cn()` from the local utils alias for conditional classes.
78
+ - Dialog, Sheet, Drawer, and AlertDialog content must have an accessible title. Use `sr-only` only when the visible design already communicates the title.
79
+ - Put menu/list items inside their group primitives: `SelectGroup`, `DropdownMenuGroup`, `CommandGroup`, and equivalents.
80
+ - Use full `Card` composition when the content has a title, description, content, or actions. Do not dump complex cards into a single `CardContent`.
81
+ - Use `ToggleGroup` for small option sets, `Switch` for binary settings, `Checkbox` for multi-select, `RadioGroup` for one-of-many, and `Slider`/inputs for numeric values.
82
+ - For forms, prefer the app's existing shadcn form pattern. If newer `Field`, `FieldGroup`, or `InputGroup` primitives are installed or appropriate to add, use them instead of raw layout divs.
83
+ - Loading states use `Skeleton`, `Progress`, `Spinner`, or the app's existing loading primitives. Empty states should have one clear next action.
84
+
85
+ ## Anti-Patterns
86
+
87
+ Avoid:
88
+
89
+ - Generic AI aesthetics: purple gradients, glassy cards everywhere, vague sparkle language, decorative blobs, and context-free hero sections.
90
+ - Custom reimplementations of shadcn primitives.
91
+ - Raw color overrides on shared components when semantic tokens or variants would work.
92
+ - New always-visible controls for rare actions. Prefer menus, popovers, sheets, tabs, collapsibles, or advanced sections.
93
+ - Full-width banners, persistent helper rows, decorative cards, or explanatory chrome for status that could be a compact affordance.
94
+ - Treating progressive disclosure as optional. If a control is not part of the main daily workflow, hide it until context, hover, focus, or explicit user intent makes it relevant.
95
+ - UI cards nested inside other cards.
96
+ - Text or icons that resize or shift fixed-format UI on hover/loading.
97
+
98
+ ## Verification
99
+
100
+ For substantial frontend work:
101
+
102
+ 1. Run the relevant formatter/checks.
103
+ 2. Start the dev server when the app needs one.
104
+ 3. Verify with browser screenshots at desktop and mobile widths.
105
+ 4. Check interactive states: hover, focus, loading, empty, error, and destructive confirmations.
106
+
107
+ ## Related Skills
108
+
109
+ - **shadcn-ui** — shadcn CLI, component docs, composition rules, theming, and registries
110
+ - **self-modifying-code** — The agent can edit source code to apply design changes
111
+ - **storing-data** — All data lives in SQL; use actions for data access
112
+ - **actions** — `useActionQuery`/`useActionMutation` hooks for frontend data fetching
@@ -0,0 +1,41 @@
1
+ # /plan-arbiter
2
+
3
+ Compare competing agent plans and choose one executable direction.
4
+
5
+ `/plan-arbiter` is for workflows where two or more agents, often Codex and
6
+ Claude Code, each produce a plan and then need a judge to cross-review,
7
+ reconcile, and pick what should actually be implemented.
8
+
9
+ ## What It Does
10
+
11
+ - Collects plans from pasted text, files, sessions, transcripts, PRs, comments,
12
+ or plan links.
13
+ - Normalizes each plan into assumptions, scope, files, sequence, and
14
+ verification.
15
+ - Reviews plans against each other and against the real task context.
16
+ - Chooses a winner, creates a hybrid, or sends the plans back for revision.
17
+ - Produces one implementation handoff with rejected alternatives and validation
18
+ gates.
19
+
20
+ ## When To Use It
21
+
22
+ Use it when a user says things like:
23
+
24
+ - "Have Codex and Claude each make a plan, then choose one."
25
+ - "Review these two plans against each other."
26
+ - "Merge the best parts and tell me which agent should execute."
27
+ - "Pick the cheaper execution path if quality is comparable."
28
+
29
+ Skip it when there is only one straightforward plan and no meaningful
30
+ alternative to evaluate.
31
+
32
+ ## Output
33
+
34
+ The skill returns a short decision memo: decision, why, execution plan, borrowed
35
+ pieces, rejected ideas, verification, and executor recommendation.
36
+
37
+ ## Install
38
+
39
+ ```sh
40
+ npx @agent-native/skills@latest add --skill plan-arbiter
41
+ ```
@@ -0,0 +1,114 @@
1
+ ---
2
+ name: plan-arbiter
3
+ description: Use when asked to compare, cross-review, merge, judge, choose, or arbitrate competing plans from multiple agents such as Codex and Claude Code; when given two or more proposed plans, session IDs, transcripts, plan documents, PR descriptions, or pasted strategies; or when the user wants one recommended execution plan after agents review each other's proposals.
4
+ ---
5
+
6
+ # Plan Arbiter
7
+
8
+ Turn competing plans into one executable direction. Preserve the best ideas,
9
+ reject weak assumptions, and produce a clear handoff instead of a blended mush.
10
+
11
+ ## Workflow
12
+
13
+ 1. Collect the source plans.
14
+ 2. Normalize each plan into comparable claims.
15
+ 3. Cross-review the plans against each other and the real codebase or task
16
+ context.
17
+ 4. Choose a winner, merge a better hybrid, or send the plans back for revision.
18
+ 5. Produce one execution handoff with verification gates and rejected
19
+ alternatives.
20
+
21
+ Planning is read-only unless the user explicitly asks you to implement after the
22
+ decision.
23
+
24
+ ## Collect Source Plans
25
+
26
+ Accept plans as pasted text, local files, session IDs, transcript paths, PRs,
27
+ comments, visual-plan links, or chat history. Resolve the original artifacts
28
+ when possible so you can see prompt changes and assumptions that may be missing
29
+ from a final summary.
30
+
31
+ If a plan is still being written and the user asked you to wait, monitor it
32
+ until it is done or blocked. If a plan cannot be resolved, continue with the
33
+ available plan text and mark the missing source as a risk.
34
+
35
+ ## Normalize
36
+
37
+ For each plan, extract:
38
+
39
+ - Objective and scope.
40
+ - Key assumptions and unresolved questions.
41
+ - Proposed files, modules, APIs, data shapes, UI states, or workflows.
42
+ - Implementation sequence.
43
+ - Validation strategy.
44
+ - Rollback or migration concerns.
45
+ - Cost, complexity, and expected executor fit.
46
+
47
+ Do not reward verbosity. Prefer plans that are concrete, grounded in real code,
48
+ and honest about tradeoffs.
49
+
50
+ ## Cross-Review
51
+
52
+ Review each plan as if another capable agent wrote it:
53
+
54
+ - Check whether it satisfies the user's actual request.
55
+ - Verify claims against the repo, docs, tests, screenshots, or external systems
56
+ when those are relevant and available.
57
+ - Identify hidden dependencies, missing tests, risky sequencing, vague steps,
58
+ unnecessary scope, and hard-to-reverse decisions.
59
+ - Notice complementary strengths: one plan may have the better architecture
60
+ while another has the better migration or validation path.
61
+ - Separate plan quality from executor preference. A cheaper/faster executor can
62
+ be the right choice for implementation even when another model produced the
63
+ best critique.
64
+
65
+ Use subagents for independent review when the plans are large, the codebase is
66
+ wide, or the decision would benefit from separate technical and product passes.
67
+
68
+ ## Decide
69
+
70
+ Choose one of three outcomes:
71
+
72
+ - **Adopt:** pick one plan mostly as written.
73
+ - **Hybrid:** combine specific pieces into a stronger execution plan.
74
+ - **Revise first:** request another planning pass because both plans miss a
75
+ key constraint or depend on an unresolved decision.
76
+
77
+ Use this tie-break order:
78
+
79
+ 1. Correctness and fit to the user's request.
80
+ 2. Grounding in real files, APIs, tests, data, and UI behavior.
81
+ 3. Simpler first implementation that does not block the intended future.
82
+ 4. Better validation and rollback story.
83
+ 5. Lower token/time cost for execution once quality is acceptable.
84
+
85
+ ## Handoff
86
+
87
+ Return a compact decision memo:
88
+
89
+ ```md
90
+ Decision
91
+ - Adopt Plan A / Hybrid / Revise first.
92
+
93
+ Why
94
+ - The deciding evidence and tradeoffs.
95
+
96
+ Execution Plan
97
+ - Ordered steps with files or surfaces to touch.
98
+
99
+ Borrowed From Other Plans
100
+ - Useful pieces kept from non-winning plans.
101
+
102
+ Rejected
103
+ - Ideas intentionally not taking, with reasons.
104
+
105
+ Verification
106
+ - Tests, browser checks, screenshots, CI, review, or deploy checks needed.
107
+
108
+ Executor Recommendation
109
+ - Which agent/model should implement and why.
110
+ ```
111
+
112
+ When the user already asked for execution and the chosen path is clear, proceed
113
+ with the selected plan after reporting the decision briefly. Otherwise stop at
114
+ the handoff and ask for approval.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Plan Arbiter"
3
+ short_description: "Compare competing agent plans and pick one."
4
+ default_prompt: "Use $plan-arbiter to compare competing plans, cross-review them, and choose an execution plan."
@@ -0,0 +1,42 @@
1
+ # /plow-ahead
2
+
3
+ Keep working through ordinary ambiguity and finish with a clear decision recap.
4
+
5
+ `/plow-ahead` is for explicit autonomy: the user does not want the agent to stop
6
+ for routine clarification questions. The agent should make reasonable
7
+ assumptions, proceed, validate, and explain the decisions it made.
8
+
9
+ ## What It Does
10
+
11
+ - Converts ordinary questions into stated assumptions.
12
+ - Keeps momentum through implementation choices, missing context, and normal
13
+ test failures.
14
+ - Stops only for true blockers like credentials, destructive actions,
15
+ irreversible production changes, explicit branch operations, or high-risk
16
+ safety/security uncertainty.
17
+ - Uses conservative, reversible, repo-consistent choices.
18
+ - Ends with a recap of decisions, changes, validation, and residual risk.
19
+
20
+ ## When To Use It
21
+
22
+ Use it when a user says things like:
23
+
24
+ - "Use your best judgment and finish."
25
+ - "Do not stop for questions unless truly blocked."
26
+ - "Keep going until done."
27
+ - "I want this done when I come back."
28
+ - "Plow ahead."
29
+
30
+ Skip it when the user is explicitly asking to brainstorm, compare options, or
31
+ wait for approval before implementation.
32
+
33
+ ## Final Recap
34
+
35
+ The final response should make the autonomous work easy to audit: goal, key
36
+ decisions, assumptions, files changed, validation run, and remaining risk.
37
+
38
+ ## Install
39
+
40
+ ```sh
41
+ npx @agent-native/skills@latest add --skill plow-ahead
42
+ ```
@@ -0,0 +1,104 @@
1
+ ---
2
+ name: plow-ahead
3
+ description: >-
4
+ Use when the user explicitly wants autonomous progress without routine
5
+ clarification stops: "plow ahead", "do not stop", "use your best judgment",
6
+ "keep going until done", "finish while I am away", "do not ask questions
7
+ unless truly blocked", or similar. Convert ordinary ambiguity into stated
8
+ assumptions, proceed through implementation and validation, stop only for true
9
+ blockers, and end with a clear recap of decisions, changes, verification, and
10
+ residual risk.
11
+ ---
12
+
13
+ # Plow Ahead
14
+
15
+ Proceed through ordinary ambiguity. Make reasonable assumptions, keep momentum,
16
+ validate as you go, and make the final recap strong enough that the user can see
17
+ what decisions were made while they were away.
18
+
19
+ ## Autonomy Contract
20
+
21
+ Treat the user's instruction as permission to continue through normal
22
+ uncertainty:
23
+
24
+ - Turn routine questions into explicit assumptions.
25
+ - Prefer the smallest reversible choice that satisfies the request.
26
+ - Use repo conventions, nearby patterns, local docs, tests, and existing product
27
+ behavior as the decision source.
28
+ - Keep working through normal test failures, missing context, implementation
29
+ choices, and minor ambiguity.
30
+ - Use subagents for independent research, implementation, or verification when
31
+ parallel work can reduce idle time or improve coverage.
32
+ - Do not pause merely to ask which reasonable option the user prefers. Pick one,
33
+ record why, and keep going.
34
+
35
+ ## Stop Conditions
36
+
37
+ Stop and ask only for true blockers:
38
+
39
+ - Required credentials, secrets, accounts, paid services, or private data are
40
+ unavailable.
41
+ - The next step would be destructive, irreversible, or production-mutating.
42
+ - The task requires an explicit branch operation, history rewrite, force push, or
43
+ deletion that the user did not directly request.
44
+ - Legal, safety, privacy, or security risk is high and cannot be reduced by a
45
+ conservative local choice.
46
+ - The user explicitly reserved a decision for themselves.
47
+ - A verification failure repeats after reasonable investigation and the next fix
48
+ would be speculative or broad.
49
+
50
+ If blocked, leave a self-contained handoff: what was done, what blocks progress,
51
+ what exact input is needed, and the next command or file to inspect.
52
+
53
+ ## Decision Rules
54
+
55
+ When choosing without the user:
56
+
57
+ 1. Reuse existing patterns before inventing new ones.
58
+ 2. Prefer local, reversible, low-blast-radius changes.
59
+ 3. Keep scope tight to the user's request.
60
+ 4. Choose correctness and maintainability over cleverness.
61
+ 5. Validate with the smallest meaningful test first, then broaden only when the
62
+ risk justifies it.
63
+ 6. If two options are close, choose the one that is easier for the user or a
64
+ reviewer to understand later.
65
+
66
+ Maintain a lightweight decision log while working. It can live in notes, the
67
+ plan, or your final answer, but do not create a new repo artifact unless the task
68
+ needs one.
69
+
70
+ ## Work Loop
71
+
72
+ 1. Restate the goal internally and identify likely acceptance criteria.
73
+ 2. Inspect the real files, docs, issue, PR, screenshots, or runtime behavior
74
+ before editing.
75
+ 3. Make assumptions explicit, then act on them.
76
+ 4. Implement in small coherent steps.
77
+ 5. Run targeted validation and fix issues found by validation.
78
+ 6. Repeat until the requested work is complete or a stop condition applies.
79
+ 7. Before final response, review the diff and verification evidence against the
80
+ original request.
81
+
82
+ ## Final Recap
83
+
84
+ End with a recap that makes autonomous decisions auditable:
85
+
86
+ ```md
87
+ Goal
88
+ - What you completed.
89
+
90
+ Key decisions
91
+ - Assumptions and choices made without stopping, with short reasons.
92
+
93
+ Changes
94
+ - Files, behavior, docs, or configuration changed.
95
+
96
+ Validation
97
+ - Commands, tests, screenshots, CI, or manual checks run and their result.
98
+
99
+ Remaining risk
100
+ - Anything not verified, deferred, or blocked.
101
+ ```
102
+
103
+ Keep the recap factual. Do not hide uncertainty, skipped validation, or judgment
104
+ calls.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Plow Ahead"
3
+ short_description: "Proceed autonomously through ordinary ambiguity."
4
+ default_prompt: "Use $plow-ahead to keep working through ordinary ambiguity, make reasonable assumptions, validate, and recap decisions clearly."
@@ -0,0 +1,55 @@
1
+ # /quick-recap
2
+
3
+ Make the agent's work state obvious at the end of every response.
4
+
5
+ `/quick-recap` adds a small red/yellow/green status footer convention. It answers
6
+ the thing users otherwise have to infer from a long response: done, pending, or
7
+ blocked.
8
+
9
+ ## What It Does
10
+
11
+ - Adds a single final status line.
12
+ - Defines when to use green, yellow, or red.
13
+ - Keeps the status user-facing and under 100 characters.
14
+ - Installs cleanly into `AGENTS.md` or `CLAUDE.md` through a managed block.
15
+
16
+ ## When To Use It
17
+
18
+ Use it when you want every completed unit of work to end with a reliable state
19
+ signal. It is especially useful in repos where multiple agents, long-running
20
+ work, or partial handoffs can make status hard to scan.
21
+
22
+ ## Status Meanings
23
+
24
+ - Green: the requested coding or work unit is finished.
25
+ - Yellow: specific non-routine follow-up remains.
26
+ - Red: the agent cannot continue without user input.
27
+
28
+ ## Output Examples
29
+
30
+ Green means the work unit is done:
31
+
32
+ ```md
33
+ 🟢 Updated quick recap docs with output examples
34
+ ```
35
+
36
+ Yellow means a specific non-routine item remains:
37
+
38
+ ```md
39
+ 🟡 Code updated, set PROVIDER_WEBHOOK_SECRET before testing webhooks
40
+ ```
41
+
42
+ Red means the agent is blocked on user input:
43
+
44
+ ```md
45
+ 🔴 Need the production API key to continue
46
+ ```
47
+
48
+ ## Install
49
+
50
+ ```sh
51
+ npx @agent-native/skills@latest add --skill quick-recap --update-instructions
52
+ ```
53
+
54
+ Use `--update-instructions`; copying the skill alone does not make the footer
55
+ automatic.
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: quick-recap
3
+ description: Use when adding or following the red/yellow/green final status block convention for agent responses, especially by installing managed AGENTS.md or CLAUDE.md instructions.
4
+ ---
5
+
6
+ # Quick Recap
7
+
8
+ Make completion state obvious at the end of every response.
9
+
10
+ ## Status Block
11
+
12
+ Every response that completes a unit of work must end with:
13
+
14
+ ```md
15
+ 🟢 Actual concise status sentence
16
+ ```
17
+
18
+ Rules:
19
+
20
+ - Keep the status line under 100 characters.
21
+ - Use `🟢` when the requested work is finished.
22
+ - Use `🟡` when non-routine follow-up remains; name the pending item.
23
+ - Use `🔴` only when blocked on user input.
24
+ - Put the status line at the very end of the response.
25
+ - Do not add `---`, spacer lines, or any content after the status line.
26
+
27
+ ## Installer Behavior
28
+
29
+ This convention is only automatic when it is present in project or user
30
+ instructions. When installing this skill, prefer adding the managed
31
+ `AGENTS.md` / `CLAUDE.md` block unless the user opts out.
32
+
33
+ If you are following the convention manually, choose the status from the user's
34
+ perspective: finished, pending a specific non-routine step, or blocked.
35
+
36
+ ## Examples
37
+
38
+ Finished work:
39
+
40
+ ```md
41
+ 🟢 Updated quick recap docs with output examples
42
+ ```
43
+
44
+ Non-routine follow-up remains:
45
+
46
+ ```md
47
+ 🟡 Code updated, set PROVIDER_WEBHOOK_SECRET before testing webhooks
48
+ ```
49
+
50
+ Blocked on user input:
51
+
52
+ ```md
53
+ 🔴 Need the production API key to continue
54
+ ```