gitextract_jk0y9og_/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── custom.md │ │ └── feature_request.md │ ├── dependabot.yml │ └── workflows/ │ ├── build.yml │ ├── release.yml │ └── run-ui-tests.yml ├── .gitignore ├── .run/ │ ├── Build Plugin.run.xml │ ├── PublishPlugin.run.xml │ ├── Run IDE for UI Tests.run.xml │ ├── Run Plugin.run.xml │ ├── Run Qodana.run.xml │ ├── Run Tests.run.xml │ └── Run Verifications.run.xml ├── .shire/ │ └── docs/ │ ├── context_variable.shire │ ├── hobbit-hole.shire │ ├── on-streamin-done.shire │ └── shire-command.shire ├── CHANGELOG.md ├── LICENSE ├── README.md ├── build.gradle.kts ├── core/ │ ├── README.md │ └── src/ │ ├── embeddings/ │ │ └── LocalEmbedding.kt │ ├── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirecore/ │ │ │ ├── ProjectUtil.kt │ │ │ ├── ShireConstants.kt │ │ │ ├── ShireCoreBundle.kt │ │ │ ├── ShireCoroutineScope.kt │ │ │ ├── ShirelangNotifications.kt │ │ │ ├── agent/ │ │ │ │ ├── CustomAgent.kt │ │ │ │ ├── CustomAgentResponseAction.kt │ │ │ │ └── agenttool/ │ │ │ │ ├── AgentToolContext.kt │ │ │ │ ├── AgentToolResult.kt │ │ │ │ ├── browse/ │ │ │ │ │ ├── BrowseTool.kt │ │ │ │ │ ├── DocumentCleaner.kt │ │ │ │ │ └── DocumentContent.kt │ │ │ │ └── ua/ │ │ │ │ ├── BrowserType.kt │ │ │ │ ├── DeviceType.kt │ │ │ │ ├── Pattern.kt │ │ │ │ ├── RandomUserAgent.kt │ │ │ │ ├── Seeds.kt │ │ │ │ └── UserAgentException.kt │ │ │ ├── ast/ │ │ │ │ ├── ComplexityPoint.kt │ │ │ │ ├── ComplexitySink.kt │ │ │ │ ├── ComplexityVisitor.kt │ │ │ │ └── PsiSyntaxCheckingVisitor.kt │ │ │ ├── completion/ │ │ │ │ └── ShireLookupElement.kt │ │ │ ├── config/ │ │ │ │ ├── InteractionType.kt │ │ │ │ ├── ShireActionLocation.kt │ │ │ │ └── interaction/ │ │ │ │ ├── EditorInteractionProvider.kt │ │ │ │ ├── PostFunction.kt │ │ │ │ ├── dto/ │ │ │ │ │ └── CodeCompletionRequest.kt │ │ │ │ └── task/ │ │ │ │ ├── ChatCompletionTask.kt │ │ │ │ ├── CodeCompletionTask.kt │ │ │ │ ├── FileGenerateTask.kt │ │ │ │ ├── InsertUtil.kt │ │ │ │ └── ShireInteractionTask.kt │ │ │ ├── diff/ │ │ │ │ ├── DiffStreamHandler.kt │ │ │ │ ├── DiffStreamService.kt │ │ │ │ ├── EditorComponentInlaysManager.kt │ │ │ │ ├── LICENSE │ │ │ │ ├── VerticalDiffBlock.kt │ │ │ │ └── model/ │ │ │ │ └── StreamDiff.kt │ │ │ ├── function/ │ │ │ │ ├── guard/ │ │ │ │ │ ├── base/ │ │ │ │ │ │ ├── LocalScanner.kt │ │ │ │ │ │ └── ScanResult.kt │ │ │ │ │ ├── model/ │ │ │ │ │ │ ├── SecretPattern.kt │ │ │ │ │ │ └── SecretPatterns.kt │ │ │ │ │ └── scanner/ │ │ │ │ │ └── SecretPatternsScanner.kt │ │ │ │ └── shireql/ │ │ │ │ └── JvmShireQLFuncType.kt │ │ │ ├── llm/ │ │ │ │ ├── ChatMessage.kt │ │ │ │ ├── LlmConfig.kt │ │ │ │ └── LlmProvider.kt │ │ │ ├── middleware/ │ │ │ │ ├── builtin/ │ │ │ │ │ ├── AppendProcessor.kt │ │ │ │ │ ├── DiffProcessor.kt │ │ │ │ │ ├── FormatCodeProcessor.kt │ │ │ │ │ ├── InsertCodeProcessor.kt │ │ │ │ │ ├── InsertNewlineProcessor.kt │ │ │ │ │ ├── OpenFileProcessor.kt │ │ │ │ │ ├── OpenWebpageProcessor.kt │ │ │ │ │ ├── ParseCodeProcessor.kt │ │ │ │ │ ├── ParseCommentProcessor.kt │ │ │ │ │ ├── PatchProcessor.kt │ │ │ │ │ ├── RunCodeProcessor.kt │ │ │ │ │ ├── SaveFileProcessor.kt │ │ │ │ │ ├── ShowWebviewProcessor.kt │ │ │ │ │ ├── TimeMetricProcessor.kt │ │ │ │ │ ├── UpdateEditorTextProcessor.kt │ │ │ │ │ ├── VerifyCodeProcessor.kt │ │ │ │ │ └── ui/ │ │ │ │ │ ├── ActionableWebView.kt │ │ │ │ │ └── WebViewWindow.kt │ │ │ │ ├── post/ │ │ │ │ │ ├── PostProcessor.kt │ │ │ │ │ ├── PostProcessorContext.kt │ │ │ │ │ └── PostProcessorType.kt │ │ │ │ └── select/ │ │ │ │ ├── DefaultPsiElementStrategy.kt │ │ │ │ ├── PsiElementStrategy.kt │ │ │ │ └── SelectElementStrategy.kt │ │ │ ├── project/ │ │ │ │ └── ProjectFileUtil.kt │ │ │ ├── provider/ │ │ │ │ ├── TestingService.kt │ │ │ │ ├── action/ │ │ │ │ │ ├── CustomActionLocationExecutor.kt │ │ │ │ │ ├── TerminalLocationExecutor.kt │ │ │ │ │ └── terminal/ │ │ │ │ │ └── TerminalHandler.kt │ │ │ │ ├── agent/ │ │ │ │ │ └── AgentTool.kt │ │ │ │ ├── codeedit/ │ │ │ │ │ └── CodeModifier.kt │ │ │ │ ├── codemodel/ │ │ │ │ │ ├── ClassStructureProvider.kt │ │ │ │ │ ├── FileStructureProvider.kt │ │ │ │ │ ├── MethodStructureProvider.kt │ │ │ │ │ ├── StructureProvider.kt │ │ │ │ │ ├── VariableStructureProvider.kt │ │ │ │ │ ├── base/ │ │ │ │ │ │ └── FormatableElement.kt │ │ │ │ │ └── model/ │ │ │ │ │ ├── ClassStructure.kt │ │ │ │ │ ├── DirectoryStructure.kt │ │ │ │ │ ├── FileStructure.kt │ │ │ │ │ ├── MethodStructure.kt │ │ │ │ │ └── VariableStructure.kt │ │ │ │ ├── complexity/ │ │ │ │ │ └── ComplexityProvider.kt │ │ │ │ ├── context/ │ │ │ │ │ ├── ActionLocationEditor.kt │ │ │ │ │ ├── BuildSystemProvider.kt │ │ │ │ │ ├── BuildTool.kt │ │ │ │ │ └── LanguageToolchainProvider.kt │ │ │ │ ├── function/ │ │ │ │ │ └── ToolchainFunctionProvider.kt │ │ │ │ ├── http/ │ │ │ │ │ └── HttpHandler.kt │ │ │ │ ├── ide/ │ │ │ │ │ ├── InlineChatProvider.kt │ │ │ │ │ ├── LocationInteractionContext.kt │ │ │ │ │ ├── LocationInteractionProvider.kt │ │ │ │ │ └── ShirePromptBuilder.kt │ │ │ │ ├── impl/ │ │ │ │ │ └── MarkdownPsiContextVariableProvider.kt │ │ │ │ ├── psi/ │ │ │ │ │ ├── PsiCapture.kt │ │ │ │ │ ├── PsiElementDataBuilder.kt │ │ │ │ │ ├── PsiElementStrategyBuilder.kt │ │ │ │ │ └── RelatedClassesProvider.kt │ │ │ │ ├── shire/ │ │ │ │ │ ├── FileCreateService.kt │ │ │ │ │ ├── FileRunService.kt │ │ │ │ │ ├── ProjectRunService.kt │ │ │ │ │ ├── RefactoringTool.kt │ │ │ │ │ ├── RevisionProvider.kt │ │ │ │ │ ├── ShireQLDataProvider.kt │ │ │ │ │ └── ShireSymbolProvider.kt │ │ │ │ ├── sketch/ │ │ │ │ │ └── LanguageSketchProvider.kt │ │ │ │ ├── streaming/ │ │ │ │ │ ├── LoggingStreamingService.kt │ │ │ │ │ ├── OnStreamingService.kt │ │ │ │ │ ├── ProfilingStreamingService.kt │ │ │ │ │ ├── StreamingServiceProvider.kt │ │ │ │ │ └── TimingStreamingService.kt │ │ │ │ └── variable/ │ │ │ │ ├── PsiContextVariableProvider.kt │ │ │ │ ├── ShireQLInterpreter.kt │ │ │ │ ├── ToolchainVariableProvider.kt │ │ │ │ ├── VariableProvider.kt │ │ │ │ ├── impl/ │ │ │ │ │ └── DefaultPsiContextVariableProvider.kt │ │ │ │ └── model/ │ │ │ │ ├── ConditionPsiVariable.kt │ │ │ │ ├── ContextVariable.kt │ │ │ │ ├── PsiContextVariable.kt │ │ │ │ ├── SystemInfoVariable.kt │ │ │ │ ├── ToolchainVariable.kt │ │ │ │ ├── Variable.kt │ │ │ │ └── toolchain/ │ │ │ │ ├── BuildToolchainVariable.kt │ │ │ │ ├── DatabaseToolchainVariable.kt │ │ │ │ ├── SonarqubeVariable.kt │ │ │ │ ├── TerminalToolchainVariable.kt │ │ │ │ └── VcsToolchainVariable.kt │ │ │ ├── psi/ │ │ │ │ ├── CodeSmellCollector.kt │ │ │ │ └── PsiErrorCollector.kt │ │ │ ├── runner/ │ │ │ │ ├── ConfigurationRunner.kt │ │ │ │ ├── RunContext.kt │ │ │ │ ├── RunServiceExt.kt │ │ │ │ ├── RunServiceTask.kt │ │ │ │ ├── RunnerResult.kt │ │ │ │ ├── RunnerResultSeverity.kt │ │ │ │ ├── RunnerStatus.kt │ │ │ │ ├── ShireProcessHandler.kt │ │ │ │ └── console/ │ │ │ │ ├── CustomFlowWrapper.kt │ │ │ │ └── ShireConsoleViewBase.kt │ │ │ ├── schema/ │ │ │ │ ├── SecretPatternFileProvider.kt │ │ │ │ ├── ShireCustomAgentSchemaFileProvider.kt │ │ │ │ ├── ShireEnvFileProvider.kt │ │ │ │ └── ShireJsonSchemaProviderFactory.kt │ │ │ ├── search/ │ │ │ │ ├── algorithm/ │ │ │ │ │ ├── BM25Similarity.kt │ │ │ │ │ ├── JaccardSimilarity.kt │ │ │ │ │ ├── Similarity.kt │ │ │ │ │ └── TfIdf.kt │ │ │ │ ├── function/ │ │ │ │ │ ├── ScoreText.kt │ │ │ │ │ ├── SemanticService.kt │ │ │ │ │ └── SemanticStorageType.kt │ │ │ │ ├── indices/ │ │ │ │ │ ├── DiskSynchronizedEmbeddingSearchIndex.kt │ │ │ │ │ ├── EmbeddingSearchIndex.kt │ │ │ │ │ ├── InMemoryEmbeddingSearchIndex.kt │ │ │ │ │ ├── LocalEmbeddingIndexFileManager.kt │ │ │ │ │ └── LockedSequenceWrapper.kt │ │ │ │ ├── rank/ │ │ │ │ │ ├── LlmReRanker.kt │ │ │ │ │ ├── LostInTheMiddleRanker.kt │ │ │ │ │ └── Reranker.kt │ │ │ │ ├── similar/ │ │ │ │ │ ├── SimilarChunkContext.kt │ │ │ │ │ └── SimilarChunkSearcher.kt │ │ │ │ └── tokenizer/ │ │ │ │ ├── CodeNamingTokenizer.kt │ │ │ │ ├── RegexpTokenizer.kt │ │ │ │ ├── StopwordsBasedTokenizer.kt │ │ │ │ ├── TermSplitter.kt │ │ │ │ └── Tokenizer.kt │ │ │ ├── sketch/ │ │ │ │ ├── LangSketch.kt │ │ │ │ ├── highlight/ │ │ │ │ │ ├── CodeHighlightSketch.kt │ │ │ │ │ ├── EditorFragment.kt │ │ │ │ │ └── toolbar/ │ │ │ │ │ ├── ShireCopyToClipboardAction.kt │ │ │ │ │ ├── ShireInsertCodeAction.kt │ │ │ │ │ ├── ShireLanguageLabelAction.kt │ │ │ │ │ └── ShireRunCodeAction.kt │ │ │ │ ├── lint/ │ │ │ │ │ ├── SketchCodeInspection.kt │ │ │ │ │ └── SketchInspectionError.kt │ │ │ │ └── patch/ │ │ │ │ ├── DiffLangSketch.kt │ │ │ │ ├── DiffLangSketchProvider.kt │ │ │ │ ├── MyApplyPatchFromClipboardDialog.kt │ │ │ │ └── SingleFileDiffView.kt │ │ │ ├── sse/ │ │ │ │ ├── CustomAgentSSEExecutor.kt │ │ │ │ ├── CustomSSEHandler.kt │ │ │ │ └── io/ │ │ │ │ ├── JSONBodyResponseCallback.kt │ │ │ │ ├── OpenAIDto.kt │ │ │ │ ├── ResponseBodyCallback.kt │ │ │ │ ├── SSE.kt │ │ │ │ ├── SSEFormatException.kt │ │ │ │ └── ShireHttpException.kt │ │ │ ├── task/ │ │ │ │ └── Graph.kt │ │ │ ├── ui/ │ │ │ │ ├── CustomProgressBar.kt │ │ │ │ ├── ShirePanelView.kt │ │ │ │ └── input/ │ │ │ │ ├── DarculaNewUIUtil.kt │ │ │ │ ├── ShireChatBoxInput.kt │ │ │ │ ├── ShireCoolBorder.kt │ │ │ │ ├── ShireInputListener.kt │ │ │ │ ├── ShireInputLookupManagerListener.kt │ │ │ │ ├── ShireInputSection.kt │ │ │ │ ├── ShireInputTextField.kt │ │ │ │ └── ShireInputTrigger.kt │ │ │ ├── utils/ │ │ │ │ └── markdown/ │ │ │ │ ├── CodeFence.kt │ │ │ │ ├── CodeFenceLanguage.kt │ │ │ │ ├── MarkdownUtil.kt │ │ │ │ └── PostCodeProcessor.kt │ │ │ └── variable/ │ │ │ ├── frontend/ │ │ │ │ ├── Component.kt │ │ │ │ └── ComponentProvider.kt │ │ │ ├── template/ │ │ │ │ ├── TemplateContext.kt │ │ │ │ └── VariableActionEventDataHolder.kt │ │ │ ├── toolchain/ │ │ │ │ ├── buildsystem/ │ │ │ │ │ └── BuildSystemContext.kt │ │ │ │ ├── refactoring/ │ │ │ │ │ └── RefactorInstElement.kt │ │ │ │ └── unittest/ │ │ │ │ └── AutoTestingPromptContext.kt │ │ │ └── vcs/ │ │ │ ├── ShireFileBranch.kt │ │ │ ├── ShireFileCommit.kt │ │ │ └── ShireGitCommit.kt │ │ └── resources/ │ │ ├── com.phodal.shirecore.xml │ │ ├── messages/ │ │ │ └── ShireCoreBundle.properties │ │ ├── schemas/ │ │ │ ├── shireCustomAgent.schema.json │ │ │ ├── shireEnv.schema.json │ │ │ └── shireSecretPattern.schema.json │ │ ├── secrets/ │ │ │ └── default.shireSecretPattern.yml │ │ └── tokenizers-engine.properties │ └── test/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shirecore/ │ │ ├── diff/ │ │ │ └── model/ │ │ │ └── StreamDiffTest.kt │ │ ├── guard/ │ │ │ └── model/ │ │ │ └── SecretPatternsScannerTest.kt │ │ ├── middleware/ │ │ │ └── builtin/ │ │ │ └── SaveFileProcessorTest.kt │ │ ├── provider/ │ │ │ └── impl/ │ │ │ └── MarkdownPsiContextVariableProviderTest.kt │ │ ├── search/ │ │ │ ├── TfIdfTest.kt │ │ │ ├── algorithm/ │ │ │ │ ├── BM25SimilarityTest.kt │ │ │ │ └── JaccardSimilarityTest.kt │ │ │ ├── function/ │ │ │ │ └── LocalEmbeddingTest.kt │ │ │ └── tokenizer/ │ │ │ └── TermSplitterTest.kt │ │ ├── task/ │ │ │ └── GraphTest.kt │ │ └── utils/ │ │ └── markdown/ │ │ └── CodeFenceTest.kt │ └── resources/ │ └── META-INF/ │ └── plugin.xml ├── docs/ │ ├── CNAME │ ├── _config.yml │ ├── _includes/ │ │ ├── head_custom.html │ │ └── js/ │ │ └── custom.js │ ├── _sass/ │ │ └── custom/ │ │ └── custom.scss │ ├── cloud/ │ │ ├── cloud.md │ │ ├── http-api-tool.md │ │ └── remote-agent.md │ ├── data-privacy/ │ │ ├── data-privacy.md │ │ ├── guarding-functions.md │ │ └── pipeline-guarding.md │ ├── development/ │ │ ├── design-principle.md │ │ ├── development.md │ │ ├── ide-note.md │ │ ├── language-spec.md │ │ └── shire-sketch.md │ ├── examples/ │ │ ├── auto-test.md │ │ ├── batch-execute.md │ │ ├── cli-copilot.md │ │ ├── code-comment.md │ │ ├── code-refactoring.md │ │ ├── commit-message-gen.md │ │ ├── examples.md │ │ ├── inline-chat.md │ │ ├── multiple-file-edit.md │ │ ├── on-paste-modify.md │ │ └── search.md │ ├── faq.md │ ├── index.md │ ├── lifecycle/ │ │ ├── after-streaming.md │ │ ├── before-streaming.md │ │ ├── lifecycle.md │ │ ├── on-streaming-done.md │ │ └── on-streaming.md │ ├── quick-start.md │ ├── scene/ │ │ ├── ai-for-doc.md │ │ ├── scene.md │ │ └── secondary-research.md │ ├── shire/ │ │ ├── shire-builtin-variable.md │ │ ├── shire-custom-variable.md │ │ ├── shire-env.md │ │ ├── shire-foreign-function.md │ │ ├── shire-hobbit-hole.md │ │ ├── shire-lang.md │ │ ├── shire-template.md │ │ ├── shire-toolchain-function.md │ │ ├── shire-toolchain-variable.md │ │ ├── shire.md │ │ └── when.md │ ├── shireql/ │ │ ├── shire-database.md │ │ ├── shire-ql-basic.md │ │ ├── shire-ql-dependency.md │ │ ├── shire-ql-git.md │ │ ├── shire-ql-psi.md │ │ └── shire-ql.md │ └── workflow/ │ ├── custom-ai-agent.md │ ├── rag-flow.md │ ├── remote-ai-agent.md │ ├── response-routing-function.md │ └── workflow.md ├── gradle/ │ ├── libs.versions.toml │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle-241.properties ├── gradle-243.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── languages/ │ ├── README.md │ ├── shire-go/ │ │ └── src/ │ │ └── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ └── go/ │ │ │ ├── codemodel/ │ │ │ │ ├── GoClassStructureProvider.kt │ │ │ │ ├── GoFileStructureProvider.kt │ │ │ │ ├── GoMethodStructureProvider.kt │ │ │ │ └── GoVariableStructureProvider.kt │ │ │ ├── util/ │ │ │ │ └── GoPsiUtil.kt │ │ │ └── variable/ │ │ │ ├── GoLanguageProvider.kt │ │ │ └── GoPsiContextVariableProvider.kt │ │ └── resources/ │ │ └── com.phodal.shirelang.go.xml │ ├── shire-java/ │ │ └── src/ │ │ ├── main/ │ │ │ ├── kotlin/ │ │ │ │ └── com/ │ │ │ │ └── phodal/ │ │ │ │ └── shirelang/ │ │ │ │ └── java/ │ │ │ │ ├── archmeta/ │ │ │ │ │ ├── SpringLayerCharacteristic.kt │ │ │ │ │ └── SpringLibrary.kt │ │ │ │ ├── codeedit/ │ │ │ │ │ ├── JavaAutoTestingService.kt │ │ │ │ │ └── JavaCodeModifier.kt │ │ │ │ ├── codemodel/ │ │ │ │ │ ├── JavaClassStructureProvider.kt │ │ │ │ │ ├── JavaFileStructureProvider.kt │ │ │ │ │ ├── JavaMethodStructureProvider.kt │ │ │ │ │ └── JavaVariableStructureProvider.kt │ │ │ │ ├── complexity/ │ │ │ │ │ ├── JavaComplexityProvider.kt │ │ │ │ │ └── JavaLanguageVisitor.kt │ │ │ │ ├── impl/ │ │ │ │ │ ├── JavaElementStrategyBuilder.kt │ │ │ │ │ ├── JavaPsiElementDataBuilder.kt │ │ │ │ │ ├── JavaRefactoringTool.kt │ │ │ │ │ ├── JavaShireQLInterpreter.kt │ │ │ │ │ ├── JavaSymbolProvider.kt │ │ │ │ │ └── JvmBuildSystemProvider.kt │ │ │ │ ├── provider/ │ │ │ │ │ └── JavaRelatedClassesProvider.kt │ │ │ │ ├── toolchain/ │ │ │ │ │ ├── GradleBuildTool.kt │ │ │ │ │ ├── JvmLanguageDetector.kt │ │ │ │ │ ├── JvmRunProjectService.kt │ │ │ │ │ └── MavenBuildTool.kt │ │ │ │ ├── util/ │ │ │ │ │ ├── JavaContextCollection.kt │ │ │ │ │ ├── JavaTestHelper.kt │ │ │ │ │ ├── JavaTypeResolver.kt │ │ │ │ │ └── SimpleClassStructure.kt │ │ │ │ └── variable/ │ │ │ │ ├── JavaLanguageToolchainProvider.kt │ │ │ │ ├── JavaPsiContextVariableProvider.kt │ │ │ │ └── JavaVariableProvider.kt │ │ │ └── resources/ │ │ │ └── com.phodal.shirelang.java.xml │ │ └── test/ │ │ └── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shirelang/ │ │ └── java/ │ │ ├── complexity/ │ │ │ └── JavaComplexityProviderTest.kt │ │ ├── impl/ │ │ │ ├── JavaBuildSystemProviderTest.kt │ │ │ └── JavaPsiQLInterpreterTest.kt │ │ ├── toolchain/ │ │ │ └── SpringLayerCharacteristicTest.kt │ │ └── variable/ │ │ └── JavaTestHelperTest.kt │ ├── shire-javascript/ │ │ └── src/ │ │ └── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ └── javascript/ │ │ │ ├── JSTypeResolver.kt │ │ │ ├── codeedit/ │ │ │ │ ├── JSAutoTestingService.kt │ │ │ │ ├── JSFileRunService.kt │ │ │ │ ├── JavaScriptTestCodeModifier.kt │ │ │ │ └── JestCodeModifier.kt │ │ │ ├── codemodel/ │ │ │ │ ├── JavaScriptClassStructureProvider.kt │ │ │ │ ├── JavaScriptFileStructureProvider.kt │ │ │ │ ├── JavaScriptMethodStructureProvider.kt │ │ │ │ └── JavaScriptVariableStructureProvider.kt │ │ │ ├── framework/ │ │ │ │ ├── ReactPage.kt │ │ │ │ └── ReactPsiUtil.kt │ │ │ ├── impl/ │ │ │ │ ├── JavaScriptBuildSystemProvider.kt │ │ │ │ └── TypeScriptRefactoringTool.kt │ │ │ ├── provider/ │ │ │ │ └── JavaScriptRelatedClassesProvider.kt │ │ │ ├── util/ │ │ │ │ ├── JSPsiUtil.kt │ │ │ │ ├── JsDependeciesSnapshot.kt │ │ │ │ └── LanguageApplicationUtil.kt │ │ │ └── variable/ │ │ │ ├── JSPsiContextVariableProvider.kt │ │ │ ├── JavaScriptFrameworks.kt │ │ │ └── JavaScriptLanguageToolchainProvider.kt │ │ └── resources/ │ │ └── com.phodal.shirelang.javascript.xml │ ├── shire-json/ │ │ └── src/ │ │ ├── main/ │ │ │ ├── kotlin/ │ │ │ │ └── com/ │ │ │ │ └── phodal/ │ │ │ │ └── shire/ │ │ │ │ └── json/ │ │ │ │ ├── PsiJsonUtil.kt │ │ │ │ ├── ShireEnvReader.kt │ │ │ │ ├── ShireEnvVariableFiller.kt │ │ │ │ ├── ShireEnvironmentIndex.kt │ │ │ │ ├── ShireEnvironmentInputFilter.kt │ │ │ │ ├── ShireStringsExternalizer.kt │ │ │ │ └── llm/ │ │ │ │ └── LlmEnv.kt │ │ │ └── resources/ │ │ │ └── com.phodal.shire.json.xml │ │ └── test/ │ │ └── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── json/ │ │ └── ShireEnvVariableFillerTest.kt │ ├── shire-kotlin/ │ │ └── src/ │ │ └── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ └── kotlin/ │ │ │ ├── KotlinContextCollector.kt │ │ │ ├── KotlinPsiUtil.kt │ │ │ ├── KotlinTypeResolver.kt │ │ │ ├── codemodel/ │ │ │ │ ├── KotlinClassStructureProvider.kt │ │ │ │ ├── KotlinFileStructureProvider.kt │ │ │ │ ├── KotlinMethodStructureProvider.kt │ │ │ │ └── KotlinVariableStructureProvider.kt │ │ │ ├── complexity/ │ │ │ │ ├── KotlinComplexityProvider.kt │ │ │ │ └── KotlinLanguageVisitor.kt │ │ │ ├── impl/ │ │ │ │ └── KotlinRefactoringTool.kt │ │ │ ├── provider/ │ │ │ │ ├── KotlinAutoTestService.kt │ │ │ │ ├── KotlinPsiElementDataBuilder.kt │ │ │ │ └── KotlinRelatedClassesProvider.kt │ │ │ └── variable/ │ │ │ ├── KotlinLanguageToolchainProvider.kt │ │ │ └── KotlinPsiContextVariableProvider.kt │ │ └── resources/ │ │ └── com.phodal.shirelang.kotlin.xml │ ├── shire-markdown/ │ │ └── src/ │ │ ├── main/ │ │ │ ├── kotlin/ │ │ │ │ └── com/ │ │ │ │ └── phodal/ │ │ │ │ └── shirelang/ │ │ │ │ └── markdown/ │ │ │ │ ├── MarkdownNode.kt │ │ │ │ └── MarkdownPsiCapture.kt │ │ │ └── resources/ │ │ │ └── com.phodal.shirelang.markdown.xml │ │ └── test/ │ │ └── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shirelang/ │ │ └── markdown/ │ │ └── MarkdownPsiCaptureTest.kt │ ├── shire-proto/ │ │ └── src/ │ │ └── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ └── proto/ │ │ │ ├── codemodel/ │ │ │ │ ├── ProtoClassStructureProvider.kt │ │ │ │ └── ProtoFileStructureProvider.kt │ │ │ ├── provider/ │ │ │ │ ├── ShireProtoPsiVariableProvider.kt │ │ │ │ └── ShireProtoUtils.kt │ │ │ └── variable/ │ │ │ └── ProtobufToolchainProvider.kt │ │ └── resources/ │ │ └── com.phodal.shirelang.proto.xml │ └── shire-python/ │ └── src/ │ ├── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ └── python/ │ │ │ ├── provider/ │ │ │ │ ├── ShirePythonAutoTesting.kt │ │ │ │ ├── ShirePythonPsiVariableProvider.kt │ │ │ │ └── ShirePythonRunService.kt │ │ │ └── util/ │ │ │ ├── PyTestUtil.kt │ │ │ └── PythonPsiUtil.kt │ │ └── resources/ │ │ └── com.phodal.shirelang.python.xml │ └── test/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shirelang/ │ │ └── python/ │ │ └── util/ │ │ ├── PyTestUtilTest.kt │ │ └── PythonPsiUtilTest.kt │ └── resources/ │ └── META-INF/ │ └── plugin.xml ├── qodana.yml ├── settings.gradle.kts ├── shirelang/ │ ├── .gitignore │ ├── README.md │ ├── editor/ │ │ └── ShireVariablePanel.kt │ └── src/ │ ├── main/ │ │ ├── grammar/ │ │ │ ├── ShireLexer.flex │ │ │ └── ShireParser.bnf │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shirelang/ │ │ │ ├── ShireActionStartupActivity.kt │ │ │ ├── ShireAstFactory.kt │ │ │ ├── ShireBundle.kt │ │ │ ├── ShireFileType.kt │ │ │ ├── ShireIcons.kt │ │ │ ├── ShireInCommentInjector.kt │ │ │ ├── ShireLanguage.kt │ │ │ ├── ShireLanguageInjector.kt │ │ │ ├── ShireTypedHandler.kt │ │ │ ├── actions/ │ │ │ │ ├── GlobalShireFileChangesProvider.kt │ │ │ │ ├── ShireFileChangesProvider.kt │ │ │ │ ├── ShireFileModifier.kt │ │ │ │ ├── ShireRunFileAction.kt │ │ │ │ ├── base/ │ │ │ │ │ ├── DynamicShireActionConfig.kt │ │ │ │ │ ├── DynamicShireActionService.kt │ │ │ │ │ └── validator/ │ │ │ │ │ └── WhenConditionValidator.kt │ │ │ │ ├── console/ │ │ │ │ │ └── ShireConsoleAction.kt │ │ │ │ ├── context/ │ │ │ │ │ ├── ShireContextMenuAction.kt │ │ │ │ │ └── ShireContextMenuActionGroup.kt │ │ │ │ ├── copyPaste/ │ │ │ │ │ └── ShireCopyPastePreProcessor.kt │ │ │ │ ├── database/ │ │ │ │ │ └── ShireDatabaseAction.kt │ │ │ │ ├── external/ │ │ │ │ │ └── ShireSonarLintAction.kt │ │ │ │ ├── input/ │ │ │ │ │ ├── ShireInputBoxAction.kt │ │ │ │ │ └── inlay/ │ │ │ │ │ ├── ComponentInlaysContainer.kt │ │ │ │ │ ├── CustomInputBox.kt │ │ │ │ │ ├── InlayPanel.kt │ │ │ │ │ └── InlayRenderer.kt │ │ │ │ ├── intention/ │ │ │ │ │ ├── ShireIntentionAction.kt │ │ │ │ │ ├── ShireIntentionHelper.kt │ │ │ │ │ ├── ShireIntentionsActionGroup.kt │ │ │ │ │ └── ui/ │ │ │ │ │ └── CustomPopupStep.kt │ │ │ │ ├── template/ │ │ │ │ │ └── NewShireFileAction.kt │ │ │ │ ├── terminal/ │ │ │ │ │ └── ShireTerminalAction.kt │ │ │ │ └── vcs/ │ │ │ │ ├── ShireVcsActionGroup.kt │ │ │ │ ├── ShireVcsLogAction.kt │ │ │ │ └── ShireVcsSingleAction.kt │ │ │ ├── comment/ │ │ │ │ └── ShireCommenter.kt │ │ │ ├── compiler/ │ │ │ │ ├── ast/ │ │ │ │ │ ├── ExpressionBuiltInMethod.kt │ │ │ │ │ ├── ForeignFunction.kt │ │ │ │ │ ├── FrontMatterType.kt │ │ │ │ │ ├── LineInfo.kt │ │ │ │ │ ├── ShireExpression.kt │ │ │ │ │ ├── ShirePsiQueryStatement.kt │ │ │ │ │ ├── TaskRoutes.kt │ │ │ │ │ ├── action/ │ │ │ │ │ │ ├── DirectAction.kt │ │ │ │ │ │ ├── PatternAction.kt │ │ │ │ │ │ └── RuleBasedPatternAction.kt │ │ │ │ │ ├── hobbit/ │ │ │ │ │ │ ├── HobbitHole.kt │ │ │ │ │ │ └── base/ │ │ │ │ │ │ └── Smials.kt │ │ │ │ │ └── patternaction/ │ │ │ │ │ ├── PatternActionFunc.kt │ │ │ │ │ ├── PatternActionFuncDef.kt │ │ │ │ │ ├── PatternProcessor.kt │ │ │ │ │ └── VariableTransform.kt │ │ │ │ ├── execute/ │ │ │ │ │ ├── FunctionStatementProcessor.kt │ │ │ │ │ ├── PatternActionProcessor.kt │ │ │ │ │ ├── PatternFuncProcessor.kt │ │ │ │ │ ├── command/ │ │ │ │ │ │ ├── BrowseShireCommand.kt │ │ │ │ │ │ ├── CommitShireCommand.kt │ │ │ │ │ │ ├── DatabaseShireCommand.kt │ │ │ │ │ │ ├── DirShireCommand.kt │ │ │ │ │ │ ├── FileFuncShireCommand.kt │ │ │ │ │ │ ├── FileShireCommand.kt │ │ │ │ │ │ ├── GotoShireCommand.kt │ │ │ │ │ │ ├── LocalSearchShireCommand.kt │ │ │ │ │ │ ├── OpenShireCommand.kt │ │ │ │ │ │ ├── PatchShireCommand.kt │ │ │ │ │ │ ├── PrintShireCommand.kt │ │ │ │ │ │ ├── RefactorShireCommand.kt │ │ │ │ │ │ ├── RelatedSymbolInsCommand.kt │ │ │ │ │ │ ├── RevShireCommand.kt │ │ │ │ │ │ ├── RipgrepSearchShireCommand.kt │ │ │ │ │ │ ├── RunShireCommand.kt │ │ │ │ │ │ ├── ShellShireCommand.kt │ │ │ │ │ │ ├── ShireCommand.kt │ │ │ │ │ │ ├── StructureShireCommand.kt │ │ │ │ │ │ ├── SymbolShireCommand.kt │ │ │ │ │ │ ├── WriteShireCommand.kt │ │ │ │ │ │ ├── search/ │ │ │ │ │ │ │ ├── RipgrepOutputProcessor.kt │ │ │ │ │ │ │ └── RipgrepSearcher.kt │ │ │ │ │ │ └── status/ │ │ │ │ │ │ ├── ShireCommandStatus.kt │ │ │ │ │ │ └── ShireCommandStatusListener.kt │ │ │ │ │ ├── processor/ │ │ │ │ │ │ ├── ApprovalExecuteProcessor.kt │ │ │ │ │ │ ├── BatchProcessor.kt │ │ │ │ │ │ ├── CaptureProcessor.kt │ │ │ │ │ │ ├── CrawlProcessor.kt │ │ │ │ │ │ ├── ExecuteProcessor.kt │ │ │ │ │ │ ├── ForeignFunctionProcessor.kt │ │ │ │ │ │ ├── JsonPathProcessor.kt │ │ │ │ │ │ ├── RedactProcessor.kt │ │ │ │ │ │ ├── ThreadProcessor.kt │ │ │ │ │ │ ├── TokenizerProcessor.kt │ │ │ │ │ │ ├── shell/ │ │ │ │ │ │ │ └── ShireShellCommandRunner.kt │ │ │ │ │ │ └── ui/ │ │ │ │ │ │ └── PendingApprovalPanel.kt │ │ │ │ │ ├── searcher/ │ │ │ │ │ │ └── PatternSearcher.kt │ │ │ │ │ ├── shireql/ │ │ │ │ │ │ ├── ShireDateSchema.kt │ │ │ │ │ │ ├── ShireQLProcessor.kt │ │ │ │ │ │ └── ShireQLSchema.kt │ │ │ │ │ └── variable/ │ │ │ │ │ ├── ShireQLFromType.kt │ │ │ │ │ ├── ShireQLVariableBuilder.kt │ │ │ │ │ └── VariableEvaluator.kt │ │ │ │ ├── parser/ │ │ │ │ │ ├── HobbitHoleParser.kt │ │ │ │ │ ├── ShireAstQLParser.kt │ │ │ │ │ ├── ShireError.kt │ │ │ │ │ ├── ShireParsedResult.kt │ │ │ │ │ └── ShireSyntaxAnalyzer.kt │ │ │ │ ├── template/ │ │ │ │ │ ├── ShireVariableTemplateCompiler.kt │ │ │ │ │ └── TemplateCompiler.kt │ │ │ │ └── variable/ │ │ │ │ ├── CompositeVariableProvider.kt │ │ │ │ ├── VariableTable.kt │ │ │ │ └── resolver/ │ │ │ │ ├── CompositeVariableResolver.kt │ │ │ │ ├── ContextVariableResolver.kt │ │ │ │ ├── PsiContextVariableResolver.kt │ │ │ │ ├── SystemInfoVariableResolver.kt │ │ │ │ ├── ToolchainVariableResolver.kt │ │ │ │ ├── UserCustomVariableResolver.kt │ │ │ │ └── base/ │ │ │ │ ├── VariableResolver.kt │ │ │ │ └── VariableResolverContext.kt │ │ │ ├── completion/ │ │ │ │ ├── ShireCompletionContributor.kt │ │ │ │ ├── UserCustomCompletionContributor.kt │ │ │ │ ├── dataprovider/ │ │ │ │ │ ├── BuiltinCommand.kt │ │ │ │ │ ├── BuiltinRefactorCommand.kt │ │ │ │ │ ├── CustomCommand.kt │ │ │ │ │ ├── FileFunc.kt │ │ │ │ │ └── ToolHubVariable.kt │ │ │ │ └── provider/ │ │ │ │ ├── AgentToolOverviewCompletion.kt │ │ │ │ ├── BuiltinCommandCompletion.kt │ │ │ │ ├── CodeFenceLanguageCompletion.kt │ │ │ │ ├── CustomAgentCompletion.kt │ │ │ │ ├── CustomCommandCompletion.kt │ │ │ │ ├── FileFunctionProvider.kt │ │ │ │ ├── FileReferenceLanguageProvider.kt │ │ │ │ ├── HobbitHoleKeyCompletion.kt │ │ │ │ ├── HobbitHoleValueCompletion.kt │ │ │ │ ├── PostProcessorCompletion.kt │ │ │ │ ├── ProjectRunProvider.kt │ │ │ │ ├── QueryStatementCompletion.kt │ │ │ │ ├── RefactoringFuncProvider.kt │ │ │ │ ├── RevisionReferenceLanguageProvider.kt │ │ │ │ ├── SymbolReferenceLanguageProvider.kt │ │ │ │ ├── VariableCompletionProvider.kt │ │ │ │ └── WhenConditionCompletionProvider.kt │ │ │ ├── debugger/ │ │ │ │ ├── ShireBreakpoint.kt │ │ │ │ ├── ShireDebugProcess.kt │ │ │ │ ├── ShireDebugRunner.kt │ │ │ │ ├── ShireDebugSettings.kt │ │ │ │ ├── ShireDebuggerEditorsProvider.kt │ │ │ │ ├── ShireStackFrame.kt │ │ │ │ ├── ShireSuspendContext.kt │ │ │ │ └── snapshot/ │ │ │ │ ├── ShireFileSnapshot.kt │ │ │ │ ├── UserCustomVariableSnapshot.kt │ │ │ │ └── VariableSnapshotRecorder.kt │ │ │ ├── documentation/ │ │ │ │ └── ShireDocumentationProvider.kt │ │ │ ├── editor/ │ │ │ │ ├── FileFilterPopup.kt │ │ │ │ ├── ShireFileEditorWithPreview.kt │ │ │ │ ├── ShirePreviewEditor.kt │ │ │ │ ├── ShirePreviewEditorProvider.kt │ │ │ │ ├── ShireSnapshotViewPanel.kt │ │ │ │ ├── ShireSplitEditorProvider.kt │ │ │ │ └── ShireVariableViewPanel.kt │ │ │ ├── folding/ │ │ │ │ └── ShireFoldingBuilder.kt │ │ │ ├── formatter/ │ │ │ │ └── ShireFormattingModelBuilder.kt │ │ │ ├── highlight/ │ │ │ │ ├── ShireErrorFilter.kt │ │ │ │ ├── ShireHighlightingAnnotator.kt │ │ │ │ ├── ShireSyntaxHighlighter.kt │ │ │ │ ├── ShireSyntaxHighlighterFactory.kt │ │ │ │ └── braces/ │ │ │ │ ├── ShireBraceMatcher.kt │ │ │ │ └── ShireQuoteHandler.kt │ │ │ ├── index/ │ │ │ │ └── ShireIdentifierIndex.kt │ │ │ ├── lexer/ │ │ │ │ ├── ShireLexerAdapter.kt │ │ │ │ └── ShireTokenType.kt │ │ │ ├── lints/ │ │ │ │ └── ShireDuplicateAgentInspection.kt │ │ │ ├── markdown/ │ │ │ │ └── CodeFenceLanguageAliases.kt │ │ │ ├── navigation/ │ │ │ │ └── ShireGotoDeclarationHandler.kt │ │ │ ├── parser/ │ │ │ │ ├── CodeBlockElement.kt │ │ │ │ ├── CodeBlockLiteralTextEscaper.kt │ │ │ │ ├── PatternElement.kt │ │ │ │ ├── ShireGrepFuncCall.kt │ │ │ │ ├── ShireParserDefinition.kt │ │ │ │ └── ShireTokenTypeSets.kt │ │ │ ├── provider/ │ │ │ │ ├── ChatBoxShireFileCreateService.kt │ │ │ │ ├── ShireActionPromptBuilder.kt │ │ │ │ ├── ShireLanguageToolchainProvider.kt │ │ │ │ ├── ShirePsiVariableProvider.kt │ │ │ │ └── ShireToolchainFunctionProvider.kt │ │ │ ├── psi/ │ │ │ │ ├── ShireElementType.kt │ │ │ │ ├── ShireFile.kt │ │ │ │ └── ShireFileStub.kt │ │ │ ├── run/ │ │ │ │ ├── ShireBeforeRunProviderDelegate.kt │ │ │ │ ├── ShireConfiguration.kt │ │ │ │ ├── ShireConfigurationType.kt │ │ │ │ ├── ShireConsoleView.kt │ │ │ │ ├── ShirePluginDisposable.kt │ │ │ │ ├── ShireProcessAdapter.kt │ │ │ │ ├── ShireProgramRunner.kt │ │ │ │ ├── ShireRunConfigurationProducer.kt │ │ │ │ ├── ShireRunConfigurationProfileState.kt │ │ │ │ ├── ShireRunLineMarkersProvider.kt │ │ │ │ ├── ShireRunListener.kt │ │ │ │ ├── ShireSettingsEditor.kt │ │ │ │ ├── ShireSyntaxLineMarkerProvider.kt │ │ │ │ ├── executor/ │ │ │ │ │ ├── CustomRemoteAgentLlmExecutor.kt │ │ │ │ │ ├── ShireDefaultLlmExecutor.kt │ │ │ │ │ └── ShireLlmExecutor.kt │ │ │ │ ├── flow/ │ │ │ │ │ ├── ShireConversationService.kt │ │ │ │ │ ├── ShireProcessContext.kt │ │ │ │ │ └── ShireProcessProcessor.kt │ │ │ │ └── runner/ │ │ │ │ ├── ShireRunner.kt │ │ │ │ └── ShireRunnerContext.kt │ │ │ ├── runner/ │ │ │ │ ├── ShellFileRunService.kt │ │ │ │ └── ShireFileRunService.kt │ │ │ └── thirdparty/ │ │ │ └── ShireSonarLintToolWindowListener.kt │ │ └── resources/ │ │ ├── com.phodal.shirelang.xml │ │ ├── docs/ │ │ │ └── agentExamples/ │ │ │ ├── browse.shire │ │ │ ├── commit.shire │ │ │ ├── file-func.shire │ │ │ ├── file.shire │ │ │ ├── patch.shire │ │ │ ├── refactor.shire │ │ │ ├── rev.shire │ │ │ ├── run.shire │ │ │ ├── shell.shire │ │ │ ├── symbol.shire │ │ │ └── write.shire │ │ ├── fileTemplates/ │ │ │ └── internal/ │ │ │ └── Shire Action.shire.ft │ │ ├── inspectionDescriptions/ │ │ │ └── ShireDuplicateAgent.html │ │ └── messages/ │ │ └── ShireBundle.properties │ └── test/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shirelang/ │ │ ├── ParsingNormalTest.kt │ │ ├── ParsingRealWorldTest.kt │ │ ├── ShireCompileTest.kt │ │ ├── ShireLifecycleTest.kt │ │ ├── ShirePatternPipelineTest.kt │ │ ├── ShireQueryExpressionTest.kt │ │ ├── compiler/ │ │ │ ├── hobbit/ │ │ │ │ └── execute/ │ │ │ │ ├── CrawlProcessorTest.kt │ │ │ │ ├── JsonPathProcessorTest.kt │ │ │ │ └── ShireShellRunnerTest.kt │ │ │ └── parser/ │ │ │ └── HobbitHoleParserTest.kt │ │ ├── impl/ │ │ │ └── DefaultShireSymbolProvider.kt │ │ ├── regression/ │ │ │ ├── ShireCompileTest.kt │ │ │ └── ShireTokenizerTest.kt │ │ └── run/ │ │ └── ShireConfigurationTest.kt │ ├── resources/ │ │ └── META-INF/ │ │ └── plugin.xml │ └── testData/ │ ├── parser/ │ │ ├── AfterStream.shire │ │ ├── AfterStream.txt │ │ ├── AutoCommand.shire │ │ ├── AutoCommand.txt │ │ ├── AutoRefactor.shire │ │ ├── AutoRefactor.txt │ │ ├── BasicTest.shire │ │ ├── BasicTest.txt │ │ ├── BlockStartOnly.shire │ │ ├── BlockStartOnly.txt │ │ ├── BrowseWeb.shire │ │ ├── BrowseWeb.txt │ │ ├── CommandAndSymbol.shire │ │ ├── CommandAndSymbol.txt │ │ ├── ComplexLangId.shire │ │ ├── ComplexLangId.txt │ │ ├── CustomFunctions.shire │ │ ├── CustomFunctions.txt │ │ ├── EmptyCodeFence.shire │ │ ├── EmptyCodeFence.txt │ │ ├── FrontMatter.shire │ │ ├── FrontMatter.txt │ │ ├── IfExpression.shire │ │ ├── IfExpression.txt │ │ ├── JavaAnnotation.shire │ │ ├── JavaAnnotation.txt │ │ ├── JavaHelloWorld.shire │ │ ├── JavaHelloWorld.txt │ │ ├── MarkdownCompatible.shire │ │ ├── MarkdownCompatible.txt │ │ ├── MultipleFMVariable.shire │ │ ├── MultipleFMVariable.txt │ │ ├── PatternAction.shire │ │ ├── PatternAction.txt │ │ ├── PatternCaseAction.shire │ │ ├── PatternCaseAction.txt │ │ ├── ShireFmObject.shire │ │ ├── ShireFmObject.txt │ │ ├── ShirePsiQueryExpression.shire │ │ ├── ShirePsiQueryExpression.txt │ │ ├── SingleComment.shire │ │ ├── SingleComment.txt │ │ ├── VariableAccess.shire │ │ ├── VariableAccess.txt │ │ ├── WhenCondition.shire │ │ └── WhenCondition.txt │ └── realworld/ │ ├── AfterStreamingOnly.shire │ ├── AfterStreamingOnly.txt │ ├── Autotest.shire │ ├── Autotest.txt │ ├── ContentTee.shire │ ├── ContentTee.txt │ ├── LifeCycle.shire │ ├── LifeCycle.txt │ ├── LoginCommit.shire │ ├── LoginCommit.txt │ ├── OnPaste.shire │ ├── OnPaste.txt │ ├── OutputInVariable.shire │ ├── OutputInVariable.txt │ ├── WhenAfterStreaming.shire │ └── WhenAfterStreaming.txt ├── src/ │ ├── description.html │ ├── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shire/ │ │ │ ├── ShireIdeaIcons.kt │ │ │ ├── ShireMainBundle.kt │ │ │ ├── inline/ │ │ │ │ ├── ShireGutterIconRenderer.kt │ │ │ │ ├── ShireInlineChatPanel.kt │ │ │ │ ├── ShireInlineChatProvider.kt │ │ │ │ └── ShireInlineChatService.kt │ │ │ ├── llm/ │ │ │ │ └── OpenAILikeProvider.kt │ │ │ ├── marketplace/ │ │ │ │ ├── ShireToolWindowFactory.kt │ │ │ │ ├── model/ │ │ │ │ │ └── ShirePackage.kt │ │ │ │ ├── ui/ │ │ │ │ │ ├── IconButtonTableCellEditor.kt │ │ │ │ │ ├── IconButtonTableCellRenderer.kt │ │ │ │ │ ├── MarketplaceView.kt │ │ │ │ │ └── ShireMarketplaceTableView.kt │ │ │ │ └── util/ │ │ │ │ └── ShireDownloader.kt │ │ │ └── settings/ │ │ │ ├── ShireLlmSettingsConfigurable.kt │ │ │ ├── ShireSettingUi.kt │ │ │ └── ShireSettingsState.kt │ │ └── resources/ │ │ ├── META-INF/ │ │ │ ├── docker-contrib.xml │ │ │ ├── json-contrib.xml │ │ │ ├── openrewrite-contrib.xml │ │ │ ├── plugin.xml │ │ │ └── wiremock-contrib.xml │ │ ├── intentionDescriptions/ │ │ │ ├── ShireIntention/ │ │ │ │ ├── after.txt.template │ │ │ │ ├── before.txt.template │ │ │ │ └── description.html │ │ │ └── ShireIntentionHelper/ │ │ │ ├── after.txt.template │ │ │ ├── before.txt.template │ │ │ └── description.html │ │ └── messages/ │ │ └── ShireMainBundle.properties │ └── test/ │ └── testData/ │ └── rename/ │ ├── foo.xml │ └── foo_after.xml └── toolsets/ ├── README.md ├── database/ │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── database/ │ │ ├── DatabaseSchemaAssistant.kt │ │ ├── SQLExecutor.kt │ │ ├── SqlContextBuilder.kt │ │ └── provider/ │ │ ├── DatabaseFunctionProvider.kt │ │ ├── DatabaseToolchainProvider.kt │ │ └── DatabaseVariableProvider.kt │ └── resources/ │ └── com.phodal.shire.database.xml ├── docker/ │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── docker/ │ │ └── DockerContextProvider.kt │ └── resources/ │ └── com.phodal.shire.docker.xml ├── git/ │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── git/ │ │ ├── DiffSimplifier.kt │ │ ├── VcsPrompting.kt │ │ └── provider/ │ │ ├── GitActionLocationEditor.kt │ │ ├── GitDataContext.kt │ │ ├── GitFunctionProvider.kt │ │ ├── GitQLDataProvider.kt │ │ ├── GitRepositoryCommitter.kt │ │ ├── GitRevisionProvider.kt │ │ └── GitToolchainVariableProvider.kt │ └── resources/ │ └── com.phodal.shire.git.xml ├── httpclient/ │ ├── README.md │ └── src/ │ ├── main/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── phodal/ │ │ │ └── shire/ │ │ │ └── httpclient/ │ │ │ ├── HttpClientFileRunService.kt │ │ │ ├── converter/ │ │ │ │ ├── CUrlConverter.kt │ │ │ │ └── RestClientUtil.kt │ │ │ └── handler/ │ │ │ └── CUrlHttpHandler.kt │ │ └── resources/ │ │ └── com.phodal.shire.httpclient.xml │ └── test/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ ├── shire/ │ │ │ └── httpclient/ │ │ │ └── converter/ │ │ │ └── CUrlConverterTest.kt │ │ └── shirecore/ │ │ └── agent/ │ │ └── agenttool/ │ │ └── browse/ │ │ └── BrowseToolTest.kt │ └── resources/ │ └── META-INF/ │ └── plugin.xml ├── mermaid/ │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── mermaid/ │ │ └── provider/ │ │ └── MermaidSketchProvider.kt │ └── resources/ │ └── com.phodal.shire.mermaid.xml ├── mock/ │ ├── README.md │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── mock/ │ │ └── provider/ │ │ ├── WiremockFunction.kt │ │ └── WiremockFunctionProvider.kt │ └── resources/ │ └── com.phodal.shire.mock.xml ├── openrewrite/ │ ├── README.md │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── openrewrite/ │ │ └── OpenRewriteFileRunService.kt │ └── resources/ │ └── com.phodal.shire.openrewrite.xml ├── plantuml/ │ ├── README.md │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── plantuml/ │ │ ├── PlantUmlSketchProvider.kt │ │ └── PlantUmlToolchainProvider.kt │ └── resources/ │ └── com.phodal.shire.plantuml.xml ├── sonarqube/ │ ├── README.md │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── sonarqube/ │ │ ├── SonarLintProvider.kt │ │ └── SonarLintVariableProvider.kt │ └── resources/ │ └── com.phodal.shire.sonarqube.xml ├── terminal/ │ └── src/ │ └── main/ │ ├── kotlin/ │ │ └── com/ │ │ └── phodal/ │ │ └── shire/ │ │ └── terminal/ │ │ ├── ShireTerminalExecutor.kt │ │ ├── TerminalToolchainVariableProvider.kt │ │ └── sketch/ │ │ ├── ShellUtil.kt │ │ └── TerminalLangSketchProvider.kt │ └── resources/ │ └── com.phodal.shire.terminal.xml └── uitest/ └── src/ └── main/ ├── kotlin/ │ └── com/ │ └── phodal/ │ └── shire/ │ └── uitest/ │ └── provider/ │ └── PlaywrightFileRunService.kt └── resources/ └── com.phodal.shire.uitest.xml