{"_id":"claude-mux","_rev":"53-9f8695a7c80819e0cd7471ad371d0d49","name":"claude-mux","dist-tags":{"latest":"0.29.5"},"versions":{"0.7.0":{"name":"claude-mux","version":"0.7.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.7.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"2efad169518be1ace9d571bf0a1cf729634dd707","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.7.0.tgz","fileCount":636,"integrity":"sha512-lvzPgEyhZyBR2XZlvGPYQgI+yNNC6P/V2o9OSuDcc0gDuzAZurgmqkzfmHAQL51nPNcDoyP/yhYlqfcfyrRDFw==","signatures":[{"sig":"MEUCIQDLrnmkRVVtl07Jw3BRt5x2lUNYD/pgl/YdnmtAdds7/gIgbskCc+5G9DEDu3V8AkjnclZusB9Le9QrkApK//UNQKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5825512},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"00dbecbf91a9acdaf2247ba93d714c3f6a3e41ea","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3456); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"aknakos","email":"leomilho@gmail.com"},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.6.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"25.2.0","dependencies":{"ink":"^5.1.0","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^2.1.8","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.7.0_1769802224403_0.35615567666807846","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"claude-mux","version":"0.7.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.7.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"1f72c31c09ffa52cd3d51e0d9719ec4661cd4d14","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.7.1.tgz","fileCount":657,"integrity":"sha512-N/ecmQhyzaAOKVnaCS5YcFgnOSIw+ceKC8GWiZmn32tujkdibGKsPI4GdNWyY6/AYsRAgkY3If6PWl6zfTUmBw==","signatures":[{"sig":"MEUCIBCZfOLZObNxQTmwmujldYfjnUgeikmx1SeL6S3XDk4RAiEAyGPHHIXbtQoTsxN/z5fYbed3gD5vkLM+pf6Eq7MAa/g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6152698},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"6abebed330ae74bb2eb2e556ff7e207ed1456134","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3456); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"aknakos","email":"leomilho@gmail.com"},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.6.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"25.2.0","dependencies":{"ink":"^5.1.0","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^2.1.8","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.7.1_1769884123319_0.08292060602854168","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"claude-mux","version":"0.8.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.8.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"fbca44a2cb7afaa4e98383ebbbbae00f37fe7519","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.8.0.tgz","fileCount":647,"integrity":"sha512-cBtfs2NPWRWsSnB6gFQxZcnggcEzTNY0+UYu/GZsPdDTLyHyjZ7XgwZ8DuQK3zzwVvXWFr1dior9TKRX848Mdw==","signatures":[{"sig":"MEQCIE7i5wGr0hp/2UH4gIoIcXzE4SF8BZ7efDHI6qPbf5c+AiB4/Uc9QYjS2ho0Yrfv0gvHZPmJfWMKS2mzEwR5QIW67A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7070942},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c6dad13b1654d0ddb1ba202509a90fcfd43dbed0","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.8.0_1779189655862_0.8305244383397254","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"claude-mux","version":"0.9.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"e2e12c95766e556de8cdbaa4233926a1a6b06f6d","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.0.tgz","fileCount":652,"integrity":"sha512-cm8xm2rx2N8W2GV7ydIGjtYUlAFoSFbppv6pDs+qEw7YYxehU+Rn499OS23lIk2KBCv4hn8y2vTY4dtBL7Ds7Q==","signatures":[{"sig":"MEYCIQD6m1EeOkuzRlNGO1w5YbjMibD5+RoLK+y/OpT+DBgYUQIhAJ4uVw7vo+2yqLo2YQyTCLAKDrME90rdyXHZpevz4j74","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7090497},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5daa4576fc082af1e5b58ce9c7ee251a13ccbe26","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.0_1779190040688_0.5606152497244277","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"claude-mux","version":"0.9.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"253c344bdb045e713c70c97454cc307693b8c9f2","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.1.tgz","fileCount":652,"integrity":"sha512-8zNYm1khByAlbyBBJV1toTKgRuPm3yDo3mBs5nuTX24iVP/pP0CHutwRQDI3ElMhUGd3FVohG3f240sRBu9Ydg==","signatures":[{"sig":"MEYCIQD/oqsn54hJFGQVuH/rJlEQwJWHiJk8zccgyIUF6+MDbAIhAKosGIvxA7jSMWsxKTjQwg9q89YtyRooKEaO+6vzsQPt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7093382},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"36b9ea3ac180c33037ccc69b77f7d47ba39e8231","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.1_1779190637728_0.6715110288278621","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"claude-mux","version":"0.9.2","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.2","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"8631317cd7aca0f9623bc939c2c83210f737e727","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.2.tgz","fileCount":652,"integrity":"sha512-kqeQGur3p22eylW15Xo/KkrCkJk++TRZDOx+EXsVD3eeM6ACbvwP1cqs834mLEiLGKPrSME9k+2y2moRZevGFg==","signatures":[{"sig":"MEUCIQDhfFZRgtlxvRNtqyROhKpqeTaUFl67vgsPnfVtAy+HIgIgNRGjlT5VEDU+2R3+diZxlRSL1TxzUwzBruK3Q8w9yRM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7094979},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"ba2b8b82576ed9580e7230a017af0e9bb8740e85","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.2_1779190889554_0.28968820595212397","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"claude-mux","version":"0.9.3","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.3","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"be072c43eb3ad43b70b33a2d0cfbe8c34689b984","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.3.tgz","fileCount":652,"integrity":"sha512-zhtuHFxKzEFKhkJwPDX70eON+v3/GynBqOkSp0vuVEp5/IAj5Dzzg4zfTF5OgisUG42i1mAiYFxHfD3aQdV+sQ==","signatures":[{"sig":"MEYCIQDOUWmLY6sboKFezdMbDl42LoI6sNeQl8+rb/icuYNcZQIhAJKWJlxo6P3dGtL8yAiVakE1ioI3jz0gXeOUGQXcXSzR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7097678},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"1aa37c496238e7d8ebbdd7c817ebdb033aaeaccb","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.3_1779191149543_0.3747280526769363","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"claude-mux","version":"0.9.4","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.4","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"829ea8e029f499f1e9d7f506e5a8a33347db6e9d","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.4.tgz","fileCount":652,"integrity":"sha512-2J/iebi05uAIkBqPwBqQO4k6yKdF7Ls3Akg0nOOe7Sz4gTKIQ90mBGINw4IdU2PgpXjE7ztoflrWxe5X4BkAmw==","signatures":[{"sig":"MEYCIQDO0/ihczLtFskv062E8f44jYkJo+95uDo5ze9FXBUqPgIhAO2CuHuq3SRKoWwX4dPUGsAfo2HmAPioJy7N2nNpAL1U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7099485},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"d2fefc8b211d6bfa721a1fc79ecbc608e737f3be","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.4_1779191333598_0.48004185523087206","host":"s3://npm-registry-packages-npm-production"}},"0.9.5":{"name":"claude-mux","version":"0.9.5","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.9.5","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"b9a6e4facdb164f0021093d7d4bd3736151bd28c","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.9.5.tgz","fileCount":652,"integrity":"sha512-S48p7UoaDpQCuNpLKqp5A5rvkSqAE5aEU/sn/CueEJWMyYzDEt4+KAwoI+40TwTXEFVcNjlROZGx7v/3qJkiSw==","signatures":[{"sig":"MEUCIQCb9DSGfOEcMqJZNEApudFmKeCFb3HyMAsDcer77MKcIQIgNcu5KagKJTFLmicULHmcpgFypGktiSnfg5aWxLy6Lwg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7118028},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5dde1642131cb1b3c5fda954b2cb5d763152d2f1","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"11.14.1","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.1.0","zod":"^4.3.6","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.0","vitest":"^4.1.2","prettier":"^3.4.2","@types/bun":"^1.1.0","typescript":"^5.7.2","@types/node":"^22.10.0","@types/react":"^18.3.12","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-istanbul":"^2.1.8","@typescript-eslint/eslint-plugin":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.9.5_1779191762947_0.8334633113572234","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"claude-mux","version":"0.10.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.10.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"574b32d0a93ed06b9ecab9b040a4482f2d7d24ca","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.10.0.tgz","fileCount":674,"integrity":"sha512-VKeqSgvVm4/LS2xq6e3cyh980o+oKwgsSRiFE5w4Z+HcfjnB+G9ZoT4l85HVy+W6xCgQAt7nR1xAOTFeZwp9+Q==","signatures":[{"sig":"MEYCIQDMKu2oxYOad0/KGcbpLgrBAZzNaFEgeBiMth7esQ+BDgIhAIPi9W9NXozEc4Wn0t6s35WEyeNl4Oce3WHVvOGyqMZR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7608827},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"3b2c870fd112fc0571aa2419c677b31108106689","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.10.0_1787137447872_0.6939104559499762","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"claude-mux","version":"0.10.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.10.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"5d8369cb71488ff9ae9e03e6be1008986ba86882","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.10.1.tgz","fileCount":674,"integrity":"sha512-pfyDhhvJyyZcocL7ohb1nkt5fYp8griFwZaw2sNc/4FvkykxLJml27F5EeOtp1l1ZrXG8LoqfpgdBwTNwfcxhQ==","signatures":[{"sig":"MEUCIAwK5yJLSyf60pJu7SuzQBPuyEjmk0QFqPTkDqepRpUxAiEA6RJK/IzBKke9GNAgBrlzbyY9YhzhvQCD6QdAWy8YbLI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7612480},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"66e77275c13d47692a811a96ad09c7c3eae23146","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.10.1_1787138139886_0.3808034997947549","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"claude-mux","version":"0.11.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.11.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"943ba712d84d8c29b4ba0bf959cf5f6c582ef76f","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.11.0.tgz","fileCount":675,"integrity":"sha512-kym6K0IonMf8Tr234oWjnuVamBtHwLhTlGqYNBCqp19+Bd56UnYl4+OOxX+cVlHOMMW+Vz0sS9NZnrGX6bFv0A==","signatures":[{"sig":"MEUCIQDVXSnqOiX873M8mThY3f3OrtwpXMyvI1TqsKHYeBGknQIgR0pTD8IWJMlBCVug+kQ2qak+B3r3qeASSiDt5/74UYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7636999},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"286001d884a1e04d30e91a091338439f58f81081","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.11.0_1787407668622_0.21761658560146424","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"claude-mux","version":"0.12.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.12.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"4b8c527bc5d0c4c404b9934cf89531ce2b4210a9","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.12.0.tgz","fileCount":702,"integrity":"sha512-B6weqgXxt9E7AoeKE2kmxoWNlV3CBQ4BIq2rIGfESnC7UNlmMyL1sgyE6LU9iABVF80kc7rpCDFJk3V0IyYPQw==","signatures":[{"sig":"MEUCIFQDSU0WdOgPB7LWV40QncON+EcXIxhwfFXWaaSCzl4wAiEA90yh0gvwU8dCeoMrxHp9tM9ZVATyyiU6rokoTw79fRk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8182738},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5692552ed4d55046ec1b578f710f312bcf584970","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.12.0_1787858368065_0.8230131374125425","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"claude-mux","version":"0.13.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.13.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"3d904a0e9edf9726ad2aaa4497ff9fba3520c48f","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.13.0.tgz","fileCount":881,"integrity":"sha512-Tix7da6sNnpQJ/VNyZBd9AvaHPuz0NeVTJVwqIz67Kd5XwuukaYNCHKmtOEhxAxG2sOkoQM5+IDYUXv/nbDTlA==","signatures":[{"sig":"MEYCIQDRl+cFRstIFeS1Ey86NHcYov1Cp6jTLmQmiGZZ289kFAIhAMY3GR7WChjJU0pvgtT+QmZKCiN1EHh3nkcf15dOZGqs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9173277},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"18454732b5adef4d9033b315eba018e2dd4ca966","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.13.0_1787937122972_0.06825880998610456","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"claude-mux","version":"0.14.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.14.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"bfe54b75dd824b65604e72e79c1b186cc0dcb326","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.14.0.tgz","fileCount":881,"integrity":"sha512-uiM6WKBcfHmJT+4bipI1iSnr8srV9vhCQQ/wzERgLICyXpfhBy6joaYVlCd4JC2cbH4/NUB2exadLQh0o6lXfw==","signatures":[{"sig":"MEUCIQDsqJIPBWr1SOawICLnPiASU4IuQgxKHefv6wcvq5m0lAIgN7I+/snCEV+XOJpfEdMSKO49jX3vV5iFgSsD8n4Ksbo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9482091},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"48394e7c18d76be828e9c0c01d85e89447a39ddc","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.14.0_1788008006618_0.1582316241361552","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"claude-mux","version":"0.15.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.15.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"9dc48aa64191fa67fdbe7dcac146e96598cce731","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.15.0.tgz","fileCount":892,"integrity":"sha512-bUiYtkh7DxbPnphWBXdr098Eg2AhGdFGWnVZ0gvds+LayzYBJCf+HDA5D5aeRX/UyMKEv9NwjmSM6bogvNtIYw==","signatures":[{"sig":"MEUCIQDJBYnTZJQeLsN51ZRpUHEtIqVJ6nJae3OTpCp5PmZvvAIgUInRv+iRLJcayHYDVMS1VpXPj7/yI+Pts/aK7vSVgV0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9665999},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"32bdabec9fa8bff87750856ba81c98f2a4757963","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.15.0_1788016478938_0.7159762167057646","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"claude-mux","version":"0.16.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.16.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"e949d8be8127d62b0f926753b05e20d3c51c666b","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.16.0.tgz","fileCount":892,"integrity":"sha512-0MJ2iBqjWLfJYcjwRPFM4eIpPoJ+tH4xSbfbKFZMXv4D0KfSmOH3/m1XwHhy2GisbUnnmH0KLQ2FY9dC4DMrmw==","signatures":[{"sig":"MEQCIGPQMDsFqgKP51LpzVft4Taz5IccNgmxh8ID0bhP368aAiBHCb7d50WUe1exTlV07P7BY62N47kFkWDFbAjdI6+Asw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9674164},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"29e540f31ce7c814f0fead833b88c3ea67b4d381","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.16.0_1788019005234_0.025406192570351482","host":"s3://npm-registry-packages-npm-production"}},"0.16.1":{"name":"claude-mux","version":"0.16.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.16.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"0284530e35ed1369f84e89376ed84932bc65f9da","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.16.1.tgz","fileCount":892,"integrity":"sha512-f6ek8A6yN7bwvTeMXskZvv9UXXURvIqnuC/tGaAA1nfacQYAVlpWs7izhfiLLAcMDLo+FlQqvcrAGEzkp0G/4g==","signatures":[{"sig":"MEQCIEzbS6+O5GK0NqeenOmkMNV1O01EGBrk1wfHAzFwaXG5AiBbEjuGLxDPQ6lUJcyecteHah5MiKg9C/Xz/F6PXB9lyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9676207},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"f9a50cafde79ef09f592d967d51b7dea060ff750","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.16.1_1788019567402_0.641074002519165","host":"s3://npm-registry-packages-npm-production"}},"0.16.2":{"name":"claude-mux","version":"0.16.2","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.16.2","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"c469e5102bf430497337a48ed89be366c4b96716","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.16.2.tgz","fileCount":892,"integrity":"sha512-gF2yc7m854x7Q1Gz2k9Qo+4hMp7OITKLZAMs5roFwuBly3FQTMLUKmLlP1vZj+HB9jwi9SbPJOYUjg78vpJoXQ==","signatures":[{"sig":"MEQCIBTsnGkfYhdgzskSR/nN8FF5eDGhZG+zXrxnIaHvfFKbAiAbFSoCegiA9EmuKu3IkYtwoxNbZyE3cOLao7vhHydNDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.16.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9680592},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"e1ad5db84a18187aa53b18457e5fd2a0694d8fd3","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.16.2_1788020214593_0.15238720213646073","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"claude-mux","version":"0.17.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.17.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"03cdf8ecb3d95426439dda9d3f09b09e52f5c108","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.17.0.tgz","fileCount":892,"integrity":"sha512-W11YPbQg+DB/17LEeQ/m1fXMBIkqNuZUeNqeunSE3APQ2F4YbVeaD/MrK9DlAcgT0oMbKwC2qT4RNxX4Lu0aZQ==","signatures":[{"sig":"MEYCIQDlJ+2gEj3kxxdJnPseVvl0EOmq5ta3BLgqk3B4cXhEVAIhAJGwCTOAto5j6D+iXjD2ZDaZQy7Y+Hll9B9P1OCH0ZMj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9699767},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c52434bebde7c9ad3324de696889f8748b861884","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.17.0_1788021116267_0.7921559677554435","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"claude-mux","version":"0.18.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.18.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"9e5d40188768da3b232945e52853e7a411eb288b","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.18.0.tgz","fileCount":892,"integrity":"sha512-gNYLvdU0WvxXaZFTgXqwv/XRzAjd2/A8vfVy95P6NiNuRHkrR2BTCpYb/W9QbSgBOxbsioE/5xjhQ254vdHRxg==","signatures":[{"sig":"MEUCIQD7vayAoVEyCxnKZCyCJwjdXv44qVTsqd4yLpgYhRar/gIgOlpEBPkjr3FafztQHBpUbPPYLq+2mZXlFX+4M6DvFpU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9724529},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"3ea816891927dff716236ff896f8699e96d92756","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.18.0_1788025155776_0.8098241346948931","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"claude-mux","version":"0.18.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.18.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"09978bebf9f14c7c3ffb2b3e5ae76ca12235823e","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.18.1.tgz","fileCount":892,"integrity":"sha512-fgOaH0hgMp2iTu6In+qQ/RlzpCP1wo6gMTeAb1QlDhWS0chIWpftCCxFK84yd25CM2uWdYIXgz4WHCy4NmvNTw==","signatures":[{"sig":"MEYCIQDEaw5/BZQbPiPklyoUOjZ71fOY78Ko1/pudqvUNPpU/AIhANXXDw8amGv2MRchhz5CbGA52OzNjCTD9BuUfkJVkQpF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9730734},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"64ffe89c02cbace5ea5a2e81cd3a973a7c87c489","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.18.1_1788025729176_0.06691137610975662","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"claude-mux","version":"0.19.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.19.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"4badb9f73dcb8bed062803d4428dd807895410b0","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.19.0.tgz","fileCount":893,"integrity":"sha512-yfgxthujjUwdaOjaaVfHYN4NTBweODZDuHftQrXUxRLpIGKY6RluSBuW5BOgbEPI9rx46QnjDFV9HKDakquGuQ==","signatures":[{"sig":"MEUCIQCJwAM7v3tLj3FF8BNBULgiCJPTwA/lOq0M24p7QM7XrgIgLcwHqPMpR49DEkZ4Z4IFDLq0+sF1q3yOHZzW2CQItU0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9759657},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"d0d3c986f7114ecb59844ade359a6b3f469a7f42","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.19.0_1788037369372_0.0011682389954466021","host":"s3://npm-registry-packages-npm-production"}},"0.20.1":{"name":"claude-mux","version":"0.20.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.20.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"251bdc3d4c040ef4c7a2d3866a990d2f0a205a7f","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.20.1.tgz","fileCount":921,"integrity":"sha512-kaz7YNAr50cJqqWpcF0/Rte4aUWnswKgnAwFYEPKYBaJ16SprYQuwN+uR197QzcDnLaKt63mWRHH0FBschPwHg==","signatures":[{"sig":"MEQCIGLef9/MYjzt1g8mFwCBUYf8a6aX881xKgcfO+brqV80AiBxHxsl5t90OVhx03LFPAYajPLpJnDcZx3exmSIQT+1lQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.20.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9844296},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"d0e503b2dff3dc73bfa7ec2a06543cb46da588fa","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.20.1_1788119033449_0.8833249812265438","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"claude-mux","version":"0.21.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.21.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"172bac40f339eb5e286acf02a58496b2a459f0ff","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.21.0.tgz","fileCount":921,"integrity":"sha512-Kq/Nj9dZd/TsdLxmMssTPGmpTwqg2F/IWPqnl2FipqCrpjB90LfN53hhwa0sm6QP5ZinyVAZNgYNNM6zA8kElw==","signatures":[{"sig":"MEYCIQCzSLT372KUUMKA0iXFOZBpj3MUUvV0fM/P8+xYw7rObAIhAIP13R0Z5+7punu6VYEgIE6Ojq2ZcR8RSG97C3IwXkDy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9915081},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"9ed8f767a1847cfc6022efb40e9b503f0828db87","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.21.0_1788301792051_0.11080184200772969","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"claude-mux","version":"0.22.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.22.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"5ffd68a7f6ec763f8bc95a040dca5aad8ad616e2","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.22.0.tgz","fileCount":936,"integrity":"sha512-CpjpmtUHpVVwzKxLR1XnHUvx5twqDzXrn6YEdf302Q5JovtpGDIdhe+EmUE9nkzNOIwJJHY5tnQPQG4SZr35iQ==","signatures":[{"sig":"MEUCIEBwkGozmVgSros750dHBJXIugtXlFVwfEGT4fnvrl8PAiEAt65EbkpSbC2OTvN5KNL6pTGxvy52Cjq+wHdCaqrsq6I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10006656},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c5c2c9a8adf90da9ed547f0f4041e4510adaab34","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.22.0_1788347601243_0.9238026128824712","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"claude-mux","version":"0.23.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.23.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"d80001f43dd3454ef90a5f6d42497bfab2446686","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.23.0.tgz","fileCount":948,"integrity":"sha512-Cemx0MVkPHnIyVPsrGFmTrV5qOSdJj/OvrZcF7GLuM5DehSI9CwXkkwsPuY4/9sE8HANmDJ6bLUeX1u0KRmQjA==","signatures":[{"sig":"MEYCIQDekz5+TOJI0DQn562nhkQD4367pMQAfss9oKColQZyGwIhAPz61ABUDYtDVkPqm2XFsxIJHlThVUaOWKhbtQMc6yxw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10051028},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"f1ea7e115c67a17350c9b26a0fab6b2817832476","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.23.0_1788349704535_0.5581540198380697","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"claude-mux","version":"0.24.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.24.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"731a2d38a2a857d0cba5513bc608d82d6e659e01","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.24.0.tgz","fileCount":955,"integrity":"sha512-Ci6uyvIsOpeB9uaCqShUnS1HRVileyrZL4wLl1/bb1BXo9soUEEsi6LtL8EU1iMI8Lwf56/wqfQn8YvycGoGxw==","signatures":[{"sig":"MEQCIAwum8KPINkBNE1Fes5cEDCRTHwsSsSFhIgaYufNxoSVAiBqInw3R9YI5GfUJTPyYkLA3HaPKcpMe19+mFUPlp2RJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10177954},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"6445ad55a5cbea59bb8357f8681c27444d9dec5b","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.24.0_1788352374796_0.2884851276014344","host":"s3://npm-registry-packages-npm-production"}},"0.24.1":{"name":"claude-mux","version":"0.24.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.24.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"25e12a8171b0e812bc6c73defa86c4c0c2d78def","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.24.1.tgz","fileCount":960,"integrity":"sha512-JE8uRMqhzk7z6J2WJeJwde6g7rzezAejJpIQwz4wzR2oa+f4FM3nnQfg8oKz7sWU9qVpbgHwadIbPZ5ZClib8A==","signatures":[{"sig":"MEQCH3OCEWMgdY+Z9P1yA7EDLvecGYrK6OOYvWxxtZbDb2kCIQCpjK5C/O/cz/HPoRECgOkKPBDC2WFTd45gX67DQqUwnQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10182304},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"2fd2b8840a1aa8f9dd429a96fa6f895fe4bebdb8","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.24.1_1788352659210_0.13546373740084938","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"claude-mux","version":"0.25.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.25.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"268d7a658ecc2c701c82de8f52329a0e5168a491","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.25.0.tgz","fileCount":979,"integrity":"sha512-ksMxyyPnK7J4Vuud2jlSR4VyojhETRanbYZJ4SzmTmVGxZGe+qnNT3ZqmazneBDJfhp/WokLAXG7ky5/9bh2ug==","signatures":[{"sig":"MEYCIQDibreYQ4JJ0n5OMzuYxkP1OG4gRrcuv4lJcyLevb2WZgIhAORkO4PuqLD1EKRMQ0qGvhhsaGDsaePe3rBJFE5locIW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10235464},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"228316c9a4535cedaf596be4fdf396f99e8ef9f3","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.25.0_1788354472309_0.589881258212007","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"claude-mux","version":"0.26.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.26.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"61ac8148df210d8a65020306cad76833e151a2fa","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.26.0.tgz","fileCount":982,"integrity":"sha512-WXqWTk8dgmwNJKNdaGlhFVYstbzP9jb3HUpj0cARuEBafe7cSaPQN5aEiNcpEzVyvBJ5BWpj41c4T8iGbvhEbA==","signatures":[{"sig":"MEYCIQDMYY5U/QWUyIvR+JJ/hzOLms3yqPgKicVdFdpVegrw+AIhAKoFiy2Bd/4Cd4bedkt4vqfBWYANeNyG9GyUwtRAZLqg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10339136},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"0aa1a874b57a4ea25efffcf33c54fcf66c8e3d6e","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.26.0_1788368147363_0.1481941984188324","host":"s3://npm-registry-packages-npm-production"}},"0.26.1":{"name":"claude-mux","version":"0.26.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.26.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"359c45261687748feaba99a59c8297bbca64635b","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.26.1.tgz","fileCount":982,"integrity":"sha512-jh8fkQm3m5ljpMXPs8qjaxEbr9JD+BeVEPEQNiSqFhbaL1HzM+lLvGxHKRCfNMp4AYzOePpAYuvsuCCI44aG4A==","signatures":[{"sig":"MEYCIQC+PeBTaj+f5azQ1/tR3QX7HlE8DbK6NTdyN1eLoLNufwIhAJPxSCLbVpjZdzEr2B59pveoOcDgjThGAdhij99KV+gW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.26.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10353697},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"902212a596eaa1cf19e62a2a68159cfb5937788d","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.26.1_1788371840835_0.7176146918900685","host":"s3://npm-registry-packages-npm-production"}},"0.26.2":{"name":"claude-mux","version":"0.26.2","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.26.2","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"56522acd7f12e61621254209a6ec55c51cdf7e0b","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.26.2.tgz","fileCount":982,"integrity":"sha512-gpExLYPV3IcGeIiEXBCvx5Zg2kEBQnCt7ycpWT3C8pyXfY3HQPpQY22Pzcc5WYvRtMad/TwdqDbG+tE0yOhIvQ==","signatures":[{"sig":"MEUCIBFQeOUX8XQLVaX5yXbl6PW43vaV4sAgYZSVL8POzs6oAiEAjlZORFO8KKhOFbASSgeS//oq8fCOcCAjSnryncTn4fk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.26.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10353848},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5c3008bd5be788eab3e4ac3815f6b947ecd2cc3b","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.26.2_1788390998904_0.7447514362669043","host":"s3://npm-registry-packages-npm-production"}},"0.26.3":{"name":"claude-mux","version":"0.26.3","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.26.3","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"cea5f81ee1172fdb24fc087ae5847826087e4d93","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.26.3.tgz","fileCount":979,"integrity":"sha512-PXuEoIelKM97nq4ZyaHUZnJk+9TeJQWfyeisI14y0T8Q2sm/AO6TGZEiq16kUz/9xu/w6Rxuuy/joE5yo9BJVQ==","signatures":[{"sig":"MEYCIQCUf018OXTXLU3rRxAvVFADEbqnIo0MzHLic9Tbk5mO5wIhAOzzzF8/a4Wnf67gMbvG7dep/8AWWcXsx4a8+CFIczaf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.26.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10365654},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"917d253aa8d544ae1e8869b43161aaf56d44d76d","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.26.3_1788455087449_0.04650174355131109","host":"s3://npm-registry-packages-npm-production"}},"0.26.4":{"name":"claude-mux","version":"0.26.4","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.26.4","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"c0a89d4fccd425a40c0a6063d4c1677b93e67f3e","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.26.4.tgz","fileCount":980,"integrity":"sha512-DJ2eQaUFXYQtztcniVXyijGxkRltvYcc/kXRZ0lRxFwbi5e0km4ydD9HARRfXptFGEo2ZOfVJ7CGIPVvQGSN7A==","signatures":[{"sig":"MEQCID6cA6i9PI5BCUAYsxqZ8V8mhI+CtXcNIG17jhsQHRX5AiA+uKZu6EmDoBs6mMPrVtDyXGoMSxDd26hQyNZGyvFqcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.26.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10401455},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"6ad31bc3d98f6a7e66ffce263bcd7902c6501395","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.26.4_1788464252766_0.7565410441119866","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"claude-mux","version":"0.27.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.27.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"426864aa823c72672738e81ad1741da08e78fb42","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.27.0.tgz","fileCount":981,"integrity":"sha512-fysqqqe3CyOpYRhi/mr+kScOrzpiEjhHrap632J3k7JJnfKawKs0Sl9/otSBRg2w1t0zu+R89R5N/OrqXVKbrw==","signatures":[{"sig":"MEYCIQDUsvU+he8b5M3GjN2sh5up/EE3IP5HvM1TKlbhOq2AjQIhAMZpHUiqjkDwnARyFruQwm48M5/nMT0PM9BWF+ssOgHJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10448431},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c8cf13a719521de7bf2aa66e9aeea5b5bd5cae52","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.27.0_1788464943480_0.6390265118723948","host":"s3://npm-registry-packages-npm-production"}},"0.28.0":{"name":"claude-mux","version":"0.28.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"7a021be7c20cb73ea84bf2c46541b338bab3d0fa","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.0.tgz","fileCount":987,"integrity":"sha512-LlW4D1F/6hCBBtp90VeRHud5I8rpoyPJAN+NK0r9pVmBvhUg2QufDsuKpEw+gWYhY8NCdCr9H2MvX9Kmd8c+Zw==","signatures":[{"sig":"MEUCIG0Hxk7KfAIa8tADTMmU56bKEI739oZu3bKrHD0ywMOVAiEAwumoA48NxaOkHkZSlhWu+3fz2xHXnI2gPmM5lYdw9qQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10500500},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"23624753b6d517bc02225d5a964857941dc5d064","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.0_1788561131452_0.5418473878149805","host":"s3://npm-registry-packages-npm-production"}},"0.28.1":{"name":"claude-mux","version":"0.28.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"63f3e17181dc67cb61a32c757db37663c2e3eb31","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.1.tgz","fileCount":987,"integrity":"sha512-Tc1CiNnC+W3l9aJuk75Gg5gwMnY+OeGeeJ8kDymAtzIUlibGtt9WRAwZtnZHROaHbRvwhPKttl7A8JfSerwiWw==","signatures":[{"sig":"MEYCIQDmXYzrFWJnT24ZAcBPANYKmPY6S+Zb4F/hmeXoJQqxCQIhAI+9oRpmyxmszT7dw6H04r7v5nt3e3bHcpA6CU6mmYiI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10506210},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"76afa626472c06999b01ddad65f6ba5636a6bfbd","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.1_1788564402496_0.8260881918105818","host":"s3://npm-registry-packages-npm-production"}},"0.28.2":{"name":"claude-mux","version":"0.28.2","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.2","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"87885115b202a64a4ba29697a5c4e1c5dd450a25","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.2.tgz","fileCount":987,"integrity":"sha512-tY8jkdzyZie39RT+Qu3Mf2LwiwaNBfMrpPbCLS5wblxB/uFOLR7nSCIFbY/rOQ9ZigW28fImYtm0RxcJ2CQ1Nw==","signatures":[{"sig":"MEUCIAfu7nxI+yTy7Qr6WV5kEQpskYlBJh3qXoU/JX/oppFyAiEAnd0+6/Tb33KGCUico/1EDRCAEsg6vfjDYfYBYWEbVFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10509101},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5f00f060848fd036488e04b01e5a48ee15dbd982","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.2_1788597988132_0.9748769988530264","host":"s3://npm-registry-packages-npm-production"}},"0.28.3":{"name":"claude-mux","version":"0.28.3","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.3","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"ad6fd553ab9ad5c8c02885aa0ac7fac8640c0929","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.3.tgz","fileCount":996,"integrity":"sha512-L7S6zlV1CDjABh9UCm75Yg6vTuK4Ys6DBoqCEOjZOHPfLn5//EaWP5at8I1KPxBVBeBuV9Fr7fyGA0FdneV9eg==","signatures":[{"sig":"MEUCIGuY2ToYtd90NExw8+HY6+0qmAlDnLnJQy728FiRoNHMAiEApyxuNzKD7vKjHmcq/0ezWxBy4fZerdRMBP1uQcoTj74=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10523646},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"3161cc22d24abf9239c5db6069237aff8572d05a","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.3_1788598624070_0.7641430846629991","host":"s3://npm-registry-packages-npm-production"}},"0.28.4":{"name":"claude-mux","version":"0.28.4","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.4","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"28eadd86db82d4b32cf2c451493e300cfb1d78fd","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.4.tgz","fileCount":996,"integrity":"sha512-4sELNk/QQgeecopadXiUxc0Wjf4KxXvShWAKYhAYSNGQWu2w19Rg7fVaXQ+phzstPu0z9l3uJqoDry+lOq79Kg==","signatures":[{"sig":"MEQCIDlfmV9VTYeraxwfh5TPBNYxECzPifdFwS/oMBS5gnI7AiAVP/gLuSGF5epQneIexSUwaU+MiyX1sMyQ8rLoXMFSNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10536525},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"569541f7dd4ef0858bdebc5d40c9df0b7e0805c4","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.4_1788609916711_0.1195248301170484","host":"s3://npm-registry-packages-npm-production"}},"0.28.5":{"name":"claude-mux","version":"0.28.5","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.5","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"c28051a20bb7a49d1234824c73ef3cadd825c24e","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.5.tgz","fileCount":996,"integrity":"sha512-Z03OaxdVxnZ+mj7G20eXi50ZXW+BNC3GWZxtXzuB/tEt0xxBIczN6n5WPXHOtXiS6VTu9eBVmcUDj85mCC4mzw==","signatures":[{"sig":"MEMCIAxXngSv6Z6evdsT/5BD6xbxWdz2g4SAj6zS73SLqKPVAh9h0CyVOAHV30tslYVlYt5jrxsjXjRq0w/EPZ6097Uh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":10536982},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"ac2b10f5444521aa9ffce3c4835e137127fad6b9","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.5_1788620096243_0.911309895338706","host":"s3://npm-registry-packages-npm-production"}},"0.28.6":{"name":"claude-mux","version":"0.28.6","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.6","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"c0e0ab94e00f640431ed029451d1976db7a6f793","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.6.tgz","fileCount":1181,"integrity":"sha512-mHyK96PsWntZnvrAmT5Fw1OmI0R25+6hfDwYFK6aaq4K5pYy3UNutLhus9fuXZRmmW+7osx0jT1OBNg49QJGXQ==","signatures":[{"sig":"MEQCIEEwSLoS8Wva9+8w5SnSe22mRiUkCF5nJyXSr2rxFfiDAiAaYL/1inTe2lWKfSwRUTb3zLuIyv7Z4KWSDjM9rDHJHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23250751},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"31baaf220e45a57ccbcb2147b007662622d4a3e7","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.6_1788621356866_0.6638754228590844","host":"s3://npm-registry-packages-npm-production"}},"0.28.7":{"name":"claude-mux","version":"0.28.7","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.7","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"7bce0793f19e861e25cf82991e9baea420089773","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.7.tgz","fileCount":1181,"integrity":"sha512-E4rPc+/oWM56g81GFKyO+SoRgYih6FFGDgZDm7A9OiRKytutMkm3aXq1BVsl45jL/k5H04rJi16GjhXZf7wQJA==","signatures":[{"sig":"MEUCIAKD79Apbt0UtClqKRUrJ9l3o4lBuAG71pFCwBho26d1AiEA36EkS8sbntUVg6TDoS/+G5djixslEM9X5OjFwt2GVuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23252864},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"f3385b6150bb6338e82491cd9fbe8de13e64edc0","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.7_1788621707961_0.47738136178263013","host":"s3://npm-registry-packages-npm-production"}},"0.28.8":{"name":"claude-mux","version":"0.28.8","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.8","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"b94f0f487e4c681b80fc2861cd0e630b470def0e","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.8.tgz","fileCount":1181,"integrity":"sha512-2CImbRRjsMbf3LDZTA2a4xEijuJpRMcbqzDiMqdAdnKoOwkUyJvLp3q2p7fjv/VCWa7lDWJ21swoujRHSfG1Yg==","signatures":[{"sig":"MEMCIF7vhmMsVjIdJnjd5liF2SnNiCJ6Mr39eVCHMP99I3r+Ah8KoJUv5z8OXgWmD+IJNBn1o/GuzGIbp2S5rJKmxBI5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23259861},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"15dff9d87410559c8173143d0905c7e75a538a86","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.8_1788622218285_0.01581378751318807","host":"s3://npm-registry-packages-npm-production"}},"0.28.9":{"name":"claude-mux","version":"0.28.9","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.9","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"81b95f86083ce22a729c8b516086eb911283b075","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.9.tgz","fileCount":1181,"integrity":"sha512-td7gOswn7+fBMbn5LH1LoGpU36KZIgERQa4KUNM0w7v5c4JkRcYo7P53wRzRh7JbIMs+7x3sW/75FdUOdadS4Q==","signatures":[{"sig":"MEUCIDXNkyMBEd+hQnJV9TlUeRoIJ4Dx9r9sLDrk3LKJ7C++AiEA2g1IroNqeEemS+DtlCxASGGvMAF72FuwIQitFn9osX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23332519},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"92a880741904da44bd4f85d5a913d247356e6f0f","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.9_1788623801620_0.06492832027228124","host":"s3://npm-registry-packages-npm-production"}},"0.28.10":{"name":"claude-mux","version":"0.28.10","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.28.10","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"c4d4378f5c761d199de14ab9dcac619009ec80ce","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.28.10.tgz","fileCount":1181,"integrity":"sha512-YCJ/rPOrxFoqNC1GlOFGo2w2bQBiJnRLYbp/Qt5OgWe7RC7o8AOGJWb4xXLTmrOTg4mQDufu9klPIv0kemDkVA==","signatures":[{"sig":"MEUCIQCe50l7wjU8k5VpH5HC81/3aL+p0fKneOuUa/9sh1GcagIgQF2fPjUikHUzaWDwbXSsBln1D/O6MDRuiPf6oNW1wUE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.28.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23363216},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cc39541e6f7966eebfc92fe646f85c6249da755","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.0.2","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.28.10_1788898444710_0.2938223769714121","host":"s3://npm-registry-packages-npm-production"}},"0.29.0":{"name":"claude-mux","version":"0.29.0","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.29.0","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"2012f391d37713f3e49080266b29cc11159f7a08","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.0.tgz","fileCount":1194,"integrity":"sha512-8k0AgF/kvW4cmUyQPMPa/CUPjmdtKRP/83QVmo778bJGH7flavDEPYBV9bR6QGL38NWaQKoKxIQ1R4e8lGHwgA==","signatures":[{"sig":"MEUCIQD55CWOkaTltjAMfpJgIXwwCTTOqiMlLy5uQ+lqQb28CQIgT6DwU/qezIJZDjNCYqnSqDs129DegMTXYck6gdvATmM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCv9N8lKockT0Gpsbs2CG+522XjkB5buZgvjXInoHXxNgIgA9V4wWkl2dL2ZETDQHIfdliTZo4g7pZiXv8mdoBg4Hk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23806616},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"2307b8f90f60056a091d6718425eafb284bae3f0","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.1.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.29.0_1790265755541_0.4657934237822672","host":"s3://npm-registry-packages-npm-production"}},"0.29.1":{"name":"claude-mux","version":"0.29.1","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.29.1","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"ee930495736cf5a9c506eaea4c93c917ea998600","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.1.tgz","fileCount":1194,"integrity":"sha512-GGqYSA1ZSbJicAV8h30rw9FKev1xJm/aMQ2cn/KCh+JJVvS/Va6cAL+X58b7RbeDOdeXK2AKa5ZGFB20uMYEjw==","signatures":[{"sig":"MEQCIDtHXhaVS0Jq0RKPYDEmAYyVMVyrPmuFyxC1xusNabpOAiA3EQwQjTA77ybdgLyYvhrWoW98eF6eP/KSfphewcwGUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDKzZHlg76oYf9lhpfBJPrhD7DnRYXV4bQfeByBXtOThgIgVdhn3kht/pWeGbRLORHiOePMKH672l834GIkbxSnAPQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23872053},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"e48a3e31cb90f57a54979ef9769faa8559defac4","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.1.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.29.1_1790342881746_0.934922750763358","host":"s3://npm-registry-packages-npm-production"}},"0.29.2":{"name":"claude-mux","version":"0.29.2","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.29.2","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"9c87f4cd08f42392a8ff7f07b3db501fe9df9997","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.2.tgz","fileCount":1194,"integrity":"sha512-NbhV7i2RvlyUP0Tf4HKGNvjawCp47G2KZA0kM0vGl+GWoTj5sSDYq+0TrJUklJJUGnIgPBFSkJGxxf1fYbBdxA==","signatures":[{"sig":"MEYCIQDX3bsPawzn2c4JsSRUybHgHisgPjPXmeSjmvXYAvNIRwIhANaP5UN5jjwFXgRPfwsp84TRaXGPal3CFBdeu8ROs0C6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDypFAPyR/2qZTJzaBl81QonG1McdbLH+msCJ13ZY6ayAIgINH/EG/Or64kd1vdSGL75oemLd/exEE/4FL/Tyz2s/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23913297},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"e43fbb36ae903f76ec95ded43b6aecda6677a061","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.1.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.29.2_1790763607213_0.9629290177002903","host":"s3://npm-registry-packages-npm-production"}},"0.29.3":{"name":"claude-mux","version":"0.29.3","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.29.3","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"aa0ff68408a4f7c4ac88db224c0e65e55d389c93","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.3.tgz","fileCount":1195,"integrity":"sha512-6IJHRqjBUpD44dj2qW8EgfAOaNJFFgi+t98KFKMzFIwFOsEYPc32wN5BRw2Fn1t3TMAOwQcOzDi1/ATefZSGRA==","signatures":[{"sig":"MEYCIQD9u2CnjZWe+7+9rfblFUI89GsWpm0HvlDTzKnLb0s6WwIhANNRI1v3zefew5nW41tEs4DSj2O/CtYgdWiRfr/+YxQg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDE6lNl83e0x2U7iTN7PAPZcEaDAbQHM/aEbsL5OUOgxAiBS0Y3uzJwpJblyxvZwv0AWNHOlZUi5m7IAnVYV0OWLgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23976196},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"7b90ceaba16cf0e50a993e7e9ab14d1427983e7e","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.1.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.29.3_1790765049134_0.6858094796209344","host":"s3://npm-registry-packages-npm-production"}},"0.29.4":{"name":"claude-mux","version":"0.29.4","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"author":{"name":"Leonardo Christino"},"license":"MIT","_id":"claude-mux@0.29.4","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"homepage":"https://github.com/christinoleo/claude-mux#readme","bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"bin":{"claude-mux":"dist/cli.js"},"dist":{"shasum":"a883d36b2849ff38408ab9a7b10f5bd494729a91","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.4.tgz","fileCount":1195,"integrity":"sha512-MXDSBpBRnXhEnpbo8VGrcSD39wKfhunYpUxGdyFTMtum5Y6EBD5czkqCS5Tf9PBYEhhZuT4wzQHqs7+sClKILQ==","signatures":[{"sig":"MEUCID6gDXkVN5bnZOwfkesCc/NkIH1h8sz1gJs4o2VA9qNMAiEAr++qXy1ysVvgL8x0xm3LzvWCCamUAUhTAuqKlJZkhu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDM+pjNjmgsv92UtxYXbar3yGfkIj5QY9MvEElCPhsdgQIgagPnoznoIf0uaLyw4Tnbv2e1hvjo0Pxlokw1p2Xn6d0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23984360},"main":"dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"5023d1f4d67b63ed5703de49880af4ed136b9b06","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.1.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-mux_0.29.4_1790772297236_0.02694088557135821","host":"s3://npm-registry-packages-npm-production"}},"0.29.5":{"_id":"claude-mux@0.29.5","bin":{"claude-mux":"dist/cli.js"},"bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"dist":{"shasum":"b7ccfb66e531ddb268fea21801cdf1b1b89f2352","tarball":"https://registry.npmjs.org/claude-mux/-/claude-mux-0.29.5.tgz","fileCount":1196,"integrity":"sha512-cYTMhz04IZIwBO6KlOunwzHDl1ZTO6JciVK2xG7QzAFdcI8UI/zr05i6kAyXmOQuvRJg1eq4W/qssVXpoF8tSQ==","signatures":[{"sig":"MEQCIBiZz7XCYahifemeiyrWpe49nPXle71o52Rbr4ROzOPHAiBLE4mG92KGBW+Sk9thLqJPN+woRZcAGQFkLnSK1ryERw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBy/KMX0JTUHixtSdTGkI0IjKm5z6fcUo1XlS0apyMofAiEAzfALTMxSyDerOqmDQND5Lu8bjh4lkhxQgGPlW2r00Lc="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/claude-mux@0.29.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23997088},"main":"dist/cli.js","name":"claude-mux","type":"module","types":"./dist/cli.d.ts","author":{"name":"Leonardo Christino"},"engines":{"node":">=18"},"gitHead":"5f5e70823d28a67acdcbdfe55417b198342b395a","license":"MIT","scripts":{"dev":"tsc -p tsconfig.cli.json --watch","lint":"eslint src tests --ext .ts,.tsx","test":"vitest run","build":"bun run build:cli && bun run build:web","start":"bun dist/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'tests/**/*.{ts,tsx}'","version":"bun -e \"const v=require('./package.json').version; require('fs').writeFileSync('src/utils/version.ts', '/**\\n * Central version constant for claude-watch.\\n * Keep in sync with package.json version.\\n */\\nexport const VERSION = \\\"'+v+'\\\";\\n')\" && git add src/utils/version.ts","build:cli":"tsc -p tsconfig.cli.json","build:web":"cd web && bun run build","dev:serve":"while true; do (cd web && bun run dev --host 0.0.0.0 --port 3434); echo 'Dev server crashed, restarting in 2s...'; sleep 2; done","test:watch":"vitest","preuninstall":"claude-mux --cleanup || true","prod:restart":"bun run build && bun dist/cli.js setup --yes && (pkill -9 -f 'bun dist/cli\\.js serve --port 3456' 2>/dev/null; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 2; lsof -ti:3456 | xargs -r kill -9 2>/dev/null; sleep 1; if lsof -ti:3456 >/dev/null 2>&1; then echo 'ERROR: port 3456 still busy after kill, aborting' >&2; lsof -i:3456 >&2; exit 1; fi; nohup bun dist/cli.js serve --port 3456 --host 127.0.0.1 >/tmp/claude-mux-prod.log 2>&1 & disown); echo 'Prod server restarted on 127.0.0.1:3456 (logs: /tmp/claude-mux-prod.log)'","test:coverage":"vitest run --coverage","prepublishOnly":"bun run build"},"version":"0.29.5","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"7879e9ea-8280-4e3b-8554-6d2b5ead4f7e"}},"homepage":"https://github.com/christinoleo/claude-mux#readme","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"workspaces":["web"],"_npmVersion":"12.2.0","description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","directories":{},"maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"_nodeVersion":"22.23.3","dependencies":{"ink":"^5.2.1","zod":"^4.4.3","react":"^18.3.1","commander":"^12.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","vitest":"^4.1.11","prettier":"^3.9.6","@types/bun":"^1.3.14","typescript":"^5.9.3","@types/node":"^22.20.1","@types/react":"^18.3.31","ink-testing-library":"^4.0.0","@typescript-eslint/parser":"^8.67.0","@vitest/coverage-istanbul":"^2.1.9","@typescript-eslint/eslint-plugin":"^8.67.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-mux_0.29.5_1790892744408_0.4065666819050129"}}},"time":{"created":"2026-01-30T19:43:44.325Z","modified":"2026-10-01T22:12:25.236Z","0.7.0":"2026-01-30T19:43:44.617Z","0.7.1":"2026-01-31T18:28:43.541Z","0.8.0":"2026-05-19T11:20:56.077Z","0.9.0":"2026-05-19T11:27:20.892Z","0.9.1":"2026-05-19T11:37:17.967Z","0.9.2":"2026-05-19T11:41:29.786Z","0.9.3":"2026-05-19T11:45:49.807Z","0.9.4":"2026-05-19T11:48:53.882Z","0.9.5":"2026-05-19T11:56:03.139Z","0.10.0":"2026-08-19T11:04:08.049Z","0.10.1":"2026-08-19T11:15:40.087Z","0.11.0":"2026-08-22T14:07:48.868Z","0.12.0":"2026-08-27T19:19:28.267Z","0.13.0":"2026-08-28T17:12:03.198Z","0.14.0":"2026-08-29T12:53:26.846Z","0.15.0":"2026-08-29T15:14:39.156Z","0.16.0":"2026-08-29T15:56:45.484Z","0.16.1":"2026-08-29T16:06:07.572Z","0.16.2":"2026-08-29T16:16:54.833Z","0.17.0":"2026-08-29T16:31:56.527Z","0.18.0":"2026-08-29T17:39:16.018Z","0.18.1":"2026-08-29T17:48:49.484Z","0.19.0":"2026-08-29T21:02:49.579Z","0.20.1":"2026-08-30T19:43:53.678Z","0.21.0":"2026-09-01T22:29:52.261Z","0.22.0":"2026-09-02T11:13:21.498Z","0.23.0":"2026-09-02T11:48:24.770Z","0.24.0":"2026-09-02T12:32:55.013Z","0.24.1":"2026-09-02T12:37:39.399Z","0.25.0":"2026-09-02T13:07:52.533Z","0.26.0":"2026-09-02T16:55:47.657Z","0.26.1":"2026-09-02T17:57:21.059Z","0.26.2":"2026-09-02T23:16:39.117Z","0.26.3":"2026-09-03T17:04:47.768Z","0.26.4":"2026-09-03T19:37:33.019Z","0.27.0":"2026-09-03T19:49:03.753Z","0.28.0":"2026-09-04T22:32:11.716Z","0.28.1":"2026-09-04T23:26:42.702Z","0.28.2":"2026-09-05T08:46:28.470Z","0.28.3":"2026-09-05T08:57:04.246Z","0.28.4":"2026-09-05T12:05:16.947Z","0.28.5":"2026-09-05T14:54:56.452Z","0.28.6":"2026-09-05T15:15:57.165Z","0.28.7":"2026-09-05T15:21:48.291Z","0.28.8":"2026-09-05T15:30:18.588Z","0.28.9":"2026-09-05T15:56:41.875Z","0.28.10":"2026-09-08T20:14:05.037Z","0.29.0":"2026-09-24T16:02:35.974Z","0.29.1":"2026-09-25T13:28:01.916Z","0.29.2":"2026-09-30T10:20:07.447Z","0.29.3":"2026-09-30T10:44:09.388Z","0.29.4":"2026-09-30T12:44:57.457Z","0.29.5":"2026-10-01T22:12:24.596Z"},"bugs":{"url":"https://github.com/christinoleo/claude-mux/issues"},"author":{"name":"Leonardo Christino"},"license":"MIT","homepage":"https://github.com/christinoleo/claude-mux#readme","keywords":["claude","claude-code","anthropic","web","dashboard","monitoring","websocket","sveltekit","tmux","real-time"],"repository":{"url":"git+https://github.com/christinoleo/claude-mux.git","type":"git"},"description":"Real-time web dashboard for monitoring and controlling multiple Claude Code sessions","maintainers":[{"name":"aknakos","email":"leomilho@gmail.com"}],"readme":"<p align=\"center\">\n  <h1 align=\"center\">claude-mux</h1>\n  <p align=\"center\">\n    <strong>Real-time web dashboard for monitoring and controlling multiple Claude Code sessions</strong>\n  </p>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/claude-mux\"><img src=\"https://img.shields.io/npm/v/claude-mux?style=flat-square&color=blue\" alt=\"npm version\"></a>\n  <a href=\"https://www.npmjs.com/package/claude-mux\"><img src=\"https://img.shields.io/npm/dm/claude-mux?style=flat-square&color=green\" alt=\"npm downloads\"></a>\n  <a href=\"https://github.com/christinoleo/claude-mux/blob/main/LICENSE\"><img src=\"https://img.shields.io/github/license/christinoleo/claude-mux?style=flat-square\" alt=\"license\"></a>\n  <img src=\"https://img.shields.io/badge/bun-%3E%3D1.0-f472b6?style=flat-square\" alt=\"bun version\">\n  <img src=\"https://img.shields.io/badge/platform-linux%20%7C%20macos-lightgrey?style=flat-square\" alt=\"platform\">\n</p>\n\n<p align=\"center\">\n  <a href=\"#features\">Features</a> &bull;\n  <a href=\"#installation\">Installation</a> &bull;\n  <a href=\"#quick-start\">Quick Start</a> &bull;\n  <a href=\"#cli-commands\">CLI</a> &bull;\n  <a href=\"#how-it-works\">Architecture</a>\n</p>\n\n---\n\n<p align=\"center\">\n  <img src=\"docs/images/desktop-dashboard.png\" alt=\"Dashboard\" width=\"100%\">\n  <br><em>Dashboard &mdash; sessions grouped by project with live state indicators</em>\n</p>\n\n<p align=\"center\">\n  <img src=\"docs/images/desktop-session.png\" alt=\"Session View\" width=\"100%\">\n  <br><em>Session view &mdash; real-time ANSI terminal output with action toolbar</em>\n</p>\n\n<details>\n<summary><strong>Mobile</strong></summary>\n<br>\n<p align=\"center\">\n  <img src=\"docs/images/mobile-dashboard.png\" alt=\"Mobile Dashboard\" width=\"300\">\n  &nbsp;&nbsp;&nbsp;\n  <img src=\"docs/images/mobile-session.png\" alt=\"Mobile Session\" width=\"300\">\n</p>\n<p align=\"center\"><em>Fully responsive &mdash; control sessions from your phone</em></p>\n</details>\n\n---\n\n## Features\n\n- **Live session monitoring** &mdash; WebSocket-powered, no polling. See state (busy/idle/waiting/permission) at a glance\n- **Project grouping** &mdash; sessions organized by working directory with color-coded borders\n- **ANSI terminal rendering** &mdash; real tmux colors via [ansi_up](https://github.com/drudru/ansi_up), toggleable\n- **Session control** &mdash; send text, keys (Up/Down/Tab/Esc/Ctrl-C), Yes/No/Always quick buttons\n- **Voice input** &mdash; local Whisper transcription (CPU or CUDA, auto-detected). Trigger with `F2`, `Pause`, or `Ctrl+\\`` while the input is focused; press `Enter` to stop and submit, `Esc` or the `×` overlay to discard. Long-press the mic button for language, microphone, and auto-submit settings\n- **Orchestrator pairing** &mdash; main + orchestrator sessions grouped together with role labels\n- **Remote Control** &mdash; auto-detects Claude's `/rc` and opens it in a new window\n- **Mobile-first** &mdash; touch toolbar, hamburger sidebar, swipe gestures\n- **Screenshots panel** &mdash; view and dismiss captured screenshots\n- **Dead pane detection** &mdash; visual indication when a tmux pane closes\n- **Other tmux panes** &mdash; browse and view non-Claude panes too\n- **Auth support** &mdash; optional password protection for LAN access\n- **CLI scripting** &mdash; `send`, `wait`, `status`, `capture` commands for automation\n\n---\n\n## Installation\n\n**One-liner (recommended)** &mdash; installs bun, claude-mux, hooks, and starts the server on `127.0.0.1:3456`:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/christinoleo/claude-mux/main/scripts/install.sh | bash\n```\n\nOverride defaults with env vars: `CLAUDE_MUX_VERSION`, `CLAUDE_MUX_PORT`, `CLAUDE_MUX_NO_SETUP=1`, `CLAUDE_MUX_NO_SERVE=1`.\n\n**Manual** &mdash; if you already have a Node/Bun toolchain:\n\n```bash\nnpm install -g claude-mux       # or: bun install -g claude-mux\nclaude-mux setup                # install Claude Code hooks\n```\n\nIf `npm install -g` fails with `EACCES`, your npm prefix is a system path. Switch to a user prefix (one-time):\n\n```bash\nmkdir -p ~/.npm-global\nnpm config set prefix ~/.npm-global\necho 'export PATH=\"$HOME/.npm-global/bin:$PATH\"' >> ~/.bashrc\nexec $SHELL -l\n```\n\n<details>\n<summary><strong>From source</strong></summary>\n\n```bash\ngit clone https://github.com/christinoleo/claude-mux.git\ncd claude-mux\nbun install && bun run build\nbun link  # makes 'claude-mux' available globally\n```\n</details>\n\n---\n\n## Updating\n\n```bash\nclaude-mux update           # npm i -g latest, re-syncs hooks, restarts prod server if running\nclaude-mux update --force   # reinstall even when already on latest\n```\n\n`update` stops the prod server before reinstalling so live module files aren't clobbered, then re-runs `setup --yes` so hook paths stay current.\n\n---\n\n## Running as a service (boot autostart)\n\n`claude-mux service install` writes a **systemd user unit** (no root needed for install):\n\n```bash\nclaude-mux service install                  # writes ~/.config/systemd/user/claude-mux.service, enables + starts\nclaude-mux service status                   # systemctl --user status …\nclaude-mux service uninstall --purge        # disable + remove unit\n\nsudo loginctl enable-linger $USER           # ONE-TIME sudo: keeps service running after logout / starts on boot\n```\n\nLogs: `journalctl --user -u claude-mux.service -f`\n\n### Secrets / API keys (Groq voice, etc.)\n\nThe unit reads `~/.config/claude-mux/env` if present (`EnvironmentFile=-`). Put any `KEY=value` env vars there — they survive restarts and stay out of the unit file. Voice transcription needs `GROQ_API_KEY`:\n\n```bash\numask 077\nmkdir -p ~/.config/claude-mux\nprintf 'GROQ_API_KEY=gsk_...\\n' > ~/.config/claude-mux/env\nsystemctl --user restart claude-mux.service\n```\n\nEdit the file then `systemctl --user restart claude-mux.service` to pick up changes.\n\n---\n\n## Quick Start\n\n```bash\n# 1. Install hooks into Claude Code\nclaude-mux setup\n\n# 2. Start the web server\nclaude-mux serve --port 3456 --host 0.0.0.0\n\n# 3. Open http://localhost:3456 (or your LAN IP)\n# 4. Start any Claude Code session — it appears automatically\n```\n\n---\n\n## CLI Commands\n\n| Command | Description |\n|---------|-------------|\n| `claude-mux serve` | Start web server (`--port`, `--host`, `--auth <password>`) |\n| `claude-mux setup` | Install Claude Code hooks |\n| `claude-mux update` | `npm i -g` latest, re-sync hooks, restart prod server |\n| `claude-mux service install` | Install systemd user unit (boot autostart, no root) |\n| `claude-mux service uninstall` | Disable systemd user unit (`--purge` removes the file) |\n| `claude-mux service status` | Show systemd service status |\n| `claude-mux uninstall` | Remove hooks and configuration |\n| `claude-mux send <target> [text]` | Send text or `--keys` to a session |\n| `claude-mux status <target>` | Get session state as JSON |\n| `claude-mux wait <target>` | Block until session reaches `--state` (default: idle,waiting,permission) |\n| `claude-mux new-session --cwd <path>` | Spawn a new detached Claude Code session |\n| `claude-mux capture <target>` | Capture tmux pane output (`--lines N`) |\n| `claude-mux` | TUI dashboard (legacy, requires tmux) |\n\n---\n\n## How It Works\n\n```\nClaude Code events  ──>  Hook script  ──>  JSON files (~/.claude-mux/sessions/)\n                                                    |\n                                           File watcher (500ms)\n                                                    |\n                                           WebSocket broadcast\n                                                    |\n                                           Browser  <──>  SvelteKit server\n```\n\n**Hooks** run inside Claude Code's process and write session state to JSON on every event (start, prompt, tool use, stop, notification). The **SvelteKit server** watches those files and pushes updates to connected browsers via WebSocket. Terminal output is captured directly from tmux panes.\n\n---\n\n## Troubleshooting\n\n**Sessions not appearing** &mdash; Run `claude-mux setup`, then restart Claude Code sessions (hooks load at startup).\n\n**Can't connect from another device** &mdash; Use `--host 0.0.0.0` and check your firewall.\n\n**Status not updating** &mdash; Verify hooks: `grep claude-mux ~/.claude/settings.json`\n\n**Voice transcription slow on first use** &mdash; The first invocation builds whisper.cpp and downloads a Whisper model into `~/.claude-mux/voice/`. Subsequent runs reuse the cache. CUDA is used automatically if `nvidia-smi` and `nvcc` are present.\n\n---\n\n## Requirements\n\n- [Bun](https://bun.sh) >= 1.0\n- tmux\n- Claude Code with hooks support\n- Optional, for voice input: a working C/C++ toolchain (whisper.cpp builds on first use); NVIDIA CUDA toolkit for GPU transcription\n\n---\n\n## License\n\nMIT\n\n## Contributing\n\nPRs welcome. Fork, branch, test (`bun test`), and open a PR.\n","readmeFilename":"README.md"}