agentwire-dev 1.3.0__tar.gz → 1.3.1__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 (258) hide show
  1. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/PKG-INFO +1 -1
  2. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/__init__.py +1 -1
  3. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/__main__.py +48 -26
  4. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/completion.py +1 -1
  5. agentwire_dev-1.3.0/agentwire/hooks/suppress-bg-notifications.sh → agentwire_dev-1.3.1/agentwire/hooks/idle-handler.sh +9 -0
  6. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/mcp_server.py +15 -0
  7. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/TROUBLESHOOTING.md +1 -1
  8. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/notification-hooks.md +1 -1
  9. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/FUNDING.yml +0 -0
  10. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  11. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  12. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/ISSUE_TEMPLATE/question.md +0 -0
  13. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  14. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/workflows/ci.yml +0 -0
  15. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.github/workflows/publish.yml +0 -0
  16. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/.gitignore +0 -0
  17. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/CHANGELOG.md +0 -0
  18. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/CLA.md +0 -0
  19. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/CODE_OF_CONDUCT.md +0 -0
  20. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/CONTRIBUTING.md +0 -0
  21. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/Dockerfile.local +0 -0
  22. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/Dockerfile.runpod +0 -0
  23. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/LICENSE +0 -0
  24. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/README.md +0 -0
  25. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/RELEASING.md +0 -0
  26. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/SECURITY.md +0 -0
  27. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/SPONSORS.md +0 -0
  28. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/agents/__init__.py +0 -0
  29. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/agents/base.py +0 -0
  30. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/agents/tmux.py +0 -0
  31. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/cached_status.py +0 -0
  32. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/cli_safety.py +0 -0
  33. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/config.py +0 -0
  34. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/errors.py +0 -0
  35. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/history.py +0 -0
  36. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/__init__.py +0 -0
  37. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/agentwire-permission.sh +0 -0
  38. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/__init__.py +0 -0
  39. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/audit_logger.py +0 -0
  40. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/bash-tool-damage-control.py +0 -0
  41. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/edit-tool-damage-control.py +0 -0
  42. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/patterns.yaml +0 -0
  43. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/hooks/damage-control/write-tool-damage-control.py +0 -0
  44. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/init_agentwire.py +0 -0
  45. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/listen.py +0 -0
  46. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/locking.py +0 -0
  47. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/network.py +0 -0
  48. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/notifications.py +0 -0
  49. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/onboarding.py +0 -0
  50. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/pane_manager.py +0 -0
  51. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/project_config.py +0 -0
  52. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/projects.py +0 -0
  53. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/prompts/__init__.py +0 -0
  54. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/prompts/init.md +0 -0
  55. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/__init__.py +0 -0
  56. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/chatbot.md +0 -0
  57. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/claude-delegation.md +0 -0
  58. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/claude-worker-haiku.md +0 -0
  59. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/claude-worker-sonnet.md +0 -0
  60. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/claude-worker.md +0 -0
  61. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/glm-delegation.md +0 -0
  62. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/glm-worker-flash.md +0 -0
  63. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/glm-worker.md +0 -0
  64. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/init.md +0 -0
  65. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/leader-claude.md +0 -0
  66. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/leader-glm.md +0 -0
  67. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/leader-openai.md +0 -0
  68. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/leader.md +0 -0
  69. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/openai-delegation.md +0 -0
  70. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/openai-worker-mini.md +0 -0
  71. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/openai-worker.md +0 -0
  72. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/task-runner.md +0 -0
  73. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/voice.md +0 -0
  74. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/roles/worker.md +0 -0
  75. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/server.py +0 -0
  76. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-Echo--black.png +0 -0
  77. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-Echo--transparent.png +0 -0
  78. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-Echo.png +0 -0
  79. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-email-banner.png +0 -0
  80. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--agentwire-text.png +0 -0
  81. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--echo-claw-fg.png +0 -0
  82. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--echo.png +0 -0
  83. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--full--transparent-top.png +0 -0
  84. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--full-black.png +0 -0
  85. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--telephone-fg.png +0 -0
  86. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--telephone.png +0 -0
  87. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--transparent-top.png +0 -0
  88. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers--tree.png +0 -0
  89. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/agentwire-splash-logo-layers.png +0 -0
  90. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/css/desktop.css +0 -0
  91. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/favicon.png +0 -0
  92. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/android.jpeg +0 -0
  93. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/automaton.jpeg +0 -0
  94. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/bot.jpeg +0 -0
  95. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/cyborg.jpeg +0 -0
  96. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/droid.jpeg +0 -0
  97. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/drone.jpeg +0 -0
  98. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/guardian.jpeg +0 -0
  99. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/mech.jpeg +0 -0
  100. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/probe.jpeg +0 -0
  101. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/robot.jpeg +0 -0
  102. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/sentinel.jpeg +0 -0
  103. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/machines/unit.jpeg +0 -0
  104. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/blob.jpeg +0 -0
  105. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/cloud.jpeg +0 -0
  106. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/crystal.jpeg +0 -0
  107. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/cyclops.jpeg +0 -0
  108. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/flame.jpeg +0 -0
  109. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/fuzzy.jpeg +0 -0
  110. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/horned.jpeg +0 -0
  111. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/moon.jpeg +0 -0
  112. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/slime.jpeg +0 -0
  113. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/star.jpeg +0 -0
  114. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/tentacle.jpeg +0 -0
  115. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/projects/winged.jpeg +0 -0
  116. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/bear.jpeg +0 -0
  117. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/cat.jpeg +0 -0
  118. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/crown.jpeg +0 -0
  119. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/custom/agentwire-portal.png +0 -0
  120. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/custom/agentwire-tts.png +0 -0
  121. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/custom/agentwire.png +0 -0
  122. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/deer.jpeg +0 -0
  123. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/drone.jpeg +0 -0
  124. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/eagle.jpeg +0 -0
  125. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/fox.jpeg +0 -0
  126. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/hawk.jpeg +0 -0
  127. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/horse.jpeg +0 -0
  128. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/lion.jpeg +0 -0
  129. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/rabbit.jpeg +0 -0
  130. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/robot.jpeg +0 -0
  131. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/tiger.jpeg +0 -0
  132. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/icons/sessions/wolf.jpeg +0 -0
  133. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/.gitkeep +0 -0
  134. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/components/icon-picker.js +0 -0
  135. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/components/list-card.js +0 -0
  136. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/components/type-tag.js +0 -0
  137. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/desktop-manager.js +0 -0
  138. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/desktop.js +0 -0
  139. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/icon-manager.js +0 -0
  140. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/list-window.js +0 -0
  141. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/session-window.js +0 -0
  142. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/tile-manager.js +0 -0
  143. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/utils/auto-refresh.js +0 -0
  144. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/winbox.bundle.min.js +0 -0
  145. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/windows/chat-window.js +0 -0
  146. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/windows/config-window.js +0 -0
  147. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/windows/machines-window.js +0 -0
  148. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/windows/projects-window.js +0 -0
  149. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/static/js/windows/sessions-window.js +0 -0
  150. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/stt/__init__.py +0 -0
  151. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/stt/base.py +0 -0
  152. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/stt/server_backend.py +0 -0
  153. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/stt/stt_server.py +0 -0
  154. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/stt/whisperkit.py +0 -0
  155. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tasks.py +0 -0
  156. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/templates/__init__.py +0 -0
  157. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/templates/base.html +0 -0
  158. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/templates/desktop.html +0 -0
  159. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/templates/email_notification.html +0 -0
  160. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/templating.py +0 -0
  161. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/__init__.py +0 -0
  162. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/base.py +0 -0
  163. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/engines/__init__.py +0 -0
  164. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/engines/chatterbox.py +0 -0
  165. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/engines/qwen_base.py +0 -0
  166. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/engines/qwen_custom.py +0 -0
  167. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/engines/qwen_design.py +0 -0
  168. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/registry.py +0 -0
  169. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts/runpod_handler.py +0 -0
  170. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tts_server.py +0 -0
  171. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/tunnels.py +0 -0
  172. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/utils/__init__.py +0 -0
  173. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/utils/chunker.py +0 -0
  174. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/utils/file_io.py +0 -0
  175. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/utils/paths.py +0 -0
  176. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/utils/subprocess.py +0 -0
  177. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/validation.py +0 -0
  178. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voiceclone.py +0 -0
  179. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voices/darren.wav +0 -0
  180. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voices/default.wav +0 -0
  181. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voices/jessica.wav +0 -0
  182. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voices/lisa.wav +0 -0
  183. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/voices/may.wav +0 -0
  184. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/agentwire/worktree.py +0 -0
  185. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/PORTAL.md +0 -0
  186. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/SHELL_ESCAPING.md +0 -0
  187. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/SPONSORS.md +0 -0
  188. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/README.md +0 -0
  189. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-agent-hot-swap.md +0 -0
  190. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-ambient-context-stream.md +0 -0
  191. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-ambient-listening-mode.md +0 -0
  192. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-audio-cues.md +0 -0
  193. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-checkpoint-commits.md +0 -0
  194. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-context-compression-protocol.md +0 -0
  195. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-context-window-gauge.md +0 -0
  196. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-contextual-bookmarks.md +0 -0
  197. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-conversation-archaeology.md +0 -0
  198. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-cost-tracking-dashboard.md +0 -0
  199. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-cross-session-events.md +0 -0
  200. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-delegation-replay.md +0 -0
  201. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-device-session-tethering.md +0 -0
  202. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-failure-memory.md +0 -0
  203. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-notification-escalation.md +0 -0
  204. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-periodic-voice-briefings.md +0 -0
  205. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-presence-aware-sessions.md +0 -0
  206. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-drift-detection.md +0 -0
  207. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-energy-model.md +0 -0
  208. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-handshake.md +0 -0
  209. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-momentum.md +0 -0
  210. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-replay.md +0 -0
  211. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-snapshots.md +0 -0
  212. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-templates.md +0 -0
  213. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-session-thermal-throttling.md +0 -0
  214. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-smart-session-routing.md +0 -0
  215. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-spatial-voice-mixing.md +0 -0
  216. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-speculative-execution.md +0 -0
  217. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-task-pipeline-chaining.md +0 -0
  218. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-task-pivot-protocol.md +0 -0
  219. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-task-time-budgets.md +0 -0
  220. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-activity-zones.md +0 -0
  221. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-breakpoints.md +0 -0
  222. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-code-review.md +0 -0
  223. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-command-undo.md +0 -0
  224. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-handoff.md +0 -0
  225. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-identity.md +0 -0
  226. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-interrupts-v2.md +0 -0
  227. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-interrupts.md +0 -0
  228. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-macros.md +0 -0
  229. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-voice-transcript-logs.md +0 -0
  230. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-watchdog-mode.md +0 -0
  231. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-fencing.md +0 -0
  232. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-file-coordination.md +0 -0
  233. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-health-dashboard.md +0 -0
  234. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-heartbeat-watchdog.md +0 -0
  235. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-progress-streaming.md +0 -0
  236. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-proof-of-work.md +0 -0
  237. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-worker-warmup.md +0 -0
  238. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/brainstorms/idea-x-api-integration.md +0 -0
  239. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/critical-analysis.md +0 -0
  240. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/demo-script.md +0 -0
  241. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/issues/pending-code-changes.md +0 -0
  242. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/issues/remote-tts-session-detection.md +0 -0
  243. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/logo.png +0 -0
  244. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/progressive-loading-pattern.md +0 -0
  245. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/prompts/agentwire-website.md +0 -0
  246. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/releasing.md +0 -0
  247. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/remote-access.md +0 -0
  248. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/remote-machines.md +0 -0
  249. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/runpod-tts.md +0 -0
  250. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/scheduled-workloads.md +0 -0
  251. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/security/damage-control-migration.md +0 -0
  252. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/security/damage-control.md +0 -0
  253. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/tmux-hooks.md +0 -0
  254. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/tts-self-hosted.md +0 -0
  255. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/docs/youtube-channel.md +0 -0
  256. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/opencode-plugin/agentwire-notify.ts +0 -0
  257. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/pyproject.toml +0 -0
  258. {agentwire_dev-1.3.0 → agentwire_dev-1.3.1}/requirements-tts.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agentwire-dev
