@rubytech/taskmaster 1.0.92 → 1.0.94
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/build-info.json +3 -3
- package/dist/control-ui/assets/{index-hWMGux19.js → index-DfQL37PU.js} +4 -4
- package/dist/control-ui/assets/index-DfQL37PU.js.map +1 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/memory/manager.js +10 -0
- package/extensions/diagnostics-otel/node_modules/.bin/acorn +0 -0
- package/extensions/googlechat/node_modules/.bin/taskmaster +0 -0
- package/extensions/line/node_modules/.bin/taskmaster +0 -0
- package/extensions/matrix/node_modules/.bin/markdown-it +0 -0
- package/extensions/matrix/node_modules/.bin/taskmaster +0 -0
- package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +0 -0
- package/extensions/memory-lancedb/node_modules/.bin/openai +0 -0
- package/extensions/msteams/node_modules/.bin/taskmaster +0 -0
- package/extensions/nostr/node_modules/.bin/taskmaster +0 -0
- package/extensions/nostr/node_modules/.bin/tsc +0 -0
- package/extensions/nostr/node_modules/.bin/tsserver +0 -0
- package/extensions/zalo/node_modules/.bin/taskmaster +0 -0
- package/extensions/zalouser/node_modules/.bin/taskmaster +0 -0
- package/package.json +54 -64
- package/scripts/install.sh +0 -0
- package/taskmaster-docs/USER-GUIDE.md +4 -4
- package/templates/.DS_Store +0 -0
- package/templates/customer/.DS_Store +0 -0
- package/templates/customer/agents/.DS_Store +0 -0
- package/templates/taskmaster/.gitignore +1 -0
- package/dist/control-ui/assets/index-hWMGux19.js.map +0 -1
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<title>Taskmaster Control</title>
|
|
7
7
|
<meta name="color-scheme" content="dark light" />
|
|
8
8
|
<link rel="icon" type="image/png" href="./favicon.png" />
|
|
9
|
-
<script type="module" crossorigin src="./assets/index-
|
|
9
|
+
<script type="module" crossorigin src="./assets/index-DfQL37PU.js"></script>
|
|
10
10
|
<link rel="stylesheet" crossorigin href="./assets/index-B7exVNNa.css">
|
|
11
11
|
</head>
|
|
12
12
|
<body>
|
package/dist/memory/manager.js
CHANGED
|
@@ -931,6 +931,16 @@ export class MemoryIndexManager {
|
|
|
931
931
|
path.join(this.workspaceDir, "MEMORY.md"),
|
|
932
932
|
path.join(this.workspaceDir, "memory"),
|
|
933
933
|
];
|
|
934
|
+
// Also watch the shared canonical memory dir (workspace root memory/).
|
|
935
|
+
// On Linux (inotify), filesystem events do not fire through symlinks —
|
|
936
|
+
// the agent's memory/public (symlink) won't detect changes to the real
|
|
937
|
+
// ~/taskmaster/memory/public/. Watching the real target directory ensures
|
|
938
|
+
// file changes are detected regardless of platform symlink behaviour.
|
|
939
|
+
const workspaceRoot = this.workspaceDir.replace(/\/agents\/[^/]+$/, "");
|
|
940
|
+
if (workspaceRoot !== this.workspaceDir) {
|
|
941
|
+
const sharedMemoryDir = path.join(workspaceRoot, "memory");
|
|
942
|
+
watchPaths.push(sharedMemoryDir);
|
|
943
|
+
}
|
|
934
944
|
this.watcher = chokidar.watch(watchPaths, {
|
|
935
945
|
ignoreInitial: true,
|
|
936
946
|
awaitWriteFinish: {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rubytech/taskmaster",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.94",
|
|
4
4
|
"description": "AI-powered business assistant for small businesses",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -77,66 +77,12 @@
|
|
|
77
77
|
"dist/filler/**",
|
|
78
78
|
"dist/license/**"
|
|
79
79
|
],
|
|
80
|
-
"scripts": {
|
|
81
|
-
"dev": "node scripts/run-node.mjs",
|
|
82
|
-
"postinstall": "node scripts/postinstall.js",
|
|
83
|
-
"prepack": "pnpm build && pnpm ui:build",
|
|
84
|
-
"docs:list": "node scripts/docs-list.js",
|
|
85
|
-
"docs:bin": "node scripts/build-docs-list.mjs",
|
|
86
|
-
"docs:dev": "cd docs && mint dev",
|
|
87
|
-
"docs:build": "cd docs && pnpm dlx --reporter append-only mint broken-links",
|
|
88
|
-
"build": "tsc -p tsconfig.json && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/write-build-info.ts",
|
|
89
|
-
"plugins:sync": "node --import tsx scripts/sync-plugin-versions.ts",
|
|
90
|
-
"release:check": "node --import tsx scripts/release-check.ts",
|
|
91
|
-
"ui:install": "node scripts/ui.js install",
|
|
92
|
-
"ui:dev": "node scripts/ui.js dev",
|
|
93
|
-
"ui:build": "node scripts/ui.js build",
|
|
94
|
-
"start": "node scripts/run-node.mjs",
|
|
95
|
-
"taskmaster": "node scripts/run-node.mjs",
|
|
96
|
-
"gateway:watch": "node scripts/watch-node.mjs gateway --force",
|
|
97
|
-
"logs": "npx tsx scripts/session-viewer.ts",
|
|
98
|
-
"gateway:dev": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway",
|
|
99
|
-
"gateway:dev:reset": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset",
|
|
100
|
-
"tui": "node scripts/run-node.mjs tui",
|
|
101
|
-
"tui:dev": "TASKMASTER_PROFILE=dev node scripts/run-node.mjs tui",
|
|
102
|
-
"taskmaster:rpc": "node scripts/run-node.mjs agent --mode rpc --json",
|
|
103
|
-
"lint": "oxlint --type-aware src test",
|
|
104
|
-
"lint:fix": "pnpm format:fix && oxlint --type-aware --fix src test",
|
|
105
|
-
"format": "oxfmt --check src test",
|
|
106
|
-
"format:fix": "oxfmt --write src test",
|
|
107
|
-
"test": "node scripts/test-parallel.mjs",
|
|
108
|
-
"test:watch": "vitest",
|
|
109
|
-
"test:ui": "pnpm --dir ui test",
|
|
110
|
-
"test:force": "node --import tsx scripts/test-force.ts",
|
|
111
|
-
"test:coverage": "vitest run --coverage",
|
|
112
|
-
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|
|
113
|
-
"test:live": "TASKMASTER_LIVE_TEST=1 vitest run --config vitest.live.config.ts",
|
|
114
|
-
"test:docker:onboard": "bash scripts/e2e/onboard-docker.sh",
|
|
115
|
-
"test:docker:gateway-network": "bash scripts/e2e/gateway-network-docker.sh",
|
|
116
|
-
"test:docker:live-models": "bash scripts/test-live-models-docker.sh",
|
|
117
|
-
"test:docker:live-gateway": "bash scripts/test-live-gateway-models-docker.sh",
|
|
118
|
-
"test:docker:qr": "bash scripts/e2e/qr-import-docker.sh",
|
|
119
|
-
"test:docker:doctor-switch": "bash scripts/e2e/doctor-install-switch-docker.sh",
|
|
120
|
-
"test:docker:plugins": "bash scripts/e2e/plugins-docker.sh",
|
|
121
|
-
"test:docker:cleanup": "bash scripts/test-cleanup-docker.sh",
|
|
122
|
-
"test:docker:all": "pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup",
|
|
123
|
-
"test:all": "pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all",
|
|
124
|
-
"test:install:e2e": "bash scripts/test-install-sh-e2e-docker.sh",
|
|
125
|
-
"test:install:smoke": "bash scripts/test-install-sh-docker.sh",
|
|
126
|
-
"test:install:e2e:openai": "TASKMASTER_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh",
|
|
127
|
-
"test:install:e2e:anthropic": "TASKMASTER_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh",
|
|
128
|
-
"protocol:gen": "node --import tsx scripts/protocol-gen.ts",
|
|
129
|
-
"protocol:check": "pnpm protocol:gen && git diff --exit-code -- dist/protocol.schema.json",
|
|
130
|
-
"canvas:a2ui:bundle": "bash scripts/bundle-a2ui.sh",
|
|
131
|
-
"check:loc": "node --import tsx scripts/check-ts-max-loc.ts --max 500"
|
|
132
|
-
},
|
|
133
80
|
"keywords": [],
|
|
134
81
|
"author": "",
|
|
135
82
|
"license": "MIT",
|
|
136
83
|
"engines": {
|
|
137
84
|
"node": ">=22.12.0"
|
|
138
85
|
},
|
|
139
|
-
"packageManager": "pnpm@10.23.0",
|
|
140
86
|
"dependencies": {
|
|
141
87
|
"@agentclientprotocol/sdk": "0.13.1",
|
|
142
88
|
"@aws-sdk/client-bedrock": "^3.975.0",
|
|
@@ -226,14 +172,6 @@
|
|
|
226
172
|
"vitest": "^4.0.18",
|
|
227
173
|
"wireit": "^0.14.12"
|
|
228
174
|
},
|
|
229
|
-
"pnpm": {
|
|
230
|
-
"minimumReleaseAge": 2880,
|
|
231
|
-
"overrides": {
|
|
232
|
-
"@sinclair/typebox": "0.34.47",
|
|
233
|
-
"hono": "4.11.4",
|
|
234
|
-
"tar": "7.5.4"
|
|
235
|
-
}
|
|
236
|
-
},
|
|
237
175
|
"vitest": {
|
|
238
176
|
"coverage": {
|
|
239
177
|
"provider": "v8",
|
|
@@ -262,5 +200,57 @@
|
|
|
262
200
|
"**/vendor/**",
|
|
263
201
|
"dist/Taskmaster.app/**"
|
|
264
202
|
]
|
|
203
|
+
},
|
|
204
|
+
"scripts": {
|
|
205
|
+
"dev": "node scripts/run-node.mjs",
|
|
206
|
+
"postinstall": "node scripts/postinstall.js",
|
|
207
|
+
"docs:list": "node scripts/docs-list.js",
|
|
208
|
+
"docs:bin": "node scripts/build-docs-list.mjs",
|
|
209
|
+
"docs:dev": "cd docs && mint dev",
|
|
210
|
+
"docs:build": "cd docs && pnpm dlx --reporter append-only mint broken-links",
|
|
211
|
+
"build": "tsc -p tsconfig.json && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/write-build-info.ts",
|
|
212
|
+
"plugins:sync": "node --import tsx scripts/sync-plugin-versions.ts",
|
|
213
|
+
"release:check": "node --import tsx scripts/release-check.ts",
|
|
214
|
+
"ui:install": "node scripts/ui.js install",
|
|
215
|
+
"ui:dev": "node scripts/ui.js dev",
|
|
216
|
+
"ui:build": "node scripts/ui.js build",
|
|
217
|
+
"start": "node scripts/run-node.mjs",
|
|
218
|
+
"taskmaster": "node scripts/run-node.mjs",
|
|
219
|
+
"gateway:watch": "node scripts/watch-node.mjs gateway --force",
|
|
220
|
+
"logs": "npx tsx scripts/session-viewer.ts",
|
|
221
|
+
"gateway:dev": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway",
|
|
222
|
+
"gateway:dev:reset": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset",
|
|
223
|
+
"tui": "node scripts/run-node.mjs tui",
|
|
224
|
+
"tui:dev": "TASKMASTER_PROFILE=dev node scripts/run-node.mjs tui",
|
|
225
|
+
"taskmaster:rpc": "node scripts/run-node.mjs agent --mode rpc --json",
|
|
226
|
+
"lint": "oxlint --type-aware src test",
|
|
227
|
+
"lint:fix": "pnpm format:fix && oxlint --type-aware --fix src test",
|
|
228
|
+
"format": "oxfmt --check src test",
|
|
229
|
+
"format:fix": "oxfmt --write src test",
|
|
230
|
+
"test": "node scripts/test-parallel.mjs",
|
|
231
|
+
"test:watch": "vitest",
|
|
232
|
+
"test:ui": "pnpm --dir ui test",
|
|
233
|
+
"test:force": "node --import tsx scripts/test-force.ts",
|
|
234
|
+
"test:coverage": "vitest run --coverage",
|
|
235
|
+
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|
|
236
|
+
"test:live": "TASKMASTER_LIVE_TEST=1 vitest run --config vitest.live.config.ts",
|
|
237
|
+
"test:docker:onboard": "bash scripts/e2e/onboard-docker.sh",
|
|
238
|
+
"test:docker:gateway-network": "bash scripts/e2e/gateway-network-docker.sh",
|
|
239
|
+
"test:docker:live-models": "bash scripts/test-live-models-docker.sh",
|
|
240
|
+
"test:docker:live-gateway": "bash scripts/test-live-gateway-models-docker.sh",
|
|
241
|
+
"test:docker:qr": "bash scripts/e2e/qr-import-docker.sh",
|
|
242
|
+
"test:docker:doctor-switch": "bash scripts/e2e/doctor-install-switch-docker.sh",
|
|
243
|
+
"test:docker:plugins": "bash scripts/e2e/plugins-docker.sh",
|
|
244
|
+
"test:docker:cleanup": "bash scripts/test-cleanup-docker.sh",
|
|
245
|
+
"test:docker:all": "pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup",
|
|
246
|
+
"test:all": "pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all",
|
|
247
|
+
"test:install:e2e": "bash scripts/test-install-sh-e2e-docker.sh",
|
|
248
|
+
"test:install:smoke": "bash scripts/test-install-sh-docker.sh",
|
|
249
|
+
"test:install:e2e:openai": "TASKMASTER_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh",
|
|
250
|
+
"test:install:e2e:anthropic": "TASKMASTER_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh",
|
|
251
|
+
"protocol:gen": "node --import tsx scripts/protocol-gen.ts",
|
|
252
|
+
"protocol:check": "pnpm protocol:gen && git diff --exit-code -- dist/protocol.schema.json",
|
|
253
|
+
"canvas:a2ui:bundle": "bash scripts/bundle-a2ui.sh",
|
|
254
|
+
"check:loc": "node --import tsx scripts/check-ts-max-loc.ts --max 500"
|
|
265
255
|
}
|
|
266
|
-
}
|
|
256
|
+
}
|
package/scripts/install.sh
CHANGED
|
File without changes
|
|
@@ -122,7 +122,7 @@ WhatsApp is only needed if you want your assistant to handle customer messages o
|
|
|
122
122
|
3. Scan the QR code on screen
|
|
123
123
|
4. Wait for all status lights to turn green
|
|
124
124
|
|
|
125
|
-
> **Important:** If you see "Taskmaster" already in your Linked Devices, remove it first before scanning.
|
|
125
|
+
> **Important:** If you see "macOS" or "Taskmaster" already in your Linked Devices for Taskmaster's connection, remove it first before scanning. (Taskmaster appears as "macOS" in the Linked Devices list.)
|
|
126
126
|
|
|
127
127
|
> **Private use only?** If you want to use WhatsApp to chat with your assistant yourself but don't want customers to receive automated replies, make sure the **Public facing** toggle on the Setup page is turned off. This keeps WhatsApp connected for your own admin chat while the public assistant stays silent. See "Public-Facing Messages" below for details.
|
|
128
128
|
|
|
@@ -845,7 +845,7 @@ On a Raspberry Pi, you can also just unplug the device, wait 10 seconds, and plu
|
|
|
845
845
|
1. Select the **affected account** from the account dropdown at the top
|
|
846
846
|
2. Tap **"Reset WhatsApp"** (red button) for that account
|
|
847
847
|
3. **On your phone:** WhatsApp → Settings → Linked Devices
|
|
848
|
-
4. **Remove** "
|
|
848
|
+
4. **Remove** "macOS" (Taskmaster's connection) from the list for that number (if present)
|
|
849
849
|
5. **Scan** the new QR code
|
|
850
850
|
|
|
851
851
|
### WhatsApp linking keeps failing?
|
|
@@ -855,7 +855,7 @@ The old connection data may be corrupted. To start fresh:
|
|
|
855
855
|
1. Go to **http://taskmaster.local:18789/setup**
|
|
856
856
|
2. Tap **"Reset WhatsApp"** (red button)
|
|
857
857
|
3. **On your phone:** WhatsApp → Settings → Linked Devices
|
|
858
|
-
4. **Remove** "
|
|
858
|
+
4. **Remove** "macOS" (Taskmaster's connection) from the list if present
|
|
859
859
|
5. **Scan** the new QR code
|
|
860
860
|
|
|
861
861
|
### WhatsApp shows "linked" on phone but status is red?
|
|
@@ -863,7 +863,7 @@ The old connection data may be corrupted. To start fresh:
|
|
|
863
863
|
The phone and Taskmaster are out of sync. To fix:
|
|
864
864
|
|
|
865
865
|
1. **On your phone:** WhatsApp → Settings → Linked Devices
|
|
866
|
-
2. **Remove** "
|
|
866
|
+
2. **Remove** "macOS" (Taskmaster's connection) from the list
|
|
867
867
|
3. On the setup page, tap the circular arrow next to WhatsApp
|
|
868
868
|
4. **Scan** the new QR code
|
|
869
869
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.DS_Store
|