{"id":25559003,"url":"https://github.com/mr3zee/kotlin-plugins","last_synced_at":"2026-01-16T11:38:08.639Z","repository":{"id":275162897,"uuid":"866746141","full_name":"Mr3zee/kotlin-plugins","owner":"Mr3zee","description":"IDE Integration for Kotlin FIR Compiler Plugins","archived":false,"fork":false,"pushed_at":"2026-01-13T16:31:20.000Z","size":4965,"stargazers_count":9,"open_issues_count":9,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-13T18:18:50.500Z","etag":null,"topics":["compiler-plugin","fir","ide-plugin","intellij-plugin","kotlin"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mr3zee.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-02T19:51:55.000Z","updated_at":"2026-01-13T16:02:30.000Z","dependencies_parsed_at":"2025-02-21T21:40:06.632Z","dependency_job_id":"2316d91d-6e2e-4687-b234-f55cc1885a1e","html_url":"https://github.com/Mr3zee/kotlin-plugins","commit_stats":null,"previous_names":["mr3zee/intellij-compiler-plugin-swap","mr3zee/kotlin-plugins"],"tags_count":6,"template":false,"template_full_name":"JetBrains/intellij-platform-plugin-template","purl":"pkg:github/Mr3zee/kotlin-plugins","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr3zee%2Fkotlin-plugins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr3zee%2Fkotlin-plugins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr3zee%2Fkotlin-plugins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr3zee%2Fkotlin-plugins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mr3zee","download_url":"https://codeload.github.com/Mr3zee/kotlin-plugins/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr3zee%2Fkotlin-plugins/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compiler-plugin","fir","ide-plugin","intellij-plugin","kotlin"],"created_at":"2025-02-20T16:26:32.641Z","updated_at":"2026-01-16T11:38:08.631Z","avatar_url":"https://github.com/Mr3zee.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kotlin External FIR Support\n\n![Build](https://github.com/Mr3zee/kotlin-plugins/workflows/Build/badge.svg)\n[![Version](https://img.shields.io/jetbrains/plugin/v/26480-kotlin-external-fir-support.svg)](https://plugins.jetbrains.com/plugin/26480-kotlin-external-fir-support)\n[![Downloads](https://img.shields.io/jetbrains/plugin/d/26480-kotlin-external-fir-support.svg)](https://plugins.jetbrains.com/plugin/26480-kotlin-external-fir-support)\n\n\u003c!-- Plugin description --\u003e\n\nRun Kotlin compiler plugins in the IDE.\n\n## TLDR\n- Automatic Plugin Resolution and Safe Loading\n- Exception Analysis\n- Diagnostics \u0026 Management UI\n- Manual Control\n- **No Additional Configuration Required**\n\n## Guides\n\nCheck out our advanced usage guide: [GUIDE.md](https://github.com/Mr3zee/kotlin-plugins/blob/main/GUIDE.md)\n\nIf you are a compiler plugin developer, check out our [plugin development guide](https://github.com/Mr3zee/kotlin-plugins/blob/main/PLUGIN_AUTHORS.md).\n\n## Use Any Kotlin Compiler Plugin Inside IDE\n\nBy default, the IDE cannot safely run external Kotlin compiler plugins \nthat are not bundled with the compiler itself (like `kotlinx-rpc`) \nbecause their version often conflicts with the IDE's internal Kotlin\ncompiler. This incompatibility can lead to exceptions that freeze your UI, syntax\nhighlighting, and code analysis.\n\n**This plugin enables you to use these compiler plugins safely in your IDE**\n\n1. **It enables plugins:** KEFS intercepts requests for plugins and automatically finds, downloads, and\n   loads an IDE-compatible version in the background.\n2. **It improves stability:** Even if a compatible plugin breaks and throws an exception, KEFS detects it,\n   notifies you via a banner, and provides actions (like disabling the plugin) to restore your IDE's functionality\n   immediately.\n\nThis solves the core instability problem and allows you to benefit from your compiler\nplugins' IDE-specific features, like custom diagnostics, all within the editor.\n\n**No Additional Configuration Required!**.\n\n## Core Features\n\n### 1. Automatic Plugin Resolution\n\nKEFS automatically detects the compiler plugins used in your project. \nIt then finds and downloads a compatible version from a\nconfigurable list of Maven repositories (including local ones).\n\n* **Flexible Version Matching:** Configure how the plugin finds compatible versions with strategies like\n  `Exact`, `Same Major`, or `Latest`.\n* **Background Caching:** All downloads and resolutions happen in the background to never block your\n  UI. Resolved plugins are cached locally for instant access.\n* **Local Development Hot-Reload:** Actively watches local Maven repositories for\n  changes. When you re-publish a new version of your plugin locally, KEFS detects the file change\n  and reloads it in the IDE automatically.\n\n### 2. Exception Analysis\n\nCompiler plugins should *never* throw exceptions, as this can freeze IDE analysis.\nKEFS actively monitors the IDE for exceptions thrown by loaded compiler plugins.\n\nWhen a failure is detected, KEFS provides immediate, actionable solutions:\n\n* **Editor Banner:** A non-intrusive banner appears at the top of your editor, identifying the failing\n  plugin.\n* **Disable Plugin:** Instantly disable the failing plugin from the banner to restore your IDE's\n  highlighting and analysis.\n* **Auto-Disable:** A \"set it and forget it\" option that will automatically disable any plugin that throws\n  an exception, notifying you with a small pop-up.\n\n### 3. Diagnostics \u0026 Management UI\n\nKEFS provides a full suite of UI tools to give you complete visibility and control over your compiler plugins.\n\n* **\"Kotlin Plugins Diagnostics\" Tool Window:** A dedicated window that shows you every detected plugin and\n  its status.\n    * See which plugins were successfully loaded, which failed (e.g., `Failed To Fetch`, `Not Found`), and\n      which haven't been requested yet.\n    * Inspect detailed error messages for fetch/resolution failures.\n    * View detailed reports for runtime exceptions, including stack traces, to help debug plugin\n      failures.\n* **Settings Page (\u003ckbd\u003eTools\u003c/kbd\u003e \u003e \u003ckbd\u003eKotlin Plugins\u003c/kbd\u003e):** A new settings panel to manage all plugin\n  behavior.\n    * **Artifacts:** Configure your plugin \"bundles\" (e.g. if a plugin consists of multiple jars), set\n      their version-matching strategy, and assign them to specific repositories, or use the default.\n    * **Repositories:** Add, edit, and remove remote (URL) or local (file path) Maven\n      repositories.\n    * **General:** Toggle the Exception Analyzer on/off and manage the \"auto-disable\" feature.\n\n### 4. Manual Control\n\nQuickly manage the plugin's state from the `Find Action` (Ctrl/Cmd+Shift+A) menu:\n\n* **Update Plugins:** Forces a check for new plugin versions in your repositories.\n* **Refresh Plugins:** Clears the in-memory state and re-runs resolution.\n* **Clear Caches:** Deletes all downloaded plugin jars from the disk cache.\n\n## Support\n\nIf you encounter any issues, [report](https://github.com/Mr3zee/kotlin-plugins/issues) them on GitHub.\n\nIf any exceptions are thrown, you can use the built-in \u003ckbd\u003eReport to the 3rd Party\u003c/kbd\u003e action to send a bug report to us.\n\n\u003c!-- Plugin description end --\u003e\n\n## Installation\n\n- Using the IDE built-in plugin system:\n  \n  \u003ckbd\u003eSettings/Preferences\u003c/kbd\u003e \u003e \u003ckbd\u003ePlugins\u003c/kbd\u003e \u003e \u003ckbd\u003eMarketplace\u003c/kbd\u003e \u003e \u003ckbd\u003eSearch for \"Kotlin External FIR Support\"\u003c/kbd\u003e \u003e\n  \u003ckbd\u003eInstall\u003c/kbd\u003e\n  \n- Using JetBrains Marketplace:\n\n  Go to [JetBrains Marketplace](https://plugins.jetbrains.com/plugin/26480-kotlin-external-fir-support) and install it by clicking the \u003ckbd\u003eInstall to ...\u003c/kbd\u003e button in case your IDE is running.\n\n  You can also download the [latest release](https://plugins.jetbrains.com/plugin/26480-kotlin-external-fir-support/versions) from JetBrains Marketplace and install it manually using\n  \u003ckbd\u003eSettings/Preferences\u003c/kbd\u003e \u003e \u003ckbd\u003ePlugins\u003c/kbd\u003e \u003e \u003ckbd\u003e⚙️\u003c/kbd\u003e \u003e \u003ckbd\u003eInstall plugin from disk...\u003c/kbd\u003e\n\n- Manually:\n\n  Download the [latest release](https://github.com/Mr3zee/kotlin-plugins/releases/latest) and install it manually using\n  \u003ckbd\u003eSettings/Preferences\u003c/kbd\u003e \u003e \u003ckbd\u003ePlugins\u003c/kbd\u003e \u003e \u003ckbd\u003e⚙️\u003c/kbd\u003e \u003e \u003ckbd\u003eInstall plugin from disk...\u003c/kbd\u003e\n\n\n---\nPlugin based on the [IntelliJ Platform Plugin Template][template].\n\n[template]: https://github.com/JetBrains/intellij-platform-plugin-template\n[docs:plugin-description]: https://plugins.jetbrains.com/docs/intellij/plugin-user-experience.html#plugin-description-and-presentation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr3zee%2Fkotlin-plugins","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmr3zee%2Fkotlin-plugins","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr3zee%2Fkotlin-plugins/lists"}