@ibotor/smart-trellis 0.5.19

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 (520) hide show
  1. package/LICENSE +235 -0
  2. package/README.md +263 -0
  3. package/bin/smart-trellis.js +3 -0
  4. package/bin/trellis.js +3 -0
  5. package/dist/cli/index.d.ts +3 -0
  6. package/dist/cli/index.d.ts.map +1 -0
  7. package/dist/cli/index.js +132 -0
  8. package/dist/cli/index.js.map +1 -0
  9. package/dist/cli/smart.d.ts +2 -0
  10. package/dist/cli/smart.d.ts.map +1 -0
  11. package/dist/cli/smart.js +41 -0
  12. package/dist/cli/smart.js.map +1 -0
  13. package/dist/commands/init.d.ts +56 -0
  14. package/dist/commands/init.d.ts.map +1 -0
  15. package/dist/commands/init.js +1466 -0
  16. package/dist/commands/init.js.map +1 -0
  17. package/dist/commands/smart-init.d.ts +22 -0
  18. package/dist/commands/smart-init.d.ts.map +1 -0
  19. package/dist/commands/smart-init.js +122 -0
  20. package/dist/commands/smart-init.js.map +1 -0
  21. package/dist/commands/uninstall.d.ts +27 -0
  22. package/dist/commands/uninstall.d.ts.map +1 -0
  23. package/dist/commands/uninstall.js +339 -0
  24. package/dist/commands/uninstall.js.map +1 -0
  25. package/dist/commands/update.d.ts +72 -0
  26. package/dist/commands/update.d.ts.map +1 -0
  27. package/dist/commands/update.js +1926 -0
  28. package/dist/commands/update.js.map +1 -0
  29. package/dist/configurators/antigravity.d.ts +7 -0
  30. package/dist/configurators/antigravity.d.ts.map +1 -0
  31. package/dist/configurators/antigravity.js +19 -0
  32. package/dist/configurators/antigravity.js.map +1 -0
  33. package/dist/configurators/claude.d.ts +9 -0
  34. package/dist/configurators/claude.d.ts.map +1 -0
  35. package/dist/configurators/claude.js +72 -0
  36. package/dist/configurators/claude.js.map +1 -0
  37. package/dist/configurators/codebuddy.d.ts +10 -0
  38. package/dist/configurators/codebuddy.d.ts.map +1 -0
  39. package/dist/configurators/codebuddy.js +30 -0
  40. package/dist/configurators/codebuddy.js.map +1 -0
  41. package/dist/configurators/codex.d.ts +8 -0
  42. package/dist/configurators/codex.d.ts.map +1 -0
  43. package/dist/configurators/codex.js +85 -0
  44. package/dist/configurators/codex.js.map +1 -0
  45. package/dist/configurators/copilot.d.ts +10 -0
  46. package/dist/configurators/copilot.d.ts.map +1 -0
  47. package/dist/configurators/copilot.js +51 -0
  48. package/dist/configurators/copilot.js.map +1 -0
  49. package/dist/configurators/cursor.d.ts +10 -0
  50. package/dist/configurators/cursor.d.ts.map +1 -0
  51. package/dist/configurators/cursor.js +29 -0
  52. package/dist/configurators/cursor.js.map +1 -0
  53. package/dist/configurators/droid.d.ts +10 -0
  54. package/dist/configurators/droid.d.ts.map +1 -0
  55. package/dist/configurators/droid.js +30 -0
  56. package/dist/configurators/droid.js.map +1 -0
  57. package/dist/configurators/gemini.d.ts +16 -0
  58. package/dist/configurators/gemini.d.ts.map +1 -0
  59. package/dist/configurators/gemini.js +38 -0
  60. package/dist/configurators/gemini.js.map +1 -0
  61. package/dist/configurators/index.d.ts +65 -0
  62. package/dist/configurators/index.d.ts.map +1 -0
  63. package/dist/configurators/index.js +367 -0
  64. package/dist/configurators/index.js.map +1 -0
  65. package/dist/configurators/kilo.d.ts +7 -0
  66. package/dist/configurators/kilo.d.ts.map +1 -0
  67. package/dist/configurators/kilo.js +19 -0
  68. package/dist/configurators/kilo.js.map +1 -0
  69. package/dist/configurators/kiro.d.ts +8 -0
  70. package/dist/configurators/kiro.d.ts.map +1 -0
  71. package/dist/configurators/kiro.js +24 -0
  72. package/dist/configurators/kiro.js.map +1 -0
  73. package/dist/configurators/opencode.d.ts +14 -0
  74. package/dist/configurators/opencode.d.ts.map +1 -0
  75. package/dist/configurators/opencode.js +96 -0
  76. package/dist/configurators/opencode.js.map +1 -0
  77. package/dist/configurators/pi.d.ts +3 -0
  78. package/dist/configurators/pi.d.ts.map +1 -0
  79. package/dist/configurators/pi.js +45 -0
  80. package/dist/configurators/pi.js.map +1 -0
  81. package/dist/configurators/qoder.d.ts +11 -0
  82. package/dist/configurators/qoder.d.ts.map +1 -0
  83. package/dist/configurators/qoder.js +31 -0
  84. package/dist/configurators/qoder.js.map +1 -0
  85. package/dist/configurators/shared.d.ts +178 -0
  86. package/dist/configurators/shared.d.ts.map +1 -0
  87. package/dist/configurators/shared.js +538 -0
  88. package/dist/configurators/shared.js.map +1 -0
  89. package/dist/configurators/windsurf.d.ts +7 -0
  90. package/dist/configurators/windsurf.d.ts.map +1 -0
  91. package/dist/configurators/windsurf.js +19 -0
  92. package/dist/configurators/windsurf.js.map +1 -0
  93. package/dist/configurators/workflow.d.ts +29 -0
  94. package/dist/configurators/workflow.d.ts.map +1 -0
  95. package/dist/configurators/workflow.js +163 -0
  96. package/dist/configurators/workflow.js.map +1 -0
  97. package/dist/constants/paths.d.ts +70 -0
  98. package/dist/constants/paths.d.ts.map +1 -0
  99. package/dist/constants/paths.js +79 -0
  100. package/dist/constants/paths.js.map +1 -0
  101. package/dist/constants/version.d.ts +9 -0
  102. package/dist/constants/version.d.ts.map +1 -0
  103. package/dist/constants/version.js +15 -0
  104. package/dist/constants/version.js.map +1 -0
  105. package/dist/index.d.ts +10 -0
  106. package/dist/index.d.ts.map +1 -0
  107. package/dist/index.js +10 -0
  108. package/dist/index.js.map +1 -0
  109. package/dist/migrations/index.d.ts +62 -0
  110. package/dist/migrations/index.d.ts.map +1 -0
  111. package/dist/migrations/index.js +187 -0
  112. package/dist/migrations/index.js.map +1 -0
  113. package/dist/migrations/manifests/0.1.9.json +30 -0
  114. package/dist/migrations/manifests/0.2.0.json +49 -0
  115. package/dist/migrations/manifests/0.2.12.json +9 -0
  116. package/dist/migrations/manifests/0.2.13.json +9 -0
  117. package/dist/migrations/manifests/0.2.14.json +175 -0
  118. package/dist/migrations/manifests/0.2.15.json +33 -0
  119. package/dist/migrations/manifests/0.3.0-beta.0.json +297 -0
  120. package/dist/migrations/manifests/0.3.0-beta.1.json +9 -0
  121. package/dist/migrations/manifests/0.3.0-beta.10.json +9 -0
  122. package/dist/migrations/manifests/0.3.0-beta.11.json +9 -0
  123. package/dist/migrations/manifests/0.3.0-beta.12.json +9 -0
  124. package/dist/migrations/manifests/0.3.0-beta.13.json +9 -0
  125. package/dist/migrations/manifests/0.3.0-beta.14.json +9 -0
  126. package/dist/migrations/manifests/0.3.0-beta.15.json +9 -0
  127. package/dist/migrations/manifests/0.3.0-beta.16.json +9 -0
  128. package/dist/migrations/manifests/0.3.0-beta.2.json +9 -0
  129. package/dist/migrations/manifests/0.3.0-beta.3.json +9 -0
  130. package/dist/migrations/manifests/0.3.0-beta.4.json +9 -0
  131. package/dist/migrations/manifests/0.3.0-beta.5.json +9 -0
  132. package/dist/migrations/manifests/0.3.0-beta.6.json +9 -0
  133. package/dist/migrations/manifests/0.3.0-beta.7.json +11 -0
  134. package/dist/migrations/manifests/0.3.0-beta.8.json +9 -0
  135. package/dist/migrations/manifests/0.3.0-beta.9.json +9 -0
  136. package/dist/migrations/manifests/0.3.0-rc.0.json +9 -0
  137. package/dist/migrations/manifests/0.3.0-rc.1.json +9 -0
  138. package/dist/migrations/manifests/0.3.0-rc.2.json +9 -0
  139. package/dist/migrations/manifests/0.3.0-rc.3.json +9 -0
  140. package/dist/migrations/manifests/0.3.0-rc.4.json +9 -0
  141. package/dist/migrations/manifests/0.3.0-rc.5.json +9 -0
  142. package/dist/migrations/manifests/0.3.0-rc.6.json +9 -0
  143. package/dist/migrations/manifests/0.3.0.json +11 -0
  144. package/dist/migrations/manifests/0.3.1.json +9 -0
  145. package/dist/migrations/manifests/0.3.10.json +9 -0
  146. package/dist/migrations/manifests/0.3.2.json +9 -0
  147. package/dist/migrations/manifests/0.3.3.json +9 -0
  148. package/dist/migrations/manifests/0.3.4.json +21 -0
  149. package/dist/migrations/manifests/0.3.5.json +9 -0
  150. package/dist/migrations/manifests/0.3.6.json +9 -0
  151. package/dist/migrations/manifests/0.3.7.json +9 -0
  152. package/dist/migrations/manifests/0.3.8.json +9 -0
  153. package/dist/migrations/manifests/0.3.9.json +9 -0
  154. package/dist/migrations/manifests/0.4.0-beta.1.json +228 -0
  155. package/dist/migrations/manifests/0.4.0-beta.10.json +9 -0
  156. package/dist/migrations/manifests/0.4.0-beta.2.json +9 -0
  157. package/dist/migrations/manifests/0.4.0-beta.3.json +9 -0
  158. package/dist/migrations/manifests/0.4.0-beta.4.json +9 -0
  159. package/dist/migrations/manifests/0.4.0-beta.5.json +9 -0
  160. package/dist/migrations/manifests/0.4.0-beta.6.json +9 -0
  161. package/dist/migrations/manifests/0.4.0-beta.7.json +9 -0
  162. package/dist/migrations/manifests/0.4.0-beta.8.json +34 -0
  163. package/dist/migrations/manifests/0.4.0-beta.9.json +9 -0
  164. package/dist/migrations/manifests/0.4.0-rc.0.json +9 -0
  165. package/dist/migrations/manifests/0.4.0-rc.1.json +9 -0
  166. package/dist/migrations/manifests/0.4.0.json +9 -0
  167. package/dist/migrations/manifests/0.5.0-beta.0.json +1646 -0
  168. package/dist/migrations/manifests/0.5.0-beta.1.json +9 -0
  169. package/dist/migrations/manifests/0.5.0-beta.10.json +9 -0
  170. package/dist/migrations/manifests/0.5.0-beta.11.json +9 -0
  171. package/dist/migrations/manifests/0.5.0-beta.12.json +9 -0
  172. package/dist/migrations/manifests/0.5.0-beta.13.json +9 -0
  173. package/dist/migrations/manifests/0.5.0-beta.14.json +9 -0
  174. package/dist/migrations/manifests/0.5.0-beta.15.json +116 -0
  175. package/dist/migrations/manifests/0.5.0-beta.16.json +9 -0
  176. package/dist/migrations/manifests/0.5.0-beta.17.json +9 -0
  177. package/dist/migrations/manifests/0.5.0-beta.18.json +9 -0
  178. package/dist/migrations/manifests/0.5.0-beta.19.json +9 -0
  179. package/dist/migrations/manifests/0.5.0-beta.2.json +9 -0
  180. package/dist/migrations/manifests/0.5.0-beta.3.json +9 -0
  181. package/dist/migrations/manifests/0.5.0-beta.4.json +9 -0
  182. package/dist/migrations/manifests/0.5.0-beta.5.json +222 -0
  183. package/dist/migrations/manifests/0.5.0-beta.6.json +9 -0
  184. package/dist/migrations/manifests/0.5.0-beta.7.json +9 -0
  185. package/dist/migrations/manifests/0.5.0-beta.8.json +9 -0
  186. package/dist/migrations/manifests/0.5.0-beta.9.json +48 -0
  187. package/dist/migrations/manifests/0.5.0-rc.0.json +9 -0
  188. package/dist/migrations/manifests/0.5.0-rc.1.json +9 -0
  189. package/dist/migrations/manifests/0.5.0-rc.2.json +9 -0
  190. package/dist/migrations/manifests/0.5.0-rc.3.json +9 -0
  191. package/dist/migrations/manifests/0.5.0-rc.4.json +9 -0
  192. package/dist/migrations/manifests/0.5.0-rc.5.json +9 -0
  193. package/dist/migrations/manifests/0.5.0-rc.6.json +9 -0
  194. package/dist/migrations/manifests/0.5.0-rc.7.json +9 -0
  195. package/dist/migrations/manifests/0.5.0.json +9 -0
  196. package/dist/migrations/manifests/0.5.1.json +9 -0
  197. package/dist/migrations/manifests/0.5.10.json +9 -0
  198. package/dist/migrations/manifests/0.5.11.json +16 -0
  199. package/dist/migrations/manifests/0.5.12.json +9 -0
  200. package/dist/migrations/manifests/0.5.13.json +9 -0
  201. package/dist/migrations/manifests/0.5.14.json +9 -0
  202. package/dist/migrations/manifests/0.5.15.json +9 -0
  203. package/dist/migrations/manifests/0.5.16.json +9 -0
  204. package/dist/migrations/manifests/0.5.17.json +9 -0
  205. package/dist/migrations/manifests/0.5.18.json +9 -0
  206. package/dist/migrations/manifests/0.5.19.json +9 -0
  207. package/dist/migrations/manifests/0.5.2.json +9 -0
  208. package/dist/migrations/manifests/0.5.3.json +9 -0
  209. package/dist/migrations/manifests/0.5.4.json +9 -0
  210. package/dist/migrations/manifests/0.5.5.json +9 -0
  211. package/dist/migrations/manifests/0.5.6.json +9 -0
  212. package/dist/migrations/manifests/0.5.7.json +16 -0
  213. package/dist/migrations/manifests/0.5.8.json +9 -0
  214. package/dist/migrations/manifests/0.5.9.json +9 -0
  215. package/dist/migrations/manifests/0.6.0-beta.0.json +16 -0
  216. package/dist/migrations/manifests/0.6.0-beta.1.json +9 -0
  217. package/dist/migrations/manifests/0.6.0-beta.10.json +9 -0
  218. package/dist/migrations/manifests/0.6.0-beta.11.json +9 -0
  219. package/dist/migrations/manifests/0.6.0-beta.12.json +9 -0
  220. package/dist/migrations/manifests/0.6.0-beta.13.json +9 -0
  221. package/dist/migrations/manifests/0.6.0-beta.14.json +9 -0
  222. package/dist/migrations/manifests/0.6.0-beta.15.json +9 -0
  223. package/dist/migrations/manifests/0.6.0-beta.16.json +9 -0
  224. package/dist/migrations/manifests/0.6.0-beta.17.json +9 -0
  225. package/dist/migrations/manifests/0.6.0-beta.18.json +16 -0
  226. package/dist/migrations/manifests/0.6.0-beta.19.json +9 -0
  227. package/dist/migrations/manifests/0.6.0-beta.2.json +9 -0
  228. package/dist/migrations/manifests/0.6.0-beta.20.json +9 -0
  229. package/dist/migrations/manifests/0.6.0-beta.21.json +9 -0
  230. package/dist/migrations/manifests/0.6.0-beta.3.json +9 -0
  231. package/dist/migrations/manifests/0.6.0-beta.4.json +9 -0
  232. package/dist/migrations/manifests/0.6.0-beta.5.json +9 -0
  233. package/dist/migrations/manifests/0.6.0-beta.6.json +16 -0
  234. package/dist/migrations/manifests/0.6.0-beta.7.json +9 -0
  235. package/dist/migrations/manifests/0.6.0-beta.8.json +9 -0
  236. package/dist/migrations/manifests/0.6.0-beta.9.json +9 -0
  237. package/dist/templates/claude/agents/trellis-check.md +109 -0
  238. package/dist/templates/claude/agents/trellis-implement.md +109 -0
  239. package/dist/templates/claude/agents/trellis-research.md +137 -0
  240. package/dist/templates/claude/index.d.ts +22 -0
  241. package/dist/templates/claude/index.d.ts.map +1 -0
  242. package/dist/templates/claude/index.js +46 -0
  243. package/dist/templates/claude/index.js.map +1 -0
  244. package/dist/templates/claude/settings.json +73 -0
  245. package/dist/templates/codebuddy/agents/trellis-check.md +109 -0
  246. package/dist/templates/codebuddy/agents/trellis-implement.md +109 -0
  247. package/dist/templates/codebuddy/agents/trellis-research.md +137 -0
  248. package/dist/templates/codebuddy/index.d.ts +15 -0
  249. package/dist/templates/codebuddy/index.d.ts.map +1 -0
  250. package/dist/templates/codebuddy/index.js +15 -0
  251. package/dist/templates/codebuddy/index.js.map +1 -0
  252. package/dist/templates/codebuddy/settings.json +59 -0
  253. package/dist/templates/codex/agents/trellis-check.toml +84 -0
  254. package/dist/templates/codex/agents/trellis-implement.toml +65 -0
  255. package/dist/templates/codex/agents/trellis-research.toml +73 -0
  256. package/dist/templates/codex/config.toml +28 -0
  257. package/dist/templates/codex/hooks/session-start.py +481 -0
  258. package/dist/templates/codex/hooks.json +15 -0
  259. package/dist/templates/codex/index.d.ts +39 -0
  260. package/dist/templates/codex/index.d.ts.map +1 -0
  261. package/dist/templates/codex/index.js +85 -0
  262. package/dist/templates/codex/index.js.map +1 -0
  263. package/dist/templates/codex/skills/before-dev/SKILL.md +34 -0
  264. package/dist/templates/codex/skills/brainstorm/SKILL.md +500 -0
  265. package/dist/templates/codex/skills/break-loop/SKILL.md +130 -0
  266. package/dist/templates/codex/skills/check/SKILL.md +30 -0
  267. package/dist/templates/codex/skills/check-cross-layer/SKILL.md +158 -0
  268. package/dist/templates/codex/skills/create-command/SKILL.md +101 -0
  269. package/dist/templates/codex/skills/finish-work/SKILL.md +90 -0
  270. package/dist/templates/codex/skills/improve-ut/SKILL.md +69 -0
  271. package/dist/templates/codex/skills/integrate-skill/SKILL.md +221 -0
  272. package/dist/templates/codex/skills/onboard/SKILL.md +363 -0
  273. package/dist/templates/codex/skills/record-session/SKILL.md +67 -0
  274. package/dist/templates/codex/skills/start/SKILL.md +354 -0
  275. package/dist/templates/codex/skills/update-spec/SKILL.md +335 -0
  276. package/dist/templates/common/bundled-skills/trellis-meta/SKILL.md +73 -0
  277. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/add-project-local-conventions.md +83 -0
  278. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-agents.md +54 -0
  279. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-context-loading.md +81 -0
  280. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-hooks.md +57 -0
  281. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-skills-or-commands.md +78 -0
  282. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-spec-structure.md +83 -0
  283. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-task-lifecycle.md +90 -0
  284. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-workflow.md +64 -0
  285. package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/overview.md +55 -0
  286. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/context-injection.md +68 -0
  287. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/generated-files.md +80 -0
  288. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/overview.md +51 -0
  289. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/spec-system.md +102 -0
  290. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/task-system.md +101 -0
  291. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/workflow.md +75 -0
  292. package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/workspace-memory.md +71 -0
  293. package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/agents.md +79 -0
  294. package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/hooks-and-settings.md +69 -0
  295. package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/overview.md +59 -0
  296. package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/platform-map.md +74 -0
  297. package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/skills-and-commands.md +83 -0
  298. package/dist/templates/common/bundled-skills/trellis-spec-bootstarp/SKILL.md +41 -0
  299. package/dist/templates/common/bundled-skills/trellis-spec-bootstarp/references/mcp-setup.md +90 -0
  300. package/dist/templates/common/bundled-skills/trellis-spec-bootstarp/references/repository-analysis.md +59 -0
  301. package/dist/templates/common/bundled-skills/trellis-spec-bootstarp/references/spec-task-planning.md +61 -0
  302. package/dist/templates/common/bundled-skills/trellis-spec-bootstarp/references/spec-writing.md +70 -0
  303. package/dist/templates/common/commands/continue.md +55 -0
  304. package/dist/templates/common/commands/finish-work.md +66 -0
  305. package/dist/templates/common/commands/start.md +58 -0
  306. package/dist/templates/common/index.d.ts +48 -0
  307. package/dist/templates/common/index.d.ts.map +1 -0
  308. package/dist/templates/common/index.js +104 -0
  309. package/dist/templates/common/index.js.map +1 -0
  310. package/dist/templates/common/skills/before-dev.md +29 -0
  311. package/dist/templates/common/skills/brainstorm.md +543 -0
  312. package/dist/templates/common/skills/break-loop.md +125 -0
  313. package/dist/templates/common/skills/check.md +87 -0
  314. package/dist/templates/common/skills/update-spec.md +351 -0
  315. package/dist/templates/copilot/hooks/session-start.py +454 -0
  316. package/dist/templates/copilot/hooks.json +19 -0
  317. package/dist/templates/copilot/index.d.ts +23 -0
  318. package/dist/templates/copilot/index.d.ts.map +1 -0
  319. package/dist/templates/copilot/index.js +54 -0
  320. package/dist/templates/copilot/index.js.map +1 -0
  321. package/dist/templates/copilot/prompts/before-dev.prompt.md +33 -0
  322. package/dist/templates/copilot/prompts/brainstorm.prompt.md +499 -0
  323. package/dist/templates/copilot/prompts/break-loop.prompt.md +129 -0
  324. package/dist/templates/copilot/prompts/check-cross-layer.prompt.md +157 -0
  325. package/dist/templates/copilot/prompts/check.prompt.md +29 -0
  326. package/dist/templates/copilot/prompts/create-command.prompt.md +116 -0
  327. package/dist/templates/copilot/prompts/finish-work.prompt.md +99 -0
  328. package/dist/templates/copilot/prompts/integrate-skill.prompt.md +223 -0
  329. package/dist/templates/copilot/prompts/onboard.prompt.md +362 -0
  330. package/dist/templates/copilot/prompts/parallel.prompt.md +196 -0
  331. package/dist/templates/copilot/prompts/record-session.prompt.md +66 -0
  332. package/dist/templates/copilot/prompts/start.prompt.md +397 -0
  333. package/dist/templates/copilot/prompts/update-spec.prompt.md +358 -0
  334. package/dist/templates/cursor/agents/trellis-check.md +108 -0
  335. package/dist/templates/cursor/agents/trellis-implement.md +108 -0
  336. package/dist/templates/cursor/agents/trellis-research.md +136 -0
  337. package/dist/templates/cursor/hooks.json +24 -0
  338. package/dist/templates/cursor/index.d.ts +13 -0
  339. package/dist/templates/cursor/index.d.ts.map +1 -0
  340. package/dist/templates/cursor/index.js +13 -0
  341. package/dist/templates/cursor/index.js.map +1 -0
  342. package/dist/templates/droid/droids/trellis-check.md +101 -0
  343. package/dist/templates/droid/droids/trellis-implement.md +101 -0
  344. package/dist/templates/droid/droids/trellis-research.md +137 -0
  345. package/dist/templates/droid/index.d.ts +15 -0
  346. package/dist/templates/droid/index.d.ts.map +1 -0
  347. package/dist/templates/droid/index.js +15 -0
  348. package/dist/templates/droid/index.js.map +1 -0
  349. package/dist/templates/droid/settings.json +59 -0
  350. package/dist/templates/extract.d.ts +40 -0
  351. package/dist/templates/extract.d.ts.map +1 -0
  352. package/dist/templates/extract.js +106 -0
  353. package/dist/templates/extract.js.map +1 -0
  354. package/dist/templates/gemini/agents/trellis-check.md +101 -0
  355. package/dist/templates/gemini/agents/trellis-implement.md +101 -0
  356. package/dist/templates/gemini/agents/trellis-research.md +136 -0
  357. package/dist/templates/gemini/index.d.ts +13 -0
  358. package/dist/templates/gemini/index.d.ts.map +1 -0
  359. package/dist/templates/gemini/index.js +13 -0
  360. package/dist/templates/gemini/index.js.map +1 -0
  361. package/dist/templates/gemini/settings.json +28 -0
  362. package/dist/templates/kiro/agents/trellis-check.json +26 -0
  363. package/dist/templates/kiro/agents/trellis-implement.json +26 -0
  364. package/dist/templates/kiro/agents/trellis-research.json +30 -0
  365. package/dist/templates/kiro/index.d.ts +18 -0
  366. package/dist/templates/kiro/index.d.ts.map +1 -0
  367. package/dist/templates/kiro/index.js +18 -0
  368. package/dist/templates/kiro/index.js.map +1 -0
  369. package/dist/templates/markdown/agents.md +21 -0
  370. package/dist/templates/markdown/gitignore.txt +15 -0
  371. package/dist/templates/markdown/index.d.ts +27 -0
  372. package/dist/templates/markdown/index.d.ts.map +1 -0
  373. package/dist/templates/markdown/index.js +52 -0
  374. package/dist/templates/markdown/index.js.map +1 -0
  375. package/dist/templates/markdown/spec/backend/database-guidelines.md.txt +51 -0
  376. package/dist/templates/markdown/spec/backend/directory-structure.md.txt +54 -0
  377. package/dist/templates/markdown/spec/backend/error-handling.md.txt +51 -0
  378. package/dist/templates/markdown/spec/backend/index.md.txt +38 -0
  379. package/dist/templates/markdown/spec/backend/logging-guidelines.md.txt +51 -0
  380. package/dist/templates/markdown/spec/backend/quality-guidelines.md.txt +51 -0
  381. package/dist/templates/markdown/spec/frontend/component-guidelines.md.txt +59 -0
  382. package/dist/templates/markdown/spec/frontend/directory-structure.md.txt +54 -0
  383. package/dist/templates/markdown/spec/frontend/hook-guidelines.md.txt +51 -0
  384. package/dist/templates/markdown/spec/frontend/index.md.txt +39 -0
  385. package/dist/templates/markdown/spec/frontend/quality-guidelines.md.txt +51 -0
  386. package/dist/templates/markdown/spec/frontend/state-management.md.txt +51 -0
  387. package/dist/templates/markdown/spec/frontend/type-safety.md.txt +51 -0
  388. package/dist/templates/markdown/spec/guides/code-reuse-thinking-guide.md.txt +105 -0
  389. package/dist/templates/markdown/spec/guides/cross-layer-thinking-guide.md.txt +162 -0
  390. package/dist/templates/markdown/spec/guides/cross-platform-thinking-guide.md.txt +595 -0
  391. package/dist/templates/markdown/spec/guides/index.md.txt +79 -0
  392. package/dist/templates/markdown/workspace-index.md +125 -0
  393. package/dist/templates/markdown/worktree.yaml.txt +58 -0
  394. package/dist/templates/opencode/agents/trellis-check.md +116 -0
  395. package/dist/templates/opencode/agents/trellis-implement.md +117 -0
  396. package/dist/templates/opencode/agents/trellis-research.md +145 -0
  397. package/dist/templates/opencode/lib/session-utils.js +432 -0
  398. package/dist/templates/opencode/lib/trellis-context.js +381 -0
  399. package/dist/templates/opencode/package.json +5 -0
  400. package/dist/templates/opencode/plugins/inject-subagent-context.js +497 -0
  401. package/dist/templates/opencode/plugins/inject-workflow-state.js +162 -0
  402. package/dist/templates/opencode/plugins/session-start.js +101 -0
  403. package/dist/templates/pi/agents/trellis-check.md +36 -0
  404. package/dist/templates/pi/agents/trellis-implement.md +41 -0
  405. package/dist/templates/pi/agents/trellis-research.md +25 -0
  406. package/dist/templates/pi/extensions/trellis/index.ts.txt +1172 -0
  407. package/dist/templates/pi/index.d.ts +5 -0
  408. package/dist/templates/pi/index.d.ts.map +1 -0
  409. package/dist/templates/pi/index.js +12 -0
  410. package/dist/templates/pi/index.js.map +1 -0
  411. package/dist/templates/pi/settings.json +21 -0
  412. package/dist/templates/qoder/agents/trellis-check.md +102 -0
  413. package/dist/templates/qoder/agents/trellis-implement.md +102 -0
  414. package/dist/templates/qoder/agents/trellis-research.md +137 -0
  415. package/dist/templates/qoder/index.d.ts +15 -0
  416. package/dist/templates/qoder/index.d.ts.map +1 -0
  417. package/dist/templates/qoder/index.js +15 -0
  418. package/dist/templates/qoder/index.js.map +1 -0
  419. package/dist/templates/qoder/settings.json +47 -0
  420. package/dist/templates/shared-hooks/index.d.ts +50 -0
  421. package/dist/templates/shared-hooks/index.d.ts.map +1 -0
  422. package/dist/templates/shared-hooks/index.js +88 -0
  423. package/dist/templates/shared-hooks/index.js.map +1 -0
  424. package/dist/templates/shared-hooks/inject-shell-session-context.py +183 -0
  425. package/dist/templates/shared-hooks/inject-subagent-context.py +749 -0
  426. package/dist/templates/shared-hooks/inject-workflow-state.py +387 -0
  427. package/dist/templates/shared-hooks/session-start.py +797 -0
  428. package/dist/templates/template-utils.d.ts +26 -0
  429. package/dist/templates/template-utils.d.ts.map +1 -0
  430. package/dist/templates/template-utils.js +60 -0
  431. package/dist/templates/template-utils.js.map +1 -0
  432. package/dist/templates/trellis/config.yaml +90 -0
  433. package/dist/templates/trellis/gitignore.txt +32 -0
  434. package/dist/templates/trellis/index.d.ts +52 -0
  435. package/dist/templates/trellis/index.d.ts.map +1 -0
  436. package/dist/templates/trellis/index.js +97 -0
  437. package/dist/templates/trellis/index.js.map +1 -0
  438. package/dist/templates/trellis/scripts/__init__.py +5 -0
  439. package/dist/templates/trellis/scripts/add_session.py +547 -0
  440. package/dist/templates/trellis/scripts/common/__init__.py +92 -0
  441. package/dist/templates/trellis/scripts/common/active_task.py +626 -0
  442. package/dist/templates/trellis/scripts/common/cli_adapter.py +811 -0
  443. package/dist/templates/trellis/scripts/common/config.py +445 -0
  444. package/dist/templates/trellis/scripts/common/developer.py +190 -0
  445. package/dist/templates/trellis/scripts/common/git.py +31 -0
  446. package/dist/templates/trellis/scripts/common/git_context.py +106 -0
  447. package/dist/templates/trellis/scripts/common/io.py +37 -0
  448. package/dist/templates/trellis/scripts/common/log.py +45 -0
  449. package/dist/templates/trellis/scripts/common/packages_context.py +238 -0
  450. package/dist/templates/trellis/scripts/common/paths.py +447 -0
  451. package/dist/templates/trellis/scripts/common/safe_commit.py +285 -0
  452. package/dist/templates/trellis/scripts/common/session_context.py +821 -0
  453. package/dist/templates/trellis/scripts/common/task_context.py +223 -0
  454. package/dist/templates/trellis/scripts/common/task_queue.py +188 -0
  455. package/dist/templates/trellis/scripts/common/task_store.py +697 -0
  456. package/dist/templates/trellis/scripts/common/task_utils.py +274 -0
  457. package/dist/templates/trellis/scripts/common/tasks.py +112 -0
  458. package/dist/templates/trellis/scripts/common/trellis_config.py +131 -0
  459. package/dist/templates/trellis/scripts/common/types.py +110 -0
  460. package/dist/templates/trellis/scripts/common/workflow_phase.py +215 -0
  461. package/dist/templates/trellis/scripts/get_context.py +16 -0
  462. package/dist/templates/trellis/scripts/get_developer.py +26 -0
  463. package/dist/templates/trellis/scripts/hooks/linear_sync.py +243 -0
  464. package/dist/templates/trellis/scripts/init_developer.py +51 -0
  465. package/dist/templates/trellis/scripts/task.py +500 -0
  466. package/dist/templates/trellis/tasks/.gitkeep +0 -0
  467. package/dist/templates/trellis/workflow.md +690 -0
  468. package/dist/types/ai-tools.d.ts +95 -0
  469. package/dist/types/ai-tools.d.ts.map +1 -0
  470. package/dist/types/ai-tools.js +280 -0
  471. package/dist/types/ai-tools.js.map +1 -0
  472. package/dist/types/migration.d.ts +125 -0
  473. package/dist/types/migration.d.ts.map +1 -0
  474. package/dist/types/migration.js +8 -0
  475. package/dist/types/migration.js.map +1 -0
  476. package/dist/utils/compare-versions.d.ts +12 -0
  477. package/dist/utils/compare-versions.d.ts.map +1 -0
  478. package/dist/utils/compare-versions.js +86 -0
  479. package/dist/utils/compare-versions.js.map +1 -0
  480. package/dist/utils/cwd-guard.d.ts +38 -0
  481. package/dist/utils/cwd-guard.d.ts.map +1 -0
  482. package/dist/utils/cwd-guard.js +62 -0
  483. package/dist/utils/cwd-guard.js.map +1 -0
  484. package/dist/utils/file-writer.d.ts +36 -0
  485. package/dist/utils/file-writer.d.ts.map +1 -0
  486. package/dist/utils/file-writer.js +203 -0
  487. package/dist/utils/file-writer.js.map +1 -0
  488. package/dist/utils/manifest-prune.d.ts +61 -0
  489. package/dist/utils/manifest-prune.d.ts.map +1 -0
  490. package/dist/utils/manifest-prune.js +136 -0
  491. package/dist/utils/manifest-prune.js.map +1 -0
  492. package/dist/utils/posix.d.ts +13 -0
  493. package/dist/utils/posix.d.ts.map +1 -0
  494. package/dist/utils/posix.js +15 -0
  495. package/dist/utils/posix.js.map +1 -0
  496. package/dist/utils/project-detector.d.ts +46 -0
  497. package/dist/utils/project-detector.d.ts.map +1 -0
  498. package/dist/utils/project-detector.js +666 -0
  499. package/dist/utils/project-detector.js.map +1 -0
  500. package/dist/utils/proxy.d.ts +25 -0
  501. package/dist/utils/proxy.d.ts.map +1 -0
  502. package/dist/utils/proxy.js +60 -0
  503. package/dist/utils/proxy.js.map +1 -0
  504. package/dist/utils/task-json.d.ts +46 -0
  505. package/dist/utils/task-json.d.ts.map +1 -0
  506. package/dist/utils/task-json.js +49 -0
  507. package/dist/utils/task-json.js.map +1 -0
  508. package/dist/utils/template-fetcher.d.ts +150 -0
  509. package/dist/utils/template-fetcher.d.ts.map +1 -0
  510. package/dist/utils/template-fetcher.js +907 -0
  511. package/dist/utils/template-fetcher.js.map +1 -0
  512. package/dist/utils/template-hash.d.ts +123 -0
  513. package/dist/utils/template-hash.d.ts.map +1 -0
  514. package/dist/utils/template-hash.js +334 -0
  515. package/dist/utils/template-hash.js.map +1 -0
  516. package/dist/utils/uninstall-scrubbers.d.ts +66 -0
  517. package/dist/utils/uninstall-scrubbers.d.ts.map +1 -0
  518. package/dist/utils/uninstall-scrubbers.js +342 -0
  519. package/dist/utils/uninstall-scrubbers.js.map +1 -0
  520. package/package.json +89 -0
