feat: add experimental support for AST parsing and static graph indexing

- Introduced CLI options for using AST grep parsers and enabling static graph relationships during indexing.
- Updated configuration management to load new settings for AST parsing and static graph types.
- Enhanced AST grep processor to handle imports with aliases and improve relationship tracking.
- Modified TreeSitter parsers to support synthetic module scopes for better static graph persistence.
- Implemented global relationship updates in the incremental indexer for static graph expansion.
- Added new ArtifactTag and FloatingFileBrowser components to the frontend for improved terminal dashboard functionality.
- Created utility functions for detecting CCW artifacts in terminal output with associated tests.
This commit is contained in:
catlog22
2026-02-15 23:12:06 +08:00
parent 48a6a1f2aa
commit 8938c47f88
39 changed files with 2956 additions and 297 deletions

View File

@@ -164,11 +164,28 @@
"uninstall": "Uninstall",
"uninstalling": "Uninstalling...",
"uninstallConfirm": "Are you sure you want to uninstall CCW MCP?",
"uninstallScopeConfirm": "Are you sure you want to remove CCW MCP from {scope}?",
"saveConfig": "Save Configuration",
"saving": "Saving..."
},
"scope": {
"global": "Global",
"project": "Project",
"addScope": "Install to other scope",
"installToProject": "Also install to project",
"installToGlobal": "Also install to global",
"uninstallFrom": "Uninstall by scope",
"uninstallGlobal": "Remove from global",
"uninstallProject": "Remove from project"
},
"codexNote": "Requires: npm install -g claude-code-workflow"
},
"conflict": {
"badge": "Conflict",
"title": "Scope Conflict",
"description": "This server exists in both project and global scopes. The {scope} version is used at runtime.",
"resolution": "Consider removing this server from one of the scopes."
},
"recommended": {
"title": "Recommended Servers",
"description": "Quickly install popular MCP servers with one click",

View File

@@ -121,6 +121,7 @@
"disabled": "Disabled",
"platforms": "Platform Configuration",
"events": "Event Triggers",
"selectPlatforms": "Select which platforms to notify for this event:",
"noPlatforms": "No platforms",
"configured": "Configured",
"save": "Save",
@@ -151,6 +152,36 @@
"method": "HTTP Method",
"headers": "Custom Headers (JSON)",
"headersHint": "Optional JSON object with custom headers"
},
"feishu": {
"webhookUrl": "Webhook URL",
"webhookUrlHint": "Get from Feishu robot settings",
"useCard": "Use Card Format",
"useCardHint": "Send as rich interactive card",
"title": "Card Title (optional)"
},
"dingtalk": {
"webhookUrl": "Webhook URL",
"webhookUrlHint": "Get from DingTalk robot settings",
"keywords": "Security Keywords",
"keywordsHint": "Comma-separated keywords for security check"
},
"wecom": {
"webhookUrl": "Webhook URL",
"webhookUrlHint": "Get from WeCom robot settings",
"mentionedList": "Mention Users",
"mentionedListHint": "User IDs to mention, use '@all' for everyone"
},
"email": {
"host": "SMTP Host",
"hostHint": "e.g., smtp.gmail.com",
"port": "Port",
"secure": "Use TLS",
"username": "Username",
"password": "Password",
"from": "Sender Email",
"to": "Recipients",
"toHint": "Comma-separated email addresses"
}
},
"versionCheck": {

View File

@@ -78,9 +78,51 @@
"layoutSplitV": "Split Vertical",
"layoutGrid": "Grid 2x2",
"launchCli": "Launch CLI",
"tool": "Tool",
"mode": "Mode",
"modeDefault": "Default",
"modeYolo": "Yolo",
"quickCreate": "Quick Create",
"configure": "Configure..."
},
"cliConfig": {
"title": "Create CLI Session",
"description": "Configure tool, model, mode, shell, and working directory.",
"tool": "Tool",
"model": "Model",
"modelAuto": "Auto",
"mode": "Mode",
"modeDefault": "Default",
"modeYolo": "Yolo",
"shell": "Shell",
"workingDir": "Working Directory",
"workingDirPlaceholder": "e.g. /path/to/project",
"browse": "Browse",
"errors": {
"workingDirRequired": "Working directory is required.",
"createFailed": "Failed to create session."
}
},
"fileBrowser": {
"title": "File Browser",
"open": "Open file browser",
"selected": "Selected file",
"noSelection": "No file selected",
"copyPath": "Copy path",
"copied": "Copied",
"insertPath": "Insert into terminal",
"loading": "Loading...",
"loadFailed": "Failed to load file tree"
},
"artifacts": {
"types": {
"workflowSession": "Workflow",
"liteSession": "Lite",
"claudeMd": "CLAUDE.md",
"ccwConfig": "CCW Config",
"issue": "Issue"
}
},
"pane": {
"selectSession": "Select a session",
"selectSessionHint": "Choose a terminal session from the dropdown",