bosun 0.37.1 → 0.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/.env.example +4 -1
  2. package/README.md +7 -0
  3. package/agent-custom-tools.mjs +899 -0
  4. package/agent-pool.mjs +128 -2
  5. package/agent-prompts.mjs +238 -7
  6. package/agent-tool-config.mjs +14 -3
  7. package/bosun-skills.mjs +302 -4
  8. package/bosun.schema.json +157 -0
  9. package/cli.mjs +168 -14
  10. package/context-cache.mjs +1856 -0
  11. package/context-indexer.mjs +1076 -0
  12. package/context-shredding-config.mjs +680 -0
  13. package/desktop/launch.mjs +49 -1
  14. package/desktop/main.mjs +84 -18
  15. package/fleet-coordinator.mjs +34 -1
  16. package/kanban-adapter.mjs +30 -3
  17. package/library-manager.mjs +62 -6
  18. package/maintenance.mjs +39 -4
  19. package/monitor.mjs +134 -0
  20. package/package.json +23 -4
  21. package/primary-agent.mjs +52 -1
  22. package/session-tracker.mjs +6 -3
  23. package/setup-web-server.mjs +291 -10
  24. package/setup.mjs +78 -0
  25. package/task-cli.mjs +20 -0
  26. package/telegram-bot.mjs +98 -36
  27. package/telegram-poll-owner.mjs +248 -0
  28. package/telegram-sentinel.mjs +125 -40
  29. package/tools/dead-exports-scan.mjs +150 -0
  30. package/tools/emoji-scrub.mjs +153 -0
  31. package/tools/git-hot-files.mjs +64 -0
  32. package/tools/imports-graph.mjs +96 -0
  33. package/tools/list-todos.mjs +90 -0
  34. package/tools/test-file-pairs.mjs +107 -0
  35. package/tools/validate-no-floating-promises.mjs +105 -0
  36. package/ui/app.js +242 -202
  37. package/ui/components/agent-selector.js +433 -581
  38. package/ui/components/charts.js +17 -21
  39. package/ui/components/chat-view.js +496 -332
  40. package/ui/components/command-palette.js +286 -233
  41. package/ui/components/diff-viewer.js +96 -61
  42. package/ui/components/forms.js +122 -117
  43. package/ui/components/kanban-board.js +147 -121
  44. package/ui/components/session-list.js +285 -171
  45. package/ui/components/shared.js +337 -200
  46. package/ui/components/workspace-switcher.js +291 -132
  47. package/ui/demo.html +198 -3
  48. package/ui/index.html +67 -21
  49. package/ui/modules/icons.js +2 -0
  50. package/ui/modules/mic-track-registry.js +83 -0
  51. package/ui/modules/mui.js +536 -0
  52. package/ui/modules/router.js +2 -0
  53. package/ui/modules/settings-schema.js +26 -9
  54. package/ui/modules/state.js +34 -0
  55. package/ui/modules/streaming.js +1 -1
  56. package/ui/modules/voice-barge-in.js +27 -0
  57. package/ui/modules/voice-client-sdk.js +452 -69
  58. package/ui/modules/voice-client.js +855 -58
  59. package/ui/modules/voice-overlay.js +919 -104
  60. package/ui/modules/voice.js +7 -6
  61. package/ui/setup.html +440 -8
  62. package/ui/styles/base.css +22 -23
  63. package/ui/styles/components.css +18 -1
  64. package/ui/styles/kanban.css +4 -4
  65. package/ui/styles/layout.css +64 -4
  66. package/ui/styles/sessions.css +67 -33
  67. package/ui/styles.css +258 -0
  68. package/ui/tabs/agents.js +143 -150
  69. package/ui/tabs/chat.js +188 -156
  70. package/ui/tabs/control.js +105 -77
  71. package/ui/tabs/dashboard.js +35 -21
  72. package/ui/tabs/infra.js +316 -397
  73. package/ui/tabs/library.js +430 -226
  74. package/ui/tabs/logs.js +345 -247
  75. package/ui/tabs/manual-flows.js +1646 -0
  76. package/ui/tabs/settings.js +381 -185
  77. package/ui/tabs/tasks.js +313 -379
  78. package/ui/tabs/telemetry.js +603 -124
  79. package/ui/tabs/workflows.js +724 -195
  80. package/ui/vendor/emotion-react.js +13 -0
  81. package/ui/vendor/emotion-styled.js +13 -0
  82. package/ui/vendor/mui-material.js +269 -0
  83. package/ui/vendor/preact-jsx-runtime.js +10 -0
  84. package/ui-server.mjs +1980 -127
  85. package/voice-relay.mjs +363 -93
  86. package/voice-tools.mjs +191 -35
  87. package/workflow-engine.mjs +219 -9
  88. package/workflow-nodes.mjs +1081 -179
  89. package/workflow-templates/_helpers.mjs +5 -1
  90. package/workflow-templates/github.mjs +205 -94
  91. package/workflow-templates/research.mjs +273 -0
  92. package/workflow-templates/task-batch.mjs +247 -0
  93. package/workflow-templates/task-lifecycle.mjs +2 -0
  94. package/workflow-templates.mjs +90 -1
package/.env.example CHANGED
@@ -21,7 +21,6 @@ SHARED_STATE_STALE_THRESHOLD_MS=300000
21
21
  # Maximum retry attempts before permanently ignoring a task (default: 3)
22
22
  SHARED_STATE_MAX_RETRIES=3
23
23
  # Task claim owner staleness threshold in milliseconds (default: 600000 = 10 minutes)
24
- # Used by task-claims.mjs to detect stale local claims
25
24
  TASK_CLAIM_OWNER_STALE_TTL_MS=600000
26
25
 
27
26
  # ─── Project Identity ─────────────────────────────────────────────────────────
@@ -178,6 +177,10 @@ VOICE_VISION_MODEL=gpt-4.1-mini
178
177
  # Gemini provider mode (Tier 2 voice fallback + Gemini vision)
179
178
  # GEMINI_API_KEY=
180
179
  # GOOGLE_API_KEY=
180
+ # Transcription model used for audio-to-text (default: gpt-4o-transcribe)
181
+ # VOICE_TRANSCRIPTION_MODEL=gpt-4o-mini-transcribe
182
+ # Enable/disable input audio transcription in realtime sessions (default: true)
183
+ # VOICE_TRANSCRIPTION_ENABLED=true
181
184
  # Voice output persona
182
185
  VOICE_ID=alloy
183
186
  # server_vad | semantic_vad | none
package/README.md CHANGED
@@ -117,6 +117,13 @@ Set `primaryAgent` in `.bosun/bosun.config.json` or choose an executor preset du
117
117
  - Use `/report weekly` as an alias.
118
118
  - Optional scheduler knobs in `.env`: `TELEGRAM_WEEKLY_REPORT_ENABLED`, `TELEGRAM_WEEKLY_REPORT_DAY`, `TELEGRAM_WEEKLY_REPORT_HOUR` (UTC), and `TELEGRAM_WEEKLY_REPORT_DAYS`.
119
119
 
120
+ ## Daemon and sentinel startup
121
+
122
+ - `bosun --daemon` starts the long-running daemon/monitor.
123
+ - `bosun --sentinel` starts only the Telegram sentinel companion process.
124
+ - `bosun --daemon --sentinel` starts daemon + sentinel together (recommended for unattended operation).
125
+ - `bosun --terminate` is the clean reset command when you suspect stale/ghost processes.
126
+
120
127
  ## Documentation
121
128
 
122
129
  **Published docs (website):** https://bosun.engineer/docs/