agent-backbone 0.2.0__tar.gz → 0.4.0__tar.gz

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 (370) hide show
  1. agent_backbone-0.4.0/PKG-INFO +298 -0
  2. agent_backbone-0.4.0/README.md +257 -0
  3. agent_backbone-0.4.0/USAGE.md +153 -0
  4. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/INDEX.md +20 -4
  5. agent_backbone-0.4.0/docs/api.md +912 -0
  6. agent_backbone-0.4.0/docs/cli-presentation.md +102 -0
  7. agent_backbone-0.4.0/docs/cli.md +899 -0
  8. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/concepts.md +79 -22
  9. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/configuration.md +150 -20
  10. agent_backbone-0.4.0/docs/conversations.md +248 -0
  11. agent_backbone-0.4.0/docs/current-plans.md +169 -0
  12. agent_backbone-0.4.0/docs/deep-reviews.md +299 -0
  13. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/diagnostics.md +96 -16
  14. agent_backbone-0.4.0/docs/documents.md +137 -0
  15. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/getting-started.md +185 -180
  16. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/github-app-setup.md +41 -51
  17. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/github.md +58 -21
  18. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/how-it-works.md +265 -70
  19. agent_backbone-0.4.0/docs/installer-setup.md +210 -0
  20. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/integrations.md +11 -6
  21. agent_backbone-0.4.0/docs/media/banner.png +0 -0
  22. agent_backbone-0.4.0/docs/media/film-overview.jpg +0 -0
  23. agent_backbone-0.4.0/docs/media/film-why-backbone.jpg +0 -0
  24. agent_backbone-0.4.0/docs/media/films.md +26 -0
  25. agent_backbone-0.4.0/docs/owner-confirmed-messages.md +555 -0
  26. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/report-audio.md +3 -1
  27. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/reports.md +7 -7
  28. agent_backbone-0.4.0/docs/responses.md +114 -0
  29. agent_backbone-0.4.0/docs/runtime-capabilities.md +182 -0
  30. agent_backbone-0.4.0/docs/security.md +381 -0
  31. agent_backbone-0.4.0/docs/sheets.md +235 -0
  32. agent_backbone-0.4.0/docs/skills.md +198 -0
  33. agent_backbone-0.4.0/docs/sources.md +149 -0
  34. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/status-and-roadmap.md +40 -32
  35. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/swarms.md +40 -19
  36. agent_backbone-0.4.0/docs/team.md +126 -0
  37. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/telegram.md +32 -36
  38. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/templates.md +58 -14
  39. agent_backbone-0.4.0/docs/token-usage.md +184 -0
  40. agent_backbone-0.4.0/examples/sheets/opportunity-tracker.json +248 -0
  41. agent_backbone-0.4.0/help/agents.md +211 -0
  42. agent_backbone-0.4.0/help/current-plan.md +34 -0
  43. agent_backbone-0.4.0/help/documents.md +36 -0
  44. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/help/github.md +5 -2
  45. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/help/messaging.md +29 -4
  46. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/help/reports.md +1 -1
  47. agent_backbone-0.4.0/help/responses.md +30 -0
  48. agent_backbone-0.4.0/help/reviews.md +63 -0
  49. agent_backbone-0.4.0/help/setup.md +214 -0
  50. agent_backbone-0.4.0/help/sheets.md +34 -0
  51. agent_backbone-0.4.0/help/skills.md +106 -0
  52. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/help/swarms.md +12 -8
  53. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/help/templates.md +7 -2
  54. agent_backbone-0.4.0/help/token-usage.md +28 -0
  55. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/pyproject.toml +33 -7
  56. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/app.py +168 -12
  57. agent_backbone-0.4.0/src/agent_backbone/api/auth.py +102 -0
  58. agent_backbone-0.4.0/src/agent_backbone/api/confirmations.py +136 -0
  59. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/deps.py +5 -0
  60. agent_backbone-0.4.0/src/agent_backbone/api/ingress.py +91 -0
  61. agent_backbone-0.4.0/src/agent_backbone/api/local_transport.py +147 -0
  62. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/models.py +336 -17
  63. agent_backbone-0.4.0/src/agent_backbone/api/observed.py +119 -0
  64. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/agents.py +251 -13
  65. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/config.py +3 -2
  66. agent_backbone-0.4.0/src/agent_backbone/api/routes/conversations.py +447 -0
  67. agent_backbone-0.4.0/src/agent_backbone/api/routes/current_plans.py +120 -0
  68. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/diagnostics.py +6 -0
  69. agent_backbone-0.4.0/src/agent_backbone/api/routes/documents.py +158 -0
  70. agent_backbone-0.4.0/src/agent_backbone/api/routes/fleet.py +98 -0
  71. agent_backbone-0.4.0/src/agent_backbone/api/routes/messages.py +357 -0
  72. agent_backbone-0.4.0/src/agent_backbone/api/routes/onboarding.py +37 -0
  73. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/plans.py +13 -44
  74. agent_backbone-0.4.0/src/agent_backbone/api/routes/policies.py +53 -0
  75. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/reports.py +18 -2
  76. agent_backbone-0.4.0/src/agent_backbone/api/routes/responses.py +111 -0
  77. agent_backbone-0.4.0/src/agent_backbone/api/routes/sheets.py +210 -0
  78. agent_backbone-0.4.0/src/agent_backbone/api/routes/signing.py +287 -0
  79. agent_backbone-0.4.0/src/agent_backbone/api/routes/skills.py +210 -0
  80. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/status.py +11 -1
  81. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/swarms.py +3 -0
  82. agent_backbone-0.4.0/src/agent_backbone/api/routes/usage.py +49 -0
  83. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/webhook.py +3 -0
  84. agent_backbone-0.4.0/src/agent_backbone/api/session_updates.py +186 -0
  85. agent_backbone-0.4.0/src/agent_backbone/api/signed.py +411 -0
  86. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/socketio_server.py +105 -10
  87. agent_backbone-0.4.0/src/agent_backbone/api/validation.py +232 -0
  88. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/__init__.py +270 -11
  89. agent_backbone-0.4.0/src/agent_backbone/cli/_common.py +387 -0
  90. agent_backbone-0.4.0/src/agent_backbone/cli/agents.py +1098 -0
  91. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/completion.py +15 -4
  92. agent_backbone-0.4.0/src/agent_backbone/cli/conversations.py +172 -0
  93. agent_backbone-0.4.0/src/agent_backbone/cli/current_plans.py +167 -0
  94. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/diagnostics.py +104 -44
  95. agent_backbone-0.4.0/src/agent_backbone/cli/documents.py +190 -0
  96. agent_backbone-0.4.0/src/agent_backbone/cli/fleet.py +164 -0
  97. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/instructions.py +85 -43
  98. agent_backbone-0.4.0/src/agent_backbone/cli/onboarding.py +528 -0
  99. agent_backbone-0.4.0/src/agent_backbone/cli/presentation.py +145 -0
  100. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/reports.py +12 -25
  101. agent_backbone-0.4.0/src/agent_backbone/cli/responses.py +190 -0
  102. agent_backbone-0.4.0/src/agent_backbone/cli/server.py +315 -0
  103. agent_backbone-0.4.0/src/agent_backbone/cli/service.py +430 -0
  104. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/setup.py +178 -47
  105. agent_backbone-0.4.0/src/agent_backbone/cli/sheets.py +288 -0
  106. agent_backbone-0.4.0/src/agent_backbone/cli/signing.py +100 -0
  107. agent_backbone-0.4.0/src/agent_backbone/cli/skills.py +340 -0
  108. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/status.py +53 -7
  109. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/swarms.py +40 -18
  110. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/upgrade.py +1 -1
  111. agent_backbone-0.4.0/src/agent_backbone/cli/usage.py +215 -0
  112. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/config.py +397 -16
  113. agent_backbone-0.4.0/src/agent_backbone/fs.py +80 -0
  114. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/git.py +11 -4
  115. agent_backbone-0.4.0/src/agent_backbone/hooks/backbone_state.py +1344 -0
  116. agent_backbone-0.4.0/src/agent_backbone/hooks/chrome_tab_names/background.js +66 -0
  117. agent_backbone-0.4.0/src/agent_backbone/hooks/chrome_tab_names/manifest.json +16 -0
  118. agent_backbone-0.4.0/src/agent_backbone/hooks/chrome_tab_names_host.py +79 -0
  119. agent_backbone-0.4.0/src/agent_backbone/hooks/claude_hook.py +249 -0
  120. agent_backbone-0.4.0/src/agent_backbone/hooks/codex_hook.py +422 -0
  121. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/hooks/install.py +66 -1
  122. agent_backbone-0.4.0/src/agent_backbone/hooks/opencode_hook.js +594 -0
  123. agent_backbone-0.4.0/src/agent_backbone/hooks/opencode_v2_hook.js +140 -0
  124. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/models.py +304 -2
  125. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/recent.py +0 -5
  126. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/__init__.py +17 -1
  127. agent_backbone-0.4.0/src/agent_backbone/services/agents/_file_reader.py +268 -0
  128. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/_inference.py +260 -17
  129. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/_validation.py +14 -0
  130. agent_backbone-0.4.0/src/agent_backbone/services/agents/acknowledgement.py +264 -0
  131. agent_backbone-0.4.0/src/agent_backbone/services/agents/credentials.py +183 -0
  132. agent_backbone-0.4.0/src/agent_backbone/services/agents/fleet.py +312 -0
  133. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/instructions.py +34 -13
  134. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/launch.py +395 -75
  135. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/models.py +9 -2
  136. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/operations.py +126 -14
  137. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/queries.py +50 -6
  138. agent_backbone-0.4.0/src/agent_backbone/services/agents/skills_preview.py +173 -0
  139. agent_backbone-0.4.0/src/agent_backbone/services/agents/store.py +604 -0
  140. agent_backbone-0.4.0/src/agent_backbone/services/agents/transcript.py +282 -0
  141. agent_backbone-0.4.0/src/agent_backbone/services/agents/transitions.py +155 -0
  142. agent_backbone-0.4.0/src/agent_backbone/services/agents/usage.py +526 -0
  143. agent_backbone-0.4.0/src/agent_backbone/services/database/__init__.py +56 -0
  144. agent_backbone-0.4.0/src/agent_backbone/services/database/_acks_repo.py +119 -0
  145. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_agents_repo.py +169 -9
  146. agent_backbone-0.4.0/src/agent_backbone/services/database/_conversation_events.py +40 -0
  147. agent_backbone-0.4.0/src/agent_backbone/services/database/_conversations_repo.py +1201 -0
  148. agent_backbone-0.4.0/src/agent_backbone/services/database/_current_plans_repo.py +333 -0
  149. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_delivery_repo.py +49 -5
  150. agent_backbone-0.4.0/src/agent_backbone/services/database/_dependencies_repo.py +97 -0
  151. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_diagnostics_repo.py +111 -4
  152. agent_backbone-0.4.0/src/agent_backbone/services/database/_documents_repo.py +199 -0
  153. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_events_repo.py +49 -3
  154. agent_backbone-0.4.0/src/agent_backbone/services/database/_fleet_repo.py +106 -0
  155. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_outbox_repo.py +5 -0
  156. agent_backbone-0.4.0/src/agent_backbone/services/database/_plan_conversations.py +190 -0
  157. agent_backbone-0.4.0/src/agent_backbone/services/database/_queue_repo.py +1032 -0
  158. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_reports_repo.py +196 -44
  159. agent_backbone-0.4.0/src/agent_backbone/services/database/_setup_receipts.py +147 -0
  160. agent_backbone-0.4.0/src/agent_backbone/services/database/_sheet_conversations.py +144 -0
  161. agent_backbone-0.4.0/src/agent_backbone/services/database/_sheets_repo.py +439 -0
  162. agent_backbone-0.4.0/src/agent_backbone/services/database/_signing_repo.py +1106 -0
  163. agent_backbone-0.4.0/src/agent_backbone/services/database/_state_history_repo.py +75 -0
  164. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_time.py +12 -0
  165. agent_backbone-0.4.0/src/agent_backbone/services/database/_transitions_repo.py +163 -0
  166. agent_backbone-0.4.0/src/agent_backbone/services/database/_usage_repo.py +270 -0
  167. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/backbone_db.py +57 -0
  168. agent_backbone-0.4.0/src/agent_backbone/services/database/engine.py +80 -0
  169. agent_backbone-0.4.0/src/agent_backbone/services/database/migrations/versions/2026_10_28_be2088e5c4ac_initial_schema.py +1008 -0
  170. agent_backbone-0.4.0/src/agent_backbone/services/database/models.py +985 -0
  171. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/github/interface.py +62 -14
  172. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/_notify.py +1 -1
  173. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_commands.py +99 -8
  174. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_report_delivery.py +73 -42
  175. agent_backbone-0.4.0/src/agent_backbone/services/integrations/telegram/_responses.py +70 -0
  176. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_routing.py +4 -4
  177. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_speech.py +11 -1
  178. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/interface.py +57 -11
  179. agent_backbone-0.4.0/src/agent_backbone/services/jobs/__init__.py +31 -0
  180. agent_backbone-0.4.0/src/agent_backbone/services/jobs/_cursor.py +42 -0
  181. agent_backbone-0.4.0/src/agent_backbone/services/jobs/context_note.py +140 -0
  182. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/diagnostics.py +39 -2
  183. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/escalation.py +173 -22
  184. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/github_poll.py +71 -40
  185. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/monitor.py +89 -30
  186. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/pending.py +74 -37
  187. agent_backbone-0.4.0/src/agent_backbone/services/jobs/resources.py +138 -0
  188. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/retry.py +191 -10
  189. agent_backbone-0.4.0/src/agent_backbone/services/jobs/sources_poll.py +98 -0
  190. agent_backbone-0.4.0/src/agent_backbone/services/jobs/transitions.py +253 -0
  191. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/__init__.py +24 -2
  192. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_delivery.py +363 -59
  193. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_dependencies.py +22 -7
  194. agent_backbone-0.4.0/src/agent_backbone/services/routing/_envelope.py +64 -0
  195. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_format.py +20 -0
  196. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_ingest.py +6 -2
  197. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_intelligence.py +33 -16
  198. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_outbox.py +32 -7
  199. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_resolution.py +12 -5
  200. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_router.py +61 -28
  201. agent_backbone-0.4.0/src/agent_backbone/services/routing/_steer.py +364 -0
  202. agent_backbone-0.4.0/src/agent_backbone/services/routing/_subscriptions.py +149 -0
  203. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_targets.py +13 -3
  204. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_validity.py +30 -0
  205. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/models.py +5 -2
  206. agent_backbone-0.4.0/src/agent_backbone/services/routing/onboarding.py +447 -0
  207. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/__init__.py +41 -2
  208. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/_opencode_launch.py +61 -0
  209. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/_opencode_v2_launch.py +295 -0
  210. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/_pane.py +16 -4
  211. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/_usage.py +90 -0
  212. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/base.py +438 -53
  213. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/capabilities.py +1243 -0
  214. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/claude.py +592 -0
  215. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/codex.py +689 -0
  216. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/deepcode.py +147 -0
  217. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/gemini.py +367 -0
  218. agent_backbone-0.4.0/src/agent_backbone/services/runtimes/opencode.py +547 -0
  219. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/shell.py +1 -0
  220. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/scheduler.py +6 -0
  221. agent_backbone-0.4.0/src/agent_backbone/services/sources/__init__.py +10 -0
  222. agent_backbone-0.4.0/src/agent_backbone/services/sources/_registry.py +56 -0
  223. agent_backbone-0.4.0/src/agent_backbone/services/sources/base.py +65 -0
  224. agent_backbone-0.4.0/src/agent_backbone/services/sources/gmail.py +219 -0
  225. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/swarm/__init__.py +1 -6
  226. agent_backbone-0.4.0/src/agent_backbone/services/swarm/_templates.py +31 -0
  227. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/swarm/_worktree.py +16 -1
  228. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/swarm/interface.py +39 -10
  229. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/terminal/__init__.py +17 -2
  230. agent_backbone-0.4.0/src/agent_backbone/services/terminal/_callers.py +137 -0
  231. agent_backbone-0.4.0/src/agent_backbone/services/terminal/_copy_mode.py +22 -0
  232. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/terminal/_core.py +9 -3
  233. agent_backbone-0.4.0/src/agent_backbone/services/terminal/_foreground.py +59 -0
  234. agent_backbone-0.4.0/src/agent_backbone/services/terminal/_memory.py +66 -0
  235. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/terminal/_sessions.py +116 -12
  236. agent_backbone-0.4.0/src/agent_backbone/sheets/__init__.py +42 -0
  237. agent_backbone-0.4.0/src/agent_backbone/sheets/_calculation.py +135 -0
  238. agent_backbone-0.4.0/src/agent_backbone/sheets/_engine.py +480 -0
  239. agent_backbone-0.4.0/src/agent_backbone/sheets/_errors.py +8 -0
  240. agent_backbone-0.4.0/src/agent_backbone/sheets/_interchange.py +326 -0
  241. agent_backbone-0.4.0/src/agent_backbone/sheets/_memory.py +35 -0
  242. agent_backbone-0.4.0/src/agent_backbone/sheets/_models.py +386 -0
  243. agent_backbone-0.4.0/src/agent_backbone/sheets/_views.py +157 -0
  244. agent_backbone-0.4.0/src/agent_backbone/sheets/_worker.py +53 -0
  245. agent_backbone-0.4.0/src/agent_backbone/signing.py +222 -0
  246. agent_backbone-0.4.0/src/agent_backbone/skills.py +896 -0
  247. agent_backbone-0.4.0/src/agent_backbone/templates.py +200 -0
  248. agent_backbone-0.4.0/src/agent_backbone/usage.py +153 -0
  249. agent_backbone-0.4.0/templates/README.md +47 -0
  250. agent_backbone-0.4.0/templates/base.md +63 -0
  251. agent_backbone-0.4.0/templates/onboarding/core-v1.json +21 -0
  252. agent_backbone-0.4.0/templates/onboarding/orchestrator-v1.md +11 -0
  253. agent_backbone-0.4.0/templates/onboarding/skills/backbone-conversations/SKILL.md +22 -0
  254. agent_backbone-0.4.0/templates/onboarding/skills/backbone-documents/SKILL.md +16 -0
  255. agent_backbone-0.4.0/templates/onboarding/skills/backbone-reports/SKILL.md +16 -0
  256. agent_backbone-0.4.0/templates/onboarding/skills/backbone-responses/SKILL.md +15 -0
  257. agent_backbone-0.4.0/templates/onboarding/skills/backbone-sheets/SKILL.md +23 -0
  258. agent_backbone-0.4.0/templates/policies/starter-artifacts.md +15 -0
  259. agent_backbone-0.4.0/templates/policies/starter-authority.md +16 -0
  260. agent_backbone-0.4.0/templates/policies/starter-collaboration.md +22 -0
  261. agent_backbone-0.4.0/templates/policies/starter-continuity.md +21 -0
  262. agent_backbone-0.4.0/templates/policies/starter-learning.md +22 -0
  263. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/coder.md +1 -1
  264. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/common.md +7 -2
  265. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/coordinator.md +21 -3
  266. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/reviewer.md +2 -2
  267. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/scout.md +2 -2
  268. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/worker.md +1 -1
  269. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/tests/unit/help/test_help.py +10 -2
  270. agent_backbone-0.4.0/tools/engine/README.md +169 -0
  271. agent_backbone-0.2.0/PKG-INFO +0 -210
  272. agent_backbone-0.2.0/README.md +0 -170
  273. agent_backbone-0.2.0/USAGE.md +0 -105
  274. agent_backbone-0.2.0/docs/api.md +0 -502
  275. agent_backbone-0.2.0/docs/cli.md +0 -567
  276. agent_backbone-0.2.0/docs/deep-reviews.md +0 -100
  277. agent_backbone-0.2.0/docs/media/demo.gif +0 -0
  278. agent_backbone-0.2.0/docs/security.md +0 -207
  279. agent_backbone-0.2.0/help/agents.md +0 -98
  280. agent_backbone-0.2.0/help/reviews.md +0 -24
  281. agent_backbone-0.2.0/help/setup.md +0 -120
  282. agent_backbone-0.2.0/src/agent_backbone/api/auth.py +0 -48
  283. agent_backbone-0.2.0/src/agent_backbone/api/routes/messages.py +0 -113
  284. agent_backbone-0.2.0/src/agent_backbone/api/session_updates.py +0 -101
  285. agent_backbone-0.2.0/src/agent_backbone/cli/_common.py +0 -213
  286. agent_backbone-0.2.0/src/agent_backbone/cli/agents.py +0 -617
  287. agent_backbone-0.2.0/src/agent_backbone/cli/server.py +0 -184
  288. agent_backbone-0.2.0/src/agent_backbone/cli/service.py +0 -235
  289. agent_backbone-0.2.0/src/agent_backbone/fs.py +0 -33
  290. agent_backbone-0.2.0/src/agent_backbone/hooks/backbone_state.py +0 -543
  291. agent_backbone-0.2.0/src/agent_backbone/hooks/claude_hook.py +0 -108
  292. agent_backbone-0.2.0/src/agent_backbone/hooks/codex_hook.py +0 -88
  293. agent_backbone-0.2.0/src/agent_backbone/hooks/opencode_hook.js +0 -161
  294. agent_backbone-0.2.0/src/agent_backbone/services/agents/_file_reader.py +0 -145
  295. agent_backbone-0.2.0/src/agent_backbone/services/agents/acknowledgement.py +0 -166
  296. agent_backbone-0.2.0/src/agent_backbone/services/agents/store.py +0 -360
  297. agent_backbone-0.2.0/src/agent_backbone/services/database/__init__.py +0 -21
  298. agent_backbone-0.2.0/src/agent_backbone/services/database/_acks_repo.py +0 -49
  299. agent_backbone-0.2.0/src/agent_backbone/services/database/_dependencies_repo.py +0 -85
  300. agent_backbone-0.2.0/src/agent_backbone/services/database/_queue_repo.py +0 -500
  301. agent_backbone-0.2.0/src/agent_backbone/services/database/engine.py +0 -53
  302. agent_backbone-0.2.0/src/agent_backbone/services/database/migrations/versions/2026_09_09_761f09f031b6_initial_schema.py +0 -412
  303. agent_backbone-0.2.0/src/agent_backbone/services/database/models.py +0 -387
  304. agent_backbone-0.2.0/src/agent_backbone/services/jobs/__init__.py +0 -15
  305. agent_backbone-0.2.0/src/agent_backbone/services/jobs/copy_mode.py +0 -50
  306. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/_opencode_launch.py +0 -42
  307. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/claude.py +0 -231
  308. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/codex.py +0 -326
  309. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/deepcode.py +0 -78
  310. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/gemini.py +0 -106
  311. agent_backbone-0.2.0/src/agent_backbone/services/runtimes/opencode.py +0 -116
  312. agent_backbone-0.2.0/src/agent_backbone/services/swarm/_templates.py +0 -39
  313. agent_backbone-0.2.0/src/agent_backbone/services/terminal/_copy_mode.py +0 -42
  314. agent_backbone-0.2.0/src/agent_backbone/templates.py +0 -127
  315. agent_backbone-0.2.0/templates/README.md +0 -17
  316. agent_backbone-0.2.0/templates/base.md +0 -62
  317. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/.gitignore +0 -0
  318. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/LICENSE +0 -0
  319. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/alembic.ini +0 -0
  320. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/docs/README.md +0 -0
  321. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/examples/report_speech_server.py +0 -0
  322. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/__init__.py +0 -0
  323. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/__init__.py +0 -0
  324. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/__init__.py +0 -0
  325. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/deliveries.py +0 -0
  326. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/events.py +0 -0
  327. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/help.py +0 -0
  328. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/integrations.py +0 -0
  329. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/api/routes/issues.py +0 -0
  330. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/base/__init__.py +0 -0
  331. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/base/lifecycle.py +0 -0
  332. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/base/protocols.py +0 -0
  333. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/cli/__main__.py +0 -0
  334. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/help/__init__.py +0 -0
  335. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/hooks/__init__.py +0 -0
  336. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/hooks/gemini_hook.py +0 -0
  337. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/release.py +0 -0
  338. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/__init__.py +0 -0
  339. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/_locks.py +0 -0
  340. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/agents/audit.py +0 -0
  341. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_repo.py +0 -0
  342. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_settings_repo.py +0 -0
  343. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_state_repo.py +0 -0
  344. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/_swarms_repo.py +0 -0
  345. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/base.py +0 -0
  346. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/migrations/env.py +0 -0
  347. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/database/migrations/script.py.mako +0 -0
  348. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/github/__init__.py +0 -0
  349. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/github/reviews.py +0 -0
  350. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/github/snapshot.py +0 -0
  351. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/__init__.py +0 -0
  352. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/_registry.py +0 -0
  353. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/base.py +0 -0
  354. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/__init__.py +0 -0
  355. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_topic_discovery.py +0 -0
  356. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_topics.py +0 -0
  357. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/integrations/telegram/_updates.py +0 -0
  358. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/jobs/upgrade_watch.py +0 -0
  359. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_create_notify.py +0 -0
  360. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_dedup.py +0 -0
  361. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_lifecycle.py +0 -0
  362. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/routing/_priority.py +0 -0
  363. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/aider.py +0 -0
  364. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/runtimes/catalog.json +0 -0
  365. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/swarm/_roster.py +0 -0
  366. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/terminal/_attach.py +0 -0
  367. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/src/agent_backbone/services/terminal/_pty.py +0 -0
  368. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/policies/python-example.md +0 -0
  369. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/templates/swarm/kickoff.md +0 -0
  370. {agent_backbone-0.2.0 → agent_backbone-0.4.0}/tests/unit/help/__init__.py +0 -0
