Frontmatter
| id | 8187 |
| title | Feat: Neural Link - State Provider Inspection & Modification |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Dec 28, 2025, 10:12 PM |
| updatedAt | Dec 29, 2025, 10:29 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8187 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8169 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 29, 2025, 10:29 PM |
Feat: Neural Link - State Provider Inspection & Modification
tobiu added parent issue #8169 on Dec 28, 2025, 10:12 PM
tobiu assigned to @tobiu on Dec 29, 2025, 10:22 PM

tobiu
Dec 29, 2025, 10:29 PM
Input from Gemini 3:
✦ I have implemented the State Provider Inspection & Modification features.
Changes:
Component Service (
src/ai/client/ComponentService.mjs):
- Updated
serializeComponentto includestateProviderIdin the output only if the component explicitly defines/owns astateProvider. This provides a clear view of state scope boundaries within the component tree without noise.Data Service (
src/ai/client/DataService.mjs,ai/mcp/server/neural-link/services/DataService.mjs):
- Implemented
inspectStateProvider(providerId): Returns the hierarchical data object from the provider.- Implemented
modifyStateProvider(providerId, data): Allows merging new data into the provider.MCP Integration:
- Registered
inspect_state_providerandmodify_state_providertools.- Updated
src/ai/Client.mjsservice mappings.- Updated
openapi.yamlwith new paths and schemas.Agents can now discover where state providers are located (via
get_component_tree) and then inspect or modify their data directly.
tobiu closed this issue on Dec 29, 2025, 10:29 PM
Context: For modern Neo apps using
state.Provider, inspecting the global state tree is the fastest way to understand the application context. Modifying this state is a powerful way to drive the application.Scope:
Enhance
ComponentService:getComponentTreeto includestateProviderIdon components.Enhance
DataService:inspectStateProvider(sessionId, providerId).Neo.get(providerId).getHierarchyData().modifyStateProvider(sessionId, providerId, data).Neo.get(providerId).setData(data).datais a JSON object with keys/values (can be nested).Tools:
inspect_state_provider: Returns the effective state object.modify_state_provider: Updates the state.Goal: Provide full read/write access to the application's reactive state hierarchy.