mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
2.2 KiB
2.2 KiB
Context
上下文对象是 Cordis 的核心。所有服务、方法、属性都通过 ctx 访问。
服务与混入
Context 基于组合式 API 设计,大部分属性和方法挂载在服务上。以下是核心 API:
ctx.on— 注册事件监听器ctx.emit— 触发事件ctx.bail— 短路事件ctx.serial— 顺序异步事件ctx.waterfall— 管道事件ctx.effect— 注册可逆效果ctx.plugin— 加载子插件ctx.inject— 获取依赖的插件ctx.get— 获取服务ctx.set— 设置服务ctx.provide— 声明服务
实例属性
ctx.fiber
- 类型:
Fiber
当前上下文的作用域对象。
实例方法
ctx.extend(meta)
- meta:
object - 返回值:
Context
构造一个以当前上下文为原型的新上下文实例。
ctx.intercept(name, config)
- name:
string服务名称 - config:
object配置拦截 - 返回值:
Context
为指定服务添加一层配置拦截,返回新的上下文实例。
ctx.isolate(name, label?)
- name:
string服务名称 - label:
symbol隔离域符号(可选) - 返回值:
Context
创建一个针对指定服务的隔离域,返回新的上下文实例。隔离域中的同名服务互不影响。
ctx.get(name)
- name:
string服务名称 - 返回值:
Service | undefined
获取指定名称的服务实例。
ctx.set(name, value)
- name:
string服务名称 - value:
any服务值
设置指定名称的服务。
ctx.provide(name, value?, options?)
- name:
string服务名称 - value:
any初始值(可选) - options:
object - 返回值:
void
声明一个服务。声明后其他插件可以通过 inject 依赖它。
静态属性
Context.events
内置事件服务的 symbol key。
Context.current
当前活跃的 Context 实例(在异步链中通过 AsyncLocalStorage 追踪)。