1{
2 lib,
3 buildNpmPackage,
4 fetchFromGitHub,
5 nodejs,
6 nix-update-script,
7}:
8buildNpmPackage (finalAttrs: {
9 pname = "task-master-ai";
10 version = "0.19.0";
11
12 src = fetchFromGitHub {
13 owner = "eyaltoledano";
14 repo = "claude-task-master";
15 tag = "v${finalAttrs.version}";
16 hash = "sha256-OxfY1F30MKrv6sv3ksEy6wMRpWAg5d47w62dA6IDul8=";
17 };
18
19 npmDepsHash = "sha256-GStmiG+ZwRQl4pQD3Q0lonCsnwB2ReoC5b9vEPGZ5+o=";
20
21 dontNpmBuild = true;
22
23 makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ nodejs ]}" ];
24
25 passthru.updateScript = nix-update-script { };
26
27 meta = with lib; {
28 description = "Node.js agentic AI workflow orchestrator";
29 homepage = "https://task-master.dev";
30 changelog = "https://github.com/eyaltoledano/claude-task-master/blob/${finalAttrs.src.tag}/CHANGELOG.md";
31 license = licenses.mit;
32 mainProgram = "task-master-ai";
33 maintainers = [ maintainers.repparw ];
34 platforms = platforms.all;
35 };
36})