头像
PNG、JPEG、WebP 或 GIF,最大 5 MB。保存后生效。
平台像素头像
+选一个像素伙伴,无需上传自己的图片。保存后生效。
+{error}
}这是帮助它思考和回答的 AI。{chooseInitialModel && catalog?.models.length ? '新助手从目录中的第一个可用模型开始,你可以更换。' : '选择模型后,保存即可试用。'}
} {catalog && catalog.models.length === 0 &&暂时没有可用模型,请稍后刷新目录或请老师协助。
- 每 {catalog.pricing.unit_size.toLocaleString()} 个词元约 {catalog.pricing.points_per_unit} 词元点数,按实际模型调用结算。 -
} {(['tools', 'knowledges', 'mcps', 'skills', 'subagents'] as const).map(key => { const labels = { tools: '工具', knowledges: '知识库', mcps: 'MCP 服务', skills: 'Skills', subagents: '子智能体' }; diff --git a/src/pages/CloudAgents/DraftEditor.tsx b/src/pages/CloudAgents/DraftEditor.tsx index bd244db8..ba7e1138 100644 --- a/src/pages/CloudAgents/DraftEditor.tsx +++ b/src/pages/CloudAgents/DraftEditor.tsx @@ -3,7 +3,6 @@ import { useBlocker } from 'react-router-dom'; import { ArrowLeft, Check, Loader2, Save } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; -import { Textarea } from '@/components/ui/textarea'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { Dialog, DialogContent, DialogDescription, DialogTitle } from '@/components/ui/dialog'; import { cloudAgentsApi } from '@/lib/cloud-agents-api'; @@ -14,35 +13,32 @@ import { CloudChannelConversations } from './CloudChannelConversations'; import { CloudAccessPanel } from './CloudAccess'; import { CloudSchedules } from './CloudSchedules'; import { CloudPendingContext, useCloudPendingState } from './CloudPending'; -import { DesktopSplit } from './DesktopSplit'; import { AgentRequirements } from './AgentRequirements'; -import { agentExamples } from './agent-guidance'; -import { useCloudPublication } from './useCloudPublication'; import { CloudAvatar, CloudAvatarEditor } from './CloudAvatar'; +import { useCloudPublication } from './useCloudPublication'; type Tab = 'configuration' | 'chat' | 'tasks' | 'access'; type AdvancedCategory = 'capabilities' | 'knowledge' | 'limits'; -const hasDraftChanges = (draft: CloudAgentDraft, saved: CloudAgentDraft) => draft.name !== saved.name || draft.purpose !== saved.purpose || draft.system_prompt !== saved.system_prompt - || (draft.icon ?? null) !== (saved.icon ?? null) +const hasDraftChanges = (draft: CloudAgentDraft, saved: CloudAgentDraft) => draft.name !== saved.name || (draft.icon ?? null) !== (saved.icon ?? null) || draft.purpose !== saved.purpose || draft.system_prompt !== saved.system_prompt || JSON.stringify(draft.configuration) !== JSON.stringify(saved.configuration); const errorMessage = (error: unknown) => error instanceof Error ? error.message : '暂时无法完成操作'; -export function DraftEditor({ initial, recent, onBack, onSaved, startingPrompt }: { +export function DraftEditor({ initial, recent, onBack, onSaved, startingPrompt, entryView }: { startingPrompt?: string; + entryView?: 'configuration' | 'chat'; initial: CloudAgentDraft; recent: CloudRecent | null; onBack: () => void; onSaved: (agent: CloudAgentDraft) => void; }) { const [saved, setSaved] = useState(initial); const [draft, setDraft] = useState(() => startingPrompt === undefined ? initial : { ...initial, system_prompt: startingPrompt }); const [editorTab, setEditorTab] = useState('instructions'); const [advancedCategory, setAdvancedCategory] = useState{saved.published_version ? '我的助手' : startingPrompt !== undefined ? '第 3 步,共 3 步 · 试一试' : '制作中的助手 · 仅自己可见'}
-{saved.published_version ? '我的智能体' : '配置智能体'}
云端已有修订 {remote.draft_revision},本地输入仍保留
{remote.name} · {remote.purpose}
{remote.system_prompt}试用满意后,就可以开始使用自己的助手了。
保存配置后,开始使用这个智能体。
先保存你的要求,再开始使用。当前试用会保留。
先保存配置,再开始使用。