Skip to content

feat: multi-platform plugin support (Cursor, Codex, Gemini CLI, VS Code)#26

Merged
giancarloerra merged 2 commits intomainfrom
feat/multi-platform-plugins
Apr 13, 2026
Merged

feat: multi-platform plugin support (Cursor, Codex, Gemini CLI, VS Code)#26
giancarloerra merged 2 commits intomainfrom
feat/multi-platform-plugins

Conversation

@giancarloerra
Copy link
Copy Markdown
Owner

@giancarloerra giancarloerra commented Apr 13, 2026

Summart

Multi-platform plugin support added for SocratiCode, enhancing integration with various AI coding platforms.

Changes

  • Introduced support for Cursor, Codex, Gemini CLI, and VS Code.

  • Updated metadata and configuration files to reflect new plugin capabilities.

  • Enhanced documentation to guide users on installation and usage across platforms.

Type of change

  • Bug fix (non-breaking change that fixes an issue)

  • New feature (non-breaking change that adds functionality)

  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

  • Documentation update

  • Refactoring (no functional changes)

  • Test coverage improvement

Testing

  • Unit tests pass (npm run test:unit)

  • Integration tests pass (npm run test:integration) — if applicable

  • TypeScript compiles cleanly (npx tsc --noEmit)

  • New tests added for new/changed functionality

Checklist

  • My code follows the existing code style and conventions

  • I have added/updated JSDoc comments where appropriate

  • I have updated documentation (README.md / DEVELOPER.md) if needed

  • I have read the Contributing Guide

  • I agree to the Contributor License Agreement

Summary by CodeRabbit

  • New Features

    • Added native plugin manifests and marketplace entry to support SocratiCode across Codex, Cursor, Gemini CLI and MCP hosts.
    • Added MCP server configuration to enable local plugin runtime launch.
  • Documentation

    • Added a GEMINI workflow for standardized codebase exploration and tool guidance.
    • Updated README with platform-specific installation and plugin usage instructions.
  • Documentation

    • Simplified an agent guidance file by removing two frontmatter configuration lines.

@giancarloerra giancarloerra self-assigned this Apr 13, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 13, 2026

📝 Walkthrough

Walkthrough

Adds multiple plugin manifests (CodeX, Cursor, Cursor marketplace, Gemini), MCP server configuration, a GEMINI workflow doc, README plugin-install updates, and removes two frontmatter lines from the codebase-explorer agent file.

Changes

Cohort / File(s) Summary
CodeX & Cursor plugin manifests
.codex-plugin/plugin.json, .cursor-plugin/plugin.json
New plugin manifests added defining socraticode metadata (name, version 1.4.1), author/homepage/repository/license/keywords, skills path, and mcpServers reference.
Cursor marketplace entry
.cursor-plugin/marketplace.json
New marketplace manifest registering the socraticode listing with owner contact and a development-category plugin entry pointing at the local source.
Gemini extension & MCP config
gemini-extension.json, mcp.json
Added Gemini extension metadata (name, version 1.4.1, GEMINI.md context file) and mcp.json entry to launch socraticode via npx -y socraticode.
Documentation
GEMINI.md, README.md
Added GEMINI.md with a stepwise codebase exploration workflow and updated README to include multi-platform native plugin install instructions (Claude Code, Cursor, VS Code Copilot, Codex, Gemini CLI).
Agent frontmatter
agents/codebase-explorer.md
Removed model: sonnet and allowed-tools: Read, Grep, Glob, Bash(git *) from frontmatter; body content unchanged.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

🐇✨ I hopped through manifests, tiny and bright,
Tucked skills and servers, set prompts alight.
Docs stitched the map, installs sung in tune,
From Cursor to Gemini beneath the moon.
A rabbit's nod — the plugin garden blooms. 🌱

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding multi-platform plugin support for four specified platforms (Cursor, Codex, Gemini CLI, VS Code).
Description check ✅ Passed The description follows the template structure with Summary, Changes, and Type of change sections completed. However, Testing checkboxes are entirely unchecked and Checklist items lack completion status, suggesting testing and quality gates may not have been verified.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/multi-platform-plugins

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (1)
README.md (1)

169-186: Consider removing blank lines inside the blockquote for lint compliance.

The extra blank quoted lines trigger markdownlint MD028. Not blocking, but worth cleaning to keep docs CI/lint clean.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 169 - 186, Remove the extra blank lines inside the
blockquote that begins with "**Codex local plugin install**" in README.md to
satisfy markdownlint MD028; collapse the quoted text so the blockquote has no
empty quoted lines between the paragraphs and code blocks, keeping the same
content and formatting but eliminating the blank lines.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.codex-plugin/plugin.json:
- Line 22: Update the Codex plugin manifest's mcpServers entry to point to the
correct config file name: change the current value "./.mcp.json" for the
"mcpServers" key to "mcp.json" so it matches the added file and allows MCP
server resolution to succeed.

