@doubao-apps/ai 0.0.25 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +21 -0
  2. package/dist/994.js +6 -6
  3. package/dist/contexts/doubao-apps-dev/.ai/examples/common-patterns.md +600 -0
  4. package/dist/contexts/doubao-apps-dev/.ai/examples/component-basics.md +509 -0
  5. package/dist/contexts/doubao-apps-dev/.ai/guides/best-practices.md +571 -0
  6. package/dist/contexts/doubao-apps-dev/.ai/guides/component-development.md +857 -0
  7. package/dist/contexts/doubao-apps-dev/.ai/guides/performance-optimization.md +404 -0
  8. package/dist/contexts/doubao-apps-dev/.ai/guides/system-prompt.md +331 -0
  9. package/dist/contexts/doubao-apps-dev/.ai/guides/troubleshooting.md +291 -0
  10. package/dist/contexts/doubao-apps-dev/.ai/reference/components-quick-ref.md +103 -0
  11. package/dist/contexts/doubao-apps-dev/.ai/reference/framework-api-quick-ref.md +537 -0
  12. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/01-/345/237/272/347/241/200-/350/264/246/345/217/267-/347/263/273/347/273/237.md +699 -0
  13. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/02-/345/255/230/345/202/250.md +409 -0
  14. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/03-/350/267/257/347/224/261.md +165 -0
  15. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/04-/347/225/214/351/235/242-/344/272/244/344/272/222.md +432 -0
  16. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/05-/347/225/214/351/235/242-/350/276/223/345/205/245.md +42 -0
  17. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/06-/347/275/221/347/273/234.md +148 -0
  18. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/07-/345/252/222/344/275/223.md +346 -0
  19. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/08-/345/274/200/346/224/276/350/203/275/345/212/233-/344/270/232/345/212/241/350/203/275/345/212/233.md +546 -0
  20. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/09-/350/256/276/345/244/207-/350/223/235/347/211/231.md +961 -0
  21. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/10-/350/256/276/345/244/207-wi-fi.md +277 -0
  22. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/11-/350/256/276/345/244/207-/345/212/240/351/200/237/345/272/246/350/256/241.md +104 -0
  23. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/12-/350/256/276/345/244/207-ibeacon.md +148 -0
  24. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/13-/350/256/276/345/244/207-/347/275/227/347/233/230.md +82 -0
  25. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/14-/350/256/276/345/244/207-/350/256/276/345/244/207/346/226/271/345/220/221.md +70 -0
  26. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/15-/350/256/276/345/244/207-/351/231/200/350/236/272/344/273/252.md +104 -0
  27. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/16-ui-/350/276/223/345/205/245.md +65 -0
  28. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/17-/350/256/276/345/244/207-/347/275/221/347/273/234.md +164 -0
  29. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/18-/350/256/276/345/244/207-/347/237/255/344/277/241.md +62 -0
  30. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/19-/350/256/276/345/244/207-/346/227/240/351/232/234/347/242/215.md +43 -0
  31. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/20-/350/256/276/345/244/207-/347/224/265/346/261/240.md +83 -0
  32. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/21-/350/256/276/345/244/207-/346/227/245/345/216/206.md +215 -0
  33. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/22-/350/256/276/345/244/207-/345/211/252/350/264/264/346/235/277.md +70 -0
  34. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/23-/350/256/276/345/244/207-/350/201/224/347/263/273/344/272/272.md +270 -0
  35. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/24-/350/256/276/345/244/207-/345/212/240/345/257/206.md +56 -0
  36. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/25-/350/256/276/345/244/207-/347/224/265/350/257/235.md +41 -0
  37. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/26-/350/256/276/345/244/207-/346/211/253/347/240/201.md +100 -0
  38. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/27-/350/256/276/345/244/207-/345/261/217/345/271/225.md +173 -0
  39. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/28-/350/256/276/345/244/207-/351/234/207/345/212/250.md +66 -0
  40. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api/README.md +36 -0
  41. package/dist/contexts/doubao-apps-dev/.ai/reference/open-api.md +326 -0
  42. package/dist/contexts/doubao-apps-dev/.ai/rules/dos-and-donts.md +390 -0
  43. package/dist/{skills → contexts}/doubao-apps-dev/AGENTS.md +56 -33
  44. package/dist/{skills → contexts}/doubao-apps-dev/CLAUDE.md +1 -1
  45. package/dist/manifest.json +45 -0
  46. package/dist/skills/doubao-apps-dev/.ai/examples/common-patterns.md +53 -43
  47. package/dist/skills/doubao-apps-dev/.ai/examples/component-basics.md +0 -17
  48. package/dist/skills/doubao-apps-dev/.ai/guides/component-development.md +96 -214
  49. package/dist/skills/doubao-apps-dev/.ai/guides/system-prompt.md +14 -14
  50. package/dist/skills/doubao-apps-dev/.ai/reference/framework-api-quick-ref.md +46 -85
  51. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/01-/345/237/272/347/241/200-/350/264/246/345/217/267-/347/263/273/347/273/237.md +699 -0
  52. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/02-/345/255/230/345/202/250.md +409 -0
  53. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/03-/350/267/257/347/224/261.md +165 -0
  54. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/04-/347/225/214/351/235/242-/344/272/244/344/272/222.md +432 -0
  55. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/05-/347/225/214/351/235/242-/350/276/223/345/205/245.md +42 -0
  56. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/06-/347/275/221/347/273/234.md +148 -0
  57. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/07-/345/252/222/344/275/223.md +346 -0
  58. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/08-/345/274/200/346/224/276/350/203/275/345/212/233-/344/270/232/345/212/241/350/203/275/345/212/233.md +546 -0
  59. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/09-/350/256/276/345/244/207-/350/223/235/347/211/231.md +961 -0
  60. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/10-/350/256/276/345/244/207-wi-fi.md +277 -0
  61. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/11-/350/256/276/345/244/207-/345/212/240/351/200/237/345/272/246/350/256/241.md +104 -0
  62. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/12-/350/256/276/345/244/207-ibeacon.md +148 -0
  63. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/13-/350/256/276/345/244/207-/347/275/227/347/233/230.md +82 -0
  64. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/14-/350/256/276/345/244/207-/350/256/276/345/244/207/346/226/271/345/220/221.md +70 -0
  65. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/15-/350/256/276/345/244/207-/351/231/200/350/236/272/344/273/252.md +104 -0
  66. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/16-ui-/350/276/223/345/205/245.md +65 -0
  67. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/17-/350/256/276/345/244/207-/347/275/221/347/273/234.md +164 -0
  68. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/18-/350/256/276/345/244/207-/347/237/255/344/277/241.md +62 -0
  69. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/19-/350/256/276/345/244/207-/346/227/240/351/232/234/347/242/215.md +43 -0
  70. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/20-/350/256/276/345/244/207-/347/224/265/346/261/240.md +83 -0
  71. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/21-/350/256/276/345/244/207-/346/227/245/345/216/206.md +215 -0
  72. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/22-/350/256/276/345/244/207-/345/211/252/350/264/264/346/235/277.md +70 -0
  73. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/23-/350/256/276/345/244/207-/350/201/224/347/263/273/344/272/272.md +270 -0
  74. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/24-/350/256/276/345/244/207-/345/212/240/345/257/206.md +56 -0
  75. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/25-/350/256/276/345/244/207-/347/224/265/350/257/235.md +41 -0
  76. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/26-/350/256/276/345/244/207-/346/211/253/347/240/201.md +100 -0
  77. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/27-/350/256/276/345/244/207-/345/261/217/345/271/225.md +173 -0
  78. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/28-/350/256/276/345/244/207-/351/234/207/345/212/250.md +66 -0
  79. package/dist/skills/doubao-apps-dev/.ai/reference/open-api/README.md +36 -0
  80. package/dist/skills/doubao-apps-dev/.ai/reference/open-api.md +267 -4542
  81. package/dist/skills/doubao-apps-dev/.ai/rules/dos-and-donts.md +50 -37
  82. package/dist/skills/doubao-apps-dev/SKILL.md +57 -29
  83. package/dist/skills/douyin-to-doubao/SKILL.md +2 -2
  84. package/dist/skills/h5-to-doubao/SKILL.md +2 -2
  85. package/dist/skills/uniapp-to-doubao/SKILL.md +2 -2
  86. package/dist/skills/weixin-to-doubao/SKILL.md +2 -2
  87. package/package.json +4 -2
