{"_id":"dsh-calendar","_rev":"27-7442ccdf5d8942932a82f696aff2649c","name":"dsh-calendar","dist-tags":{"latest":"0.9.3"},"versions":{"0.1.0":{"name":"dsh-calendar","version":"0.1.0","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.1.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"bb3649cbdb304f9de9e78af1515cce20345676d2","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.1.0.tgz","fileCount":15,"integrity":"sha512-hoeoQ22m7bfQHiwWBMvTgwLUP3K9Zo2bzifAtwmGLib51INd9nGrOwPZFHbiIKoRBSGY3GGANrq4If36BTv75Q==","signatures":[{"sig":"MEQCIAcwCF9pf1hKs9EOsyrFI8bL26nWsQTjfJKC8oPHLaa7AiAf8+2MJfVzNUIaWUOmLetVcJviLjG+pml0TqYYeUVHTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52814},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"1df04460fddcb6962ed6d3c7621c647664abca7f","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","prepare":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.1.0_1786661505242_0.6822753186815207","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"dsh-calendar","version":"0.2.0","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.2.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"59cf399fec097cc94c663616ba35979f97752ce9","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.2.0.tgz","fileCount":16,"integrity":"sha512-QXmeFKd03ecop1Rpc8eacyIq60ZBuhSdoHueeZ2yXciZkhWNEwoSuMkjQEChS0hag3bekUx+TbNF6hlmyK/I4Q==","signatures":[{"sig":"MEUCIQCvAQFxYRVWxETYLeKBiSlK1e0dghfDMWfZE9ulnUYvXgIgSBTh2jTpoEQ3QtqNp2Q4qJ9ZURfEXoqBAvB/I0cYaVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67053},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"41ba1a18c3c16e6693f20e22aaaa5b2aca0b3295","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","prepare":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"deprecated":"0.2.0 has a boot-crash bug (missing inject declaration); upgrade to 0.3.0 or later. 0.2.0 存在启动崩溃缺陷（缺少 inject 声明），请升级到 0.3.0 或更高版本。","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.2.0_1786692127614_0.7889496443685797","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"dsh-calendar","version":"0.2.1","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.2.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"986d8ead813006825217281287453424ef7d39c3","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.2.1.tgz","fileCount":16,"integrity":"sha512-SsRQPwzM7TrJ7/j7cKqteti+Lc/uvs52KX+wnzrCRD2r24IQI8yzpNdKCkz4izqacPug3/1eV8q+GclaHhsQmA==","signatures":[{"sig":"MEUCIEm7BB9w4jmEa++p/iwKVp+/XZWGVvrpjclIhXpyMJ1LAiEArE8qtRYWZgKA4DIL63Eeaae44VImPPxm+WQu/+8oFkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67363},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"e8805042f2c4e12bf9cffa52839df5b892daed32","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","prepare":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.2.1_1786694464957_0.56780670768156","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"dsh-calendar","version":"0.2.2","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.2.2","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"5a9d3d1c7939792fc1142a6971e085236e981301","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.2.2.tgz","fileCount":16,"integrity":"sha512-B3ceVRd9lqYJ0uSVZmx1DW2FmNbAUbKyZ8omlhkDZ/OslR34hgQcXeaLApjsGOlobAfktwzcDiCoQfX0ro8Xeg==","signatures":[{"sig":"MEQCIA34NE1dVxtckkZIoPyntRjOqAdHg+cX7B9NXsLjpGUWAiB+cfjKcQ1RYi7P1HnAwVoh8OsfDqm5QOd29wzzb605lQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68683},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"deeaac0a6177f7f40ff81ef8b33962e203d6a468","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","prepare":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.2.2_1786695541973_0.6802370964610958","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"dsh-calendar","version":"0.3.0","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.3.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"21df25bfc2d0cb3ff2ecd70979728e5a7a7643e5","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.3.0.tgz","fileCount":18,"integrity":"sha512-DboyWiVQA/zhfu/UlvEu+9TRBw4k498GHNzZTrwQKL81jtOyxYDOQSpuO/Wy4vdPjZoBAznymRopV319ouoL4w==","signatures":[{"sig":"MEQCIGeotAeyRycbOnFh8j/NFbiTKgqdkeJ8/Pow47BGQJ+7AiB969pyn+4PtMEN3ooEyVTTzWAgE7eX66oyfR1OQrjQUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71250},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"4f6d4d3f4c5dba2a7ced4598339200ab69b8d807","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","prepare":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.3.0_1786696852568_0.9761434417814077","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"dsh-calendar","version":"0.3.1","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":"stardustlc","license":"MIT","_id":"dsh-calendar@0.3.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"acbf4d2aa1d9386f8e68c6e18362b9aa8c416138","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.3.1.tgz","fileCount":18,"integrity":"sha512-pL4Z3Qr3ctwyNOgQU0ivBqG6Aob/9MlfNLw3wt6SLZzJvyoHePmy9mlyna4zZ72WpC5iyw8NeE6x13qz7j1iuA==","signatures":[{"sig":"MEUCIQDOtGKuNnD6RRbxmvVoIWqpGsmqFe+YqbHovzJodAajrAIgdEV2PF195j4vF7+IbIc4vF/ihlBXa4i2pr/8tnIusZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74193},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"https://github.com/STARDUSTLC666/dsh-calendar","type":"git"},"description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.3.1_1786778957968_0.0012414766786270626","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"dsh-calendar","version":"0.3.2","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":"stardustlc","license":"MIT","_id":"dsh-calendar@0.3.2","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"1fedfb9e443b4b7a6248d9eac1776192d96809f2","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.3.2.tgz","fileCount":18,"integrity":"sha512-J3EIWErPxYpb7JtVLRJ9ZtIGdEfCJsrkM0IqsDqoBrK9zq/P02Yvf5ba7JZm8GkghbcnXIqOzjIo0ZSg8XuV/Q==","signatures":[{"sig":"MEUCIQDUTPi3TsWFP0QQ/Yzn9GcDmRF9b0SBzvNNNiwP2jSnWwIgBgiXtrgJaTGAQs26JACwaEixHcFedfdfxj6yt+dl5ig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74193},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"https://github.com/STARDUSTLC666/dsh-calendar","type":"git"},"description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.3.2_1786780072092_0.09674784343069676","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"dsh-calendar","version":"0.4.0","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.4.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"b7ac51612bb792bec3945f5a137ac921addd2ee6","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.4.0.tgz","fileCount":19,"integrity":"sha512-pC+RogDq9JL5FXuPIkeYAIbY+az0FCwSRhz7cPIiMjCmEtNRT+Fn+gQCs66KhIv7nnsrnB3ky38am9n+ep820g==","signatures":[{"sig":"MEUCID0Q/XRnrg245rNcryyrdXGzyH30C0ikBUs3s6UKEEPSAiEAnOJtDa/pl0gx43QMe0CuE3hdySB7spBb2mS/xHy6pgQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80528},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"907eb555cd5d6b354eb0a2d5be00e25f1cf64824","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.4.0_1787837262040_0.461885524884182","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"dsh-calendar","version":"0.4.1","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.4.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"bbc64d5c70631b4a7bd587b69f465c9d12a76c8e","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.4.1.tgz","fileCount":19,"integrity":"sha512-jpKWauPKZwVJCqLknzDRihjR2wXJhviO0E5R8/cJ6g80nP+smeFxrfLYQNnXr3P9Y/JX4vgwnuRlScu9898YqQ==","signatures":[{"sig":"MEUCIQCsyaKBjxvOXwdnDSPaGyEhOASsEmLrkxbHr6SLDrdFQwIgW9xsiuGv6wb/Y69xaNDhSIrwlYqjSBVmi4pkX6FBB7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84009},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/release-2026-09-05/tarballs/dsh-calendar-0.4.1.tgz","types":"lib/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\release-2026-09-05\\tarballs\\dsh-calendar-0.4.1.tgz","_integrity":"sha512-jpKWauPKZwVJCqLknzDRihjR2wXJhviO0E5R8/cJ6g80nP+smeFxrfLYQNnXr3P9Y/JX4vgwnuRlScu9898YqQ==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历工具插件：通过 CalDAV 读写日历事件（Google / iCloud / Nextcloud / 自定义）","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.4.1_1788584658654_0.5226052248941722","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"dsh-calendar","version":"0.5.0","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.5.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"d46277844544ba0bb940005bb1656c20a7057e47","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.5.0.tgz","fileCount":21,"integrity":"sha512-4a5h4qJ8jAhQjCv9rNtY1ydW/9pDoWROe73rQqySTAVbdP2Wn9L2hz4suN8vxdGnjoOQluZx5NU9ziRtcB0V5Q==","signatures":[{"sig":"MEUCIDWw0WtP2ADpsiC2+fGsARRO5SK9Os9My4kNcm3R00//AiEAxgi63QUhu/OjTs//RgY5hqSf0S2VKo/dWjKf6WbtiHA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101805},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/release-2026-09-07/tarballs/dsh-calendar-0.5.0.tgz","types":"lib/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\release-2026-09-07\\tarballs\\dsh-calendar-0.5.0.tgz","_integrity":"sha512-4a5h4qJ8jAhQjCv9rNtY1ydW/9pDoWROe73rQqySTAVbdP2Wn9L2hz4suN8vxdGnjoOQluZx5NU9ziRtcB0V5Q==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DeepSeek Harness 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth 2.0、iCloud、Nextcloud、自定义服务及离线配置自检。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.5.0_1788754673248_0.5102050655414547","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"dsh-calendar","version":"0.5.1","keywords":["dsh","deepseek-harness","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.5.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"7130a7e41c73740f80aad8491af275f0fdfb5b1f","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.5.1.tgz","fileCount":21,"integrity":"sha512-wQDpxOOPoxuWHdfvQQqdaXO7uG1V6ZGX2IFEWRRYyvaFx+PbAlcoKdblGnTrjlYweZ+fs3xBofiW6jZvO6uhOQ==","signatures":[{"sig":"MEUCICxry+S78aRkR+yweRr7kwkV+m35cFNFayLeJSuWoy7EAiEA63Q4KJB3OxT1xoTE3rYRaG16lh7qFTn3WySE5Fcq8CM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104852},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/calendar-scope-release-2026-09-08/dsh-calendar-0.5.1.tgz","types":"lib/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\calendar-scope-release-2026-09-08\\dsh-calendar-0.5.1.tgz","_integrity":"sha512-wQDpxOOPoxuWHdfvQQqdaXO7uG1V6ZGX2IFEWRRYyvaFx+PbAlcoKdblGnTrjlYweZ+fs3xBofiW6jZvO6uhOQ==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DeepSeek Harness 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth 2.0、iCloud、Nextcloud、自定义服务及离线配置自检。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.5.1_1788861703411_0.15018438162460668","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"dsh-calendar","version":"0.5.2","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.5.2","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"16d00980bde3d05c52eb21dbc784c45d330a43bc","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.5.2.tgz","fileCount":21,"integrity":"sha512-IjTE3FlbBflJ2TI3c7a0CcO9xHs469SNW3YHGUSHmCS6BLx+Sa7+OLDS+DIBKPZgR+eBdnFwrq4j4VYmf5Y2zw==","signatures":[{"sig":"MEUCIQDIstHj5/OxWu7cJSMjhxqMcYqmFt2/vryhjuyVd3h80AIgGMf7yE63GjKY5lc8IWhlHme28dv+5dXPJ9IfLd4562U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":106505},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/harness-compat-release-2026-09-08/dsh-calendar-0.5.2.tgz","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\harness-compat-release-2026-09-08\\dsh-calendar-0.5.2.tgz","_integrity":"sha512-IjTE3FlbBflJ2TI3c7a0CcO9xHs469SNW3YHGUSHmCS6BLx+Sa7+OLDS+DIBKPZgR+eBdnFwrq4j4VYmf5Y2zw==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DeepSeek Harness 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth 2.0、iCloud、Nextcloud、自定义服务及离线配置自检。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.5.2_1788862918430_0.8741625043955803","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"dsh-calendar","version":"0.5.3","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.5.3","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"230bbb975339c3cf5851017e4b89b464d24d8fa4","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.5.3.tgz","fileCount":21,"integrity":"sha512-Djbp/V/M43o4JQHIaEF725BiHm0trvKOK5p+11VSeolshQseI1X26s9fZiyPM6EFsroBZVMG1GG2ABP9dOpwwA==","signatures":[{"sig":"MEYCIQD+4RbHk/E7yr9cP+c9Hw2YMPzcB0u1dtRYaUmEMkiWVQIhAJn4/qu3VHaPZLuWtd2T+XC3E6gqdT+Tr910l33AXPoo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107368},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/all-plugins-compat-2026-09-11/tarballs/dsh-calendar-0.5.3.tgz","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\all-plugins-compat-2026-09-11\\tarballs\\dsh-calendar-0.5.3.tgz","_integrity":"sha512-Djbp/V/M43o4JQHIaEF725BiHm0trvKOK5p+11VSeolshQseI1X26s9fZiyPM6EFsroBZVMG1GG2ABP9dOpwwA==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DeepSeek Harness 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth 2.0、iCloud、Nextcloud、自定义服务及离线配置自检。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.5.3_1789269087346_0.7141002438290525","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"dsh-calendar","version":"0.5.4","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.5.4","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"1788381bb3bc144910e777b26ee5bd85a500261f","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.5.4.tgz","fileCount":22,"integrity":"sha512-Fbq4kk1EPbUEFQovP094ejEPCAXzQLkDph3VwJ0um1zl3JgmsBdDllethMjMuYMv+IrihuuSK4BGxUsFOZYdqw==","signatures":[{"sig":"MEYCIQCzT6SssmLBXhP7QTHXE964odZrL+GV7+GXUKM3/y8vGgIhAPckNiU9a0OqoKerXaIzu/7UfR9no658B/vLVH3djYmW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDJWXPuWJb8QxFVBywRme5MYkUqhf3jjsyoSFTEXkTy9gIhAJCuq+nRJe4SEvcz3zOpsJVJjPlvi6JzYEQdEF9CU6eu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125295},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"e5b24fdd4557a97f7279cbad565fbcd5ae2b0749","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.5.4_1789749627641_0.12881492734004185","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"dsh-calendar","version":"0.6.0","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.6.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"70fcd5a8a7c780970a5740f6c7153d8e83f531e0","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.6.0.tgz","fileCount":30,"integrity":"sha512-cTN0VGMyMHAT9/2/kWYO+dpaeBA6mOy1P+yLLsALXClN2Z5e/82Aed3BujEAO6pSlGx/eqgtKt0pmG3XRuoC6w==","signatures":[{"sig":"MEYCIQDDaFuw2LqcAaW/ri3ScRAdja9kSxkVxVWzK8cnQp3e3gIhAN/PBwIUTa12lbjg+mnOOnVcwxRHtsoWMUrrmI8avqfJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIC1IRJ0E7OtWgQrs0rllOxWjNqNhxMwJBH4g6CZPTP/PAiAgR9TZLzmyxaO+XWUiJFpdChr6mXDcQUTMriZ4mtMLXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285917},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"22bd7e81e90ffa902cd00b627fe2202da3989e7e","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.6.0_1789815330416_0.12295379654751604","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"dsh-calendar","version":"0.7.0","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.7.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"40f30427f36acd90cab944e8877225e40f2c33d8","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.7.0.tgz","fileCount":30,"integrity":"sha512-MzcgMznehofTfJATNBO9g1cvLIJyhvYnyEeUzM0IYYm4wYOfxnxXMHgOLr88majDmBG4tLNViSI3SB0Q0C4FSA==","signatures":[{"sig":"MEYCIQDuhIDp+gMBfWwdzdW3fAu4SOuvhkZRCqMpKsf5MiMLFAIhANcDZIQ1pC6KFivkpM8s4SS+fzxCA2qYBPFXeQUeYIF2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEyJF8dOiTzw2OV6Ne2LkPF14sPUvrM0cf67xiWbgKIZAiBZZ7jB533hKVFKHTSCp8XMQ4qPcrQy1n5/pM8uHNZEjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288806},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"90647de4675227cfa7ac875bd1e730771bf8b49d","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.7.0_1789816473684_0.4955561301342748","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"dsh-calendar","version":"0.8.0","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.8.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"fae6716d4a4b0c1fd7639ffe8be17dee749e1e90","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.8.0.tgz","fileCount":30,"integrity":"sha512-UZKVhxeDsQ/mt9booaG0gCbbvhtoHRp8gehg78nhndxRrd+IuESMWTYODOCOBHile1YG5zOU+g6Rq3ZXmRHNKQ==","signatures":[{"sig":"MEQCIDfzd7IDGaHGEOpke8YctLXCuwxcdq1j3nFIMTlnI4vFAiBY/qSADtEA4WvozlDEIAn+PD8vq2Ky/k3SbTgcAuC16w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCV5zqv0/LhZE7xJma+gbzVpZLLzYXu3in2/i9RB4obFgIhAK13yHeZAjik5xOyJBQGFj051F7DWm95EykhrFXH0iar","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322669},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"34ed7fbeff6ae28118860353bb3493020297fb5a","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.8.0_1789818834426_0.19091472092475192","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"dsh-calendar","version":"0.8.1","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.8.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"087a705026ea0817418d23a34d8340c960864e9e","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.8.1.tgz","fileCount":30,"integrity":"sha512-3k0FkJ/3ujuAmnT1kFHmdCBrPBlLkaJxmCiYq6hJk5iww9tgtcwdblDwansw1un1EvP0+cZVyax+BkUDHU27wQ==","signatures":[{"sig":"MEUCICCsm7TWLPUDPeQkBsoyY+nr1hucxH/SX46zpoBdfE/eAiEA7x4Pq1JOJCUsfaqERqC0ZYWANODSOTcXPMDkXLZDPmQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCfjkRZgOqA7fg4Dfj4MR+gIQOp8oC3+IqJ2EQ9LqJKWwIgdqwfi6xDL7xnY+0bow0V7pn//0w0cGdRoheOIfx1eHQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":324705},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"6aa4efc3d80770421d64ebced4e3591240d3892a","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.8.1_1789871073462_0.8986116686657959","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"dsh-calendar","version":"0.8.2","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.8.2","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"1509a8516484cd290213a617c1858678877f2ff0","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.8.2.tgz","fileCount":30,"integrity":"sha512-Zmtepa9WzBgoeZ87F/HtLcMn2t1WtiiKZBV3bb3pK6RZAl148XYz/tvJzaHGfp9uSpUWTHUV6vF3YQ5WNWJmjg==","signatures":[{"sig":"MEYCIQC4EDqSE1kKawIVwafNy4sd7jvh1JnGWQePQ4W66DOUjgIhAKPlMQd68iW/2CNWkJID6Jco3bBEFLGHbiDFoAwTbcAm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCaFTmJibTsQ3QJWgcoHf73cmJJTTcbyeqrznCyyX2n6gIhALFk7XKjrzBilOoBchMdW/21K3BaeI4I/KxZBgm9OfjC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332185},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"4a263edc2e7c77c298118482131dda9e9b16cf80","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：CalDAV 日程查询、创建、修改、删除与搜索，支持 Google OAuth2、iCloud、Nextcloud 与自建服务。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.8.2_1789874743499_0.37039443469101285","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"dsh-calendar","version":"0.8.3","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.8.3","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"5798e1ffff5fbf22ec88c772a3a53364c1482157","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.8.3.tgz","fileCount":30,"integrity":"sha512-o0Xz2LvZ781+BFuuMVHo15HQVd1HfjrumGUSVgYYv0mD+2HwnVfllEJePBERCCcHnNeMcON/n1MDJvMQNJ344Q==","signatures":[{"sig":"MEUCIQC7JR+jh5f31/JlcBAiX01hLbm+Dmnh337U5ENo5slPNwIgV4HMWdMTHvitqA6WOn88tfQJxdmDrFShzLUrVxul19o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIA/ujB5ZKsL4lx+DJSKPQXzh0rcqhZui0j7Sq1B7fdAVAiEAxcEsgM454y8Q6c9+0x9jxRC9Jg9fwJVYwKEFObtsjww=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335067},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/top-plugins-2026-09-21/tarballs/dsh-calendar-0.8.3.tgz","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\top-plugins-2026-09-21\\tarballs\\dsh-calendar-0.8.3.tgz","_integrity":"sha512-o0Xz2LvZ781+BFuuMVHo15HQVd1HfjrumGUSVgYYv0mD+2HwnVfllEJePBERCCcHnNeMcON/n1MDJvMQNJ344Q==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.8.3_1790044203413_0.057675227195890466","host":"s3://npm-registry-packages-npm-production"}},"0.8.4":{"name":"dsh-calendar","version":"0.8.4","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.8.4","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"c808ac14dddfd8d9772a88fd3be568b258940df8","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.8.4.tgz","fileCount":30,"integrity":"sha512-8sbQlsTNY5OqfNh1A2acEFn6WR1vVTAjkz9FbB64YLslpvj61MyFtP4pwrrpTlh+4q6ln5ncKP9xDjJHQQkPPQ==","signatures":[{"sig":"MEUCIHFeQmHSapT0bWDcbr1DiBQh6L8txtamBSg9ugtl9jbbAiEA+CpcxQxIxzZ2BUXtTJg37/IEkZAjeU454DMg8McoO+c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHDEhxZnS9a7pGporldWrEXZfZsV5KDASOH5U80T5N19AiEA+7OtlS55E+9uPCDtlwr8dV8XDQUqh/SCQf48EBtGh/Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335669},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/dsh-017-2026-09-22/tarballs/dsh-calendar-0.8.4.tgz","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\dsh-017-2026-09-22\\tarballs\\dsh-calendar-0.8.4.tgz","_integrity":"sha512-8sbQlsTNY5OqfNh1A2acEFn6WR1vVTAjkz9FbB64YLslpvj61MyFtP4pwrrpTlh+4q6ln5ncKP9xDjJHQQkPPQ==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.8.4_1790148122020_0.47417338699997447","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"dsh-calendar","version":"0.9.0","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.9.0","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"d6501b8941c4a325c3f00ccce4b8bcf2e0bd860a","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.9.0.tgz","fileCount":34,"integrity":"sha512-G33yvayeHqKDzeQf8lfUmOWjYZqYSybHyeg6IQIjBYTRtUgkDc2cOEdv4dZ8L6OIw2A+gZLMjCixa051AFWvkA==","signatures":[{"sig":"MEUCIQCeOSxR/l4JIuek2pQFUscwT13y2T+c5KIeeZBxRidWPgIgLMR5Apq3d9KP1ZpyhlilN2m8QGMgWtQs8iguiJWx0AA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCI+9MlopOvcqp6HjhMxp30yzUFR67hLs3uUICqBzNfuAIhAOpwLN6z3y07j4Qa/3KJFysMVAk06z6sDjoFOHFwu6e/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360056},"main":"lib/index.js","type":"module","_from":"file:E:/deepseek/.harness-validation/dsh-rc1-human-2026-09-24/release/packages/dsh-calendar-0.9.0.tgz","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"_resolved":"E:\\deepseek\\.harness-validation\\dsh-rc1-human-2026-09-24\\release\\packages\\dsh-calendar-0.9.0.tgz","_integrity":"sha512-G33yvayeHqKDzeQf8lfUmOWjYZqYSybHyeg6IQIjBYTRtUgkDc2cOEdv4dZ8L6OIw2A+gZLMjCixa051AFWvkA==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"yaml":"^2.9.1","tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0","@deepseek-ai/schemastery":"^3.18.3"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.9.0_1790444070934_0.5404788074035485","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"dsh-calendar","version":"0.9.1","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.9.1","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"32e8bb7b16a511d4befec2a49878d33a564a5ba3","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.9.1.tgz","fileCount":34,"integrity":"sha512-k4ui7BXLvm0xKHSS5rv2pRMyO3TrleBsC4leCv/K56giIsCF9dltZuwQCvRWkGHRJpIupV8/7pxeLxwNL53K0g==","signatures":[{"sig":"MEUCIFphOmoc4h5iFTHI4UyBWwy3+uia0mh4CFn4y/JuaejAAiEA9q0IjUvU9DAlrVTSmj3eqEOU7ACOudFKbZBY+jHZnY0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEhE5j0If1EDjeRqL3OpH7ETHjLct2tZhU8ozLJlihFuAiBCSyIpX+lbu6Ks/c1A/QEO/lTzYtXSvNGrO7kSc4zBig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360439},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"0ca23a3823460cf303623afccb306fb49965a970","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"yaml":"^2.9.1","tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0","@deepseek-ai/schemastery":"^3.18.3"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.9.1_1790611920228_0.6109819483375312","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"dsh-calendar","version":"0.9.2","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"author":{"name":"stardustlc"},"license":"MIT","_id":"dsh-calendar@0.9.2","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"dist":{"shasum":"eba153270767a4670651572f3b36e926415f10d7","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.9.2.tgz","fileCount":34,"integrity":"sha512-zzws70HWWXv6m4iAnx3a89L1OAyi/43ViE4NeBNJZDyW1POafBCA4Ax8NGZPxTF2ojGrKgZvHpe7lBUSwJzaEw==","signatures":[{"sig":"MEQCIElva6TxHkBQRUHOz/C80qCAxNaRZdAwOnPbXVIuY6/SAiAWw6rfZhmiJTKgOrgbsfYdYMclNNHau8AHmj/Yb7C99w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC/Pey3M+MBcXbwImJrltWzpZQEPfWLK3P0HAM8HShHEAIhAMkqmdCwookkRQPBryq4CanFzqHDT1S5l5oS0VNrF7FE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":361444},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"a3b085a2ece92b0077c488159311a8d965c7dbf0","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"_nodeVersion":"24.16.0","dependencies":{"yaml":"^2.9.1","tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0","@deepseek-ai/schemastery":"^3.18.3"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-calendar_0.9.2_1790683294815_0.9241149753394942","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"_id":"dsh-calendar@0.9.3","dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"dist":{"shasum":"e8a180e1a21ceb90ae98ec2602d56512adf2de36","tarball":"https://registry.npmjs.org/dsh-calendar/-/dsh-calendar-0.9.3.tgz","fileCount":34,"integrity":"sha512-m+PA1yG3w9NEnCq6idJE3SSZdvOiBDa1vMbaheqH43NM0ED70jPHO1YZ0NyvBnkAixgNzkPio3mNdnUjsilGPQ==","signatures":[{"sig":"MEQCIGA59rff6y4lJpOXiTkV+2AaWWMeQeHy1PPK3lGvTlmEAiAYGK777zCJt4hPhJsevF2qm8avxtcb1N4zdz9YuHI5BQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGmHz6OFXSt/tAoc52BVD/4wDDztHdgWY8slSq5dJcX4AiEAvP+71/cdoE2Vt72idPcW8MgGl7C2+eVoSdywla6BORA="}],"unpackedSize":362261},"main":"lib/index.js","name":"dsh-calendar","type":"module","_from":"file:.harness-validation/human-acceptance-20261001/packages/dsh-calendar-0.9.3.tgz","types":"lib/index.d.ts","author":{"name":"stardustlc"},"engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./client":"./lib/client.js","./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"license":"MIT","scripts":{"test":"pnpm run build && node --test \"test/*.test.mjs\"","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"pnpm run build"},"version":"0.9.3","_npmUser":{"name":"stardustlc","email":"liuzhoucxk@gmail.com"},"homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"_resolved":"E:\\deepseek\\.harness-validation\\human-acceptance-20261001\\packages\\dsh-calendar-0.9.3.tgz","_integrity":"sha512-m+PA1yG3w9NEnCq6idJE3SSZdvOiBDa1vMbaheqH43NM0ED70jPHO1YZ0NyvBnkAixgNzkPio3mNdnUjsilGPQ==","repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"_npmVersion":"11.13.0","description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","directories":{},"maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"_nodeVersion":"24.16.0","dependencies":{"yaml":"^2.9.1","tsdav":"^2.3.1","undici":"^8.10.0","ical.js":"^2.1.0","schemastery":"^3.18.0","@deepseek-ai/schemastery":"^3.18.3"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.7.0","devDependencies":{"jsdom":"^30.1.0","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^5.6.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-calendar_0.9.3_1790854578107_0.8576266714265093"}}},"time":{"created":"2026-08-13T22:51:45.184Z","modified":"2026-10-01T11:36:18.449Z","0.1.0":"2026-08-13T22:51:45.405Z","0.2.0":"2026-08-14T07:22:07.752Z","0.2.1":"2026-08-14T08:01:05.099Z","0.2.2":"2026-08-14T08:19:02.118Z","0.3.0":"2026-08-14T08:40:52.724Z","0.3.1":"2026-08-15T07:29:18.122Z","0.3.2":"2026-08-15T07:47:52.247Z","0.4.0":"2026-08-27T13:27:42.183Z","0.4.1":"2026-09-05T05:04:18.793Z","0.5.0":"2026-09-07T04:17:53.385Z","0.5.1":"2026-09-08T10:01:43.546Z","0.5.2":"2026-09-08T10:21:58.585Z","0.5.3":"2026-09-13T03:11:27.473Z","0.5.4":"2026-09-18T16:40:27.741Z","0.6.0":"2026-09-19T10:55:30.507Z","0.7.0":"2026-09-19T11:14:33.816Z","0.8.0":"2026-09-19T11:53:54.528Z","0.8.1":"2026-09-20T02:24:33.603Z","0.8.2":"2026-09-20T03:25:43.612Z","0.8.3":"2026-09-22T02:30:03.524Z","0.8.4":"2026-09-23T07:22:02.105Z","0.9.0":"2026-09-26T17:34:31.034Z","0.9.1":"2026-09-28T16:12:00.457Z","0.9.2":"2026-09-29T12:01:34.958Z","0.9.3":"2026-10-01T11:36:18.260Z"},"bugs":{"url":"https://github.com/STARDUSTLC666/dsh-calendar/issues"},"author":{"name":"stardustlc"},"license":"MIT","homepage":"https://github.com/STARDUSTLC666/dsh-calendar#readme","keywords":["dsh","deepseek-harness","dsh-plugin","plugin","calendar","caldav","ical"],"repository":{"url":"git+https://github.com/STARDUSTLC666/dsh-calendar.git","type":"git"},"description":"DSH 日历插件：可视化周/月视图、拖拽改期与 CalDAV 日程管理，支持 Google OAuth2、iCloud、Nextcloud。","maintainers":[{"name":"stardustlc","email":"liuzhoucxk@gmail.com"}],"readme":"[English](README.en.md)\n\n# dsh-calendar\n\n## 0.9.3 更新（2026-10-01）\n\n从 Google 切换到 iCloud、Nextcloud 或自建服务时，连接测试与保存使用新服务商的认证方式。环境变量中的凭据会显示“已配置，留空不改”；修改表单后清除旧的连接测试结论。\n\n验证宿主：官方源码构建的 Harness `0.2.0-rc.2`（commit `639ed01539`，2026-10-01）。178 项 Windows 插件测试、18 插件共同加载与 6 个日历工具的契约检查通过。浏览器使用隔离 profile 和本地 CalDAV 测试服务，完成服务商切换、连接测试、保存、日程编辑及月/周/议程视图检查，检查了 900px 宽的窗口。真实 Google/iCloud 等账号的业务验收仍需单独完成。\n\n> **agent 从此会排期**：CalDAV 读写日历，重复日程自动展开。\n\n![npm version](https://img.shields.io/npm/v/dsh-calendar?label=npm&color=blue) ![npm downloads](https://img.shields.io/npm/dm/dsh-calendar) ![license](https://img.shields.io/npm/l/dsh-calendar) ![stars](https://img.shields.io/github/stars/STARDUSTLC666/dsh-calendar?style=social)\n\n[![Awesome DSH Plugin](https://awesome-dsh-plugin.com/badge.svg)](https://awesome-dsh-plugin.com)\n\n\nDSH 社区插件：通过 CalDAV 读写日历事件。提供 5 个日历操作工具（calendar_list / calendar_create / calendar_update / calendar_delete / calendar_search）和 `calendar_health` 配置自检。Google 使用 OAuth 2.0；iCloud / Nextcloud / 自定义服务器默认保留 Basic 认证。提供可视化周/月日历、拖拽与键盘改期、连接设置和连通性测试；也支持通过 profile 的 cordis.patch.yml 配置。已知事件的更新与删除直接读取该事件，减少一次整集合索引请求。\n\n## 兼容性\n\n**0.9.0** 起适配 Harness **0.1.7** 的设置接口：宿主移除了 `ctx.settings.register`，设置项改由 entry 的 `Config` 承载。连接字段全部声明为 `volatile`（面板改完即生效，无需重启），三个凭据按 `secret` 处理（不回传浏览器，只回「有没有」）；升级后首次启动会把老 `settings.yaml` 里的 `dsh-calendar` 段搬进 profile（只补空缺、只搬一次，profile 里已写过的值优先）。0.1.5 / 0.1.6 宿主仍走原来的命名空间注册，行为不变。当前验证宿主为官方源码构建的 **0.2.0-rc.2**；真实 CalDAV 业务仍需有效账号单独验证。\n\n**0.8.4（2026-09-23）**适配 Harness **0.1.7** 的 Web 子路径部署：日历面板的请求会跟随应用路径，修复经过反向代理访问时设置与事件操作失败的问题。真实 CalDAV 业务仍需有效账号单独验证。\n\n遵循官方[插件打包与安装要求](https://github.com/deepseek-ai/deepseek-harness/blob/master/docs/user/develop/basic/publish.md)：ESM 入口、预构建 `lib/`、`dsh.bundle.patch` 和 `cordis.patch.yml` 配置层；显式注入 `tools`，提供 JSON Schema 参数、规范化输出和渲染函数，运行时不 import `@deepseek-ai/*` 内部模块。使用 Node 22.19 及以上的 22.x 或 Node 24 及以上版本；Harness 仍在快速迭代，上述版本是实测基线。\n\n## 安装\n\n```bash\ndsh plugin --profile web add dsh-calendar\n```\n\n安装后重启 dsh。插件会向 profile 插入一行 id 为 `calendar` 的配置行（见本包的 cordis.patch.yml）。默认 provider 为 custom 且未填任何凭证，此时插件照常加载，但工具在调用时会抛出中文指引错误，提示你补全配置。\n\n## 配置\n\n**推荐：在面板里配（0.6.0+）**\n\n打开面板右上角的「连接设置」，选服务商 → 填地址与账号 → 点**「测试连接」**（它会真的去列未来 30 天的日程）→ 通过后点「保存并启用」。工具的下一次调用立刻用上新配置，不用重启、不用编辑 YAML。\n\n面板写下的值优先存在本机 `settings.yaml` 的 `dsh-calendar` 命名空间里（密码是 secret 字段：不进日志、不进导出）；若宿主没有 settings 服务（或命名空间注册失败），自动改存插件自己的文件 `$DSH_HOME/data/dsh-calendar/connection.json`（0600），面板里会明确显示当前存在哪。**YAML 仍然是基座**：面板没填过的字段由它兜底，所以已经用 `cordis.patch.yml` 配好的部署零迁移；纯 headless（没有设置页）的宿主依然只能走 YAML。\n\n各服务商要点：\n\n- **iCloud**：`caldavUrl` 形如 `https://caldav.icloud.com/<数字ID>/calendars/<日历ID>/`，密码用 [App 专用密码](https://appleid.apple.com/)\n- **Nextcloud / 自建**：服务器地址 + 用户名 + 日历名（自建则给完整集合 URL，结尾的 `/` 别丢），密码用 App 密码\n- **Google**：必须 OAuth，Google 不接受任何 Basic 密码；需要 `clientId` / `clientSecret` / `refreshToken` / `calendarId`\n\n### 或者：写 YAML（高级 / headless）\n\n下面的字段与面板表单一一对应；面板没设过的字段以这里为准。\n所有配置都在你的 profile 的 cordis.patch.yml 里，按 id 覆盖 `calendar` 行（覆盖整行的 config）。通用字段：\n\n- `provider`：google | icloud | nextcloud | custom\n- `caldavUrl`：完整日历集合 URL（custom / icloud 必填；google / nextcloud 也可手填覆盖预设）\n- `authMethod`：`basic` | `oauth`；Google 默认且必须为 `oauth`，其他 provider 默认 `basic`。其他 OAuth 服务器需显式设置 `oauth`，不会因环境中存在 Google 凭据而自动切换。\n- `username` / `password`：仅 Basic 认证必需。iCloud 请用应用专用密码；密码推荐用环境变量 `DSH_CALENDAR_PASSWORD`。**Google CalDAV 不接受任何 Basic 密码，包括应用专用密码。**\n- `clientId` / `clientSecret` / `refreshToken`：OAuth 必需；分别支持 `DSH_CALENDAR_CLIENT_ID` / `DSH_CALENDAR_CLIENT_SECRET` / `DSH_CALENDAR_REFRESH_TOKEN`。非空配置值优先于环境变量。请勿把密钥或令牌提交到 Git。\n- `tokenUrl`：可用 `DSH_CALENDAR_TOKEN_URL`；Google 默认 `https://oauth2.googleapis.com/token`，其他 OAuth 服务必填。OAuth 的 tokenUrl 与 caldavUrl 必须为不含内嵌账号密码、查询参数或片段的 HTTPS 地址。\n- `proxyUrl`：可选 HTTP 代理地址（如 http://127.0.0.1:7890）；令牌刷新和 CalDAV 请求共用该代理。可直连时无需填写。\n- `calendarId`：google 专用，日历 ID（通常是你的邮箱）\n- `host` / `user` / `calendar`：nextcloud 专用\n\n\n## 卸载\n\n```bash\ndsh plugin --profile web remove dsh-calendar\n```\n\n卸载后重启 Web 服务。如需彻底清理，可再手动删除自己 profile `cordis.patch.yml` 中的对应插件行。\n\n## 中国用户：特殊代理配置（Google / iCloud）\n\n若本机网络无法直连 Google / iCloud，插件内置的 `proxyUrl` 可把 OAuth 令牌请求和 CalDAV 请求路由到**你本机 HTTP 代理客户端的端口**，不影响其他插件，也无需改任何系统设置。\n\n```yaml\n- id: calendar\n  config:\n    provider: google\n    calendarId: you@gmail.com\n    # OAuth 凭据通过下文三个环境变量提供\n    proxyUrl: http://127.0.0.1:7890   # 改成你代理客户端的本地端口\n```\n\n### 常见代理客户端本地端口\n\n| 客户端 | 本地端口 |\n|---|---|\n| Clash / Clash Verge（HTTP） | 7890 / 7897 |\n| v2rayN（HTTP / SOCKS） | 10808 / 10809 |\n| Shadowsocks | 1080 |\n\n在客户端界面确认你的实际端口，填进 `proxyUrl` 即可。国内可直连的 CalDAV 服务（如自建 Nextcloud）则无需填写。\n\n### Google 示例\n\n```yaml\n- id: calendar\n  name: dsh-calendar\n  config:\n    provider: google\n    calendarId: you@gmail.com\n    # authMethod: oauth  # Google 默认即为 oauth\n    # clientId / clientSecret / refreshToken 推荐用环境变量\n```\n\nGoogle 的 CalDAV 集合 URL 由插件拼成：`https://apidata.googleusercontent.com/caldav/v2/<calendarId>/events`。\n\n在启动源码版 `pnpm dsh` 或普通 `dsh` 的同一个终端中设置（以下均为占位值）：\n\n```bash\nexport DSH_CALENDAR_CLIENT_ID='你的 OAuth 客户端 ID'\nexport DSH_CALENDAR_CLIENT_SECRET='你的 OAuth 客户端密钥'\nexport DSH_CALENDAR_REFRESH_TOKEN='你授权后取得的 refresh token'\n```\n\n凭据必须来自你自己的 Google Cloud OAuth 客户端和一次用户授权，而不是邮箱应用专用密码。按 [Google CalDAV 官方设置说明](https://developers.google.com/workspace/calendar/caldav/v2/guide) 启用 API、配置 OAuth；申请日历读写范围 `https://www.googleapis.com/auth/calendar`，并请求离线访问（`access_type=offline`）以取得刷新令牌，参见 [Google 离线授权说明](https://developers.google.com/identity/protocols/oauth2/web-server#offline)。已有 OAuth 配置的用户可直接填入刷新令牌。\n\n**换 refresh token（一条命令）**：客户端类型选「桌面应用」，然后：\n\n```bash\ncd <插件目录>          # 源码仓库，或 node_modules/dsh-calendar\nnode scripts/google-oauth.mjs --client-id 你的clientId --client-secret 你的clientSecret\n```\n\n脚本会起一个**一次性本地回调**（`http://127.0.0.1:<随机端口>/`）、打开浏览器让你授权、收到 code 后换成 refresh token 并打印出来 —— 不用手工拼 URL，也不用第三方 Playground。\n\n拿到后填进面板「连接设置」（provider 选 Google，calendarId 填你的 Gmail 地址）；想走 YAML 的话就用环境变量 `DSH_CALENDAR_CLIENT_ID` / `DSH_CALENDAR_CLIENT_SECRET` / `DSH_CALENDAR_REFRESH_TOKEN`。\n\n> 同意屏仍停在「测试」状态时 refresh token 只有 7 天有效：到「OAuth 同意屏幕」点一下「发布应用」即可长期有效（个人自用无需审核）。\n\n\n**Google CalDAV 范围实测（2026-09-08）**：同一账号与日历使用 `calendar.readonly` 时，令牌刷新返回 200、集合探测 PROPFIND 返回 207，但读取日程 REPORT 返回 403；改为上述 `calendar` 范围后，REPORT 返回 207，重启验证进程后再次刷新和读取也通过。因此，请按这里的 CalDAV 配置申请范围，并用 `calendar_list` 验证真实读取，不能只凭令牌获取成功或集合探测成功判断日程可读。本次真实测试仅执行读取，没有验证 Google 的写入操作。\n\n`calendar` 范围允许查看、修改、分享及删除可访问的日历，申请前请确认接受该权限范围，详见 [Google 权限定义](https://developers.google.com/workspace/calendar/api/auth)。外部 OAuth 应用处于 **Testing** 状态时，包含日历权限的刷新令牌会在 7 天后过期；长期使用需处理重新授权或按 Google 要求配置生产状态，详见 [刷新令牌到期规则](https://developers.google.com/identity/protocols/oauth2#expiration)。\n\n插件在内存中缓存访问令牌，并在每次 DAV 请求前检查有效期、提前刷新；令牌请求与 DAV 请求都会透传调用的取消信号。401 会使缓存失效，下一次调用重新刷新，**不会自动重放写请求**。OAuth 请求不跟随重定向、不向其它源的对象 href 发送 Bearer token，请填写最终日历集合地址。运行时令牌不会写入配置或日志；若其他 OAuth 提供方轮换 refresh token，重启时需要重新提供有效凭据。\n\n### iCloud 示例\n\n```yaml\n- id: calendar\n  name: dsh-calendar\n  config:\n    provider: icloud\n    username: you@icloud.com\n    caldavUrl: https://caldav.icloud.com/123456789/calendars/<日历ID>/\n    # password 推荐用环境变量 DSH_CALENDAR_PASSWORD\n```\n\niCloud 需要完整日历集合 URL（含你的用户 ID 与日历 ID），在 icloud.com 的日历 CalDAV 设置里可找到具体日历地址。\n\n### Nextcloud 示例\n\n```yaml\n- id: calendar\n  name: dsh-calendar\n  config:\n    provider: nextcloud\n    username: alice\n    host: https://cloud.example.com\n    user: alice\n    calendar: personal\n    # password 推荐用环境变量 DSH_CALENDAR_PASSWORD\n```\n\n插件会拼成：`https://cloud.example.com/remote.php/dav/calendars/alice/personal/`。\n\n### 自定义 CalDAV 示例\n\n```yaml\n- id: calendar\n  name: dsh-calendar\n  config:\n    provider: custom\n    caldavUrl: https://dav.example.com/calendars/me/work/\n    username: me\n    # password 推荐用环境变量 DSH_CALENDAR_PASSWORD\n```\n\n## 认证失败排查\n\nGoogle：仅支持 OAuth 2.0。401/403 时检查 OAuth 授权、日历范围与日历访问权限；如果令牌刷新和 PROPFIND 成功而 REPORT 返回 403，核对实际授予的范围是否为上述 `calendar`，不要将 `calendar.readonly` 的集合探测成功当作日程读取成功。刷新失败提示会按 Google 返回的 OAuth 错误代码区分下一步：`invalid_grant` 表示授权可能已失效或与当前应用不匹配，可从连接设置重新授权；`invalid_client` / `deleted_client` 指向 OAuth 应用配置；`invalid_scope` 指向授权权限范围；HTTP 429/5xx 指向服务暂时不可用，应稍后重试。其他错误保留 HTTP 状态码和安全的错误代码供排查，不会仅因 HTTP 400 就判断授权过期，也不会显示服务端自由文本。外部 OAuth 应用处于 Testing 状态时，包含日历权限的刷新令牌会在 7 天后过期；长期使用需处理重新授权或按 Google 要求配置生产状态，详见 [刷新令牌到期规则](https://developers.google.com/identity/protocols/oauth2#expiration)。**重新生成应用专用密码不能解决 Google CalDAV 认证失败。**\n\niCloud：登录 appleid.apple.com → 登录与安全 → App 专用密码，生成后填到 `password` 或 `DSH_CALENDAR_PASSWORD`。不能用你的 Apple ID 密码。\n\nNextcloud / 自定义 Basic 服务：检查账号、密码或服务要求的应用令牌及日历权限。`calendar_health` 只检查配置完整性，不联网、不证明授权成功；请再用 `calendar_list` 验证真实连接。\n\n## 工具清单\n\n- `calendar_health`：离线检查服务商、日历集合地址与 Basic/OAuth 凭据完整性，不回显密钥、不发起网络连接。\n- `calendar_list`：列出某时间段事件（start/end，ISO 8601，缺省未来 7 天）。默认展开重复事件（`expand` 默认 true，`maxOccurrences` 默认 30、clamp 1-200）：每个实例独立成行，带 `isOccurrence: true` 与 `seriesStart`；非重复事件保持 `isOccurrence: false`。`expand=false` 时重复事件按原始单条返回并带 `rrule`。结果按开始时间稳定排序\n- `calendar_create`：新建事件（summary/start/end 必填，description/location/allDay/rrule 可选）。严格校验真实日历日期与 `end >= start`\n- `calendar_update`：按 uid 改事件（summary/start/end/description/location/allDay/rrule 可选，未提供保留原值；ATTENDEE、ORGANIZER、VALARM 等原始属性一并保留，重复规则不再丢失）\n- `calendar_delete`：按 uid 删事件\n- `calendar_search`：按关键词搜事件（只查询 start~end 窗口内的事件，缺省为当前时间前后各 1 年；客户端过滤标题/描述/地点/UID，不区分大小写；`limit` 默认 50、clamp 1-200，结果按开始时间排序）\n\n事件稳定标识 `uid` 为 CalDAV href（完整对象 URL），`calendar_update` / `calendar_delete` 使用它。\n\n## 设置页里的日历面板（0.6.0+）\n\n装好后，DSH 的「设置 → 日历」里会多出一节面板；对话页右下角还有一个 📅 小按钮，点开是同一个面板（非模态，Esc 关闭）。\n\n- **三种视图**：月（6×7 网格，今天高亮，点格子直接新建）、周（24 小时时间网格，重叠日程并排显示，默认落在 07:00）、议程（按天分组，最像「接下来要干什么」）。面板会**记住你上次用的视图**。\n- **直接拖就能改期**：周视图里拖动日程上下改时间、左右换天（15 分钟吸附），拖块底部改时长；拖动中会显示落点，与已有日程重叠时描成黄色（允许重叠，只是提醒）。键盘也能改：`↑/↓` 挪 15 分钟、`Shift+↑/↓` 挪 1 小时、`←/→` 挪一天，拖动中 `Esc` 取消。改完有 5 秒可撤销，落盘失败会自动回滚并重新对账。**重复日程与超过 24 小时的日程暂不支持拖动改期**（请在详情里编辑）。\n- **点开就能改**：点任意日程打开右侧详情 —— 时间、时长、重复规则的人话（`FREQ=WEEKLY;COUNT=6` → 「每周（共 6 次）」）、地点、备注、uid 一键复制；接着「编辑」或「删除」（删除要二次确认）。\n- **新建**：标题、日期、开始/结束、全天、地点、备注、重复（每天/每周/每月/每年，或直接写 RRULE）。\n- **冲突提醒**：保存前若与已有日程重叠，会把重叠的几条列出来问你是否继续。\n- **没配置也能配**：未填 CalDAV 账号时显示引导，点「连接设置」就在面板里把账号填好（先测后存）；也可以点「查看示例」先看面板长什么样，示例数据有明确标注，不会冒充你的真实日历。\n- **跟随主题与语言**：配色全部走宿主设计令牌（`--dsw-*`），深浅色主题自动适配；文案跟随 Settings → General 的语言。\n- **安全**：面板只与插件自己的 `/_dsh/dsh-calendar/settings` 通信；该路由仅回环地址可达，写操作还要过 Host / Origin / Content-Type 三道校验，响应里永不回显账号密码。\n## 时间与时区\n\n输入输出统一 ISO 8601。定时事件输出为 UTC（如 `2025-01-15T01:00:00Z`），全天事件输出 `YYYY-MM-DD`。输入可带时区偏移（如 `2025-01-15T09:00:00+08:00`），插件内部转 UTC 存储。\n\n## 版本记录\n\n- **0.5.4（2026-09-18）**：修复 `calendar_update` 丢 ATTENDEE/VALARM 等原始属性、RECURRENCE-ID 覆盖实例被忽略、`calendar_create` 的 uid 不用服务器 Location、展开超限静默返回空；`calendar_search` 支持时间窗。测试 79 项。\n- **0.5.3（2026-09-11）**：复验官方 Harness 0.1.5-rc.1，更新同载与真实服务验证记录；运行时代码未变。\n- **0.5.2 及更早**：见 [CHANGELOG.md](CHANGELOG.md)。\n\n## 已知限制\n\n- **网络可达性**：若无法直连，可用 `proxyUrl` 指定本机 HTTP 代理，或改用可直连的 CalDAV 端点。\n\n\n- 重复事件展开：calendar_list 默认用 ICAL.RecurExpansion 展开 RRULE（`expand=true`），受 `maxOccurrences` 封顶，展开超出迭代预算时显式报错；calendar_search 只查 start~end 窗口（默认当前前后各 1 年），仍返回原始系列（不展开）。\n- 单次实例的读取与改/删：calendar_list 展开时识别 RECURRENCE-ID 覆盖实例（单独改期/改标题的实例按覆盖后的时间与字段返回，被 EXDATE 排除原时间的覆盖实例仍会返回）；calendar_update / calendar_delete 仍针对整个重复系列（按 uid 操作），无法只修改或删除某一次发生。\n- OAuth 凭据需要事先取得：支持刷新令牌认证，但不提供浏览器登录 UI / 登录 CLI，也不把运行时令牌写回配置文件。\n- 时区规则：带 TZID（命名时区）的事件输出会转成 UTC（Z）；全天边界、夏令时等复杂时区规则不做精细化处理。\n- 日历发现：iCloud 需手动填完整日历集合 URL；不做 principal 自动发现与多日历选择。\n- 取消/超时：工具使用 timeoutMs（60 秒），并向令牌刷新与 DAV 网络请求透传宿主 AbortSignal；并发调用独立取消。\n\n## 开发\n\n- **UI 行为测试**：`test/render.test.mjs` 用 jsdom + 真 React 渲染周视图并派发真实事件（点击 / 拖动 / Esc / 卸载 / 边缘滚动）。改前端交互时它会替你点一遍；`pnpm test` 会一起跑。\n\n```bash\npnpm install\npnpm test   # 构建 + node --test\n```\n\n构建产物在 `lib/`，测试在 `test/*.test.mjs`（不依赖真实账号）。\n\n## 相关插件\n\n- [dsh-calendar](https://github.com/STARDUSTLC666/dsh-calendar) — CalDAV 日历五件套\n- [dsh-slack](https://github.com/STARDUSTLC666/dsh-slack) — Slack 通知/收件箱\n- [dsh-dingtalk](https://github.com/STARDUSTLC666/dsh-dingtalk) — 钉钉群通知（零依赖）\n","readmeFilename":"README.md"}