blacksmith-organization-system 1.0.0-dev.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (491) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +77 -70
  3. package/dist/bridges/git.d.ts +9 -0
  4. package/dist/bridges/git.js +30 -0
  5. package/dist/bridges/git.js.map +1 -0
  6. package/dist/bridges/github.d.ts +28 -0
  7. package/dist/bridges/github.js +71 -0
  8. package/dist/bridges/github.js.map +1 -0
  9. package/dist/cli.d.ts +2 -0
  10. package/dist/cli.js +53 -0
  11. package/dist/cli.js.map +1 -0
  12. package/dist/core/context.d.ts +18 -0
  13. package/dist/core/context.js +14 -0
  14. package/dist/core/context.js.map +1 -0
  15. package/dist/core/element.d.ts +49 -0
  16. package/dist/core/element.js +97 -0
  17. package/dist/core/element.js.map +1 -0
  18. package/dist/core/host.d.ts +32 -0
  19. package/dist/core/host.js +5 -0
  20. package/dist/core/host.js.map +1 -0
  21. package/dist/core/paths.d.ts +5 -0
  22. package/dist/core/paths.js +42 -0
  23. package/dist/core/paths.js.map +1 -0
  24. package/dist/core/procedure.d.ts +11 -0
  25. package/dist/core/procedure.js +24 -0
  26. package/dist/core/procedure.js.map +1 -0
  27. package/dist/core/tool.d.ts +33 -0
  28. package/dist/core/tool.js +44 -0
  29. package/dist/core/tool.js.map +1 -0
  30. package/dist/core/version.d.ts +6 -0
  31. package/dist/core/version.js +37 -0
  32. package/dist/core/version.js.map +1 -0
  33. package/dist/hosts/node.d.ts +21 -0
  34. package/dist/hosts/node.js +76 -0
  35. package/dist/hosts/node.js.map +1 -0
  36. package/dist/hosts/watch-tree.d.ts +8 -0
  37. package/dist/hosts/watch-tree.js +86 -0
  38. package/dist/hosts/watch-tree.js.map +1 -0
  39. package/dist/index.d.ts +14 -0
  40. package/dist/index.js +18 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/main.d.ts +55 -0
  43. package/dist/main.js +99 -0
  44. package/dist/main.js.map +1 -0
  45. package/dist/models/_index.d.ts +20 -0
  46. package/dist/models/_index.js +22 -0
  47. package/dist/models/_index.js.map +1 -0
  48. package/dist/models/archive/class.d.ts +5 -0
  49. package/dist/models/archive/class.js +7 -0
  50. package/dist/models/archive/class.js.map +1 -0
  51. package/dist/models/authors/entry.d.ts +20 -0
  52. package/dist/models/authors/entry.js +73 -0
  53. package/dist/models/authors/entry.js.map +1 -0
  54. package/dist/models/authors/file.d.ts +9 -0
  55. package/dist/models/authors/file.js +19 -0
  56. package/dist/models/authors/file.js.map +1 -0
  57. package/dist/models/craftbook/class.d.ts +10 -0
  58. package/dist/models/craftbook/class.js +13 -0
  59. package/dist/models/craftbook/class.js.map +1 -0
  60. package/dist/models/devarmory/class.d.ts +11 -0
  61. package/dist/models/devarmory/class.js +8 -0
  62. package/dist/models/devarmory/class.js.map +1 -0
  63. package/dist/models/devlog/class.d.ts +19 -0
  64. package/dist/models/devlog/class.js +61 -0
  65. package/dist/models/devlog/class.js.map +1 -0
  66. package/dist/models/forge/class.d.ts +9 -0
  67. package/dist/models/forge/class.js +24 -0
  68. package/dist/models/forge/class.js.map +1 -0
  69. package/dist/models/loop/class.d.ts +16 -0
  70. package/dist/models/loop/class.js +56 -0
  71. package/dist/models/loop/class.js.map +1 -0
  72. package/dist/models/loop/data.d.ts +12 -0
  73. package/dist/models/loop/data.js +20 -0
  74. package/dist/models/loop/data.js.map +1 -0
  75. package/dist/models/loop/load.d.ts +5 -0
  76. package/dist/models/loop/load.js +14 -0
  77. package/dist/models/loop/load.js.map +1 -0
  78. package/dist/models/project/anatomy.d.ts +2 -0
  79. package/dist/models/project/anatomy.js +15 -0
  80. package/dist/models/project/anatomy.js.map +1 -0
  81. package/dist/models/project/around.d.ts +3 -0
  82. package/dist/models/project/around.js +13 -0
  83. package/dist/models/project/around.js.map +1 -0
  84. package/dist/models/project/class.d.ts +21 -0
  85. package/dist/models/project/class.js +23 -0
  86. package/dist/models/project/class.js.map +1 -0
  87. package/dist/models/project/git.d.ts +8 -0
  88. package/dist/models/project/git.js +26 -0
  89. package/dist/models/project/git.js.map +1 -0
  90. package/dist/models/project/version.d.ts +6 -0
  91. package/dist/models/project/version.js +23 -0
  92. package/dist/models/project/version.js.map +1 -0
  93. package/dist/models/scope/class.d.ts +21 -0
  94. package/dist/models/scope/class.js +49 -0
  95. package/dist/models/scope/class.js.map +1 -0
  96. package/dist/models/settings/data.d.ts +12 -0
  97. package/dist/models/settings/data.js +9 -0
  98. package/dist/models/settings/data.js.map +1 -0
  99. package/dist/models/settings/load.d.ts +9 -0
  100. package/dist/models/settings/load.js +32 -0
  101. package/dist/models/settings/load.js.map +1 -0
  102. package/dist/models/system/class.d.ts +16 -0
  103. package/dist/models/system/class.js +21 -0
  104. package/dist/models/system/class.js.map +1 -0
  105. package/dist/models/system/parts.d.ts +21 -0
  106. package/dist/models/system/parts.js +22 -0
  107. package/dist/models/system/parts.js.map +1 -0
  108. package/dist/models/system/storylines.d.ts +39 -0
  109. package/dist/models/system/storylines.js +42 -0
  110. package/dist/models/system/storylines.js.map +1 -0
  111. package/dist/models/workshop/class.d.ts +20 -0
  112. package/dist/models/workshop/class.js +43 -0
  113. package/dist/models/workshop/class.js.map +1 -0
  114. package/dist/models/workshop/locate.d.ts +16 -0
  115. package/dist/models/workshop/locate.js +54 -0
  116. package/dist/models/workshop/locate.js.map +1 -0
  117. package/dist/procedures/_index.d.ts +8 -0
  118. package/dist/procedures/_index.js +11 -0
  119. package/dist/procedures/_index.js.map +1 -0
  120. package/dist/procedures/automerging/_index.d.ts +4 -0
  121. package/dist/procedures/automerging/_index.js +8 -0
  122. package/dist/procedures/automerging/_index.js.map +1 -0
  123. package/dist/procedures/automerging/context.d.ts +11 -0
  124. package/dist/procedures/automerging/context.js +2 -0
  125. package/dist/procedures/automerging/context.js.map +1 -0
  126. package/dist/procedures/automerging/steps.d.ts +4 -0
  127. package/dist/procedures/automerging/steps.js +34 -0
  128. package/dist/procedures/automerging/steps.js.map +1 -0
  129. package/dist/procedures/bootstrapping/_index.d.ts +4 -0
  130. package/dist/procedures/bootstrapping/_index.js +8 -0
  131. package/dist/procedures/bootstrapping/_index.js.map +1 -0
  132. package/dist/procedures/bootstrapping/context.d.ts +5 -0
  133. package/dist/procedures/bootstrapping/context.js +2 -0
  134. package/dist/procedures/bootstrapping/context.js.map +1 -0
  135. package/dist/procedures/bootstrapping/ensure-tree.d.ts +2 -0
  136. package/dist/procedures/bootstrapping/ensure-tree.js +5 -0
  137. package/dist/procedures/bootstrapping/ensure-tree.js.map +1 -0
  138. package/dist/procedures/bootstrapping/record.d.ts +2 -0
  139. package/dist/procedures/bootstrapping/record.js +12 -0
  140. package/dist/procedures/bootstrapping/record.js.map +1 -0
  141. package/dist/procedures/bumping/_index.d.ts +4 -0
  142. package/dist/procedures/bumping/_index.js +9 -0
  143. package/dist/procedures/bumping/_index.js.map +1 -0
  144. package/dist/procedures/bumping/context.d.ts +18 -0
  145. package/dist/procedures/bumping/context.js +4 -0
  146. package/dist/procedures/bumping/context.js.map +1 -0
  147. package/dist/procedures/bumping/steps.d.ts +4 -0
  148. package/dist/procedures/bumping/steps.js +50 -0
  149. package/dist/procedures/bumping/steps.js.map +1 -0
  150. package/dist/procedures/crediting/_index.d.ts +4 -0
  151. package/dist/procedures/crediting/_index.js +9 -0
  152. package/dist/procedures/crediting/_index.js.map +1 -0
  153. package/dist/procedures/crediting/context.d.ts +17 -0
  154. package/dist/procedures/crediting/context.js +4 -0
  155. package/dist/procedures/crediting/context.js.map +1 -0
  156. package/dist/procedures/crediting/steps.d.ts +4 -0
  157. package/dist/procedures/crediting/steps.js +51 -0
  158. package/dist/procedures/crediting/steps.js.map +1 -0
  159. package/dist/procedures/inspecting/_index.d.ts +4 -0
  160. package/dist/procedures/inspecting/_index.js +11 -0
  161. package/dist/procedures/inspecting/_index.js.map +1 -0
  162. package/dist/procedures/inspecting/judge.d.ts +2 -0
  163. package/dist/procedures/inspecting/judge.js +6 -0
  164. package/dist/procedures/inspecting/judge.js.map +1 -0
  165. package/dist/procedures/inspecting/read-areas.d.ts +2 -0
  166. package/dist/procedures/inspecting/read-areas.js +5 -0
  167. package/dist/procedures/inspecting/read-areas.js.map +1 -0
  168. package/dist/procedures/inspecting/read-forge.d.ts +2 -0
  169. package/dist/procedures/inspecting/read-forge.js +14 -0
  170. package/dist/procedures/inspecting/read-forge.js.map +1 -0
  171. package/dist/procedures/inspecting/report.d.ts +32 -0
  172. package/dist/procedures/inspecting/report.js +11 -0
  173. package/dist/procedures/inspecting/report.js.map +1 -0
  174. package/dist/procedures/inspecting/rules.d.ts +12 -0
  175. package/dist/procedures/inspecting/rules.js +75 -0
  176. package/dist/procedures/inspecting/rules.js.map +1 -0
  177. package/dist/procedures/proposing/_index.d.ts +4 -0
  178. package/dist/procedures/proposing/_index.js +9 -0
  179. package/dist/procedures/proposing/_index.js.map +1 -0
  180. package/dist/procedures/proposing/context.d.ts +16 -0
  181. package/dist/procedures/proposing/context.js +4 -0
  182. package/dist/procedures/proposing/context.js.map +1 -0
  183. package/dist/procedures/proposing/steps.d.ts +4 -0
  184. package/dist/procedures/proposing/steps.js +46 -0
  185. package/dist/procedures/proposing/steps.js.map +1 -0
  186. package/dist/procedures/versioning/_index.d.ts +16 -0
  187. package/dist/procedures/versioning/_index.js +22 -0
  188. package/dist/procedures/versioning/_index.js.map +1 -0
  189. package/dist/procedures/watching/_index.d.ts +5 -0
  190. package/dist/procedures/watching/_index.js +9 -0
  191. package/dist/procedures/watching/_index.js.map +1 -0
  192. package/dist/procedures/watching/classify.d.ts +5 -0
  193. package/dist/procedures/watching/classify.js +30 -0
  194. package/dist/procedures/watching/classify.js.map +1 -0
  195. package/dist/procedures/watching/context.d.ts +21 -0
  196. package/dist/procedures/watching/context.js +2 -0
  197. package/dist/procedures/watching/context.js.map +1 -0
  198. package/dist/procedures/watching/start.d.ts +2 -0
  199. package/dist/procedures/watching/start.js +24 -0
  200. package/dist/procedures/watching/start.js.map +1 -0
  201. package/dist/procedures/watching/wait.d.ts +2 -0
  202. package/dist/procedures/watching/wait.js +12 -0
  203. package/dist/procedures/watching/wait.js.map +1 -0
  204. package/dist/tools/_index.d.ts +3 -0
  205. package/dist/tools/_index.js +25 -0
  206. package/dist/tools/_index.js.map +1 -0
  207. package/dist/tools/devlog.d.ts +1 -0
  208. package/dist/tools/devlog.js +43 -0
  209. package/dist/tools/devlog.js.map +1 -0
  210. package/dist/tools/flow.d.ts +1 -0
  211. package/dist/tools/flow.js +81 -0
  212. package/dist/tools/flow.js.map +1 -0
  213. package/dist/tools/project.d.ts +1 -0
  214. package/dist/tools/project.js +18 -0
  215. package/dist/tools/project.js.map +1 -0
  216. package/dist/tools/scope.d.ts +1 -0
  217. package/dist/tools/scope.js +51 -0
  218. package/dist/tools/scope.js.map +1 -0
  219. package/dist/tools/version.d.ts +1 -0
  220. package/dist/tools/version.js +23 -0
  221. package/dist/tools/version.js.map +1 -0
  222. package/dist/tools/workshop.d.ts +1 -0
  223. package/dist/tools/workshop.js +56 -0
  224. package/dist/tools/workshop.js.map +1 -0
  225. package/dist/views/devlog.d.ts +15 -0
  226. package/dist/views/devlog.js +31 -0
  227. package/dist/views/devlog.js.map +1 -0
  228. package/dist/views/event.d.ts +2 -0
  229. package/dist/views/event.js +6 -0
  230. package/dist/views/event.js.map +1 -0
  231. package/dist/views/flow.d.ts +12 -0
  232. package/dist/views/flow.js +26 -0
  233. package/dist/views/flow.js.map +1 -0
  234. package/dist/views/help.d.ts +2 -0
  235. package/dist/views/help.js +22 -0
  236. package/dist/views/help.js.map +1 -0
  237. package/dist/views/project.d.ts +2 -0
  238. package/dist/views/project.js +11 -0
  239. package/dist/views/project.js.map +1 -0
  240. package/dist/views/status.d.ts +5 -0
  241. package/dist/views/status.js +50 -0
  242. package/dist/views/status.js.map +1 -0
  243. package/package.json +31 -54
  244. package/resources/cli-art/big-logo-title.txt +24 -0
  245. package/resources/cli-art/big-shortcut-logo-title.txt +10 -0
  246. package/resources/cli-art/medium-logo-title.txt +13 -0
  247. package/resources/cli-art/minimenu-header.ptxml +13 -0
  248. package/resources/cli-art/minimenu-header.txt +11 -0
  249. package/resources/cli-art/small-logo-title.txt +10 -0
  250. package/resources/cli-art/wellcome.txt +10 -0
  251. package/resources/docs-templates/Home.md +7 -0
  252. package/resources/docs-templates/README.md +14 -0
  253. package/resources/docs-templates/_Footer.md +1 -0
  254. package/resources/docs-templates/_Sidebar.md +7 -0
  255. package/.claude-plugin/marketplace.json +0 -17
  256. package/.claude-plugin/mcp.json +0 -8
  257. package/.claude-plugin/plugin.json +0 -16
  258. package/AGENTS.md +0 -114
  259. package/CLAUDE.md +0 -1
  260. package/bin/bos +0 -3
  261. package/hooks/hooks.json +0 -40
  262. package/resources/house/HOUSE.md +0 -22
  263. package/resources/house/bloodlines.json +0 -35
  264. package/resources/house/children/deepseeks-of-anubis.json +0 -4
  265. package/resources/house/children/eon.json +0 -7
  266. package/resources/house/children/hermetic-officer.json +0 -1
  267. package/resources/house/children/ifrit.json +0 -1
  268. package/resources/house/children/license-keepers.json +0 -4
  269. package/resources/house/children/sebas.json +0 -10
  270. package/resources/house/children/shakespeare.json +0 -10
  271. package/resources/house/orders/ravensarmy.json +0 -6
  272. package/resources/house/orders/seiaic-ucdi.json +0 -5
  273. package/resources/ravens/skryba.md +0 -19
  274. package/resources/workshop-root/AGENTS.md +0 -92
  275. package/resources/workshop-root/CLAUDE.md +0 -1
  276. package/resources/workshop.default.json +0 -6
  277. package/skills/bos-archive/SKILL.md +0 -28
  278. package/skills/bos-craftbook/SKILL.md +0 -32
  279. package/skills/bos-craftset/SKILL.md +0 -36
  280. package/skills/bos-devarmory/SKILL.md +0 -34
  281. package/skills/bos-exhibit/SKILL.md +0 -28
  282. package/skills/bos-forge/SKILL.md +0 -28
  283. package/skills/bos-house/SKILL.md +0 -52
  284. package/skills/bos-project/SKILL.md +0 -27
  285. package/skills/bos-sarcophag/SKILL.md +0 -26
  286. package/skills/bos-scope/SKILL.md +0 -33
  287. package/skills/bos-sheme/SKILL.md +0 -38
  288. package/skills/bos-throwbox/SKILL.md +0 -27
  289. package/skills/bos-workshop/SKILL.md +0 -65
  290. package/skills/bos-workshop/assets/.gitkeep +0 -0
  291. package/skills/bos-workshop/references/bos-codebase.md +0 -116
  292. package/skills/bos-workshop/references/bos-concept.md +0 -121
  293. package/skills/bos-workshop/scripts/find-workshop.sh +0 -30
  294. package/src/agent-hook.mjs +0 -28
  295. package/src/bridge/_index.mjs +0 -24
  296. package/src/bridge/bos-instances-link/_index.mjs +0 -18
  297. package/src/bridge/docker-host/_index.mjs +0 -43
  298. package/src/bridge/docker-host/container.mjs +0 -32
  299. package/src/bridge/docker-host/image.mjs +0 -23
  300. package/src/bridge/docker-host/volume.mjs +0 -12
  301. package/src/bridge/docker-publish/_index.mjs +0 -24
  302. package/src/bridge/git-client/_index.mjs +0 -121
  303. package/src/bridge/git-client/author.mjs +0 -26
  304. package/src/bridge/gitea-api/_index.mjs +0 -62
  305. package/src/bridge/github-api/_index.mjs +0 -45
  306. package/src/bridge/npm-publish/_index.mjs +0 -19
  307. package/src/bridge/ollama-link/_index.mjs +0 -93
  308. package/src/bridge/ollama-link/ravens.mjs +0 -29
  309. package/src/bridge/ssh-link/_index.mjs +0 -33
  310. package/src/bridge/subprocess-runner/_index.mjs +0 -33
  311. package/src/cli.mjs +0 -29
  312. package/src/commands/_index.mjs +0 -51
  313. package/src/commands/bootstrap/exec.mjs +0 -7
  314. package/src/commands/bootstrap/help.md +0 -5
  315. package/src/commands/bootstrap/index.json +0 -7
  316. package/src/commands/close/exec.mjs +0 -4
  317. package/src/commands/close/help.md +0 -5
  318. package/src/commands/close/index.json +0 -7
  319. package/src/commands/describe/exec.mjs +0 -11
  320. package/src/commands/describe/help.md +0 -5
  321. package/src/commands/describe/index.json +0 -7
  322. package/src/commands/help/exec.mjs +0 -6
  323. package/src/commands/help/help.md +0 -3
  324. package/src/commands/help/index.json +0 -6
  325. package/src/commands/hook/exec.mjs +0 -3
  326. package/src/commands/hook/help.md +0 -4
  327. package/src/commands/hook/index.json +0 -7
  328. package/src/commands/hooks/exec.mjs +0 -5
  329. package/src/commands/hooks/help.md +0 -4
  330. package/src/commands/hooks/index.json +0 -7
  331. package/src/commands/house/exec.mjs +0 -8
  332. package/src/commands/house/help.md +0 -8
  333. package/src/commands/house/index.json +0 -7
  334. package/src/commands/locate/exec.mjs +0 -2
  335. package/src/commands/locate/help.md +0 -6
  336. package/src/commands/locate/index.json +0 -6
  337. package/src/commands/mode/exec.mjs +0 -17
  338. package/src/commands/mode/help.md +0 -14
  339. package/src/commands/mode/index.json +0 -8
  340. package/src/commands/mode/repl.mjs +0 -18
  341. package/src/commands/open/exec.mjs +0 -5
  342. package/src/commands/open/help.md +0 -4
  343. package/src/commands/open/index.json +0 -7
  344. package/src/commands/promote/exec.mjs +0 -5
  345. package/src/commands/promote/help.md +0 -6
  346. package/src/commands/promote/index.json +0 -7
  347. package/src/commands/repl/exec.mjs +0 -3
  348. package/src/commands/repl/help.md +0 -4
  349. package/src/commands/repl/index.json +0 -6
  350. package/src/commands/seal/exec.mjs +0 -8
  351. package/src/commands/seal/help.md +0 -4
  352. package/src/commands/seal/index.json +0 -7
  353. package/src/commands/sink/exec.mjs +0 -2
  354. package/src/commands/sink/help.md +0 -6
  355. package/src/commands/sink/index.json +0 -7
  356. package/src/commands/skills/exec.mjs +0 -5
  357. package/src/commands/skills/help.md +0 -5
  358. package/src/commands/skills/index.json +0 -7
  359. package/src/commands/status/exec.mjs +0 -2
  360. package/src/commands/status/help.md +0 -6
  361. package/src/commands/status/index.json +0 -7
  362. package/src/commands/status/repl.mjs +0 -14
  363. package/src/commands/verify/exec.mjs +0 -9
  364. package/src/commands/verify/help.md +0 -4
  365. package/src/commands/verify/index.json +0 -7
  366. package/src/controllers/_index.mjs +0 -5
  367. package/src/controllers/skills-controll.mjs +0 -13
  368. package/src/controllers/workshop-controll.mjs +0 -48
  369. package/src/core/basic-bridge.mjs +0 -29
  370. package/src/core/basic-controll.mjs +0 -26
  371. package/src/core/basic-element.mjs +0 -149
  372. package/src/core/basic-model.mjs +0 -7
  373. package/src/core/basic-procedure.mjs +0 -37
  374. package/src/core/basic-submodule.mjs +0 -21
  375. package/src/core/basic-view.mjs +0 -21
  376. package/src/core/self.mjs +0 -10
  377. package/src/index.mjs +0 -24
  378. package/src/main.ts +0 -82
  379. package/src/mcp.mjs +0 -8
  380. package/src/models/_index.mjs +0 -43
  381. package/src/models/archive/class.mjs +0 -9
  382. package/src/models/craftbook/class.mjs +0 -11
  383. package/src/models/craftbook/hang.scrapnotes.mjs +0 -10
  384. package/src/models/craftset/class.mjs +0 -14
  385. package/src/models/devarmory/class.mjs +0 -10
  386. package/src/models/exhibit/class.mjs +0 -8
  387. package/src/models/forge/class.mjs +0 -19
  388. package/src/models/house/bloodlines.mjs +0 -27
  389. package/src/models/house/class.mjs +0 -53
  390. package/src/models/house/groups.mjs +0 -38
  391. package/src/models/project/anatomy.mjs +0 -11
  392. package/src/models/project/class.mjs +0 -20
  393. package/src/models/sarcophag/class.mjs +0 -8
  394. package/src/models/scope/class.mjs +0 -19
  395. package/src/models/sheme/class.mjs +0 -8
  396. package/src/models/throwbox/class.mjs +0 -9
  397. package/src/models/workshop/class.mjs +0 -30
  398. package/src/models/workshop/hang.data.mjs +0 -10
  399. package/src/models/workshop/hang.nests.mjs +0 -14
  400. package/src/models/workshop/hang.setup.mjs +0 -10
  401. package/src/models/workshop/hang.storylines.logs.mjs +0 -10
  402. package/src/models/workshop/hang.storylines.manifests.mjs +0 -10
  403. package/src/models/workshop/hang.storylines.mjs +0 -39
  404. package/src/models/workshop/hang.storylines.ttystories.mjs +0 -10
  405. package/src/models/workshop/hang.system.mjs +0 -25
  406. package/src/models/workshop/host-roles.mjs +0 -9
  407. package/src/models/workshop/locate.mjs +0 -60
  408. package/src/models/workshop/modes.mjs +0 -31
  409. package/src/models/workshop/taskfile.mjs +0 -21
  410. package/src/procedures/_index.mjs +0 -32
  411. package/src/procedures/agent-recording/_index.mjs +0 -34
  412. package/src/procedures/agent-recording/situate.mjs +0 -11
  413. package/src/procedures/bootstrapping/DESCRIPTION.md +0 -6
  414. package/src/procedures/bootstrapping/_index.mjs +0 -13
  415. package/src/procedures/bootstrapping/deploy-guides.mjs +0 -15
  416. package/src/procedures/bootstrapping/ensure-tree.mjs +0 -4
  417. package/src/procedures/closing/DESCRIPTION.md +0 -6
  418. package/src/procedures/closing/_index.mjs +0 -11
  419. package/src/procedures/closing/capture-ttystory.mjs +0 -14
  420. package/src/procedures/closing/record-closing.mjs +0 -6
  421. package/src/procedures/describing/DESCRIPTION.md +0 -23
  422. package/src/procedures/describing/_index.mjs +0 -15
  423. package/src/procedures/describing/ask-skryba.mjs +0 -82
  424. package/src/procedures/describing/compose-message.mjs +0 -25
  425. package/src/procedures/describing/read-staged.mjs +0 -7
  426. package/src/procedures/describing/scopes.mjs +0 -38
  427. package/src/procedures/describing/staged-diff.mjs +0 -25
  428. package/src/procedures/describing/write-message.mjs +0 -15
  429. package/src/procedures/gathering/DESCRIPTION.md +0 -13
  430. package/src/procedures/gathering/_index.mjs +0 -13
  431. package/src/procedures/gathering/list-served.mjs +0 -9
  432. package/src/procedures/gathering/merge-residents.mjs +0 -31
  433. package/src/procedures/gathering/read-registry.mjs +0 -7
  434. package/src/procedures/hooking/DESCRIPTION.md +0 -6
  435. package/src/procedures/hooking/_index.mjs +0 -12
  436. package/src/procedures/hooking/hooks.mjs +0 -10
  437. package/src/procedures/hooking/install-hooks.mjs +0 -34
  438. package/src/procedures/hooking/record-hook.mjs +0 -13
  439. package/src/procedures/inspecting/DESCRIPTION.md +0 -3
  440. package/src/procedures/inspecting/_index.mjs +0 -9
  441. package/src/procedures/loading/DESCRIPTION.md +0 -4
  442. package/src/procedures/loading/_index.mjs +0 -15
  443. package/src/procedures/loading/load-config.mjs +0 -16
  444. package/src/procedures/loading/validate-mode.mjs +0 -8
  445. package/src/procedures/loading/validate-role.mjs +0 -8
  446. package/src/procedures/locating/DESCRIPTION.md +0 -6
  447. package/src/procedures/locating/_index.mjs +0 -13
  448. package/src/procedures/locating/locate-self.mjs +0 -7
  449. package/src/procedures/locating/locate-workshop.mjs +0 -16
  450. package/src/procedures/locating/read-environment.mjs +0 -12
  451. package/src/procedures/mode-switching/DESCRIPTION.md +0 -7
  452. package/src/procedures/mode-switching/_index.mjs +0 -10
  453. package/src/procedures/mode-switching/record-mode.mjs +0 -8
  454. package/src/procedures/mode-switching/switch-mode.mjs +0 -16
  455. package/src/procedures/opening/DESCRIPTION.md +0 -6
  456. package/src/procedures/opening/_index.mjs +0 -8
  457. package/src/procedures/opening/record-opening.mjs +0 -4
  458. package/src/procedures/promoting/DESCRIPTION.md +0 -8
  459. package/src/procedures/promoting/_index.mjs +0 -14
  460. package/src/procedures/promoting/apply.mjs +0 -28
  461. package/src/procedures/promoting/branch-flow.mjs +0 -23
  462. package/src/procedures/promoting/plan.mjs +0 -14
  463. package/src/procedures/promoting/read-position.mjs +0 -15
  464. package/src/procedures/sinking/DESCRIPTION.md +0 -8
  465. package/src/procedures/sinking/_index.mjs +0 -12
  466. package/src/procedures/sinking/inventory-forge.mjs +0 -18
  467. package/src/procedures/sinking/inventory-tools.mjs +0 -7
  468. package/src/procedures/skilling/DESCRIPTION.md +0 -11
  469. package/src/procedures/skilling/_index.mjs +0 -15
  470. package/src/procedures/skilling/collect-models.mjs +0 -15
  471. package/src/procedures/skilling/compose-skill.mjs +0 -49
  472. package/src/procedures/skilling/glossary.mjs +0 -23
  473. package/src/procedures/skilling/register-skills.mjs +0 -21
  474. package/src/procedures/skilling/write-skills.mjs +0 -19
  475. package/src/views/_index.mjs +0 -23
  476. package/src/views/agent/_index.mjs +0 -2
  477. package/src/views/agent/brief.mjs +0 -34
  478. package/src/views/help/_index.mjs +0 -41
  479. package/src/views/house/_index.mjs +0 -56
  480. package/src/views/inventory/_index.mjs +0 -27
  481. package/src/views/mcp/_index.mjs +0 -31
  482. package/src/views/mcp/tools.mjs +0 -87
  483. package/src/views/mode/_index.mjs +0 -34
  484. package/src/views/mode/chooser.mjs +0 -37
  485. package/src/views/promotion/_index.mjs +0 -20
  486. package/src/views/repl/_index.mjs +0 -30
  487. package/src/views/skills/_index.mjs +0 -24
  488. package/src/views/status/_index.mjs +0 -57
  489. package/src/views/status/tree.mjs +0 -19
  490. package/src/views/terminal/paint.mjs +0 -22
  491. package/template/SKILL.md +0 -16
