@barnaby.build/barnaby 0.0.132 → 0.0.171

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.
package/README.md CHANGED
@@ -9,42 +9,60 @@ Barnaby is a desktop AI agent orchestrator for **agentic coordination** — conn
9
9
 
10
10
  ## Installation
11
11
 
12
- ### Option 1: Download (recommended)
12
+ You can run Barnaby without cloning the repository. Choose one of the options below.
13
13
 
14
- [Download Barnaby](https://github.com/incendiosoftware/Barnaby/releases) portable `.exe` for Windows. No install required.
14
+ ### Option 1: Download (recommended for Windows)
15
+
16
+ [Download Barnaby](https://github.com/incendiosoftware/Barnaby/releases) — portable `.exe` for Windows. No install required. Best for correct Start menu and taskbar integration.
17
+
18
+ 1. Go to [Releases](https://github.com/incendiosoftware/Barnaby/releases)
19
+ 2. Download the latest `Barnaby_*_portable.exe`
20
+ 3. Run it — no installer, no Node.js needed
15
21
 
16
22
  ### Option 2: npm (requires Node.js 20+)
17
23
 
18
- **Quick run:**
24
+ If you have Node.js installed, you can run Barnaby via npm without cloning:
25
+
26
+ **Quick run (no install):**
19
27
  ```bash
20
28
  npx '@barnaby.build/barnaby'
21
29
  ```
22
- *PowerShell: use single quotes as shown. Bash/zsh: quotes optional.*
23
30
 
24
31
  **Global install:**
25
32
  ```bash
26
33
  npm install -g '@barnaby.build/barnaby'
27
34
  barnaby
28
35
  ```
29
- *PowerShell: use single quotes around the package name.*
30
36
 
31
- **Windows (npm install):** A Start menu shortcut is created automatically. Search "Barnaby" in Start. For correct taskbar icon, **pin the shortcut** (right‑click Pin to taskbar), not the running window.
37
+ *PowerShell: use single quotes around the package name (e.g. `'@barnaby.build/barnaby'`). Without quotes, `@` is interpreted as a variable.*
32
38
 
33
- ---
39
+ **Windows (npm install):**
40
+ - A Start menu shortcut is created automatically. Search "Barnaby" in Start.
41
+ - For correct taskbar icon: **pin the shortcut** (right‑click → Pin to taskbar), not the running window. Pinning the window shows "Electron" because npm runs the electron binary directly.
42
+ - If the shortcut has no icon: **Edit → Application Settings → Preferences** → **Repair Start menu shortcut**.
43
+ - For the full experience (correct icon everywhere), use the [portable exe](https://github.com/incendiosoftware/Barnaby/releases).
34
44
 
35
- Latest Binary Release
36
- [Download Barnaby v0.0.125](https://github.com/incendiosoftware/Barnaby/releases/tag/v0.0.125)
45
+ ### Orchestrator plugin (optional)
37
46
 
38
- Website: https://barnaby.build
39
- Written By: Stuart Mackereth
40
- Company: Incendio Trading Limited
41
- Email: incendiosoftware@gmail.com
47
+ The Orchestrator is an optional add-on for autonomous agent loops. It is **not** bundled with Barnaby.
42
48
 
43
- ## Screenshots
49
+ - **Install:** Edit → Application Settings → Orchestrator → **Install from npm**
50
+ - **Uninstall:** Edit → Application Settings → Orchestrator → **Uninstall**
51
+ - **Manual:** `cd ~/.barnaby/plugins` (or `%USERPROFILE%\.barnaby\plugins` on Windows), then `npm install '@barnaby.build/orchestrator'` or `npm uninstall '@barnaby.build/orchestrator'`
52
+
53
+ ---
54
+
55
+ Stuart Mackereth
56
+ https://barnaby.build
57
+ incendiosoftware@gmail.com
58
+ Incendio Trading Limited
44
59
 
45
- ![Barnaby dark screenshot](docs/screenshots/barnaby-dark.png)
60
+ ## Screenshots
46
61
 
47
- ![Barnaby light screenshot](docs/screenshots/barnaby-light.png)
62
+ <p align="center">
63
+ <img src="docs/screenshots/barnaby-dark.png" width="45%" alt="Barnaby dark" />
64
+ <img src="docs/screenshots/barnaby-light.png" width="45%" alt="Barnaby light" />
65
+ </p>
48
66
 
49
67
  ## Overview
50
68
 
@@ -70,13 +88,28 @@ Barnaby unifies **CLI-based** providers (Codex, Claude, Gemini) and **API-based*
70
88
 
71
89
  Compared to single-chat tools: Barnaby gives you parallel windowed agents and workspace-aware orchestration.
72
90
 
91
+ ## Orchestrator (optional add-on)
92
+
93
+ The **Orchestrator** is an optional plugin that extends Barnaby beyond single-turn chat. It is a persistent management engine for **autonomous agent loops** — set a goal, define guardrails, and let agents work until the task is complete.
94
+
95
+ **What it does:**
96
+ - **Cross-agent state sync** — Agents share context across panels (e.g. backend signals schema changes to frontend)
97
+ - **Goal persistence** — Stores a hierarchy of goals; pauses and resumes on failure or rate limits
98
+ - **Deterministic guardrails** — Intercepts output to verify linting and security rules before committing to the workspace
99
+
100
+ The Orchestrator is **not** bundled with Barnaby. Install it from Settings (Edit → Application Settings → Orchestrator → Install from npm) if you want autonomous, multi-stage development. See [barnaby.build](https://barnaby.build) for more details.
101
+
73
102
  ## Prerequisites
74
103
 
75
- - Node.js 18+ recommended
76
- - npm
104
+ - **Node.js 20+** (recommended: Node 22 LTS)
105
+ - **npm**
77
106
  - **CLI providers** (optional): Codex, Claude, and/or Gemini CLI installed and authenticated
78
107
  - **API provider** (optional): OpenRouter API key from https://openrouter.ai/keys
79
108
 
109
+ ### Built-in terminal note
110
+
111
+ The embedded terminal uses `node-pty`, which ships with prebuilt binaries for Windows, macOS, and Linux. No extra tools are needed. If the prebuilds don't load on your platform, `npm install` will attempt a source rebuild (requires Python 3 and C++ build tools). This is rare — the prebuilds work on most systems.
112
+
80
113
  ## Provider Coverage
81
114
 
82
115
  | Provider | Type | Setup |
@@ -111,15 +144,19 @@ gemini --version
111
144
  2. In Barnaby: open connectivity settings, select OpenRouter, enter your API key
112
145
  3. Choose a model (e.g. free-tier Llama 3.3 70B) and connect
113
146
 
114
- ## Development
147
+ ## Development (from source)
115
148
 
116
- From repo root:
149
+ To build and run from the cloned repository:
117
150
 
118
151
  ```sh
152
+ git clone https://github.com/incendiosoftware/Barnaby.git
153
+ cd Barnaby
119
154
  npm install
120
155
  npm run dev
121
156
  ```
122
157
 
158
+ If the postinstall step reports "Native module rebuild skipped", the terminal may still work via prebuilt binaries. If not, see [Prerequisites](#built-in-terminal-note).
159
+
123
160
  ## Build Commands (Standard Nomenclature)
124
161
 
125
162
  | Command | Meaning | Script |
package/bin/barnaby.cjs CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
  'use strict'
3
3
 
4
4
  const { spawn } = require('child_process')
@@ -8,8 +8,10 @@ const pkgRoot = path.join(__dirname, '..')
8
8
  const mainPath = path.join(pkgRoot, 'dist-electron', 'main', 'index.js')
9
9
 
10
10
  const electron = require('electron')
11
+ // stdio: 'ignore' when no TTY (e.g. Start menu shortcut) prevents a console window.
12
+ // stdio: 'inherit' when run from terminal keeps plugin logs visible for debugging.
11
13
  const child = spawn(electron, [mainPath], {
12
- stdio: 'inherit',
14
+ stdio: process.stdout?.isTTY ? 'inherit' : 'ignore',
13
15
  cwd: pkgRoot,
14
16
  env: { ...process.env }
15
17
  })
Binary file
package/build/icon.ico ADDED
Binary file
package/build/icon.png ADDED
Binary file