Conversation
- Add @promptx/mcp-office package for reading Office documents (docx, xlsx, pptx, pdf) - Support encoding/codepage configuration for handling Chinese files - Enable settingSources: ['local'] in runtime to read .claude/settings.local.json - Configure AgentX with default MCP Office server for new conversations - Fix Electron 38 Network Service crash with NetworkServiceSandbox disable Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add IPC handler for reading files from main process (dialog:readFile) - Capture file path from Electron drag & drop events - Include file path in message for AI to access local files - Filter <file path="..."> tags from user display (AI still sees them) - Display file attachments using FileBlock component - Auto open DevTools in development mode Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add agentxUI namespace to en.json and zh-CN.json - Internationalize Chat, ChatHeader, AgentList components - Internationalize ToolBlock status labels - Internationalize MessagePane and InputPane - Support dynamic language switching Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Hide scrollbar but keep scrolling in conversation list - Remove Bot icon from conversation list items - Add delete confirmation dialog for conversations - Show first user message as conversation title (filter file path tags) - Fix sidebar width to 12vw for consistency - Set AgentList sidebar width to 15vw with max 250px Co-Authored-By: Claude Opus 4.5 <[email protected]>
…tions - Add WelcomePage component with logo, typewriter tagline, input box and preset cards - Remove ChatHeader from Chat component - Add refreshTrigger prop to AgentList for external refresh control - Support initialMessage in Chat for auto-sending after conversation creation - Add i18n translations for welcome page (en/zh-CN) Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add MCP server configuration UI with JSON format support - Support both stdio (command/args) and HTTP/SSE (type/url) MCP types - Display built-in MCP servers (promptx, mcp-office) with lock icon - Auto-configure PromptX MCP URL from system settings - Add restart confirmation dialog after saving server config - Restructure settings page with System and AgentX tabs - Add AlertDialog component and i18n translations Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add targetRole parameter to growup operation for teaching knowledge to specific roles - Fix agentx-window overflow issues with overflow-hidden - Update action tool documentation for growup operation Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Make TextBlock and ToolBlock have consistent full width - Remove deprecated message components (AssistantMessage, UserMessage, ToolMessage) - Remove unused ToolCard component Co-Authored-By: Claude Opus 4.5 <[email protected]>
Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add electron download mirror configuration for China - Add cross-env for Windows build environment - Set AgentX as default page in main window Co-Authored-By: Claude Opus 4.5 <[email protected]>
Files are now sent as path info in text, AI uses MCP tools to read. Only images are sent as base64 data. This avoids API errors for unsupported document types. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Extract file info from <file path="..."> tags and display as cards. Files are no longer sent as base64 data, only path info as text. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Co-Authored-By: Claude Opus 4.5 <[email protected]>
…ports Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add SkillsConfig component for managing enabled skills - Add AgentXService methods for skills management - Add IPC handlers and preload APIs for skills - Add i18n translations for skills configuration - Integrate SkillsConfig into settings page Co-Authored-By: Claude Opus 4.5 <[email protected]>
Co-Authored-By: Claude Opus 4.5 <[email protected]>
…ndardized metadata - Add edit tool info dialog (name/description) for user tools - Rename "project" filter to "plaza" (广场) for future marketplace feature - Standardize all system tool metadata: use tool ID as name, clean descriptions - Fix registry generator to read name/description from getMetadata() instead of JSDoc - Fix double scrollbar in configure tab edit mode - Fix text truncation in tool list cards with w-0 flex-1 pattern Co-Authored-By: Claude Opus 4.6 <[email protected]>
…cheme Add header "Create Tool" button that navigates to AgentX and triggers Luban conversation. Replace all orange accent colors with neutral black/white theme to match other pages. Co-Authored-By: Claude Opus 4.6 <[email protected]>
…tion - Add V1/V2 version toggle and source sub-filter to roles page - Add ResourceVersion type and V2 rolex role processing in repository - Standardize all system role names to 中文名/英文ID format with descriptions - Fix registry generator to handle \r\n line endings on Windows - Update nuwa prompts to enforce naming convention when creating new roles Co-Authored-By: Claude Opus 4.6 <[email protected]>
…ponents Split monolithic page files into focused component modules: - roles-window: RoleListPanel + RoleDetailPanel - tools-window: ToolListPanel + ToolDetailPanel + EditInfoDialog - ToolDetailPanel further split into ToolOverviewTab, ToolTestTab, ToolConfigureTab, ToolLogsTab Co-Authored-By: Claude Opus 4.6 <[email protected]>
- Add goToSendMessage utility using CustomEvent for cross-page navigation - Replace V1/V2 tags with colored source badges (system/plaza/user) on role cards - Show edit button only for user-sourced roles - Role activate now navigates to agentx and sends activation message directly - Add create role button on roles page header - Add navigate event listener in main window for decoupled page switching Co-Authored-By: Claude Opus 4.6 <[email protected]>
…work graph Implement full Memory tab in Role Detail Panel: overview stats, paginated engram list with inline edit/delete, d3-force knowledge network graph, and cue explorer with delete support. Add CognitionWindow IPC handlers for reading/writing engrams.db, network.json, and state.json. Optimize recall/remember MCP tool descriptions to trigger memory more reliably. Co-Authored-By: Claude Opus 4.6 <[email protected]>
…yout with hidden scrollbar Merge knowledge network and cue explorer into a single tab with bidirectional node selection highlighting. Internationalize engram type labels (Atomic/Link/Pattern). Refactor layout to flex chain for proper space filling, with hidden scrollbars on all scrollable areas. Co-Authored-By: Claude Opus 4.6 <[email protected]>
…evel Clear both role directories and rolex.json registry when rolexjs version changes, ensuring bootstrap properly recreates nuwa/waiter. Seed roles return source:'system' in listV2Roles, and PromptXResourceRepository preserves the v2 flag for system roles. Co-Authored-By: Claude Opus 4.6 <[email protected]>
…nd add roleResources=all
- V1 roles now have three sibling tabs: Overview, Structure, Memory
- Overview: description + role prompt (like tool manual)
- Structure: DPML 3-layer architecture diagram
- Activation now sends { roleResources: "all" } to load all role resources
Co-Authored-By: Claude Opus 4.6 <[email protected]>
… and description - Fix V1 overview prompt loading (positional args for roleResources) - Add V1 structure tab with real file tree and viewer/editor dialog - Add V2 role detail panel: overview, goals, organization, structure tabs - Add V2 structure tab with .feature file viewer (system roles read-only) - Add jiangziya to SEED_ROLES and extract Feature name/description from persona file - Fix V1 edit role button with name+description dialog; V2 edit name only - Bundle mcp-office via extraResources in electron-builder - Fix index.ts syntax error (extra closing brace) - Rebuild @promptx/core dist after SEED_ROLES and description extraction changes Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Bundle mcp-office with esbuild into single self-contained CJS file so all deps (mammoth, xlsx, pdf-parse) are inlined — no node_modules needed - Fix electron-builder extraResources from path to point at workspace package (../../packages/mcp-office/dist) instead of non-existent apps/desktop/node_modules/@promptx/mcp-office - Use process.execPath + ELECTRON_RUN_AS_NODE=1 to spawn mcp-office so it works even when user has no system Node.js installed - Fix claude-agent-sdk cli.js path: prefer app.asar.unpacked in production to avoid subprocess execution failure inside .asar archive - Capture all console output in main process and persist to @promptx/logger Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Add WebAccessService: HTTP server on port 5201 with token auth, serves web UI and agentxjs bundle
- Add AgentXService.setExternalAccess: restarts WS on 0.0.0.0 for LAN access
- Add web UI (index.html): GPT-inspired responsive chat interface with inline Markdown renderer
- Add WebAccessConfig settings tab with QR code, URL copy, and port config
- Fix getLocalIp: use route table to pick default-gateway interface, skip 169.254.x.x
- Add day/night theme toggle (persisted in localStorage)
- Fix image_update_request: use updates:{name} instead of config:{name} for title persistence
- Derive conversation title from first user message in history on load
- Enable streaming Markdown rendering
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Add enableV2 switch to system settings page (server config card) - Changing the toggle saves config and restarts MCP server so tool descriptions update immediately (no stale prompts) - When disabled: discover hides RoleX V2 section, action tool removes all V2 operations from description and inputSchema enum, handler skips V2 detection and always uses V1 path - PROMPTX_ENABLE_V2 env var propagated to @promptx/core so RolexBridge.listV2Roles() and isV2Role() return empty/false - enableV2 persisted in ServerConfigManager (~/.promptx/server-config.json) and in desktop ServerConfig domain entity - createAllTools(enableV2) / createDiscoverTool / createActionTool factory functions replace static exports; allTools kept for compat Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Read enableV2 from server-config on roles page mount - When disabled: versionFilter defaults to v1, V1/V2 toggle hidden, auto-selects first V1 role instead of first V2 role Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
When V2 is disabled: search input on top, source filter below (same as tools page). When V2 is enabled: keep original V1/V2 toggle → filter → search order. Also align filter button sizing/style to match tools page. Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…t white screen fix - web-ui: add full zh/en i18n via navigator.language detection - web-ui: fix mobile header (remove title text, keep flex spacer for alignment) - web-ui: auto-create conversation on send when none selected - WebAccessService: persist lastStatus so QR code survives tab switches - WebAccessConfig: restore QR/URL on re-mount via getStatus IPC - WebAccessConfig: apply i18n to all hardcoded Chinese strings - index.ts: hide all windows before app.exit(0) on relaunch to prevent white screen flash Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…de discovery
Skills configured in PromptX settings were stored in {userData}/skills/ but
never made available to the Claude Code agent. Claude Code natively loads
skills from ~/.claude/skills/, so we sync enabled skills there on startup
and whenever the enabled list changes.
A .promptx-manifest.json tracks which skills are PromptX-managed to avoid
accidentally removing skills the user placed there manually.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…aded settingSources was ["local"] only, which skipped the user settings directory entirely. Skills live in ~/.claude/skills/ which requires the 'user' source. Adding it makes Claude Code discover skills configured in PromptX settings. Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Replace syncSkillsToClaudeDir (copy to ~/.claude/skills/) with a
junction/symlink from workdir's .claude/skills/ → {userData}/skills/.
- Windows: junction (no admin required)
- Unix/macOS: regular symlink
- Skills source dir is auto-created if missing
- Removes file duplication and manifest tracking complexity
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…port
- buildOptions.ts: settingSources ["local"] → ["project"] so Claude Code
reads {workdir}/.claude/settings.json and scans .claude/skills/
- AgentXService.ts: rename settings.local.json → settings.json to match
the project settings source
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- IPC getRoleAvatar: returns base64 data URL from profile.{png,jpg,jpeg,webp}
- IPC uploadRoleAvatar: copies image to role dir (user roles only)
- RoleAvatar.tsx: shared component, lazy-loads avatar, falls back to gradient
- RoleListPanel: show avatar image in role list items
- RoleDetailPanel: hover-upload overlay on header avatar; upload in edit dialog
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Use require.resolve('@promptx/resource') to get dist/index.js path,
then navigate to dist/resources/role/{id}/ for profile images.
The previous approach used package.json which is not in exports field.
Works in both dev and production (Electron patches fs for asar).
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Add profile.png for 8 system roles (dayu, jiangziya, luban, nuwa, sean, shaqing, teacheryo, writer) - i18n: replace Anthropic-specific labels with generic AgentX labels - i18n: update default model placeholder to claude-opus-4-5-20251101 Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Pass enableV2=false to PromptXMCPServer when --no-v2 is specified. Usage: npx @promptx/mcp-server --no-v2 Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…efault Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
…p features - Add PromptX Desktop next-gen features section: AgentX, ResourceX, Agent Plaza, memory editor, remote access, sandbox debugging - Replace Nuwa/Luban section with full 8-role table with avatars - Add individual role descriptions for all built-in roles - Add V2 RoleX section: V1 vs V2 comparison, role creation guide, --no-v2 flag usage Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
- Refactor ResourceImporter into useImport hook + ImportForm + dialog shell - Lock resource type per page (roles/tools), show V1/V2 toggle for roles only when enableV2 is on - Fix import: write metadata.json for custom name/description; V2 roles write to ~/.rolex path - Fix delete: V2 roles delete from ~/.rolex/roles/<id>/ and sync rolex.json registry - Fix cache: invalidate Repository memory cache after delete/import so list refreshes immediately - Add delete button for non-system roles with V1/V2 path routing - Force page remount on navigation so role/tool lists reload after create/import - Add coming soon overlay to Agent Shop page - Add i18n keys for role delete messages Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
v2.0.0 — AgentX UI + RoleX (V2) + Skills Management
概述
PromptX 2.0.0 是一次重大版本升级,引入全新的 AgentX 对话界面、V2 RoleX 角色系统和全局 Skills 管理三大核心能力,同时完成了桌面端的全面增强与基础设施升级。
✨ 新功能
AgentX UI — 全新对话界面
RoleX — V2 角色系统
Skills 管理
桌面端 & 基础设施
🐛 Bug 修复
♻️ 重构
Base: main ← 2.0.0
Version: 1.28.0 → 2.0.0(所有包 major 升级)