jonah-fleet 1.26.0 → 1.27.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 (40) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +29 -10
  3. package/dist/commands/daemon.d.ts.map +1 -1
  4. package/dist/commands/init.d.ts.map +1 -1
  5. package/dist/commands/status.d.ts.map +1 -1
  6. package/dist/commands/sync.d.ts.map +1 -1
  7. package/dist/index.d.ts +1 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +2630 -2396
  10. package/dist/lib/brand.d.ts +38 -0
  11. package/dist/lib/brand.d.ts.map +1 -0
  12. package/dist/lib/daemon.d.ts.map +1 -1
  13. package/dist/lib/loop-guard.d.ts.map +1 -1
  14. package/dist/lib/presets.d.ts +2 -2
  15. package/dist/lib/presets.d.ts.map +1 -1
  16. package/dist/lib/terminal-card.d.ts.map +1 -1
  17. package/dist/lib/worktree.d.ts +4 -1
  18. package/dist/lib/worktree.d.ts.map +1 -1
  19. package/package.json +4 -4
  20. package/templates/docs/AGENTS.template.md +6 -1
  21. package/templates/prompts/_prompt-template.md +1 -1
  22. package/templates/prompts/analytics-review.md +1 -1
  23. package/templates/prompts/autowork.md +2 -2
  24. package/templates/prompts/design-review.md +1 -1
  25. package/templates/prompts/optimizer.md +5 -4
  26. package/templates/prompts/peer-review.md +1 -1
  27. package/templates/prompts/product-planning.md +1 -1
  28. package/templates/scripts/run-with-loop-guard.js +8 -4
  29. package/templates/workflows/analytics-review-cron.yml +15 -2
  30. package/templates/workflows/autowork-cron.yml +15 -2
  31. package/templates/workflows/dependency-check-cron.yml +15 -2
  32. package/templates/workflows/design-review-cron.yml +15 -2
  33. package/templates/workflows/issues-housekeeping-cron.yml +15 -2
  34. package/templates/workflows/prompt-optimizer-cron.yml +15 -2
  35. package/templates/workflows/sync-fleet.yml +16 -2
  36. package/templates/workflows/trigger-autowork-manual.yml +15 -2
  37. package/templates/workflows/trigger-autowork-on-assign.yml +15 -2
  38. package/templates/workflows/trigger-autowork-on-bug.yml +15 -2
  39. package/templates/workflows/trigger-autowork-on-merge.yml +15 -2
  40. package/templates/workflows/trigger-review-routine.yml +15 -2