@@ -0,0 +1,298 @@
1
+ Metadata-Version: 2.5
2
+ Name: agent-backbone
3
+ Version: 0.4.0
4
+ Summary: Bring agents across AI CLIs and projects into one personal team, with communication, coordination and continuity.
5
+ Project-URL: Homepage, https://github.com/eandualem/agent-backbone
6
+ Project-URL: Documentation, https://github.com/eandualem/agent-backbone/blob/main/docs/INDEX.md
7
+ Project-URL: Source, https://github.com/eandualem/agent-backbone
8
+ Project-URL: Issues, https://github.com/eandualem/agent-backbone/issues
9
+ License: MIT
10
+ License-File: LICENSE
11
+ Keywords: agents,claude-code,codex,github,orchestration,telegram,tmux
12
+ Classifier: Development Status :: 3 - Alpha
13
+ Classifier: Environment :: Console
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: MacOS
17
+ Classifier: Operating System :: POSIX :: Linux
18
+ Classifier: Programming Language :: Python :: 3 :: Only
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Topic :: Software Development
23
+ Requires-Python: >=3.11
24
+ Requires-Dist: aiosqlite>=0.20
25
+ Requires-Dist: alembic>=1.13
26
+ Requires-Dist: cryptography>=44.0
27
+ Requires-Dist: fastapi>=0.115
28
+ Requires-Dist: httpx>=0.27
29
+ Requires-Dist: ironcalc==0.9.1
30
+ Requires-Dist: pydantic>=2.0
31
+ Requires-Dist: python-dotenv>=1.0
32
+ Requires-Dist: python-engineio>=4.13.5
33
+ Requires-Dist: python-socketio>=5.16.4
34
+ Requires-Dist: python-telegram-bot>=21.0
35
+ Requires-Dist: rich>=14.1
36
+ Requires-Dist: sqlalchemy[asyncio]>=2.0
37
+ Requires-Dist: uvicorn[standard]>=0.32
38
+ Provides-Extra: postgres
39
+ Requires-Dist: asyncpg>=0.29; extra == 'postgres'
40
+ Description-Content-Type: text/markdown
41
+
42
+ <div align="center">
43
+
44
+ <img src="https://raw.githubusercontent.com/eandualem/agent-backbone/main/docs/media/banner.png" alt="agent-backbone: your terminal agents, working as a team" width="720">
45
+
46
+ **Agents across different AI CLIs and projects, working as one personal team.**<br>
47
+ Communication, coordination and continuity for Claude Code, Codex and OpenCode.<br>
48
+ Develop specialists whose experience carries into your next project.
49
+
50
+ [![PyPI](https://img.shields.io/pypi/v/agent-backbone)](https://pypi.org/project/agent-backbone/)
51
+ [![Python](https://img.shields.io/pypi/pyversions/agent-backbone)](https://pypi.org/project/agent-backbone/)
52
+ [![CI](https://github.com/eandualem/agent-backbone/actions/workflows/ci.yml/badge.svg)](https://github.com/eandualem/agent-backbone/actions/workflows/ci.yml)
53
+ [![Downloads](https://img.shields.io/pypi/dm/agent-backbone)](https://pypistats.org/packages/agent-backbone)
54
+ [![License: MIT](https://img.shields.io/badge/license-MIT-blue)](https://github.com/eandualem/agent-backbone/blob/main/LICENSE)
55
+
56
+ [Watch](#watch) · [Quick start](#quick-start) · [Why Backbone](#why-backbone) · [Docs](https://github.com/eandualem/agent-backbone/blob/main/docs/INDEX.md) · [Security](https://github.com/eandualem/agent-backbone/blob/main/docs/security.md)
57
+
58
+ </div>
59
+
60
+ ## Watch
61
+
62
+ <a href="https://youtu.be/3gOH3t3woXM"><img src="https://raw.githubusercontent.com/eandualem/agent-backbone/main/docs/media/film-overview.jpg" width="49%" alt="Watch the agent-backbone overview, 1 minute 23 seconds"></a>
63
+
64
+ <a href="https://youtu.be/yKV8RNgqRsE"><img src="https://raw.githubusercontent.com/eandualem/agent-backbone/main/docs/media/film-why-backbone.jpg" width="49%" alt="Watch Why Backbone, 2 minutes 23 seconds"></a>
65
+
66
+ [Overview (1:23)](https://youtu.be/3gOH3t3woXM) · [Why Backbone (2:23)](https://youtu.be/yKV8RNgqRsE) · [YouTube playlist](https://www.youtube.com/playlist?list=PLMq17WKA4Z88)
67
+
68
+ Both films have English captions. [Read the film guide](https://github.com/eandualem/agent-backbone/blob/main/docs/media/films.md).
69
+
70
+ ## Why Backbone
71
+
72
+ Agent Backbone brings agents across different AI CLIs and projects into one
73
+ personal team. It provides the communication, coordination and continuity they
74
+ need to work together, with working practices you can shape. Through that
75
+ collaboration, retained lessons and feedback, specialists can develop expertise,
76
+ share discoveries and refine their judgment, so each new project can benefit
77
+ from the experience they have built.
78
+
79
+ Your agents use the logins you already have. Core use needs no setup in your
80
+ repositories. [Starter practices](https://github.com/eandualem/agent-backbone/blob/main/docs/team.md) help the team collaborate,
81
+ preserve useful reasoning and learn from feedback; you can edit or remove them.
82
+
83
+ <table>
84
+ <tr>
85
+ <td width="50%" valign="top">
86
+
87
+ **Never typed into a busy agent**<br>
88
+ Agents reach each other by name. When the recipient is working or waiting
89
+ for you, the message is queued and delivered when the agent is ready, marked
90
+ with who sent it. Ordinary messages expire after 30 minutes by default, and
91
+ the sender is told.
92
+
93
+ </td>
94
+ <td width="50%" valign="top">
95
+
96
+ **No setup in your repositories**<br>
97
+ An agent is a folder and the CLI you choose, and the folder is its name.
98
+ Core use adds no configuration files, task schemas or commits to your
99
+ projects.
100
+
101
+ </td>
102
+ </tr>
103
+ <tr>
104
+ <td valign="top">
105
+
106
+ **GitHub Issues are the task list**<br>
107
+ In a repository worker owns or watches, label an issue `for:worker` and it
108
+ lands in worker's queue, one at a time.
109
+ To hand work on, an agent opens an issue for another. The issue stays as the
110
+ record.
111
+
112
+ </td>
113
+ <td valign="top">
114
+
115
+ **Mix CLIs in one team**<br>
116
+ Claude Code, Codex and OpenCode agents work side by side, and a swarm puts a
117
+ coordinator and helpers on different CLIs on one branch. A second model can
118
+ review the change.
119
+
120
+ </td>
121
+ </tr>
122
+ <tr>
123
+ <td valign="top">
124
+
125
+ **In the loop from anywhere**<br>
126
+ Watch any agent, step into its terminal, or answer from your phone. With
127
+ [Telegram set up](https://github.com/eandualem/agent-backbone/blob/main/docs/telegram.md#one-topic-per-agent) in a group with
128
+ topics, every agent outside a swarm gets its own topic, with Allow and Deny
129
+ on permission prompts.
130
+
131
+ </td>
132
+ <td valign="top">
133
+
134
+ **State you can check**<br>
135
+ Backbone tracks whether each agent is idle, working or waiting for a person,
136
+ and shows the evidence behind every reading. Your agents decide the work.
137
+
138
+ </td>
139
+ </tr>
140
+ </table>
141
+
142
+ New sessions are briefed on these tools, so you can ask any agent to set up
143
+ the team you need: an agent per repository, skills and rules shared by tag,
144
+ specialists on request.
145
+
146
+ For example, a README specialist can retain why an explanation worked, consult
147
+ with another repository's agent and adapt that lesson to its readers. The team
148
+ must record, test and revise its understanding; a role name or stored conversation
149
+ alone does not make it more capable. [Try that collaboration](https://github.com/eandualem/agent-backbone/blob/main/docs/team.md#try-a-readme-collaboration).
150
+
151
+ ## Use a desktop workspace
152
+
153
+ Agent Interface provides a native desktop for Backbone: terminals alongside
154
+ team, activity, usage, skills and policy views. Its **Reports & updates** view brings together progress reports, saved
155
+ answers and Documents. Rich HTML Documents currently render on macOS.
156
+ Connect it to a running Backbone.
157
+
158
+ ## Quick start
159
+
160
+ **Let your agent do it.** Open the coding agent you already use and say:
161
+
162
+ ```text
163
+ Install agent-backbone with uv tool install agent-backbone,
164
+ then run backbone help setup and follow it.
165
+ ```
166
+
167
+ The setup playbook is written for agents: each step ends with a check and
168
+ says when it needs you, for your accounts and secrets. If your agent's CLI
169
+ refuses a step on its own (Claude Code's auto mode can refuse
170
+ `backbone init`), switch it to asking before each step (Shift+Tab in
171
+ Claude Code) and approve them.
172
+
173
+ **Or by hand.** You need macOS or Linux, Python 3.11+, tmux,
174
+ [uv](https://docs.astral.sh/uv/) (or pipx), and an agent CLI installed and
175
+ signed in.
176
+
177
+ ```bash
178
+ uv tool install agent-backbone
179
+ backbone init
180
+ backbone service install # start now and at login
181
+ backbone doctor # check dependencies and API access
182
+ ```
183
+
184
+ For a **new installation**, read `backbone docs team` and select its starter
185
+ practices before launching agents:
186
+
187
+ ```bash
188
+ backbone templates use starter-collaboration starter-continuity starter-learning
189
+ ```
190
+
191
+ On an existing installation, first inspect assignments with `backbone templates use`.
192
+ Selection replaces the global list, so keep existing choices or use a tag.
193
+ You can customize or remove any starter.
194
+
195
+ Then, from a repository you want an agent to work in:
196
+
197
+ ```bash
198
+ cd ~/code/app
199
+ backbone agent start --runtime claude # or --runtime codex, --runtime opencode
200
+ backbone tell app "Summarise what this repository does in three sentences."
201
+ backbone agent attach app # read its reply; Ctrl-b d detaches
202
+ ```
203
+
204
+ The folder supplies the agent name. If startup reports a prompt or a timeout,
205
+ `backbone agent inspect app` shows what needs attention. `tell` reports
206
+ whether the message was delivered or queued; delivery does not mean the agent
207
+ has finished answering. A queued message waits until the agent is ready, up
208
+ to 30 minutes by default, so do not resend a message the queue accepted. If
209
+ `backbone` is not on your PATH, run `uv tool update-shell` and open a new
210
+ terminal. In a container without a login service, use `backbone up --detach`.
211
+ `ab` is a short alias; on macOS, use `backbone` if Apache Bench shadows it.
212
+
213
+ [Getting started](https://github.com/eandualem/agent-backbone/blob/main/docs/getting-started.md) walks through a second agent,
214
+ GitHub and Telegram. [Develop your team](https://github.com/eandualem/agent-backbone/blob/main/docs/team.md) follows a specialist's
215
+ experience into another project. [Quick usage](https://github.com/eandualem/agent-backbone/blob/main/USAGE.md) is the everyday command guide.
216
+
217
+ ## Built to be relied on
218
+
219
+ - **One delivery gate.** Everything typed into an agent's terminal passes the
220
+ same readiness check. Busy agents are never interrupted, and every message
221
+ carries where it came from.
222
+ - **The same result on every required CLI.** A capability ships only when it
223
+ works the same in Claude Code, Codex and OpenCode, checked by the same
224
+ behaviour test on each. The [runtime capability table](https://github.com/eandualem/agent-backbone/blob/main/docs/runtime-capabilities.md)
225
+ and `backbone doctor` read one contract, and gaps are listed, not hidden.
226
+ - **More than 3,500 tests,** run on every change with no network, models or
227
+ services.
228
+ - **Built with itself.** Backbone is developed by agents running inside a
229
+ Backbone in daily use. The films in this README were made the same way.
230
+ - **An honest security model.** One trusted user on one machine, an API on
231
+ localhost, and a clear account of what agents can reach. Read
232
+ [Security](https://github.com/eandualem/agent-backbone/blob/main/docs/security.md) before granting access.
233
+
234
+ Backbone is not an agent framework: it calls no models and needs no model API
235
+ keys. It is not a workflow engine or a dashboard either. It gives your
236
+ agents names, safe messages and evidence, and leaves the work to them.
237
+
238
+ ## Works with
239
+
240
+ | CLI | Support |
241
+ |---|---|
242
+ | Claude Code, Codex, OpenCode | Required set: a capability ships only when it works on all three, and any open gap is tracked as a defect |
243
+ | Gemini CLI, Deep Code, Aider | Supported on demand; each gap is listed in the [capability table](https://github.com/eandualem/agent-backbone/blob/main/docs/runtime-capabilities.md) |
244
+
245
+ ## Going further
246
+
247
+ - [Develop your team](https://github.com/eandualem/agent-backbone/blob/main/docs/team.md): choose starting practices, collaborate with
248
+ a specialist and carry useful lessons into another project.
249
+ - [GitHub](https://github.com/eandualem/agent-backbone/blob/main/docs/github.md): route issues and review notifications, starting with
250
+ token-based polling. [GitHub App setup](https://github.com/eandualem/agent-backbone/blob/main/docs/github-app-setup.md) adds webhooks.
251
+ - [Swarms](https://github.com/eandualem/agent-backbone/blob/main/docs/swarms.md): put several specialists on one task.
252
+ - [Skills](https://github.com/eandualem/agent-backbone/blob/main/docs/skills.md): keep one copy of each skill, tag it, and every agent
253
+ with that tag finds it in its own CLI.
254
+ - [Telegram](https://github.com/eandualem/agent-backbone/blob/main/docs/telegram.md): send messages and read reports from your phone.
255
+ - [Token usage](https://github.com/eandualem/agent-backbone/blob/main/docs/token-usage.md): tokens by agent, conversation and model.
256
+ - [Saved answers](https://github.com/eandualem/agent-backbone/blob/main/docs/responses.md): return to a question, its answer and next action.
257
+ - [Documents](https://github.com/eandualem/agent-backbone/blob/main/docs/documents.md): keep detailed explanations and interactive HTML
258
+ reports available beyond the conversation, with retained correction history.
259
+ - [API](https://github.com/eandualem/agent-backbone/blob/main/docs/api.md): build a dashboard or automation; Backbone ships no UI.
260
+ - [Runtime support and limits](https://github.com/eandualem/agent-backbone/blob/main/docs/status-and-roadmap.md): checked capabilities,
261
+ unsupported environments and known limitations.
262
+ - [How it works](https://github.com/eandualem/agent-backbone/blob/main/docs/how-it-works.md): state detection, delivery and routing.
263
+
264
+ The [documentation index](https://github.com/eandualem/agent-backbone/blob/main/docs/INDEX.md) covers configuration, diagnostics
265
+ and the remaining references. Installed copies are available through
266
+ `backbone docs`; `backbone help` contains short agent playbooks.
267
+
268
+ ## Security model
269
+
270
+ Backbone runs as one trusted OS user on one machine. Agents are not isolated
271
+ from each other. The API binds to localhost by default and uses one full-admin
272
+ key; local sessions can read that key through the CLI. Backbone keeps its
273
+ control-plane secrets out of launched environments, but this is not a filesystem
274
+ security boundary. Read [Security](https://github.com/eandualem/agent-backbone/blob/main/docs/security.md) before granting access or
275
+ exposing the API.
276
+
277
+ ## Development
278
+
279
+ ```bash
280
+ git clone https://github.com/eandualem/agent-backbone
281
+ cd agent-backbone
282
+ make install
283
+ make check
284
+ BACKBONE_DATA_DIR=/tmp/backbone-dev make dev
285
+ ```
286
+
287
+ `make dev` runs on its own tmux server, so its agents stay apart from your own
288
+ tmux sessions and from a real backbone's agents. Run CLI commands for it from
289
+ a terminal outside tmux with the same settings, for example
290
+ `TMUX_TMPDIR=/tmp/backbone-dev-tmux-$(id -u) BACKBONE_DATA_DIR=/tmp/backbone-dev uv run backbone agent attach NAME`.
291
+ `agent attach`, and agent commands run while `make dev` is stopped, use tmux
292
+ directly.
293
+
294
+ See [Contributing](https://github.com/eandualem/agent-backbone/blob/main/CONTRIBUTING.md) for branches, checks and releases.
295
+
296
+ ## License
297
+
298
+ [MIT](https://github.com/eandualem/agent-backbone/blob/main/LICENSE).
@@ -0,0 +1,257 @@
1
+ <div align="center">
2
+
3
+ <img src="docs/media/banner.png" alt="agent-backbone: your terminal agents, working as a team" width="720">
4
+
5
+ **Agents across different AI CLIs and projects, working as one personal team.**<br>
6
+ Communication, coordination and continuity for Claude Code, Codex and OpenCode.<br>
7
+ Develop specialists whose experience carries into your next project.
8
+
9
+ [![PyPI](https://img.shields.io/pypi/v/agent-backbone)](https://pypi.org/project/agent-backbone/)
10
+ [![Python](https://img.shields.io/pypi/pyversions/agent-backbone)](https://pypi.org/project/agent-backbone/)
11
+ [![CI](https://github.com/eandualem/agent-backbone/actions/workflows/ci.yml/badge.svg)](https://github.com/eandualem/agent-backbone/actions/workflows/ci.yml)
12
+ [![Downloads](https://img.shields.io/pypi/dm/agent-backbone)](https://pypistats.org/packages/agent-backbone)
13
+ [![License: MIT](https://img.shields.io/badge/license-MIT-blue)](LICENSE)
14
+
15
+ [Watch](#watch) · [Quick start](#quick-start) · [Why Backbone](#why-backbone) · [Docs](docs/INDEX.md) · [Security](docs/security.md)
16
+
17
+ </div>
18
+
19
+ ## Watch
20
+
21
+ https://github.com/user-attachments/assets/695a6096-4196-4115-911c-a0043d632088
22
+
23
+ https://github.com/user-attachments/assets/4218fdbe-e581-49bd-879f-288d41c9f72f
24
+
25
+ [Overview (1:23)](https://youtu.be/3gOH3t3woXM) · [Why Backbone (2:23)](https://youtu.be/yKV8RNgqRsE) · [YouTube playlist](https://www.youtube.com/playlist?list=PLMq17WKA4Z88)
26
+
27
+ Both films have English captions. [Read the film guide](docs/media/films.md).
28
+
29
+ ## Why Backbone
30
+
31
+ Agent Backbone brings agents across different AI CLIs and projects into one
32
+ personal team. It provides the communication, coordination and continuity they
33
+ need to work together, with working practices you can shape. Through that
34
+ collaboration, retained lessons and feedback, specialists can develop expertise,
35
+ share discoveries and refine their judgment, so each new project can benefit
36
+ from the experience they have built.
37
+
38
+ Your agents use the logins you already have. Core use needs no setup in your
39
+ repositories. [Starter practices](docs/team.md) help the team collaborate,
40
+ preserve useful reasoning and learn from feedback; you can edit or remove them.
41
+
42
+ <table>
43
+ <tr>
44
+ <td width="50%" valign="top">
45
+
46
+ **Never typed into a busy agent**<br>
47
+ Agents reach each other by name. When the recipient is working or waiting
48
+ for you, the message is queued and delivered when the agent is ready, marked
49
+ with who sent it. Ordinary messages expire after 30 minutes by default, and
50
+ the sender is told.
51
+
52
+ </td>
53
+ <td width="50%" valign="top">
54
+
55
+ **No setup in your repositories**<br>
56
+ An agent is a folder and the CLI you choose, and the folder is its name.
57
+ Core use adds no configuration files, task schemas or commits to your
58
+ projects.
59
+
60
+ </td>
61
+ </tr>
62
+ <tr>
63
+ <td valign="top">
64
+
65
+ **GitHub Issues are the task list**<br>
66
+ In a repository worker owns or watches, label an issue `for:worker` and it
67
+ lands in worker's queue, one at a time.
68
+ To hand work on, an agent opens an issue for another. The issue stays as the
69
+ record.
70
+
71
+ </td>
72
+ <td valign="top">
73
+
74
+ **Mix CLIs in one team**<br>
75
+ Claude Code, Codex and OpenCode agents work side by side, and a swarm puts a
76
+ coordinator and helpers on different CLIs on one branch. A second model can
77
+ review the change.
78
+
79
+ </td>
80
+ </tr>
81
+ <tr>
82
+ <td valign="top">
83
+
84
+ **In the loop from anywhere**<br>
85
+ Watch any agent, step into its terminal, or answer from your phone. With
86
+ [Telegram set up](docs/telegram.md#one-topic-per-agent) in a group with
87
+ topics, every agent outside a swarm gets its own topic, with Allow and Deny
88
+ on permission prompts.
89
+
90
+ </td>
91
+ <td valign="top">
92
+
93
+ **State you can check**<br>
94
+ Backbone tracks whether each agent is idle, working or waiting for a person,
95
+ and shows the evidence behind every reading. Your agents decide the work.
96
+
97
+ </td>
98
+ </tr>
99
+ </table>
100
+
101
+ New sessions are briefed on these tools, so you can ask any agent to set up
102
+ the team you need: an agent per repository, skills and rules shared by tag,
103
+ specialists on request.
104
+
105
+ For example, a README specialist can retain why an explanation worked, consult
106
+ with another repository's agent and adapt that lesson to its readers. The team
107
+ must record, test and revise its understanding; a role name or stored conversation
108
+ alone does not make it more capable. [Try that collaboration](docs/team.md#try-a-readme-collaboration).
109
+
110
+ ## Use a desktop workspace
111
+
112
+ Agent Interface provides a native desktop for Backbone: terminals alongside
113
+ team, activity, usage, skills and policy views. Its **Reports & updates** view brings together progress reports, saved
114
+ answers and Documents. Rich HTML Documents currently render on macOS.
115
+ Connect it to a running Backbone.
116
+
117
+ ## Quick start
118
+
119
+ **Let your agent do it.** Open the coding agent you already use and say:
120
+
121
+ ```text
122
+ Install agent-backbone with uv tool install agent-backbone,
123
+ then run backbone help setup and follow it.
124
+ ```
125
+
126
+ The setup playbook is written for agents: each step ends with a check and
127
+ says when it needs you, for your accounts and secrets. If your agent's CLI
128
+ refuses a step on its own (Claude Code's auto mode can refuse
129
+ `backbone init`), switch it to asking before each step (Shift+Tab in
130
+ Claude Code) and approve them.
131
+
132
+ **Or by hand.** You need macOS or Linux, Python 3.11+, tmux,
133
+ [uv](https://docs.astral.sh/uv/) (or pipx), and an agent CLI installed and
134
+ signed in.
135
+
136
+ ```bash
137
+ uv tool install agent-backbone
138
+ backbone init
139
+ backbone service install # start now and at login
140
+ backbone doctor # check dependencies and API access
141
+ ```
142
+
143
+ For a **new installation**, read `backbone docs team` and select its starter
144
+ practices before launching agents:
145
+
146
+ ```bash
147
+ backbone templates use starter-collaboration starter-continuity starter-learning
148
+ ```
149
+
150
+ On an existing installation, first inspect assignments with `backbone templates use`.
151
+ Selection replaces the global list, so keep existing choices or use a tag.
152
+ You can customize or remove any starter.
153
+
154
+ Then, from a repository you want an agent to work in:
155
+
156
+ ```bash
157
+ cd ~/code/app
158
+ backbone agent start --runtime claude # or --runtime codex, --runtime opencode
159
+ backbone tell app "Summarise what this repository does in three sentences."
160
+ backbone agent attach app # read its reply; Ctrl-b d detaches
161
+ ```
162
+
163
+ The folder supplies the agent name. If startup reports a prompt or a timeout,
164
+ `backbone agent inspect app` shows what needs attention. `tell` reports
165
+ whether the message was delivered or queued; delivery does not mean the agent
166
+ has finished answering. A queued message waits until the agent is ready, up
167
+ to 30 minutes by default, so do not resend a message the queue accepted. If
168
+ `backbone` is not on your PATH, run `uv tool update-shell` and open a new
169
+ terminal. In a container without a login service, use `backbone up --detach`.
170
+ `ab` is a short alias; on macOS, use `backbone` if Apache Bench shadows it.
171
+
172
+ [Getting started](docs/getting-started.md) walks through a second agent,
173
+ GitHub and Telegram. [Develop your team](docs/team.md) follows a specialist's
174
+ experience into another project. [Quick usage](USAGE.md) is the everyday command guide.
175
+
176
+ ## Built to be relied on
177
+
178
+ - **One delivery gate.** Everything typed into an agent's terminal passes the
179
+ same readiness check. Busy agents are never interrupted, and every message
180
+ carries where it came from.
181
+ - **The same result on every required CLI.** A capability ships only when it
182
+ works the same in Claude Code, Codex and OpenCode, checked by the same
183
+ behaviour test on each. The [runtime capability table](docs/runtime-capabilities.md)
184
+ and `backbone doctor` read one contract, and gaps are listed, not hidden.
185
+ - **More than 3,500 tests,** run on every change with no network, models or
186
+ services.
187
+ - **Built with itself.** Backbone is developed by agents running inside a
188
+ Backbone in daily use. The films in this README were made the same way.
189
+ - **An honest security model.** One trusted user on one machine, an API on
190
+ localhost, and a clear account of what agents can reach. Read
191
+ [Security](docs/security.md) before granting access.
192
+
193
+ Backbone is not an agent framework: it calls no models and needs no model API
194
+ keys. It is not a workflow engine or a dashboard either. It gives your
195
+ agents names, safe messages and evidence, and leaves the work to them.
196
+
197
+ ## Works with
198
+
199
+ | CLI | Support |
200
+ |---|---|
201
+ | Claude Code, Codex, OpenCode | Required set: a capability ships only when it works on all three, and any open gap is tracked as a defect |
202
+ | Gemini CLI, Deep Code, Aider | Supported on demand; each gap is listed in the [capability table](docs/runtime-capabilities.md) |
203
+
204
+ ## Going further
205
+
206
+ - [Develop your team](docs/team.md): choose starting practices, collaborate with
207
+ a specialist and carry useful lessons into another project.
208
+ - [GitHub](docs/github.md): route issues and review notifications, starting with
209
+ token-based polling. [GitHub App setup](docs/github-app-setup.md) adds webhooks.
210
+ - [Swarms](docs/swarms.md): put several specialists on one task.
211
+ - [Skills](docs/skills.md): keep one copy of each skill, tag it, and every agent
212
+ with that tag finds it in its own CLI.
213
+ - [Telegram](docs/telegram.md): send messages and read reports from your phone.
214
+ - [Token usage](docs/token-usage.md): tokens by agent, conversation and model.
215
+ - [Saved answers](docs/responses.md): return to a question, its answer and next action.
216
+ - [Documents](docs/documents.md): keep detailed explanations and interactive HTML
217
+ reports available beyond the conversation, with retained correction history.
218
+ - [API](docs/api.md): build a dashboard or automation; Backbone ships no UI.
219
+ - [Runtime support and limits](docs/status-and-roadmap.md): checked capabilities,
220
+ unsupported environments and known limitations.
221
+ - [How it works](docs/how-it-works.md): state detection, delivery and routing.
222
+
223
+ The [documentation index](docs/INDEX.md) covers configuration, diagnostics
224
+ and the remaining references. Installed copies are available through
225
+ `backbone docs`; `backbone help` contains short agent playbooks.
226
+
227
+ ## Security model
228
+
229
+ Backbone runs as one trusted OS user on one machine. Agents are not isolated
230
+ from each other. The API binds to localhost by default and uses one full-admin
231
+ key; local sessions can read that key through the CLI. Backbone keeps its
232
+ control-plane secrets out of launched environments, but this is not a filesystem
233
+ security boundary. Read [Security](docs/security.md) before granting access or
234
+ exposing the API.
235
+
236
+ ## Development
237
+
238
+ ```bash
239
+ git clone https://github.com/eandualem/agent-backbone
240
+ cd agent-backbone
241
+ make install
242
+ make check
243
+ BACKBONE_DATA_DIR=/tmp/backbone-dev make dev
244
+ ```
245
+
246
+ `make dev` runs on its own tmux server, so its agents stay apart from your own
247
+ tmux sessions and from a real backbone's agents. Run CLI commands for it from
248
+ a terminal outside tmux with the same settings, for example
249
+ `TMUX_TMPDIR=/tmp/backbone-dev-tmux-$(id -u) BACKBONE_DATA_DIR=/tmp/backbone-dev uv run backbone agent attach NAME`.
250
+ `agent attach`, and agent commands run while `make dev` is stopped, use tmux
251
+ directly.
252
+
253
+ See [Contributing](CONTRIBUTING.md) for branches, checks and releases.
254
+
255
+ ## License
256
+
257
+ [MIT](LICENSE).