@@ -1,5 +0,0 @@
1
- # close
2
-
3
- `bos close` copies the shell history to
4
- `.BOS/storylines/ttystories/ttystory-<host>-<unixusat>.txt` and records the
5
- closing. Run `history -a` first so the current shell is included.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/close",
3
- "info": "keep shell history as a ttystory, record the closing",
4
- "mode": "conform",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,11 +0,0 @@
1
- export default async ({ bos, operands: [file, source], flags }) => {
2
- const context = await bos.workshop.describe({
3
- ...(flags.hook ? { file, source } : {}),
4
- ...(flags.skryba === "0" || flags.plain ? { skryba: false } : {}),
5
- });
6
- if (flags.hook) {
7
- return undefined;
8
- }
9
- const note = context.skryba && !context.skryba.used ? `\n# Skryba: ${context.skryba.reason}` : "";
10
- return (context.message ?? "nothing staged") + note;
11
- };
@@ -1,5 +0,0 @@
1
- # describe
2
-
3
- `bos describe` prints a conventional-commit draft of what is staged.
4
- `bos describe --hook <file> [source]` is what husky's `prepare-commit-msg`
5
- calls: it writes the draft into the commit message file of a plain `git commit`.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/describe",
3
- "info": "draft a conventional commit message from the staged changes",
4
- "mode": "smeltry",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,6 +0,0 @@
1
- export default ({ bos, operands: [name], flags }) => {
2
- const view = new bos.views.HelpView();
3
- const state = { commands: bos.commands, command: name, help: name && bos.commands[name]?.help() };
4
- if (name && !bos.commands[name]) throw new Error(`unknown command "${name}"`);
5
- return view.render(state, flags.json ? "json" : "text");
6
- };
@@ -1,3 +0,0 @@
1
- # help
2
-
3
- `bos help` lists every command. `bos help <command>` shows its help.
@@ -1,6 +0,0 @@
1
- {
2
- "path": "/help",
3
- "info": "list commands, or show the help of one",
4
- "help": ["./help.md", "MD"],
5
- "inline": "./exec.mjs"
6
- }
@@ -1,3 +0,0 @@
1
- export default async ({ bos, operands: [name] }) => {
2
- await bos.workshop.hook(name);
3
- };
@@ -1,4 +0,0 @@
1
- # hook
2
-
3
- `bos hook <name>` is called by git hooks. It records the event, and the
4
- repository's place in the workshop, in storylines.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/hook",
3
- "info": "(called by git) record a hook in storylines",
4
- "mode": "smeltry",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,5 +0,0 @@
1
- export default async ({ bos, operands: [action] }) => {
2
- if (action !== "install") throw new Error("usage: bos hooks install");
3
- const context = await bos.workshop.installHooks();
4
- return { installed: context.changes, skipped: context.skipped };
5
- };
@@ -1,4 +0,0 @@
1
- # hooks
2
-
3
- `bos hooks install`, inside a git repository, links its `post-commit`,
4
- `post-checkout` and `post-merge` hooks to BOS. Existing hooks are left alone.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/hooks",
3
- "info": "link this repository's git hooks to BOS",
4
- "mode": "smeltry",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,8 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.HouseView().render(
3
- {
4
- ...(await bos.workshop.gather()),
5
- options: { all: Boolean(flags.all) },
6
- },
7
- flags.json ? "json" : "text",
8
- );
@@ -1,8 +0,0 @@
1
- # house
2
-
3
- `bos house [--all]` shows the House of Anubis: each family of
4
- `resources/house/families/` with its state (active, resting, frozen), its
5
- residents, their duties, and whether ollama serves them now. `--all` also
6
- lists the served models no family claims yet.
7
-
8
- Only model names are read from ollama; no resident is started or prompted.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/house",
3
- "info": "the House of Anubis: families, residents, states, duties",
4
- "mode": "provision",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,2 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.StatusView().render(await bos.workshop.locate(), flags.json ? "json" : "text");
@@ -1,6 +0,0 @@
1
- # locate
2
-
3
- `bos locate` prints the active workshop and the rule that found it:
4
- `--workshop`, then `$BOS_WORKSHOP`, the nearest parent `__WORKSHOP`, the
5
- workshop BOS is installed in, and `~/__WORKSHOP`. Also shows where BOS itself
6
- sits, e.g. `forge / blacksmith-organization-system / bos-skillset`.
@@ -1,6 +0,0 @@
1
- {
2
- "path": "/locate",
3
- "info": "active workshop, how it was found, where BOS sits",
4
- "help": ["./help.md", "MD"],
5
- "inline": "./exec.mjs"
6
- }
@@ -1,17 +0,0 @@
1
- import { modeByDigit } from "../../models/workshop/modes.mjs";
2
-
3
- export default async ({ bos, operands: [asked], flags }) => {
4
- const view = new bos.views.ModeView();
5
- const format = flags.json ? "json" : "text";
6
-
7
- if (asked === undefined) {
8
- const { config } = await bos.workshop.status();
9
- const digit = await bos.views.chooseDigit(`${view.menu(config.mode)}choose 0-5: `, 5);
10
- if (digit === 0) {
11
- return undefined;
12
- }
13
- asked = modeByDigit(digit);
14
- }
15
-
16
- return view.render(await bos.workshop.mode(asked), format);
17
- };
@@ -1,14 +0,0 @@
1
- # mode
2
-
3
- `bos mode <name|digit>` switches the mode of work of this workshop.
4
- `bos mode` shows the menu and waits for one digit (no Enter needed); `0` leaves it.
5
-
6
- | digit | mode | covers |
7
- | ----- | ---- | ------ |
8
- | 1 | ALMANAC | emergency protocols: sinking |
9
- | 2 | CONFORM | establishing the workshop, migrations, cleaning, verifying, syncing between fortified workshops |
10
- | 3 | SMELTRY | code, development, active editing, publishing changes |
11
- | 4 | COMMANDORATE | rulesets, privileges, roles, switching modes |
12
- | 5 | PROVISION | presenting what a source of truth delivers, e.g. a repository on GitHub |
13
-
14
- The mode is kept in `.BOS/workshop.json`, and every switch is recorded in storylines.
@@ -1,8 +0,0 @@
1
- {
2
- "path": "/mode",
3
- "info": "show or switch the mode of work (1-5), or choose it by one digit",
4
- "mode": "commandorate",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs",
7
- "repl": "./repl.mjs"
8
- }
@@ -1,18 +0,0 @@
1
- import { modeByDigit } from "../../models/workshop/modes.mjs";
2
-
3
- // inside `bos repl` the prompt owns the input, so the digit is confirmed with Enter
4
- export default async ({ bos, operands: [asked], io }) => {
5
- const view = new bos.views.ModeView();
6
-
7
- if (asked === undefined) {
8
- const { config } = await bos.workshop.status();
9
- console.log(view.menu(config.mode));
10
- const digit = Number((await io.question("choose 0-5: ")).trim()[0]);
11
- if (!digit || digit > 5) {
12
- return undefined;
13
- }
14
- asked = modeByDigit(digit);
15
- }
16
-
17
- return view.text(await bos.workshop.mode(asked));
18
- };
@@ -1,5 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.StatusView().render(
3
- await bos.workshop.open({ dryRun: Boolean(flags.dryRun) }),
4
- flags.json ? "json" : "text",
5
- );
@@ -1,4 +0,0 @@
1
- # open
2
-
3
- `bos open [--dry-run]` runs bootstrap, then records the opening in
4
- `.BOS/storylines/logs/workshop.jsonl`.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/open",
3
- "info": "bootstrap, then record the opening",
4
- "mode": "conform",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,5 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.PromotionView().render(
3
- await bos.workshop.promote({ reject: Boolean(flags.reject), apply: Boolean(flags.apply) }),
4
- flags.json ? "json" : "text",
5
- );
@@ -1,6 +0,0 @@
1
- # promote
2
-
3
- `bos promote [--reject] [--apply]` moves the current branch one station:
4
- `master → developement → revision → testing → releasing → master`.
5
- `--reject` sends work back to `developement`. Without `--apply` it only shows
6
- the plan. `releasing → master` opens a GitHub pull request (needs `$GITHUB_TOKEN`).
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/promote",
3
- "info": "move the current branch one station along the flow",
4
- "mode": "smeltry",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,3 +0,0 @@
1
- export default async ({ bos }) => {
2
- await bos.views.startRepl(bos);
3
- };
@@ -1,4 +0,0 @@
1
- # repl
2
-
3
- `bos repl` gives an interactive prompt: type any command without `bos`, and
4
- `exit` to leave.
@@ -1,6 +0,0 @@
1
- {
2
- "path": "/repl",
3
- "info": "interactive BOS: every command at a prompt",
4
- "help": ["./help.md", "MD"],
5
- "inline": "./exec.mjs"
6
- }
@@ -1,8 +0,0 @@
1
- import { resolve } from "node:path";
2
-
3
- import { BOS } from "../../main.ts";
4
-
5
- export default ({ operands: [dir = "."], flags }) => {
6
- const manifest = new BOS.Model(resolve(dir)).seal({ dryRun: Boolean(flags.dryRun) });
7
- return flags.json ? manifest : `sealed ${Object.keys(manifest.files).length} files`;
8
- };
@@ -1,4 +0,0 @@
1
- # seal
2
-
3
- `bos seal <dir>` records a sha256 of every file in `<dir>` into its manifest
4
- (`manifest.json` or `.manifest.json`).
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/seal",
3
- "info": "write checksums of a directory into its manifest",
4
- "mode": "conform",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,2 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.InventoryView().render(await bos.workshop.sink(), flags.json ? "json" : "text");
@@ -1,6 +0,0 @@
1
- # sink
2
-
3
- `bos sink` is the first, read-only part of the sinking protocol. It lists
4
- every forge project with its branch and uncommitted changes, and the
5
- ttystories that show which tools were used. See
6
- `src/procedures/sinking/DESCRIPTION.md`.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/sink",
3
- "info": "inventory of what must be rescued from this workstation",
4
- "mode": "almanac",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,5 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.SkillsView().render(
3
- await bos.skills.scaffold({ dryRun: Boolean(flags.dryRun) }),
4
- flags.json ? "json" : "text",
5
- );
@@ -1,5 +0,0 @@
1
- # skills
2
-
3
- `bos skills [--dry-run]` drafts `skills/bos-<type>/SKILL.md` for every model
4
- that has no skill yet, using its glossary page and model class, and registers
5
- it in `.claude-plugin/marketplace.json`. Existing skills are never overwritten.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/skills",
3
- "info": "draft an agent skill for every model that has none",
4
- "mode": "smeltry",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,2 +0,0 @@
1
- export default async ({ bos, flags }) =>
2
- new bos.views.StatusView().render(await bos.workshop.status(), flags.json ? "json" : "text");
@@ -1,6 +0,0 @@
1
- # status
2
-
3
- `bos status` draws the workshop tree: **ok**, **missing** (mandatory but
4
- absent) or **not yet** (appears with use). Read-only.
5
-
6
- In `bos repl`, `status` also offers to create what is missing.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/status",
3
- "info": "workshop tree and what is missing (read-only)",
4
- "help": ["./help.md", "MD"],
5
- "inline": "./exec.mjs",
6
- "repl": "./repl.mjs"
7
- }
@@ -1,14 +0,0 @@
1
- // status, then offer to create what is missing
2
- import { paint } from "../../views/terminal/paint.mjs";
3
-
4
- const missing = (node) => [...(!node.exists && node.mandatory ? [node.path] : []), ...node.children.flatMap(missing)];
5
-
6
- export default async ({ bos, io }) => {
7
- const context = await bos.workshop.status();
8
- console.log(new bos.views.StatusView().text(context));
9
- const absent = missing(context.tree);
10
- if (!absent.length) return paint.green("\nnothing missing");
11
- const answer = await io.question(`\n${absent.length} missing: create them now? [y/N] `);
12
- if (!/^y(es)?$/i.test(answer.trim())) return paint.dim("left as it is");
13
- return new bos.views.StatusView().text(await bos.workshop.bootstrap());
14
- };
@@ -1,9 +0,0 @@
1
- import { resolve } from "node:path";
2
-
3
- import { BOS } from "../../main.ts";
4
-
5
- export default ({ operands: [dir = "."] }) => {
6
- const result = new BOS.Model(resolve(dir)).verify();
7
- if (!result.ok) process.exitCode = 1;
8
- return result;
9
- };
@@ -1,4 +0,0 @@
1
- # verify
2
-
3
- `bos verify <dir>` compares `<dir>` with its manifest and lists missing,
4
- changed and unlisted files. Exits with 1 when something is missing or changed.
@@ -1,7 +0,0 @@
1
- {
2
- "path": "/verify",
3
- "info": "compare a directory with its manifest",
4
- "mode": "conform",
5
- "help": ["./help.md", "MD"],
6
- "inline": "./exec.mjs"
7
- }
@@ -1,5 +0,0 @@
1
- // Every controller: simplified management built from procedures.
2
- import SkillsControll from "./skills-controll.mjs";
3
- import WorkshopControll from "./workshop-controll.mjs";
4
-
5
- export default { WorkshopControll, SkillsControll };
@@ -1,13 +0,0 @@
1
- // Agent skills of this repository, one per model.
2
- import { BOS } from "../main.ts";
3
- import procedures from "../procedures/_index.mjs";
4
-
5
- export class SkillsControll extends BOS.Controll {
6
- static flows = procedures;
7
-
8
- scaffold(options) {
9
- return this.run("skilling", options);
10
- }
11
- }
12
-
13
- export default SkillsControll;
@@ -1,48 +0,0 @@
1
- // The workshop as a handful of plain methods; each one runs a procedure.
2
- // const workshop = new WorkshopControll({ workshop: "/tmp/x/__WORKSHOP" });
3
- // await workshop.open();
4
- import { BOS } from "../main.ts";
5
- import procedures from "../procedures/_index.mjs";
6
-
7
- export class WorkshopControll extends BOS.Controll {
8
- static flows = procedures;
9
-
10
- locate() {
11
- return this.run("locating");
12
- }
13
- status() {
14
- return this.run("inspecting");
15
- }
16
- bootstrap(options) {
17
- return this.run("bootstrapping", options);
18
- }
19
- open(options) {
20
- return this.run("opening", options);
21
- }
22
- close(options) {
23
- return this.run("closing", options);
24
- }
25
- sink() {
26
- return this.run("sinking");
27
- }
28
- hook(hook) {
29
- return this.run("hooking", { hook });
30
- }
31
- installHooks() {
32
- return this.run("installingHooks");
33
- }
34
- gather(options) {
35
- return this.run("gathering", options);
36
- }
37
- describe(options) {
38
- return this.run("describing", options);
39
- }
40
- mode(mode) {
41
- return this.run("modeSwitching", { mode });
42
- }
43
- promote({ reject = false, apply = false } = {}) {
44
- return this.run("promoting", { reject, dryRun: !apply });
45
- }
46
- }
47
-
48
- export default WorkshopControll;
@@ -1,29 +0,0 @@
1
- // A bridge shapes one outside system (docker host, github, git, a subprocess…)
2
- // into a few plain methods. The SDK client is created lazily, on first use.
3
-
4
- export class BasicBridge {
5
- static id = "bridge";
6
-
7
- constructor(options = {}) {
8
- this.options = options;
9
- }
10
-
11
- get client() {
12
- this._client ??= this.connect();
13
- return this._client;
14
- }
15
-
16
- // create the SDK client (dockerode, octokit, …); null when the bridge needs none
17
- connect() {
18
- return null;
19
- }
20
-
21
- // can this bridge be used on this machine right now?
22
- async available() {
23
- return true;
24
- }
25
-
26
- toString() {
27
- return `[<BOS.Bridge::${this.constructor.id}>]`;
28
- }
29
- }
@@ -1,26 +0,0 @@
1
- // A controll owns a set of logicflows and runs them with a prepared context.
2
- import { EventEmitter } from "node:events";
3
-
4
- export class BasicControll extends EventEmitter {
5
- static flows = {};
6
-
7
- constructor(options = {}) {
8
- super();
9
- this.options = options;
10
- }
11
-
12
- get flowNames() {
13
- return Object.keys(this.constructor.flows);
14
- }
15
-
16
- async run(flowName, options = {}) {
17
- const flow = this.constructor.flows[flowName];
18
- if (!flow) throw new Error(`unknown logicflow "${flowName}" (known: ${this.flowNames.join(", ")})`);
19
- const merged = { ...this.options, ...options };
20
- const context = { options: merged, dryRun: Boolean(merged.dryRun), changes: [], trace: [] };
21
- this.emit("start", flowName, context);
22
- await flow.run(context);
23
- this.emit("done", flowName, context);
24
- return context;
25
- }
26
- }