In @.cursor-plugin/plugin.json:
- Line 21: The mcpServers entry currently points to "./.mcp.json" but the PR
added "mcp.json", so update the "mcpServers" value in the plugin.json to
reference the actual file name ("mcp.json") instead of "./.mcp.json" so the
Cursor plugin can locate its MCP server definition; look for the "mcpServers"
key in the plugin.json and change its value accordingly.

In `@GEMINI.md`:
- Line 54: The document mixes British and American English for
"visualise/visualize" (e.g., the table entry "Visualise module structure" and
the identifier `codebase_graph_visualize`); choose one variant (preferably match
the `codebase_graph_visualize` identifier or the project's chosen variant) and
update all occurrences in GEMINI.md for consistency—change the visible text
"Visualise module structure" to "Visualize module structure" (or vice versa) and
scan the file for other instances to make them uniform.

In `@README.md`:
- Line 166: The Plugins table entry for "OpenAI Codex" uses a broken fragment
link `#codex-local-plugin-install`; update the link target so it matches an
actual heading anchor in README.md (either change the fragment to the existing
heading's slug or add a matching heading id/title). Locate the table row
containing "OpenAI Codex" and replace `#codex-local-plugin-install` with the
correct anchor for the local plugin install section (or create a heading named
"Codex Local Plugin Install" to preserve the current fragment).

---

Nitpick comments:
In `@README.md`:
- Around line 169-186: Remove the extra blank lines inside the blockquote that
begins with "**Codex local plugin install**" in README.md to satisfy
markdownlint MD028; collapse the quoted text so the blockquote has no empty
quoted lines between the paragraphs and code blocks, keeping the same content
and formatting but eliminating the blank lines.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 9b3ade23-900f-4514-8211-7352cd00dfe6

📥 Commits

Reviewing files that changed from the base of the PR and between 61060d5 and 529d1b2.

📒 Files selected for processing (8)
  • .codex-plugin/plugin.json
  • .cursor-plugin/marketplace.json
  • .cursor-plugin/plugin.json
  • GEMINI.md
  • README.md
  • agents/codebase-explorer.md
  • gemini-extension.json
  • mcp.json
💤 Files with no reviewable changes (1)
  • agents/codebase-explorer.md

Comment thread .codex-plugin/plugin.json
Comment thread .cursor-plugin/plugin.json
Comment thread GEMINI.md Outdated
Comment thread README.md Outdated
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
README.md (1)

156-188: Excellent addition — minor naming polish suggested.

The new Plugins section provides clear, platform-specific installation guidance and resolves the previous broken link issue effectively.

One small inconsistency: Line 166 refers to "Codex local install" while line 170's section header says "Codex local plugin install". Consider using consistent wording in both places (e.g., "Codex local plugin install" in both locations) for easier scanning.

The static analysis tool flags blank lines inside blockquotes (lines 169, 186) per MD028, but these don't affect readability and can be addressed at your discretion.

✨ Optional consistency fix
-| OpenAI Codex | No public plugin directory yet — use the [MCP config](`#quick-start`) or see **Codex local install** below |
+| OpenAI Codex | No public plugin directory yet — use the [MCP config](`#quick-start`) or see **Codex local plugin install** below |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 156 - 188, Update the inconsistent heading and
blockquote formatting in the Plugins section: rename the inline reference string
"Codex local install" to match the heading "Codex local plugin install" (or vice
versa) so both read identically (search for the phrase "Codex local install" and
the heading "Codex local plugin install"), and remove the stray blank lines
inside blockquotes (the quoted paragraphs that start with "> **Codex local
plugin install**:" and "> **All other MCP hosts**") to satisfy MD028 so the
blockquote lines are contiguous.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@README.md`:
- Around line 156-188: Update the inconsistent heading and blockquote formatting
in the Plugins section: rename the inline reference string "Codex local install"
to match the heading "Codex local plugin install" (or vice versa) so both read
identically (search for the phrase "Codex local install" and the heading "Codex
local plugin install"), and remove the stray blank lines inside blockquotes (the
quoted paragraphs that start with "> **Codex local plugin install**:" and ">
**All other MCP hosts**") to satisfy MD028 so the blockquote lines are
contiguous.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: cef1e23a-1c60-4add-a875-34d8a038ec7e

📥 Commits

Reviewing files that changed from the base of the PR and between 529d1b2 and b2333b5.

📒 Files selected for processing (2)
  • GEMINI.md
  • README.md
✅ Files skipped from review due to trivial changes (1)
  • GEMINI.md

@giancarloerra giancarloerra merged commit 648d04e into main Apr 13, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant