beercan 0.5.4 → 0.5.6

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 (54) hide show
  1. package/README.md +43 -2
  2. package/dist/api/handlers/bloops.js +1 -1
  3. package/dist/api/handlers/bloops.js.map +1 -1
  4. package/dist/chat/index.js +1 -1
  5. package/dist/chat/index.js.map +1 -1
  6. package/dist/cli.js +12 -2
  7. package/dist/cli.js.map +1 -1
  8. package/dist/config.d.ts +15 -0
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js +19 -0
  11. package/dist/config.js.map +1 -1
  12. package/dist/core/calendar-manager.d.ts +25 -0
  13. package/dist/core/calendar-manager.d.ts.map +1 -0
  14. package/dist/core/calendar-manager.js +69 -0
  15. package/dist/core/calendar-manager.js.map +1 -0
  16. package/dist/core/heartbeat.d.ts +7 -5
  17. package/dist/core/heartbeat.d.ts.map +1 -1
  18. package/dist/core/heartbeat.js +20 -46
  19. package/dist/core/heartbeat.js.map +1 -1
  20. package/dist/core/maintenance-manager.d.ts +20 -0
  21. package/dist/core/maintenance-manager.d.ts.map +1 -0
  22. package/dist/core/maintenance-manager.js +45 -0
  23. package/dist/core/maintenance-manager.js.map +1 -0
  24. package/dist/core/runner.d.ts.map +1 -1
  25. package/dist/core/runner.js +2 -3
  26. package/dist/core/runner.js.map +1 -1
  27. package/dist/core/system-projects.d.ts +13 -0
  28. package/dist/core/system-projects.d.ts.map +1 -0
  29. package/dist/core/system-projects.js +69 -0
  30. package/dist/core/system-projects.js.map +1 -0
  31. package/dist/events/daemon.d.ts.map +1 -1
  32. package/dist/events/daemon.js +29 -2
  33. package/dist/events/daemon.js.map +1 -1
  34. package/dist/events/trigger-manager.d.ts +7 -4
  35. package/dist/events/trigger-manager.d.ts.map +1 -1
  36. package/dist/events/trigger-manager.js +19 -9
  37. package/dist/events/trigger-manager.js.map +1 -1
  38. package/dist/index.d.ts +4 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +14 -2
  41. package/dist/index.js.map +1 -1
  42. package/dist/schemas.d.ts +4 -0
  43. package/dist/schemas.d.ts.map +1 -1
  44. package/dist/schemas.js +2 -0
  45. package/dist/schemas.js.map +1 -1
  46. package/dist/storage/database.d.ts +3 -1
  47. package/dist/storage/database.d.ts.map +1 -1
  48. package/dist/storage/database.js +12 -4
  49. package/dist/storage/database.js.map +1 -1
  50. package/dist/tools/builtin/calendar.d.ts +11 -0
  51. package/dist/tools/builtin/calendar.d.ts.map +1 -0
  52. package/dist/tools/builtin/calendar.js +355 -0
  53. package/dist/tools/builtin/calendar.js.map +1 -0
  54. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/storage/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/storage/database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { ToolDefinition } from "../../schemas.js";
