@rubytech/taskmaster 1.0.33 → 1.0.35

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 (29) hide show
  1. package/README.md +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli/provision-cli.js +1 -0
  4. package/dist/commands/uninstall.js +1 -1
  5. package/dist/control-ui/assets/{index-D9HCutTJ.js → index-DgT0m3bj.js} +2 -8
  6. package/dist/control-ui/assets/index-DgT0m3bj.js.map +1 -0
  7. package/dist/control-ui/index.html +1 -1
  8. package/dist/gateway/server-methods/system.js +7 -7
  9. package/extensions/diagnostics-otel/node_modules/.bin/acorn +0 -0
  10. package/extensions/googlechat/node_modules/.bin/taskmaster +0 -0
  11. package/extensions/line/node_modules/.bin/taskmaster +0 -0
  12. package/extensions/matrix/node_modules/.bin/markdown-it +0 -0
  13. package/extensions/matrix/node_modules/.bin/taskmaster +0 -0
  14. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +0 -0
  15. package/extensions/memory-lancedb/node_modules/.bin/openai +0 -0
  16. package/extensions/msteams/node_modules/.bin/taskmaster +0 -0
  17. package/extensions/nostr/node_modules/.bin/taskmaster +0 -0
  18. package/extensions/nostr/node_modules/.bin/tsc +0 -0
  19. package/extensions/nostr/node_modules/.bin/tsserver +0 -0
  20. package/extensions/zalo/node_modules/.bin/taskmaster +0 -0
  21. package/extensions/zalouser/node_modules/.bin/taskmaster +0 -0
  22. package/package.json +64 -54
  23. package/scripts/install.sh +2 -2
  24. package/taskmaster-docs/USER-GUIDE.md +3 -3
  25. package/dist/control-ui/assets/index-D9HCutTJ.js.map +0 -1
  26. package/templates/.DS_Store +0 -0
  27. package/templates/customer/.DS_Store +0 -0
  28. package/templates/customer/agents/.DS_Store +0 -0
  29. package/templates/taskmaster/.gitignore +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-D9HCutTJ.js"></script>
9
+ <script type="module" crossorigin src="./assets/index-DgT0m3bj.js"></script>
10
10
  <link rel="stylesheet" crossorigin href="./assets/index-BQEnHucA.css">
11
11
  </head>
12
12
  <body>
@@ -134,25 +134,25 @@ export const systemHandlers = {
134
134
  respond(true, { ok: true, scopes, purge }, undefined);
135
135
  // Small delay to let the response reach the client
136
136
  await new Promise((r) => setTimeout(r, 500));
137
- // Run state + workspace + purge first, WITHOUT the service scope.
138
- // We cannot stop our own service systemd would SIGTERM this process
139
- // before workspace/state removal runs.
137
+ // skipService: we cannot stop our own service systemd would SIGTERM
138
+ // this process before workspace/state removal runs. The service files
139
+ // are uninstalled separately below (without stopping).
140
140
  try {
141
141
  await uninstallCommand(defaultRuntime, {
142
- service: false,
143
142
  state: scopes.includes("state"),
144
143
  workspace: scopes.includes("workspace"),
145
144
  app: scopes.includes("app"),
146
145
  purge,
146
+ skipService: true,
147
147
  yes: true,
148
148
  nonInteractive: true,
149
149
  });
150
150
  }
151
151
  catch (err) {
152
- log.error(`system.uninstall (data removal) failed: ${String(err)}`);
152
+ log.error(`system.uninstall failed: ${String(err)}`);
153
153
  }
154
- // Now uninstall the service files (without stopping — we ARE the service).
155
- // The process.exit below handles the actual stop.
154
+ // Uninstall the service files without stopping — we ARE the service.
155
+ // process.exit below handles the actual stop.
156
156
  if (scopes.includes("service")) {
157
157
  try {
158
158
  const service = resolveGatewayService();
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.33",
3
+ "version": "1.0.35",
4
4
  "description": "AI-powered business assistant for small businesses",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -77,12 +77,66 @@
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
+ },
80
133
  "keywords": [],
81
134
  "author": "",
82
135
  "license": "MIT",
83
136
  "engines": {
84
137
  "node": ">=22.12.0"
85
138
  },
139
+ "packageManager": "pnpm@10.23.0",
86
140
  "dependencies": {
87
141
  "@agentclientprotocol/sdk": "0.13.1",
88
142
  "@aws-sdk/client-bedrock": "^3.975.0",
@@ -172,6 +226,14 @@
172
226
  "vitest": "^4.0.18",
173
227
  "wireit": "^0.14.12"
174
228
  },
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
+ },
175
237
  "vitest": {
176
238
  "coverage": {
177
239
  "provider": "v8",
@@ -200,57 +262,5 @@
200
262
  "**/vendor/**",
201
263
  "dist/Taskmaster.app/**"
202
264
  ]
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"
255
265
  }
256
- }
266
+ }
@@ -4,10 +4,10 @@ set -euo pipefail
4
4
  # Taskmaster — one-command install for fresh devices (Pi or Mac).
5
5
  #
6
6
  # Usage:
7
- # curl -fsSL https://taskmaster.bot/install.sh | sudo bash
7
+ # curl -fsSL https://taskmaster.bot/install.sh | bash
8
8
  #
9
9
  # With custom port:
10
- # curl -fsSL https://taskmaster.bot/install.sh | sudo bash -s -- --port 19000
10
+ # curl -fsSL https://taskmaster.bot/install.sh | bash -s -- --port 19000
11
11
 
12
12
  PORT=""
13
13
  for arg in "$@"; do
@@ -39,7 +39,7 @@ You'll need a monitor, keyboard, and mouse connected to the Pi.
39
39
  2. Run:
40
40
 
41
41
  ```bash
42
- curl -fsSL https://taskmaster.bot/install.sh | sudo bash
42
+ curl -fsSL https://taskmaster.bot/install.sh | bash
43
43
  ```
44
44
 
45
45
  3. Wait for it to finish (a few minutes — it installs Node.js if needed)
@@ -52,7 +52,7 @@ curl -fsSL https://taskmaster.bot/install.sh | sudo bash
52
52
  Open **Terminal** (search for "Terminal" in Spotlight) and run:
53
53
 
54
54
  ```bash
55
- curl -fsSL https://taskmaster.bot/install.sh | sudo bash
55
+ curl -fsSL https://taskmaster.bot/install.sh | bash
56
56
  ```
57
57
 
58
58
  This installs Node.js (if needed), Taskmaster, and sets up the background service. Once finished, open your browser and go to: **http://taskmaster.local:18789/setup**
@@ -60,7 +60,7 @@ This installs Node.js (if needed), Taskmaster, and sets up the background servic
60
60
  **Custom port:** If you're running multiple Taskmaster instances (e.g., one on a Pi and one on a Mac), give each a different port:
61
61
 
62
62
  ```bash
63
- curl -fsSL https://taskmaster.bot/install.sh | sudo bash -s -- --port 19000
63
+ curl -fsSL https://taskmaster.bot/install.sh | bash -s -- --port 19000
64
64
  ```
65
65
 
66
66
  When using a custom port, the hostname includes the port to avoid conflicts. The setup URL becomes `http://taskmaster-19000.local:19000/setup`.