@chorus-aidlc/chorus 0.16.1 → 0.16.2

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 (386) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +373 -372
  3. package/.next/standalone/.next/app-path-routes-manifest.json +41 -41
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +42 -42
  6. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +1 -1
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  46. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  50. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  51. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
  54. package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
  55. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies.html +2 -2
  57. package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
  58. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/admin.html +2 -2
  60. package/.next/standalone/.next/server/app/admin.rsc +2 -2
  61. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  69. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  83. package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon/control/route.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
  96. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js +1 -1
  99. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/daemon/resume/route.js +1 -1
  102. package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
  105. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
  108. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js.nft.json +1 -1
  111. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js.nft.json +1 -1
  113. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
  115. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
  118. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
  119. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  121. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  124. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
  125. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  127. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
  128. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  131. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
  132. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
  134. package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
  135. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/events/route.js +1 -1
  137. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  138. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  144. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  147. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  150. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  153. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  156. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
  161. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  163. package/.next/standalone/.next/server/app/api/mcp/route.js +2 -2
  164. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  167. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  170. package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  173. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  175. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  176. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  178. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  179. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  181. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  182. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  185. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  187. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  188. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  190. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  191. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  193. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
  194. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
  196. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  197. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js.nft.json +1 -1
  198. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
  199. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  200. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  202. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  203. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  205. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  207. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  208. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  211. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
  214. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  216. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  217. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  218. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  219. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  220. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  221. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  222. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  223. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  224. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -1
  226. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  229. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  230. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  231. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  232. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  233. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  235. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  236. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  237. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  238. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  241. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  243. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  244. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  246. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  247. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  248. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  249. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  250. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  252. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  253. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  254. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  255. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  256. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  257. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  258. package/.next/standalone/.next/server/app/index.html +2 -2
  259. package/.next/standalone/.next/server/app/index.rsc +2 -2
  260. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  261. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  262. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  263. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  264. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  265. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  266. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  267. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  268. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  269. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  270. package/.next/standalone/.next/server/app/login.html +2 -2
  271. package/.next/standalone/.next/server/app/login.rsc +2 -2
  272. package/.next/standalone/.next/server/app/onboarding/page.js +1 -1
  273. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  274. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  275. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  276. package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
  277. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  278. package/.next/standalone/.next/server/app/projects.html +2 -2
  279. package/.next/standalone/.next/server/app/projects.rsc +3 -3
  280. package/.next/standalone/.next/server/app/settings.html +2 -2
  281. package/.next/standalone/.next/server/app/settings.rsc +4 -4
  282. package/.next/standalone/.next/server/app-paths-manifest.json +41 -41
  283. package/.next/standalone/.next/server/chunks/2572.js +1 -1
  284. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  285. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  286. package/.next/standalone/.next/server/chunks/3594.js +1 -1
  287. package/.next/standalone/.next/server/chunks/{2547.js → 4011.js} +3 -3
  288. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  289. package/.next/standalone/.next/server/chunks/5205.js +1 -0
  290. package/.next/standalone/.next/server/chunks/5245.js +1 -1
  291. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  292. package/.next/standalone/.next/server/chunks/6506.js +3 -3
  293. package/.next/standalone/.next/server/chunks/6515.js +2 -2
  294. package/.next/standalone/.next/server/chunks/6995.js +1 -1
  295. package/.next/standalone/.next/server/chunks/7364.js +1 -1
  296. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  297. package/.next/standalone/.next/server/chunks/7530.js +1 -1
  298. package/.next/standalone/.next/server/chunks/8454.js +1 -1
  299. package/.next/standalone/.next/server/chunks/920.js +1 -1
  300. package/.next/standalone/.next/server/chunks/9213.js +1 -1
  301. package/.next/standalone/.next/server/chunks/9378.js +1 -1
  302. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  303. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  304. package/.next/standalone/.next/server/pages/404.html +2 -2
  305. package/.next/standalone/.next/server/pages/500.html +1 -1
  306. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  307. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  308. package/.next/standalone/.next/static/chunks/{11595.1bcd2b65089007ae.js → 11595.b6f8ad33572b32fe.js} +1 -1
  309. package/.next/standalone/.next/static/chunks/19887-9f459ee9e8d0855f.js +1 -0
  310. package/.next/standalone/.next/static/chunks/{29108-e171d8b8c680cbb5.js → 29108-b9b232255811ffa8.js} +1 -1
  311. package/.next/standalone/.next/static/chunks/{31308-bb4a97b3f39c22dd.js → 31308-fda6febfb2882a28.js} +1 -1
  312. package/.next/standalone/.next/static/chunks/{33456.c98d3e21528b61d8.js → 33456.e8550ad410031e29.js} +1 -1
  313. package/.next/standalone/.next/static/chunks/35432-ee83da56c49ef6f8.js +1 -0
  314. package/.next/standalone/.next/static/chunks/{4860.9122a86d33dc6b62.js → 4860.b405fc235b36271b.js} +1 -1
  315. package/.next/standalone/.next/static/chunks/66980-652990fcf3212c94.js +10 -0
  316. package/.next/standalone/.next/static/chunks/{94643-90a9ec7b9a9abaf0.js → 94643-6d31df78aa3074b5.js} +1 -1
  317. package/.next/standalone/.next/static/chunks/96170-75da13decdb6f73f.js +1 -0
  318. package/.next/standalone/.next/static/chunks/{99373.585230dcb315a068.js → 99373.9dce8f30802824fc.js} +1 -1
  319. package/.next/standalone/.next/static/chunks/app/(dashboard)/{layout-3d3b3b9e16c03cda.js → layout-cea0bb3e3a295bea.js} +1 -1
  320. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/{page-69d746c98079024d.js → page-007278623926490f.js} +1 -1
  321. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/{page-2af705f6c3789131.js → page-b6ecaf52f6b81ec7.js} +1 -1
  322. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/{page-8119df915138a9c3.js → page-f5a351c544ed23d7.js} +1 -1
  323. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-3cd46bec9383b191.js +1 -0
  324. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-0789c6589363154c.js → page-7f87113e5d8bcf6e.js} +1 -1
  325. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-a612f6fc5be0239d.js → page-30ab1573c4bd466f.js} +1 -1
  326. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/{page-5fb9fd3db155d5ca.js → page-b21d4184d9ca0b25.js} +1 -1
  327. package/.next/standalone/.next/static/chunks/app/onboarding/page-3b6c54f887108635.js +1 -0
  328. package/.next/standalone/.next/static/chunks/{webpack-dec1f54ebb9bf963.js → webpack-b54e0c78eded76be.js} +1 -1
  329. package/.next/standalone/.next/static/css/893d99a21153c9b0.css +1 -0
  330. package/.next/standalone/package.json +1 -1
  331. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  332. package/.next/standalone/public/chorus-plugin/agents/code-reviewer.md +1 -1
  333. package/.next/standalone/public/chorus-plugin/agents/proposal-reviewer.md +1 -0
  334. package/.next/standalone/public/chorus-plugin/agents/task-reviewer.md +2 -0
  335. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  336. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +3 -3
  337. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  338. package/.next/standalone/public/chorus-plugin/skills/docs/SKILL.md +1 -1
  339. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  340. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  341. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  342. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  343. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  344. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
  345. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-code-reviewer.json +1 -1
  346. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-proposal-reviewer.json +1 -1
  347. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-task-reviewer.json +1 -1
  348. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
  349. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
  350. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/SKILL.md +1 -1
  351. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
  352. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
  353. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
  354. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  355. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  356. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +1 -1
  357. package/.next/standalone/public/kiro-plugin/.kiro/steering/chorus.md +2 -2
  358. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  359. package/.next/standalone/public/skill/chorus/SKILL.md +2 -2
  360. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +2 -2
  361. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +2 -1
  362. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +2 -1
  363. package/README.ja.md +26 -346
  364. package/README.ko.md +28 -347
  365. package/README.md +33 -353
  366. package/README.zh.md +31 -328
  367. package/cli/control-handler.mjs +13 -3
  368. package/cli/daemon-rest-client.mjs +11 -3
  369. package/cli/daemon.mjs +52 -10
  370. package/cli/event-router.mjs +17 -5
  371. package/cli/prompts.mjs +116 -1
  372. package/cli/turn-reporter.mjs +5 -1
  373. package/cli/wake-queue.mjs +57 -35
  374. package/cli/waker.mjs +125 -36
  375. package/package.json +1 -1
  376. package/prisma/migrations/20260814101500_add_typed_assignment_provenance/migration.sql +2 -0
  377. package/prisma/schema.prisma +4 -2
  378. package/.next/standalone/.next/server/chunks/1114.js +0 -1
  379. package/.next/standalone/.next/static/chunks/19887-4d76db57a7ce4437.js +0 -1
  380. package/.next/standalone/.next/static/chunks/4340-a33120fb742af57e.js +0 -1
  381. package/.next/standalone/.next/static/chunks/94426-39b6da238425f9b7.js +0 -10
  382. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-f619bd65e1eed8c9.js +0 -1
  383. package/.next/standalone/.next/static/chunks/app/onboarding/page-e85315278aafc300.js +0 -1
  384. package/.next/standalone/.next/static/css/67fba0943f494f0e.css +0 -1
  385. /package/.next/standalone/.next/static/{H92ZuhpmDWcL3WOfYRc-- → YTZwWTfE0BsJnjCDYCEHi}/_buildManifest.js +0 -0
  386. /package/.next/standalone/.next/static/{H92ZuhpmDWcL3WOfYRc-- → YTZwWTfE0BsJnjCDYCEHi}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
  <img src="packages/landing/public/images/chorus-slug.png" alt="Chorus" width="240" />
