{"_id":"@dangzhuotong/cordis-plugin-loader","name":"@dangzhuotong/cordis-plugin-loader","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.2":{"name":"@dangzhuotong/cordis-plugin-loader","description":"Plugin loader for cordis","version":"1.0.2","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"vendor/loader"},"type":"module","main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./src/*":"./src/*","./package.json":"./package.json"},"author":{"name":"Shigma","email":"shigma10826@gmail.com"},"license":"MIT","peerDependencies":{"node-addon-require-builtin":"^0.1.4","@dangzhuotong/cordis":"^4.0.1"},"peerDependenciesMeta":{"node-addon-require-builtin":{"optional":true}},"dependencies":{"@dangzhuotong/cosmokit":"^1.8.2"},"_id":"@dangzhuotong/cordis-plugin-loader@1.0.2","gitHead":"53baf21dfae3d134fa248f36dafb4ab1fe28e55c","bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","_integrity":"sha512-FXJf8+c6FhHdpxrZq96Yp3TjNEtpBUNymiI5/2HrM8d1v6o8EMmiV1JAbvARlJxQqJfEJA0ymvGsNVr3dlzXeA==","_resolved":"D:\\Coding\\deepseek-harness-master\\dist\\npm\\vendor\\dangzhuotong-cordis-plugin-loader-1.0.2.tgz","_from":"file:D:/Coding/deepseek-harness-master/dist/npm/vendor/dangzhuotong-cordis-plugin-loader-1.0.2.tgz","_nodeVersion":"22.21.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-FXJf8+c6FhHdpxrZq96Yp3TjNEtpBUNymiI5/2HrM8d1v6o8EMmiV1JAbvARlJxQqJfEJA0ymvGsNVr3dlzXeA==","shasum":"9d6d561cfbe812f313bf734f5b7dc653eef6a78e","tarball":"https://registry.npmjs.org/@dangzhuotong/cordis-plugin-loader/-/cordis-plugin-loader-1.0.2.tgz","fileCount":25,"unpackedSize":90125,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCYLOpAeNjqJosMy6+pK1e2iWmLjPZ8+IURCsNSbQjVoAIgRNtGOdpq8Gzniiu2Ne+83VgffvxEu0iVuDGBT09n0h8="}]},"_npmUser":{"name":"dangzhuotong","email":"353199054@qq.com"},"directories":{},"maintainers":[{"name":"dangzhuotong","email":"353199054@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cordis-plugin-loader_1.0.2_1787281194018_0.6818807878824329"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-21T02:59:53.823Z","1.0.2":"2026-08-21T02:59:54.163Z","modified":"2026-08-21T02:59:54.410Z"},"maintainers":[{"name":"dangzhuotong","email":"353199054@qq.com"}],"description":"Plugin loader for cordis","homepage":"https://github.com/deepseek-ai/deepseek-harness#readme","repository":{"type":"git","url":"git+https://github.com/deepseek-ai/deepseek-harness.git","directory":"vendor/loader"},"author":{"name":"Shigma","email":"shigma10826@gmail.com"},"bugs":{"url":"https://github.com/deepseek-ai/deepseek-harness/issues"},"license":"MIT","readme":"# @cordisjs/plugin-loader\n\nRuntime plugin loader for Cordis. The loader owns an `EntryTree`, imports plugin\nmodules by name, applies their config, and keeps the running plugin graph in\nsync with entry updates.\n\n## Usage\n\n```ts\nimport { Context } from 'cordis'\nimport Loader from '@cordisjs/plugin-loader'\n\nconst root = new Context()\nawait root.plugin(Loader, { baseUrl: import.meta.url })\n\nconst id = await root.loader.create({\n  name: './plugins/example',\n  config: { enabled: true },\n})\n\nawait root.loader.await()\nroot.loader.update(id, { config: { enabled: false } })\n```\n\n## Entry Options\n\n| Field | Description |\n| --- | --- |\n| `id` | Stable id for resolving, updating, and removing the entry. |\n| `name` | Module specifier imported by the loader. |\n| `config` | Config passed to the plugin. |\n| `group` | Marks the entry as a group whose `config` is a child entry list. |\n| `disabled` | Stops the entry and prevents it from starting. |\n| `inject` | Adds required services or intercept config for this entry. |\n\n## API\n\n| API | Description |\n| --- | --- |\n| `loader.create(options, parent?, position?)` | Add and start an entry. |\n| `loader.update(id, options, parent?, position?)` | Update, move, and restart an entry. |\n| `loader.remove(id)` | Stop and delete an entry. |\n| `loader.resolve(id)` | Resolve an entry by id, including nested `a:b` ids. |\n| `loader.resolveGroup(id)` | Resolve the root group or a nested group. |\n| `loader.await()` | Wait for pending entry imports and fiber reloads. |\n| `loader.locate(fiber?)` | Return the loader entry id that owns a fiber. |\n\nFor file-backed trees, use `@cordisjs/plugin-include`.\n","readmeFilename":"README.md","_rev":"1-c103ccb6567b181768c9d2e8e5b4a179"}