@iniesta8888/agent-live 0.3.0

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 (182) hide show
  1. package/CODE_OF_CONDUCT.md +7 -0
  2. package/CONTRIBUTING.md +56 -0
  3. package/LICENSE +21 -0
  4. package/README.md +92 -0
  5. package/SECURITY.md +13 -0
  6. package/dist/adapter-sdk/index.d.ts +45 -0
  7. package/dist/adapter-sdk/index.d.ts.map +1 -0
  8. package/dist/adapter-sdk/index.js +106 -0
  9. package/dist/adapter-sdk/index.js.map +1 -0
  10. package/dist/content/compiler.d.ts +31 -0
  11. package/dist/content/compiler.d.ts.map +1 -0
  12. package/dist/content/compiler.js +218 -0
  13. package/dist/content/compiler.js.map +1 -0
  14. package/dist/content/graph-validator.d.ts +56 -0
  15. package/dist/content/graph-validator.d.ts.map +1 -0
  16. package/dist/content/graph-validator.js +226 -0
  17. package/dist/content/graph-validator.js.map +1 -0
  18. package/dist/content/library.d.ts +4 -0
  19. package/dist/content/library.d.ts.map +1 -0
  20. package/dist/content/library.js +45 -0
  21. package/dist/content/library.js.map +1 -0
  22. package/dist/content/registry.d.ts +34 -0
  23. package/dist/content/registry.d.ts.map +1 -0
  24. package/dist/content/registry.js +130 -0
  25. package/dist/content/registry.js.map +1 -0
  26. package/dist/content/runtime-content.d.ts +63 -0
  27. package/dist/content/runtime-content.d.ts.map +1 -0
  28. package/dist/content/runtime-content.js +78 -0
  29. package/dist/content/runtime-content.js.map +1 -0
  30. package/dist/content/schema.d.ts +142 -0
  31. package/dist/content/schema.d.ts.map +1 -0
  32. package/dist/content/schema.js +280 -0
  33. package/dist/content/schema.js.map +1 -0
  34. package/dist/content/validator.d.ts +35 -0
  35. package/dist/content/validator.d.ts.map +1 -0
  36. package/dist/content/validator.js +205 -0
  37. package/dist/content/validator.js.map +1 -0
  38. package/dist/core/agents.d.ts +56 -0
  39. package/dist/core/agents.d.ts.map +1 -0
  40. package/dist/core/agents.js +148 -0
  41. package/dist/core/agents.js.map +1 -0
  42. package/dist/core/limits.d.ts +15 -0
  43. package/dist/core/limits.d.ts.map +1 -0
  44. package/dist/core/limits.js +16 -0
  45. package/dist/core/limits.js.map +1 -0
  46. package/dist/core/mapping.d.ts +17 -0
  47. package/dist/core/mapping.d.ts.map +1 -0
  48. package/dist/core/mapping.js +94 -0
  49. package/dist/core/mapping.js.map +1 -0
  50. package/dist/core/protocol.d.ts +105 -0
  51. package/dist/core/protocol.d.ts.map +1 -0
  52. package/dist/core/protocol.js +6 -0
  53. package/dist/core/protocol.js.map +1 -0
  54. package/dist/core/state.d.ts +49 -0
  55. package/dist/core/state.d.ts.map +1 -0
  56. package/dist/core/state.js +216 -0
  57. package/dist/core/state.js.map +1 -0
  58. package/dist/creator/commands.d.ts +19 -0
  59. package/dist/creator/commands.d.ts.map +1 -0
  60. package/dist/creator/commands.js +44 -0
  61. package/dist/creator/commands.js.map +1 -0
  62. package/dist/creator/mode.d.ts +10 -0
  63. package/dist/creator/mode.d.ts.map +1 -0
  64. package/dist/creator/mode.js +23 -0
  65. package/dist/creator/mode.js.map +1 -0
  66. package/dist/creator/service.d.ts +199 -0
  67. package/dist/creator/service.d.ts.map +1 -0
  68. package/dist/creator/service.js +159 -0
  69. package/dist/creator/service.js.map +1 -0
  70. package/dist/index.d.ts +14 -0
  71. package/dist/index.d.ts.map +1 -0
  72. package/dist/index.js +10 -0
  73. package/dist/index.js.map +1 -0
  74. package/dist/runtime/agent-live-runtime.d.ts +17 -0
  75. package/dist/runtime/agent-live-runtime.d.ts.map +1 -0
  76. package/dist/runtime/agent-live-runtime.js +50 -0
  77. package/dist/runtime/agent-live-runtime.js.map +1 -0
  78. package/dist/runtime/content-service.d.ts +75 -0
  79. package/dist/runtime/content-service.d.ts.map +1 -0
  80. package/dist/runtime/content-service.js +60 -0
  81. package/dist/runtime/content-service.js.map +1 -0
  82. package/dist/runtime/resource-guard.d.ts +17 -0
  83. package/dist/runtime/resource-guard.d.ts.map +1 -0
  84. package/dist/runtime/resource-guard.js +54 -0
  85. package/dist/runtime/resource-guard.js.map +1 -0
  86. package/dist/runtime/server.d.ts +39 -0
  87. package/dist/runtime/server.d.ts.map +1 -0
  88. package/dist/runtime/server.js +286 -0
  89. package/dist/runtime/server.js.map +1 -0
  90. package/dist/web/app.d.ts +1 -0
  91. package/dist/web/app.js +1317 -0
  92. package/dist/web/index.html +45 -0
  93. package/dist/web/office.js +350 -0
  94. package/dist/web/sprites.js +185 -0
  95. package/dist/web/style.css +288 -0
  96. package/dist/web/v2/bootstrap.js +276 -0
  97. package/dist/web/v2/content/README.md +17 -0
  98. package/dist/web/v2/content/agent-skins/studio-team.json +33 -0
  99. package/dist/web/v2/content/agent-skins/tiny-developers.json +33 -0
  100. package/dist/web/v2/content/atmospheres/default.json +13 -0
  101. package/dist/web/v2/content/atmospheres/rainy-night.json +37 -0
  102. package/dist/web/v2/content/catalog.json +14 -0
  103. package/dist/web/v2/content/component-library/activity-implementations.json +873 -0
  104. package/dist/web/v2/content/component-library/activity-recipes.json +25 -0
  105. package/dist/web/v2/content/component-library/agent-profile-templates.json +18 -0
  106. package/dist/web/v2/content/component-library/catalog.json +38 -0
  107. package/dist/web/v2/content/component-library/npc-templates.json +42 -0
  108. package/dist/web/v2/content/component-library/props.json +41 -0
  109. package/dist/web/v2/content/environments/local-office.json +31 -0
  110. package/dist/web/v2/content/environments/rainy-night.json +28 -0
  111. package/dist/web/v2/content/environments/static-office.json +27 -0
  112. package/dist/web/v2/content/layouts/boardroom-office.json +122 -0
  113. package/dist/web/v2/content/layouts/demo-office.json +88 -0
  114. package/dist/web/v2/content/layouts/lively-office.json +96 -0
  115. package/dist/web/v2/content/layouts/old-school-office.json +154 -0
  116. package/dist/web/v2/content/layouts/tech-open-office.json +132 -0
  117. package/dist/web/v2/content/life-activities/boardroom-routines.json +67 -0
  118. package/dist/web/v2/content/life-activities/none.json +10 -0
  119. package/dist/web/v2/content/life-activities/office-basics.json +39 -0
  120. package/dist/web/v2/content/life-activities/old-school-routines.json +74 -0
  121. package/dist/web/v2/content/life-activities/tech-office-routines.json +148 -0
  122. package/dist/web/v2/content/npcs/boardroom-staff.json +54 -0
  123. package/dist/web/v2/content/npcs/none.json +10 -0
  124. package/dist/web/v2/content/npcs/office-staff.json +25 -0
  125. package/dist/web/v2/content/npcs/old-school-staff.json +39 -0
  126. package/dist/web/v2/content/npcs/tech-office-staff.json +40 -0
  127. package/dist/web/v2/content/official-offices/boardroom-office.json +25 -0
  128. package/dist/web/v2/content/official-offices/old-school-office.json +25 -0
  129. package/dist/web/v2/content/official-offices/tech-open-office.json +25 -0
  130. package/dist/web/v2/content/presets/boardroom-office.json +21 -0
  131. package/dist/web/v2/content/presets/cozy-studio.json +19 -0
  132. package/dist/web/v2/content/presets/demo-office.json +19 -0
  133. package/dist/web/v2/content/presets/lively-office.json +19 -0
  134. package/dist/web/v2/content/presets/night-shift.json +19 -0
  135. package/dist/web/v2/content/presets/old-school-office.json +20 -0
  136. package/dist/web/v2/content/presets/refined-demo.json +20 -0
  137. package/dist/web/v2/content/presets/tech-open-office.json +21 -0
  138. package/dist/web/v2/content/props/default-office.json +23 -0
  139. package/dist/web/v2/content/props/extended-office.json +39 -0
  140. package/dist/web/v2/content/props/tech-office.json +28 -0
  141. package/dist/web/v2/content/styles/pixel-classic.json +160 -0
  142. package/dist/web/v2/content/styles/warm-studio.json +150 -0
  143. package/dist/web/v2/environment-runtime.d.ts +1 -0
  144. package/dist/web/v2/environment-runtime.js +138 -0
  145. package/dist/web/v2/graph-validator.d.ts +55 -0
  146. package/dist/web/v2/graph-validator.js +225 -0
  147. package/dist/web/v2/i18n.js +54 -0
  148. package/dist/web/v2/locales/en.json +209 -0
  149. package/dist/web/v2/locales/zh-CN.json +52 -0
  150. package/dist/web/v2/office-engine.d.ts +1 -0
  151. package/dist/web/v2/office-engine.js +145 -0
  152. package/dist/web/v2/office-renderer.d.ts +1 -0
  153. package/dist/web/v2/office-renderer.js +843 -0
  154. package/dist/web/v2/parity.html +10 -0
  155. package/dist/web/v2/parity.js +82 -0
  156. package/dist/web/v2/sprite-renderer.d.ts +1 -0
  157. package/dist/web/v2/sprite-renderer.js +242 -0
  158. package/dist/web/v2/static-content.js +48 -0
  159. package/dist/web/v2/style.css +140 -0
  160. package/dist/web/v2.html +68 -0
  161. package/docs/ADAPTER-DEVELOPMENT.md +328 -0
  162. package/docs/ADAPTER-SDK.md +109 -0
  163. package/docs/ARCHITECTURE.md +223 -0
  164. package/docs/COMPONENT-LIBRARY.md +212 -0
  165. package/docs/CUSTOMIZATION.md +163 -0
  166. package/docs/DEVELOPER.md +186 -0
  167. package/docs/DSH-ADAPTER-DESIGN.md +173 -0
  168. package/docs/OFFICE-THEMES.md +516 -0
  169. package/docs/PRESET-CONFIG.md +460 -0
  170. package/docs/RELEASE-CHECK.md +23 -0
  171. package/docs/TECHNICAL.md +515 -0
  172. package/docs/USING-CODEX.md +24 -0
  173. package/docs/USING-DSH.md +44 -0
  174. package/docs/USING-PI.md +50 -0
  175. package/docs/VISION.md +146 -0
  176. package/examples/adapter/local-office.mjs +52 -0
  177. package/package.json +89 -0
  178. package/skills/agent-live-adapter-builder/SKILL.md +30 -0
  179. package/skills/agent-live-adapter-builder/agents/openai.yaml +4 -0
  180. package/skills/agent-live-adapter-builder/references/investigation.md +9 -0
  181. package/skills/agent-live-adapter-builder/references/review.md +7 -0
  182. package/skills/agent-live-adapter-builder/scripts/create-adapter.mjs +26 -0
