+
+
工具
+
+
+ {AGENT_TOOL_COLUMNS.map((column, columnIndex) => (
+
+ {column.map((tool) => (
+ {
+ setSelectedTools((current) => {
+ const next = new Set(current);
+ if (checked) {
+ next.add(tool.id);
+ } else {
+ next.delete(tool.id);
+ }
+ return next;
+ });
+ }}
+ label={tool.label}
+ />
+ ))}
+
+ ))}
+
+
+
+
+
MCP
+
+ {selectedMcps.map((mcp) => (
+
+
+ {mcp}
+
+
+ ))}
+ {
+ const next =
+ nextMissingOption(selectedMcps, MCP_OPTIONS) ??
+ `MCP ${selectedMcps.length + 1}`;
+ onSelectedMcpsChange([...selectedMcps, next]);
+ }}
+ />
+
+
+
+
+
技能
+
+ {selectedSkills.map((skill) => (
+
+ ))}
+ {
+ const next =
+ nextMissingOption(selectedSkills, SKILL_OPTIONS) ??
+ `custom-skill-${selectedSkills.length + 1}`;
+ onSelectedSkillsChange([...selectedSkills, next]);
+ }}
+ />
+
+
+
+ {(
+ Object.keys(
+ AGENT_STORAGE_CAPABILITY_LABELS,
+ ) as AgentStorageCapabilityKey[]
+ ).map((capabilityKey) => {
+ const capability = storageCapabilities[capabilityKey];
+ const labels = AGENT_STORAGE_CAPABILITY_LABELS[capabilityKey];
+ const switchId = `agent-config-${capabilityKey}`;
+
+ return (
+
+
+
+ {
+ if (checked) {
+ setActiveStorageCapability(capabilityKey);
+ return;
+ }
+ onStorageCapabilitiesChange({
+ ...storageCapabilities,
+ [capabilityKey]: {
+ ...capability,
+ enabled: false,
+ },
+ });
+ }}
+ />
+
+
+ {capability.enabled ? (
+
setActiveStorageCapability(capabilityKey)}
+ />
+ ) : null}
+
+ );
+ })}
+