@rubytech/taskmaster 1.44.6 → 1.44.7
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/agents/system-prompt.js +5 -2
- package/dist/agents/tool-policy.js +9 -1
- package/dist/agents/tools/document-to-pdf-tool.js +80 -15
- package/dist/build-info.json +3 -3
- package/package.json +62 -52
- package/scripts/install.sh +0 -0
- package/extensions/.npmignore +0 -1
- package/templates/.DS_Store +0 -0
- package/templates/beacons/.DS_Store +0 -0
- package/templates/beacons/agents/.DS_Store +0 -0
- package/templates/beacons/memory/.DS_Store +0 -0
- package/templates/beacons/skills/.DS_Store +0 -0
- package/templates/beacons/skills/buyer-management/.DS_Store +0 -0
- package/templates/beagle-taxi/.DS_Store +0 -0
- package/templates/beagle-taxi/agents/.DS_Store +0 -0
- package/templates/beagle-taxi/memory/.DS_Store +0 -0
- package/templates/beagle-taxi/skills/.DS_Store +0 -0
- package/templates/beagle-zanzibar/.DS_Store +0 -0
- package/templates/beagle-zanzibar/agents/.DS_Store +0 -0
- package/templates/beagle-zanzibar/memory/.DS_Store +0 -0
- package/templates/beagle-zanzibar/skills/.DS_Store +0 -0
- package/templates/customer/.DS_Store +0 -0
- package/templates/customer/agents/.DS_Store +0 -0
- package/templates/education-hero/.DS_Store +0 -0
- package/templates/education-hero/agents/.DS_Store +0 -0
- package/templates/education-hero/agents/admin/.DS_Store +0 -0
- package/templates/education-hero/skills/.DS_Store +0 -0
- package/templates/education-hero/skills/education-hero/.DS_Store +0 -0
- package/templates/maxy/.DS_Store +0 -0
- package/templates/maxy/.gitignore +0 -1
- package/templates/maxy/agents/.DS_Store +0 -0
- package/templates/maxy/agents/admin/.DS_Store +0 -0
- package/templates/maxy/memory/.DS_Store +0 -0
- package/templates/maxy/skills/.DS_Store +0 -0
- package/templates/muvin/.DS_Store +0 -0
- package/templates/muvin/skills/.DS_Store +0 -0
- package/templates/muvin/skills/buyer-management/.DS_Store +0 -0
- package/templates/real-agent/.DS_Store +0 -0
- package/templates/real-agent/skills/.DS_Store +0 -0
- package/templates/real-agent/skills/buyer-management/.DS_Store +0 -0
- package/templates/taskmaster/.DS_Store +0 -0
- package/templates/taskmaster/.gitignore +0 -1
- package/templates/taskmaster/skills/.DS_Store +0 -0
|
@@ -338,9 +338,12 @@ export function buildAgentSystemPrompt(params) {
|
|
|
338
338
|
"",
|
|
339
339
|
"### Spawn Profiles",
|
|
340
340
|
"Use `toolProfile` to give sub-agents only the tools they need. This reduces cost and focuses the sub-agent.",
|
|
341
|
+
"",
|
|
342
|
+
"**Profile selection principle:** match the profile to the task's **output**, not its input or subject matter. A task that reads from memory but produces a PDF needs `spawn:documents`, not `spawn:memory`. A task that reads a document but saves findings to memory needs `spawn:memory`, not `spawn:documents`. The deliverable determines the profile.",
|
|
343
|
+
"",
|
|
341
344
|
"Available profiles:",
|
|
342
|
-
"- `spawn:memory` — recall and store information
|
|
343
|
-
"- `spawn:documents` —
|
|
345
|
+
"- `spawn:memory` — recall, search, and store information in memory. For lookups, saving notes, and organizing knowledge — NOT for producing formatted output files like PDFs.",
|
|
346
|
+
"- `spawn:documents` — produce formatted output files: draft content, convert to PDF, generate QR codes. Has memory access so it can read source material. Use whenever the deliverable is a file (PDF, document, spreadsheet).",
|
|
344
347
|
"- `spawn:contacts` — manage contacts: lookup, create, update, verify",
|
|
345
348
|
"- `spawn:web` — research online: web search, URL fetch, file access",
|
|
346
349
|
"- `spawn:admin` — system administration, licensing, and diagnostics: manage admins, generate licenses, status checks, settings, log review, error triage, performance analysis, automation",
|
|
@@ -207,7 +207,15 @@ const TOOL_PROFILES = {
|
|
|
207
207
|
allow: ["group:memory", "group:fs", "group:runtime", "group:time", "group:skills", "image"],
|
|
208
208
|
},
|
|
209
209
|
"spawn:documents": {
|
|
210
|
-
allow: [
|
|
210
|
+
allow: [
|
|
211
|
+
"group:documents",
|
|
212
|
+
"group:memory",
|
|
213
|
+
"group:fs",
|
|
214
|
+
"group:runtime",
|
|
215
|
+
"group:time",
|
|
216
|
+
"group:skills",
|
|
217
|
+
"image",
|
|
218
|
+
],
|
|
211
219
|
},
|
|
212
220
|
"spawn:contacts": {
|
|
213
221
|
allow: ["group:contacts", "group:fs", "group:time", "group:skills"],
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
|
+
import os from "node:os";
|
|
2
3
|
import path from "node:path";
|
|
3
4
|
import { pathToFileURL } from "node:url";
|
|
4
5
|
import { Type } from "@sinclair/typebox";
|
|
@@ -7,12 +8,48 @@ import { resolveBrowserExecutableForPlatform } from "../../browser/chrome.execut
|
|
|
7
8
|
import { resolveAgentWorkspaceDir, resolveSessionAgentId } from "../agent-scope.js";
|
|
8
9
|
import { assertSandboxPath } from "../sandbox-paths.js";
|
|
9
10
|
import { jsonResult, readStringParam } from "./common.js";
|
|
11
|
+
const MARKDOWN_EXTENSIONS = new Set([".md", ".markdown", ".mdown", ".mkd"]);
|
|
10
12
|
const DocumentToPdfSchema = Type.Object({
|
|
11
13
|
path: Type.String({
|
|
12
|
-
description: "Path to an HTML
|
|
13
|
-
"
|
|
14
|
+
description: "Path to an HTML or Markdown file to convert to PDF. " +
|
|
15
|
+
"Accepts .html, .md, and .markdown files. Markdown files are automatically rendered to styled HTML before conversion. " +
|
|
16
|
+
"Use a memory path (e.g. memory/admin/documents/contract.md) or an absolute path.",
|
|
14
17
|
}),
|
|
15
18
|
});
|
|
19
|
+
/**
|
|
20
|
+
* Wrap markdown-rendered HTML in a styled document shell suitable for PDF output.
|
|
21
|
+
* Uses system fonts and clean typographic defaults so the PDF looks professional
|
|
22
|
+
* without requiring external stylesheets.
|
|
23
|
+
*/
|
|
24
|
+
function wrapMarkdownHtml(bodyHtml) {
|
|
25
|
+
return `<!doctype html>
|
|
26
|
+
<html><head>
|
|
27
|
+
<meta charset="utf-8" />
|
|
28
|
+
<style>
|
|
29
|
+
html { font-size: 14px; }
|
|
30
|
+
body {
|
|
31
|
+
max-width: 720px; margin: 40px auto; padding: 0 24px;
|
|
32
|
+
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
|
|
33
|
+
line-height: 1.6; color: #1a1a1a;
|
|
34
|
+
}
|
|
35
|
+
h1 { font-size: 1.8rem; margin: 1.5em 0 0.5em; border-bottom: 1px solid #ddd; padding-bottom: 0.3em; }
|
|
36
|
+
h2 { font-size: 1.4rem; margin: 1.3em 0 0.4em; }
|
|
37
|
+
h3 { font-size: 1.15rem; margin: 1.2em 0 0.4em; }
|
|
38
|
+
p { margin: 0.6em 0; }
|
|
39
|
+
ul, ol { padding-left: 1.8em; }
|
|
40
|
+
li { margin: 0.25em 0; }
|
|
41
|
+
table { border-collapse: collapse; width: 100%; margin: 1em 0; }
|
|
42
|
+
th, td { border: 1px solid #ccc; padding: 6px 10px; text-align: left; }
|
|
43
|
+
th { background: #f5f5f5; font-weight: 600; }
|
|
44
|
+
blockquote { border-left: 3px solid #ccc; margin: 1em 0; padding: 0.5em 1em; color: #555; }
|
|
45
|
+
code { background: #f4f4f4; padding: 2px 5px; border-radius: 3px; font-size: 0.9em; }
|
|
46
|
+
pre { background: #f4f4f4; padding: 12px; border-radius: 6px; overflow-x: auto; }
|
|
47
|
+
pre code { background: none; padding: 0; }
|
|
48
|
+
hr { border: none; border-top: 1px solid #ddd; margin: 2em 0; }
|
|
49
|
+
strong { font-weight: 600; }
|
|
50
|
+
</style>
|
|
51
|
+
</head><body>${bodyHtml}</body></html>`;
|
|
52
|
+
}
|
|
16
53
|
export function createDocumentToPdfTool(options) {
|
|
17
54
|
const cfg = options?.config;
|
|
18
55
|
const agentId = resolveSessionAgentId({
|
|
@@ -25,54 +62,55 @@ export function createDocumentToPdfTool(options) {
|
|
|
25
62
|
return {
|
|
26
63
|
label: "Document to PDF",
|
|
27
64
|
name: "document_to_pdf",
|
|
28
|
-
description: "Convert an HTML file to PDF using a headless browser. " +
|
|
65
|
+
description: "Convert an HTML or Markdown file to PDF using a headless browser. " +
|
|
66
|
+
"Markdown files (.md) are automatically rendered to styled HTML before conversion. " +
|
|
29
67
|
"The PDF is written to the same directory as the source file with a .pdf extension. " +
|
|
30
68
|
"Returns the absolute path to the generated PDF.",
|
|
31
69
|
parameters: DocumentToPdfSchema,
|
|
32
70
|
execute: async (_toolCallId, params) => {
|
|
33
71
|
const inputPath = readStringParam(params, "path", { required: true });
|
|
34
72
|
// ── Resolve the path ──────────────────────────────────────────────
|
|
35
|
-
let
|
|
73
|
+
let sourcePath;
|
|
36
74
|
try {
|
|
37
75
|
if (memoryDir && inputPath.startsWith("memory/")) {
|
|
38
76
|
const relativePath = inputPath.slice("memory/".length);
|
|
39
|
-
|
|
77
|
+
sourcePath = path.join(memoryDir, relativePath);
|
|
40
78
|
}
|
|
41
79
|
else if (memoryDir && !path.isAbsolute(inputPath) && !inputPath.startsWith(".")) {
|
|
42
80
|
// Check if it exists in memory root
|
|
43
81
|
const candidatePath = path.join(memoryDir, inputPath);
|
|
44
82
|
try {
|
|
45
83
|
await fs.stat(candidatePath);
|
|
46
|
-
|
|
84
|
+
sourcePath = candidatePath;
|
|
47
85
|
}
|
|
48
86
|
catch {
|
|
49
|
-
|
|
87
|
+
sourcePath = inputPath;
|
|
50
88
|
}
|
|
51
89
|
}
|
|
52
90
|
else {
|
|
53
|
-
|
|
91
|
+
sourcePath = inputPath;
|
|
54
92
|
}
|
|
55
|
-
if (!path.isAbsolute(
|
|
56
|
-
|
|
93
|
+
if (!path.isAbsolute(sourcePath)) {
|
|
94
|
+
sourcePath = path.resolve(sourcePath);
|
|
57
95
|
}
|
|
58
96
|
// Apply sandbox constraints if configured
|
|
59
97
|
const sandboxRoot = options?.sandboxRoot?.trim();
|
|
60
98
|
if (sandboxRoot) {
|
|
61
99
|
const sandboxed = await assertSandboxPath({
|
|
62
|
-
filePath:
|
|
100
|
+
filePath: sourcePath,
|
|
63
101
|
cwd: sandboxRoot,
|
|
64
102
|
root: sandboxRoot,
|
|
65
103
|
});
|
|
66
|
-
|
|
104
|
+
sourcePath = sandboxed.resolved;
|
|
67
105
|
}
|
|
68
106
|
}
|
|
69
107
|
catch (err) {
|
|
70
108
|
const message = err instanceof Error ? err.message : String(err);
|
|
71
109
|
return jsonResult({ ok: false, error: `Path not accessible: ${message}` });
|
|
72
110
|
}
|
|
73
|
-
// ── Verify the
|
|
111
|
+
// ── Verify the source file exists ─────────────────────────────────
|
|
74
112
|
try {
|
|
75
|
-
await fs.stat(
|
|
113
|
+
await fs.stat(sourcePath);
|
|
76
114
|
}
|
|
77
115
|
catch (err) {
|
|
78
116
|
const anyErr = err;
|
|
@@ -83,8 +121,31 @@ export function createDocumentToPdfTool(options) {
|
|
|
83
121
|
return jsonResult({ ok: false, error: `Cannot access file: ${message}` });
|
|
84
122
|
}
|
|
85
123
|
// ── Determine output path ─────────────────────────────────────────
|
|
86
|
-
const parsed = path.parse(
|
|
124
|
+
const parsed = path.parse(sourcePath);
|
|
87
125
|
const pdfPath = path.join(parsed.dir, `${parsed.name}.pdf`);
|
|
126
|
+
const isMarkdown = MARKDOWN_EXTENSIONS.has(parsed.ext.toLowerCase());
|
|
127
|
+
// ── If markdown, render to a temp HTML file ───────────────────────
|
|
128
|
+
let htmlPath;
|
|
129
|
+
let tempHtmlPath;
|
|
130
|
+
if (isMarkdown) {
|
|
131
|
+
try {
|
|
132
|
+
const mdSource = await fs.readFile(sourcePath, "utf-8");
|
|
133
|
+
const MarkdownIt = (await import("markdown-it")).default;
|
|
134
|
+
const md = new MarkdownIt({ html: true, linkify: true, typographer: true });
|
|
135
|
+
const bodyHtml = md.render(mdSource);
|
|
136
|
+
const fullHtml = wrapMarkdownHtml(bodyHtml);
|
|
137
|
+
tempHtmlPath = path.join(os.tmpdir(), `taskmaster-pdf-${Date.now()}-${parsed.name}.html`);
|
|
138
|
+
await fs.writeFile(tempHtmlPath, fullHtml, "utf-8");
|
|
139
|
+
htmlPath = tempHtmlPath;
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
143
|
+
return jsonResult({ ok: false, error: `Markdown conversion failed: ${message}` });
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
htmlPath = sourcePath;
|
|
148
|
+
}
|
|
88
149
|
// ── Find Chrome executable ────────────────────────────────────────
|
|
89
150
|
const browserConfig = resolveBrowserConfig(cfg?.browser);
|
|
90
151
|
const exe = resolveBrowserExecutableForPlatform(browserConfig, process.platform);
|
|
@@ -130,6 +191,10 @@ export function createDocumentToPdfTool(options) {
|
|
|
130
191
|
// Ignore close errors
|
|
131
192
|
}
|
|
132
193
|
}
|
|
194
|
+
// Clean up temp HTML file if we created one
|
|
195
|
+
if (tempHtmlPath) {
|
|
196
|
+
fs.unlink(tempHtmlPath).catch(() => { });
|
|
197
|
+
}
|
|
133
198
|
}
|
|
134
199
|
},
|
|
135
200
|
};
|
package/dist/build-info.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rubytech/taskmaster",
|
|
3
|
-
"version": "1.44.
|
|
3
|
+
"version": "1.44.7",
|
|
4
4
|
"description": "AI-powered business assistant for small businesses",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -79,12 +79,64 @@
|
|
|
79
79
|
"dist/license/**",
|
|
80
80
|
"dist/suggestions/**"
|
|
81
81
|
],
|
|
82
|
+
"scripts": {
|
|
83
|
+
"dev": "node scripts/run-node.mjs",
|
|
84
|
+
"postinstall": "node scripts/postinstall.js",
|
|
85
|
+
"prepack": "pnpm build && pnpm ui:build",
|
|
86
|
+
"docs:list": "node scripts/docs-list.js",
|
|
87
|
+
"docs:bin": "node scripts/build-docs-list.mjs",
|
|
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
|
+
},
|
|
82
133
|
"keywords": [],
|
|
83
134
|
"author": "",
|
|
84
135
|
"license": "MIT",
|
|
85
136
|
"engines": {
|
|
86
137
|
"node": ">=22.12.0"
|
|
87
138
|
},
|
|
139
|
+
"packageManager": "pnpm@10.23.0",
|
|
88
140
|
"dependencies": {
|
|
89
141
|
"@agentclientprotocol/sdk": "0.13.1",
|
|
90
142
|
"@aws-sdk/client-bedrock": "^3.975.0",
|
|
@@ -179,6 +231,14 @@
|
|
|
179
231
|
"vitest": "^4.0.18",
|
|
180
232
|
"wireit": "^0.14.12"
|
|
181
233
|
},
|
|
234
|
+
"pnpm": {
|
|
235
|
+
"minimumReleaseAge": 2880,
|
|
236
|
+
"overrides": {
|
|
237
|
+
"@sinclair/typebox": "0.34.47",
|
|
238
|
+
"hono": "4.11.4",
|
|
239
|
+
"tar": "7.5.4"
|
|
240
|
+
}
|
|
241
|
+
},
|
|
182
242
|
"vitest": {
|
|
183
243
|
"coverage": {
|
|
184
244
|
"provider": "v8",
|
|
@@ -207,55 +267,5 @@
|
|
|
207
267
|
"**/vendor/**",
|
|
208
268
|
"dist/Taskmaster.app/**"
|
|
209
269
|
]
|
|
210
|
-
},
|
|
211
|
-
"scripts": {
|
|
212
|
-
"dev": "node scripts/run-node.mjs",
|
|
213
|
-
"postinstall": "node scripts/postinstall.js",
|
|
214
|
-
"docs:list": "node scripts/docs-list.js",
|
|
215
|
-
"docs:bin": "node scripts/build-docs-list.mjs",
|
|
216
|
-
"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",
|
|
217
|
-
"plugins:sync": "node --import tsx scripts/sync-plugin-versions.ts",
|
|
218
|
-
"release:check": "node --import tsx scripts/release-check.ts",
|
|
219
|
-
"ui:install": "node scripts/ui.js install",
|
|
220
|
-
"ui:dev": "node scripts/ui.js dev",
|
|
221
|
-
"ui:build": "node scripts/ui.js build",
|
|
222
|
-
"start": "node scripts/run-node.mjs",
|
|
223
|
-
"taskmaster": "node scripts/run-node.mjs",
|
|
224
|
-
"gateway:watch": "node scripts/watch-node.mjs gateway --force",
|
|
225
|
-
"logs": "npx tsx scripts/session-viewer.ts",
|
|
226
|
-
"gateway:dev": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway",
|
|
227
|
-
"gateway:dev:reset": "TASKMASTER_SKIP_CHANNELS=1 node scripts/run-node.mjs --dev gateway --reset",
|
|
228
|
-
"tui": "node scripts/run-node.mjs tui",
|
|
229
|
-
"tui:dev": "TASKMASTER_PROFILE=dev node scripts/run-node.mjs tui",
|
|
230
|
-
"taskmaster:rpc": "node scripts/run-node.mjs agent --mode rpc --json",
|
|
231
|
-
"lint": "oxlint --type-aware src test",
|
|
232
|
-
"lint:fix": "pnpm format:fix && oxlint --type-aware --fix src test",
|
|
233
|
-
"format": "oxfmt --check src test",
|
|
234
|
-
"format:fix": "oxfmt --write src test",
|
|
235
|
-
"test": "node scripts/test-parallel.mjs",
|
|
236
|
-
"test:watch": "vitest",
|
|
237
|
-
"test:ui": "pnpm --dir ui test",
|
|
238
|
-
"test:force": "node --import tsx scripts/test-force.ts",
|
|
239
|
-
"test:coverage": "vitest run --coverage",
|
|
240
|
-
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|
|
241
|
-
"test:live": "TASKMASTER_LIVE_TEST=1 vitest run --config vitest.live.config.ts",
|
|
242
|
-
"test:docker:onboard": "bash scripts/e2e/onboard-docker.sh",
|
|
243
|
-
"test:docker:gateway-network": "bash scripts/e2e/gateway-network-docker.sh",
|
|
244
|
-
"test:docker:live-models": "bash scripts/test-live-models-docker.sh",
|
|
245
|
-
"test:docker:live-gateway": "bash scripts/test-live-gateway-models-docker.sh",
|
|
246
|
-
"test:docker:qr": "bash scripts/e2e/qr-import-docker.sh",
|
|
247
|
-
"test:docker:doctor-switch": "bash scripts/e2e/doctor-install-switch-docker.sh",
|
|
248
|
-
"test:docker:plugins": "bash scripts/e2e/plugins-docker.sh",
|
|
249
|
-
"test:docker:cleanup": "bash scripts/test-cleanup-docker.sh",
|
|
250
|
-
"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",
|
|
251
|
-
"test:all": "pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all",
|
|
252
|
-
"test:install:e2e": "bash scripts/test-install-sh-e2e-docker.sh",
|
|
253
|
-
"test:install:smoke": "bash scripts/test-install-sh-docker.sh",
|
|
254
|
-
"test:install:e2e:openai": "TASKMASTER_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh",
|
|
255
|
-
"test:install:e2e:anthropic": "TASKMASTER_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh",
|
|
256
|
-
"protocol:gen": "node --import tsx scripts/protocol-gen.ts",
|
|
257
|
-
"protocol:check": "pnpm protocol:gen && git diff --exit-code -- dist/protocol.schema.json",
|
|
258
|
-
"canvas:a2ui:bundle": "bash scripts/bundle-a2ui.sh",
|
|
259
|
-
"check:loc": "node --import tsx scripts/check-ts-max-loc.ts --max 500"
|
|
260
270
|
}
|
|
261
|
-
}
|
|
271
|
+
}
|
package/scripts/install.sh
CHANGED
|
File without changes
|
package/extensions/.npmignore
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
node_modules/
|
package/templates/.DS_Store
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/templates/maxy/.DS_Store
DELETED
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.DS_Store
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.DS_Store
|
|
Binary file
|