3
3
  </p>
4
4
 
5
- <p align="center"><strong>The Agent Harness for AI-Human Collaboration</strong></p>
5
+ <p align="center"><strong>The harness for your coding agents. Agents propose, humans verify, software ships.</strong></p>
6
6
 
7
7
  <p align="center">
8
8
  <a href="https://discord.gg/SwcCMaMmR">
@@ -17,7 +17,7 @@
17
17
 
18
18
  <p align="center"><a href="https://doc.chorus-ai.dev"><strong>📖 Documentation</strong></a></p>
19
19
 
20
- Chorus is an agent harness the infrastructure that wraps around LLM agents to manage session lifecycle, task state, sub-agent orchestration, observability, and failure recovery. It lets multiple AI Agents (with fine-grained, configurable permissions) and humans collaborate through the full workflow from requirements to delivery.
20
+ Chorus is the harness for your coding agents. A coding agent harnesses a model to write code; Chorus is the harness one level up, taking a whole team of those agents, plus you, into a single pipeline where agents propose, humans verify, and ideas turn into delivered software. Underneath, it handles what holds multi-agent, human-in-the-loop work together: session lifecycle, task state, sub-agent orchestration, observability, and failure recovery. Every AI Agent gets fine-grained, configurable permissions.
21
21
 
