完善AI游戏创作App本地工作区与Agent协作

补齐工作区启动器、非空目录确认和主窗口切换入口

改为运行时配置文件并支持全局与单Agent LLM Provider

接入平台 External API 生成和同步美术资产

补齐本地对话记录、Agent私有记忆和项目黑板

完善Agent状态、历史Run、快照、文件和资产快捷入口

同步AI游戏创作App实施计划和共享决策记录
This commit is contained in:
AIGameCreator App
2026-07-03 01:32:51 +08:00
parent 76b5718d77
commit 998e33ca3d
21 changed files with 24613 additions and 974 deletions
@@ -68,6 +68,11 @@ describe('AI 游戏创作 App 共享契约', () => {
GAME_CREATION_APP_COMMANDS.find((command) => command.id === 'asset.list')
?.permission,
).toBe('auto');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'asset.register',
)?.permission,
).toBe('confirm');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'preview.open',
@@ -86,6 +91,16 @@ describe('AI 游戏创作 App 共享契约', () => {
GAME_CREATION_APP_COMMANDS.find((command) => command.id === 'memory.read')
?.permission,
).toBe('auto');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'conversation.read',
)?.permission,
).toBe('auto');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'conversation.write',
)?.permission,
).toBe('auto');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'canvas.project_open',
@@ -96,6 +111,11 @@ describe('AI 游戏创作 App 共享契约', () => {
(command) => command.id === 'canvas.project_sync',
)?.permission,
).toBe('confirm');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'canvas.asset_generate',
)?.permission,
).toBe('confirm');
expect(
GAME_CREATION_APP_COMMANDS.find(
(command) => command.id === 'canvas.export_import',
@@ -124,11 +144,17 @@ describe('AI 游戏创作 App 共享契约', () => {
'repair-loop-carryover',
'short-term-memory',
'long-term-memory',
'conversation-history',
'canvas-project-sync',
'local-preview',
'developer-window',
]),
);
expect(
GAME_CREATION_AGENT_CAPABILITIES.find(
(capability) => capability.id === 'conversation-history',
)?.title,
).toBe('对话记录上下文');
});
it('keeps at least one concrete limited run command for local verification', () => {
@@ -39,7 +39,7 @@ export const GAME_CREATION_APP_COMMANDS = [
{ id: 'file.delete', permission: 'confirm' },
{ id: 'asset.list', permission: 'auto' },
{ id: 'asset.upload', permission: 'confirm' },
{ id: 'asset.register', permission: 'auto' },
{ id: 'asset.register', permission: 'confirm' },
{ id: 'preview.start', permission: 'confirm' },
{ id: 'preview.open', permission: 'confirm' },
{ id: 'preview.stop', permission: 'auto' },
@@ -48,10 +48,13 @@ export const GAME_CREATION_APP_COMMANDS = [
{ id: 'canvas.project_open', permission: 'confirm' },
{ id: 'canvas.project_sync', permission: 'confirm' },
{ id: 'canvas.asset_import', permission: 'confirm' },
{ id: 'canvas.asset_generate', permission: 'confirm' },
{ id: 'canvas.export_import', permission: 'confirm' },
{ id: 'memory.read', permission: 'auto' },
{ id: 'memory.write', permission: 'confirm' },
{ id: 'memory.delete', permission: 'confirm' },
{ id: 'conversation.read', permission: 'auto' },
{ id: 'conversation.write', permission: 'auto' },
] as const satisfies readonly GameCreationAppCommandDescriptor[];
export interface GameCreationAgentCapabilityDescriptor {
@@ -106,6 +109,11 @@ export const GAME_CREATION_AGENT_CAPABILITIES = [
},
{ id: 'short-term-memory', area: 'agent-runtime', title: '短期记忆' },
{ id: 'long-term-memory', area: 'agent-runtime', title: '长期记忆' },
{
id: 'conversation-history',
area: 'agent-runtime',
title: '对话记录上下文',
},
{ id: 'local-artifacts', area: 'local-runtime', title: '本地产物保存' },
{ id: 'project-checkpoints', area: 'local-runtime', title: '项目快照与恢复' },
{ id: 'project-index', area: 'local-runtime', title: '本地项目索引' },