outask 0.0.0-stage → 1.7.0
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/LICENSE +661 -0
- package/README.md +38 -2
- package/bin/outask +7 -0
- package/bin/tasks +7 -0
- package/cli.mjs +151 -0
- package/mcp/package-lock.json +175 -0
- package/mcp/package.json +15 -0
- package/mcp/server.mjs +132 -0
- package/node_modules/@modelcontextprotocol/core/LICENSE +216 -0
- package/node_modules/@modelcontextprotocol/core/README.md +40 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-Anm-lwWi.d.mts +8507 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-Anm-lwWi.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-BNDyLTqp.mjs +1681 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-BNDyLTqp.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-D1CeV_Jr.cjs +2902 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-D1CeV_Jr.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-V9XJSCfa.d.cts +8507 -0
- package/node_modules/@modelcontextprotocol/core/dist/auth-V9XJSCfa.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/index.cjs +175 -0
- package/node_modules/@modelcontextprotocol/core/dist/index.d.cts +2 -0
- package/node_modules/@modelcontextprotocol/core/dist/index.d.mts +2 -0
- package/node_modules/@modelcontextprotocol/core/dist/index.mjs +3 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.cjs +201 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.d.cts +99 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.d.mts +99 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/core/dist/internal.mjs +3 -0
- package/node_modules/@modelcontextprotocol/core/package.json +85 -0
- package/node_modules/@modelcontextprotocol/server/LICENSE +216 -0
- package/node_modules/@modelcontextprotocol/server/README.md +30 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CEoC__sr.mjs +7514 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CEoC__sr.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CgI-5L6O.d.mts +1071 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-CgI-5L6O.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-FOQRM7up.d.cts +1071 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-FOQRM7up.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-ZaoO9afR.cjs +7531 -0
- package/node_modules/@modelcontextprotocol/server/dist/ajvProvider-ZaoO9afR.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-BwbPzsdI.cjs +986 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-BwbPzsdI.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-C03CSigr.d.mts +74 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-C03CSigr.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-doTkZbTr.d.cts +74 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-doTkZbTr.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-p3WaZPqB.mjs +981 -0
- package/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-p3WaZPqB.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/chunk-Bnu9O96Y.cjs +60 -0
- package/node_modules/@modelcontextprotocol/server/dist/chunk-Br0eD_fh.mjs +42 -0
- package/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-D4NN8WsG.d.mts +4168 -0
- package/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-D4NN8WsG.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DZmmlN8e.d.cts +4170 -0
- package/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DZmmlN8e.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/dialects-D8eXzoGv.cjs +46 -0
- package/node_modules/@modelcontextprotocol/server/dist/dialects-D8eXzoGv.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/dialects-DoSzNhcb.mjs +34 -0
- package/node_modules/@modelcontextprotocol/server/dist/dialects-DoSzNhcb.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.cjs +1978 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.d.cts +810 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.d.mts +810 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.mjs +1790 -0
- package/node_modules/@modelcontextprotocol/server/dist/index.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/mcp-BumlNux0.cjs +2477 -0
- package/node_modules/@modelcontextprotocol/server/dist/mcp-BumlNux0.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/mcp-DIH4cS6P.mjs +2326 -0
- package/node_modules/@modelcontextprotocol/server/dist/mcp-DIH4cS6P.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs +23 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts +11 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts +11 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs +22 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsNode.cjs +12 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.cts +3 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.mts +3 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsNode.mjs +4 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs +30 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts +10 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts +10 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs +29 -0
- package/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/src-BhnGYybN.cjs +8200 -0
- package/node_modules/@modelcontextprotocol/server/dist/src-BhnGYybN.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/src-Cqbh3MYc.mjs +7702 -0
- package/node_modules/@modelcontextprotocol/server/dist/src-Cqbh3MYc.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.cjs +591 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.cjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts +115 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts +115 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.mjs +589 -0
- package/node_modules/@modelcontextprotocol/server/dist/stdio.mjs.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/types-DUs7mGBv.d.mts +1099 -0
- package/node_modules/@modelcontextprotocol/server/dist/types-DUs7mGBv.d.mts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/types-DsbMXNFL.d.cts +1099 -0
- package/node_modules/@modelcontextprotocol/server/dist/types-DsbMXNFL.d.cts.map +1 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/ajv.cjs +5 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.cts +2 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.mts +2 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/ajv.mjs +3 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.cjs +3 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.cts +2 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.mts +2 -0
- package/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.mjs +3 -0
- package/node_modules/@modelcontextprotocol/server/package.json +160 -0
- package/node_modules/jsonc-parser/CHANGELOG.md +76 -0
- package/node_modules/jsonc-parser/LICENSE.md +21 -0
- package/node_modules/jsonc-parser/README.md +364 -0
- package/node_modules/jsonc-parser/SECURITY.md +41 -0
- package/node_modules/jsonc-parser/lib/esm/impl/edit.js +185 -0
- package/node_modules/jsonc-parser/lib/esm/impl/format.js +261 -0
- package/node_modules/jsonc-parser/lib/esm/impl/parser.js +659 -0
- package/node_modules/jsonc-parser/lib/esm/impl/scanner.js +443 -0
- package/node_modules/jsonc-parser/lib/esm/impl/string-intern.js +29 -0
- package/node_modules/jsonc-parser/lib/esm/main.d.ts +351 -0
- package/node_modules/jsonc-parser/lib/esm/main.js +178 -0
- package/node_modules/jsonc-parser/lib/umd/impl/edit.js +201 -0
- package/node_modules/jsonc-parser/lib/umd/impl/format.js +275 -0
- package/node_modules/jsonc-parser/lib/umd/impl/parser.js +682 -0
- package/node_modules/jsonc-parser/lib/umd/impl/scanner.js +456 -0
- package/node_modules/jsonc-parser/lib/umd/impl/string-intern.js +42 -0
- package/node_modules/jsonc-parser/lib/umd/main.d.ts +351 -0
- package/node_modules/jsonc-parser/lib/umd/main.js +194 -0
- package/node_modules/jsonc-parser/package.json +37 -0
- package/node_modules/zod/LICENSE +21 -0
- package/node_modules/zod/README.md +218 -0
- package/node_modules/zod/compile.cjs +96 -0
- package/node_modules/zod/compile.d.cts +1 -0
- package/node_modules/zod/compile.d.ts +1 -0
- package/node_modules/zod/compile.js +52 -0
- package/node_modules/zod/index.cjs +52 -0
- package/node_modules/zod/index.d.cts +3 -0
- package/node_modules/zod/index.d.ts +3 -0
- package/node_modules/zod/index.js +7 -0
- package/node_modules/zod/locales/index.cjs +36 -0
- package/node_modules/zod/locales/index.d.cts +1 -0
- package/node_modules/zod/locales/index.d.ts +1 -0
- package/node_modules/zod/locales/index.js +1 -0
- package/node_modules/zod/locales/package.json +7 -0
- package/node_modules/zod/mini/index.cjs +51 -0
- package/node_modules/zod/mini/index.d.cts +3 -0
- package/node_modules/zod/mini/index.d.ts +3 -0
- package/node_modules/zod/mini/index.js +3 -0
- package/node_modules/zod/mini/package.json +7 -0
- package/node_modules/zod/package.json +147 -0
- package/node_modules/zod/src/compile.ts +56 -0
- package/node_modules/zod/src/index.ts +7 -0
- package/node_modules/zod/src/locales/index.ts +1 -0
- package/node_modules/zod/src/mini/index.ts +3 -0
- package/node_modules/zod/src/v3/ZodError.ts +340 -0
- package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
- package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
- package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
- package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
- package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
- package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
- package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
- package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
- package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
- package/node_modules/zod/src/v3/errors.ts +13 -0
- package/node_modules/zod/src/v3/external.ts +6 -0
- package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
- package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
- package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
- package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
- package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
- package/node_modules/zod/src/v3/helpers/util.ts +224 -0
- package/node_modules/zod/src/v3/index.ts +4 -0
- package/node_modules/zod/src/v3/locales/en.ts +124 -0
- package/node_modules/zod/src/v3/standard-schema.ts +113 -0
- package/node_modules/zod/src/v3/types.ts +5138 -0
- package/node_modules/zod/src/v4/classic/checks.ts +33 -0
- package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
- package/node_modules/zod/src/v4/classic/compat.ts +78 -0
- package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
- package/node_modules/zod/src/v4/classic/errors.ts +97 -0
- package/node_modules/zod/src/v4/classic/external.ts +57 -0
- package/node_modules/zod/src/v4/classic/from-json-schema.ts +944 -0
- package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
- package/node_modules/zod/src/v4/classic/index.ts +5 -0
- package/node_modules/zod/src/v4/classic/iso.ts +20 -0
- package/node_modules/zod/src/v4/classic/parse.ts +88 -0
- package/node_modules/zod/src/v4/classic/schemas.ts +2937 -0
- package/node_modules/zod/src/v4/core/api.ts +1875 -0
- package/node_modules/zod/src/v4/core/checks.ts +1266 -0
- package/node_modules/zod/src/v4/core/compile.ts +2322 -0
- package/node_modules/zod/src/v4/core/core.ts +230 -0
- package/node_modules/zod/src/v4/core/doc.ts +52 -0
- package/node_modules/zod/src/v4/core/errors.ts +543 -0
- package/node_modules/zod/src/v4/core/index.ts +19 -0
- package/node_modules/zod/src/v4/core/json-schema-generator.ts +131 -0
- package/node_modules/zod/src/v4/core/json-schema-processors.ts +934 -0
- package/node_modules/zod/src/v4/core/json-schema.ts +148 -0
- package/node_modules/zod/src/v4/core/memoizer.ts +331 -0
- package/node_modules/zod/src/v4/core/parse.ts +309 -0
- package/node_modules/zod/src/v4/core/regexes.ts +217 -0
- package/node_modules/zod/src/v4/core/registries.ts +105 -0
- package/node_modules/zod/src/v4/core/schemas.ts +5226 -0
- package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
- package/node_modules/zod/src/v4/core/to-json-schema.ts +857 -0
- package/node_modules/zod/src/v4/core/util.ts +1293 -0
- package/node_modules/zod/src/v4/core/versions.ts +5 -0
- package/node_modules/zod/src/v4/core/visit.ts +193 -0
- package/node_modules/zod/src/v4/core/zsf.ts +323 -0
- package/node_modules/zod/src/v4/index.ts +4 -0
- package/node_modules/zod/src/v4/locales/ar.ts +120 -0
- package/node_modules/zod/src/v4/locales/az.ts +116 -0
- package/node_modules/zod/src/v4/locales/be.ts +188 -0
- package/node_modules/zod/src/v4/locales/bg.ts +133 -0
- package/node_modules/zod/src/v4/locales/bn.ts +123 -0
- package/node_modules/zod/src/v4/locales/ca.ts +121 -0
- package/node_modules/zod/src/v4/locales/ckb.ts +140 -0
- package/node_modules/zod/src/v4/locales/cs.ts +123 -0
- package/node_modules/zod/src/v4/locales/da.ts +128 -0
- package/node_modules/zod/src/v4/locales/de.ts +121 -0
- package/node_modules/zod/src/v4/locales/el.ts +124 -0
- package/node_modules/zod/src/v4/locales/en.ts +136 -0
- package/node_modules/zod/src/v4/locales/eo.ts +123 -0
- package/node_modules/zod/src/v4/locales/es.ts +145 -0
- package/node_modules/zod/src/v4/locales/fa.ts +131 -0
- package/node_modules/zod/src/v4/locales/fi.ts +126 -0
- package/node_modules/zod/src/v4/locales/fr-CA.ts +121 -0
- package/node_modules/zod/src/v4/locales/fr.ts +139 -0
- package/node_modules/zod/src/v4/locales/gu.ts +123 -0
- package/node_modules/zod/src/v4/locales/he.ts +253 -0
- package/node_modules/zod/src/v4/locales/hi.ts +126 -0
- package/node_modules/zod/src/v4/locales/hr.ts +135 -0
- package/node_modules/zod/src/v4/locales/hu.ts +122 -0
- package/node_modules/zod/src/v4/locales/hy.ts +175 -0
- package/node_modules/zod/src/v4/locales/id.ts +120 -0
- package/node_modules/zod/src/v4/locales/index.ts +63 -0
- package/node_modules/zod/src/v4/locales/is.ts +124 -0
- package/node_modules/zod/src/v4/locales/it.ts +121 -0
- package/node_modules/zod/src/v4/locales/ja.ts +119 -0
- package/node_modules/zod/src/v4/locales/ka.ts +128 -0
- package/node_modules/zod/src/v4/locales/kh.ts +7 -0
- package/node_modules/zod/src/v4/locales/km.ts +124 -0
- package/node_modules/zod/src/v4/locales/kn.ts +126 -0
- package/node_modules/zod/src/v4/locales/ko.ts +126 -0
- package/node_modules/zod/src/v4/locales/lt.ts +243 -0
- package/node_modules/zod/src/v4/locales/mk.ts +123 -0
- package/node_modules/zod/src/v4/locales/ms.ts +120 -0
- package/node_modules/zod/src/v4/locales/ne.ts +128 -0
- package/node_modules/zod/src/v4/locales/nl.ts +126 -0
- package/node_modules/zod/src/v4/locales/nn.ts +121 -0
- package/node_modules/zod/src/v4/locales/no.ts +121 -0
- package/node_modules/zod/src/v4/locales/ota.ts +122 -0
- package/node_modules/zod/src/v4/locales/pl.ts +123 -0
- package/node_modules/zod/src/v4/locales/ps.ts +131 -0
- package/node_modules/zod/src/v4/locales/pt-BR.ts +161 -0
- package/node_modules/zod/src/v4/locales/pt.ts +159 -0
- package/node_modules/zod/src/v4/locales/ro.ts +132 -0
- package/node_modules/zod/src/v4/locales/ru.ts +188 -0
- package/node_modules/zod/src/v4/locales/sk.ts +123 -0
- package/node_modules/zod/src/v4/locales/sl.ts +123 -0
- package/node_modules/zod/src/v4/locales/sv.ts +124 -0
- package/node_modules/zod/src/v4/locales/ta.ts +123 -0
- package/node_modules/zod/src/v4/locales/tg.ts +135 -0
- package/node_modules/zod/src/v4/locales/th.ts +124 -0
- package/node_modules/zod/src/v4/locales/tk.ts +113 -0
- package/node_modules/zod/src/v4/locales/tr.ts +116 -0
- package/node_modules/zod/src/v4/locales/ua.ts +7 -0
- package/node_modules/zod/src/v4/locales/uk.ts +122 -0
- package/node_modules/zod/src/v4/locales/ur.ts +124 -0
- package/node_modules/zod/src/v4/locales/uz.ts +120 -0
- package/node_modules/zod/src/v4/locales/vi.ts +122 -0
- package/node_modules/zod/src/v4/locales/yo.ts +129 -0
- package/node_modules/zod/src/v4/locales/zh-CN.ts +121 -0
- package/node_modules/zod/src/v4/locales/zh-TW.ts +120 -0
- package/node_modules/zod/src/v4/mini/checks.ts +33 -0
- package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
- package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
- package/node_modules/zod/src/v4/mini/external.ts +52 -0
- package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
- package/node_modules/zod/src/v4/mini/index.ts +3 -0
- package/node_modules/zod/src/v4/mini/iso.ts +66 -0
- package/node_modules/zod/src/v4/mini/parse.ts +16 -0
- package/node_modules/zod/src/v4/mini/schemas.ts +2051 -0
- package/node_modules/zod/src/v4-mini/index.ts +3 -0
- package/node_modules/zod/v3/ZodError.cjs +167 -0
- package/node_modules/zod/v3/ZodError.d.cts +164 -0
- package/node_modules/zod/v3/ZodError.d.ts +164 -0
- package/node_modules/zod/v3/ZodError.js +143 -0
- package/node_modules/zod/v3/errors.cjs +36 -0
- package/node_modules/zod/v3/errors.d.cts +5 -0
- package/node_modules/zod/v3/errors.d.ts +5 -0
- package/node_modules/zod/v3/errors.js +9 -0
- package/node_modules/zod/v3/external.cjs +41 -0
- package/node_modules/zod/v3/external.d.cts +6 -0
- package/node_modules/zod/v3/external.d.ts +6 -0
- package/node_modules/zod/v3/external.js +6 -0
- package/node_modules/zod/v3/helpers/enumUtil.cjs +21 -0
- package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
- package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
- package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
- package/node_modules/zod/v3/helpers/errorUtil.cjs +28 -0
- package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
- package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
- package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
- package/node_modules/zod/v3/helpers/parseUtil.cjs +143 -0
- package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
- package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
- package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
- package/node_modules/zod/v3/helpers/partialUtil.cjs +21 -0
- package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
- package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
- package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
- package/node_modules/zod/v3/helpers/typeAliases.cjs +21 -0
- package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
- package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
- package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
- package/node_modules/zod/v3/helpers/util.cjs +156 -0
- package/node_modules/zod/v3/helpers/util.d.cts +85 -0
- package/node_modules/zod/v3/helpers/util.d.ts +85 -0
- package/node_modules/zod/v3/helpers/util.js +133 -0
- package/node_modules/zod/v3/index.cjs +52 -0
- package/node_modules/zod/v3/index.d.cts +4 -0
- package/node_modules/zod/v3/index.d.ts +4 -0
- package/node_modules/zod/v3/index.js +4 -0
- package/node_modules/zod/v3/locales/en.cjs +112 -0
- package/node_modules/zod/v3/locales/en.d.cts +3 -0
- package/node_modules/zod/v3/locales/en.d.ts +3 -0
- package/node_modules/zod/v3/locales/en.js +109 -0
- package/node_modules/zod/v3/package.json +7 -0
- package/node_modules/zod/v3/standard-schema.cjs +21 -0
- package/node_modules/zod/v3/standard-schema.d.cts +102 -0
- package/node_modules/zod/v3/standard-schema.d.ts +102 -0
- package/node_modules/zod/v3/standard-schema.js +1 -0
- package/node_modules/zod/v3/types.cjs +3798 -0
- package/node_modules/zod/v3/types.d.cts +1034 -0
- package/node_modules/zod/v3/types.d.ts +1034 -0
- package/node_modules/zod/v3/types.js +3697 -0
- package/node_modules/zod/v4/classic/checks.cjs +53 -0
- package/node_modules/zod/v4/classic/checks.d.cts +1 -0
- package/node_modules/zod/v4/classic/checks.d.ts +1 -0
- package/node_modules/zod/v4/classic/checks.js +1 -0
- package/node_modules/zod/v4/classic/coerce.cjs +66 -0
- package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
- package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
- package/node_modules/zod/v4/classic/coerce.js +17 -0
- package/node_modules/zod/v4/classic/compat.cjs +80 -0
- package/node_modules/zod/v4/classic/compat.d.cts +48 -0
- package/node_modules/zod/v4/classic/compat.d.ts +48 -0
- package/node_modules/zod/v4/classic/compat.js +31 -0
- package/node_modules/zod/v4/classic/deep-partial.cjs +58 -0
- package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.js +13 -0
- package/node_modules/zod/v4/classic/errors.cjs +102 -0
- package/node_modules/zod/v4/classic/errors.d.cts +29 -0
- package/node_modules/zod/v4/classic/errors.d.ts +29 -0
- package/node_modules/zod/v4/classic/errors.js +57 -0
- package/node_modules/zod/v4/classic/external.cjs +97 -0
- package/node_modules/zod/v4/classic/external.d.cts +19 -0
- package/node_modules/zod/v4/classic/external.d.ts +19 -0
- package/node_modules/zod/v4/classic/external.js +17 -0
- package/node_modules/zod/v4/classic/from-json-schema.cjs +926 -0
- package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
- package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
- package/node_modules/zod/v4/classic/from-json-schema.js +881 -0
- package/node_modules/zod/v4/classic/in-out.cjs +82 -0
- package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
- package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
- package/node_modules/zod/v4/classic/in-out.js +36 -0
- package/node_modules/zod/v4/classic/index.cjs +52 -0
- package/node_modules/zod/v4/classic/index.d.cts +3 -0
- package/node_modules/zod/v4/classic/index.d.ts +3 -0
- package/node_modules/zod/v4/classic/index.js +4 -0
- package/node_modules/zod/v4/classic/iso.cjs +68 -0
- package/node_modules/zod/v4/classic/iso.d.cts +7 -0
- package/node_modules/zod/v4/classic/iso.d.ts +7 -0
- package/node_modules/zod/v4/classic/iso.js +15 -0
- package/node_modules/zod/v4/classic/package.json +7 -0
- package/node_modules/zod/v4/classic/parse.cjs +63 -0
- package/node_modules/zod/v4/classic/parse.d.cts +44 -0
- package/node_modules/zod/v4/classic/parse.d.ts +44 -0
- package/node_modules/zod/v4/classic/parse.js +16 -0
- package/node_modules/zod/v4/classic/schemas.cjs +1676 -0
- package/node_modules/zod/v4/classic/schemas.d.cts +816 -0
- package/node_modules/zod/v4/classic/schemas.d.ts +816 -0
- package/node_modules/zod/v4/classic/schemas.js +1535 -0
- package/node_modules/zod/v4/core/api.cjs +1269 -0
- package/node_modules/zod/v4/core/api.d.cts +335 -0
- package/node_modules/zod/v4/core/api.d.ts +335 -0
- package/node_modules/zod/v4/core/api.js +1107 -0
- package/node_modules/zod/v4/core/checks.cjs +561 -0
- package/node_modules/zod/v4/core/checks.d.cts +294 -0
- package/node_modules/zod/v4/core/checks.d.ts +294 -0
- package/node_modules/zod/v4/core/checks.js +516 -0
- package/node_modules/zod/v4/core/compile.cjs +1916 -0
- package/node_modules/zod/v4/core/compile.d.cts +65 -0
- package/node_modules/zod/v4/core/compile.d.ts +65 -0
- package/node_modules/zod/v4/core/compile.js +1866 -0
- package/node_modules/zod/v4/core/core.cjs +167 -0
- package/node_modules/zod/v4/core/core.d.cts +82 -0
- package/node_modules/zod/v4/core/core.d.ts +82 -0
- package/node_modules/zod/v4/core/core.js +141 -0
- package/node_modules/zod/v4/core/doc.cjs +61 -0
- package/node_modules/zod/v4/core/doc.d.cts +16 -0
- package/node_modules/zod/v4/core/doc.d.ts +16 -0
- package/node_modules/zod/v4/core/doc.js +38 -0
- package/node_modules/zod/v4/core/errors.cjs +317 -0
- package/node_modules/zod/v4/core/errors.d.cts +225 -0
- package/node_modules/zod/v4/core/errors.d.ts +225 -0
- package/node_modules/zod/v4/core/errors.js +267 -0
- package/node_modules/zod/v4/core/index.cjs +70 -0
- package/node_modules/zod/v4/core/index.d.cts +19 -0
- package/node_modules/zod/v4/core/index.d.ts +19 -0
- package/node_modules/zod/v4/core/index.js +19 -0
- package/node_modules/zod/v4/core/json-schema-generator.cjs +122 -0
- package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
- package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
- package/node_modules/zod/v4/core/json-schema-generator.js +99 -0
- package/node_modules/zod/v4/core/json-schema-processors.cjs +929 -0
- package/node_modules/zod/v4/core/json-schema-processors.d.cts +65 -0
- package/node_modules/zod/v4/core/json-schema-processors.d.ts +65 -0
- package/node_modules/zod/v4/core/json-schema-processors.js +843 -0
- package/node_modules/zod/v4/core/json-schema.cjs +21 -0
- package/node_modules/zod/v4/core/json-schema.d.cts +89 -0
- package/node_modules/zod/v4/core/json-schema.d.ts +89 -0
- package/node_modules/zod/v4/core/json-schema.js +1 -0
- package/node_modules/zod/v4/core/memoizer.cjs +360 -0
- package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
- package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
- package/node_modules/zod/v4/core/memoizer.js +311 -0
- package/node_modules/zod/v4/core/package.json +7 -0
- package/node_modules/zod/v4/core/parse.cjs +233 -0
- package/node_modules/zod/v4/core/parse.d.cts +52 -0
- package/node_modules/zod/v4/core/parse.d.ts +52 -0
- package/node_modules/zod/v4/core/parse.js +175 -0
- package/node_modules/zod/v4/core/regexes.cjs +209 -0
- package/node_modules/zod/v4/core/regexes.d.cts +90 -0
- package/node_modules/zod/v4/core/regexes.d.ts +90 -0
- package/node_modules/zod/v4/core/regexes.js +156 -0
- package/node_modules/zod/v4/core/registries.cjs +75 -0
- package/node_modules/zod/v4/core/registries.d.cts +35 -0
- package/node_modules/zod/v4/core/registries.d.ts +35 -0
- package/node_modules/zod/v4/core/registries.js +51 -0
- package/node_modules/zod/v4/core/schemas.cjs +2699 -0
- package/node_modules/zod/v4/core/schemas.d.cts +1275 -0
- package/node_modules/zod/v4/core/schemas.d.ts +1275 -0
- package/node_modules/zod/v4/core/schemas.js +2636 -0
- package/node_modules/zod/v4/core/standard-schema.cjs +21 -0
- package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
- package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
- package/node_modules/zod/v4/core/standard-schema.js +1 -0
- package/node_modules/zod/v4/core/to-json-schema.cjs +681 -0
- package/node_modules/zod/v4/core/to-json-schema.d.cts +154 -0
- package/node_modules/zod/v4/core/to-json-schema.d.ts +154 -0
- package/node_modules/zod/v4/core/to-json-schema.js +651 -0
- package/node_modules/zod/v4/core/util.cjs +964 -0
- package/node_modules/zod/v4/core/util.d.cts +280 -0
- package/node_modules/zod/v4/core/util.d.ts +280 -0
- package/node_modules/zod/v4/core/util.js +873 -0
- package/node_modules/zod/v4/core/versions.cjs +27 -0
- package/node_modules/zod/v4/core/versions.d.cts +5 -0
- package/node_modules/zod/v4/core/versions.d.ts +5 -0
- package/node_modules/zod/v4/core/versions.js +5 -0
- package/node_modules/zod/v4/core/visit.cjs +214 -0
- package/node_modules/zod/v4/core/visit.d.cts +30 -0
- package/node_modules/zod/v4/core/visit.d.ts +30 -0
- package/node_modules/zod/v4/core/visit.js +169 -0
- package/node_modules/zod/v4/index.cjs +51 -0
- package/node_modules/zod/v4/index.d.cts +3 -0
- package/node_modules/zod/v4/index.d.ts +3 -0
- package/node_modules/zod/v4/index.js +4 -0
- package/node_modules/zod/v4/locales/ar.cjs +138 -0
- package/node_modules/zod/v4/locales/ar.d.cts +5 -0
- package/node_modules/zod/v4/locales/ar.d.ts +4 -0
- package/node_modules/zod/v4/locales/ar.js +111 -0
- package/node_modules/zod/v4/locales/az.cjs +137 -0
- package/node_modules/zod/v4/locales/az.d.cts +5 -0
- package/node_modules/zod/v4/locales/az.d.ts +4 -0
- package/node_modules/zod/v4/locales/az.js +110 -0
- package/node_modules/zod/v4/locales/be.cjs +195 -0
- package/node_modules/zod/v4/locales/be.d.cts +5 -0
- package/node_modules/zod/v4/locales/be.d.ts +4 -0
- package/node_modules/zod/v4/locales/be.js +168 -0
- package/node_modules/zod/v4/locales/bg.cjs +152 -0
- package/node_modules/zod/v4/locales/bg.d.cts +5 -0
- package/node_modules/zod/v4/locales/bg.d.ts +4 -0
- package/node_modules/zod/v4/locales/bg.js +125 -0
- package/node_modules/zod/v4/locales/bn.cjs +140 -0
- package/node_modules/zod/v4/locales/bn.d.cts +5 -0
- package/node_modules/zod/v4/locales/bn.d.ts +4 -0
- package/node_modules/zod/v4/locales/bn.js +113 -0
- package/node_modules/zod/v4/locales/ca.cjs +139 -0
- package/node_modules/zod/v4/locales/ca.d.cts +5 -0
- package/node_modules/zod/v4/locales/ca.d.ts +4 -0
- package/node_modules/zod/v4/locales/ca.js +112 -0
- package/node_modules/zod/v4/locales/ckb.cjs +160 -0
- package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
- package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
- package/node_modules/zod/v4/locales/ckb.js +133 -0
- package/node_modules/zod/v4/locales/cs.cjs +143 -0
- package/node_modules/zod/v4/locales/cs.d.cts +5 -0
- package/node_modules/zod/v4/locales/cs.d.ts +4 -0
- package/node_modules/zod/v4/locales/cs.js +116 -0
- package/node_modules/zod/v4/locales/da.cjs +147 -0
- package/node_modules/zod/v4/locales/da.d.cts +5 -0
- package/node_modules/zod/v4/locales/da.d.ts +4 -0
- package/node_modules/zod/v4/locales/da.js +120 -0
- package/node_modules/zod/v4/locales/de.cjs +140 -0
- package/node_modules/zod/v4/locales/de.d.cts +5 -0
- package/node_modules/zod/v4/locales/de.d.ts +4 -0
- package/node_modules/zod/v4/locales/de.js +113 -0
- package/node_modules/zod/v4/locales/el.cjs +139 -0
- package/node_modules/zod/v4/locales/el.d.cts +5 -0
- package/node_modules/zod/v4/locales/el.d.ts +4 -0
- package/node_modules/zod/v4/locales/el.js +112 -0
- package/node_modules/zod/v4/locales/en.cjs +152 -0
- package/node_modules/zod/v4/locales/en.d.cts +5 -0
- package/node_modules/zod/v4/locales/en.d.ts +4 -0
- package/node_modules/zod/v4/locales/en.js +125 -0
- package/node_modules/zod/v4/locales/eo.cjs +141 -0
- package/node_modules/zod/v4/locales/eo.d.cts +5 -0
- package/node_modules/zod/v4/locales/eo.d.ts +4 -0
- package/node_modules/zod/v4/locales/eo.js +114 -0
- package/node_modules/zod/v4/locales/es.cjs +163 -0
- package/node_modules/zod/v4/locales/es.d.cts +5 -0
- package/node_modules/zod/v4/locales/es.d.ts +4 -0
- package/node_modules/zod/v4/locales/es.js +136 -0
- package/node_modules/zod/v4/locales/fa.cjs +146 -0
- package/node_modules/zod/v4/locales/fa.d.cts +5 -0
- package/node_modules/zod/v4/locales/fa.d.ts +4 -0
- package/node_modules/zod/v4/locales/fa.js +119 -0
- package/node_modules/zod/v4/locales/fi.cjs +144 -0
- package/node_modules/zod/v4/locales/fi.d.cts +5 -0
- package/node_modules/zod/v4/locales/fi.d.ts +4 -0
- package/node_modules/zod/v4/locales/fi.js +117 -0
- package/node_modules/zod/v4/locales/fr-CA.cjs +139 -0
- package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
- package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
- package/node_modules/zod/v4/locales/fr-CA.js +112 -0
- package/node_modules/zod/v4/locales/fr.cjs +156 -0
- package/node_modules/zod/v4/locales/fr.d.cts +5 -0
- package/node_modules/zod/v4/locales/fr.d.ts +4 -0
- package/node_modules/zod/v4/locales/fr.js +129 -0
- package/node_modules/zod/v4/locales/gu.cjs +140 -0
- package/node_modules/zod/v4/locales/gu.d.cts +5 -0
- package/node_modules/zod/v4/locales/gu.d.ts +4 -0
- package/node_modules/zod/v4/locales/gu.js +113 -0
- package/node_modules/zod/v4/locales/he.cjs +248 -0
- package/node_modules/zod/v4/locales/he.d.cts +5 -0
- package/node_modules/zod/v4/locales/he.d.ts +4 -0
- package/node_modules/zod/v4/locales/he.js +221 -0
- package/node_modules/zod/v4/locales/hi.cjs +138 -0
- package/node_modules/zod/v4/locales/hi.d.cts +5 -0
- package/node_modules/zod/v4/locales/hi.d.ts +4 -0
- package/node_modules/zod/v4/locales/hi.js +111 -0
- package/node_modules/zod/v4/locales/hr.cjs +153 -0
- package/node_modules/zod/v4/locales/hr.d.cts +5 -0
- package/node_modules/zod/v4/locales/hr.d.ts +4 -0
- package/node_modules/zod/v4/locales/hr.js +126 -0
- package/node_modules/zod/v4/locales/hu.cjs +140 -0
- package/node_modules/zod/v4/locales/hu.d.cts +5 -0
- package/node_modules/zod/v4/locales/hu.d.ts +4 -0
- package/node_modules/zod/v4/locales/hu.js +113 -0
- package/node_modules/zod/v4/locales/hy.cjs +185 -0
- package/node_modules/zod/v4/locales/hy.d.cts +5 -0
- package/node_modules/zod/v4/locales/hy.d.ts +4 -0
- package/node_modules/zod/v4/locales/hy.js +158 -0
- package/node_modules/zod/v4/locales/id.cjs +138 -0
- package/node_modules/zod/v4/locales/id.d.cts +5 -0
- package/node_modules/zod/v4/locales/id.d.ts +4 -0
- package/node_modules/zod/v4/locales/id.js +111 -0
- package/node_modules/zod/v4/locales/index.cjs +152 -0
- package/node_modules/zod/v4/locales/index.d.cts +63 -0
- package/node_modules/zod/v4/locales/index.d.ts +63 -0
- package/node_modules/zod/v4/locales/index.js +63 -0
- package/node_modules/zod/v4/locales/is.cjs +141 -0
- package/node_modules/zod/v4/locales/is.d.cts +5 -0
- package/node_modules/zod/v4/locales/is.d.ts +4 -0
- package/node_modules/zod/v4/locales/is.js +114 -0
- package/node_modules/zod/v4/locales/it.cjs +140 -0
- package/node_modules/zod/v4/locales/it.d.cts +5 -0
- package/node_modules/zod/v4/locales/it.d.ts +4 -0
- package/node_modules/zod/v4/locales/it.js +113 -0
- package/node_modules/zod/v4/locales/ja.cjs +139 -0
- package/node_modules/zod/v4/locales/ja.d.cts +5 -0
- package/node_modules/zod/v4/locales/ja.d.ts +4 -0
- package/node_modules/zod/v4/locales/ja.js +112 -0
- package/node_modules/zod/v4/locales/ka.cjs +144 -0
- package/node_modules/zod/v4/locales/ka.d.cts +5 -0
- package/node_modules/zod/v4/locales/ka.d.ts +4 -0
- package/node_modules/zod/v4/locales/ka.js +117 -0
- package/node_modules/zod/v4/locales/kh.cjs +12 -0
- package/node_modules/zod/v4/locales/kh.d.cts +5 -0
- package/node_modules/zod/v4/locales/kh.d.ts +5 -0
- package/node_modules/zod/v4/locales/kh.js +5 -0
- package/node_modules/zod/v4/locales/km.cjs +142 -0
- package/node_modules/zod/v4/locales/km.d.cts +5 -0
- package/node_modules/zod/v4/locales/km.d.ts +4 -0
- package/node_modules/zod/v4/locales/km.js +115 -0
- package/node_modules/zod/v4/locales/kn.cjs +143 -0
- package/node_modules/zod/v4/locales/kn.d.cts +5 -0
- package/node_modules/zod/v4/locales/kn.d.ts +4 -0
- package/node_modules/zod/v4/locales/kn.js +116 -0
- package/node_modules/zod/v4/locales/ko.cjs +143 -0
- package/node_modules/zod/v4/locales/ko.d.cts +5 -0
- package/node_modules/zod/v4/locales/ko.d.ts +4 -0
- package/node_modules/zod/v4/locales/ko.js +116 -0
- package/node_modules/zod/v4/locales/lt.cjs +234 -0
- package/node_modules/zod/v4/locales/lt.d.cts +5 -0
- package/node_modules/zod/v4/locales/lt.d.ts +4 -0
- package/node_modules/zod/v4/locales/lt.js +207 -0
- package/node_modules/zod/v4/locales/mk.cjs +141 -0
- package/node_modules/zod/v4/locales/mk.d.cts +5 -0
- package/node_modules/zod/v4/locales/mk.d.ts +4 -0
- package/node_modules/zod/v4/locales/mk.js +114 -0
- package/node_modules/zod/v4/locales/ms.cjs +139 -0
- package/node_modules/zod/v4/locales/ms.d.cts +5 -0
- package/node_modules/zod/v4/locales/ms.d.ts +4 -0
- package/node_modules/zod/v4/locales/ms.js +112 -0
- package/node_modules/zod/v4/locales/ne.cjs +138 -0
- package/node_modules/zod/v4/locales/ne.d.cts +5 -0
- package/node_modules/zod/v4/locales/ne.d.ts +4 -0
- package/node_modules/zod/v4/locales/ne.js +111 -0
- package/node_modules/zod/v4/locales/nl.cjs +142 -0
- package/node_modules/zod/v4/locales/nl.d.cts +5 -0
- package/node_modules/zod/v4/locales/nl.d.ts +4 -0
- package/node_modules/zod/v4/locales/nl.js +115 -0
- package/node_modules/zod/v4/locales/nn.cjs +140 -0
- package/node_modules/zod/v4/locales/nn.d.cts +5 -0
- package/node_modules/zod/v4/locales/nn.d.ts +4 -0
- package/node_modules/zod/v4/locales/nn.js +113 -0
- package/node_modules/zod/v4/locales/no.cjs +140 -0
- package/node_modules/zod/v4/locales/no.d.cts +5 -0
- package/node_modules/zod/v4/locales/no.d.ts +4 -0
- package/node_modules/zod/v4/locales/no.js +113 -0
- package/node_modules/zod/v4/locales/ota.cjs +141 -0
- package/node_modules/zod/v4/locales/ota.d.cts +5 -0
- package/node_modules/zod/v4/locales/ota.d.ts +4 -0
- package/node_modules/zod/v4/locales/ota.js +114 -0
- package/node_modules/zod/v4/locales/package.json +7 -0
- package/node_modules/zod/v4/locales/pl.cjs +141 -0
- package/node_modules/zod/v4/locales/pl.d.cts +5 -0
- package/node_modules/zod/v4/locales/pl.d.ts +4 -0
- package/node_modules/zod/v4/locales/pl.js +114 -0
- package/node_modules/zod/v4/locales/ps.cjs +146 -0
- package/node_modules/zod/v4/locales/ps.d.cts +5 -0
- package/node_modules/zod/v4/locales/ps.d.ts +4 -0
- package/node_modules/zod/v4/locales/ps.js +119 -0
- package/node_modules/zod/v4/locales/pt-BR.cjs +170 -0
- package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
- package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
- package/node_modules/zod/v4/locales/pt-BR.js +143 -0
- package/node_modules/zod/v4/locales/pt.cjs +169 -0
- package/node_modules/zod/v4/locales/pt.d.cts +5 -0
- package/node_modules/zod/v4/locales/pt.d.ts +4 -0
- package/node_modules/zod/v4/locales/pt.js +142 -0
- package/node_modules/zod/v4/locales/ro.cjs +149 -0
- package/node_modules/zod/v4/locales/ro.d.cts +5 -0
- package/node_modules/zod/v4/locales/ro.d.ts +4 -0
- package/node_modules/zod/v4/locales/ro.js +122 -0
- package/node_modules/zod/v4/locales/ru.cjs +195 -0
- package/node_modules/zod/v4/locales/ru.d.cts +5 -0
- package/node_modules/zod/v4/locales/ru.d.ts +4 -0
- package/node_modules/zod/v4/locales/ru.js +168 -0
- package/node_modules/zod/v4/locales/sk.cjs +143 -0
- package/node_modules/zod/v4/locales/sk.d.cts +5 -0
- package/node_modules/zod/v4/locales/sk.d.ts +4 -0
- package/node_modules/zod/v4/locales/sk.js +116 -0
- package/node_modules/zod/v4/locales/sl.cjs +141 -0
- package/node_modules/zod/v4/locales/sl.d.cts +5 -0
- package/node_modules/zod/v4/locales/sl.d.ts +4 -0
- package/node_modules/zod/v4/locales/sl.js +114 -0
- package/node_modules/zod/v4/locales/sv.cjs +142 -0
- package/node_modules/zod/v4/locales/sv.d.cts +5 -0
- package/node_modules/zod/v4/locales/sv.d.ts +4 -0
- package/node_modules/zod/v4/locales/sv.js +115 -0
- package/node_modules/zod/v4/locales/ta.cjs +142 -0
- package/node_modules/zod/v4/locales/ta.d.cts +5 -0
- package/node_modules/zod/v4/locales/ta.d.ts +4 -0
- package/node_modules/zod/v4/locales/ta.js +115 -0
- package/node_modules/zod/v4/locales/tg.cjs +144 -0
- package/node_modules/zod/v4/locales/tg.d.cts +5 -0
- package/node_modules/zod/v4/locales/tg.d.ts +4 -0
- package/node_modules/zod/v4/locales/tg.js +117 -0
- package/node_modules/zod/v4/locales/th.cjs +142 -0
- package/node_modules/zod/v4/locales/th.d.cts +5 -0
- package/node_modules/zod/v4/locales/th.d.ts +4 -0
- package/node_modules/zod/v4/locales/th.js +115 -0
- package/node_modules/zod/v4/locales/tk.cjs +134 -0
- package/node_modules/zod/v4/locales/tk.d.cts +5 -0
- package/node_modules/zod/v4/locales/tk.d.ts +4 -0
- package/node_modules/zod/v4/locales/tk.js +107 -0
- package/node_modules/zod/v4/locales/tr.cjs +137 -0
- package/node_modules/zod/v4/locales/tr.d.cts +5 -0
- package/node_modules/zod/v4/locales/tr.d.ts +4 -0
- package/node_modules/zod/v4/locales/tr.js +110 -0
- package/node_modules/zod/v4/locales/ua.cjs +12 -0
- package/node_modules/zod/v4/locales/ua.d.cts +5 -0
- package/node_modules/zod/v4/locales/ua.d.ts +5 -0
- package/node_modules/zod/v4/locales/ua.js +5 -0
- package/node_modules/zod/v4/locales/uk.cjs +140 -0
- package/node_modules/zod/v4/locales/uk.d.cts +5 -0
- package/node_modules/zod/v4/locales/uk.d.ts +4 -0
- package/node_modules/zod/v4/locales/uk.js +113 -0
- package/node_modules/zod/v4/locales/ur.cjs +142 -0
- package/node_modules/zod/v4/locales/ur.d.cts +5 -0
- package/node_modules/zod/v4/locales/ur.d.ts +4 -0
- package/node_modules/zod/v4/locales/ur.js +115 -0
- package/node_modules/zod/v4/locales/uz.cjs +140 -0
- package/node_modules/zod/v4/locales/uz.d.cts +5 -0
- package/node_modules/zod/v4/locales/uz.d.ts +4 -0
- package/node_modules/zod/v4/locales/uz.js +113 -0
- package/node_modules/zod/v4/locales/vi.cjs +140 -0
- package/node_modules/zod/v4/locales/vi.d.cts +5 -0
- package/node_modules/zod/v4/locales/vi.d.ts +4 -0
- package/node_modules/zod/v4/locales/vi.js +113 -0
- package/node_modules/zod/v4/locales/yo.cjs +139 -0
- package/node_modules/zod/v4/locales/yo.d.cts +5 -0
- package/node_modules/zod/v4/locales/yo.d.ts +4 -0
- package/node_modules/zod/v4/locales/yo.js +112 -0
- package/node_modules/zod/v4/locales/zh-CN.cjs +141 -0
- package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
- package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
- package/node_modules/zod/v4/locales/zh-CN.js +114 -0
- package/node_modules/zod/v4/locales/zh-TW.cjs +139 -0
- package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
- package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
- package/node_modules/zod/v4/locales/zh-TW.js +112 -0
- package/node_modules/zod/v4/mini/checks.cjs +54 -0
- package/node_modules/zod/v4/mini/checks.d.cts +1 -0
- package/node_modules/zod/v4/mini/checks.d.ts +1 -0
- package/node_modules/zod/v4/mini/checks.js +1 -0
- package/node_modules/zod/v4/mini/coerce.cjs +71 -0
- package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
- package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
- package/node_modules/zod/v4/mini/coerce.js +22 -0
- package/node_modules/zod/v4/mini/deep-partial.cjs +58 -0
- package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.js +13 -0
- package/node_modules/zod/v4/mini/external.cjs +95 -0
- package/node_modules/zod/v4/mini/external.d.cts +16 -0
- package/node_modules/zod/v4/mini/external.d.ts +16 -0
- package/node_modules/zod/v4/mini/external.js +16 -0
- package/node_modules/zod/v4/mini/in-out.cjs +82 -0
- package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
- package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
- package/node_modules/zod/v4/mini/in-out.js +36 -0
- package/node_modules/zod/v4/mini/index.cjs +51 -0
- package/node_modules/zod/v4/mini/index.d.cts +3 -0
- package/node_modules/zod/v4/mini/index.d.ts +3 -0
- package/node_modules/zod/v4/mini/index.js +3 -0
- package/node_modules/zod/v4/mini/iso.cjs +83 -0
- package/node_modules/zod/v4/mini/iso.d.cts +22 -0
- package/node_modules/zod/v4/mini/iso.d.ts +22 -0
- package/node_modules/zod/v4/mini/iso.js +34 -0
- package/node_modules/zod/v4/mini/package.json +7 -0
- package/node_modules/zod/v4/mini/parse.cjs +37 -0
- package/node_modules/zod/v4/mini/parse.d.cts +1 -0
- package/node_modules/zod/v4/mini/parse.d.ts +1 -0
- package/node_modules/zod/v4/mini/parse.js +1 -0
- package/node_modules/zod/v4/mini/schemas.cjs +1147 -0
- package/node_modules/zod/v4/mini/schemas.d.cts +480 -0
- package/node_modules/zod/v4/mini/schemas.d.ts +480 -0
- package/node_modules/zod/v4/mini/schemas.js +1002 -0
- package/node_modules/zod/v4/package.json +7 -0
- package/node_modules/zod/v4-mini/index.cjs +51 -0
- package/node_modules/zod/v4-mini/index.d.cts +3 -0
- package/node_modules/zod/v4-mini/index.d.ts +3 -0
- package/node_modules/zod/v4-mini/index.js +3 -0
- package/node_modules/zod/v4-mini/package.json +7 -0
- package/package.json +32 -4
- package/runtime.cjs +14 -0
- package/scripts/arguments.mjs +77 -0
- package/scripts/continuation.mjs +31 -0
- package/scripts/create-task.mjs +27 -0
- package/scripts/delete-task.mjs +3 -0
- package/scripts/entry.mjs +6 -0
- package/scripts/get-task.mjs +40 -0
- package/scripts/get-tasks.mjs +84 -0
- package/scripts/hook.mjs +89 -0
- package/scripts/inspect-blockers.mjs +76 -0
- package/scripts/install-launcher.mjs +28 -0
- package/scripts/install-migration.mjs +82 -0
- package/scripts/install-path.mjs +105 -0
- package/scripts/install-release.mjs +252 -0
- package/scripts/lifecycle.mjs +35 -0
- package/scripts/list-tasks.mjs +117 -0
- package/scripts/output.mjs +67 -0
- package/scripts/schema.mjs +41 -0
- package/scripts/search-tasks.mjs +96 -0
- package/scripts/task-write-input.mjs +80 -0
- package/scripts/transition-task.mjs +3 -0
- package/scripts/update-release.mjs +82 -0
- package/scripts/update-task.mjs +29 -0
- package/scripts/validate-task-stores.mjs +34 -0
- package/src/blockers.mjs +134 -0
- package/src/cache.mjs +50 -0
- package/src/config.mjs +30 -0
- package/src/create.mjs +145 -0
- package/src/cursor.mjs +30 -0
- package/src/destinations.mjs +74 -0
- package/src/errors.mjs +16 -0
- package/src/field-rules.mjs +105 -0
- package/src/fields.mjs +32 -0
- package/src/input.mjs +146 -0
- package/src/limits.mjs +5 -0
- package/src/locations.mjs +19 -0
- package/src/pagination.mjs +30 -0
- package/src/project-lock.mjs +74 -0
- package/src/projects.mjs +33 -0
- package/src/response.mjs +75 -0
- package/src/schema.mjs +76 -0
- package/src/search-index-worker.mjs +10 -0
- package/src/search-index.mjs +639 -0
- package/src/search.mjs +228 -0
- package/src/service.mjs +260 -0
- package/src/source.mjs +48 -0
- package/src/sqlite.mjs +17 -0
- package/src/storage-format.mjs +15 -0
- package/src/stores.mjs +337 -0
- package/src/tasks.mjs +290 -0
- package/src/timestamps.mjs +22 -0
- package/src/transition.mjs +181 -0
- package/src/update.mjs +56 -0
- package/src/validation.mjs +144 -0
- package/src/version.mjs +5 -0
package/README.md
CHANGED
|
@@ -1,3 +1,39 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Outask
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Outask is a lightweight task tracker that keeps tasks in readable JSON alongside your project code. Use its CLI from your terminal, or connect local AI agents through the optional MCP adapter.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
Requires Node.js 22.23.3 or later and npm on PATH.
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm install -g outask
|
|
11
|
+
outask --version
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## CLI quick start
|
|
15
|
+
|
|
16
|
+
Run from your project directory. Replace `1` with the ID returned by `create`.
|
|
17
|
+
|
|
18
|
+
```sh
|
|
19
|
+
outask create --title "Write release notes"
|
|
20
|
+
outask list
|
|
21
|
+
outask get 1
|
|
22
|
+
outask update 1 --title "Review release notes"
|
|
23
|
+
outask transition 1 --status done
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
See the [operator reference](https://github.com/henryh/outask/blob/main/app/README.md) for project selection, task fields and configured statuses.
|
|
27
|
+
|
|
28
|
+
## Connect MCP
|
|
29
|
+
|
|
30
|
+
Configure your MCP client to run `outask mcp`. Tool calls select your repository with an absolute `project_path`. See [MCP setup](https://github.com/henryh/outask/blob/main/app/mcp/README.md) for client configuration.
|
|
31
|
+
|
|
32
|
+
## Update or remove
|
|
33
|
+
|
|
34
|
+
```sh
|
|
35
|
+
npm update -g outask
|
|
36
|
+
npm uninstall -g outask
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Uninstall removes the npm package and its commands; project tasks, skills, configuration and cache remain. See [installation and updates](https://github.com/henryh/outask/blob/main/app/README.md#installation-and-updates) for lifecycle details.
|
package/bin/outask
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
process.title = 'outask';
|
|
3
|
+
// Node resolves this entry's real path before loading its relative modules.
|
|
4
|
+
import('../runtime.cjs').then(() => import('../cli.mjs')).then(({ main }) => main(process.argv.slice(2))).catch((error) => {
|
|
5
|
+
process.stderr.write(`STARTUP_ERROR: ${error.message}\n`);
|
|
6
|
+
process.exitCode = 1;
|
|
7
|
+
});
|
package/bin/tasks
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
process.title = 'outask';
|
|
3
|
+
// Node resolves this entry's real path before loading its relative modules.
|
|
4
|
+
import('../runtime.cjs').then(() => import('../cli.mjs')).then(({ main }) => main(process.argv.slice(2))).catch((error) => {
|
|
5
|
+
process.stderr.write(`STARTUP_ERROR: ${error.message}\n`);
|
|
6
|
+
process.exitCode = 1;
|
|
7
|
+
});
|
package/cli.mjs
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { parseArgs } from 'node:util';
|
|
2
|
+
import { readFileSync } from 'node:fs';
|
|
3
|
+
import { fail } from './src/errors.mjs';
|
|
4
|
+
import { selectProject } from './src/projects.mjs';
|
|
5
|
+
import { parseProject, projectHelp } from './scripts/arguments.mjs';
|
|
6
|
+
import { reportError } from './scripts/output.mjs';
|
|
7
|
+
import * as list from './scripts/list-tasks.mjs';
|
|
8
|
+
import * as search from './scripts/search-tasks.mjs';
|
|
9
|
+
import * as get from './scripts/get-task.mjs';
|
|
10
|
+
import * as getMany from './scripts/get-tasks.mjs';
|
|
11
|
+
import * as deps from './scripts/inspect-blockers.mjs';
|
|
12
|
+
import * as validate from './scripts/validate-task-stores.mjs';
|
|
13
|
+
import * as create from './scripts/create-task.mjs';
|
|
14
|
+
import * as update from './scripts/update-task.mjs';
|
|
15
|
+
import * as hook from './scripts/hook.mjs';
|
|
16
|
+
import * as schema from './scripts/schema.mjs';
|
|
17
|
+
import { lifecycleCommand } from './scripts/lifecycle.mjs';
|
|
18
|
+
import { distributionVersion } from './src/version.mjs';
|
|
19
|
+
|
|
20
|
+
const commands = {
|
|
21
|
+
list, search, get, 'get-many': getMany, deps, validate, create, update, hook, schema,
|
|
22
|
+
transition: lifecycleCommand(false),
|
|
23
|
+
};
|
|
24
|
+
const version = distributionVersion(JSON.parse(readFileSync(new URL('./package.json', import.meta.url), 'utf8')).version);
|
|
25
|
+
const commandGuide = ` list List tasks
|
|
26
|
+
search Search task content
|
|
27
|
+
get Read one task
|
|
28
|
+
get-many Read several tasks
|
|
29
|
+
deps Inspect task blockers
|
|
30
|
+
validate Validate task stores
|
|
31
|
+
schema Inspect or save the task schema
|
|
32
|
+
create Create a task
|
|
33
|
+
update Update a task
|
|
34
|
+
transition Change a task's status
|
|
35
|
+
hook Install or remove pre-commit validation
|
|
36
|
+
mcp Start the MCP adapter`;
|
|
37
|
+
const guide = `Usage: outask <command> [options]
|
|
38
|
+
|
|
39
|
+
${commandGuide}
|
|
40
|
+
|
|
41
|
+
Task commands use the current project directory by default.
|
|
42
|
+
Command options: outask <command> --help. Full guide: outask --help.
|
|
43
|
+
Installed version: outask --version.
|
|
44
|
+
`;
|
|
45
|
+
const selectionHelp = `Select one project with a positional path, --project-path <path>, or --project <name>.
|
|
46
|
+
With no selector, use the current working directory. Selectors cannot be combined.
|
|
47
|
+
--config <path> Program config; overrides TASK_TRACKER_CONFIG, then XDG_CONFIG_HOME
|
|
48
|
+
(default: the platform Outask root/config.json). Paths bypass name mappings.
|
|
49
|
+
--schema-path <file> Project-relative task schema; distinct from registry --config.
|
|
50
|
+
Names resolve immediate projects_root children and explicit projects mappings;
|
|
51
|
+
conflicting locations fail. No parent search or automatic worktree selection.
|
|
52
|
+
`;
|
|
53
|
+
const help = `Outask manages project tasks stored as JSON alongside your code.
|
|
54
|
+
|
|
55
|
+
Usage: outask <command> [options]
|
|
56
|
+
|
|
57
|
+
${commandGuide}
|
|
58
|
+
|
|
59
|
+
Tips:
|
|
60
|
+
Run commands from your project directory, or use --project-path <directory>.
|
|
61
|
+
Start with outask create --title "Your task", then outask list.
|
|
62
|
+
Use outask <command> --help for options and examples.
|
|
63
|
+
|
|
64
|
+
Installed version: outask --version (or -v).
|
|
65
|
+
Permanent equivalent command: tasks.
|
|
66
|
+
Repository and documentation: https://github.com/henryh/outask
|
|
67
|
+
`;
|
|
68
|
+
|
|
69
|
+
export async function main(args) {
|
|
70
|
+
try {
|
|
71
|
+
const [name, ...rest] = args;
|
|
72
|
+
if (['--version', '-v'].includes(name)) {
|
|
73
|
+
if (rest.length) fail('INVALID_INPUT', 'outask --version accepts no arguments');
|
|
74
|
+
process.stdout.write(`Outask v${version}\n`);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
if (name === undefined) {
|
|
78
|
+
process.stdout.write(guide);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (['--help', '-h', 'help'].includes(name)) {
|
|
82
|
+
if (rest.length) fail('INVALID_INPUT', 'use outask <command> --help');
|
|
83
|
+
process.stdout.write(help);
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
if (name === 'mcp') {
|
|
87
|
+
if (rest.length === 1 && ['--help', '-h'].includes(rest[0])) {
|
|
88
|
+
process.stdout.write('Usage: outask mcp\nStart the local stdio adapter; select the project in each tool call.\nPublished releases include the adapter and its dependencies.\nConfigure the client with command outask and argument mcp.\nSetup and tool contract: https://github.com/henryh/outask/blob/main/app/mcp/README.md\n');
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
if (rest.length) fail('INVALID_INPUT', 'outask mcp accepts no options; select the project in each tool call');
|
|
92
|
+
const [major, minor, patch] = process.versions.node.split('.').map(Number);
|
|
93
|
+
if (major < 22 || (major === 22 && (minor < 23 || (minor === 23 && patch < 3)))) {
|
|
94
|
+
fail('INCOMPATIBLE_RUNTIME', 'MCP requires Node.js >=22.23.3');
|
|
95
|
+
}
|
|
96
|
+
let adapter;
|
|
97
|
+
try { adapter = await import('./mcp/server.mjs'); }
|
|
98
|
+
catch (error) {
|
|
99
|
+
if (error.code !== 'ERR_MODULE_NOT_FOUND') throw error;
|
|
100
|
+
fail('ADAPTER_NOT_INSTALLED', 'install the application dependencies with npm ci --prefix <checkout>/app --omit=dev; for an installed package, reinstall through its original distribution channel; see app/mcp/README.md');
|
|
101
|
+
}
|
|
102
|
+
await adapter.main();
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (name === 'http') {
|
|
106
|
+
try { commands.http = await import('./http.mjs'); }
|
|
107
|
+
catch (error) {
|
|
108
|
+
if (error.code !== 'ERR_MODULE_NOT_FOUND') throw error;
|
|
109
|
+
fail('ADAPTER_NOT_INSTALLED', 'HTTP release integration is unfinished; use a source checkout');
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
if (!Object.hasOwn(commands, name)) fail('INVALID_INPUT', `unknown command ${name}; use outask --help`);
|
|
113
|
+
const command = commands[name];
|
|
114
|
+
const usage = command.usage.replace(/node app\/(?:scripts\/)?[^ ]+/, `outask ${name}`);
|
|
115
|
+
const { values, positionals, tokens } = parseArgs({ args: rest, allowPositionals: true, tokens: true, options: {
|
|
116
|
+
...command.options, project: { type: 'string' }, 'project-path': { type: 'string' }, config: { type: 'string' },
|
|
117
|
+
} });
|
|
118
|
+
for (const option of ['project', 'project-path', 'config', 'schema-path']) {
|
|
119
|
+
if (tokens.filter((token) => token.kind === 'option' && token.name === option).length > 1) {
|
|
120
|
+
fail('INVALID_INPUT', `--${option} may be supplied only once`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (values.help) {
|
|
124
|
+
process.stdout.write(command.help.replace(command.usage, usage).replace(projectHelp, selectionHelp)
|
|
125
|
+
.replace('Use list-tasks.mjs and get-task.mjs', 'Use outask list and outask get'));
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const withId = !['list', 'get-many', 'validate', 'create', 'hook', 'http', 'schema'].includes(name);
|
|
129
|
+
const selected = parseProject(positionals, usage, withId);
|
|
130
|
+
const hasPath = positionals.length > (withId ? 1 : 0);
|
|
131
|
+
if (Number(hasPath) + Number(values.project !== undefined) + Number(values['project-path'] !== undefined) > 1) {
|
|
132
|
+
fail('INVALID_INPUT', 'select exactly one project: positional path, --project-path or --project');
|
|
133
|
+
}
|
|
134
|
+
if (values['project-path'] === '' || values.config === '' || values['schema-path'] === '') fail('INVALID_INPUT', 'paths must not be empty');
|
|
135
|
+
const project = selectProject({ name: values.project, path: values['project-path'] ?? selected.project, config: values.config });
|
|
136
|
+
const forwarded = [];
|
|
137
|
+
for (const token of tokens) {
|
|
138
|
+
if (token.kind !== 'option' || ['project', 'project-path', 'config'].includes(token.name)) continue;
|
|
139
|
+
forwarded.push(token.value === undefined ? token.rawName : `--${token.name}=${token.value}`);
|
|
140
|
+
}
|
|
141
|
+
try {
|
|
142
|
+
await command.main([project, ...(withId ? [selected.id] : []), ...forwarded],
|
|
143
|
+
{ args: rest, tokens, invocation: ['outask', name], config: values.config });
|
|
144
|
+
} catch (error) {
|
|
145
|
+
if (error.message === command.usage) error.message = usage;
|
|
146
|
+
throw error;
|
|
147
|
+
}
|
|
148
|
+
} catch (error) {
|
|
149
|
+
reportError(error);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "outask-mcp",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"lockfileVersion": 3,
|
|
5
|
+
"requires": true,
|
|
6
|
+
"packages": {
|
|
7
|
+
"": {
|
|
8
|
+
"name": "outask-mcp",
|
|
9
|
+
"version": "0.1.0",
|
|
10
|
+
"license": "AGPL-3.0-only",
|
|
11
|
+
"devDependencies": {
|
|
12
|
+
"@modelcontextprotocol/client": "2.3.0"
|
|
13
|
+
},
|
|
14
|
+
"engines": {
|
|
15
|
+
"node": ">=22.23.3"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"node_modules/@modelcontextprotocol/client": {
|
|
19
|
+
"version": "2.3.0",
|
|
20
|
+
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/client/-/client-2.3.0.tgz",
|
|
21
|
+
"integrity": "sha512-pbHtGj6EeFCHngFE8gtNPaKrsj8Mb1IMw45BLcaPML/m2WTxI7pyYmeNQvaux88Lw8BSO5r7nyRbUyIkICmGrg==",
|
|
22
|
+
"dev": true,
|
|
23
|
+
"license": "Apache-2.0",
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@modelcontextprotocol/core": "2.3.0",
|
|
26
|
+
"cross-spawn": "^7.0.5",
|
|
27
|
+
"eventsource": "^3.0.2",
|
|
28
|
+
"eventsource-parser": "^3.0.8",
|
|
29
|
+
"jose": "^6.1.3",
|
|
30
|
+
"pkce-challenge": "^5.0.0",
|
|
31
|
+
"zod": "^4.2.0"
|
|
32
|
+
},
|
|
33
|
+
"engines": {
|
|
34
|
+
"node": ">=20"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"node_modules/@modelcontextprotocol/core": {
|
|
38
|
+
"version": "2.3.0",
|
|
39
|
+
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/core/-/core-2.3.0.tgz",
|
|
40
|
+
"integrity": "sha512-09BHFaNVBe5pB2AhzCfLj0cqmsKLERvZQ4FblzP90UMGLaXVqdZPByFjURwsUYCmxonUW2yAwgTTvle+8O2/8w==",
|
|
41
|
+
"dev": true,
|
|
42
|
+
"license": "Apache-2.0",
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"zod": "^4.2.0"
|
|
45
|
+
},
|
|
46
|
+
"engines": {
|
|
47
|
+
"node": ">=20"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"node_modules/cross-spawn": {
|
|
51
|
+
"version": "7.0.6",
|
|
52
|
+
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
|
|
53
|
+
"integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
|
|
54
|
+
"dev": true,
|
|
55
|
+
"license": "MIT",
|
|
56
|
+
"dependencies": {
|
|
57
|
+
"path-key": "^3.1.0",
|
|
58
|
+
"shebang-command": "^2.0.0",
|
|
59
|
+
"which": "^2.0.1"
|
|
60
|
+
},
|
|
61
|
+
"engines": {
|
|
62
|
+
"node": ">= 8"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"node_modules/eventsource": {
|
|
66
|
+
"version": "3.0.7",
|
|
67
|
+
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz",
|
|
68
|
+
"integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==",
|
|
69
|
+
"dev": true,
|
|
70
|
+
"license": "MIT",
|
|
71
|
+
"dependencies": {
|
|
72
|
+
"eventsource-parser": "^3.0.1"
|
|
73
|
+
},
|
|
74
|
+
"engines": {
|
|
75
|
+
"node": ">=18.0.0"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
"node_modules/eventsource-parser": {
|
|
79
|
+
"version": "3.1.1",
|
|
80
|
+
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz",
|
|
81
|
+
"integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==",
|
|
82
|
+
"dev": true,
|
|
83
|
+
"license": "MIT",
|
|
84
|
+
"engines": {
|
|
85
|
+
"node": ">=18.0.0"
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"node_modules/isexe": {
|
|
89
|
+
"version": "2.0.0",
|
|
90
|
+
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
|
|
91
|
+
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
|
|
92
|
+
"dev": true,
|
|
93
|
+
"license": "ISC"
|
|
94
|
+
},
|
|
95
|
+
"node_modules/jose": {
|
|
96
|
+
"version": "6.2.12",
|
|
97
|
+
"resolved": "https://registry.npmjs.org/jose/-/jose-6.2.12.tgz",
|
|
98
|
+
"integrity": "sha512-9NiFmJEex0sy2Dk58j2UGBSHgUs2ypF9eZSu4L6vjOX3Dp96Sw1F3uL+H+D1sx02jZZdzUT0HgvCy59CuvXcWw==",
|
|
99
|
+
"dev": true,
|
|
100
|
+
"license": "MIT",
|
|
101
|
+
"funding": {
|
|
102
|
+
"url": "https://github.com/sponsors/panva"
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"node_modules/path-key": {
|
|
106
|
+
"version": "3.1.1",
|
|
107
|
+
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
|
|
108
|
+
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
|
|
109
|
+
"dev": true,
|
|
110
|
+
"license": "MIT",
|
|
111
|
+
"engines": {
|
|
112
|
+
"node": ">=8"
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"node_modules/pkce-challenge": {
|
|
116
|
+
"version": "5.0.1",
|
|
117
|
+
"resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz",
|
|
118
|
+
"integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==",
|
|
119
|
+
"dev": true,
|
|
120
|
+
"license": "MIT",
|
|
121
|
+
"engines": {
|
|
122
|
+
"node": ">=16.20.0"
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"node_modules/shebang-command": {
|
|
126
|
+
"version": "2.0.0",
|
|
127
|
+
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
|
|
128
|
+
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
|
|
129
|
+
"dev": true,
|
|
130
|
+
"license": "MIT",
|
|
131
|
+
"dependencies": {
|
|
132
|
+
"shebang-regex": "^3.0.0"
|
|
133
|
+
},
|
|
134
|
+
"engines": {
|
|
135
|
+
"node": ">=8"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"node_modules/shebang-regex": {
|
|
139
|
+
"version": "3.0.0",
|
|
140
|
+
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
|
|
141
|
+
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
|
|
142
|
+
"dev": true,
|
|
143
|
+
"license": "MIT",
|
|
144
|
+
"engines": {
|
|
145
|
+
"node": ">=8"
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
"node_modules/which": {
|
|
149
|
+
"version": "2.0.2",
|
|
150
|
+
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
|
151
|
+
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
|
152
|
+
"dev": true,
|
|
153
|
+
"license": "ISC",
|
|
154
|
+
"dependencies": {
|
|
155
|
+
"isexe": "^2.0.0"
|
|
156
|
+
},
|
|
157
|
+
"bin": {
|
|
158
|
+
"node-which": "bin/node-which"
|
|
159
|
+
},
|
|
160
|
+
"engines": {
|
|
161
|
+
"node": ">= 8"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"node_modules/zod": {
|
|
165
|
+
"version": "4.6.6",
|
|
166
|
+
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.6.tgz",
|
|
167
|
+
"integrity": "sha512-4UmzQUF5fxvfcYHlbjBmejU+w+hbDnWFx4aS8kBx7nPBHcO2SqPbpAG8snbdg+Xse4pRefR98hgjFgIMCI/UhA==",
|
|
168
|
+
"dev": true,
|
|
169
|
+
"license": "MIT",
|
|
170
|
+
"funding": {
|
|
171
|
+
"url": "https://github.com/sponsors/colinhacks"
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
package/mcp/package.json
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "outask-mcp",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Outask stdio MCP adapter for repository-local task tracking",
|
|
5
|
+
"private": true,
|
|
6
|
+
"author": "Henry <me@henrydev.me>",
|
|
7
|
+
"license": "AGPL-3.0-only",
|
|
8
|
+
"type": "module",
|
|
9
|
+
"engines": {
|
|
10
|
+
"node": ">=22.23.3"
|
|
11
|
+
},
|
|
12
|
+
"devDependencies": {
|
|
13
|
+
"@modelcontextprotocol/client": "2.3.0"
|
|
14
|
+
}
|
|
15
|
+
}
|
package/mcp/server.mjs
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/server';
|
|
2
|
+
import { StdioServerTransport } from '@modelcontextprotocol/server/stdio';
|
|
3
|
+
import { z } from 'zod/v4';
|
|
4
|
+
import { inspectBlockers, maxDepth } from '../src/blockers.mjs';
|
|
5
|
+
import { readConfig } from '../src/config.mjs';
|
|
6
|
+
import { createTask } from '../src/create.mjs';
|
|
7
|
+
import { errorText, fail } from '../src/errors.mjs';
|
|
8
|
+
import { inputBytes, maxLimit } from '../src/limits.mjs';
|
|
9
|
+
import { selectProject } from '../src/projects.mjs';
|
|
10
|
+
import { jsonBytes } from '../src/response.mjs';
|
|
11
|
+
import { searchTasks } from '../src/search.mjs';
|
|
12
|
+
import { countTasks, getTask, getTasks, listTasks } from '../src/tasks.mjs';
|
|
13
|
+
import { deleteTask, transitionTask } from '../src/transition.mjs';
|
|
14
|
+
import { updateTask } from '../src/update.mjs';
|
|
15
|
+
import { validateProject } from '../src/validation.mjs';
|
|
16
|
+
import { inspectSchema, materialiseSchema } from '../src/schema.mjs';
|
|
17
|
+
|
|
18
|
+
const text = z.string().min(1);
|
|
19
|
+
const id = z.number().int().positive().max(Number.MAX_SAFE_INTEGER);
|
|
20
|
+
const limit = z.number().int().min(1).max(maxLimit).optional()
|
|
21
|
+
.describe(`Integer limit from 1 to ${maxLimit}; default 10. For more paged results, use the returned continuation.`);
|
|
22
|
+
const selection = {
|
|
23
|
+
project: text.optional().describe('Configured project name; exclusive with project_path.'),
|
|
24
|
+
project_path: text.optional().describe('Project directory; defaults to server working directory.'),
|
|
25
|
+
config: text.optional().describe('Name registry path; otherwise TASK_TRACKER_CONFIG or the Outask default registry.'),
|
|
26
|
+
schema_path: text.optional().describe('Project-relative task schema; overrides automatic default/legacy selection.'),
|
|
27
|
+
};
|
|
28
|
+
const reading = {
|
|
29
|
+
stores: z.array(text).optional().describe('Store names; ["all"] includes retained history. Exclusive with group.'),
|
|
30
|
+
group: z.enum(['Active', 'Done', 'Archive']).optional(),
|
|
31
|
+
fields: z.array(text).optional().describe('Field projection; ["all"] includes extension fields.'),
|
|
32
|
+
no_cache: z.boolean().optional().describe('Default false; omit for normal reads, which can use a freshness-checked cache when enabled and otherwise fall back to authoritative JSON. Set true only for explicit JSON-only reads or cache diagnostics; true never opens or refreshes the cache.'),
|
|
33
|
+
};
|
|
34
|
+
const writing = {
|
|
35
|
+
store: text.optional().describe('Destination store, when ambiguous.'),
|
|
36
|
+
if_updated_at: text.optional().describe('Exact last-read updated_at; rejects stale writes.'),
|
|
37
|
+
};
|
|
38
|
+
const object = z.record(z.string(), z.unknown());
|
|
39
|
+
const writes = ({ store, if_updated_at }) => ({ store, ifUpdatedAt: if_updated_at });
|
|
40
|
+
const reads = ({ no_cache, ...args }) => ({ ...args, noCache: no_cache ?? false });
|
|
41
|
+
|
|
42
|
+
export function createServer() {
|
|
43
|
+
const server = new McpServer({ name: 'outask', version: '0.1.0' });
|
|
44
|
+
function register(name, description, shape, operation, cacheRead = false) {
|
|
45
|
+
server.registerTool(name, {
|
|
46
|
+
description,
|
|
47
|
+
inputSchema: z.strictObject({ ...selection, ...shape }),
|
|
48
|
+
}, async (args) => {
|
|
49
|
+
try {
|
|
50
|
+
if (jsonBytes(args, 0, inputBytes) > inputBytes) fail('INPUT_TOO_LARGE', 'tool arguments exceed 8 MiB');
|
|
51
|
+
const { project, project_path, config, schema_path, ...input } = args;
|
|
52
|
+
if (project !== undefined && project_path !== undefined) {
|
|
53
|
+
fail('INVALID_INPUT', 'select exactly one project: project or project_path');
|
|
54
|
+
}
|
|
55
|
+
const path = selectProject({ name: project, path: project_path, config });
|
|
56
|
+
const advisories = [];
|
|
57
|
+
const result = operation(path, {
|
|
58
|
+
...input, schemaPath: schema_path,
|
|
59
|
+
...(cacheRead ? { onAdvisory: (advisory) => advisories.push(advisory) } : {}),
|
|
60
|
+
}, { config });
|
|
61
|
+
// Core operations bound their complete result before committing any write.
|
|
62
|
+
// Avoid duplicating the payload in text, which would double the wire budget.
|
|
63
|
+
return {
|
|
64
|
+
content: [
|
|
65
|
+
{ type: 'text', text: 'Task operation completed; see structuredContent.' },
|
|
66
|
+
...advisories.map((advisory) => ({ type: 'text', text: `Advisory ${advisory.code}: ${advisory.message}` })),
|
|
67
|
+
],
|
|
68
|
+
structuredContent: result,
|
|
69
|
+
};
|
|
70
|
+
} catch (error) {
|
|
71
|
+
const result = { code: error.code ?? 'INTERNAL_ERROR', message: errorText(error.message) };
|
|
72
|
+
return { isError: true, content: [{ type: 'text', text: `${result.code}: ${result.message}` }], structuredContent: { error: result } };
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
register('list_tasks', `List tasks (Active by default), with bounded pagination (maximum limit ${maxLimit}). Defaults: id,title,status; limit 10; offset 0; sort id.`, {
|
|
77
|
+
...reading, limit, offset: z.number().int().min(0).max(Number.MAX_SAFE_INTEGER).optional(),
|
|
78
|
+
filters: z.array(z.strictObject({ field: text, value: z.string() })).optional(),
|
|
79
|
+
status: text.optional().describe('Exact case-sensitive status filter.'),
|
|
80
|
+
ids: z.array(id).optional(), sort: text.optional(), desc: z.boolean().optional(),
|
|
81
|
+
count: z.boolean().optional().describe('Return only the matching count; omit pagination and projection arguments.'),
|
|
82
|
+
}, (path, { desc, count, status, filters = [], ...args }) => {
|
|
83
|
+
const query = { ...reads(args), descending: desc, filters: [...filters, ...(status === undefined ? [] : [{ field: 'status', value: status }])] };
|
|
84
|
+
return count ? { count: countTasks(path, query) } : listTasks(path, query);
|
|
85
|
+
}, true);
|
|
86
|
+
register('get_task', 'Get one task, including all fields by default. Active only unless stores or group select history.', {
|
|
87
|
+
...reading, id,
|
|
88
|
+
}, (path, { id, ...args }) => getTask(path, id, reads(args)), true);
|
|
89
|
+
register('get_tasks', 'Get requested tasks in caller ID order, report missing IDs and continue with a bounded cursor.', {
|
|
90
|
+
...reading, ids: z.array(id).min(1), limit, cursor: text.optional(),
|
|
91
|
+
}, (path, { ids, ...args }) => getTasks(path, ids, reads(args)), true);
|
|
92
|
+
register('search_tasks', 'Search task content with bounded results, snippets and stable continuation.', {
|
|
93
|
+
...reading, query: text, search_fields: z.array(text).optional(), limit, cursor: text.optional(),
|
|
94
|
+
}, (path, { query, search_fields, ...args }, { config }) => searchTasks(path, query, {
|
|
95
|
+
...reads(args), searchFields: search_fields, slowQueryMs: readConfig(config).slowQueryMs, refreshMode: 'detached',
|
|
96
|
+
}), true);
|
|
97
|
+
register('create_task', 'Create a task with a safe project-wide ID. Returns the complete persisted record.', {
|
|
98
|
+
task: object.describe('Task fields; title required, status defaults from project. Extensions preserved.'), store: writing.store,
|
|
99
|
+
}, (path, { task, store, schemaPath }) => createTask(path, task, { store, schemaPath }));
|
|
100
|
+
register('update_task', 'Patch a retained task atomically. Duplicate additions are silent no-ops. Returns the complete record.', {
|
|
101
|
+
...writing, id, patch: z.strictObject({
|
|
102
|
+
set: object.optional(), add: z.record(z.string(), z.array(z.unknown())).optional(),
|
|
103
|
+
remove: z.record(z.string(), z.array(z.unknown())).optional(), unset: z.array(text).optional(),
|
|
104
|
+
}),
|
|
105
|
+
}, (path, args) => updateTask(path, args.id, args.patch, { ...writes(args), schemaPath: args.schemaPath }));
|
|
106
|
+
register('transition_task', 'Move a retained task to an exact configured status; Active blockers prevent starting. Returns the complete record.', {
|
|
107
|
+
...writing, id, status: text,
|
|
108
|
+
}, (path, args) => transitionTask(path, args.id, args.status, { ...writes(args), schemaPath: args.schemaPath }));
|
|
109
|
+
register('delete_task', 'Archive a task with its ID and fields retained; optionally select an Archive status. Returns the complete record.', {
|
|
110
|
+
...writing, id, status: text.optional(),
|
|
111
|
+
}, (path, args) => deleteTask(path, args.id, { ...writes(args), status: args.status, schemaPath: args.schemaPath }));
|
|
112
|
+
register('inspect_blockers', 'Inspect exact Active blockers and eligibility, plus a bounded graph. Cycles are diagnostics; defaults: depth 1, limit 10.', {
|
|
113
|
+
id, limit: limit.describe(`Integer limit from 1 to ${maxLimit} graph edges; default 10. Additional edges are omitted and reported by graph.truncated.limit.`),
|
|
114
|
+
depth: z.number().int().min(1).max(maxDepth).optional(),
|
|
115
|
+
no_cache: reading.no_cache,
|
|
116
|
+
}, (path, { id, ...args }) => inspectBlockers(path, id, reads(args)), true);
|
|
117
|
+
register('validate_project', 'Validate retained stores after manual edits and refresh service metadata without rewriting task records.', {}, validateProject);
|
|
118
|
+
register('inspect_schema', 'Inspect the complete effective project task schema as editable JSON; no task stores required.', {}, inspectSchema);
|
|
119
|
+
register('materialise_schema', 'Write the effective schema at the selected project schema path without changing task records. Existing schema requires replace.', {
|
|
120
|
+
replace: z.boolean().optional().describe('Explicitly allow replacement of the existing schema; custom fields are preserved.'),
|
|
121
|
+
}, materialiseSchema);
|
|
122
|
+
return server;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export async function main() {
|
|
126
|
+
process.title = 'outask';
|
|
127
|
+
const server = createServer();
|
|
128
|
+
const transport = new StdioServerTransport(process.stdin, process.stdout, { maxBufferSize: inputBytes });
|
|
129
|
+
server.server.onerror = (error) => process.stderr.write(`${errorText(error.message)}\n`);
|
|
130
|
+
process.stdin.once('end', () => { void server.close(); });
|
|
131
|
+
await server.connect(transport);
|
|
132
|
+
}
|