22
22
  Inspired by the **[AI-DLC (AI-Driven Development Lifecycle)](https://aws.amazon.com/blogs/devops/ai-driven-development-life-cycle/)** methodology. Core philosophy: **Reversed Conversation** — AI proposes, humans verify.
23
23
 
@@ -32,7 +32,7 @@ Human idea:write proposal:write task:write *:admin *:admin
32
32
  creates + elaborate + drafts + reports + verifies + closes
33
33
  ```
34
34
 
35
- The labels under each stage are the **permissions** an actor needs at that stage — granted to a human, an Agent (preset or Custom), or both. There are no fixed roles; any combination of the 5 × 3 permission matrix is possible. See [`docs/PERMISSIONS.md`](docs/PERMISSIONS.md).
35
+ The labels under each stage are the **permissions** an actor needs there — granted to a human, an Agent, or both. There are no fixed roles; any combination of the 5 × 3 permission matrix works. [Agent permissions](https://doc.chorus-ai.dev/guides/manage-agents/)
36
36
 
37
37
  ---
38
38
 
@@ -54,251 +54,58 @@ The labels under each stage are the **permissions** an actor needs at that stage
54
54
 
55
55
  ## Quick Start
56
56
 
57
- Run Chorus locally with two commands no database, no Docker, no config files needed.
57
+ Two commands. No database, no Docker, no config files.
58
58
 
59
59
  ```bash
60
60
  npm install -g @chorus-aidlc/chorus
61
61
  chorus
62
62
  ```
63
63
 
64
- That's it. Chorus starts with an embedded PostgreSQL (PGlite), runs migrations automatically, and opens at **http://localhost:8637**.
64
+ Chorus starts with an embedded PostgreSQL (PGlite), runs migrations, and opens at **http://localhost:8637**. Default login: `admin@chorus.local` / `chorus`.
65
65
 
66
- > **Note:** PGlite is an embedded, single-process PostgreSQL — great for local single-user usage, but its connection handling has limits under concurrent load. If you plan to run multiple agents or users simultaneously, use an external PostgreSQL via `DATABASE_URL=postgresql://...` or the full [Docker Compose](#quick-start-with-docker-recommended) stack.
66
+ > Running multiple agents or deploying to production? Use an external PostgreSQL, Docker, or AWS **[Deploy & self-host](https://doc.chorus-ai.dev/guides/deployment-overview/)**.
67
67
 
68
- Default login: `admin@chorus.local` / `chorus`
69
-
70
- ### Options
71
-
72
- ```bash
73
- # Custom port
74
- chorus --port 3000
75
-
76
- # Custom data directory (default: ~/.chorus-data)
77
- chorus --data-dir /path/to/data
78
-
79
- # Custom credentials
80
- DEFAULT_USER=me@example.com DEFAULT_PASSWORD=secret chorus
81
-
82
- # Use an external PostgreSQL instead of embedded PGlite
83
- DATABASE_URL=postgresql://user:pass@host:5432/chorus chorus
84
- ```
85
-
86
- ### Other deployment options
87
-
88
- | Method | Command |
89
- |--------|---------|
90
- | **npm** (simplest) | `npm i -g @chorus-aidlc/chorus && chorus` |
91
- | **Docker (standalone)** | [`docker compose -f docker-compose.local.yml up`](#quick-start-with-docker-recommended) |
92
- | **Docker (full stack)** | [`docker compose up`](#quick-start-with-docker-recommended) (PostgreSQL + Redis + Chorus) |
93
- | **AWS CDK** | [Deploy to AWS](#deploy-to-aws) |
94
-
95
- ### `chorus daemon` — Connect as Agent Runtime
96
-
97
- The `chorus daemon` connects your local machine to a remote Chorus server as an agent runtime and executes tasks assigned by Chorus.
98
-
99
- > **Agent backends:** **Claude Code** (default) and **Codex** are supported — select with `--agent codex` (or `CHORUS_AGENT=codex`). Support for other agent CLIs (Copilot, etc.) is planned for future releases.
100
-
101
- ```bash
102
- chorus login # Authenticate (opens browser)
103
- chorus daemon # Start daemon in foreground
104
- chorus daemon -d # Start daemon in background (detached)
105
- chorus daemon install # Install as a boot-autostart service (Linux) — recommended
106
- chorus daemon uninstall # Remove the installed service
107
- chorus daemon stop # Stop the daemon (delegates to systemd when installed)
108
- chorus daemon stop --force # Force-clean the pidfile if a stuck pid blocks stop
109
- chorus daemon status # Check daemon status
110
- chorus daemon restart # Restart the daemon
111
- chorus daemon logs # View daemon logs
112
- ```
113
-
114
- **Key features:**
115
-
116
- - **Claude Code & Codex backends** — Auto-detects the `claude` (or `codex`) CLI on your PATH; pick with `--agent codex`
117
- - **Background mode** — Run with `-d` flag; manage with `stop/restart/logs`
118
- - **Boot-autostart service** — `chorus daemon install` generates a correct `systemd --user` unit and starts it (see below); `status/stop/restart/logs` then transparently delegate to systemd
119
- - **Permission modes** — Default is full access (yolo); use `--chorus-only` to restrict to Chorus MCP tools only
120
- - **Multi-path** — Serve several working directories from one daemon with repeatable `--cwd` (see below)
121
- - **Interactive setup** — Prompts for credentials on first start if not already configured
122
-
123
- The daemon requires authentication. Run `chorus login` first, or it will prompt for credentials interactively on first start (if running in a terminal).
124
-
125
- #### Run at boot / login — `chorus daemon install`
126
-
127
- ```bash
128
- chorus daemon install --cwd ~/work/repo-a --cwd ~/work/repo-b # install + start now, autostart at login
129
- chorus daemon uninstall # disable + remove the service
130
- ```
131
-
132
- On Linux, `install` generates a `systemd --user` unit that runs the daemon in the **foreground** (`Type=simple`, no `-d`) so systemd owns the process directly, then `daemon-reload` + `enable --now`. It captures the `--cwd`/`--agent`/`--chorus-only` flags you pass. Do **not** hand-write a `Type=forking` unit around `chorus daemon -d` — the daemon self-daemonizes, which systemd can't track and which loops on restart; let `install` write the right unit. On macOS/Windows, `install` prints a correct template you install manually. Run `chorus login` first so the unit can see your credentials. See [docs/DAEMON.md](docs/DAEMON.md) for details.
133
-
134
- #### Serve multiple working directories
135
-
136
- One daemon can serve several local working directories at once — each declared path registers as an independent connection (its own session + wake loop) under the same agent. A path is **just** a directory the daemon serves; it carries no project binding.
137
-
138
- ```bash
139
- chorus daemon --cwd ~/work/repo-a --cwd ~/work/repo-b # repeatable flag
140
- CHORUS_DAEMON_CWDS="~/work/repo-a:~/work/repo-b" chorus daemon # or env (`:`- or `,`-separated)
141
- ```
142
-
143
- With no `--cwd`, the daemon serves the single directory it was launched from.
144
-
145
- #### Configuration file — `~/.chorus/daemon.json`
146
-
147
- `chorus login` writes credentials here (mode `0600`). You can also add daemon tunables to the **same** file. Every field is optional; flags and environment variables always take precedence over the file.
148
-
149
- ```json
150
- {
151
- "url": "https://chorus.example.com",
152
- "apiKey": "cho_xxxxxxxxxxxxxxxxxxxxxxxx",
153
- "agentUuid": "00000000-0000-0000-0000-000000000000",
154
- "agentName": "My Daemon Agent",
155
- "cwds": ["~/work/repo-a", "~/work/repo-b"],
156
- "agent": "codex",
157
- "sigintTimeoutMs": 10000
158
- }
159
- ```
160
-
161
- | Field | Type | Written by / used for | Precedence (highest first) |
162
- |-------|------|-----------------------|----------------------------|
163
- | `url` | string | Remote Chorus server URL | `--url` flag → `CHORUS_URL` → file |
164
- | `apiKey` | string | Agent API key (`cho_…`) | `--api-key` flag → `CHORUS_API_KEY` → file |
165
- | `agentUuid` / `agentName` | string | Authenticated identity (recorded at login) | written by `chorus login` |
166
- | `cwds` | string[] | Working directories the daemon serves (multi-path) | `--cwd` flag(s) → `CHORUS_DAEMON_CWDS` → file → launch dir |
167
- | `browseRoots` | string[] | Roots allowed for project and temporary directory browsing | `--browse-root` flag(s) → `CHORUS_DAEMON_BROWSE_ROOTS` → file → user home |
168
- | `agent` | string | Local agent backend to wake (`claude-code` / `codex` / `kiro`) | `--agent` flag → `CHORUS_AGENT` → file → `claude-code` |
169
- | `sigintTimeoutMs` | number | Grace window (ms) after SIGINT before a forceful kill (default `10000`) | `--sigint-timeout` flag → `CHORUS_DAEMON_SIGINT_TIMEOUT` → file → `10000` |
170
- | `yoloAckAt` | string | Internal — timestamp of a TTY yolo confirmation (managed automatically) | — |
171
-
172
- On startup the daemon banner prints the **exact `daemon.json` path it read** (and whether the file exists), so you always know which file to edit.
68
+ To turn your local machine into an agent runtime that picks up assigned tasks, run `chorus daemon` → **[Daemon operations](https://doc.chorus-ai.dev/guides/daemon-operations/)** · **[Remote control](https://doc.chorus-ai.dev/guides/remote-control/)**.
173
69
 
174
70
  ---
175
71
 
176
- ## Screenshots
72
+ ## See It in Action
177
73
 
178
- ### Remote Agent Wake — Dispatch to a Directory, Watch It Run
74
+ ### Remote Agent Wake — dispatch to a directory, watch it run
179
75
 
180
76
  ![Remote Agent Wake](packages/landing/public/images/agent-daemon-wake.gif)
181
77
 
182
- Assign an idea to a specific directory on a remote agent, then open the conversation and watch the local Claude Code pick up the work and run in real time — no terminal, no manual resume.
78
+ Assign an idea to a directory on a remote agent, then open the conversation and watch the local Claude Code pick up the work and run in real time — no terminal, no manual resume.
183
79
 
184
- ### Project Resource Graph — The Whole Project as a Live Mind-Map
80
+ ### Project Resource Graph — the whole project as a live mind-map
185
81
 
186
82
  ![Project Resource Graph](packages/landing/public/images/mind-map.png)
187
83
 
188
- Chorus auto-organizes the entire project into a mind-map — Ideas, Proposals, Documents, and Tasks laid out as one connected tree — and reflects what the agents are doing in real time, with each card's status updating live as work progresses.
84
+ Ideas, Proposals, Documents, and Tasks laid out as one connected tree, with each card's status updating live as the agents work.
189
85
 
190
- ### Proposal — AI Agent Generates Plans in Real Time
86
+ ### Proposal — AI generates plans in real time
191
87
 
192
88
  ![Proposal Presence](packages/landing/public/images/proposal-presence.gif)
193
89
 
194
- Watch a PM Agent analyze requirements and generate a proposal with PRD and task DAG with real-time presence indicators showing agent activity.
195
-
196
- ### Pixel Workspace — Real-time Agent Status
90
+ A PM Agent analyzes requirements and generates a PRD plus a task DAG, with live presence indicators showing agent activity.
197
91
 
198
- ![Pixel Workspace](docs/images/pixcel-workspace-new.gif)
199
-
200
- The left panel is a pixel workspace where pixel characters represent each Agent's real-time working status; the right panel shows live Agent terminal output.
201
-
202
- ### Kanban — Real-time Task Flow
92
+ ### Kanban — real-time task flow
203
93
 
204
94
  ![Kanban Presence](packages/landing/public/images/kanban-presence.gif)
205
95
 
206
- The Kanban board updates automatically as Agents work, with task cards flowing between To Do → In Progress → To Verify in real time. Agent presence indicators highlight which resources are being worked on.
207
-
208
- ### Kanban & Task DAG
209
-
210
- ![Kanban & Task DAG](packages/landing/public/images/kanban-dag.png)
211
-
212
- Kanban board for task status tracking alongside a dependency DAG showing execution order and parallel paths.
213
-
214
- ### Idea & Requirements Elaboration
215
-
216
- ![Idea & Elaboration](packages/landing/public/images/idea-elaborate.png)
217
-
218
- PM Agents clarify requirements through structured Q&A rounds before creating Proposals. The panel shows idea details alongside completed elaboration rounds with answers and category tags.
219
-
220
- ### Proposal Review
221
-
222
- ![Proposal Review](packages/landing/public/images/proposal.png)
223
-
224
- Proposals generated by the PM Agent contain document drafts and task DAG drafts. Admins review and approve or reject on this panel.
225
-
226
- ### Acceptance Criteria — Dual-Path Verification
227
-
228
- ![Acceptance Criteria](packages/landing/public/images/task-ac.png)
229
-
230
- Dev Agent self-checks and Admin reviews each acceptance criterion independently, with structured pass/fail evidence for every item.
231
-
232
- ### Universal Search — Cmd+K Command Palette
233
-
234
- ![Universal Search](packages/landing/public/images/universal-search.png)
235
-
236
- A Cmd+K command palette for searching across all 6 entity types (Tasks, Ideas, Proposals, Documents, Projects, Project Groups). Supports scope filtering (Global / Group / Project), filter tabs per entity type, and keyboard navigation. Both the Web UI and AI agents (via `chorus_search` MCP tool) share the same search backend.
96
+ Task cards flow between To Do → In Progress → To Verify as agents work, with presence indicators on whatever is being touched.
237
97
 
238
98
  ---
239
99
 
240
- ## Features
241
-
242
- - **Session Lifecycle** — Persistent sessions with heartbeats, auto-expiry, and failure recovery
243
- - **Task DAG** — Dependency modeling, cycle detection, and interactive visualization
244
- - **Kanban** — Real-time task flow with Worker badges and agent presence
245
- - **Multi-Agent Collaboration** — Claude Code Agent Teams (Swarm Mode) for parallel execution
246
- - **Fine-Grained Agent Permissions** — 5 resources × 3 actions grid with preset + custom combinations ([details](docs/PERMISSIONS.md))
247
- - **Chorus Plugin** — Lifecycle hooks automate session create/close, heartbeats, and context injection
248
- - **Requirements Elaboration** — Structured Q&A rounds before proposal creation
249
- - **Proposal Approval Flow** — PM drafts, Admin approves, drafts materialize into real entities
250
- - **Notifications** — In-app + SSE push + Redis Pub/Sub with per-user preferences ([design doc](src/app/api/notifications/README.md))
251
- - **@Mention** — Tiptap autocomplete, permission-scoped search, mention notifications ([design doc](src/app/api/mentionables/README.md))
252
- - **Activity Stream** — Full audit trail with session attribution
253
- - **Universal Search** — Cmd+K across 6 entity types, 3 scope levels, snippet generation ([design doc](docs/SEARCH.md))
254
- ---
100
+ ## Connect an Agent
255
101
 
256
- ## Architecture
102
+ The fastest path is the in-app wizard: open **Settings → Setup Guide**. It creates the API key and shows the exact commands for your client — Claude Code, Codex, Kiro, OpenCode, OpenClaw, Pi, or any MCP-compatible agent.
257
103
 
258
- ```
259
- ┌──────────────────────────────────────────────────────────────────┐
260
- │ Chorus — Agent Harness (:8637) │
261
- │ │
262
- │ ┌── Harness Capabilities ───────────────────────────────────┐ │
263
- │ │ Session Lifecycle │ Task State Machine │ Context Inject │ │
264
- │ │ Sub-Agent Orchestration │ Observability │ Failure Recovery│ │
265
- │ └───────────────────────────────────────────────────────────┘ │
266
- │ │
267
- │ ┌── Chorus Plugin (lifecycle hooks) ────────────────────────┐ │
268
- │ │ SubagentStart/Stop │ Heartbeat │ Skill & Context Inject │ │
269
- │ └───────────────────────────────────────────────────────────┘ │
270
- │ │
271
- │ ┌── API Layer ──────────────────────────────────────────────┐ │
272
- │ │ /api/mcp — MCP Streaming (50+ tools, permission-gated) │ │
273
- │ │ /api/* — REST API (Web UI + SSE push) │ │
274
- │ └───────────────────────────────────────────────────────────┘ │
275
- │ │
276
- │ ┌── Service Layer ──────────────────────────────────────────┐ │
277
- │ │ AI-DLC Workflow │ UUID-first │ Multi-tenant │ │
278
- │ └───────────────────────────────────────────────────────────┘ │
279
- │ │
280
- │ ┌── Web UI (React 19 + Tailwind + shadcn/ui) ──────────────┐ │
281
- │ │ Kanban │ Task DAG │ Proposals │ Activity │ Sessions │ │
282
- │ └───────────────────────────────────────────────────────────┘ │
283
- └──────────────────────────────────────────────────────────────────┘
284
- ↑ ↑ ↑ ↑
285
- Agent w/ Agent w/ Agent w/ Human
286
- idea+proposal task:write *:admin perms (Browser)
287
- :write perms perms (proxy approval)
288
- (LLM) (LLM) (LLM)
289
-
290
- ┌──────────▼──────────┐ ┌─────────────────────┐
291
- │ PostgreSQL + Prisma │ │ Redis (optional) │
292
- └─────────────────────┘ │ Pub/Sub for SSE │
293
- └─────────────────────┘
294
- ```
104
+ Full per-client guides → **[Agent platforms](https://doc.chorus-ai.dev/reference/agents/)**.
295
105
 
296
- ### Packages
106
+ API keys are created under **Settings → Agents → Create API Key**. They start with `cho_` and are shown only once.
297
107
 
298
- | Package | Description |
299
- |---------|-------------|
300
- | [`packages/openclaw-plugin`](packages/openclaw-plugin) | **OpenClaw Plugin** — Connects [OpenClaw](https://openclaw.ai) to Chorus via persistent SSE + MCP bridge. |
301
- | [`packages/chorus-cdk`](packages/chorus-cdk) | **AWS CDK** — Infrastructure-as-code for deploying Chorus to AWS. |
108
+ ---
302
109
 
303
110
  ## Tech Stack
304
111
 
@@ -306,152 +113,25 @@ A Cmd+K command palette for searching across all 6 entity types (Tasks, Ideas, P
306
113
  |-----------|-----------|
307
114
  | Framework | Next.js 15 (App Router, Turbopack) |
308
115
  | Language | TypeScript 5 (strict mode) |
309
- | Frontend | React 19, Tailwind CSS 4, shadcn/ui (Radix UI) |
310
- | ORM | Prisma 7 |
311
- | Database | PostgreSQL 16 |
312
- | Cache/Pub-Sub | Redis 7 (ioredis) — optional |
313
- | Agent Integration | MCP SDK 1.26 (HTTP Streamable Transport) |
116
+ | Frontend | React 19, Tailwind CSS 4, shadcn/ui |
117
+ | Data | PostgreSQL 16 + Prisma 7, Redis 7 (optional) |
118
+ | Agent Integration | MCP SDK (HTTP Streamable Transport) |
314
119
  | Auth | OIDC + PKCE / API Key / SuperAdmin |
315
120
  | i18n | next-intl (en, zh, ko, ja) |
316
- | Deployment | [Docker Hub](https://hub.docker.com/r/chorusaidlc/chorus-app) / Docker Compose / AWS CDK |
317
-
318
- ---
319
-
320
- ## Getting Started
321
-
322
- ### Quick Start with Docker (Recommended)
323
-
324
- No build tools or external databases required. The image bundles [PGlite](https://pglite.dev) (embedded PostgreSQL):
325
-
326
- ```bash
327
- git clone https://github.com/Chorus-AIDLC/chorus.git
328
- cd chorus
329
-
330
- DEFAULT_USER=admin@example.com DEFAULT_PASSWORD=changeme \
331
- docker compose -f docker-compose.local.yml up -d
332
- ```
333
-
334
- Open [http://localhost:8637](http://localhost:8637) and log in with the credentials above.
335
-
336
- > Data is persisted in a Docker volume. The embedded mode is single-instance only (no Redis).
337
-
338
- #### Production Deployment (PostgreSQL + Redis)
339
-
340
- For production with multiple replicas:
341
-
342
- ```bash
343
- DEFAULT_USER=admin@example.com DEFAULT_PASSWORD=changeme \
344
- docker compose up -d
345
- ```
346
-
347
- > See [Docker Documentation](docs/DOCKER.md) for all environment variables and configuration options.
348
-
349
- ---
350
-
351
- ### Local Development
352
-
353
- Prerequisites: Node.js 22+, pnpm 9+, Docker (for PostgreSQL/Redis)
354
-
355
- ```bash
356
- cp .env.example .env
357
- pnpm docker:db
358
- pnpm install
359
- pnpm db:migrate:dev
360
- pnpm dev
361
- # Open http://localhost:8637
362
- ```
363
-
364
- ### Local Development (no Docker)
365
-
366
- Prerequisites: Node.js 22+, pnpm 9+
367
-
368
- ```bash
369
- cp .env.example .env
370
- pnpm install
371
- pnpm dev:local # Dev server on http://localhost:8637
372
- ```
373
-
374
- PGlite runs embedded PostgreSQL on port 5433. Data stored in `.pglite/` — delete to reset.
375
-
376
- ### Deploy to AWS
377
-
378
- ```bash
379
- ./install.sh
380
- ```
381
-
382
- The interactive installer provisions VPC, Aurora Serverless v2, ElastiCache Serverless, ECS Fargate, and ALB with HTTPS. Configuration saved to `default_deploy.sh` for re-deploys.
383
-
384
- ### Connect AI Agents
385
-
386
- The fastest path is the in-app setup wizard: open the Web UI, go to **Settings → Setup Guide → Open setup guide**, and follow the step-by-step instructions for your client (Claude Code, Codex, Kiro, OpenCode, OpenClaw, or other agents). The wizard creates the API key for you, shows the exact commands, and walks through verifying the connection.
387
-
388
- If you'd rather read the full docs:
389
-
390
- | Client | Guide |
391
- |--------|-------|
392
- | Claude Code | [CONNECT_CLAUDE_CODE.md](docs/CONNECT_CLAUDE_CODE.md) |
393
- | Codex CLI | [CONNECT_CODEX.md](docs/CONNECT_CODEX.md) |
394
- | Pi coding agent | [CONNECT_PI.md](docs/CONNECT_PI.md) |
395
- | Kiro CLI | [CONNECT_KIRO.md](docs/CONNECT_KIRO.md) |
396
- | OpenCode † | [CONNECT_OPENCODE.md](docs/CONNECT_OPENCODE.md) |
397
- | Other MCP agents (Cursor, Continue, custom, …) | [CONNECT_OTHER_AGENTS.md](docs/CONNECT_OTHER_AGENTS.md) |
398
-
399
- † OpenCode support is provided by the community-maintained [`opencode-chorus`](https://github.com/etnperlong/opencode-chorus) plugin (npm: [`opencode-chorus`](https://www.npmjs.com/package/opencode-chorus)), authored by [@etnperlong](https://github.com/etnperlong). Thanks!
400
-
401
- Create API Keys in the Web UI under **Settings → Agents → Create API Key**. Keys start with `cho_` and are shown only once.
402
-
403
- ![Create API Key](packages/landing/public/images/create-key.png)
404
-
405
- ---
406
-
407
- ## Skill Documentation
408
-
409
- | Method | Location | Use Case |
410
- |--------|----------|----------|
411
- | **Plugin-embedded (Claude Code)** | `public/chorus-plugin/skills/` | Claude Code + Chorus plugin, automated Sessions and lifecycle hooks |
412
- | **Plugin-embedded (Codex CLI)** | `plugins/chorus/skills/` | Codex CLI + Chorus plugin, ported skills with `$`-prefixed slash commands |
413
- | **Package-embedded (Pi)** | `packages/chorus-pi/skills/` | Pi + Chorus package, automated Sessions and lifecycle hooks |
414
- | **Standalone** | `public/skill/` (served at `/skill/`) | Any other MCP-capable Agent (Cursor, Continue, custom), manual Session management |
415
-
416
- ### OpenSpec mode (opt-in, plugin 0.8.1+)
417
-
418
- PM agents that have the [OpenSpec](https://github.com/Fission-AI/OpenSpec)
419
- CLI installed can author proposals in a structured `proposal.md` +
420
- `design.md` + `specs/<capability>/spec.md` layout. Local files are the
421
- working copy and Chorus `documentDrafts` are the mirror; reviewers see a
422
- predictable shape (`## ADDED Requirements`, `### Requirement:`,
423
- `#### Scenario:`) instead of free-form Markdown. A PostToolUse hook on
424
- `chorus_admin_verify_task` injects an `openspec archive <slug>` reminder
425
- when the last task of an OpenSpec idea is verified, so finalized specs
426
- are merged into the long-term spec set right after sign-off. The mode is
427
- strictly opt-in: when `openspec` is not installed, behavior is unchanged.
428
- Master switch on Claude Code is `enableOpenSpec` (plugin userConfig,
429
- default `true`); both clients also honor `CHORUS_OPENSPEC_MODE=off`. No
430
- new MCP tools or schema changes ship in this mode; the canonical skill
431
- reuses the existing `chorus_pm_*` draft and document tools, with mirror
432
- calls routed through the `chorus-api.sh` wrapper to keep multi-thousand-
433
- line markdown out of LLM context. See
434
- [OPENSPEC_MODE.md](docs/OPENSPEC_MODE.md) for the full guide.
121
+ | Deployment | npm / Docker / AWS CDK |
435
122
 
436
123
  ---
437
124
 
438
125
  ## Documentation
439
126
 
440
- | Document | Description |
441
- |----------|------------|
442
- | [PRD](docs/PRD_Chorus.md) | Product Requirements Document |
443
- | [Architecture](docs/ARCHITECTURE.md) | Technical Architecture Document |
444
- | [MCP Tools](docs/MCP_TOOLS.md) | MCP Tools Reference |
445
- | [Permissions](docs/PERMISSIONS.md) | Agent permission model (5 × 3 matrix, presets, Custom mode) |
446
- | [Chorus Plugin](docs/chorus-plugin.md) | Plugin Design & Hook Documentation |
447
- | [OpenSpec Mode](docs/OPENSPEC_MODE.md) | Opt-in OpenSpec authoring mode for PM agents (Plugin 0.8.1+) |
448
- | [Search](docs/SEARCH.md) | Global Search Technical Design |
449
- | [AI-DLC Gap Analysis](docs/AIDLC_GAP_ANALYSIS.md) | AI-DLC Methodology Gap Analysis |
450
- | [AIG Implementation Plan](docs/CHORUS_AIG_PLAN.md) | Agent transparency roadmap |
451
- | [Presence Design](docs/PRESENCE_DESIGN.md) | Real-time agent presence system |
452
- | [Docker](docs/DOCKER.md) | Docker image usage & deployment |
453
- | [Logging](docs/LOGGING.md) | Structured logging architecture |
454
- | [CLAUDE.md](CLAUDE.md) | Development Guide |
127
+ **📖 Full documentation: [doc.chorus-ai.dev](https://doc.chorus-ai.dev)**
128
+
129
+ - [Getting started](https://doc.chorus-ai.dev/guides/getting-started/)
130
+ - [Connect an agent](https://doc.chorus-ai.dev/reference/agents/)
131
+ - [The AI-DLC workflow](https://doc.chorus-ai.dev/guides/ai-dlc-workflow/)
132
+ - [Plugins & commands](https://doc.chorus-ai.dev/guides/plugin-commands/)
133
+ - [MCP tools reference](https://doc.chorus-ai.dev/reference/mcp-tools/)
134
+ - [Deploy & self-host](https://doc.chorus-ai.dev/guides/deployment-overview/)
455
135
 
456
136
  ---
457
137