@@ -87,19 +87,6 @@ interface UserInfo {
87
87
  }
88
88
 
89
89
  export default defineWidget({
90
- aiMeta: {
91
- id: 'user-card',
92
- name: '用户卡片',
93
- input: {
94
- type: 'object',
95
- properties: {
96
- name: { type: 'string', title: '姓名' },
97
- age: { type: 'number', title: '年龄' },
98
- avatar: { type: 'string', title: '头像' }
99
- },
100
- required: ['name', 'age']
101
- }
102
- },
103
90
  render() {
104
91
  const input = getViewData<UserInfo>();
105
92
  return <view>{input.name}</view>;
@@ -107,6 +94,21 @@ export default defineWidget({
107
94
  });
108
95
  ```
109
96
 
97
+ ```ts
98
+ // ✅ 把 metadata 写到 src/app.config.ts
99
+ import { defineAppConfig } from '@doubao-apps/kit';
100
+
101
+ export default defineAppConfig({
102
+ widgets: {
103
+ 'widgets/user-card': {
104
+ id: 'user-card',
105
+ name: '用户卡片',
106
+ description: '用户信息卡片'
107
+ }
108
+ }
109
+ });
110
+ ```
111
+
110
112
  ```tsx
111
113
  // ❌ 不好的做法
112
114
  export default defineWidget({
@@ -247,20 +249,26 @@ export default definePage({
247
249
  ```
248
250
 
249
251
  ```tsx
250
- // ✅ 正确 - 在生命周期钩子中请求
251
- export default definePage({
252
- data: {
253
- userData: null
254
- },
252
+ // ✅ 推荐 - 使用 Hook 管理请求和状态
253
+ import { useEffect, useState } from '@doubao-apps/framework';
255
254
 
256
- onShow() {
257
- fetch('/api/data').then(data => {
258
- this.setData({ userData: data });
259
- });
260
- },
255
+ function UserPage() {
256
+ const [userData, setUserData] = useState<{ name?: string } | null>(null);
257
+
258
+ useEffect(() => {
259
+ fetch('/api/data')
260
+ .then(res => res.json())
261
+ .then(data => {
262
+ setUserData(data);
263
+ });
264
+ }, []);
261
265
 
266
+ return <view>{userData?.name}</view>;
267
+ }
268
+
269
+ export default definePage({
262
270
  render() {
263
- return <view>{this.data.userData?.name}</view>;
271
+ return <UserPage />;
264
272
  }
265
273
  });
266
274
  ```
@@ -351,21 +359,26 @@ export default defineWidget({
351
359
  ```
352
360
 
353
361
  ```tsx
354
- // ✅ 正确 - 使用实例状态
362
+ // ✅ 推荐 - 使用组件内状态,实例之间互不影响
363
+ import { useState } from '@doubao-apps/framework';
364
+
365
+ function CounterWidget() {
366
+ const [count, setCount] = useState(0);
367
+
368
+ return (
369
+ <view
370
+ onClick={() => {
371
+ setCount(prev => prev + 1);
372
+ }}
373
+ >
374
+ Count: {count}
375
+ </view>
376
+ );
377
+ }
378
+
355
379
  export default defineWidget({
356
- data: {
357
- count: 0
358
- },
359
380
  render() {
360
- return (
361
- <view
362
- onClick={() => {
363
- this.setData({ count: this.data.count + 1 });
364
- }}
365
- >
366
- Count: {this.data.count}
367
- </view>
368
- );
381
+ return <CounterWidget />;
369
382
  }
370
383
  });
371
384
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: doubao-apps-dev
3
- description: >
3
+ description:
4
4
  Doubao Apps SDK (框架/framework) 开发指南。用于开发豆包小程序应用,
5
5
  包含 Page(页面)、Widget(卡片)组件开发、Bridge API 系统能力调用、生命周期管理等。
6
6
  基于 React Lynx 框架,使用 TSX/JSX 语法和 React Hooks 开发模式,并且提供了内置 UI 组件开箱即用。
@@ -35,12 +35,17 @@ Doubao Apps SDK 是豆包应用开发框架,基于 React Lynx 框架提供完
35
35
  ### 3. 创建项目
36
36
 
37
37
  ```bash
38
+ # 使用 create 创建一个 empty 工程,注意,使用正式的项目文件夹名
39
+ npm create @byted-doubao-apps my-doubao-app -- --template empty -y
40
+
41
+ # 进入项目目录
42
+ cd my-doubao-app
43
+
38
44
  # 安装依赖
39
45
  pnpm install
40
46
 
41
47
  # 启动开发
42
48
  pnpm dev
43
-
44
49
  ```
45
50
 
46
51
  **开发服务器命令**:
@@ -53,7 +58,6 @@ pnpm dev
53
58
 
54
59
  ```
55
60
  my-doubao-app/
56
- ├── doubao.config.ts # 项目配置
57
61
  ├── package.json # 依赖管理
58
62
  ├── pnpm-lock.yaml # 依赖锁定
59
63
  └── src/
@@ -76,9 +80,9 @@ my-doubao-app/
76
80
 
77
81
  - **优先使用 pnpm** 作为包管理器
78
82
  - **分离样式文件**:每个组件使用独立的 `.scss` 文件
79
- - **定义 aiMeta**:为 Page 和 Widget 提供完整的元数据
83
+ - **在 `src/app.config.ts` 中配置 metadata**:为 App、Page 和 Widget 统一配置元数据
80
84
  - **使用生命周期钩子**:合理使用 `onShow`、`onMounted` 等
81
- - **TypeScript 类型**:为 props 和 state 提供类型定义
85
+ - **TypeScript 类型**:使用 `getViewData<T>()`、为 props 和 state 提供类型定义
82
86
  - **错误处理**:处理边界情况和错误状态
83
87
 
84
88
  ### 禁止做法
@@ -102,22 +106,37 @@ my-doubao-app/
102
106
 
103
107
  Page 是全屏 UI 组件,支持九宫格、浮窗等变体。
104
108
 
105
- **基础结构**:
109
+ **metadata 配置**:
110
+ ```ts
111
+ import { defineAppConfig } from '@doubao-apps/kit';
112
+
113
+ export default defineAppConfig({
114
+ pages: {
115
+ 'pages/home': {
116
+ id: 'my-page',
117
+ title: '我的页面',
118
+ description: '页面功能描述'
119
+ }
120
+ }
121
+ });
122
+ ```
123
+
124
+ **页面实现**:
106
125
  ```tsx
107
126
  import { definePage, getViewData } from '@doubao-apps/framework';
108
127
  import './index.scss';
109
128
 
129
+ interface HomePageData {
130
+ title: string;
131
+ }
132
+
110
133
  export default definePage({
111
- aiMeta: {
112
- id: 'my-page',
113
- title: '我的页面',
114
- },
115
134
  onShow() {
116
135
  // 页面显示时触发
117
136
  },
118
137
  render() {
119
- const input = getViewData();
120
- return <view>页面内容</view>;
138
+ const input = getViewData<HomePageData>();
139
+ return <view>{input.title}</view>;
121
140
  }
122
141
  });
123
142
  ```
@@ -128,28 +147,38 @@ export default definePage({
128
147
 
129
148
  Widget 是聊天流中的卡片组件,在对话中展示。
130
149
 
131
- **基础结构**:
150
+ **metadata 配置**:
151
+ ```ts
152
+ import { defineAppConfig } from '@doubao-apps/kit';
153
+
154
+ export default defineAppConfig({
155
+ widgets: {
156
+ 'widgets/my-widget': {
157
+ id: 'my-widget',
158
+ name: '我的卡片',
159
+ description: '卡片功能描述',
160
+ boxType: 'inbox',
161
+ border: true
162
+ }
163
+ }
164
+ });
165
+ ```
166
+
167
+ **卡片实现**:
132
168
  ```tsx
133
169
  import { defineWidget, getViewData } from '@doubao-apps/framework';
134
170
  import './index.scss';
135
171
 
172
+ interface MyWidgetData {
173
+ title: string;
174
+ }
175
+
136
176
  export default defineWidget({
137
- aiMeta: {
138
- id: 'my-widget',
139
- name: '我的卡片',
140
- boxType: 'inbox',
141
- input: {
142
- type: 'object',
143
- properties: {
144
- title: { type: 'string', title: '标题' }
145
- }
146
- }
147
- },
148
177
  onMounted() {
149
178
  // 卡片挂载后触发
150
179
  },
151
180
  render() {
152
- const input = getViewData();
181
+ const input = getViewData<MyWidgetData>();
153
182
  return <view>{input.title}</view>;
154
183
  }
155
184
  });
@@ -181,7 +210,7 @@ export default defineWidget({
181
210
  完整的 Framework API(框架核心)和 Bridge API(系统能力)列表:
182
211
 
183
212
  - **[Framework API 快速参考](.ai/reference/framework-api-quick-ref.md)** - 核心 Framework API 速查
184
- - **[Open API 文档](.ai/reference/open-api.md)** - 公开可用的端能力(系统能力)定义
213
+ - **[Open API 目录](.ai/reference/open-api/README.md)** - 公开可用的端能力(系统能力)目录与详细文档
185
214
  - **[组件库快速参考](.ai/reference/components-quick-ref.md)** - SDK 内置组件(Button、Switch、Swiper 等)
186
215
 
187
216
  包含:
@@ -216,8 +245,7 @@ API 参考文档
216
245
 
217
246
  - **[Framework API](.ai/reference/framework-api-quick-ref.md)** - 核心 Framework API 速查
218
247
  - **[组件库](.ai/reference/components-quick-ref.md)** - SDK 内置组件速查
219
- - **[Open API](.ai/reference/open-api.md)** - 系统能力 API
220
-
248
+ - **[Open API](.ai/reference/open-api/README.md)** - 系统能力 API 目录与详细文档
221
249
 
222
250
  ### 依赖包
223
251
 
@@ -253,7 +281,7 @@ API 参考文档
253
281
 
254
282
  ```
255
283
  <skill-directory>/
256
- ├── SKILL.md # 主入口文档(AI Agent 必读)
284
+ ├── SKILL.md # 主入口文档(AI Agent 必读)
257
285
  └── .ai/ # 详细文档目录
258
286
  ├── guides/ # 开发指南
259
287
  ├── rules/ # 开发规则
@@ -108,8 +108,8 @@ npx @doubao-apps/ai skills add doubao-apps-dev --agent codex
108
108
  依次检测以下路径,取第一个存在的作为 `$SKILLS_BASE`:
109
109
 
110
110
  ```bash
111
- ls .agents/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.agents/skills/doubao-apps-dev"
112
- ls .claude/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
111
+ ls .agents/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.agents/skills/doubao-apps-dev"
112
+ ls .claude/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
113
113
  ```
114
114
 
115
115
  **2. 如未安装,执行安装**
@@ -140,10 +140,10 @@ view {
140
140
 
141
141
  ```bash
142
142
  # Claude Code 优先
143
- ls .claude/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
143
+ ls .claude/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
144
144
 
145
145
  # 其他 Agent(Cursor 等)
146
- ls .agent/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.agent/skills/doubao-apps-dev"
146
+ ls .agent/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.agent/skills/doubao-apps-dev"
147
147
  ```
148
148
 
149
149
  **2. 如未安装,执行安装**:
@@ -109,8 +109,8 @@ npx @doubao-apps/ai skills add doubao-apps-dev --agent codex
109
109
  依次检测以下路径,取第一个存在的作为 `$SKILLS_BASE`:
110
110
 
111
111
  ```bash
112
- ls .agents/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.agents/skills/doubao-apps-dev"
113
- ls .claude/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
112
+ ls .agents/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.agents/skills/doubao-apps-dev"
113
+ ls .claude/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
114
114
  ```
115
115
 
116
116
  **2. 如未安装,执行安装**
@@ -78,10 +78,10 @@ description: Migrate WeChat Mini Program (微信小程序) projects to Doubao Ap
78
78
 
79
79
  ```bash
80
80
  # Claude Code 优先
81
- ls .claude/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
81
+ ls .claude/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.claude/skills/doubao-apps-dev"
82
82
 
83
83
  # 其他 Agent(Cursor 等)
84
- ls .agent/skills/doubao-apps-dev/AGENTS.md 2>/dev/null && echo "SKILLS_BASE=.agent/skills/doubao-apps-dev"
84
+ ls .agent/skills/doubao-apps-dev/SKILL.md 2>/dev/null && echo "SKILLS_BASE=.agent/skills/doubao-apps-dev"
85
85
  ```
86
86
 
87
87
  **2. 如未安装,执行安装**:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@doubao-apps/ai",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "description": "Doubao Apps SDK AI tools with context and skills management",
5
5
  "type": "module",
6
6
  "bin": {
@@ -16,7 +16,9 @@
16
16
  "import": "./dist/cli.js",
17
17
  "types": "./dist/cli.d.ts"
18
18
  },
19
- "./skills/*": "./dist/skills/*"
19
+ "./manifest": "./dist/manifest.json",
20
+ "./skills/*": "./dist/skills/*",
21
+ "./contexts/*": "./dist/contexts/*"
20
22
  },
21
23
  "files": [
22
24
  "bin.js",