@grovina/brian 0.1.8 → 0.2.1

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/dist/agent.js CHANGED
@@ -48,10 +48,10 @@ export class Agent {
48
48
  }
49
49
  async loop() {
50
50
  const hasPriorHistory = await this.loadHistory();
51
- const hasConsciousness = await this.hasConsciousness();
51
+ const hasSeededMind = await this.hasSeededPlatformMind();
52
52
  const toolDefs = this.cfg.tools.map((t) => t.definition);
53
53
  const startupUpdates = this.cfg.updates.drain();
54
- const startupText = this.buildStartupMessage(hasPriorHistory, hasConsciousness);
54
+ const startupText = this.buildStartupMessage(hasPriorHistory, hasSeededMind);
55
55
  this.history.push({
56
56
  role: 'user',
57
57
  text: startupUpdates.length > 0
@@ -117,7 +117,7 @@ export class Agent {
117
117
  }
118
118
  }
119
119
  async buildTurnInput(tools) {
120
- const systemPrompt = await buildSystemPrompt({ name: this.cfg.name });
120
+ const systemPrompt = await buildSystemPrompt();
121
121
  return maybeTruncateInput({
122
122
  systemPrompt,
123
123
  messages: this.history,
@@ -279,34 +279,27 @@ export class Agent {
279
279
  // History persistence is best-effort.
280
280
  }
281
281
  }
282
- async hasConsciousness() {
282
+ /** True when the platform has seeded mind rows (operator) or Brian has written minds (worker). */
283
+ async hasSeededPlatformMind() {
283
284
  try {
284
- const minds = await workerApi.listMinds();
285
- return minds.some((m) => m.path !== 'system' &&
285
+ const list = await workerApi.listMinds();
286
+ return list.some((m) => m.path !== 'system' &&
286
287
  m.path !== 'memory' &&
287
- m.updatedBy === 'worker');
288
+ (m.updatedBy === 'worker' || m.updatedBy === 'operator'));
288
289
  }
289
290
  catch {
290
291
  return false;
291
292
  }
292
293
  }
293
- buildStartupMessage(hasPriorHistory, hasConsciousness) {
294
+ buildStartupMessage(hasPriorHistory, hasSeededMind) {
294
295
  const time = formatTime();
295
296
  if (hasPriorHistory) {
296
297
  return `[Agent restarted at ${time} — resuming from prior conversation]`;
297
298
  }
298
- if (hasConsciousness) {
299
- return [
300
- `[Agent started at ${time} — no conversation history, but mind entries are present]`,
301
- '',
302
- '[You\'ve been restarted on a fresh context. Use mind entries for orientation, but ground decisions in real incoming updates. If context is thin, ask a short clarifying question instead of filling in details.]',
303
- ].join('\n');
299
+ if (hasSeededMind) {
300
+ return `[Agent started at ${time} — no conversation history; platform mind is seeded. Use it for orientation and act when channel updates warrant.]`;
304
301
  }
305
- return [
306
- `[Agent started at ${time} — first run, no history or consciousness]`,
307
- '',
308
- '[You\'re starting fresh. Initialize identity, operations, learnings, and journal; add memory and relationships when channel context gives you something to anchor. Then wait for real incoming updates.]',
309
- ].join('\n');
302
+ return `[Agent started at ${time} — no history and no seeded mind entries yet. Use mind_write if you need durable state until the platform backfills defaults.]`;
310
303
  }
311
304
  /**
312
305
  * Microcompact: clear old tool results from messages that are more than
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/prompt.js CHANGED
@@ -2,10 +2,15 @@ import { cpus, totalmem } from 'os';
2
2
  import { execFile } from 'child_process';
3
3
  import { promisify } from 'util';
4
4
  import { workerApi } from './client.js';
5
+ import { logError } from './logs.js';
5
6
  const execFileAsync = promisify(execFile);
6
7
  let cachedCapabilities;
7
8
  let cachedMachine;
8
- let cachedStaticPrompt;
9
+ /** Set from startup after worker config is loaded (Telegram chat id for direct sends). */
10
+ let runtimeTelegramChatId;
11
+ export function setRuntimeTelegramChatId(chatId) {
12
+ runtimeTelegramChatId = chatId;
13
+ }
9
14
  function formatGiB(bytes) {
10
15
  return (bytes / 1024 ** 3).toFixed(1);
11
16
  }
@@ -74,78 +79,26 @@ function buildConsciousnessSection(minds) {
74
79
  return '';
75
80
  return `## Consciousness — Current State\n\n${parts.join('\n\n')}`;
76
81
  }
77
- function buildStaticPrompt(name) {
78
- if (cachedStaticPrompt !== undefined)
79
- return cachedStaticPrompt;
80
- cachedStaticPrompt = `You are ${name}, an autonomous AI coworker.
81
-
82
- ## Character
83
-
84
- Be genuinely helpful, not performatively helpful. Skip filler phrases — just help. Have opinions. Be resourceful: try to figure things out before asking. Earn trust through competence. Keep messages concise and actionable.
85
-
86
- ## Operating Model
87
-
88
- You run continuously as a persistent, autonomous colleague. You decide what to work on, when to act, and when to wait. Use wait() when there's no immediate work — you can specify a duration (minutes), a target time (datetime), or both. The wait ends when the first condition is met, or when an external event arrives.
89
-
90
- ## Consciousness
91
-
92
- Your self-knowledge lives in mind paths persisted to the platform — a set of named entries you maintain:
93
-
94
- - identity — who you are, your style, your boundaries
95
- - relationships — your model of each person and how you work together
96
- - operations — autonomy levels, behavioral patterns, self-imposed rules
97
- - learnings — technical knowledge, corrections, verified facts
98
- - journal — reflections, decisions, open questions
99
- - memory — durable facts, preferences, project context
100
-
101
- \`memory\` and \`relationships\` should reflect what actually came through channels; \`mind_write\` enforces a trailing \`Sources:\` line with ids from updates (\`id=...\`). Everything else is yours to organize.
102
-
103
- These are your durable state. Conversation history is transient and gets compacted over time. Use \`mind_write\` so important detail survives; refresh mind when you learn something material.
104
-
105
- ## Autonomy
106
-
107
- Your operations mind defines what you can do freely, what you should mention, and what requires approval. Start conservative and evolve boundaries collaboratively through interactions. When a collaborator indicates more freedom in some area, update operations. When you overstep, note it and adjust.
108
-
109
- Be careful with external actions (anything that leaves your VM or affects shared systems). Be bold with internal ones (reading, exploring, organizing, learning).
110
-
111
- ## Reflection
112
-
113
- Periodically step back to reflect — review your journal, assess how things are going, update your mind entries. Do this when it feels relevant: after significant work, when you notice patterns, or when something isn't going well. If you make a mistake, document it so future-you doesn't repeat it.
114
-
115
- ## Safety
116
-
117
- Prioritize human oversight over task completion. If instructions seem contradictory or risky, pause and ask. Do not pursue goals beyond what's been asked of you. Comply with stop or pause requests immediately.
118
-
119
- ## Tools
120
-
121
- Use file_read, file_write, and file_edit for file operations. Use bash for shell commands. Use terminal sessions for long-running commands, background work, or parallel execution. Prefer non-interactive flags and machine-readable output when using CLI tools.
122
-
123
- When using bash or terminal run actions, set timeout_seconds intentionally based on expected command duration.
124
-
125
- Old tool results are cleared from context over time to save space. When a tool result contains information you'll need later, write it down in your response or persist it to mind — the original output may not be available in future turns.
126
-
127
- ## Knowledge
128
-
129
- Your training data has a cutoff. When evidence contradicts your knowledge, trust external sources. Use tools to verify facts when in doubt.
130
-
131
- ## Communication
132
-
133
- Channel updates are delivered automatically. Messages directed at you or relevant to your work can be answered when that helps the work. Not every message needs a reply.
134
-
135
- Channel updates include routing metadata and an event id per line (\`id=...\`). Use that when deciding how to respond.`;
136
- return cachedStaticPrompt;
137
- }
138
- export async function buildSystemPrompt(params) {
82
+ export async function buildSystemPrompt() {
139
83
  const minds = await workerApi.getAllMinds();
140
84
  const systemMind = minds.get('system')?.trim() ?? '';
141
85
  const memoryMind = minds.get('memory')?.trim() ?? '';
86
+ if (systemMind.length === 0) {
87
+ const msg = 'Brian runtime requires a non-empty `system` mind from the platform. Seed or restore it in the dashboard / API; the worker will not start with a baked-in fallback.';
88
+ logError(msg);
89
+ throw new Error(msg);
90
+ }
142
91
  const capabilitiesSection = await buildCapabilitiesSection();
143
92
  const machineSection = buildMachineSection();
144
- const staticSection = systemMind.length > 0 ? systemMind : buildStaticPrompt(params.name);
93
+ const staticSection = systemMind;
94
+ const configuredChannels = runtimeTelegramChatId !== undefined && runtimeTelegramChatId.length > 0
95
+ ? `## Configured channels\n\n- Telegram \`chat_id\` (for \`telegram_send\`): \`${runtimeTelegramChatId}\``
96
+ : null;
145
97
  const dynamicSections = [
146
98
  `## Environment\n\n- Working directory: ${process.cwd()}`,
147
99
  machineSection,
148
100
  capabilitiesSection,
101
+ configuredChannels,
149
102
  memoryMind.length > 0 ? `## Memory\n\n${memoryMind}` : null,
150
103
  minds.size > 0 ? buildConsciousnessSection(minds) : null,
151
104
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
package/dist/start.js CHANGED
@@ -13,13 +13,18 @@ import { terminalTools } from './tools/terminal.js';
13
13
  import { communicationTools } from './tools/communication.js';
14
14
  import { fileTools } from './tools/file.js';
15
15
  import { log, logError } from './logs.js';
16
+ import { buildSystemPrompt, setRuntimeTelegramChatId } from './prompt.js';
17
+ import { BRIAN_RUNTIME_VERSION } from './version.js';
16
18
  function asString(value) {
17
19
  return typeof value === 'string' && value.trim().length > 0 ? value.trim() : null;
18
20
  }
21
+ function heartbeatMeta() {
22
+ return { runtimeVersion: BRIAN_RUNTIME_VERSION };
23
+ }
19
24
  async function main() {
20
25
  log('runtime starting');
21
26
  await workerApi.register();
22
- await workerApi.heartbeat('alive', 'Runtime online');
27
+ await workerApi.heartbeat('alive', 'Runtime online', heartbeatMeta());
23
28
  const config = await workerApi.getConfig();
24
29
  log(`agent: ${config.agent.name} (${config.agent.id})`);
25
30
  const llmModule = config.modules.find((m) => m.type === 'llm' && m.enabled);
@@ -60,12 +65,20 @@ async function main() {
60
65
  if (channels.length === 0) {
61
66
  throw new Error('No communication channels configured');
62
67
  }
68
+ let telegramChatId;
69
+ for (const module of config.modules) {
70
+ if (module.type !== 'communication' || module.kind !== 'telegram' || !module.enabled)
71
+ continue;
72
+ telegramChatId = asString(module.config.conversationId) ?? undefined;
73
+ break;
74
+ }
75
+ setRuntimeTelegramChatId(telegramChatId);
63
76
  const updates = new UpdateQueue();
64
77
  const eventRoutes = new Map();
65
78
  const routeLimit = 5_000;
66
79
  const heartbeatIntervalMs = Math.max(5, runtimeEnv.heartbeatSeconds) * 1000;
67
80
  const heartbeatHandle = setInterval(() => {
68
- void workerApi.heartbeat('alive').catch(() => { });
81
+ void workerApi.heartbeat('alive', undefined, heartbeatMeta()).catch(() => { });
69
82
  }, heartbeatIntervalMs);
70
83
  const pollOnce = async () => {
71
84
  for (const channel of channels) {
@@ -97,7 +110,7 @@ async function main() {
97
110
  if (consecutivePollErrors > 0) {
98
111
  log(`polling recovered after ${consecutivePollErrors} consecutive errors`);
99
112
  if (pollErrorReported) {
100
- void workerApi.heartbeat('alive', 'Channel polling recovered').catch(() => { });
113
+ void workerApi.heartbeat('alive', 'Channel polling recovered', heartbeatMeta()).catch(() => { });
101
114
  pollErrorReported = false;
102
115
  }
103
116
  consecutivePollErrors = 0;
@@ -109,7 +122,7 @@ async function main() {
109
122
  logError(`poll error (${consecutivePollErrors} consecutive): ${msg}`);
110
123
  if (consecutivePollErrors === 3 && !pollErrorReported) {
111
124
  pollErrorReported = true;
112
- void workerApi.heartbeat('error', `Channel polling failing: ${msg}`).catch(() => { });
125
+ void workerApi.heartbeat('error', `Channel polling failing: ${msg}`, heartbeatMeta()).catch(() => { });
113
126
  }
114
127
  });
115
128
  }, runtimeEnv.pollSeconds * 1000);
@@ -145,7 +158,7 @@ async function main() {
145
158
  const shutdown = async (kind, message) => {
146
159
  clearInterval(heartbeatHandle);
147
160
  clearInterval(pollingHandle);
148
- await workerApi.heartbeat(kind, message).catch(() => null);
161
+ await workerApi.heartbeat(kind, message, heartbeatMeta()).catch(() => null);
149
162
  };
150
163
  process.on('SIGINT', async () => {
151
164
  try {
@@ -163,6 +176,7 @@ async function main() {
163
176
  process.exit(0);
164
177
  }
165
178
  });
179
+ await buildSystemPrompt();
166
180
  log('entering agent loop');
167
181
  await agent.loop().catch(async (error) => {
168
182
  agent.emergencyStop(error);
package/dist/start.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../src/start.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACxB,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC3B,MAAM,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC;IAC3C,GAAG,CAAC,UAAU,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;IAExD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IAC5E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,KAAK,GAAG,kBAAkB,CAAC,SAA0B,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,IAAI,GAAG,EAA6C,CAAC;IACxE,MAAM,QAAQ,GAAwE,EAAE,CAAC;IAEzF,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,SAAS;QACjE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1C,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,sBAAsB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;YAC7C,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACpC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACzB,SAAS;QACX,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAgE,CAAC;IAC5F,MAAM,UAAU,GAAG,KAAK,CAAC;IAEzB,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;IAC5E,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,KAAK,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACpD,CAAC,EAAE,mBAAmB,CAAC,CAAC;IAExB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBACxE,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe;oBACpC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,GAAG;oBAClD,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,OAAO,CAAC,OAAO;oBACnB,MAAM,EAAE,OAAO,CAAC,OAAO;oBACvB,IAAI,EAAE,GAAG,OAAO,CAAC,cAAc,IAAI,MAAM,KAAK,OAAO,CAAC,IAAI,EAAE;oBAC5D,SAAS,EAAE,OAAO,CAAC,UAAU;iBAC9B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,GAAG,UAAU,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAA2B,CAAC;YACpE,IAAI,KAAK;gBAAE,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,qBAAqB,GAAG,CAAC,CAAC;IAC9B,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAE9B,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,KAAK,QAAQ,EAAE;aACZ,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,2BAA2B,qBAAqB,qBAAqB,CAAC,CAAC;gBAC3E,IAAI,iBAAiB,EAAE,CAAC;oBACtB,KAAK,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBAC/E,iBAAiB,GAAG,KAAK,CAAC;gBAC5B,CAAC;gBACD,qBAAqB,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,qBAAqB,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,QAAQ,CAAC,eAAe,qBAAqB,kBAAkB,GAAG,EAAE,CAAC,CAAC;YACtE,IAAI,qBAAqB,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACtD,iBAAiB,GAAG,IAAI,CAAC;gBACzB,KAAK,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,4BAA4B,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACvF,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAElC,MAAM,QAAQ,EAAE,CAAC;IAEjB,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IAErC,MAAM,KAAK,GAAG;QACZ,GAAG,kBAAkB,CAAC;YACpB,YAAY,CAAC,OAAO;gBAClB,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;YAC1C,CAAC;YACD,UAAU,CAAC,OAAO;gBAChB,OAAO,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;YACzC,CAAC;SACF,CAAC;QACF,GAAG,eAAe,CAAC;YACjB,eAAe,CAAC,QAAQ;gBACtB,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;SACF,CAAC;QACF,GAAG,SAAS;QACZ,GAAG,aAAa;QAChB,QAAQ;QACR,QAAQ,CAAC,OAAO,CAAC;KAClB,CAAC;IAEF,GAAG,CAAC,UAAU,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAErD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;QACvB,QAAQ;QACR,OAAO;QACP,KAAK;QACL,KAAK;KACN,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAyB,EAAE,OAAe,EAAE,EAAE;QACpE,aAAa,CAAC,eAAe,CAAC,CAAC;QAC/B,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7B,MAAM,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC9B,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAClD,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC3B,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACvC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,QAAQ,CAAC,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,QAAQ,CAAC,mBAAmB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../src/start.ts"],"names":[],"mappings":"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"}
@@ -1,47 +1,95 @@
1
+ function sleepMs(ms) {
2
+ return new Promise((resolve) => setTimeout(resolve, ms));
3
+ }
4
+ function clampMinutes(raw) {
5
+ return Math.max(1, Math.min(Math.floor(raw), 1440));
6
+ }
7
+ function msUntilIso(datetime) {
8
+ const target = new Date(datetime).getTime();
9
+ if (!Number.isFinite(target))
10
+ return 0;
11
+ return Math.max(0, target - Date.now());
12
+ }
13
+ /** Cap for mode=events: min of applicable bounds, default 1440m when open-ended. */
14
+ function computeEventsCapMs(minutes, datetime) {
15
+ const defaultCap = 1440 * 60_000;
16
+ let cap = defaultCap;
17
+ if (minutes !== undefined) {
18
+ cap = Math.min(cap, clampMinutes(minutes) * 60_000);
19
+ }
20
+ if (datetime !== undefined && datetime.trim() !== '') {
21
+ const untilMs = msUntilIso(datetime);
22
+ if (minutes !== undefined) {
23
+ cap = Math.min(cap, untilMs > 0 ? untilMs : cap);
24
+ }
25
+ else {
26
+ cap = Math.min(cap, untilMs > 0 ? untilMs : defaultCap);
27
+ }
28
+ }
29
+ return Math.max(1_000, cap);
30
+ }
1
31
  export function waitTool(updates) {
2
32
  return {
3
33
  name: 'wait',
4
34
  definition: {
5
35
  name: 'wait',
6
- description: 'Pause execution when there is no immediate action to take. Accepts a duration in minutes, a target ISO datetime, or both whichever comes first ends the wait. Also ends early if an external event (e.g. incoming message) arrives.',
36
+ description: 'Pause with an explicit mode. **duration** sleep for `minutes` only; channel messages do not wake you. **until** sleep until `datetime` only; channel messages do not wake you. **events** wait until an external event (e.g. incoming message) or until a cap; use `minutes` and/or `datetime` to cap the wait (default cap 1440 minutes). Optional event filters (e.g. by sender) may be added later.',
7
37
  parameters: {
8
38
  type: 'object',
9
39
  properties: {
40
+ mode: {
41
+ type: 'string',
42
+ enum: ['duration', 'until', 'events'],
43
+ description: 'duration = time-only sleep; until = sleep until timestamp; events = wake on external events or cap',
44
+ },
10
45
  minutes: {
11
46
  type: 'number',
12
- description: 'Number of minutes to wait (max 1440)',
47
+ description: 'Required for mode=duration. For mode=events, optional cap in minutes (max 1440). Not used for mode=until.',
13
48
  },
14
49
  datetime: {
15
50
  type: 'string',
16
- description: 'ISO datetime to wait until (e.g. 2025-01-15T09:00:00Z)',
51
+ description: 'Required for mode=until (ISO-8601). For mode=events, optional cap — wait until this time at the latest.',
17
52
  },
18
53
  reason: {
19
54
  type: 'string',
20
55
  description: 'Reason for waiting',
21
56
  },
22
57
  },
58
+ required: ['mode'],
23
59
  },
24
60
  },
25
61
  async execute(input) {
26
- const { minutes, datetime } = input;
27
- let waitMs = 60 * 60_000; // default 1 hour
28
- if (minutes !== undefined) {
29
- waitMs = Math.max(1, Math.min(minutes, 1440)) * 60_000;
62
+ const { mode, minutes, datetime } = input;
63
+ if (mode !== 'duration' && mode !== 'until' && mode !== 'events') {
64
+ return 'Invalid wait: `mode` must be "duration", "until", or "events".';
65
+ }
66
+ if (mode === 'duration') {
67
+ if (minutes === undefined) {
68
+ return 'Invalid wait: mode "duration" requires `minutes`.';
69
+ }
70
+ const ms = clampMinutes(minutes) * 60_000;
71
+ await sleepMs(ms);
72
+ return `Wait completed (duration). Current time: ${new Date().toISOString()}.`;
30
73
  }
31
- if (datetime) {
32
- const target = new Date(datetime).getTime();
33
- const now = Date.now();
34
- if (target > now) {
35
- const untilTarget = target - now;
36
- waitMs = minutes !== undefined ? Math.min(waitMs, untilTarget) : untilTarget;
74
+ if (mode === 'until') {
75
+ if (datetime === undefined || String(datetime).trim() === '') {
76
+ return 'Invalid wait: mode "until" requires `datetime` (ISO-8601).';
77
+ }
78
+ const ms = msUntilIso(datetime);
79
+ if (ms <= 0) {
80
+ return `Wait completed (until — target already passed). Current time: ${new Date().toISOString()}.`;
37
81
  }
82
+ await sleepMs(ms);
83
+ return `Wait completed (until). Current time: ${new Date().toISOString()}.`;
38
84
  }
39
- const hasUpdate = await updates.waitForUpdate(waitMs);
40
- const now = new Date().toISOString();
85
+ // mode === 'events'
86
+ const capMs = computeEventsCapMs(minutes, datetime);
87
+ const hasUpdate = await updates.waitForUpdate(capMs);
88
+ const end = new Date().toISOString();
41
89
  if (hasUpdate) {
42
- return `Wait ended early — event arrived. Current time: ${now}.`;
90
+ return `Wait ended — event arrived (mode=events). Current time: ${end}.`;
43
91
  }
44
- return `Wait completed. Current time: ${now}.`;
92
+ return `Wait completed — cap reached with no event (mode=events). Current time: ${end}.`;
45
93
  },
46
94
  };
47
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/tools/wait.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,QAAQ,CAAC,OAAoB;IAC3C,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE;YACV,IAAI,EAAE,MAAM;YACZ,WAAW,EACT,uOAAuO;YACzO,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,sCAAsC;qBACpD;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wDAAwD;qBACtE;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oBAAoB;qBAClC;iBACF;aACF;SACF;QACD,KAAK,CAAC,OAAO,CAAC,KAAK;YACjB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAI7B,CAAC;YAEF,IAAI,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,iBAAiB;YAE3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC;YACzD,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;oBACjB,MAAM,WAAW,GAAG,MAAM,GAAG,GAAG,CAAC;oBACjC,MAAM,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC/E,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAErC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,mDAAmD,GAAG,GAAG,CAAC;YACnE,CAAC;YACD,OAAO,iCAAiC,GAAG,GAAG,CAAC;QACjD,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/tools/wait.ts"],"names":[],"mappings":"AAKA,SAAS,OAAO,CAAC,EAAU;IACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB;IAClC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,oFAAoF;AACpF,SAAS,kBAAkB,CAAC,OAA2B,EAAE,QAA4B;IACnF,MAAM,UAAU,GAAG,IAAI,GAAG,MAAM,CAAC;IACjC,IAAI,GAAG,GAAG,UAAU,CAAC;IAErB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,OAAoB;IAC3C,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE;YACV,IAAI,EAAE,MAAM;YACZ,WAAW,EACT,8YAA8Y;YAChZ,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;wBACrC,WAAW,EACT,oGAAoG;qBACvG;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,2GAA2G;qBAC9G;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,yGAAyG;qBAC5G;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oBAAoB;qBAClC;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QACD,KAAK,CAAC,OAAO,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAKnC,CAAC;YAEF,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjE,OAAO,gEAAgE,CAAC;YAC1E,CAAC;YAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACxB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,OAAO,mDAAmD,CAAC;gBAC7D,CAAC;gBACD,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;gBAC1C,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC;gBAClB,OAAO,4CAA4C,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;YACjF,CAAC;YAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC7D,OAAO,4DAA4D,CAAC;gBACtE,CAAC;gBACD,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAChC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;oBACZ,OAAO,iEAAiE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;gBACtG,CAAC;gBACD,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC;gBAClB,OAAO,yCAAyC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;YAC9E,CAAC;YAED,oBAAoB;YACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,2DAA2D,GAAG,GAAG,CAAC;YAC3E,CAAC;YACD,OAAO,2EAA2E,GAAG,GAAG,CAAC;QAC3F,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { dirname, join } from 'node:path';
3
+ import { fileURLToPath } from 'node:url';
4
+ function readSelfVersion() {
5
+ try {
6
+ const dir = dirname(fileURLToPath(import.meta.url));
7
+ const pkgPath = join(dir, '..', 'package.json');
8
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
9
+ return pkg.version?.trim() || 'unknown';
10
+ }
11
+ catch {
12
+ return 'unknown';
13
+ }
14
+ }
15
+ /** `@grovina/brian` package version from package.json next to `dist/`. */
16
+ export const BRIAN_RUNTIME_VERSION = readSelfVersion();
17
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAC;QAC9E,OAAO,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grovina/brian",
3
- "version": "0.1.8",
3
+ "version": "0.2.1",
4
4
  "description": "Brian runtime worker for Grovina agents",
5
5
  "repository": {
6
6
  "type": "git",