{"_id":"@arimakouyou/spec-workflow-mcp","_rev":"23-e4f55ec338ec994e43ea3a73023b8ebd","name":"@arimakouyou/spec-workflow-mcp","dist-tags":{"latest":"2.2.29"},"versions":{"2.2.7":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.7","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.7","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"90755364427d71953decf7289942f07ac7719a1a","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.7.tgz","fileCount":472,"integrity":"sha512-2e3zF4VY1ET5+0KS+3gL9DFEJnlz0MsXkspIBdQrqJB1OR+A20o7ERWQcLN5lN/5C/XhqmHzhsk5GFGKVZdI2A==","signatures":[{"sig":"MEUCIH9SBPo+LX88EPC96IeIlociKTUuE6HFbf63/QPj03xZAiEAqaXP8aDILDoleJ1bFE+QitmxxdglgS0g7yCjKvCtQLc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9195692},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"9e821184133748a39a084959cec34b8370db0c2a","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.7_1774350810986_0.8861152940658237","host":"s3://npm-registry-packages-npm-production"}},"2.2.8":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.8","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.8","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"a9a656a449b163cfafa715b4c1e1763255e2332f","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.8.tgz","fileCount":479,"integrity":"sha512-Z6za9eJ7vuNeZJwukdxL42jheZNdurW24A/em3G1WGEpLh4M91Jx87SMHPOrMOR5axT3Lkfvok6CRDF+0RVYlA==","signatures":[{"sig":"MEUCIHr2W7XOpyOs07nFnnHAAC+uT9VVAZemJmzHsbMJVR1HAiEAxynS0GG/LL4UqpZz/KqdEEmUoELddd+DdP9dt3yJx6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9229074},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"04d07ad7409bc40d5dbf32cb24c8d3c115c72e15","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.8_1774434892207_0.24856043902876945","host":"s3://npm-registry-packages-npm-production"}},"2.2.9":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.9","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.9","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"51a13c16eddea523b97aece672d0fb9d377a7374","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.9.tgz","fileCount":480,"integrity":"sha512-WrLQCEzd39EVrTk9VRg+ZCtvwBgiprmiaRaGGpXn+uHZTBGZrcwPxWVcOvQsfcmOg1kRrDRvYQsFDOpV3J1IWA==","signatures":[{"sig":"MEQCIDcwcgn4czQBAosFwf1FgTjGfv40yFIS2ZDHTgBfoDGCAiACKKGokGuKBlFcMLSxQGZ68nq90QkEZmkDwytjNjlDUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9234792},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"3945fb968f873ba050d3c1f33f15590a19e7c330","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.9_1774491682465_0.12785779803490627","host":"s3://npm-registry-packages-npm-production"}},"2.2.10":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.10","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.10","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"d60809cefa63b26ff948d1f1ab5c79560f490580","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.10.tgz","fileCount":481,"integrity":"sha512-jbTuo+kQu7yXfvpzqYz76Ko6H4E8TXzxPrNe5Fo5vA7Ygf9dd6vuhBEtAqUx/zl4SBRNRvdxqlnLfz2D4kCb+Q==","signatures":[{"sig":"MEUCIFMBqb9h7SYRxnPvZgIzQ7VMZ+cIzNf5QdSW/fBrdFgfAiEAw6jMUy7k35ymCVpa52JYav2GgbXoJ96FJQPj765EtUQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9243444},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"f90cd3c5987821948e1dd5fc29b05dd662a766c8","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.10_1774494360985_0.3287052804274637","host":"s3://npm-registry-packages-npm-production"}},"2.2.11":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.11","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.11","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"f18c67648b50d89c668fbd2b058f928e58f40093","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.11.tgz","fileCount":463,"integrity":"sha512-+4P1N9BfbbcQSRmTMW7mwmiJ+9yOzK28WooNY/M8RY9xnOB3KKcAduUQTw0cuHEU+syS2W9FiwTYMtNiCN5r0w==","signatures":[{"sig":"MEYCIQDCuqj4qv4HE6qI06GBzOoNgsJH1uXuhbTDPJTH8vweogIhAOlILXbijddBN25zMTqeSWaE0TALtVjRPdqbdr5rgXkB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9170334},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"ac80cfa2b668c14ce8e929c2c4997c7013ed3334","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.11_1774507480010_0.9830306185298954","host":"s3://npm-registry-packages-npm-production"}},"2.2.12":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.12","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.12","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"be6307e9fe942f43b2b6ed8452f55940160f2185","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.12.tgz","fileCount":463,"integrity":"sha512-g0DafgG5i7RxxXNFZXcR50vI5zsiIm24O0RYaOvmjy8f503xcmNyImi7PjkyAbwhoiq9V/9ck4TFFh4sHKB72A==","signatures":[{"sig":"MEUCIQDUaPNGYClkry8L/7sEITb9arItVsvKdbsx6yG5TLxe/QIgWpYQZ5aczLws4UqTFSOtweFmPsqRODtydqaaEkI5IUY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9191548},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"fac9e2afa06f9dbb791382eb00197e657ad39835","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","zod":"^3.25.0","clsx":"^2.1.1","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","react":"^18.3.1","howler":"^2.2.4","fastify":"^5.7.4","i18next":"^25.5.2","mermaid":"^10.9.1","chokidar":"^3.5.3","node-cron":"^4.2.1","react-dom":"^18.3.1","simple-git":"^3.28.0","@mdx-js/mdx":"^3.1.1","ajv-formats":"^3.0.1","markdown-it":"^14.1.0","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","@fastify/cors":"^11.2.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@fastify/static":"^9.0.0","@heroicons/react":"^2.2.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@toon-format/toon":"^0.8.0","@dnd-kit/utilities":"^3.2.2","@fastify/websocket":"^11.2.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.24.3","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vite":"^7.2.7","rimraf":"^6.0.1","vitest":"^4.0.15","@types/ws":"^8.5.13","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.12_1774567886715_0.5021049389102843","host":"s3://npm-registry-packages-npm-production"}},"2.2.13":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.13","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.13","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"84c4c3e0bede8cfdb15c7a973b93898b05526fd2","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.13.tgz","fileCount":463,"integrity":"sha512-t01qGMv6GweATOZwlxDSE/EeeEhQi5qjIB4oa4jLferUdmBlM6TpaEP9SZie0NUyFNvjyYlLup9rrOKkKm5ksw==","signatures":[{"sig":"MEUCIQCl+xbnu8qbiiCYLmNUfXhySyrOBEnfxq6YCqZP/dCoJQIgIF42OpscKdM3hZGqyjP0bvW1RJ8I2HJoMZfzndmumdw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9191374},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"2e387a55a9578454083db10040717e7e7b5aa057","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.13_1774569919047_0.4159048193044659","host":"s3://npm-registry-packages-npm-production"}},"2.2.14":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.14","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.14","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"19e0e4d2b08ba57d095e8d6dc694d04feeda8640","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.14.tgz","fileCount":463,"integrity":"sha512-CkY7nNA4LJXlHEeo2ZmaSXPd7jtowvcxHi1E2mv/gex3ads0+NvoAsOTuLNf7TxzZUTol7TvxM2S/eoq05GxWA==","signatures":[{"sig":"MEUCIAIUCmn73ODPJXnu8WT1RVKo63frfmYhk2MNl5F4ELBJAiEA+DvAcjk0EUVXkRmJVmuK0xc+XCAmVpu5GDLxzNZ1tlk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9192079},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"7028eb7a1c521ba21914a64359c824e381e6d20a","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.14_1774578376940_0.7679626283907266","host":"s3://npm-registry-packages-npm-production"}},"2.2.15":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.15","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.15","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"2f70b3984e0812e228087c6264453e6b373b25c1","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.15.tgz","fileCount":463,"integrity":"sha512-strMLp0nufHyAn2gnLqQH6AiIlnvGWS/SyuA5doDNX6E6jVu0R3Eyc7zF1gtwJjYowEx2TrRpG1lBh1WQKrz6A==","signatures":[{"sig":"MEQCIFm6J2oCI6uRS56ipatweE9t/5L4zcgctdzZsQfwB3AnAiBODkZvguYwvDfh39fYjH3n4Uw4D5kCrLy3K2o7Zmk6pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9192367},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"944f93f0aa5a6bcf17bc94e5f1a625b2e5c54986","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.15_1774696151340_0.9171777796016436","host":"s3://npm-registry-packages-npm-production"}},"2.2.16":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.16","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.16","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"62752d237e698c04d431032c2d46b48f3f228acb","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.16.tgz","fileCount":464,"integrity":"sha512-fQapMzkrXKaaoJUTYYsRyQLpifG7nYerZdKfhYtymXiI8Iqx6OUuWxsQRjohnE5L4ARIp6Oaltw3Qy2rMyb4xg==","signatures":[{"sig":"MEUCIEiZn08lfreGblpzb64ERhUO1NK/jYle91ACOPIVYr1WAiEAr1GjSdvPNEVvIqzs9iO4nDgCEbBqP3Wj4IuYG2HuPHo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9200579},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"eef773194a9c6e2107cd7101f34c7541b2b63a0c","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.16_1774945444272_0.7905026618913313","host":"s3://npm-registry-packages-npm-production"}},"2.2.17":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.17","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.17","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"ff93ededb1de932b7c77692e3ec02520c65c6059","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.17.tgz","fileCount":465,"integrity":"sha512-NhWAklYwURkUZvkFdztfCDjm/T55R8IXl1aHDmonbkKHKTXvMXjQlOBCbXP9ZKNQG+z73jxzYsbs+SbdWMqnUQ==","signatures":[{"sig":"MEYCIQCceLs/TvGcbRoH85Th0t9xYcrsO7uP76HRPU8iV6gpeQIhANuNBBcVrOzQMtWKNLwhAG6MZ1en1qYZOkajRcQJPcvl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9222641},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"a70ce7e6e78a214468ac7ced3de322352c8bbf9e","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.1","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.17_1775015939398_0.7259261984826297","host":"s3://npm-registry-packages-npm-production"}},"2.2.18":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.18","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.18","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"c2aa525430763f6f19228ecbc26a95edd1719838","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.18.tgz","fileCount":466,"integrity":"sha512-ijNF2ToirFlKBejUKtMG7TTrx/XVc+A1uip+8hayKnuppydjnlX3oVrjk3Ee5T5aSuHExzTDSe0UeKARis2j2Q==","signatures":[{"sig":"MEQCIAZSLHsflLtcfFxCXUw8RRHpER6vo+LPqBPUgEJ6tPGPAiBHYhMSNIEmdpU6ImmNSC1oGNwnf5ylhnLo+jMcTFx9ew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9230950},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"8932edc65734b56f2149eeec4cd0a6c0db655dc3","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.18_1775265911637_0.1294395377444264","host":"s3://npm-registry-packages-npm-production"}},"2.2.19":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.19","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.19","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"a14e8cea4b5bb7cab2e56507bde4287f0a258075","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.19.tgz","fileCount":466,"integrity":"sha512-Z+82Ky8xXNlIlmPTIjJkeCH0bgngGJXHB1ntSQ4hYeNhnDs8ZUkSsFk5fimrEVuM1B6gjA1ditB/PiwYglZ/Zg==","signatures":[{"sig":"MEUCIQD5jcDmXtnx2J7zzfCDzxFm7fJtYPYpVKeMXuM1RkU3/gIgClsLnBqwZQNq3jMyXovz1WXbqghqxVd8JHu1MEtmU5Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9236653},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"d24788c09f6dfc970276768adae5cd8ca373bc85","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.19_1775269158918_0.3991494547622323","host":"s3://npm-registry-packages-npm-production"}},"2.2.20":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.20","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.20","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"9523bc760ba28d80b5c1be294d85d11827f9cd3b","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.20.tgz","fileCount":475,"integrity":"sha512-icoQDh8SWNbPw6V8IUKot3CUo3Xate7ezbLzdcyTSp74UhyU8sQtQ95NNK1Z98XZgEgEYkOw0xyHx/mxZVGtxg==","signatures":[{"sig":"MEUCIEK5nVB6DtmEjzDe5J4LO0keeak10XmxATbBjhArWKTQAiEA5VXVU4bWbuf7jrtStaZxiT+ifVwDeMElP2U3npNz51E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9272265},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"9054af2587be44b570e5dd880331369553b503f3","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.20_1775272845449_0.676428721355254","host":"s3://npm-registry-packages-npm-production"}},"2.2.21":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.21","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.21","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"a4ac5acc1cd0ed7fcceaae547a5177c7e41b69e4","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.21.tgz","fileCount":478,"integrity":"sha512-4FosV+m4V+uVTgLYAVaUuqb01m/JvKrZIil5/74iX16no0saIW7lQEQjqN0jivBzdELcMb/bVKFO699svPiHDA==","signatures":[{"sig":"MEUCIQCID4J1MbyVuKZlr1Lg66ozwAERvI25Gj02pSwWMMJxQAIgG/PUCpf+i2CH+5skhRe1eflPGT+R0fj5BI4oKOgj+Ek=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9315525},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"13eb0e9b3ad0ef160f75a058f41321d4868e4ebf","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.21_1775307165155_0.35371922153739344","host":"s3://npm-registry-packages-npm-production"}},"2.2.22":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.22","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.22","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"5334ec2dcad0a5bec4cea0e98f2bac073003835c","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.22.tgz","fileCount":478,"integrity":"sha512-ToJQOBKD4YOJWC/OkOR20KQa1ViHJ8E9V3wmyf96fuxegVGS1FfVwadl+igCSOzF1CndgpbJMRK33Jq4XTivDA==","signatures":[{"sig":"MEUCIDt126bRSOa4al99l1zwmwzbV+MP/pWBU6LgfUByDynRAiEA1W++NVcuHnAcYgCvWmxIjjuZFWWJ4rcPF2OXlLr7ryU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9315550},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"5423d8949fcd5a23c1c44cb5951df827d9cbd51a","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.22_1775399331468_0.06803736274212624","host":"s3://npm-registry-packages-npm-production"}},"2.2.23":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.23","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.23","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"c981d65db07fe5056daf9250fac77a04d5bfe859","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.23.tgz","fileCount":478,"integrity":"sha512-8f4frrF2k2/CUvaFiqBApQszDzXA0g7JVLpXkZp8dLWYjh/Ie8ldT2Dfm9hCtnDhwDSVzN+mnyOMm7+QKW1Ffw==","signatures":[{"sig":"MEYCIQDm3i162u2LCOPq/1OuwGsgbM1Ko1G+Dz6oQnLOsU3NrgIhAKx6Uz79cqZnzFMCHqwgME0DPZdk7NkUTrZCq05OgM4z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9318591},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"dcccdec31a0dddd9212fcf6a5af83d1ffac91c34","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.23_1775546685574_0.798518476022881","host":"s3://npm-registry-packages-npm-production"}},"2.2.24":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.24","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.24","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"5e251b33152479db7c11d868e8200a20b4c42406","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.24.tgz","fileCount":478,"integrity":"sha512-f4BalbTs/P/PKu2HAHr4bPHA2Z+HYx87IVcvjuEwBQG+fG2fSZysmVtICIxLvszkwkpPdOXAD1j5K9fBEJXjdg==","signatures":[{"sig":"MEUCIQCeCNdpbj4tViXZ01L9T0xNqJ4Xen4vOtONx5gtp+gdBwIgQ8tegZHqjBL2GcqHyiowBozEdl56dXS90HaLFu/v/Ag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9318591},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"522d78e0ae92a4a010b2e726d8fd95cf229d3cc3","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.24_1775719014469_0.544834425652923","host":"s3://npm-registry-packages-npm-production"}},"2.2.25":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.25","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.25","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"f119945faf0cf890203ad78ce3520541b3554555","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.25.tgz","fileCount":501,"integrity":"sha512-p7wfWGVFtJ+px2jY4UzbuqSu7lxCYNvqF78TRTnufqPO86OyzHfqnW5wb6wBuOKFZXziITmppmE+293MLNKL/w==","signatures":[{"sig":"MEQCID29Z9kuTuPm9VqgjpnAnrbVyp5WL8UTZBc5c5DyNoPWAiBvy0IvgT+DW1uXFwd47OSVgFH6YkxQ84Fdh0oxm9zQgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9482781},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"7f7cc642444235370d9090b2382c973d146224da","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.25_1775782161925_0.3388580610352858","host":"s3://npm-registry-packages-npm-production"}},"2.2.26":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.26","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.26","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"313ee9a8889ec709ea93600192f59cdd4a08e816","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.26.tgz","fileCount":501,"integrity":"sha512-zxVI5VWG9qlwvya6zscpYN4IqMRmxFDvI032iNhOkl/MtZxzEWOPOY1b+WtprtSBzCOHXUtweczdYFedma7YXg==","signatures":[{"sig":"MEUCIQDBNvkKEHmZPUmjewLXyQdY6UlTUjLX2N5OH3X9ViVvLAIgXkt7FbNLW+CX4xkpB/h4sapoRY8Z7RBpuL5FwXbJflE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9483200},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"d54343f393e8546a87018b742a5a086db50f4745","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.26_1775784196701_0.5046317804339249","host":"s3://npm-registry-packages-npm-production"}},"2.2.27":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.27","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.27","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"777ac99c75ade7fa1c23626e8487b952b3c1bd84","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.27.tgz","fileCount":526,"integrity":"sha512-GEdR/tDL7SKk4qhi/nBEN+iaphoJXq/p7n7CIHTPTNRC9G9aENXC/B9DgwhEiaw9qzCBTDhRKu7PzldY/nBpmg==","signatures":[{"sig":"MEQCICQMNxgqcOUJcFZtTROvoQ6AQjAKXW4s35zXDEU7YF7KAiAK0AEVbozIY1RueSo0mDkWH5USBUpEk/CxVI4cOqJ5iA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9718083},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"be52513c4dbcbad781ab12cfb4920f228378004d","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.27_1775791318061_0.40556383177926425","host":"s3://npm-registry-packages-npm-production"}},"2.2.28":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.28","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","_id":"@arimakouyou/spec-workflow-mcp@2.2.28","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"bin":{"spec-workflow-mcp":"dist/index.js"},"dist":{"shasum":"a14e4fa95c961b6bd2f52575e63075af337b0d19","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.28.tgz","fileCount":530,"integrity":"sha512-GEnraEecvlDlK097/3i356jJVgFO1Fhq1wPCnssYKsRu1T5FDKFaDkIMyFXmAChHbSsecutTS6RoOpB6pPqUcQ==","signatures":[{"sig":"MEQCIG1tNpL0zlO+QAOe6QT+nsISirEPzDOPmZzE+Iad2GPBAiB0SZr+LSC4NhM0dZ/JUMz5Dr350Wws7lDSVgN1whaRcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9734195},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"0eccc37382f6427a3b4fb9bdfffe0b112798456e","scripts":{"dev":"tsx src/index.ts","test":"vitest","build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","clean":"rimraf dist","start":"node dist/index.js","test:e2e":"playwright test","test:watch":"vitest --watch","copy-static":"node scripts/copy-static.cjs","test:e2e:ui":"playwright test --ui","validate:mdx":"tsx scripts/validate-mdx.ts","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","test:coverage":"vitest --coverage","validate:i18n":"node scripts/validate-i18n.js","prepublishOnly":"npm run build","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test:generate-approvals":"node scripts/generate-test-approvals.cjs"},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for spec-driven development workflow with real-time web dashboard","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.18.0","diff":"^5.2.0","open":"^8.4.2","toml":"^3.0.0","fastify":"^5.7.4","chokidar":"^3.5.3","node-cron":"^4.2.1","@mdx-js/mdx":"^3.1.1","@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@toon-format/toon":"^0.8.0","@fastify/websocket":"^11.2.0","@modelcontextprotocol/sdk":"^1.24.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","clsx":"^2.1.1","vite":"^7.2.7","react":"^18.3.1","howler":"^2.2.4","rimraf":"^6.0.1","vitest":"^4.0.15","i18next":"^25.5.2","mermaid":"^10.9.1","@types/ws":"^8.5.13","react-dom":"^18.3.1","typescript":"^5.7.2","@types/diff":"^5.2.3","@types/node":"^22.18.1","tailwindcss":"^4.1.13","@types/react":"^18.3.5","highlight.js":"^11.9.0","@dnd-kit/core":"^6.1.0","react-i18next":"^15.7.3","tailwind-merge":"^3.3.1","@heroicons/react":"^2.2.0","@playwright/test":"^1.58.0","@types/react-dom":"^18.3.0","react-router-dom":"^6.26.2","@dnd-kit/sortable":"^8.0.0","@mdxeditor/editor":"^3.50.0","@tailwindcss/vite":"^4.1.13","@dnd-kit/utilities":"^3.2.2","@vitest/coverage-v8":"^4.0.15","@vitejs/plugin-react":"^4.3.3","@tailwindcss/typography":"^0.5.16","react-text-annotate-blend":"^1.2.0","i18next-browser-languagedetector":"^8.2.0"},"_npmOperationalInternal":{"tmp":"tmp/spec-workflow-mcp_2.2.28_1776138467100_0.16174171803609938","host":"s3://npm-registry-packages-npm-production"}},"2.2.29":{"name":"@arimakouyou/spec-workflow-mcp","version":"2.2.29","description":"MCP server for spec-driven development workflow with real-time web dashboard","main":"dist/index.js","type":"module","bin":{"spec-workflow-mcp":"dist/index.js"},"scripts":{"build":"npm run validate:i18n && npm run clean && tsc && npm run build:dashboard","copy-static":"node scripts/copy-static.cjs","dev":"tsx src/index.ts","start":"node dist/index.js","dev:dashboard":"vite --config src/dashboard_frontend/vite.config.ts","build:dashboard":"vite build --config src/dashboard_frontend/vite.config.ts && npm run copy-static","clean":"rimraf dist","validate:i18n":"node scripts/validate-i18n.js","sync:plugin-version":"node scripts/sync-plugin-version.js","check:plugin-version":"node scripts/sync-plugin-version.js --check","test":"vitest","test:watch":"vitest --watch","test:coverage":"vitest --coverage","test:e2e":"playwright test","test:e2e:worktree":"playwright test -c playwright.worktree.config.ts","test:e2e:ui":"playwright test --ui","test:generate-approvals":"node scripts/generate-test-approvals.cjs","prepublishOnly":"npm run build","validate:mdx":"tsx scripts/validate-mdx.ts"},"keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"author":"","license":"GPL-3.0","dependencies":{"@fastify/cors":"^11.2.0","@fastify/static":"^9.0.0","@fastify/websocket":"^11.2.0","@mdx-js/mdx":"^3.1.1","@modelcontextprotocol/sdk":"^1.24.3","@toon-format/toon":"^0.8.0","chokidar":"^3.5.3","diff":"^5.2.0","fastify":"^5.7.4","node-cron":"^4.2.1","open":"^8.4.2","toml":"^3.0.0","ws":"^8.18.0"},"devDependencies":{"@dnd-kit/core":"^6.1.0","@dnd-kit/sortable":"^8.0.0","@dnd-kit/utilities":"^3.2.2","@heroicons/react":"^2.2.0","@mdxeditor/editor":"^3.50.0","@playwright/test":"^1.58.0","@tailwindcss/typography":"^0.5.16","@tailwindcss/vite":"^4.1.13","@types/diff":"^5.2.3","@types/node":"^22.18.1","@types/react":"^18.3.5","@types/react-dom":"^18.3.0","@types/ws":"^8.5.13","@vitejs/plugin-react":"^4.3.3","@vitest/coverage-v8":"^4.0.15","clsx":"^2.1.1","highlight.js":"^11.9.0","howler":"^2.2.4","i18next":"^25.5.2","i18next-browser-languagedetector":"^8.2.0","mermaid":"^10.9.1","react":"^18.3.1","react-dom":"^18.3.1","react-i18next":"^15.7.3","react-router-dom":"^6.26.2","react-text-annotate-blend":"^1.2.0","rimraf":"^6.0.1","tailwind-merge":"^3.3.1","tailwindcss":"^4.1.13","tsx":"^4.7.0","typescript":"^5.7.2","vite":"^7.2.7","vitest":"^4.0.15"},"_id":"@arimakouyou/spec-workflow-mcp@2.2.29","gitHead":"0495ca99f26eb5a9afd6cff3722f2048a5b2d871","types":"./dist/index.d.ts","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-vXWMgYk7lFaeHyqVP3DXTGE3gRY0CLrxP2VI5LqlzdVAk8H3Q7NtrucUSHr5+uN1L+m6pXqVPdpCOEFrFqlgtA==","shasum":"193509274a014d0a23268f1ee02b67b7b676de75","tarball":"https://registry.npmjs.org/@arimakouyou/spec-workflow-mcp/-/spec-workflow-mcp-2.2.29.tgz","fileCount":530,"unpackedSize":9734195,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBrIRIFw/m2yZm0tNQvQyITjz1K3tCroh0OjYgrNWitfAiEAwQSgsWvHfH64DYnr7NwKOQGU3ciGmRtkwVUmZNRIyw0="}]},"_npmUser":{"name":"arimakouyou","email":"arimakouyou@gmail.com"},"directories":{},"maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spec-workflow-mcp_2.2.29_1776143561641_0.5184597943466964"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-24T11:13:30.906Z","modified":"2026-04-14T05:12:41.980Z","2.2.7":"2026-03-24T11:13:31.258Z","2.2.8":"2026-03-25T10:34:52.488Z","2.2.9":"2026-03-26T02:21:22.805Z","2.2.10":"2026-03-26T03:06:01.301Z","2.2.11":"2026-03-26T06:44:40.379Z","2.2.12":"2026-03-26T23:31:27.013Z","2.2.13":"2026-03-27T00:05:19.430Z","2.2.14":"2026-03-27T02:26:17.342Z","2.2.15":"2026-03-28T11:09:11.668Z","2.2.16":"2026-03-31T08:24:04.592Z","2.2.17":"2026-04-01T03:58:59.776Z","2.2.18":"2026-04-04T01:25:11.893Z","2.2.19":"2026-04-04T02:19:19.258Z","2.2.20":"2026-04-04T03:20:45.750Z","2.2.21":"2026-04-04T12:52:45.548Z","2.2.22":"2026-04-05T14:28:51.763Z","2.2.23":"2026-04-07T07:24:45.827Z","2.2.24":"2026-04-09T07:16:54.803Z","2.2.25":"2026-04-10T00:49:22.301Z","2.2.26":"2026-04-10T01:23:16.971Z","2.2.27":"2026-04-10T03:21:58.421Z","2.2.28":"2026-04-14T03:47:47.355Z","2.2.29":"2026-04-14T05:12:41.879Z"},"license":"GPL-3.0","keywords":["mcp","model-context-protocol","spec-workflow","ai-development","claude","cursor","development-workflow","project-management"],"description":"MCP server for spec-driven development workflow with real-time web dashboard","maintainers":[{"name":"arimakouyou","email":"arimakouyou@gmail.com"}],"readme":"# Spec Workflow MCP\n\n[![npm version](https://img.shields.io/npm/v/@arimakouyou/spec-workflow-mcp)](https://www.npmjs.com/package/@arimakouyou/spec-workflow-mcp)\n[![VSCode Extension](https://vsmarketplacebadges.dev/version-short/arimakouyou.spec-workflow-mcp.svg)](https://marketplace.visualstudio.com/items?itemName=arimakouyou.spec-workflow-mcp)\n\nA Model Context Protocol (MCP) server for structured spec-driven development with real-time dashboard and VSCode extension.\n\n## ☕ Support This Project\n\n<a href=\"https://buymeacoffee.com/arimakouyou\" target=\"_blank\"><img src=\"https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png\" alt=\"Buy Me A Coffee\" style=\"height: 60px !important;width: 217px !important;\" ></a>\n\n## 📺 Showcase\n\n### 🔄 Approval System in Action\n<a href=\"https://www.youtube.com/watch?v=C-uEa3mfxd0\" target=\"_blank\">\n  <img src=\"https://img.youtube.com/vi/C-uEa3mfxd0/maxresdefault.jpg\" alt=\"Approval System Demo\" width=\"600\">\n</a>\n\n*See how the approval system works: create documents, request approval through the dashboard, provide feedback, and track revisions.*\n\n### 📊 Dashboard & Spec Management\n<a href=\"https://www.youtube.com/watch?v=g9qfvjLUWf8\" target=\"_blank\">\n  <img src=\"https://img.youtube.com/vi/g9qfvjLUWf8/maxresdefault.jpg\" alt=\"Dashboard Demo\" width=\"600\">\n</a>\n\n*Explore the real-time dashboard: view specs, track progress, navigate documents, and monitor your development workflow.*\n\n## ✨ Key Features\n\n- **Structured Development Workflow** - Sequential spec creation (Request Spec → Requirements → Design → Test Design → Tasks)\n- **Real-Time Web Dashboard** - Monitor specs, tasks, and progress with live updates\n- **VSCode Extension** - Integrated sidebar dashboard for VSCode users\n- **Approval Workflow** - Complete approval process with revisions\n- **Task Progress Tracking** - Visual progress bars and detailed status\n- **Implementation Logs** - Searchable logs of all task implementations with code statistics\n- **CI/CD Generation** - `/setup-ci` generates 5 GitHub Actions workflow files (ci, e2e, scheduled-quality, dependabot, release)\n- **Multi-Language Support** - Available in 11 languages\n\n## 🌍 Supported Languages\n\n🇺🇸 English • 🇯🇵 日本語 • 🇨🇳 中文 • 🇪🇸 Español • 🇧🇷 Português • 🇩🇪 Deutsch • 🇫🇷 Français • 🇷🇺 Русский • 🇮🇹 Italiano • 🇰🇷 한국어 • 🇸🇦 العربية\n\n**📖 Documentation in your language:**\n\n[English](README.md) | [日本語](README.ja.md) | [中文](README.zh.md) | [Español](README.es.md) | [Português](README.pt.md) | [Deutsch](README.de.md) | [Français](README.fr.md) | [Русский](README.ru.md) | [Italiano](README.it.md) | [한국어](README.ko.md) | [العربية](README.ar.md)\n\n## 🚀 Quick Start\n\n### Option 1: Claude Code Plugin (Recommended for Claude Code users)\n\nInstall directly as a Claude Code plugin — skills, agents, rules, hooks, and MCP server are all configured automatically:\n\n```bash\nclaude plugin add --from https://github.com/arimakouyou/spec-workflow-mcp\n```\n\nTwo plugin variants are available:\n\n| Plugin | Description |\n|--------|-------------|\n| `spec-workflow-mcp` | Full plugin — MCP server + 32 skills + 8 agents + rules + hooks (recommended) |\n| `spec-workflow-mcp-with-dashboard` | MCP server only — skills/agents/rules/hooks なし（手動 MCP 構成用の軽量版） |\n\n> **Note**: `spec-workflow-mcp-with-dashboard` は名称に反して軽量版です（MCP サーバーのみ）。名称は「MCP + Dashboard の手動構成」を意味します。Dashboard は別途起動が必要です: `npx -y @arimakouyou/spec-workflow-mcp@latest --dashboard`。フルプラグインが推奨です。\n\n> **What the plugin includes:**\n> - MCP server for spec-driven development workflow\n> - Skills: spec-request-spec, spec-requirements, spec-design, spec-test-design, spec-tasks, spec-implement, spec-review, integration-test, TDD, and more\n> - Agents: code-simplifier, review-worker, unit-test-engineer, frontend-test-engineer, parallel-worker, etc.\n> - Rules: project architecture, quality checks, security, design principles, etc.\n> - Hooks: automated task read guards\n\n### Option 2: Manual MCP Configuration\n\nAdd to your MCP configuration (see client-specific setup below):\n\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n\n### Step 2: Choose your interface\n\n**Option A: Web Dashboard** (Required for CLI users)\nStart the dashboard (runs on port 5000 by default):\n```bash\nnpx -y @arimakouyou/spec-workflow-mcp@latest --dashboard\n```\n\nThe dashboard will be accessible at: http://localhost:5000\n\n> **Note:** Only one dashboard instance is needed. All your projects will connect to the same dashboard.\n\n**Option B: VSCode Extension** (Recommended for VSCode users)\n\nInstall [Spec Workflow MCP Extension](https://marketplace.visualstudio.com/items?itemName=arimakouyou.spec-workflow-mcp) from the VSCode marketplace.\n\n## 📝 How to Use\n\nSimply mention spec-workflow in your conversation:\n\n- **\"Create a spec for user authentication\"** - Creates complete spec workflow\n- **\"List my specs\"** - Shows all specs and their status\n- **\"Execute task 1.2 in spec user-auth\"** - Runs a specific task\n\n[See more examples →](docs/PROMPTING-GUIDE.md)\n\n## 🔧 MCP Client Setup\n\n<details>\n<summary><strong>Augment Code</strong></summary>\n\nConfigure in your Augment settings:\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>Claude Code CLI</strong></summary>\n\nAdd to your MCP configuration:\n```bash\nclaude mcp add spec-workflow npx @arimakouyou/spec-workflow-mcp@latest -- /path/to/your/project\n```\n\n**Important Notes:**\n- The `-y` flag bypasses npm prompts for smoother installation\n- The `--` separator ensures the path is passed to the spec-workflow script, not to npx\n- Replace `/path/to/your/project` with your actual project directory path\n\n**Alternative for Windows (if the above doesn't work):**\n```bash\nclaude mcp add spec-workflow cmd.exe /c \"npx @arimakouyou/spec-workflow-mcp@latest /path/to/your/project\"\n```\n</details>\n\n<details>\n<summary><strong>Claude Desktop</strong></summary>\n\nAdd to `claude_desktop_config.json`:\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n\n> **Important:** Run the dashboard separately with `--dashboard` before starting the MCP server.\n\n</details>\n\n<details>\n<summary><strong>Cline/Claude Dev</strong></summary>\n\nAdd to your MCP server configuration:\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>Continue IDE Extension</strong></summary>\n\nAdd to your Continue configuration:\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>Cursor IDE</strong></summary>\n\nAdd to your Cursor settings (`settings.json`):\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>OpenCode</strong></summary>\n\nAdd to your `opencode.json` configuration file:\n```json\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"mcp\": {\n    \"spec-workflow\": {\n      \"type\": \"local\",\n      \"command\": [\"npx\", \"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"],\n      \"enabled\": true\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>Windsurf</strong></summary>\n\nAdd to your `~/.codeium/windsurf/mcp_config.json` configuration file:\n```json\n{\n  \"mcpServers\": {\n    \"spec-workflow\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><strong>Codex</strong></summary>\n\nAdd to your `~/.codex/config.toml` configuration file:\n```toml\n[mcp_servers.spec-workflow]\ncommand = \"npx\"\nargs = [\"-y\", \"@arimakouyou/spec-workflow-mcp@latest\", \"/path/to/your/project\"]\n```\n</details>\n\n## 🐳 Docker Deployment\n\nRun the dashboard in a Docker container for isolated deployment:\n\n```bash\n# Using Docker Compose (recommended)\ncd containers\ndocker-compose up --build\n\n# Or using Docker CLI\ndocker build -f containers/Dockerfile -t spec-workflow-mcp .\ndocker run -p 5000:5000 -v \"./workspace/.spec-workflow:/workspace/.spec-workflow:rw\" spec-workflow-mcp\n```\n\nThe dashboard will be available at: http://localhost:5000\n\n[See Docker setup guide →](containers/README.md)\n\n## 🔒 Security\n\nSpec-Workflow MCP includes enterprise-grade security features suitable for corporate environments:\n\n### ✅ Implemented Security Controls\n\n| Feature | Description |\n|---------|-------------|\n| **Localhost Binding** | Binds to `127.0.0.1` by default, preventing network exposure |\n| **Rate Limiting** | 120 requests/minute per client with automatic cleanup |\n| **Audit Logging** | Structured JSON logs with timestamp, actor, action, and result |\n| **Security Headers** | X-Content-Type-Options, X-Frame-Options, X-XSS-Protection, CSP, Referrer-Policy |\n| **CORS Protection** | Restricted to localhost origins by default |\n| **Docker Hardening** | Non-root user, read-only filesystem, dropped capabilities, resource limits |\n\n### ⚠️ Not Yet Implemented\n\n| Feature | Workaround |\n|---------|------------|\n| **HTTPS/TLS** | Use a reverse proxy (nginx, Apache) with TLS certificates |\n| **User Authentication** | Use a reverse proxy with Basic Auth or OAuth2 Proxy for SSO |\n\n### For External/Network Access\n\nIf you need to expose the dashboard beyond localhost, we recommend:\n\n1. **Keep dashboard on localhost** (`127.0.0.1`)\n2. **Use nginx or Apache** as a reverse proxy with:\n   - TLS/HTTPS termination\n   - Basic authentication or OAuth2\n3. **Configure firewall rules** to restrict access\n\n```nginx\n# Example nginx reverse proxy with auth\nserver {\n    listen 443 ssl;\n    server_name dashboard.example.com;\n    \n    ssl_certificate /path/to/cert.pem;\n    ssl_certificate_key /path/to/key.pem;\n    \n    auth_basic \"Dashboard Access\";\n    auth_basic_user_file /etc/nginx/.htpasswd;\n    \n    location / {\n        proxy_pass http://127.0.0.1:5000;\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n    }\n}\n```\n\n[See Docker security guide →](containers/README.md#security-configuration)\n\n## 🔒 Sandboxed Environments\n\nFor sandboxed environments (e.g., Codex CLI with `sandbox_mode=workspace-write`) where `$HOME` is read-only, use the `SPEC_WORKFLOW_HOME` environment variable to redirect global state files to a writable location:\n\n```bash\nSPEC_WORKFLOW_HOME=/workspace/.spec-workflow-mcp npx -y @arimakouyou/spec-workflow-mcp@latest /workspace\n```\n\n[See Configuration Guide →](docs/CONFIGURATION.md#environment-variables)\n\n## 📚 Documentation\n\n- [Configuration Guide](docs/CONFIGURATION.md) - Command-line options, config files\n- [User Guide](docs/USER-GUIDE.md) - Comprehensive usage examples\n- [Workflow Process](docs/WORKFLOW.md) - Development workflow and best practices\n- [Interfaces Guide](docs/INTERFACES.md) - Dashboard and VSCode extension details\n- [Prompting Guide](docs/PROMPTING-GUIDE.md) - Advanced prompting examples\n- [Tools Reference](docs/TOOLS-REFERENCE.md) - Complete tools documentation\n- [Development](docs/DEVELOPMENT.md) - Contributing and development setup\n- [Troubleshooting](docs/TROUBLESHOOTING.md) - Common issues and solutions\n\n## 📁 Project Structure\n\n### Working Directory (per project)\n\n```\nyour-project/\n  .spec-workflow/\n    approvals/\n    archive/\n    specs/\n    steering/\n    templates/\n    user-templates/\n    config.example.toml\n```\n\n### Plugin Structure (distributed via `.claude-plugin/`)\n\n```\n.claude-plugin/\n  plugin.json              # Plugin manifest\n  marketplace.json         # Marketplace listing\n  .mcp.json                # MCP server configuration\n  hooks/\n    hooks.json             # Hook definitions (PostToolUse, etc.)\n    tasks-read-guard.sh    # Task read guard script\n  skills/                  # Spec-driven workflow skills\n    spec-requirements/     # Requirements creation\n    spec-design/           # Design document creation\n    spec-test-design/      # Test design creation\n    spec-tasks/            # Task breakdown\n    spec-implement/        # Implementation workflow\n    spec-review/           # Code review\n    integration-test/      # Integration testing\n    tdd-skills/            # TDD workflow\n    tdd-skills-rust/       # Rust-specific TDD\n    knowhow-capture/       # Knowledge capture\n  agents/                  # Specialized sub-agents\n    code-simplifier.md     # Code simplification\n    review-worker.md       # Review automation\n    unit-test-engineer.md  # Rust unit test generation\n    frontend-test-engineer.md # Leptos frontend test generation\n    parallel-worker.md     # Parallel task execution\n    integ-test-worker.md   # Integration test worker\n    integ-test-auditor.md  # Integration test auditor\n  rules/                   # Project rules and conventions\n    quality-checks.md      # Quality enforcement\n    security.md            # Security guidelines\n    design-principles.md   # Design principles\n    ...\n  with-dashboard/          # Dashboard variant plugin\n    plugin.json\n    .mcp.json\n```\n\n## 🛠️ Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Build the project\nnpm run build\n\n# Run in development mode\nnpm run dev\n```\n\n[See development guide →](docs/DEVELOPMENT.md)\n\n## 📄 License\n\nGPL-3.0\n\n## ⭐ Star History\n\n<a href=\"https://www.star-history.com/#arimakouyou/spec-workflow-mcp&Date\">\n <picture>\n   <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/svg?repos=arimakouyou/spec-workflow-mcp&type=Date&theme=dark\" />\n   <source media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/svg?repos=arimakouyou/spec-workflow-mcp&type=Date\" />\n   <img alt=\"Star History Chart\" src=\"https://api.star-history.com/svg?repos=arimakouyou/spec-workflow-mcp&type=Date\" />\n </picture>\n</a>\n","readmeFilename":"README.md"}