3
- Version: 1.3.0
3
+ Version: 1.3.1
4
4
  Summary: Multi-session voice web interface for AI coding agents
5
5
  Project-URL: Homepage, https://agentwire.dev
6
6
  Project-URL: Repository, https://github.com/dotdevdotdev/agentwire-dev
@@ -1,3 +1,3 @@
1
1
  """AgentWire - Multi-session voice web interface for AI coding agents."""
2
2
 
3
- __version__ = "1.3.0"
3
+ __version__ = "1.3.1"
@@ -331,6 +331,32 @@ def tmux_session_exists(name: str) -> bool:
331
331
  return result.returncode == 0
332
332
 
333
333
 
334
+ def _get_session_project_path(session: str) -> Path | None:
335
+ """Get a session's project path from its tmux working directory.
336
+
337
+ Queries tmux for the session's actual working directory. Falls back to
338
+ deriving it from the session name if the session isn't running.
339
+
340
+ Returns:
341
+ Path to the project directory, or None if not determinable.
342
+ """
343
+ # Try to get the actual working directory from tmux
344
+ if tmux_session_exists(session):
345
+ result = subprocess.run(
346
+ ["tmux", "display-message", "-t", session, "-p", "#{pane_current_path}"],
347
+ capture_output=True,
348
+ text=True,
349
+ )
350
+ if result.returncode == 0 and result.stdout.strip():
351
+ return Path(result.stdout.strip())
352
+
353
+ # Fallback: derive from session name
354
+ config = load_config()
355
+ projects_dir = Path(config.get("projects", {}).get("dir", "~/projects")).expanduser()
356
+ project, _, _ = parse_session_name(session)
357
+ return projects_dir / project
358
+
359
+
334
360
  def tmux_session_has_agent(name: str) -> bool:
