SDK 参考
@aweeclaw/scenario-sdk 为场景开发提供完整的 TypeScript 类型定义。
安装
bash
npm install @aweeclaw/scenario-sdk --save-dev概述
SDK 提供以下类型模块:
| 模块 | 文件 | 说明 |
|---|---|---|
| 枚举类型 | enums.ts | ScenarioCategory, UILayout, ScenarioPermission 等 |
| 场景核心 | scenario.ts | ScenarioPlugin, ScenarioIdentity 等 |
| 模块系统 | module.ts | ScenarioModule, ScenarioModuleContext 等 |
| 声明式类型 | declarative.ts | DeclarativeScenarioConfig 等 |
导入方式
typescript
import type {
// 枚举
ScenarioCategory,
ScenarioPermission,
ScenarioLifecycleState,
UILayout,
WorkMode,
// 场景核心
ScenarioPlugin,
ScenarioIdentity,
ScenarioCapabilities,
ScenarioUI,
ScenarioDataSources,
// 模块系统
ScenarioModule,
ScenarioModuleContext,
ScenarioManifest,
ScenarioToolDefinition,
// 声明式
DeclarativeScenarioConfig,
DeclarativeIdentity,
DeclarativeCustomTool,
} from '@aweeclaw/scenario-sdk'类型总览
typescript
// 场景插件
ScenarioPlugin {
id, name, nameZh, icon, description, descriptionZh,
version, author, category, tags,
identity: ScenarioIdentity,
capabilities: ScenarioCapabilities,
ui: ScenarioUI,
dataSources: ScenarioDataSources,
}
// 场景身份
ScenarioIdentity {
systemPrompt?, systemPromptFile?,
securityRules?, securityRulesFile?,
conventions?, conventionsFile?,
workflow?, workflowFile?,
}
// 场景能力
ScenarioCapabilities {
toolPacks: string[],
modes: ScenarioModeDescriptor[],
contextTypes: ContextTypeDescriptor[],
outputFormats: string[],
}
// 场景 UI
ScenarioUI {
layout: UILayout,
panels: PanelDescriptor[],
sidebarItems: SidebarItem[],
statusBarItems: StatusBarItem[],
defaultSidePanel?: string,
welcomeMessage?, welcomeMessageZh?,
}
// 模块系统
ScenarioModule {
id, version,
getManifest(): ScenarioManifest,
getPlugin(): ScenarioPlugin,
getTools(): ScenarioToolDefinition[],
getComponents?(): ScenarioComponentRegistry,
onActivate?(context: ScenarioModuleContext): Promise<void>,
onDeactivate?(context: ScenarioModuleContext): Promise<void>,
onHealthCheck?(): Promise<ScenarioHealthCheck[]>,
}
// 声明式配置
DeclarativeScenarioConfig {
id, version, name, nameZh, type: 'declarative',
identity: DeclarativeIdentity,
capabilities: DeclarativeCapabilities,
ui?: DeclarativeUI,
database?: DeclarativeDatabase,
scripts?: DeclarativeScripts,
}构建
SDK 使用 tsup 构建,输出 ESM + CJS + 类型声明:
bash
npm run build输出:
dist/index.js- ESMdist/index.cjs- CJSdist/index.d.ts- 类型声明