2
+ import type { ToolHandler } from "../registry.js";
3
+ export declare const calendarListDefinition: ToolDefinition;
4
+ export declare const calendarListHandler: ToolHandler;
5
+ export declare const calendarGetEventsDefinition: ToolDefinition;
6
+ export declare const calendarGetEventsHandler: ToolHandler;
7
+ export declare const calendarCreateEventDefinition: ToolDefinition;
8
+ export declare const calendarCreateEventHandler: ToolHandler;
9
+ export declare const calendarSearchDefinition: ToolDefinition;
10
+ export declare const calendarSearchHandler: ToolHandler;
11
+ //# sourceMappingURL=calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../src/tools/builtin/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAclD,eAAO,MAAM,sBAAsB,EAAE,cASpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,WAGjC,CAAC;AAIF,eAAO,MAAM,2BAA2B,EAAE,cAsBzC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,WAWtC,CAAC;AAIF,eAAO,MAAM,6BAA6B,EAAE,cA0B3C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,WAYxC,CAAC;AAIF,eAAO,MAAM,wBAAwB,EAAE,cAmBtC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,WAUnC,CAAC"}
@@ -0,0 +1,355 @@
1
+ import { existsSync } from "fs";
2
+ import { join } from "path";
3
+ import { homedir } from "os";
4
+ // ── macOS Calendar Access ─────────────────────────────────────
5
+ // Uses Swift/EventKit via a compiled helper binary for fast,
6
+ // native calendar access on macOS.
7
+ const HELPER_DIR = join(homedir(), ".beercan");
8
+ const HELPER_BIN = join(HELPER_DIR, "calendar-helper");
9
+ // ── List Calendars ────────────────────────────────────────────
10
+ export const calendarListDefinition = {
11
+ name: "calendar_list",
12
+ description: "List all calendar accounts and their calendars on macOS. Returns calendar names, source accounts, writable status, and type.",
13
+ inputSchema: {
14
+ type: "object",
15
+ properties: {},
16
+ required: [],
17
+ },
18
+ };
19
+ export const calendarListHandler = async () => {
20
+ assertMacOS();
21
+ return runHelper("list", {});
22
+ };
23
+ // ── Get Calendar Events ───────────────────────────────────────
24
+ export const calendarGetEventsDefinition = {
25
+ name: "calendar_get_events",
26
+ description: "Get calendar events within a date range. Returns event details including title, start/end times, location, notes, and calendar name. Dates should be in YYYY-MM-DD format.",
27
+ inputSchema: {
28
+ type: "object",
29
+ properties: {
30
+ start_date: {
31
+ type: "string",
32
+ description: "Start date in YYYY-MM-DD format (defaults to today)",
33
+ },
34
+ end_date: {
35
+ type: "string",
36
+ description: "End date in YYYY-MM-DD format (defaults to 7 days from start)",
37
+ },
38
+ calendar_name: {
39
+ type: "string",
40
+ description: "Filter to a specific calendar name (optional, returns all if omitted)",
41
+ },
42
+ },
43
+ required: [],
44
+ },
45
+ };
46
+ export const calendarGetEventsHandler = async (input) => {
47
+ assertMacOS();
48
+ const startDate = input.start_date || new Date().toISOString().slice(0, 10);
49
+ const endDate = input.end_date ||
50
+ new Date(new Date(startDate).getTime() + 7 * 86400000).toISOString().slice(0, 10);
51
+ return runHelper("events", {
52
+ start: startDate,
53
+ end: endDate,
54
+ ...(input.calendar_name ? { calendar: input.calendar_name } : {}),
55
+ });
56
+ };
57
+ // ── Create Calendar Event ─────────────────────────────────────
58
+ export const calendarCreateEventDefinition = {
59
+ name: "calendar_create_event",
60
+ description: "Create a new calendar event on macOS. Specify title, start/end times, and optionally location, notes, calendar name, and all-day flag.",
61
+ inputSchema: {
62
+ type: "object",
63
+ properties: {
64
+ title: { type: "string", description: "Event title/summary" },
65
+ start_date: {
66
+ type: "string",
67
+ description: "Start date/time in ISO 8601 format (e.g., 2026-03-21T14:00:00)",
68
+ },
69
+ end_date: {
70
+ type: "string",
71
+ description: "End date/time in ISO 8601 format (e.g., 2026-03-21T15:00:00)",
72
+ },
73
+ calendar_name: {
74
+ type: "string",
75
+ description: "Calendar name to add the event to (uses default calendar if omitted)",
76
+ },
77
+ location: { type: "string", description: "Event location (optional)" },
78
+ notes: { type: "string", description: "Event notes/description (optional)" },
79
+ all_day: { type: "boolean", description: "Whether this is an all-day event (default false)" },
80
+ },
81
+ required: ["title", "start_date", "end_date"],
82
+ },
83
+ };
84
+ export const calendarCreateEventHandler = async (input) => {
85
+ assertMacOS();
86
+ const args = {
87
+ title: input.title,
88
+ start: input.start_date,
89
+ end: input.end_date,
90
+ };
91
+ if (input.calendar_name)
92
+ args.calendar = input.calendar_name;
93
+ if (input.location)
94
+ args.location = input.location;
95
+ if (input.notes)
96
+ args.notes = input.notes;
97
+ if (input.all_day)
98
+ args.allDay = true;
99
+ return runHelper("create", args);
100
+ };
101
+ // ── Search Calendar Events ────────────────────────────────────
102
+ export const calendarSearchDefinition = {
103
+ name: "calendar_search",
104
+ description: "Search calendar events by keyword in title/notes. Searches within a date range (default: past 30 days to 30 days ahead).",
105
+ inputSchema: {
106
+ type: "object",
107
+ properties: {
108
+ query: { type: "string", description: "Search keyword to match against event titles and notes" },
109
+ start_date: {
110
+ type: "string",
111
+ description: "Start of search range in YYYY-MM-DD format (default: 30 days ago)",
112
+ },
113
+ end_date: {
114
+ type: "string",
115
+ description: "End of search range in YYYY-MM-DD format (default: 30 days from now)",
116
+ },
117
+ },
118
+ required: ["query"],
119
+ },
120
+ };
121
+ export const calendarSearchHandler = async (input) => {
122
+ assertMacOS();
123
+ const now = Date.now();
124
+ const startDate = input.start_date || new Date(now - 30 * 86400000).toISOString().slice(0, 10);
125
+ const endDate = input.end_date || new Date(now + 30 * 86400000).toISOString().slice(0, 10);
126
+ return runHelper("search", {
127
+ query: input.query,
128
+ start: startDate,
129
+ end: endDate,
130
+ });
131
+ };
132
+ // ── Helpers ───────────────────────────────────────────────────
133
+ function assertMacOS() {
134
+ if (process.platform !== "darwin") {
135
+ throw new Error("Calendar tools are only available on macOS");
136
+ }
137
+ }
138
+ async function ensureHelper() {
139
+ if (existsSync(HELPER_BIN))
140
+ return HELPER_BIN;
141
+ const { execFileSync } = await import("child_process");
142
+ const { writeFileSync, mkdirSync } = await import("fs");
143
+ mkdirSync(HELPER_DIR, { recursive: true });
144
+ const swiftSrc = join(HELPER_DIR, "calendar-helper.swift");
145
+ writeFileSync(swiftSrc, SWIFT_SOURCE);
146
+ try {
147
+ execFileSync("swiftc", ["-O", "-o", HELPER_BIN, swiftSrc], {
148
+ timeout: 60000,
149
+ encoding: "utf-8",
150
+ });
151
+ }
152
+ catch (err) {
153
+ throw new Error(`Failed to compile calendar helper: ${err.stderr || err.message}`);
154
+ }
155
+ return HELPER_BIN;
156
+ }
157
+ async function runHelper(command, args) {
158
+ const bin = await ensureHelper();
159
+ const { execFileSync } = await import("child_process");
160
+ const payload = JSON.stringify({ command, ...args });
161
+ try {
162
+ const result = execFileSync(bin, [], {
163
+ input: payload,
164
+ timeout: 30000,
165
+ encoding: "utf-8",
166
+ maxBuffer: 2 * 1024 * 1024,
167
+ });
168
+ return result.trim();
169
+ }
170
+ catch (err) {
171
+ const stderr = err.stderr?.toString() || "";
172
+ if (stderr.includes("denied") || stderr.includes("not authorized")) {
173
+ throw new Error("Calendar access denied. Grant access in System Settings > Privacy & Security > Calendars.");
174
+ }
175
+ throw new Error(`Calendar operation failed: ${stderr || err.message}`);
176
+ }
177
+ }
178
+ // ── Swift Helper Source ───────────────────────────────────────
179
+ const SWIFT_SOURCE = `
180
+ import EventKit
181
+ import Foundation
182
+
183
+ struct Request: Decodable {
184
+ let command: String
185
+ let start: String?
186
+ let end: String?
187
+ let calendar: String?
188
+ let query: String?
189
+ let title: String?
190
+ let location: String?
191
+ let notes: String?
192
+ let allDay: Bool?
193
+ }
194
+
195
+ let store = EKEventStore()
196
+ let sem = DispatchSemaphore(value: 0)
197
+ var accessGranted = false
198
+
199
+ store.requestFullAccessToEvents { granted, error in
200
+ accessGranted = granted
201
+ sem.signal()
202
+ }
203
+ sem.wait()
204
+
205
+ guard accessGranted else {
206
+ print("{\\"error\\":\\"Calendar access denied. Grant access in System Settings > Privacy & Security > Calendars.\\"}")
207
+ exit(1)
208
+ }
209
+
210
+ let inputData = FileHandle.standardInput.readDataToEndOfFile()
211
+ guard let request = try? JSONDecoder().decode(Request.self, from: inputData) else {
212
+ print("{\\"error\\":\\"Invalid input\\"}")
213
+ exit(1)
214
+ }
215
+
216
+ let df = DateFormatter()
217
+ df.dateFormat = "yyyy-MM-dd"
218
+ let iso = ISO8601DateFormatter()
219
+ // Also parse full ISO datetime
220
+ let isoFull = ISO8601DateFormatter()
221
+ isoFull.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
222
+
223
+ func parseDate(_ s: String) -> Date? {
224
+ return df.date(from: s) ?? iso.date(from: s) ?? isoFull.date(from: s) ?? {
225
+ // Try parsing without timezone (local time)
226
+ let lf = DateFormatter()
227
+ lf.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
228
+ lf.timeZone = TimeZone.current
229
+ return lf.date(from: s)
230
+ }()
231
+ }
232
+
233
+ func eventToDict(_ ev: EKEvent) -> [String: Any] {
234
+ return [
235
+ "title": ev.title ?? "",
236
+ "start": iso.string(from: ev.startDate),
237
+ "end": iso.string(from: ev.endDate),
238
+ "location": ev.location ?? "",
239
+ "notes": (ev.notes ?? "").prefix(500),
240
+ "calendar": ev.calendar.title,
241
+ "source": ev.calendar.source.title,
242
+ "allDay": ev.isAllDay,
243
+ "uid": ev.eventIdentifier ?? ""
244
+ ]
245
+ }
246
+
247
+ func output(_ obj: Any) {
248
+ if let data = try? JSONSerialization.data(withJSONObject: obj, options: [.sortedKeys]),
249
+ let str = String(data: data, encoding: .utf8) {
250
+ print(str)
251
+ }
252
+ }
253
+
254
+ switch request.command {
255
+ case "list":
256
+ let cals = store.calendars(for: .event)
257
+ var results: [[String: Any]] = []
258
+ for cal in cals {
259
+ results.append([
260
+ "name": cal.title,
261
+ "source": cal.source.title,
262
+ "writable": cal.allowsContentModifications,
263
+ "type": cal.type.rawValue
264
+ ])
265
+ }
266
+ output(results)
267
+
268
+ case "events":
269
+ guard let startStr = request.start, let endStr = request.end,
270
+ let startDate = parseDate(startStr),
271
+ let endDate = parseDate(endStr + "T23:59:59") ?? parseDate(endStr) else {
272
+ print("{\\"error\\":\\"Invalid dates\\"}")
273
+ exit(1)
274
+ }
275
+ var calendars: [EKCalendar]? = nil
276
+ if let calName = request.calendar {
277
+ calendars = store.calendars(for: .event).filter { $0.title == calName }
278
+ }
279
+ let pred = store.predicateForEvents(withStart: startDate, end: endDate, calendars: calendars)
280
+ let events = store.events(matching: pred)
281
+ var results: [[String: Any]] = []
282
+ for ev in events {
283
+ results.append(eventToDict(ev))
284
+ }
285
+ output(results)
286
+
287
+ case "search":
288
+ guard let q = request.query?.lowercased() else {
289
+ print("{\\"error\\":\\"Missing query\\"}")
290
+ exit(1)
291
+ }
292
+ let startDate = request.start.flatMap { parseDate($0) } ?? Date().addingTimeInterval(-30*86400)
293
+ let endDate = request.end.flatMap { parseDate($0 + "T23:59:59") ?? parseDate($0) } ?? Date().addingTimeInterval(30*86400)
294
+ let pred = store.predicateForEvents(withStart: startDate, end: endDate, calendars: nil)
295
+ let events = store.events(matching: pred)
296
+ var results: [[String: Any]] = []
297
+ for ev in events {
298
+ let title = (ev.title ?? "").lowercased()
299
+ let notes = (ev.notes ?? "").lowercased()
300
+ if title.contains(q) || notes.contains(q) {
301
+ results.append(eventToDict(ev))
302
+ }
303
+ }
304
+ output(results)
305
+
306
+ case "create":
307
+ guard let title = request.title,
308
+ let startStr = request.start, let endStr = request.end,
309
+ let startDate = parseDate(startStr),
310
+ let endDate = parseDate(endStr) else {
311
+ print("{\\"error\\":\\"Missing required fields: title, start, end\\"}")
312
+ exit(1)
313
+ }
314
+
315
+ let event = EKEvent(eventStore: store)
316
+ event.title = title
317
+ event.startDate = startDate
318
+ event.endDate = endDate
319
+ event.isAllDay = request.allDay ?? false
320
+ if let loc = request.location { event.location = loc }
321
+ if let n = request.notes { event.notes = n }
322
+
323
+ if let calName = request.calendar {
324
+ if let cal = store.calendars(for: .event).first(where: { $0.title == calName && $0.allowsContentModifications }) {
325
+ event.calendar = cal
326
+ } else {
327
+ print("{\\"error\\":\\"Calendar not found or not writable: \\(calName)\\"}")
328
+ exit(1)
329
+ }
330
+ } else {
331
+ event.calendar = store.defaultCalendarForNewEvents
332
+ }
333
+
334
+ do {
335
+ try store.save(event, span: .thisEvent)
336
+ let result: [String: Any] = [
337
+ "success": true,
338
+ "uid": event.eventIdentifier ?? "",
339
+ "title": event.title ?? "",
340
+ "start": iso.string(from: event.startDate),
341
+ "end": iso.string(from: event.endDate),
342
+ "calendar": event.calendar.title
343
+ ]
344
+ output(result)
345
+ } catch {
346
+ print("{\\"error\\":\\"Failed to create event: \\(error.localizedDescription)\\"}")
347
+ exit(1)
348
+ }
349
+
350
+ default:
351
+ print("{\\"error\\":\\"Unknown command: \\(request.command)\\"}")
352
+ exit(1)
353
+ }
354
+ `;
355
+ //# sourceMappingURL=calendar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../../src/tools/builtin/calendar.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beercan",
3
- "version": "0.5.4",
3
+ "version": "0.5.6",
4
4
  "description": "Autonomous AI agent system — powered by Skippy the Magnificent.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",