{"_id":"@deepseek-ai/dsh-plan-mode","_rev":"6052448-6a7db555614bc25c8f113ca0","dist-tags":{"latest":"0.0.1-rc.1","next":"0.1.1-rc.2"},"name":"@deepseek-ai/dsh-plan-mode","time":{"created":"2026-08-13T12:15:17.402Z","modified":"2026-08-21T12:35:18.342Z","0.0.1-rc.1":"2026-08-10T19:35:35.142Z","0.1.0-rc.3":"2026-08-13T11:04:33.841Z","0.1.0-rc.2":"2026-08-13T09:37:36.689Z","0.1.0-rc.6":"2026-08-13T12:14:56.140Z","0.0.1-rc.5":"2026-08-12T22:29:39.882Z","0.0.1-rc.3":"2026-08-12T20:32:09.783Z","0.0.1-rc.2":"2026-08-11T15:17:20.969Z","0.1.0-rc.7":"2026-08-17T11:41:14.719Z","0.1.0-rc.8":"2026-08-19T15:33:43.870Z","0.1.1-rc.1":"2026-08-21T06:41:56.681Z","0.1.1-rc.2":"2026-08-21T12:35:02.746Z"},"versions":{"0.0.1-rc.1":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.0.1-rc.1","license":"BSD-3-Clause","_id":"@deepseek-ai/dsh-plan-mode@0.0.1-rc.1","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"be969adac8e9f70914f27efcbbe364ae34342c0f","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.0.1-rc.1.tgz","fileCount":15,"integrity":"sha512-TAfMZsC4y7C8pM0AZ97gp18/DNF8OHC/v8hZUI7IVB3WCNnsTRWORYnGnO5PhagadMTZXQoWFnxwyEB+nBH8sQ==","signatures":[{"sig":"MEUCIDD0OanyKM1obKBakjYTB4uzaLIxt26Y7Upw/T/SahrqAiEA74lVQNg0KMn3s/p9sSuipL1QJSSNuZI57/3QuA10o2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66871,"size":19939},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.1.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.1.tgz","_integrity":"sha512-TAfMZsC4y7C8pM0AZ97gp18/DNF8OHC/v8hZUI7IVB3WCNnsTRWORYnGnO5PhagadMTZXQoWFnxwyEB+nBH8sQ==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"devDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.1","@deepseek-ai/dsh-agent":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-commands":"^0.0.1-rc.1","@deepseek-ai/dsh-agent-loop":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1","@deepseek-ai/dsh-code-runtime":"^0.0.1-rc.1","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.1","@deepseek-ai/dsh-user-interaction":"^0.0.1-rc.1","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.1","@deepseek-ai/dsh-agent":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@deepseek-ai/dsh-session":"^0.0.1-rc.1","@deepseek-ai/dsh-commands":"^0.0.1-rc.1","@deepseek-ai/dsh-invariants":"^0.0.1-rc.1","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.1","@deepseek-ai/dsh-user-interaction":"^0.0.1-rc.1","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.1"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.0.1-rc.1_1786390534957_0.5026204048052676","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-10T19:35:35.142Z","publish_time":1786390535142,"_source_registry_name":"default"},"0.1.0-rc.3":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.1.0-rc.3","license":"MIT","_id":"@deepseek-ai/dsh-plan-mode@0.1.0-rc.3","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"6c25e7caddad4934b71ad2da2afd6d349058fdbd","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.0-rc.3.tgz","fileCount":15,"integrity":"sha512-3V7MMaV5YhoV08fw2utLDHz3higFMLD807dww/KK0ShjQcmaufg4ndAh8WOCyOW95H6xUVF4QD9uImNTWJX+Ew==","signatures":[{"sig":"MEUCIFUfoSax2kPEQZ20FXnNhwP+mov52OBm0fY8/GXf0mECAiEA2LHkwGIS9WriClwIu6CjZsBztlMTgjAQtKl2BZ2nBng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66393,"size":19743},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.3.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.3.tgz","_integrity":"sha512-3V7MMaV5YhoV08fw2utLDHz3higFMLD807dww/KK0ShjQcmaufg4ndAh8WOCyOW95H6xUVF4QD9uImNTWJX+Ew==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"readmeFilename":"README.zh.md","devDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-llm":"^0.1.0-rc.3","@deepseek-ai/dsh-agent":"^0.1.0-rc.3","@deepseek-ai/dsh-tools":"^0.1.0-rc.3","@deepseek-ai/dsh-session":"^0.1.0-rc.3","@deepseek-ai/dsh-commands":"^0.1.0-rc.3","@deepseek-ai/dsh-agent-loop":"^0.1.0-rc.3","@deepseek-ai/dsh-invariants":"^0.1.0-rc.3","@deepseek-ai/dsh-code-runtime":"^0.1.0-rc.3","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.3","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.3","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.3"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-llm":"^0.1.0-rc.3","@deepseek-ai/dsh-agent":"^0.1.0-rc.3","@deepseek-ai/dsh-tools":"^0.1.0-rc.3","@deepseek-ai/dsh-session":"^0.1.0-rc.3","@deepseek-ai/dsh-commands":"^0.1.0-rc.3","@deepseek-ai/dsh-invariants":"^0.1.0-rc.3","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.3","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.3","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.3"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.1.0-rc.3_1786619073687_0.5225464521886487","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-13T11:04:33.841Z","publish_time":1786619073841,"_source_registry_name":"default"},"0.1.0-rc.2":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.1.0-rc.2","license":"MIT","_id":"@deepseek-ai/dsh-plan-mode@0.1.0-rc.2","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"57fedd42a2145b0d9c889b049778152d53781540","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.0-rc.2.tgz","fileCount":15,"integrity":"sha512-NYSSxozUyhH6v2dbX4D9grBuZ0awyoYGIVkAYwNvkI+j9qbP/Zbxvv2LW2ypyaZqTUdICIq58L4ysbOx66BrSQ==","signatures":[{"sig":"MEUCIDqXpbkX4vga3ONKeuMZRv8eHUyHnJ0rS4oZVeVxNL9WAiEAmHMd+ShJk7aYmw4wZprSC/5AEkQ/rBWUZkUy85tmm6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66393,"size":19748},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.2.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.2.tgz","_integrity":"sha512-NYSSxozUyhH6v2dbX4D9grBuZ0awyoYGIVkAYwNvkI+j9qbP/Zbxvv2LW2ypyaZqTUdICIq58L4ysbOx66BrSQ==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"readmeFilename":"README.zh.md","devDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-llm":"^0.1.0-rc.2","@deepseek-ai/dsh-agent":"^0.1.0-rc.2","@deepseek-ai/dsh-tools":"^0.1.0-rc.2","@deepseek-ai/dsh-session":"^0.1.0-rc.2","@deepseek-ai/dsh-commands":"^0.1.0-rc.2","@deepseek-ai/dsh-agent-loop":"^0.1.0-rc.2","@deepseek-ai/dsh-invariants":"^0.1.0-rc.2","@deepseek-ai/dsh-code-runtime":"^0.1.0-rc.2","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.2","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.2","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.2"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-llm":"^0.1.0-rc.2","@deepseek-ai/dsh-agent":"^0.1.0-rc.2","@deepseek-ai/dsh-tools":"^0.1.0-rc.2","@deepseek-ai/dsh-session":"^0.1.0-rc.2","@deepseek-ai/dsh-commands":"^0.1.0-rc.2","@deepseek-ai/dsh-invariants":"^0.1.0-rc.2","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.2","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.2","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.2"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.1.0-rc.2_1786613856526_0.0874738558199688","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-13T09:37:36.689Z","publish_time":1786613856689,"_source_registry_name":"default"},"0.1.0-rc.6":{"name":"@deepseek-ai/dsh-plan-mode","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","version":"0.1.0-rc.6","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"packages/plan/plan-mode"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.1.0-rc.6","@deepseek-ai/dsh-commands":"^0.1.0-rc.6","@deepseek-ai/dsh-invariants":"^0.1.0-rc.6","@deepseek-ai/dsh-llm":"^0.1.0-rc.6","@deepseek-ai/dsh-session":"^0.1.0-rc.6","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.6","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.6","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.6","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-tools":"^0.1.0-rc.6"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"dependencies":{"zod":"^4.4.3"},"devDependencies":{"@deepseek-ai/dsh-agent":"^0.1.0-rc.6","@deepseek-ai/dsh-agent-loop":"^0.1.0-rc.6","@deepseek-ai/dsh-code-runtime":"^0.1.0-rc.6","@deepseek-ai/dsh-commands":"^0.1.0-rc.6","@deepseek-ai/dsh-llm":"^0.1.0-rc.6","@deepseek-ai/dsh-invariants":"^0.1.0-rc.6","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.6","@deepseek-ai/dsh-tools":"^0.1.0-rc.6","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.6","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.6","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"^0.1.0-rc.6"},"readmeFilename":"README.zh.md","_id":"@deepseek-ai/dsh-plan-mode@0.1.0-rc.6","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-kabVmxbdjLSJkY3bM0s+VuDBuIhPNvKdW8CHXz/UmpQfm2KNfrS46+EEgDgRnz2xFxfAGLcV9KFm0iDEksE22A==","_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.6.tgz","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.6.tgz","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-kabVmxbdjLSJkY3bM0s+VuDBuIhPNvKdW8CHXz/UmpQfm2KNfrS46+EEgDgRnz2xFxfAGLcV9KFm0iDEksE22A==","shasum":"5f6950e719b33e9536c2e61427cf745de67845b8","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.0-rc.6.tgz","fileCount":15,"unpackedSize":66389,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEEq9rHaeeJtTICaVIZaz8GiTUcFWvwP+yy9vNknJdAeAiEAyIyUhyVlrpKKhJC2c44m40Cmb5lQqf4j5KI2GQYjlmE="}],"size":19747},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"directories":{},"maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plan-mode_0.1.0-rc.6_1786623295977_0.5811821592276705"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-08-13T12:14:56.140Z","publish_time":1786623296140,"_source_registry_name":"default"},"0.0.1-rc.5":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.0.1-rc.5","license":"BSD-3-Clause","_id":"@deepseek-ai/dsh-plan-mode@0.0.1-rc.5","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"063f912672f8f5a52f5017064904ac4a49cfa8d0","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.0.1-rc.5.tgz","fileCount":15,"integrity":"sha512-Mx/ZbtRiSYiaz246e5YSG6/jyFlcFsH427VDCsMngNxtgVRPgNDPNxV8ZBEils5tDoBL1yVwE9upDhkktRlSyQ==","signatures":[{"sig":"MEUCIAHlGKYgSsLWOduLT4G+UKuxb+hVdVTNi1mxDkcGvtWAAiEA2ysPrNM8XBytnZ+GADkYTPXX2broIZLxUWDIl+Dp47A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66842,"size":19931},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.5.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.5.tgz","_integrity":"sha512-Mx/ZbtRiSYiaz246e5YSG6/jyFlcFsH427VDCsMngNxtgVRPgNDPNxV8ZBEils5tDoBL1yVwE9upDhkktRlSyQ==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"readmeFilename":"README.zh.md","devDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.4","@deepseek-ai/dsh-llm":"^0.0.1-rc.5","@deepseek-ai/dsh-agent":"^0.0.1-rc.5","@deepseek-ai/dsh-tools":"^0.0.1-rc.5","@deepseek-ai/dsh-session":"^0.0.1-rc.5","@deepseek-ai/dsh-commands":"^0.0.1-rc.5","@deepseek-ai/dsh-agent-loop":"^0.0.1-rc.5","@deepseek-ai/dsh-invariants":"^0.0.1-rc.5","@deepseek-ai/dsh-code-runtime":"^0.0.1-rc.5","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.5","@deepseek-ai/dsh-user-questions":"^0.0.1-rc.5","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.5"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.4","@deepseek-ai/dsh-llm":"^0.0.1-rc.5","@deepseek-ai/dsh-agent":"^0.0.1-rc.5","@deepseek-ai/dsh-tools":"^0.0.1-rc.5","@deepseek-ai/dsh-session":"^0.0.1-rc.5","@deepseek-ai/dsh-commands":"^0.0.1-rc.5","@deepseek-ai/dsh-invariants":"^0.0.1-rc.5","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.5","@deepseek-ai/dsh-user-questions":"^0.0.1-rc.5","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.5"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.0.1-rc.5_1786573779730_0.9751948228474827","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-12T22:29:39.882Z","publish_time":1786573779882,"_source_registry_name":"default"},"0.0.1-rc.3":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.0.1-rc.3","license":"BSD-3-Clause","_id":"@deepseek-ai/dsh-plan-mode@0.0.1-rc.3","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"38ce52854068e50cd3571b6959f9c508188705ef","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.0.1-rc.3.tgz","fileCount":15,"integrity":"sha512-MeV4BorfT8Gk4GUWUwgLxjtYU6vP0SexjuwX9kgsahlUzAtEuzuzlzogQaWs9zTzVe8alylu0NuoKJO9eIP3yQ==","signatures":[{"sig":"MEUCIQDUjmXpwACVocqxukmZyPUIDJpaYQRn0RGYeCFrQXdqVQIgQpUWmdM8ND+yHZc7kHj3YfEEP+4EVQcUJ/z7gsijEu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66842,"size":19937},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.3.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.3.tgz","_integrity":"sha512-MeV4BorfT8Gk4GUWUwgLxjtYU6vP0SexjuwX9kgsahlUzAtEuzuzlzogQaWs9zTzVe8alylu0NuoKJO9eIP3yQ==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"readmeFilename":"README.zh.md","devDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.3","@deepseek-ai/dsh-agent":"^0.0.1-rc.3","@deepseek-ai/dsh-tools":"^0.0.1-rc.3","@deepseek-ai/dsh-session":"^0.0.1-rc.3","@deepseek-ai/dsh-commands":"^0.0.1-rc.3","@deepseek-ai/dsh-agent-loop":"^0.0.1-rc.3","@deepseek-ai/dsh-invariants":"^0.0.1-rc.3","@deepseek-ai/dsh-code-runtime":"^0.0.1-rc.3","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.3","@deepseek-ai/dsh-user-questions":"^0.0.1-rc.3","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.3"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.3","@deepseek-ai/dsh-agent":"^0.0.1-rc.3","@deepseek-ai/dsh-tools":"^0.0.1-rc.3","@deepseek-ai/dsh-session":"^0.0.1-rc.3","@deepseek-ai/dsh-commands":"^0.0.1-rc.3","@deepseek-ai/dsh-invariants":"^0.0.1-rc.3","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.3","@deepseek-ai/dsh-user-questions":"^0.0.1-rc.3","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.3"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.0.1-rc.3_1786566729609_0.5969128025837305","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-12T20:32:09.783Z","publish_time":1786566729783,"_source_registry_name":"default"},"0.0.1-rc.2":{"name":"@deepseek-ai/dsh-plan-mode","version":"0.0.1-rc.2","license":"BSD-3-Clause","_id":"@deepseek-ai/dsh-plan-mode@0.0.1-rc.2","maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"dist":{"shasum":"21c95e3d6cf897355715210a1ef4cba948bfadac","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.0.1-rc.2.tgz","fileCount":15,"integrity":"sha512-bUGOf4UyxxIG7AXpjfdpruOcFuvzhhrasNwG5QBzPiByyDdTYrU1l2zjB7BdQ428L8OAfHo9ratSmvSE6KgOAg==","signatures":[{"sig":"MEUCIGKrPr5nWboZ8YdNVgFkkdU2fpHjrqAO9jPiqUYG9SOtAiEA5jJz1/2Ogj5NMi5vp6arFDs0cRc2c5ZflaqDqXdK+ss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66875,"size":19950},"main":"lib/index.js","type":"module","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.2.tgz","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.0.1-rc.2.tgz","_integrity":"sha512-bUGOf4UyxxIG7AXpjfdpruOcFuvzhhrasNwG5QBzPiByyDdTYrU1l2zjB7BdQ428L8OAfHo9ratSmvSE6KgOAg==","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_npmVersion":"11.16.0","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3"},"publishConfig":{"access":"restricted"},"_hasShrinkwrap":false,"readmeFilename":"README.zh.md","devDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.2","@deepseek-ai/dsh-agent":"^0.0.1-rc.2","@deepseek-ai/dsh-tools":"^0.0.1-rc.2","@deepseek-ai/dsh-session":"^0.0.1-rc.2","@deepseek-ai/dsh-commands":"^0.0.1-rc.2","@deepseek-ai/dsh-agent-loop":"^0.0.1-rc.2","@deepseek-ai/dsh-invariants":"^0.0.1-rc.2","@deepseek-ai/dsh-code-runtime":"^0.0.1-rc.2","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.2","@deepseek-ai/dsh-user-interaction":"^0.0.1-rc.2","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.2"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1-rc.1","@deepseek-ai/dsh-llm":"^0.0.1-rc.2","@deepseek-ai/dsh-agent":"^0.0.1-rc.2","@deepseek-ai/dsh-tools":"^0.0.1-rc.2","@deepseek-ai/dsh-session":"^0.0.1-rc.2","@deepseek-ai/dsh-commands":"^0.0.1-rc.2","@deepseek-ai/dsh-invariants":"^0.0.1-rc.2","@deepseek-ai/dsh-system-prompt":"^0.0.1-rc.2","@deepseek-ai/dsh-user-interaction":"^0.0.1-rc.2","@deepseek-ai/dsh-session-projection":"^0.0.1-rc.2"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-plan-mode_0.0.1-rc.2_1786461440812_0.6402282169843587","host":"s3://npm-registry-packages-npm-production"},"_cnpmcore_publish_time":"2026-08-11T15:17:20.969Z","publish_time":1786461440969,"_source_registry_name":"default"},"0.1.0-rc.7":{"name":"@deepseek-ai/dsh-plan-mode","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","version":"0.1.0-rc.7","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"packages/plan/plan-mode"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.1.0-rc.7","@deepseek-ai/dsh-commands":"^0.1.0-rc.7","@deepseek-ai/dsh-invariants":"^0.1.0-rc.7","@deepseek-ai/dsh-llm":"^0.1.0-rc.7","@deepseek-ai/dsh-session":"^0.1.0-rc.7","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.7","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.7","@deepseek-ai/dsh-tools":"^0.1.0-rc.7","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.7","@deepseek-ai/cordis":"^4.0.1"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"dependencies":{"zod":"^4.4.3"},"devDependencies":{"@deepseek-ai/dsh-agent":"^0.1.0-rc.7","@deepseek-ai/dsh-agent-loop":"^0.1.0-rc.7","@deepseek-ai/dsh-code-runtime":"^0.1.0-rc.7","@deepseek-ai/dsh-commands":"^0.1.0-rc.7","@deepseek-ai/dsh-invariants":"^0.1.0-rc.7","@deepseek-ai/dsh-llm":"^0.1.0-rc.7","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.7","@deepseek-ai/dsh-session":"^0.1.0-rc.7","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.7","@deepseek-ai/dsh-tools":"^0.1.0-rc.7","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.7"},"readmeFilename":"README.zh.md","_id":"@deepseek-ai/dsh-plan-mode@0.1.0-rc.7","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-VXUxBvmZ9PYinVbYsu7GmT8BZMXCfAbqExNMoR4RoZm+leOLzZOkWOKea9THoJwIik0lUbAO5lzrqaeVKa99Dw==","_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.7.tgz","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.7.tgz","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-VXUxBvmZ9PYinVbYsu7GmT8BZMXCfAbqExNMoR4RoZm+leOLzZOkWOKea9THoJwIik0lUbAO5lzrqaeVKa99Dw==","shasum":"54fbfc8d7430a566684958a6f8cbd191214c0dd6","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.0-rc.7.tgz","fileCount":15,"unpackedSize":66389,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBvBKqJRYAWS81VzEPgVGzDmXIwptD2NveuPrSUWX1z3AiEA8BqLxwRxprvW6iUiNl4iElz5c2lqdLxBdmU9VlVJ16Y="}],"size":19740},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"directories":{},"maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plan-mode_0.1.0-rc.7_1786966874567_0.3823396652477371"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-08-17T11:41:14.719Z","publish_time":1786966874719,"_source_registry_name":"default"},"0.1.0-rc.8":{"name":"@deepseek-ai/dsh-plan-mode","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","version":"0.1.0-rc.8","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"packages/plan/plan-mode"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.1.0-rc.8","@deepseek-ai/dsh-llm":"^0.1.0-rc.8","@deepseek-ai/dsh-commands":"^0.1.0-rc.8","@deepseek-ai/dsh-session":"^0.1.0-rc.8","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.8","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.8","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-invariants":"^0.1.0-rc.8"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"dependencies":{"zod":"^4.4.3"},"devDependencies":{"@deepseek-ai/dsh-agent-loop":"^0.1.0-rc.8","@deepseek-ai/dsh-agent":"^0.1.0-rc.8","@deepseek-ai/dsh-code-runtime":"^0.1.0-rc.8","@deepseek-ai/dsh-commands":"^0.1.0-rc.8","@deepseek-ai/dsh-invariants":"^0.1.0-rc.8","@deepseek-ai/dsh-llm":"^0.1.0-rc.8","@deepseek-ai/dsh-session-projection":"^0.1.0-rc.8","@deepseek-ai/dsh-session":"^0.1.0-rc.8","@deepseek-ai/dsh-system-prompt":"^0.1.0-rc.8","@deepseek-ai/dsh-user-questions":"^0.1.0-rc.8","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-tools":"^0.1.0-rc.8"},"readmeFilename":"README.zh.md","_id":"@deepseek-ai/dsh-plan-mode@0.1.0-rc.8","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-/SY/iil7KLDvveqKRUZxO4HiADwDlOX9u3xyG/93h785mWSfRXooiv4Zp2tiBjU+pJB0tJXMsQNAXDdg7DWtwA==","_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.8.tgz","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.0-rc.8.tgz","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-/SY/iil7KLDvveqKRUZxO4HiADwDlOX9u3xyG/93h785mWSfRXooiv4Zp2tiBjU+pJB0tJXMsQNAXDdg7DWtwA==","shasum":"ec679f21c0adea3702cc25326fa99182f66eecce","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.0-rc.8.tgz","fileCount":15,"unpackedSize":69078,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCN3ShsZkg4uTtKNHVl0JHFlZUeVcOMsMyIQIglWxzfSgIgabFB0YXrA6ylG+zQgu2NBx4Kp4hzK6ZyFfK9I5tdSSE="}],"size":20427},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"directories":{},"maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plan-mode_0.1.0-rc.8_1787153623736_0.40299118462336536"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-08-19T15:33:43.870Z","publish_time":1787153623870,"_source_registry_name":"default"},"0.1.1-rc.1":{"name":"@deepseek-ai/dsh-plan-mode","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","version":"0.1.1-rc.1","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"packages/plan/plan-mode"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.1.1-rc.1","@deepseek-ai/dsh-commands":"^0.1.1-rc.1","@deepseek-ai/dsh-session":"^0.1.1-rc.1","@deepseek-ai/dsh-llm":"^0.1.1-rc.1","@deepseek-ai/dsh-invariants":"^0.1.1-rc.1","@deepseek-ai/dsh-session-projection":"^0.1.1-rc.1","@deepseek-ai/dsh-system-prompt":"^0.1.1-rc.1","@deepseek-ai/dsh-tools":"^0.1.1-rc.1","@deepseek-ai/dsh-user-questions":"^0.1.1-rc.1","@deepseek-ai/cordis":"^4.0.1"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"dependencies":{"zod":"^4.4.3"},"devDependencies":{"@deepseek-ai/dsh-code-runtime":"^0.1.1-rc.1","@deepseek-ai/dsh-agent":"^0.1.1-rc.1","@deepseek-ai/dsh-invariants":"^0.1.1-rc.1","@deepseek-ai/dsh-llm":"^0.1.1-rc.1","@deepseek-ai/dsh-commands":"^0.1.1-rc.1","@deepseek-ai/dsh-session":"^0.1.1-rc.1","@deepseek-ai/dsh-session-projection":"^0.1.1-rc.1","@deepseek-ai/dsh-agent-loop":"^0.1.1-rc.1","@deepseek-ai/dsh-system-prompt":"^0.1.1-rc.1","@deepseek-ai/dsh-tools":"^0.1.1-rc.1","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-user-questions":"^0.1.1-rc.1"},"readmeFilename":"README.zh.md","_id":"@deepseek-ai/dsh-plan-mode@0.1.1-rc.1","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-VtmkzVxwYShRNrkN/1cdLIFaph2vQbm7o5/8hK3elXVYOTd4Y0q3H3LduPMmu1Ejnj5trDYqUTZ2A+vPob5ZzQ==","_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.1-rc.1.tgz","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.1-rc.1.tgz","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-VtmkzVxwYShRNrkN/1cdLIFaph2vQbm7o5/8hK3elXVYOTd4Y0q3H3LduPMmu1Ejnj5trDYqUTZ2A+vPob5ZzQ==","shasum":"a1d074b110dd0fdb35bd8a6e0b83e8123cc1c133","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.1-rc.1.tgz","fileCount":15,"unpackedSize":70555,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDMz1yJUojG931h+c57LCJ2OOC23FSrTFpfw9mZvu9q2wIhAKVWggTuxs+yVRt1HOiOGTfBQhYXH4nNX052FP+N5sEU"}],"size":20870},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"directories":{},"maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plan-mode_0.1.1-rc.1_1787294516542_0.41905237798447703"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-08-21T06:41:56.681Z","publish_time":1787294516681,"_source_registry_name":"default"},"0.1.1-rc.2":{"name":"@deepseek-ai/dsh-plan-mode","description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","version":"0.1.1-rc.2","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"packages/plan/plan-mode"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./types":{"types":"./lib/types/types.d.ts","default":"./lib/types/types.js"},"./client":{"types":"./lib/types/client.d.ts","default":"./lib/types/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","peerDependencies":{"@deepseek-ai/dsh-agent":"^0.1.1-rc.2","@deepseek-ai/dsh-commands":"^0.1.1-rc.2","@deepseek-ai/dsh-invariants":"^0.1.1-rc.2","@deepseek-ai/dsh-llm":"^0.1.1-rc.2","@deepseek-ai/dsh-session":"^0.1.1-rc.2","@deepseek-ai/dsh-session-projection":"^0.1.1-rc.2","@deepseek-ai/dsh-system-prompt":"^0.1.1-rc.2","@deepseek-ai/dsh-tools":"^0.1.1-rc.2","@deepseek-ai/dsh-user-questions":"^0.1.1-rc.2","@deepseek-ai/cordis":"^4.0.1"},"peerDependenciesMeta":{"@deepseek-ai/dsh-commands":{"optional":true}},"dependencies":{"zod":"^4.4.3"},"devDependencies":{"@deepseek-ai/dsh-agent":"^0.1.1-rc.2","@deepseek-ai/dsh-agent-loop":"^0.1.1-rc.2","@deepseek-ai/dsh-code-runtime":"^0.1.1-rc.2","@deepseek-ai/dsh-commands":"^0.1.1-rc.2","@deepseek-ai/dsh-invariants":"^0.1.1-rc.2","@deepseek-ai/dsh-llm":"^0.1.1-rc.2","@deepseek-ai/dsh-session":"^0.1.1-rc.2","@deepseek-ai/dsh-session-projection":"^0.1.1-rc.2","@deepseek-ai/dsh-system-prompt":"^0.1.1-rc.2","@deepseek-ai/dsh-tools":"^0.1.1-rc.2","@deepseek-ai/dsh-user-questions":"^0.1.1-rc.2","@deepseek-ai/cordis":"^4.0.1"},"readmeFilename":"README.zh.md","_id":"@deepseek-ai/dsh-plan-mode@0.1.1-rc.2","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-jIQ71skseprYkwcIkZfS5jtClF6Z5oDC8JIwMN5ukGRDkkoKTT+uLWnw3AgArAOBi0CIy8j5Khy7GP7v+02F5g==","_resolved":"/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.1-rc.2.tgz","_from":"file:/home/runner/work/deepseek-harness/deepseek-harness/dist/npm/deepseek-ai-dsh-plan-mode-0.1.1-rc.2.tgz","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-jIQ71skseprYkwcIkZfS5jtClF6Z5oDC8JIwMN5ukGRDkkoKTT+uLWnw3AgArAOBi0CIy8j5Khy7GP7v+02F5g==","shasum":"9286e4581df606e9d6350384f6431d0f9ea69c85","tarball":"https://registry.npmmirror.com/@deepseek-ai/dsh-plan-mode/-/dsh-plan-mode-0.1.1-rc.2.tgz","fileCount":15,"unpackedSize":70555,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAvrPEBgkKBh/W28N71sWQRtrTCK6kn40vMikANP+1lCAiEA6/kNZrtKIO78Kf/Plua/fP9NVE9sCVtXydDE0dyZ2vU="}],"size":20851},"_npmUser":{"name":"imccyu","email":"imccyu@gmail.com"},"directories":{},"maintainers":[{"name":"imccyu","email":"imccyu@gmail.com"},{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plan-mode_0.1.1-rc.2_1787315702590_0.6158879108895849"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-08-21T12:35:02.746Z","publish_time":1787315702746,"_source_registry_name":"default"}},"bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"description":"Logged per-agent plan mode with deployment guidance, a direct slash command, and a user-reviewed exit","homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","license":"BSD-3-Clause","maintainers":[{"name":"tianyicui-deepseek","email":"tianyi@deepseek.com"},{"name":"imccyu","email":"imccyu@gmail.com"}],"readme":"# @deepseek-ai/dsh-plan-mode\n\nEnglish | [中文](README.zh.md)\n\nLogged, per-agent plan collaboration state with deployment-owned guidance, direct `/plan [message]` entry and `/plan off` exit commands, and the reviewed `exit_plan_mode` exit. Plan mode is soft guidance; sandbox mode and approval policy enforce restrictions independently and do not read or write plan state.\n\n## Durable state\n\n`plan/mode` (`{ active: boolean }`) is a log-only, whole-value-replace `SessionEventMap` member. `foldPlanMode(events)` returns the last logged value or `false`, so resume, fork, and compaction recover plan state directly from the session log. UIs observe committed flips through `session/event`.\n\n`ctx.planMode.set(agent, active)` appends the standalone `plan/mode` event immediately when the agent is idle, because no in-turn pre-step runs before the next prompt. While the agent is running, it holds a pending selection for the next accepted in-turn pre-step. It returns which happened (`committed`/`queued`), a `cancelled` reversal, or a `noop`. `get(agent)` returns `{ active, pending? }`, separating the logged state used to assemble the current step from a user's mid-turn selection. Initial and continuation pre-steps both apply pending selections; a same-step request-recovery retry reuses its frozen assembly and leaves the selection pending for the next pre-step. A changed user selection contributes one plugin-sourced `user/message` notice when the last logged request header described the other state (both commit paths).\n\n## Model and human surfaces\n\nWhile active, `plan:policy` renders the configured `section`. The plugin always registers `exit_plan_mode`, keeping tool schemas stable across the transition; its execute path accepts only active plan mode and leaves it only after an exact user approval through `ctx.userInteraction`.\n\nThe review question declares the `plan-review` presentation intent, naming `Approve` as the label that approves it, so a capable UI presents the plan as a decision instead of a generic question; the answer the tool reads is the same either way. A dismissed review — the user closing the request to speak instead — is reported to the model as such, telling it to stay in plan mode and wait for the message; every other review failure keeps the seam's own message.\n\nWhen `ctx.commands` is composed, the package registers `/plan [message]` and reserves the exact argument `off` for direct exit. Bare `/plan` selects plan mode; any other non-empty argument selects it first and is then submitted through `agent.steer()`, so it becomes the next step's ordinary logged user message under plan guidance. `/plan off` selects inactive without sending model input; it also cancels a pending entry before plan mode reaches a request.\n\nThe Web client consumes the plugin-owned `/plan` command; other entry points may drive the same service directly without defining a second mode vocabulary.\n\n## Session projection\n\nWhen the composition mounts `ctx.sessionProjections` ([`@deepseek-ai/dsh-session-projection`](../../session/session-projection/README.md)), this package registers the `plan` projection unit under an injected child. The unit folds two event kinds: a `command/run` record named `plan` with recorded `args` sets the wanted target (`off` → inactive, anything else → active), and `plan/mode` commits the logged state and clears it; every other event returns the same state reference. `view` derives `{ active, pending }`, where `pending` is true only while an outstanding selection differs from the logged state — a pure replay quantity, so host restarts, other tabs, and cold reads all recover it from the log alone (the `/plan` handler calls `set()` before any failing path, so a failed handler cannot leave a recorded command without its plan selection). The key merges into `SessionProjectionMap` from `src/types.ts` (served to host consumers via `./types` and client aggregates via `./client`); the framework drives the unit and carriers serve the value on the history tail page and the `session/projection` push frame. Compositions without the registry are unaffected.\n\n## Configuration\n\n```yaml\n- id: plan-mode\n  name: '@deepseek-ai/dsh-plan-mode'\n  config:\n    section: |\n      You are in plan mode. Explore and design before presenting the complete\n      plan through exit_plan_mode.\n```\n\n`section` is required and non-empty. Unknown keys fail at load. The package does not accept arbitrary named modes, tool filters, sandbox settings, or approval policy.\n\nDesign: [plan-specific collaboration state](../../../.agents/notes/implemented/simplification/2026-07-22-plan-specific-collaboration-state.md).\n\n## Model Experience\n\n### Plan policy system prompt\n\n#### What the model sees\n\nWhile plan mode is active, the model sees the deployment's exact `section` text at prompt order 50; inactive mode contributes no text.\n\n##### Configuration example\n\n```markdown\nYou are in plan mode. Explore and design before presenting the complete plan through exit_plan_mode.\n```\n\n#### Token effect\n\nInactive mode adds no tokens; active mode adds the configured section to every request.\n\n#### KV Cache effect\n\nThe section is stable within plan mode, but entering or leaving changes the system prompt from order 50 onward.\n\n### Human command\n\n#### What the model sees\n\n`/plan`, `/plan off`, and their terminal results stay outside model history. A non-empty suffix other than the exact `off` argument becomes one trimmed user text block through `agent.steer()` after plan mode is selected. An active `/plan off` selection contributes the standard logged user-switch notice only when the last request header described plan mode; cancelling a pending entry contributes none because no request observed it.\n\n#### Token effect\n\nThe optional message costs the same history tokens as submitting that text separately; bare `/plan` and `/plan off` add none. A narrated active exit adds the small retained switch notice.\n\n#### KV Cache effect\n\nThe user block is append-only conversation growth. Entering or leaving plan mode changes the earlier policy section; a narrated exit notice is appended after the reusable request prefix.\n\n### Exit tool schema and review exchange\n\n#### What the model sees\n\nThe [`exit_plan_mode` schema](../../../docs/tool-catalog.md#deepseek-aidsh-plan-mode) remains available in both states; execution outside plan mode fails, while an approved in-mode review returns the canonical `{ approved: true }` value and renders the existing confirmation text. Rejection remains a failed call carrying review feedback, and a dismissed review a failed call naming the user's takeover.\n\n#### Token effect\n\nThe stable schema is paid according to ToolRegistry mode, and each plan argument and review result remains in conversation history.\n\n#### KV Cache effect\n\nMode transitions do not change the tool catalog; plan arguments and review results extend the conversation normally.\n\n## Known Limitations and Deferred Work\n\n- Plan mode guides rather than enforces; deployments that need enforced restrictions must configure sandbox and approval controls independently.\n- A selection made after the turn's final accepted pre-step is lost if the process exits before another accepted in-turn pre-step, so the UI must reapply it.\n- Forked agents inherit logged plan state, while newly spawned agents begin inactive; there is no creation-time plan option.\n- A live child owned by another agent cannot open the `exit_plan_mode` review. The failed call tells the child to include the unresolved decision in its final result; durable fork lineage alone does not prevent a session resumed as a runtime root from opening the review.\n- Only the Web UI has a specialized `plan-review` renderer; another interaction provider may present the same request through its generic option flow.\n","repository":{"url":"git+https://github.com/deepseek-ai/deepseek-harness.git","type":"git","directory":"packages/plan/plan-mode"},"_source_registry_name":"default"}