@@ -0,0 +1,148 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "life-activities",
4
+ "id": "builtin/tech-office-routines",
5
+ "name": "Tech 办公室日常",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": [
10
+ {
11
+ "id": "boss-plan-round",
12
+ "name": "老板巡视规划",
13
+ "participant": { "kind": "npc", "roles": ["boss"] },
14
+ "requires": [{ "capability": "plan" }],
15
+ "interruptible": false,
16
+ "initialDelayMs": [3500, 7000],
17
+ "cooldownMs": [15000, 26000],
18
+ "steps": [
19
+ { "target": "whiteboard", "durationMs": 3600, "pose": "reach", "bubble": "看看今天的计划" },
20
+ { "target": "boss-seat", "durationMs": 1800, "pose": "sit" }
21
+ ]
22
+ },
23
+ {
24
+ "id": "boss-water-break",
25
+ "name": "老板接水",
26
+ "participant": { "kind": "npc", "roles": ["boss"] },
27
+ "requires": [{ "capability": "water" }],
28
+ "interruptible": false,
29
+ "initialDelayMs": [6000, 10000],
30
+ "cooldownMs": [18000, 30000],
31
+ "steps": [
32
+ { "target": "water", "durationMs": 2400, "pose": "stand", "bubble": "接杯水" },
33
+ { "target": "boss-seat", "durationMs": 1600, "pose": "sit" }
34
+ ]
35
+ },
36
+ {
37
+ "id": "boss-cheer-round",
38
+ "name": "老板给员工打气",
39
+ "participant": { "kind": "npc", "roles": ["boss"] },
40
+ "requires": [],
41
+ "interruptible": false,
42
+ "initialDelayMs": [9000, 14000],
43
+ "cooldownMs": [36000, 56000],
44
+ "steps": [
45
+ { "target": "near-colleague", "personIndex": 0, "durationMs": 3000, "pose": "talk", "bubble": "兄弟们加油努力干!", "particle": "bang" },
46
+ { "target": "near-colleague", "personIndex": 1, "durationMs": 2600, "pose": "talk", "bubble": "大家加油,冲一冲!", "particle": "bang" },
47
+ { "target": "boss-seat", "durationMs": 1600, "pose": "sit" }
48
+ ]
49
+ },
50
+ {
51
+ "id": "colleague-chat",
52
+ "name": "和同事聊聊天",
53
+ "participant": { "kind": "person", "states": ["idle", "waiting", "done"], "minAgents": 2 },
54
+ "requires": [{ "capability": "collaborate" }],
55
+ "onlyWhenSessionIdle": true,
56
+ "interruptible": true,
57
+ "startBubble": "聊两句?",
58
+ "initialDelayMs": [6500, 10000],
59
+ "cooldownMs": [30000, 48000],
60
+ "steps": [
61
+ {
62
+ "target": "chat-a",
63
+ "targets": ["chat-a", "chat-b"],
64
+ "durationMs": 5200,
65
+ "pose": "talk",
66
+ "bubbles": ["最近进展怎么样?", "刚处理完一块,歇一下"]
67
+ }
68
+ ]
69
+ },
70
+ {
71
+ "id": "outside-walk",
72
+ "name": "和同事出去溜达",
73
+ "participant": { "kind": "person", "roles": ["colleague"], "states": ["idle", "waiting", "done"], "minAgents": 2 },
74
+ "requires": [{ "capability": "entry" }],
75
+ "onlyWhenSessionIdle": true,
76
+ "interruptible": true,
77
+ "startBubble": "出去走走?",
78
+ "initialDelayMs": [10000, 16000],
79
+ "cooldownMs": [46000, 72000],
80
+ "steps": [
81
+ {
82
+ "target": "walk-outside-a",
83
+ "targets": ["walk-outside-a", "walk-outside-b"],
84
+ "durationMs": 6500,
85
+ "pose": "stand",
86
+ "bubbles": ["透口气", "走一圈再回来"]
87
+ }
88
+ ]
89
+ },
90
+ {
91
+ "id": "phone-break",
92
+ "name": "摸鱼玩手机",
93
+ "participant": { "kind": "person", "roles": ["colleague"], "states": ["idle", "waiting", "done"] },
94
+ "requires": [],
95
+ "onlyWhenSessionIdle": true,
96
+ "interruptible": true,
97
+ "startBubble": "摸会儿鱼",
98
+ "initialDelayMs": [5500, 9000],
99
+ "cooldownMs": [26000, 44000],
100
+ "steps": [
101
+ { "target": "phone-break", "durationMs": 4800, "pose": "phone", "bubble": "刷一下手机" }
102
+ ]
103
+ },
104
+ {
105
+ "id": "restroom-break",
106
+ "name": "去洗手间",
107
+ "participant": { "kind": "person", "roles": ["colleague"], "states": ["idle", "waiting", "done"] },
108
+ "requires": [{ "capability": "restroom" }],
109
+ "onlyWhenSessionIdle": true,
110
+ "interruptible": true,
111
+ "startBubble": "去趟洗手间",
112
+ "initialDelayMs": [7000, 12000],
113
+ "cooldownMs": [42000, 70000],
114
+ "steps": [
115
+ { "target": "restroom", "durationMs": 4200, "pose": "stand", "bubble": "稍等一下" }
116
+ ]
117
+ },
118
+ {
119
+ "id": "cleaning-round",
120
+ "name": "保洁巡回",
121
+ "participant": { "kind": "npc", "roles": ["cleaner"] },
122
+ "requires": [],
123
+ "interruptible": false,
124
+ "initialDelayMs": [1000, 1800],
125
+ "cooldownMs": [5200, 8200],
126
+ "steps": [
127
+ { "target": "clean-desks-north", "durationMs": 2200, "pose": "reach", "bubble": "整理一下桌面", "particle": "spark" },
128
+ { "target": "clean-desks-south", "durationMs": 2300, "pose": "reach", "bubble": "这边也收拾好", "particle": "spark" },
129
+ { "target": "clean-lounge", "durationMs": 2400, "pose": "reach", "bubble": "休息区整理好了", "particle": "spark" }
130
+ ]
131
+ },
132
+ {
133
+ "id": "plant-watering",
134
+ "name": "林姨浇花",
135
+ "participant": { "kind": "npc", "roles": ["cleaner"] },
136
+ "requires": [],
137
+ "interruptible": false,
138
+ "initialDelayMs": [5000, 9000],
139
+ "cooldownMs": [30000, 48000],
140
+ "steps": [
141
+ { "target": "plant-left", "durationMs": 2200, "pose": "reach", "bubble": "给花浇点水", "particle": "water" },
142
+ { "target": "plant-middle", "durationMs": 2100, "pose": "reach", "bubble": "喝饱水,长得精神点", "particle": "water" },
143
+ { "target": "plant-right", "durationMs": 2200, "pose": "reach", "bubble": "这盆也不能落下", "particle": "water" },
144
+ { "target": "cleaner-entry", "durationMs": 1500, "pose": "stand" }
145
+ ]
146
+ }
147
+ ]
148
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "npcs",
4
+ "id": "builtin/boardroom-staff",
5
+ "name": "会议室支持人员",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": [
10
+ {
11
+ "id": "boardroom-boss",
12
+ "name": "老板",
13
+ "role": "boss",
14
+ "title": "会议主持",
15
+ "spawn": "boss-seat",
16
+ "pose": "sit",
17
+ "appearance": {
18
+ "skin": "#d5a47c",
19
+ "hair": "#2b3039",
20
+ "shirt": "#465d80",
21
+ "trim": "#2d405e",
22
+ "badge": "#ffcc4d"
23
+ }
24
+ },
25
+ {
26
+ "id": "executive-assistant",
27
+ "name": "秘书",
28
+ "role": "secretary",
29
+ "title": "行政秘书",
30
+ "spawn": "secretary-entry",
31
+ "appearance": {
32
+ "skin": "#e8b98f",
33
+ "hair": "#30333b",
34
+ "shirt": "#568c83",
35
+ "trim": "#37645e",
36
+ "badge": "#b9dfd5"
37
+ }
38
+ },
39
+ {
40
+ "id": "room-attendant",
41
+ "name": "会务",
42
+ "role": "attendant",
43
+ "title": "会议服务",
44
+ "spawn": "service-entry",
45
+ "appearance": {
46
+ "skin": "#d69f70",
47
+ "hair": "#4a4038",
48
+ "shirt": "#687779",
49
+ "trim": "#485658",
50
+ "badge": "#d7b261"
51
+ }
52
+ }
53
+ ]
54
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "npcs",
4
+ "id": "builtin/no-npcs",
5
+ "name": "不启用 NPC",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": []
10
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "npcs",
4
+ "id": "builtin/office-staff",
5
+ "name": "办公室基础员工",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": [
10
+ {
11
+ "id": "cleaner-lin",
12
+ "name": "林姨",
13
+ "role": "cleaner",
14
+ "title": "保洁",
15
+ "spawn": "cleaner-entry",
16
+ "appearance": {
17
+ "skin": "#d69f70",
18
+ "hair": "#30333b",
19
+ "shirt": "#4f9d88",
20
+ "trim": "#347264",
21
+ "badge": "#b7eadb"
22
+ }
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "npcs",
4
+ "id": "builtin/old-school-staff",
5
+ "name": "老派办公室职员",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": [
10
+ {
11
+ "id": "receptionist-chen",
12
+ "name": "陈姐",
13
+ "role": "receptionist",
14
+ "title": "前台秘书",
15
+ "spawn": "reception",
16
+ "appearance": {
17
+ "skin": "#d69f70",
18
+ "hair": "#3d302a",
19
+ "shirt": "#718b78",
20
+ "trim": "#526a59",
21
+ "badge": "#d7ae5b"
22
+ }
23
+ },
24
+ {
25
+ "id": "custodian-zhou",
26
+ "name": "老周",
27
+ "role": "cleaner",
28
+ "title": "后勤",
29
+ "spawn": "cleaner-entry",
30
+ "appearance": {
31
+ "skin": "#b87a4f",
32
+ "hair": "#69635a",
33
+ "shirt": "#6d8171",
34
+ "trim": "#4a5e50",
35
+ "badge": "#b7d1bd"
36
+ }
37
+ }
38
+ ]
39
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "npcs",
4
+ "id": "builtin/tech-office-staff",
5
+ "name": "Tech 办公室 NPC",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "entries": [
10
+ {
11
+ "id": "boss",
12
+ "name": "老板",
13
+ "role": "boss",
14
+ "title": "老板",
15
+ "spawn": "boss-seat",
16
+ "pose": "sit",
17
+ "appearance": {
18
+ "skin": "#d5a47c",
19
+ "hair": "#31333a",
20
+ "shirt": "#516687",
21
+ "trim": "#34455f",
22
+ "badge": "#ffcc4d"
23
+ }
24
+ },
25
+ {
26
+ "id": "cleaner-lin",
27
+ "name": "林姨",
28
+ "role": "cleaner",
29
+ "title": "保洁",
30
+ "spawn": "cleaner-entry",
31
+ "appearance": {
32
+ "skin": "#d69f70",
33
+ "hair": "#3f424a",
34
+ "shirt": "#4f9d88",
35
+ "trim": "#347264",
36
+ "badge": "#b7eadb"
37
+ }
38
+ }
39
+ ]
40
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "office-spec",
4
+ "id": "builtin/boardroom-office",
5
+ "name": "meetingroom",
6
+ "origin": "official",
7
+ "layout": "builtin/boardroom-office",
8
+ "style": "builtin/pixel-classic",
9
+ "agentSkin": "builtin/tiny-developers",
10
+ "placements": [
11
+ { "id": "plant-front-left", "component": "builtin/plant", "slot": "front-decoration-left" },
12
+ { "id": "plant-front-right", "component": "builtin/plant", "slot": "front-decoration-right" },
13
+ { "id": "coffee-main", "component": "builtin/coffee-machine", "slot": "left-refreshment" },
14
+ { "id": "archive-main", "component": "builtin/service-cart", "slot": "left-service-storage" },
15
+ { "id": "water-main", "component": "builtin/water-cooler", "slot": "right-refreshment" }
16
+ ],
17
+ "npcs": [
18
+ { "id": "boardroom-boss", "template": "builtin/boss", "name": "老板", "title": "会议主持", "gender": "unspecified", "appearance": { "skin": "#d5a47c", "hair": "#2b3039", "shirt": "#465d80", "trim": "#2d405e", "badge": "#ffcc4d" }, "spawn": "boss-seat", "pose": "sit" },
19
+ { "id": "executive-assistant", "template": "builtin/secretary", "name": "秘书", "title": "行政秘书", "gender": "unspecified", "appearance": { "skin": "#e8b98f", "hair": "#30333b", "shirt": "#568c83", "trim": "#37645e", "badge": "#b9dfd5" }, "spawn": "secretary-entry", "pose": "stand" },
20
+ { "id": "room-attendant", "template": "builtin/attendant", "name": "会务", "title": "会议服务", "gender": "unspecified", "appearance": { "skin": "#d69f70", "hair": "#4a4038", "shirt": "#687779", "trim": "#485658", "badge": "#d7b261" }, "spawn": "service-entry", "pose": "stand" }
21
+ ],
22
+ "activities": ["builtin/boss-briefing", "builtin/get-water", "builtin/briefing-support", "builtin/refreshment-round"],
23
+ "atmosphere": "builtin/default-atmosphere",
24
+ "environment": "builtin/local-office-environment"
25
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "office-spec",
4
+ "id": "builtin/old-school-office",
5
+ "name": "oldschool",
6
+ "origin": "official",
7
+ "layout": "builtin/old-school-office",
8
+ "style": "builtin/warm-studio",
9
+ "agentSkin": "builtin/studio-team",
10
+ "placements": [
11
+ { "id": "manager-fan", "component": "builtin/floor-fan", "slot": "manager-utility-1" },
12
+ { "id": "coat-rack", "component": "builtin/coat-rack", "slot": "manager-utility-2" },
13
+ { "id": "reception-main", "component": "builtin/reception-desk", "slot": "reception-service" },
14
+ { "id": "water-main", "component": "builtin/water-cooler", "slot": "break-water" },
15
+ { "id": "coffee-main", "component": "builtin/coffee-machine", "slot": "break-coffee" },
16
+ { "id": "vending-main", "component": "builtin/vending-machine", "slot": "break-vending" }
17
+ ],
18
+ "npcs": [
19
+ { "id": "receptionist-chen", "template": "builtin/receptionist", "name": "陈姐", "title": "前台秘书", "gender": "female", "appearance": { "skin": "#d69f70", "hair": "#3d302a", "shirt": "#718b78", "trim": "#526a59", "badge": "#d7ae5b" }, "spawn": "reception", "pose": "stand" },
20
+ { "id": "custodian-zhou", "template": "builtin/cleaner", "name": "老周", "title": "后勤", "gender": "male", "appearance": { "skin": "#b87a4f", "hair": "#69635a", "shirt": "#6d8171", "trim": "#4a5e50", "badge": "#b7d1bd" }, "spawn": "cleaner-entry", "pose": "stand" }
21
+ ],
22
+ "activities": ["builtin/corridor-chat", "builtin/get-water", "builtin/paperwork-round", "builtin/facility-round"],
23
+ "atmosphere": "builtin/default-atmosphere",
24
+ "environment": "builtin/local-office-environment"
25
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "office-spec",
4
+ "id": "builtin/tech-open-office",
5
+ "name": "tech",
6
+ "origin": "official",
7
+ "layout": "builtin/tech-open-office",
8
+ "style": "builtin/pixel-classic",
9
+ "agentSkin": "builtin/tiny-developers",
10
+ "placements": [
11
+ { "id": "dumbbell-1", "component": "builtin/dumbbell", "slot": "lounge-fitness-1" },
12
+ { "id": "dumbbell-2", "component": "builtin/dumbbell", "slot": "lounge-fitness-2", "orientation": "vertical" },
13
+ { "id": "water-main", "component": "builtin/water-cooler", "slot": "lounge-service-1" },
14
+ { "id": "plant-1", "component": "builtin/plant", "slot": "edge-decoration-left" },
15
+ { "id": "plant-2", "component": "builtin/plant", "slot": "edge-decoration-middle" },
16
+ { "id": "plant-3", "component": "builtin/plant", "slot": "edge-decoration-right" }
17
+ ],
18
+ "npcs": [
19
+ { "id": "boss", "template": "builtin/boss", "name": "老板", "title": "老板", "gender": "unspecified", "appearance": { "skin": "#d5a47c", "hair": "#31333a", "shirt": "#516687", "trim": "#34455f", "badge": "#ffcc4d" }, "spawn": "boss-seat", "pose": "sit" },
20
+ { "id": "cleaner-lin", "template": "builtin/cleaner", "name": "林姨", "title": "保洁", "gender": "female", "appearance": { "skin": "#d69f70", "hair": "#3f424a", "shirt": "#4f9d88", "trim": "#347264", "badge": "#b7eadb" }, "spawn": "cleaner-entry", "pose": "stand" }
21
+ ],
22
+ "activities": ["builtin/boss-plan-round", "builtin/boss-water-break", "builtin/boss-cheer-round", "builtin/colleague-chat", "builtin/outside-walk", "builtin/phone-break", "builtin/restroom-break", "builtin/cleaning-round", "builtin/plant-watering"],
23
+ "atmosphere": "builtin/default-atmosphere",
24
+ "environment": "builtin/local-office-environment"
25
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/boardroom-office",
5
+ "name": "meetingroom",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "officeSpec": "official-offices/boardroom-office.json",
10
+ "render": { "detail": "rich" },
11
+ "content": {
12
+ "style": "pixel-classic",
13
+ "layout": "boardroom-office",
14
+ "agentSkin": "tiny-developers",
15
+ "props": "extended-office",
16
+ "npcs": "boardroom-staff",
17
+ "lifeActivities": "boardroom-routines",
18
+ "atmosphere": "default",
19
+ "environment": "local-office"
20
+ }
21
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/cozy-studio",
5
+ "name": "暖调创意工作室",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "content": {
10
+ "style": "warm-studio",
11
+ "layout": "lively-office",
12
+ "agentSkin": "studio-team",
13
+ "props": "default-office",
14
+ "npcs": "office-staff",
15
+ "lifeActivities": "office-basics",
16
+ "atmosphere": "default",
17
+ "environment": "static-office"
18
+ }
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/demo-office",
5
+ "name": "Agent Live 原版",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "content": {
10
+ "style": "pixel-classic",
11
+ "layout": "demo-office",
12
+ "agentSkin": "tiny-developers",
13
+ "props": "default-office",
14
+ "npcs": "none",
15
+ "lifeActivities": "none",
16
+ "atmosphere": "default",
17
+ "environment": "static-office"
18
+ }
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/lively-office",
5
+ "name": "有生活的像素办公室",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "content": {
10
+ "style": "pixel-classic",
11
+ "layout": "lively-office",
12
+ "agentSkin": "tiny-developers",
13
+ "props": "default-office",
14
+ "npcs": "office-staff",
15
+ "lifeActivities": "office-basics",
16
+ "atmosphere": "default",
17
+ "environment": "static-office"
18
+ }
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/night-shift",
5
+ "name": "雨夜加班办公室",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "content": {
10
+ "style": "pixel-classic",
11
+ "layout": "lively-office",
12
+ "agentSkin": "tiny-developers",
13
+ "props": "default-office",
14
+ "npcs": "office-staff",
15
+ "lifeActivities": "office-basics",
16
+ "atmosphere": "rainy-night",
17
+ "environment": "rainy-night"
18
+ }
19
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/old-school-office",
5
+ "name": "oldschool",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "officeSpec": "official-offices/old-school-office.json",
10
+ "content": {
11
+ "style": "warm-studio",
12
+ "layout": "old-school-office",
13
+ "agentSkin": "studio-team",
14
+ "props": "extended-office",
15
+ "npcs": "old-school-staff",
16
+ "lifeActivities": "old-school-routines",
17
+ "atmosphere": "default",
18
+ "environment": "local-office"
19
+ }
20
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/refined-demo",
5
+ "name": "Agent Live Demo",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "render": { "detail": "rich" },
10
+ "content": {
11
+ "style": "pixel-classic",
12
+ "layout": "demo-office",
13
+ "agentSkin": "tiny-developers",
14
+ "props": "default-office",
15
+ "npcs": "none",
16
+ "lifeActivities": "none",
17
+ "atmosphere": "default",
18
+ "environment": "static-office"
19
+ }
20
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "preset",
4
+ "id": "builtin/tech-open-office",
5
+ "name": "tech",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "officeSpec": "official-offices/tech-open-office.json",
10
+ "render": { "detail": "rich" },
11
+ "content": {
12
+ "style": "pixel-classic",
13
+ "layout": "tech-open-office",
14
+ "agentSkin": "tiny-developers",
15
+ "props": "tech-office",
16
+ "npcs": "tech-office-staff",
17
+ "lifeActivities": "tech-office-routines",
18
+ "atmosphere": "default",
19
+ "environment": "local-office"
20
+ }
21
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "props",
4
+ "id": "builtin/default-office",
5
+ "name": "原版办公室物件",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "types": {
10
+ "rug": { "size": { "width": 146, "height": 42 }, "capabilities": [], "renderer": "rug" },
11
+ "door": { "size": { "width": 36, "height": 30 }, "capabilities": ["entry"], "renderer": "door" },
12
+ "window": { "size": { "width": 44, "height": 22 }, "capabilities": [], "renderer": "window" },
13
+ "workstation": { "size": { "width": 48, "height": 16 }, "capabilities": ["create", "research", "compute", "communicate"], "renderer": "workstation" },
14
+ "whiteboard": { "size": { "width": 72, "height": 26 }, "capabilities": ["plan"], "renderer": "whiteboard" },
15
+ "phone-table": { "size": { "width": 32, "height": 14 }, "capabilities": ["communicate"], "renderer": "phone-table" },
16
+ "archive-cabinet": { "size": { "width": 44, "height": 32 }, "capabilities": ["research"], "renderer": "archive-cabinet" },
17
+ "server-rack": { "size": { "width": 48, "height": 32 }, "capabilities": ["compute"], "renderer": "server-rack" },
18
+ "coffee-machine": { "size": { "width": 26, "height": 22 }, "capabilities": ["coffee"], "renderer": "coffee-machine" },
19
+ "water-cooler": { "size": { "width": 16, "height": 26 }, "capabilities": ["water"], "renderer": "water-cooler" },
20
+ "meeting-table": { "size": { "width": 112, "height": 26 }, "capabilities": ["collaborate"], "renderer": "meeting-table" },
21
+ "plant": { "size": { "width": 12, "height": 21 }, "capabilities": [], "renderer": "plant" }
22
+ }
23
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "props",
4
+ "id": "builtin/extended-office",
5
+ "name": "扩展办公室物件",
6
+ "version": "1.0.0",
7
+ "engine": { "min": "0.2.0" },
8
+ "contract": "single-office-v1",
9
+ "types": {
10
+ "rug": { "size": { "width": 146, "height": 42 }, "capabilities": [], "renderer": "rug" },
11
+ "door": { "size": { "width": 36, "height": 30 }, "capabilities": ["entry"], "renderer": "door" },
12
+ "window": { "size": { "width": 44, "height": 22 }, "capabilities": [], "renderer": "window" },
13
+ "venetian-window": { "size": { "width": 55, "height": 23 }, "capabilities": [], "renderer": "venetian-window" },
14
+ "workstation": { "size": { "width": 48, "height": 16 }, "capabilities": ["create", "research", "compute", "communicate"], "renderer": "workstation" },
15
+ "whiteboard": { "size": { "width": 72, "height": 26 }, "capabilities": ["plan"], "renderer": "whiteboard" },
16
+ "phone-table": { "size": { "width": 32, "height": 14 }, "capabilities": ["communicate"], "renderer": "phone-table" },
17
+ "archive-cabinet": { "size": { "width": 44, "height": 32 }, "capabilities": ["research"], "renderer": "archive-cabinet" },
18
+ "server-rack": { "size": { "width": 48, "height": 32 }, "capabilities": ["compute"], "renderer": "server-rack" },
19
+ "coffee-machine": { "size": { "width": 26, "height": 22 }, "capabilities": ["coffee"], "renderer": "coffee-machine" },
20
+ "water-cooler": { "size": { "width": 16, "height": 26 }, "capabilities": ["water"], "renderer": "water-cooler" },
21
+ "meeting-table": { "size": { "width": 112, "height": 26 }, "capabilities": ["collaborate"], "renderer": "meeting-table" },
22
+ "plant": { "size": { "width": 12, "height": 21 }, "capabilities": [], "renderer": "plant" },
23
+ "cubicle-cell": { "size": { "width": 56, "height": 36 }, "capabilities": [], "renderer": "cubicle-cell" },
24
+ "executive-desk": { "size": { "width": 69, "height": 18 }, "capabilities": ["create", "plan", "communicate"], "renderer": "executive-desk" },
25
+ "copy-station": { "size": { "width": 26, "height": 38 }, "capabilities": ["research"], "renderer": "copy-station" },
26
+ "reception-desk": { "size": { "width": 64, "height": 20 }, "capabilities": ["communicate"], "renderer": "reception-desk" },
27
+ "presentation-screen": { "size": { "width": 162, "height": 43 }, "capabilities": ["plan", "communicate"], "renderer": "presentation-screen" },
28
+ "boardroom-table": { "size": { "width": 204, "height": 125 }, "capabilities": ["create", "collaborate"], "renderer": "boardroom-table" },
29
+ "av-console": { "size": { "width": 60, "height": 45 }, "capabilities": ["compute", "communicate"], "renderer": "av-console" },
30
+ "sideboard": { "size": { "width": 55, "height": 18 }, "capabilities": ["coffee"], "renderer": "sideboard" },
31
+ "vending-machine": { "size": { "width": 17, "height": 28 }, "capabilities": [], "renderer": "vending-machine" },
32
+ "notice-board": { "size": { "width": 55, "height": 23 }, "capabilities": [], "renderer": "notice-board" },
33
+ "wall-calendar": { "size": { "width": 16, "height": 22 }, "capabilities": [], "renderer": "wall-calendar" },
34
+ "coat-rack": { "size": { "width": 13, "height": 29 }, "capabilities": [], "renderer": "coat-rack" },
35
+ "floor-fan": { "size": { "width": 18, "height": 27 }, "capabilities": [], "renderer": "floor-fan" },
36
+ "office-clock": { "size": { "width": 14, "height": 14 }, "capabilities": [], "renderer": "office-clock" },
37
+ "service-cart": { "size": { "width": 50, "height": 30 }, "capabilities": ["research"], "renderer": "service-cart" }
38
+ }
39
+ }