xworkmate-app/lib/runtime/runtime_models_multi_agent.dart
Cowork 3P a908b5118f refactor: remove multi-agent orchestration subsystem (Path B)
Remove the entire multi-agent collaboration execution path, including:
- MultiAgentOrchestrator and its 4-phase pipeline (Architect→Engineer→Tester→Iteration)
- ARIS framework preset and mount infrastructure
- Hardcoded model defaults (kimi-k2.5, minimax-m2.7, glm-5)
- Deprecated runCliPromptInternal() and its fallback call chain
- All related types: MultiAgentConfig, AgentWorkerConfig, MultiAgentRole, etc.

This collapses the architecture to a single clean path:
Flutter → GoTaskServiceClient → ACP Transport → Go Bridge → Remote Execution

2886 lines removed across 41 files.
2026-06-04 05:34:58 +00:00

325 lines
9.1 KiB
Dart

class ManagedSkillEntry {
const ManagedSkillEntry({
required this.key,
required this.label,
required this.source,
required this.selected,
});
final String key;
final String label;
final String source;
final bool selected;
ManagedSkillEntry copyWith({
String? key,
String? label,
String? source,
bool? selected,
}) {
return ManagedSkillEntry(
key: key ?? this.key,
label: label ?? this.label,
source: source ?? this.source,
selected: selected ?? this.selected,
);
}
Map<String, dynamic> toJson() {
return {'key': key, 'label': label, 'source': source, 'selected': selected};
}
factory ManagedSkillEntry.fromJson(Map<String, dynamic> json) {
return ManagedSkillEntry(
key: json['key'] as String? ?? '',
label: json['label'] as String? ?? '',
source: json['source'] as String? ?? '',
selected: json['selected'] as bool? ?? false,
);
}
}
class ManagedMcpServerEntry {
const ManagedMcpServerEntry({
required this.id,
required this.name,
required this.transport,
required this.command,
required this.url,
required this.args,
required this.envKeys,
required this.enabled,
});
final String id;
final String name;
final String transport;
final String command;
final String url;
final List<String> args;
final List<String> envKeys;
final bool enabled;
ManagedMcpServerEntry copyWith({
String? id,
String? name,
String? transport,
String? command,
String? url,
List<String>? args,
List<String>? envKeys,
bool? enabled,
}) {
return ManagedMcpServerEntry(
id: id ?? this.id,
name: name ?? this.name,
transport: transport ?? this.transport,
command: command ?? this.command,
url: url ?? this.url,
args: args ?? this.args,
envKeys: envKeys ?? this.envKeys,
enabled: enabled ?? this.enabled,
);
}
Map<String, dynamic> toJson() {
return {
'id': id,
'name': name,
'transport': transport,
'command': command,
'url': url,
'args': args,
'envKeys': envKeys,
'enabled': enabled,
};
}
factory ManagedMcpServerEntry.fromJson(Map<String, dynamic> json) {
final rawArgs = json['args'];
final rawEnvKeys = json['envKeys'];
return ManagedMcpServerEntry(
id: json['id'] as String? ?? '',
name: json['name'] as String? ?? '',
transport: json['transport'] as String? ?? 'stdio',
command: json['command'] as String? ?? '',
url: json['url'] as String? ?? '',
args: rawArgs is List
? rawArgs.map((item) => item.toString()).toList(growable: false)
: const <String>[],
envKeys: rawEnvKeys is List
? rawEnvKeys.map((item) => item.toString()).toList(growable: false)
: const <String>[],
enabled: json['enabled'] as bool? ?? true,
);
}
}
class ManagedMountTargetState {
const ManagedMountTargetState({
required this.targetId,
required this.label,
required this.available,
required this.supportsSkills,
required this.supportsMcp,
required this.supportsAiGatewayInjection,
required this.discoveryState,
required this.syncState,
required this.discoveredSkillCount,
required this.discoveredMcpCount,
required this.managedMcpCount,
required this.detail,
});
final String targetId;
final String label;
final bool available;
final bool supportsSkills;
final bool supportsMcp;
final bool supportsAiGatewayInjection;
final String discoveryState;
final String syncState;
final int discoveredSkillCount;
final int discoveredMcpCount;
final int managedMcpCount;
final String detail;
ManagedMountTargetState copyWith({
String? targetId,
String? label,
bool? available,
bool? supportsSkills,
bool? supportsMcp,
bool? supportsAiGatewayInjection,
String? discoveryState,
String? syncState,
int? discoveredSkillCount,
int? discoveredMcpCount,
int? managedMcpCount,
String? detail,
}) {
return ManagedMountTargetState(
targetId: targetId ?? this.targetId,
label: label ?? this.label,
available: available ?? this.available,
supportsSkills: supportsSkills ?? this.supportsSkills,
supportsMcp: supportsMcp ?? this.supportsMcp,
supportsAiGatewayInjection:
supportsAiGatewayInjection ?? this.supportsAiGatewayInjection,
discoveryState: discoveryState ?? this.discoveryState,
syncState: syncState ?? this.syncState,
discoveredSkillCount: discoveredSkillCount ?? this.discoveredSkillCount,
discoveredMcpCount: discoveredMcpCount ?? this.discoveredMcpCount,
managedMcpCount: managedMcpCount ?? this.managedMcpCount,
detail: detail ?? this.detail,
);
}
Map<String, dynamic> toJson() {
return {
'targetId': targetId,
'label': label,
'available': available,
'supportsSkills': supportsSkills,
'supportsMcp': supportsMcp,
'supportsAiGatewayInjection': supportsAiGatewayInjection,
'discoveryState': discoveryState,
'syncState': syncState,
'discoveredSkillCount': discoveredSkillCount,
'discoveredMcpCount': discoveredMcpCount,
'managedMcpCount': managedMcpCount,
'detail': detail,
};
}
factory ManagedMountTargetState.fromJson(Map<String, dynamic> json) {
return ManagedMountTargetState(
targetId: json['targetId'] as String? ?? '',
label: json['label'] as String? ?? '',
available: json['available'] as bool? ?? false,
supportsSkills: json['supportsSkills'] as bool? ?? false,
supportsMcp: json['supportsMcp'] as bool? ?? false,
supportsAiGatewayInjection:
json['supportsAiGatewayInjection'] as bool? ?? false,
discoveryState: json['discoveryState'] as String? ?? 'idle',
syncState: json['syncState'] as String? ?? 'idle',
discoveredSkillCount: json['discoveredSkillCount'] as int? ?? 0,
discoveredMcpCount: json['discoveredMcpCount'] as int? ?? 0,
managedMcpCount: json['managedMcpCount'] as int? ?? 0,
detail: json['detail'] as String? ?? '',
);
}
factory ManagedMountTargetState.placeholder({
required String targetId,
required String label,
required bool supportsSkills,
required bool supportsMcp,
required bool supportsAiGatewayInjection,
}) {
return ManagedMountTargetState(
targetId: targetId,
label: label,
available: false,
supportsSkills: supportsSkills,
supportsMcp: supportsMcp,
supportsAiGatewayInjection: supportsAiGatewayInjection,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
);
}
static List<ManagedMountTargetState> defaults() {
return const <ManagedMountTargetState>[
ManagedMountTargetState(
targetId: 'aris',
label: 'ARIS',
available: false,
supportsSkills: true,
supportsMcp: true,
supportsAiGatewayInjection: false,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
ManagedMountTargetState(
targetId: 'codex',
label: 'Codex',
available: false,
supportsSkills: true,
supportsMcp: true,
supportsAiGatewayInjection: true,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
ManagedMountTargetState(
targetId: 'claude',
label: 'Claude',
available: false,
supportsSkills: true,
supportsMcp: true,
supportsAiGatewayInjection: true,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
ManagedMountTargetState(
targetId: 'gemini',
label: 'Gemini',
available: false,
supportsSkills: true,
supportsMcp: true,
supportsAiGatewayInjection: true,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
ManagedMountTargetState(
targetId: 'opencode',
label: 'OpenCode',
available: false,
supportsSkills: true,
supportsMcp: true,
supportsAiGatewayInjection: true,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
ManagedMountTargetState(
targetId: 'openclaw',
label: 'OpenClaw',
available: false,
supportsSkills: true,
supportsMcp: false,
supportsAiGatewayInjection: true,
discoveryState: 'idle',
syncState: 'idle',
discoveredSkillCount: 0,
discoveredMcpCount: 0,
managedMcpCount: 0,
detail: '',
),
];
}
}