335
361
  """Check if a tmux session has an agent running (not just a bare shell).
336
362
 
@@ -5416,7 +5442,7 @@ def cmd_doctor(args) -> int:
5416
5442
  print(" Run: agentwire hooks install")
5417
5443
 
5418
5444
  # Check Claude Code idle notification hook
5419
- idle_hook = CLAUDE_HOOKS_DIR / "suppress-bg-notifications.sh"
5445
+ idle_hook = CLAUDE_HOOKS_DIR / "idle-handler.sh"
5420
5446
  if idle_hook.exists():
5421
5447
  print(f" [ok] Idle notification hook: {idle_hook}")
5422
5448
  else:
@@ -6698,14 +6724,11 @@ def cmd_ensure(args) -> int:
6698
6724
  if machine_id:
6699
6725
  return _output_result(False, json_mode, "Remote sessions not yet supported for ensure", exit_code=ENSURE_EXIT_SESSION_ERROR)
6700
6726
 
6701
- # Find project path from --project flag, or derive from session name
6727
+ # Find project path from --project flag, or session's working directory
6702
6728
  if hasattr(args, 'project') and args.project:
6703
6729
  project_path = Path(args.project).expanduser().resolve()
6704
6730
  else:
6705
- config = load_config()
6706
- projects_dir = Path(config.get("projects", {}).get("dir", "~/projects")).expanduser()
6707
- project, branch, _ = parse_session_name(session_name)
6708
- project_path = projects_dir / project
6731
+ project_path = _get_session_project_path(session)
6709
6732
 
6710
6733
  if not project_path.exists():
6711
6734
  return _output_result(False, json_mode, f"Project path not found: {project_path}", exit_code=ENSURE_EXIT_SESSION_ERROR)
@@ -6900,6 +6923,18 @@ def _run_ensure_task(args, session, task, ctx, shell, project_path, timeout, jso
6900
6923
  exit_on_complete=task.exit_on_complete,
6901
6924
  )
6902
6925
 
6926
+ # Find previous summaries for this task to give the agent context
6927
+ summary_glob = f".agentwire/task-summary-{session}-{task.name}-*.md"
6928
+ prev_summaries = sorted(
6929
+ project_path.glob(summary_glob),
6930
+ key=lambda p: p.stat().st_mtime,
6931
+ reverse=True,
6932
+ )[:5]
6933
+ if prev_summaries:
6934
+ prompt += "\n\nPrevious task summaries (consider them when generating your output):"
6935
+ for p in prev_summaries:
6936
+ prompt += f"\n- {p}"
6937
+
6903
6938
  if not json_mode:
6904
6939
  print("Sending task prompt...")
6905
6940
 
@@ -7077,18 +7112,13 @@ def cmd_task_list(args) -> int:
7077
7112
  session = getattr(args, 'session', None)
7078
7113
  json_mode = getattr(args, 'json', False)
7079
7114
 
7080
- # Find project path
7081
- config = load_config()
7082
- projects_dir = Path(config.get("projects", {}).get("dir", "~/projects")).expanduser()
7083
-
7115
+ # Find project path from session's working directory or cwd
7084
7116
  if session:
7085
- project, _, _ = parse_session_name(session)
7086
- project_path = projects_dir / project
7117
+ project_path = _get_session_project_path(session)
7087
7118
  else:
7088
- # Use current directory
7089
7119
  project_path = Path.cwd()
7090
7120
 
7091
- if not project_path.exists():
7121
+ if not project_path or not project_path.exists():
7092
7122
  return _output_result(False, json_mode, f"Project path not found: {project_path}")
7093
7123
 
7094
7124
  tasks = list_tasks(project_path)
@@ -7126,13 +7156,9 @@ def cmd_task_show(args) -> int:
7126
7156
  session = None
7127
7157
  task_name = task_arg
7128
7158
 
7129
- # Find project path
7130
- config = load_config()
7131
- projects_dir = Path(config.get("projects", {}).get("dir", "~/projects")).expanduser()
7132
-
7159
+ # Find project path from session's working directory or cwd
7133
7160
  if session:
7134
- project, _, _ = parse_session_name(session)
7135
- project_path = projects_dir / project
7161
+ project_path = _get_session_project_path(session)
7136
7162
  else:
7137
7163
  project_path = Path.cwd()
7138
7164
 
@@ -7214,13 +7240,9 @@ def cmd_task_validate(args) -> int:
7214
7240
  session = None
7215
7241
  task_name = task_arg
7216
7242
 
7217
- # Find project path
7218
- config = load_config()
7219
- projects_dir = Path(config.get("projects", {}).get("dir", "~/projects")).expanduser()
7220
-
7243
+ # Find project path from session's working directory or cwd
7221
7244
  if session:
7222
- project, _, _ = parse_session_name(session)
7223
- project_path = projects_dir / project
7245
+ project_path = _get_session_project_path(session)
7224
7246
  else:
7225
7247
  project_path = Path.cwd()
7226
7248
 
@@ -80,7 +80,7 @@ def generate_summary_filename(session: str, task_name: str) -> str:
80
80
  Relative path like .agentwire/task-summary-mysession-2024-01-15T07-00-00.md
81
81
  """