package/CHANGELOG.md CHANGED
@@ -5,12 +5,33 @@ All notable changes to `jonah-fleet` will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.27.0](https://github.com/Jonah-Projects/jonah-fleet/compare/v1.26.0...v1.27.0) (2026-09-23)
9
+
10
+
11
+ ### Features
12
+
13
+ * **brand:** add Fleet visual assets and brand documentation ([812ef40](https://github.com/Jonah-Projects/jonah-fleet/commit/812ef40c217dc3a6d3b9bab59deb43aaecf9d34f))
14
+ * **branding:** integrate Fleet brand identity, ASCII emblem, and tactical readout styling ([#413](https://github.com/Jonah-Projects/jonah-fleet/issues/413)) ([ff06856](https://github.com/Jonah-Projects/jonah-fleet/commit/ff06856a79f2b9b123076df205eb5f6e69964289))
15
+ * **workflows:** configure dynamic Git committer resolution and migrate repo URLs to Jonah-Projects ([#392](https://github.com/Jonah-Projects/jonah-fleet/issues/392)) ([d0dd1c7](https://github.com/Jonah-Projects/jonah-fleet/commit/d0dd1c7dcbfe2e68d724c15fc4723fcd36681aeb))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * **daemon:** harden error handling against unhandled rejections and prune stale worktrees ([#395](https://github.com/Jonah-Projects/jonah-fleet/issues/395)) ([d263585](https://github.com/Jonah-Projects/jonah-fleet/commit/d263585ccddefd82e20f9655722864ce1735f84e))
21
+ * **guard:** exempt replace_file_content and write_to_file from repetition and ping-pong circuit breakers ([#420](https://github.com/Jonah-Projects/jonah-fleet/issues/420)) ([fee7e99](https://github.com/Jonah-Projects/jonah-fleet/commit/fee7e9978fb0ff0df9c8e383b4e7eeb211398e1a))
22
+ * **presets:** dynamically resolve FLEET_VERSION from package.json and sync manifest ([#416](https://github.com/Jonah-Projects/jonah-fleet/issues/416)) ([40119fa](https://github.com/Jonah-Projects/jonah-fleet/commit/40119fa8fbd77b455d10b2fc1ea7299b4aa03f98))
23
+
8
24
  ## [1.26.0](https://github.com/juliendurandeu/jonah-fleet/compare/v1.25.2...v1.26.0) (2026-09-23)
9
25
 
10
26
 
11
27
  ### Features
12
28
 
13
29
  * **daemon:** autowork backlog zero-token preflight and diagnostic reporting ([#362](https://github.com/juliendurandeu/jonah-fleet/issues/362)) ([#387](https://github.com/juliendurandeu/jonah-fleet/issues/387)) ([4671829](https://github.com/juliendurandeu/jonah-fleet/commit/4671829701c0daf6e10544a22b59265a237630e6))
30
+ * **workflows:** configure dynamic Git committer identity resolution from active token and update repository URLs to Jonah-Projects/jonah-fleet
31
+
32
+ ### Bug Fixes
33
+
34
+ * **guard:** exempt replace_file_content and write_to_file from repetition and ping-pong circuit breakers
14
35
 
15
36
  ## [1.25.2](https://github.com/juliendurandeu/jonah-fleet/compare/v1.25.1...v1.25.2) (2026-09-23)
16
37
 
@@ -37,6 +58,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
37
58
 
38
59
  ### Features
39
60
 
61
+ * **branding:** integrate Fleet brand identity, ASCII emblem, tactical CLI readout banners, and unified routine footers and run badges ([#401](https://github.com/Jonah-Projects/jonah-fleet/issues/401)).
40
62
  * **daemon:** autowork backlog zero-token preflight and diagnostic reporting ([#362](https://github.com/juliendurandeu/jonah-fleet/issues/362)).
41
63
  * **guard:** capture action arguments on LoopGuard circuit breaker trips, enrich failure cards and reports with formatted action details, and surface active tool commands in runner stdout.
42
64
  * **workflows:** provision MCP servers for Antigravity CLI in `analytics-review-cron.yml` and `design-review-cron.yml`.
package/README.md CHANGED
@@ -1,10 +1,15 @@
1
- # ⚓ Jonah Fleet
1
+ <p align="center">
2
+ <img src="./assets/brand/banner.jpg" alt="Fleet — Autonomous Repo Command" width="100%" />
3
+ </p>
4
+
5
+ # ⚡ Fleet
2
6
 
3
7
  > **Standalone Autonomous Agent Fleet & Symphony Orchestration Engine**
4
8
  > Battle-tested autonomous coding agents, claim protocols, review loops, and engineering skills for multi-repo teams.
5
9
 
6
- [![CI](https://github.com/juliendurandeu/jonah-fleet/actions/workflows/ci.yml/badge.svg)](https://github.com/juliendurandeu/jonah-fleet/actions/workflows/ci.yml)
10
+ [![CI](https://github.com/Jonah-Projects/jonah-fleet/actions/workflows/ci.yml/badge.svg)](https://github.com/Jonah-Projects/jonah-fleet/actions/workflows/ci.yml)
7
11
  [![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](./package.json)
12
+ [![Brand: Fleet](https://img.shields.io/badge/Brand-Fleet_Design_System-BBF65D?style=flat)](./assets/brand/README.md)
8
13
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
9
14
 
10
15
  ---
@@ -23,11 +28,11 @@
23
28
 
24
29
  ## 🏛️ Architecture: The Symphony Lineage
25
30
 
26
- Jonah Fleet is a **GitHub-native implementation of OpenAI's [Symphony specification](https://github.com/openai/symphony/blob/main/SPEC.md)** for orchestrating autonomous coding agents against issue trackers.
31
+ Fleet is a **GitHub-native implementation of OpenAI's [Symphony specification](https://github.com/openai/symphony/blob/main/SPEC.md)** for orchestrating autonomous coding agents against issue trackers.
27
32
 
28
- Rather than requiring a persistent orchestrator daemon or complex server infrastructure, Jonah Fleet maps all Symphony primitives directly onto GitHub and ephemeral CLI agent sessions:
33
+ Rather than requiring a persistent orchestrator daemon or complex server infrastructure, Fleet maps all Symphony primitives directly onto GitHub and ephemeral CLI agent sessions:
29
34
 
30
- | Symphony Concept | Jonah Fleet Implementation |
35
+ | Symphony Concept | Fleet Implementation |
31
36
  |---|---|
32
37
  | **`WORKFLOW.md`** (Repo config & prompt templates) | `AGENTS.md` (aliased as `GEMINI.md`/`CLAUDE.md`) + `.github/prompts/*.md` |
33
38
  | **Orchestrator** (Poll, dispatch, reconcile) | GitHub Actions event triggers + scheduled cron routines (zero persistent daemons) |
@@ -37,9 +42,9 @@ Rather than requiring a persistent orchestrator daemon or complex server infrast
37
42
  | **Warm-Context Synchronization** | In-session polling & live fix loops between Autowork and Peer Review before merge |
38
43
  | **Dead-Run Recovery** | Stale claim detection (>6h without live PR) via autowork & issues-housekeeping sweeps |
39
44
 
40
- ### Architectural Comparison: Jonah Fleet vs. SwarmClaw
45
+ ### Architectural Comparison: Fleet vs. SwarmClaw
41
46
 
42
- | Dimension | ⚓ Jonah Fleet | 🦞 SwarmClaw (`@swarmclawai/swarmclaw`) |
47
+ | Dimension | ⚡ Fleet | 🦞 SwarmClaw (`@swarmclawai/swarmclaw`) |
43
48
  |---|---|---|
44
49
  | **Paradigm** | **Symphony-aligned, issue-driven workflow automation** | **Self-hosted multi-agent runtime & swarm platform** |
45
50
  | **Runtime Model** | Ephemeral CLI sessions (`agy`) spun up per issue/PR | Persistent daemon / Electron desktop app / server |
@@ -145,7 +150,7 @@ Each target project contains an `agents-manifest.json` at its root:
145
150
 
146
151
  ```json
147
152
  {
148
- "$schema": "https://raw.githubusercontent.com/juliendurandeu/jonah-fleet/main/schema.json",
153
+ "$schema": "https://raw.githubusercontent.com/Jonah-Projects/jonah-fleet/main/schema.json",
149
154
  "version": "1.6.0",
150
155
  "preset": "standard",
151
156
  "routines": {
@@ -202,14 +207,28 @@ Each target project contains an `agents-manifest.json` at its root:
202
207
  ## 🔄 Bi-Directional Continuous Improvement
203
208
 
204
209
  1. **Local Optimization**: The `optimizer.md` routine monitors run logs in each connected project.
205
- 2. **Upstream Contribution**: When a prompt or workflow improvement is discovered, the optimizer opens an upstream PR against `juliendurandeu/jonah-fleet` (or via `npx jonah-fleet contribute`).
210
+ 2. **Upstream Contribution**: When a prompt or workflow improvement is discovered, the optimizer opens an upstream PR against `Jonah-Projects/jonah-fleet` (or via `npx jonah-fleet contribute`).
206
211
  3. **Downstream Sync**: Merged improvements in `jonah-fleet` create a semantic release, and downstream consumer repositories receive automated update PRs via `.github/workflows/sync-fleet.yml`.
207
212
 
208
213
  ---
209
214
 
215
+ ## 🎨 Brand & Visual Identity
216
+
217
+ Fleet's visual design system and assets are located in [`assets/brand/`](./assets/brand):
218
+
219
+ | Asset | Resource | Ratio | Usage |
220
+ |---|---|---|---|
221
+ | **Avatar / App Icon** | [`avatar.jpg`](./assets/brand/avatar.jpg) | 1:1 (1024x1024) | Bot user profile, app icon, social avatar |
222
+ | **Logo Lockup** | [`logo.jpg`](./assets/brand/logo.jpg) | 3:2 (1536x1024) | Documentation headers, splash screens, decks |
223
+ | **Header Banner** | [`banner.jpg`](./assets/brand/banner.jpg) | 16:9 (1792x1008) | Repository hero, social cards, release cards |
224
+
225
+ See [`assets/brand/README.md`](./assets/brand/README.md) for the complete design system specifications, color codes, and typography guidelines.
226
+
227
+ ---
228
+
210
229
  ## 🙏 Acknowledgments & Credits
211
230
 
212
- - **[OpenAI Symphony](https://github.com/openai/symphony)**: Jonah Fleet's orchestration architecture, single-flight claim locking, reader/writer separation, and prompt engineering protocols are inspired by OpenAI's [Symphony Specification](https://github.com/openai/symphony/blob/main/SPEC.md), licensed under [Apache-2.0](https://github.com/openai/symphony/blob/main/LICENSE). See [NOTICE](./NOTICE) for formal attribution.
231
+ - **[OpenAI Symphony](https://github.com/openai/symphony)**: Fleet's orchestration architecture, single-flight claim locking, reader/writer separation, and prompt engineering protocols are inspired by OpenAI's [Symphony Specification](https://github.com/openai/symphony/blob/main/SPEC.md), licensed under [Apache-2.0](https://github.com/openai/symphony/blob/main/LICENSE). See [NOTICE](./NOTICE) for formal attribution.
213
232
 
214
233
  ---
215
234
 
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/commands/daemon.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmGzG"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/commands/daemon.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8GzG"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAQA,OAAO,EAAqB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEtE,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYzF;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmHtE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAQA,OAAO,EAAqB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAItE,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYzF;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6HtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAsB,SAAS,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4K1E"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAsB,SAAS,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuL1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmDtE"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEtE"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './lib/loop-guard.js';
2
+ export * from './lib/brand.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6IA,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6IA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}