@@ -0,0 +1,158 @@
1
+ ---
2
+ name: check-cross-layer
3
+ description: "Post-implementation verification across multiple code dimensions: cross-layer data flow, code reuse analysis, import path validation, and same-layer consistency checks. Identifies missed update sites, type mismatches, and duplicated constants. Use when changes span 3+ architectural layers, after modifying shared constants or configs, after batch file modifications, or when creating new utility functions."
4
+ ---
5
+
6
+ # Cross-Layer Check
7
+
8
+ Check if your changes considered all dimensions. Most bugs come from "didn't think of it", not lack of technical skill.
9
+
10
+ > **Note**: This is a **post-implementation** safety net. Ideally, read the [Pre-Implementation Checklist](.trellis/spec/guides/pre-implementation-checklist.md) **before** writing code.
11
+
12
+ ---
13
+
14
+ ## Related Documents
15
+
16
+ | Document | Purpose | Timing |
17
+ |----------|---------|--------|
18
+ | [Pre-Implementation Checklist](.trellis/spec/guides/pre-implementation-checklist.md) | Questions before coding | **Before** writing code |
19
+ | [Code Reuse Thinking Guide](.trellis/spec/guides/code-reuse-thinking-guide.md) | Pattern recognition | During implementation |
20
+ | **`$check-cross-layer`** (this skill) | Verification check | **After** implementation |
21
+
22
+ ---
23
+
24
+ ## Execution Steps
25
+
26
+ ### 1. Identify Change Scope
27
+
28
+ ```bash
29
+ git status
30
+ git diff --name-only
31
+ ```
32
+
33
+ ### 2. Select Applicable Check Dimensions
34
+
35
+ Based on your change type, execute relevant checks below:
36
+
37
+ ---
38
+
39
+ ## Dimension A: Cross-Layer Data Flow (Required when 3+ layers)
40
+
41
+ **Trigger**: Changes involve 3 or more layers
42
+
43
+ | Layer | Common Locations |
44
+ |-------|------------------|
45
+ | API/Routes | `routes/`, `api/`, `handlers/`, `controllers/` |
46
+ | Service/Business Logic | `services/`, `lib/`, `core/`, `domain/` |
47
+ | Database/Storage | `db/`, `models/`, `repositories/`, `schema/` |
48
+ | UI/Presentation | `components/`, `views/`, `templates/`, `pages/` |
49
+ | Utility | `utils/`, `helpers/`, `common/` |
50
+
51
+ **Checklist**:
52
+ - [ ] Read flow: Database -> Service -> API -> UI
53
+ - [ ] Write flow: UI -> API -> Service -> Database
54
+ - [ ] Types/schemas correctly passed between layers?
55
+ - [ ] Errors properly propagated to caller?
56
+ - [ ] Loading/pending states handled at each layer?
57
+
58
+ **Detailed Guide**: `.trellis/spec/guides/cross-layer-thinking-guide.md`
59
+
60
+ ---
61
+
62
+ ## Dimension B: Code Reuse (Required when modifying constants/config)
63
+
64
+ **Trigger**:
65
+ - Modifying UI constants (label, icon, color)
66
+ - Modifying any hardcoded value
67
+ - Seeing similar code in multiple places
68
+ - Creating a new utility/helper function
69
+ - Just finished batch modifications across files
70
+
71
+ **Checklist**:
72
+ - [ ] Search first: How many places define this value?
73
+ ```bash
74
+ # Search in source files (adjust extensions for your project)
75
+ grep -r "value-to-change" src/
76
+ ```
77
+ - [ ] If 2+ places define same value -> Should extract to shared constant
78
+ - [ ] After modification, all usage sites updated?
79
+ - [ ] If creating utility: Does similar utility already exist?
80
+
81
+ **Detailed Guide**: `.trellis/spec/guides/code-reuse-thinking-guide.md`
82
+
83
+ ---
84
+
85
+ ## Dimension B2: New Utility Functions
86
+
87
+ **Trigger**: About to create a new utility/helper function
88
+
89
+ **Checklist**:
90
+ - [ ] Search for existing similar utilities first
91
+ ```bash
92
+ grep -r "functionNamePattern" src/
93
+ ```
94
+ - [ ] If similar exists, can you extend it instead?
95
+ - [ ] If creating new, is it in the right location (shared vs domain-specific)?
96
+
97
+ ---
98
+
99
+ ## Dimension B3: After Batch Modifications
100
+
101
+ **Trigger**: Just modified similar patterns in multiple files
102
+
103
+ **Checklist**:
104
+ - [ ] Did you check ALL files with similar patterns?
105
+ ```bash
106
+ grep -r "patternYouChanged" src/
107
+ ```
108
+ - [ ] Any files missed that should also be updated?
109
+ - [ ] Should this pattern be abstracted to prevent future duplication?
110
+
111
+ ---
112
+
113
+ ## Dimension C: Import/Dependency Paths (Required when creating new files)
114
+
115
+ **Trigger**: Creating new source files
116
+
117
+ **Checklist**:
118
+ - [ ] Using correct import paths (relative vs absolute)?
119
+ - [ ] No circular dependencies?
120
+ - [ ] Consistent with project's module organization?
121
+
122
+ ---
123
+
124
+ ## Dimension D: Same-Layer Consistency
125
+
126
+ **Trigger**:
127
+ - Modifying display logic or formatting
128
+ - Same domain concept used in multiple places
129
+
130
+ **Checklist**:
131
+ - [ ] Search for other places using same concept
132
+ ```bash
133
+ grep -r "ConceptName" src/
134
+ ```
135
+ - [ ] Are these usages consistent?
136
+ - [ ] Should they share configuration/constants?
137
+
138
+ ---
139
+
140
+ ## Common Issues Quick Reference
141
+
142
+ | Issue | Root Cause | Prevention |
143
+ |-------|------------|------------|
144
+ | Changed one place, missed others | Didn't search impact scope | `grep` before changing |
145
+ | Data lost at some layer | Didn't check data flow | Trace data source to destination |
146
+ | Type/schema mismatch | Cross-layer types inconsistent | Use shared type definitions |
147
+ | UI/output inconsistent | Same concept in multiple places | Extract shared constants |
148
+ | Similar utility exists | Didn't search first | Search before creating |
149
+ | Batch fix incomplete | Didn't verify all occurrences | grep after fixing |
150
+
151
+ ---
152
+
153
+ ## Output
154
+
155
+ Report:
156
+ 1. Which dimensions your changes involve
157
+ 2. Check results for each dimension
158
+ 3. Issues found and fix suggestions
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: create-command
3
+ description: "Scaffolds a new skill file with proper naming conventions and structure. Analyzes requirements to determine skill type and generates appropriate content. Use when adding a new developer workflow skill, creating a custom skill, or extending the Trellis skill set."
4
+ ---
5
+
6
+ # Create New Skill
7
+
8
+ Create a new Codex skill in `.agents/skills/<skill-name>/SKILL.md` based on user requirements.
9
+
10
+ ## Usage
11
+
12
+ ```bash
13
+ $create-command <skill-name> <description>
14
+ ```
15
+
16
+ **Example**:
17
+ ```bash
18
+ $create-command review-pr Check PR code changes against project guidelines
19
+ ```
20
+
21
+ ## Execution Steps
22
+
23
+ ### 1. Parse Input
24
+
25
+ Extract from user input:
26
+ - **Skill name**: Use kebab-case (e.g., `review-pr`)
27
+ - **Description**: What the skill should accomplish
28
+
29
+ ### 2. Analyze Requirements
30
+
31
+ Determine skill type based on description:
32
+ - **Initialization**: Read docs, establish context
33
+ - **Pre-development**: Read guidelines, check dependencies
34
+ - **Code check**: Validate code quality and guideline compliance
35
+ - **Recording**: Record progress, questions, structure changes
36
+ - **Generation**: Generate docs or code templates
37
+
38
+ ### 3. Generate Skill Content
39
+
40
+ Minimum `SKILL.md` structure:
41
+
42
+ ```markdown
43
+ ---
44
+ name: <skill-name>
45
+ description: "<description>"
46
+ ---
47
+
48
+ # <Skill Title>
49
+
50
+ <Instructions for when and how to use this skill>
51
+ ```
52
+
53
+ ### 4. Create Files
54
+
55
+ Create:
56
+ - `.agents/skills/<skill-name>/SKILL.md`
57
+
58
+ ### 5. Confirm Creation
59
+
60
+ Output result:
61
+
62
+ ```text
63
+ [OK] Created Skill: <skill-name>
64
+
65
+ File path:
66
+ - .agents/skills/<skill-name>/SKILL.md
67
+
68
+ Usage:
69
+ - Trigger directly with $<skill-name>
70
+ - Or open /skills and select it
71
+
72
+ Description:
73
+ <description>
74
+ ```
75
+
76
+ ## Skill Content Guidelines
77
+
78
+ ### [OK] Good skill content
79
+
80
+ 1. **Clear and concise**: Immediately understandable
81
+ 2. **Executable**: AI can follow steps directly
82
+ 3. **Well-scoped**: Clear boundaries of what to do and not do
83
+ 4. **Has output**: Specifies expected output format (if needed)
84
+
85
+ ### [X] Avoid
86
+
87
+ 1. **Too vague**: e.g., "optimize code"
88
+ 2. **Too complex**: Single skill should not exceed 100 lines
89
+ 3. **Duplicate functionality**: Check if similar skill exists first
90
+
91
+ ## Naming Conventions
92
+
93
+ | Skill Type | Prefix | Example |
94
+ |------------|--------|---------|
95
+ | Session Start | `start` | `start` |
96
+ | Pre-development | `before-` | `before-dev` |
97
+ | Check | `check-` | `check` |
98
+ | Record | `record-` | `record-session` |
99
+ | Generate | `generate-` | `generate-api-doc` |
100
+ | Update | `update-` | `update-changelog` |
101
+ | Other | Verb-first | `review-code`, `sync-data` |
@@ -0,0 +1,90 @@
1
+ ---
2
+ name: finish-work
3
+ description: "Wrap up an active Trellis task: archive it (and any other completed-but-unarchived tasks the user wants to clean up) and record a session journal. Refuses to run if the working tree has uncommitted code changes (those belong in workflow Phase 3.4 first). Use when the user asks to finish / wrap up / call it a day, or invokes $finish-work."
4
+ ---
5
+
6
+ # Finish Work
7
+
8
+ Wrap up the current session: archive the active task (and any other completed-but-unarchived tasks the user wants to clean up) and record the session journal. Code commits are NOT done here — those happen in workflow Phase 3.4 before you invoke this skill.
9
+
10
+ ## Step 1: Survey current state
11
+
12
+ ```bash
13
+ python3 ./.trellis/scripts/get_context.py --mode record
14
+ ```
15
+
16
+ This prints:
17
+
18
+ - **My active tasks** — review whether any besides the current one are actually done (code merged, AC met) and should be archived this round.
19
+ - **Git status** — quick visual on what's dirty.
20
+ - **Recent commits** — you'll need their hashes in Step 4 for `--commit`.
21
+
22
+ If `--mode record` surfaces other completed tasks not tied to the current session, surface them to the user with a one-shot confirmation: "These N tasks look done — archive them too in this round? [y/N]". Default is no; the current active task is always archived in Step 3 regardless.
23
+
24
+ ## Step 2: Sanity check — classify dirty paths
25
+
26
+ Run:
27
+
28
+ ```bash
29
+ git status --porcelain
30
+ ```
31
+
32
+ Filter out paths under `.trellis/workspace/` and `.trellis/tasks/` — those are managed by `add_session.py` and `task.py archive` auto-commits and will appear dirty as part of this skill's own work.
33
+
34
+ For each remaining dirty path, decide whether it belongs to **the current task** or to **other parallel work** (e.g., another terminal window editing the same repo). Heuristics:
35
+
36
+ - Paths referenced in the current task's `prd.md` / `implement.jsonl` / `check.jsonl` → current task
37
+ - Paths in code areas matching the task's stated scope, or that you remember editing this session → current task
38
+ - Paths in unrelated areas you have no recollection of touching this session → other parallel work
39
+
40
+ Then route:
41
+
42
+ - **Any remaining path looks like current-task work** — bail out with:
43
+ > "Working tree has uncommitted code changes from this task: `<list>`. Return to workflow Phase 3.4 to commit them before running `$finish-work`."
44
+
45
+ Do NOT run `git commit` here. Do NOT prompt the user to commit. The user goes back to Phase 3.4 and the AI drives the batched commit there.
46
+ - **All remaining paths look unrelated** (other parallel-window work) — report them once and continue to Step 3:
47
+ > "FYI, dirty files outside this task's scope — leaving them for the other window: `<list>`."
48
+ - **Genuinely unsure** — ask the user once: "Are `<list>` this task's work I forgot to commit, or another window's? (commit / ignore)" — then route per their answer.
49
+
50
+ ## Step 3: Archive task(s)
51
+
52
+ ```bash
53
+ python3 ./.trellis/scripts/task.py archive <task-name>
54
+ ```
55
+
56
+ At minimum: the current active task (if any). Plus any extra tasks the user confirmed in Step 1. Each archive produces a `chore(task): archive ...` commit via the script's auto-commit.
57
+
58
+ If there is no active task and the user did not confirm any cleanup archives, skip this step.
59
+
60
+ ## Step 4: Record session journal
61
+
62
+ ```bash
63
+ python3 ./.trellis/scripts/add_session.py \
64
+ --title "Session Title" \
65
+ --commit "hash1,hash2" \
66
+ --summary "Brief summary"
67
+ ```
68
+
69
+ Use the work-commit hashes produced in Phase 3.4 (visible in Step 1's `Recent commits` list, or via `git log --oneline`) for `--commit`. Do not include the archive commit hashes from Step 3. This produces a `chore: record journal` commit.
70
+
71
+ Final git log order: `<work commits from 3.4>` → `chore(task): archive ...` (one or more) → `chore: record journal`.
72
+
73
+ ---
74
+
75
+ ## Relationship to Other Skills
76
+
77
+ ```
78
+ Development Flow:
79
+ Phase 3.4 (workflow.md) -> AI drafts batched commits -> user confirms -> git commit
80
+ |
81
+ v
82
+ $finish-work
83
+ (survey + archive + journal)
84
+
85
+ Debug Flow:
86
+ Hit bug -> Fix -> $break-loop -> Knowledge capture
87
+ ```
88
+
89
+ - `$finish-work` — this skill, survey + archive + record session
90
+ - `$break-loop` — deep analysis after debugging
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: improve-ut
3
+ description: "Analyzes changed files and improves unit test coverage using project-specific testing conventions from .trellis/spec/ unit-test specs. Determines test scope (unit vs integration vs regression), adds or updates tests following existing patterns, and runs validation. Use when code changes need test coverage, after implementing a feature, after fixing a bug, or when test gaps are identified."
4
+ ---
5
+
6
+ # Improve Unit Tests (UT)
7
+
8
+ Use this skill to improve test coverage after code changes.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ $improve-ut
14
+ ```
15
+
16
+ ## Source of Truth
17
+
18
+ Discover and read unit-test specs dynamically:
19
+
20
+ ```bash
21
+ # Discover available packages and their spec layers
22
+ python3 ./.trellis/scripts/get_context.py --mode packages
23
+ ```
24
+
25
+ Look for packages with `unit-test` spec layer in the output. For each discovered `unit-test/` directory, read all relevant spec files inside it (for example `index.md`, `conventions.md`, `integration-patterns.md`, `mock-strategies.md`).
26
+
27
+ > If this skill conflicts with the unit-test specs, the specs win.
28
+
29
+ ---
30
+
31
+ ## Execution Flow
32
+
33
+ 1. Inspect changed files:
34
+ - `git diff --name-only`
35
+ 2. Decide test scope using unit-test specs:
36
+ - unit vs integration vs regression
37
+ - mock vs real filesystem flow
38
+ 3. Add/update tests using existing project test patterns
39
+ 4. Run validation:
40
+
41
+ ```bash
42
+ pnpm lint
43
+ pnpm typecheck
44
+ pnpm test
45
+ ```
46
+
47
+ 5. Summarize decisions, updates, and remaining test gaps.
48
+
49
+ ---
50
+
51
+ ## Output Format
52
+
53
+ ```markdown
54
+ ## UT Coverage Plan
55
+ - Changed areas: ...
56
+ - Test scope (unit/integration/regression): ...
57
+
58
+ ## Test Updates
59
+ - Added: ...
60
+ - Updated: ...
61
+
62
+ ## Validation
63
+ - pnpm lint: pass/fail
64
+ - pnpm typecheck: pass/fail
65
+ - pnpm test: pass/fail
66
+
67
+ ## Gaps / Follow-ups
68
+ - <none or explicit rationale>
69
+ ```
@@ -0,0 +1,221 @@
1
+ ---
2
+ name: integrate-skill
3
+ description: "Adapts an external skill into project-specific development guidelines in .trellis/spec/. Creates guideline sections, code example templates with .template suffix, and updates spec indexes. Use when integrating an external skill, adding a new skill's patterns to project conventions, or incorporating third-party skill best practices into .trellis/spec/ documentation."
4
+ ---
5
+
6
+ # Integrate Skill into Project Guidelines
7
+
8
+ Adapt and integrate a reusable skill into your project's development guidelines (not directly into project code).
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ $integrate-skill <skill-name>
14
+ ```
15
+
16
+ **Examples**:
17
+ ```
18
+ $integrate-skill frontend-design
19
+ $integrate-skill mcp-builder
20
+ ```
21
+
22
+ ## Core Principle
23
+
24
+ > [!] **Important**: The goal of skill integration is to update **development guidelines**, not to generate project code directly.
25
+ >
26
+ > - Guidelines content -> Write to `.trellis/spec/{target}/doc.md`
27
+ > - Code examples -> Place in `.trellis/spec/{target}/examples/skills/<skill-name>/`
28
+ > - Example files -> Use `.template` suffix (e.g., `component.tsx.template`) to avoid IDE errors
29
+ >
30
+ > Where `{target}` is `frontend` or `backend`, determined by skill type.
31
+
32
+ ## Execution Steps
33
+
34
+ ### 1. Read Skill Content
35
+
36
+ Locate and read the skill instructions:
37
+ - `.agents/skills/<skill-name>/SKILL.md` in the repository
38
+ - Skill list in `AGENTS.md` (when available in current context)
39
+
40
+ If the skill cannot be found, ask the user for the source path or repository.
41
+
42
+ ### 2. Determine Integration Target
43
+
44
+ Based on skill type, determine which guidelines to update:
45
+
46
+ | Skill Category | Integration Target |
47
+ |----------------|-------------------|
48
+ | UI/Frontend (`frontend-design`, `web-artifacts-builder`) | `.trellis/spec/frontend/` |
49
+ | Backend/API (`mcp-builder`) | `.trellis/spec/backend/` |
50
+ | Documentation (`doc-coauthoring`, `docx`, `pdf`) | `.trellis/` or create dedicated guidelines |
51
+ | Testing (`webapp-testing`) | `.trellis/spec/frontend/` (E2E) |
52
+
53
+ ### 3. Analyze Skill Content
54
+
55
+ Extract from the skill:
56
+ - **Core concepts**: How the skill works and key concepts
57
+ - **Best practices**: Recommended approaches
58
+ - **Code patterns**: Reusable code templates
59
+ - **Caveats**: Common issues and solutions
60
+
61
+ ### 4. Execute Integration
62
+
63
+ #### 4.1 Update Guidelines Document
64
+
65
+ Add a new section to the corresponding `doc.md`:
66
+
67
+ ```markdown
68
+ @@@section:skill-<skill-name>
69
+ ## # <Skill Name> Integration Guide
70
+
71
+ ### Overview
72
+ [Core functionality and use cases of the skill]
73
+
74
+ ### Project Adaptation
75
+ [How to use this skill in the current project]
76
+
77
+ ### Usage Steps
78
+ 1. [Step 1]
79
+ 2. [Step 2]
80
+
81
+ ### Caveats
82
+ - [Project-specific constraints]
83
+ - [Differences from default behavior]
84
+
85
+ ### Reference Examples
86
+ See `examples/skills/<skill-name>/`
87
+
88
+ @@@/section:skill-<skill-name>
89
+ ```
90
+
91
+ #### 4.2 Create Examples Directory (if code examples exist)
92
+
93
+ ```bash
94
+ # Directory structure ({target} = frontend or backend)
95
+ .trellis/spec/{target}/
96
+ |-- doc.md # Add skill-related section
97
+ |-- index.md # Update index
98
+ +-- examples/
99
+ +-- skills/
100
+ +-- <skill-name>/
101
+ |-- README.md # Example documentation
102
+ |-- example-1.ts.template # Code example (use .template suffix)
103
+ +-- example-2.tsx.template
104
+ ```
105
+
106
+ **File naming conventions**:
107
+ - Code files: `<name>.<ext>.template` (e.g., `component.tsx.template`)
108
+ - Config files: `<name>.config.template` (e.g., `tailwind.config.template`)
109
+ - Documentation: `README.md` (normal suffix)
110
+
111
+ #### 4.3 Update Index File
112
+
113
+ Add to the Quick Navigation table in `index.md`:
114
+
115
+ ```markdown
116
+ | <Skill-related task> | <Section name> | `skill-<skill-name>` |
117
+ ```
118
+
119
+ ### 5. Generate Integration Report
120
+
121
+ ---
122
+
123
+ ## Skill Integration Report: `<skill-name>`
124
+
125
+ ### # Overview
126
+ - **Skill description**: [Functionality description]
127
+ - **Integration target**: `.trellis/spec/{target}/`
128
+
129
+ ### # Tech Stack Compatibility
130
+
131
+ | Skill Requirement | Project Status | Compatibility |
132
+ |-------------------|----------------|---------------|
133
+ | [Tech 1] | [Project tech] | [OK]/[!]/[X] |
134
+
135
+ ### # Integration Locations
136
+
137
+ | Type | Path |
138
+ |------|------|
139
+ | Guidelines doc | `.trellis/spec/{target}/doc.md` (section: `skill-<name>`) |
140
+ | Code examples | `.trellis/spec/{target}/examples/skills/<name>/` |
141
+ | Index update | `.trellis/spec/{target}/index.md` |
142
+
143
+ > `{target}` = `frontend` or `backend`
144
+
145
+ ### # Dependencies (if needed)
146
+
147
+ ```bash
148
+ # Install required dependencies (adjust for your package manager)
149
+ npm install <package>
150
+ # or
151
+ pnpm add <package>
152
+ # or
153
+ yarn add <package>
154
+ ```
155
+
156
+ ### [OK] Completed Changes
157
+
158
+ - [ ] Added `@@@section:skill-<name>` section to `doc.md`
159
+ - [ ] Added index entry to `index.md`
160
+ - [ ] Created example files in `examples/skills/<name>/`
161
+ - [ ] Example files use `.template` suffix
162
+
163
+ ### # Related Guidelines
164
+
165
+ - [Existing related section IDs]
166
+
167
+ ---
168
+
169
+ ## 6. Optional: Create Usage Skill
170
+
171
+ If this skill is frequently used, create a shortcut skill:
172
+
173
+ ```bash
174
+ $create-command use-<skill-name> Use <skill-name> skill following project guidelines
175
+ ```
176
+
177
+ ## Common Skill Integration Reference
178
+
179
+ | Skill | Integration Target | Examples Directory |
180
+ |-------|-------------------|-------------------|
181
+ | `frontend-design` | `frontend` | `examples/skills/frontend-design/` |
182
+ | `mcp-builder` | `backend` | `examples/skills/mcp-builder/` |
183
+ | `webapp-testing` | `frontend` | `examples/skills/webapp-testing/` |
184
+ | `doc-coauthoring` | `.trellis/` | N/A (documentation workflow only) |
185
+
186
+ ## Example: Integrating `mcp-builder` Skill
187
+
188
+ ### Directory Structure
189
+
190
+ ```
191
+ .trellis/spec/backend/
192
+ |-- doc.md # Add MCP section
193
+ |-- index.md # Add index entry
194
+ +-- examples/
195
+ +-- skills/
196
+ +-- mcp-builder/
197
+ |-- README.md
198
+ |-- server.ts.template
199
+ |-- tools.ts.template
200
+ +-- types.ts.template
201
+ ```
202
+
203
+ ### New Section in doc.md
204
+
205
+ ```markdown
206
+ @@@section:skill-mcp-builder
207
+ ## # MCP Server Development Guide
208
+
209
+ ### Overview
210
+ Create LLM-callable tool services using MCP (Model Context Protocol).
211
+
212
+ ### Project Adaptation
213
+ - Place services in a dedicated directory
214
+ - Follow existing TypeScript and type definition conventions
215
+ - Use project's logging system
216
+
217
+ ### Reference Examples
218
+ See `examples/skills/mcp-builder/`
219
+
220
+ @@@/section:skill-mcp-builder
221
+ ```