82
82
  timestamp = datetime.now().strftime("%Y-%m-%dT%H-%M-%S")
83
- return f".agentwire/task-summary-{session}-{timestamp}.md"
83
+ return f".agentwire/task-summary-{session}-{task_name}-{timestamp}.md"
84
84
 
85
85
 
86
86
  # =============================================================================
@@ -198,6 +198,10 @@ complete | incomplete | error
198
198
  sleep 1
199
199
  $AGENTWIRE send -s "$tmux_session" "/exit" >/dev/null 2>&1
200
200
 
201
+ # Clean up task context file so it doesn't haunt future sessions
202
+ rm "$task_context_file" 2>/dev/null
203
+ echo "[$(date -Iseconds)] TASK: cleaned up task context" >> "$dlog"
204
+
201
205
  # Wait for Claude to exit, then kill the tmux session
202
206
  sleep 3
203
207
  echo "[$(date -Iseconds)] TASK: killing tmux session" >> "$dlog"
@@ -219,6 +223,11 @@ complete | incomplete | error
219
223
  echo "[$(date -Iseconds)] TASK-ORPHAN: found summary at $recent_summary, exiting session" >> "$dlog"
220
224
  sleep 1
221
225
  $AGENTWIRE send -s "$tmux_session" "/exit" >/dev/null 2>&1
