@mind-your-now/myn 0.6.0 → 0.6.2
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/src/tools/tasks.d.ts +1 -0
- package/dist/src/tools/tasks.d.ts.map +1 -1
- package/dist/src/tools/tasks.js +6 -3
- package/dist/src/tools/tasks.js.map +1 -1
- package/dist/src/tools/ynab.d.ts.map +1 -1
- package/dist/src/tools/ynab.js +45 -6
- package/dist/src/tools/ynab.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,6 +19,7 @@ export declare const TasksInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
19
19
|
id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
20
20
|
recurrenceRule: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
21
21
|
isAutoScheduled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
22
|
+
autoScheduleEnabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
22
23
|
calendarId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
23
24
|
updates: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>>;
|
|
24
25
|
query: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../../src/tools/tasks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAwBjD,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../../src/tools/tasks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAwBjD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;EAoC3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC;AAExD,wBAAsB,YAAY,CAChC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA0BlG;AAgHD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAUpF;AAGD,UAAU,iBAAiB;IACzB,YAAY,CAAC,IAAI,EAAE;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC;QACrB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KAC/C,GAAG,IAAI,CAAC;IACT,MAAM,EAAE;QACN,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC"}
|
package/dist/src/tools/tasks.js
CHANGED
|
@@ -49,7 +49,8 @@ export const TasksInputSchema = Type.Object({
|
|
|
49
49
|
// Create specific
|
|
50
50
|
id: Type.Optional(Type.String({ format: 'uuid' })), // Client-generated UUID
|
|
51
51
|
recurrenceRule: Type.Optional(Type.String()), // For HABIT/CHORE types
|
|
52
|
-
isAutoScheduled: Type.Optional(Type.Boolean({ description: 'Enable auto-scheduling by the planning system' })),
|
|
52
|
+
isAutoScheduled: Type.Optional(Type.Boolean({ description: 'Enable auto-scheduling by the planning system. Use this field name, NOT autoScheduleEnabled.' })),
|
|
53
|
+
autoScheduleEnabled: Type.Optional(Type.Boolean({ description: 'DEPRECATED alias for isAutoScheduled. Prefer isAutoScheduled.' })),
|
|
53
54
|
calendarId: Type.Optional(Type.String({ description: 'Calendar ID to link this task to (e.g. "primary" for default Google Calendar)' })),
|
|
54
55
|
// Update specific
|
|
55
56
|
updates: Type.Optional(Type.Record(Type.String(), Type.Unknown())),
|
|
@@ -143,8 +144,10 @@ async function createTask(client, input) {
|
|
|
143
144
|
body.projectId = input.projectId;
|
|
144
145
|
if (input.recurrenceRule)
|
|
145
146
|
body.recurrenceRule = input.recurrenceRule;
|
|
146
|
-
|
|
147
|
-
|
|
147
|
+
// Accept both field names — some models hallucinate "autoScheduleEnabled" instead of "isAutoScheduled"
|
|
148
|
+
const autoSched = input.isAutoScheduled ?? input.autoScheduleEnabled;
|
|
149
|
+
if (autoSched != null)
|
|
150
|
+
body.isAutoScheduled = autoSched;
|
|
148
151
|
if (input.calendarId)
|
|
149
152
|
body.calendarId = input.calendarId;
|
|
150
153
|
// Validation: HABIT and CHORE must have recurrenceRule
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/tools/tasks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/tools/tasks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ynab.d.ts","sourceRoot":"","sources":["../../../src/tools/ynab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,eAAO,MAAM,eAAe;;;;;;;;EAmB1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,eAAe,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ynab.d.ts","sourceRoot":"","sources":["../../../src/tools/ynab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,eAAO,MAAM,eAAe;;;;;;;;EAmB1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,eAAe,CAAC,MAAM,CAAC;AAyCtD,wBAAsB,WAAW,CAC/B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAwBlG;AA2ED,UAAU,iBAAiB;IACzB,YAAY,CAAC,IAAI,EAAE;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC;QACrB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KAC/C,GAAG,IAAI,CAAC;CACV;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAUnF"}
|
package/dist/src/tools/ynab.js
CHANGED
|
@@ -23,6 +23,45 @@ export const YnabInputSchema = Type.Object({
|
|
|
23
23
|
// upcoming_bills parameters
|
|
24
24
|
days: Type.Optional(Type.Number({ description: 'Number of days to look ahead for bills (default: 7)' }))
|
|
25
25
|
});
|
|
26
|
+
/**
|
|
27
|
+
* Convert YNAB milliunits to formatted dollar string.
|
|
28
|
+
* YNAB API returns all monetary amounts in milliunits (÷1000 for dollars).
|
|
29
|
+
*/
|
|
30
|
+
function formatDollars(milliunits) {
|
|
31
|
+
const dollars = milliunits / 1000;
|
|
32
|
+
const abs = Math.abs(dollars);
|
|
33
|
+
const formatted = abs.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
|
|
34
|
+
return dollars < 0 ? `-$${formatted}` : `$${formatted}`;
|
|
35
|
+
}
|
|
36
|
+
/** Known milliunit field names in YNAB API responses */
|
|
37
|
+
const MILLIUNIT_FIELDS = new Set([
|
|
38
|
+
'readyToAssign', 'totalIncome', 'totalBudgeted', 'totalActivity',
|
|
39
|
+
'balance', 'budgeted', 'activity', 'clearedBalance', 'unclearedBalance',
|
|
40
|
+
'goalTarget', 'goalUnderFunded', 'goalOverFunded', 'goalOverallFunded', 'goalOverallLeft',
|
|
41
|
+
'amount', 'total', 'totalSpending'
|
|
42
|
+
]);
|
|
43
|
+
/**
|
|
44
|
+
* Recursively convert milliunit fields to dollar strings in API responses.
|
|
45
|
+
*/
|
|
46
|
+
function convertMilliunits(obj) {
|
|
47
|
+
if (obj === null || obj === undefined)
|
|
48
|
+
return obj;
|
|
49
|
+
if (Array.isArray(obj))
|
|
50
|
+
return obj.map(convertMilliunits);
|
|
51
|
+
if (typeof obj === 'object') {
|
|
52
|
+
const result = {};
|
|
53
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
54
|
+
if (MILLIUNIT_FIELDS.has(key) && typeof value === 'number') {
|
|
55
|
+
result[key] = formatDollars(value);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
result[key] = convertMilliunits(value);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
return obj;
|
|
64
|
+
}
|
|
26
65
|
export async function executeYnab(client, input) {
|
|
27
66
|
try {
|
|
28
67
|
switch (input.action) {
|
|
@@ -51,18 +90,18 @@ export async function executeYnab(client, input) {
|
|
|
51
90
|
}
|
|
52
91
|
async function getBudgetOverview(client) {
|
|
53
92
|
const data = await client.get('/api/v1/ynab/budget/overview');
|
|
54
|
-
return jsonResult(data);
|
|
93
|
+
return jsonResult(convertMilliunits(data));
|
|
55
94
|
}
|
|
56
95
|
async function getCategoryBalance(client, input) {
|
|
57
96
|
if (!input.categoryName) {
|
|
58
97
|
return errorResult('categoryName is required for category_balance action');
|
|
59
98
|
}
|
|
60
99
|
const data = await client.get(`/api/v1/ynab/budget/categories/search?query=${encodeURIComponent(input.categoryName)}`);
|
|
61
|
-
return jsonResult(data);
|
|
100
|
+
return jsonResult(convertMilliunits(data));
|
|
62
101
|
}
|
|
63
102
|
async function getAccountBalances(client) {
|
|
64
103
|
const data = await client.get('/api/v1/ynab/budget/accounts');
|
|
65
|
-
return jsonResult(data);
|
|
104
|
+
return jsonResult(convertMilliunits(data));
|
|
66
105
|
}
|
|
67
106
|
async function setCategoryGoal(client, input) {
|
|
68
107
|
if (!input.categoryName) {
|
|
@@ -89,17 +128,17 @@ async function setCategoryGoal(client, input) {
|
|
|
89
128
|
if (goalTargetMonth)
|
|
90
129
|
body.goalTargetMonth = goalTargetMonth;
|
|
91
130
|
const data = await client.patch(`/api/v1/ynab/budget/categories/${searchResult.id}/goal`, body);
|
|
92
|
-
return jsonResult(data);
|
|
131
|
+
return jsonResult(convertMilliunits(data));
|
|
93
132
|
}
|
|
94
133
|
async function getSpendingInsights(client, input) {
|
|
95
134
|
const months = input.months || 3;
|
|
96
135
|
const data = await client.get(`/api/v1/ynab/analytics/spending?months=${months}`);
|
|
97
|
-
return jsonResult(data);
|
|
136
|
+
return jsonResult(convertMilliunits(data));
|
|
98
137
|
}
|
|
99
138
|
async function getUpcomingBills(client, input) {
|
|
100
139
|
const days = input.days || 7;
|
|
101
140
|
const data = await client.get(`/api/v1/ynab/scheduled?days=${days}`);
|
|
102
|
-
return jsonResult(data);
|
|
141
|
+
return jsonResult(convertMilliunits(data));
|
|
103
142
|
}
|
|
104
143
|
export function registerYnabTool(api, client) {
|
|
105
144
|
api.registerTool({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ynab.js","sourceRoot":"","sources":["../../../src/tools/ynab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;KAC/B,CAAC;IACF,kDAAkD;IAClD,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,2CAA2C,EAAE,CAAC,CAAC;IACtG,+BAA+B;IAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,+GAA+G,EAAE,CAAC,CAAC;IACtK,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC,CAAC;IAC9G,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,yEAAyE,EAAE,CAAC,CAAC;IACvI,+BAA+B;IAC/B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,0CAA0C,EAAE,CAAC,CAAC;IAC/F,4BAA4B;IAC5B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC,CAAC;CACzG,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAoB,EACpB,KAAgB;IAEhB,IAAI,CAAC;QACH,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,iBAAiB;gBACpB,OAAO,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACzC,KAAK,kBAAkB;gBACrB,OAAO,MAAM,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACjD,KAAK,kBAAkB;gBACrB,OAAO,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAC1C,KAAK,mBAAmB;gBACtB,OAAO,MAAM,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9C,KAAK,mBAAmB;gBACtB,OAAO,MAAM,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAClD,KAAK,gBAAgB;gBACnB,OAAO,MAAM,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC/C;gBACE,OAAO,WAAW,CAAC,mBAAoB,KAA4B,CAAC,MAAM,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,MAAoB;IACnD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAU,8BAA8B,CAAC,CAAC;IACvE,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ynab.js","sourceRoot":"","sources":["../../../src/tools/ynab.ts"],"names":[],"mappings":"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"}
|