Add 3D map UX improvements, XNCF auto-attach for agents, and Create Agent from PromptCode#497
Add 3D map UX improvements, XNCF auto-attach for agents, and Create Agent from PromptCode#497Copilot wants to merge 55 commits intoDeveloper-3DAgentsfrom
Conversation
[Release] Developer desktop
Developer mcp
Developer mcp
Developer mcp
XncfTemplate v0.12.9-preview.7 更新 CO2NET.WebApi、DatabasePlant 等基础库
Developer mcp
Developer mcp
refactor: Remove unused class and adjust API defaults
[Release] Developer mcp
Developer mcp
Developer mcp
Developer mcp
update CO2NET reference of Senparc.Ncf.Database.MySql.Backup
update Senparc.CO2NET.WebApi
update: Senparc.Xncf.XncfBuilder.Template
添加异步支持和更新文档及项目引用
Developer mcp
Developer mcp
PromptRange [2025-11-06] v0.15.0-preview.1 Support Prompt comparison;…
Developer mcp
Developer mcp
Developer mcp
Developer mcp
Developer mcp
Developer mcp
…larization Refactor/prompt js modularization
…larization Refactor/prompt js modularization
Developer knowledge base
feat: new version
Developer knowledge base
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit ab89ea3. Configure here.
| case 'a': this.map3dCamera.position.x -= SPEED; this.map3dControls.target.x -= SPEED; moved = true; break | ||
| case 'd': this.map3dCamera.position.x += SPEED; this.map3dControls.target.x += SPEED; moved = true; break | ||
| case 'q': this.map3dCamera.position.z += SPEED; moved = true; break | ||
| case 'e': this.map3dCamera.position.z -= SPEED; moved = true; break |
There was a problem hiding this comment.
Q/E keys zoom instead of panning unlike WASD
Medium Severity
The Q/E keys only modify camera.position.z without also updating controls.target.z, making them behave as zoom (changing distance to orbit target) instead of depth panning. This is inconsistent with W/A/S/D, which correctly move both camera and target together for true panning. As a result, Q/E is functionally identical to +/- (zoom), and the help text describing Q/E as "上下平移" (up-down pan) is incorrect.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit ab89ea3. Configure here.
| return await this.GetStringResponseAsync(async (response, logger) => | ||
| { | ||
| var promptItemService = base.GetService<PromptItemService>(); | ||
| var tree = await promptItemService.GetPromptRangeTreeList(true, true); |
There was a problem hiding this comment.
FilterRangeName property defined but never applied
Low Severity
The PromptRange_ViewPromptCodeRequest class defines a FilterRangeName property (shown to users as a filter input in the FunctionRender form), but ViewPromptCodeList never passes request.FilterRangeName to GetPromptRangeTreeList. That method accepts a promptName parameter for filtering, but it's called without it, so the filter input is silently ignored and all ranges are always returned.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit ab89ea3. Configure here.
|
@copilot 我看到现在有9个文件,在IDE中显示了 Checkout 和Apply,这是什么意思? |
这是您的 IDE(如 VS Code 或 JetBrains)中 GitHub Pull Request 插件的功能:
这两个操作都是只在您本地生效的,不会影响远程仓库。9 个文件就是这个 PR 中修改的所有文件,包括 PromptRange 前端( |
|
@copilot help me to solve these conflicts. |
…emplateAppService, AgentTemplateRequest, PromptRangeAppService, and ViewPromptCodeRequest file location Co-authored-by: JeffreySu <2281927+JeffreySu@users.noreply.github.com>
|
You have used all of your free Bugbot PR reviews. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |
Resolved. The merge with
Merge commit: |
…dimensions for better rendering
Co-authored-by: Jeffrey Su <zsu@senparc.com>
Co-authored-by: Jeffrey Su <zsu@senparc.com>
Co-authored-by: Jeffrey Su <zsu@senparc.com>
…com/NeuCharFramework/NcfPackageSources into copilot/optimize-3d-agent-functions
… manual input support
…tion and improved request descriptions
- Updated Start.cshtml to include filterable and create options for select inputs. - Normalized JSON parameters in Start.cshtml.cs and ModuleAppService.cs for consistent request handling. - Introduced normalizeMultiValue method in start.js to handle multi-value inputs and ensure proper array formatting. - Adjusted logic for setting default selected values in multi-select and dropdowns to improve user experience.
…types - Updated MyFunctionRequest.cs to replace SelectionList with string and string[] for Operator and Power properties, enhancing clarity and usability. - Modified BuildXncfAppService.AI.MCP.cs and related service classes to streamline handling of request parameters, removing unnecessary SelectionList usage. - Adjusted BuildXncfRequest.cs and DatabaseMigrationRequest.cs to utilize direct data types for better performance and readability. - Enhanced XncfStateRequest.cs and related classes to improve data loading and handling, ensuring consistent use of simplified types. - Updated simulated site function requests to align with new data structure, ensuring compatibility and ease of use.
…ctionRender parameter simplification
…d improve function parameter handling
…er handling in AdminChatAiService
…g user experience with dynamic options


Addresses three feature requests: 3D map usability enhancements in PromptRange, auto-attach of XNCF plugin functions when creating agents, and a quick-create workflow to spin up an AgentTemplate directly from a PromptCode.
Feature 1: 3D Map UX Improvements (
PromptRange)W/A/S/Dpan,Q/Edepth,Rreset,Ffit,+/-zoomFeature 2: Auto-attach XNCF Modules (
AgentsManager)Added an "自动附加所有 XNCF 功能插件" switch to the agent creation form. When enabled, all registered plugin types are merged into
functionCallNames, enabling the agent to auto-dispatch to matching XNCF module functions:Feature 3: Create AgentTemplate from PromptCode (
PromptRange+AgentsManager)Backend:
GetListByPromptCodeAPI (AgentsManager) — prefix-matches existing agents for a given codeCreateAgentFromPromptCode[FunctionRender](AgentsManager) — XNCF admin panel entry point with scope selectorViewPromptCodeList[FunctionRender](PromptRange) — displays the full PromptCode tree with scope-level annotationsFrontend:
$confirmprompt if conflicts are foundOriginal prompt
Created from VS Code.
Note
Medium Risk
Adds new agent-creation flows and prefix-based lookups that can create/modify
AgentTemplaterecords and change howfunctionCallNamesis populated. Risk is mainly incorrect plugin auto-attachment/removal or unintended agent creation due to PromptCode prefix matching.Overview
Enables a PromptRange → AgentsManager workflow to create an agent from a PromptCode with selectable scope (range/tactic/full), including UI warnings/confirm when existing agents share the same PromptCode prefix.
Adds new AgentsManager endpoints to support this flow:
GetListByPromptCode(prefix match) and aFunctionRenderactionCreateAgentFromPromptCode, plus a PromptRangeFunctionRender(ViewPromptCodeList) for browsing available PromptCodes.Improves AgentsManager’s Function Calls UI with an auto-attach all XNCF plugins switch that merges/removes all registered plugin types into/from
functionCallNames.Enhances the PromptRange 3D map dialog usability with a toolbar (reset/fit/fullscreen), keyboard shortcuts, auto-fit on open, render throttling hooks, and proper keyboard handler cleanup on close.
Reviewed by Cursor Bugbot for commit ab89ea3. Bugbot is set up for automated code reviews on this repo. Configure here.