226
+
227
+ # Clean up orphan summary so it doesn't trigger again
228
+ rm "$recent_summary" 2>/dev/null
229
+ echo "[$(date -Iseconds)] TASK-ORPHAN: cleaned up orphan summary" >> "$dlog"
230
+
222
231
  sleep 3
223
232
  echo "[$(date -Iseconds)] TASK-ORPHAN: killing tmux session" >> "$dlog"
224
233
  tmux kill-session -t "$tmux_session" 2>/dev/null &
@@ -588,6 +588,21 @@ def say(text: str, session: str | None = None, voice: str | None = None) -> str:
588
588
  Returns:
589
589
  Success message or error description.
590
590
  """
591
+ # Quick TTS health check — fail fast if server is unreachable
592
+ try:
593
+ from .config import load_config as load_typed_config
594
+ from .network import NetworkContext
595
+ import urllib.request
596
+
597
+ cfg = load_typed_config()
598
+ if cfg.tts.backend not in ("runpod", "none"):
599
+ ctx = NetworkContext.from_config()
600
+ tts_url = ctx.get_service_url("tts", use_tunnel=True)
601
+ urllib.request.urlopen(f"{tts_url}/health", timeout=3)
602
+ except Exception as e:
603
+ url = locals().get("tts_url", "unknown")
604
+ return f"TTS server unreachable at {url}: {e}"
605
+
591
606
  args = ["say"]
592
607
  if session:
593
608
  args.extend(["-s", session])
@@ -363,7 +363,7 @@ agentwire hooks install
363
363
 
364
364
  ```bash
365
365
  # Claude Code
366
- ls ~/.claude/hooks/suppress-bg-notifications.sh
366
+ ls ~/.claude/hooks/idle-handler.sh
367
367
 
368
368
  # OpenCode
369
369
  ls ~/.config/opencode/plugin/agentwire-notify.ts
@@ -63,7 +63,7 @@ Add to `~/.claude/settings.json`:
63
63
 
64
64
  ## Current Implementation: AgentWire Integration
65
65
 
66
- `~/.claude/hooks/suppress-bg-notifications.sh` uses a two-pass idle system for worker panes.
66
+ `~/.claude/hooks/idle-handler.sh` uses a two-pass idle system for worker panes.
67
67
 
68
68
  **Two-Pass Idle System:**
69
69
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes