Skip to content

Add installable GenSwarms skills#73

Open
albert-mr wants to merge 1 commit into
genlayerlabs:mainfrom
albert-mr:installable-genswarms-skill
Open

Add installable GenSwarms skills#73
albert-mr wants to merge 1 commit into
genlayerlabs:mainfrom
albert-mr:installable-genswarms-skill

Conversation

@albert-mr

@albert-mr albert-mr commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Adds Claude Code and Codex plugin metadata so GenSwarms skills can be installed from marketplace entries. Bundles use and contribution skills with hosted documentation links so installed agents do not depend on a local GenSwarms checkout. Updates README and blog setup instructions for the plugin install flow. Also refreshes build help text to match the current image allowlist: base, web, code, data, full, python, node, and devops. Validated with plugin manifest checks, skill frontmatter checks, Codex plugin validation, Claude plugin validation, mix format check, and git diff whitespace checks.

Summary by CodeRabbit

  • New Features

    • Added installable GenSwarms plugin listings for Claude Code and Codex.
    • Added packaged skills for using GenSwarms and contributing to the codebase.
  • Documentation

    • Expanded the README with coding-agent setup and installation steps.
    • Updated setup and blog guidance to favor plugin-based installation.
    • Refreshed skill guides and command references with current links and usage details.
  • Bug Fixes

    • Aligned build task documentation with the supported image set and command syntax.

@coderabbitai

coderabbitai Bot commented Jul 4, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds Claude Code and Codex plugin marketplace manifests, packages a new genswarms plugin with bundled skill documentation, and updates existing skill docs, README, a blog post, and mix task docs to reference hosted documentation and plugin installation instead of local file paths.

Changes

Plugin marketplace and packaging

Layer / File(s) Summary
Marketplace manifests
.agents/plugins/marketplace.json, .claude-plugin/marketplace.json
Registers a genswarms marketplace entry with local plugin path, install/auth policy, category, and display name for both Claude and Codex ecosystems.
Plugin package manifests
plugins/genswarms/.claude-plugin/plugin.json, plugins/genswarms/.codex-plugin/plugin.json
Defines plugin identity, version, author, capabilities, default prompts, and skills path for both plugin formats.
New bundled skill documentation
plugins/genswarms/skills/genswarms-contribute/SKILL.md, plugins/genswarms/skills/genswarms-use/SKILL.md
Adds full guides covering architecture, backend/object extension, messaging, CLI/REST/WebSocket usage, isolation modes, and operational gotchas.

Estimated code review effort: 2 (Simple) | ~15 minutes

Existing docs and skill link updates

Layer / File(s) Summary
Existing skill guide link updates
.claude/skills/genswarms-contribute/SKILL.md, .claude/skills/genswarms-use/SKILL.md
Replaces local docs/*.md references with hosted documentation links and revises build/gotchas wording (e.g., eight named images).
README, blog, and build task documentation
README.md, docs/blog/posts/2026-06-06-set-up-a-genswarm-with-your-agent.md, lib/mix/tasks/genswarms/build.ex
Adds a "Coding-agent skills" README section, updates blog setup instructions and reference URL, and corrects mix genswarms build usage/examples and image list.

Estimated code review effort: 1 (Trivial) | ~10 minutes

Estimated code review effort

Estimated code review effort: 2 (Simple) | ~15 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding installable GenSwarms skills.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@albert-mr albert-mr marked this pull request as ready for review July 4, 2026 22:22

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@lib/mix/tasks/genswarms/build.ex`:
- Around line 32-35: Update the usage example in the task docs for genswarms
build so the `--push` example makes the registry requirement explicit, since
`push_image/2` only uploads when `DOCKER_REGISTRY` is set. Adjust the example
near `mix genswarms build base --push` to mention that a registry must be
configured, and keep the change limited to the help text/documentation around
the build command.

In `@plugins/genswarms/skills/genswarms-use/SKILL.md`:
- Around line 38-48: Add the missing language tag to the fenced CLI example
block in SKILL.md by updating the code fence around the genswarms commands to
use bash. Keep the block contents unchanged and ensure the markdown example is
identified as a bash snippet so markdownlint passes cleanly.
🪄 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: 788602dd-4a5d-4d8c-9301-852a084bfc37

📥 Commits

Reviewing files that changed from the base of the PR and between 197bd59 and 2137098.

⛔ Files ignored due to path filters (1)
  • plugins/genswarms/assets/logo.svg is excluded by !**/*.svg
📒 Files selected for processing (11)
  • .agents/plugins/marketplace.json
  • .claude-plugin/marketplace.json
  • .claude/skills/genswarms-contribute/SKILL.md
  • .claude/skills/genswarms-use/SKILL.md
  • README.md
  • docs/blog/posts/2026-06-06-set-up-a-genswarm-with-your-agent.md
  • lib/mix/tasks/genswarms/build.ex
  • plugins/genswarms/.claude-plugin/plugin.json
  • plugins/genswarms/.codex-plugin/plugin.json
  • plugins/genswarms/skills/genswarms-contribute/SKILL.md
  • plugins/genswarms/skills/genswarms-use/SKILL.md

Comment on lines +32 to +35
mix genswarms build base # Build base image
mix genswarms build --all # Build all images
mix genswarms build base --push # Build and push
mix genswarms build base --tag v1.0 # Custom tag

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Mention the registry prerequisite in the push example.

push_image/2 only uploads when DOCKER_REGISTRY is set, so this example currently reads like --push always publishes an image.

♻️ Proposed fix
-      mix genswarms build base --push       # Build and push
+      mix genswarms build base --push       # Build and push (requires DOCKER_REGISTRY)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
mix genswarms build base # Build base image
mix genswarms build --all # Build all images
mix genswarms build base --push # Build and push
mix genswarms build base --tag v1.0 # Custom tag
mix genswarms build base # Build base image
mix genswarms build --all # Build all images
mix genswarms build base --push # Build and push (requires DOCKER_REGISTRY)
mix genswarms build base --tag v1.0 # Custom tag
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@lib/mix/tasks/genswarms/build.ex` around lines 32 - 35, Update the usage
example in the task docs for genswarms build so the `--push` example makes the
registry requirement explicit, since `push_image/2` only uploads when
`DOCKER_REGISTRY` is set. Adjust the example near `mix genswarms build base
--push` to mention that a registry must be configured, and keep the change
limited to the help text/documentation around the build command.

Comment on lines +38 to +48
```
genswarms start <config> start a swarm as a daemon
genswarms status [name] lifecycle + agent state
genswarms task <name> … send a task into the swarm
genswarms msg <name> … send a message to an agent
genswarms logs / events stream logs / the event log
genswarms scale <name> … grow/shrink an agent group live
genswarms overlay / snapshot inspect/mutate the running swarm's IR
genswarms stop | restart lifecycle
genswarms list-skills | build | config | check | init | dashboard(up)/down | env
```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Add a language tag to the CLI example block.

The fenced command block at Line 38 is missing a language tag, which trips markdownlint. Mark it as bash so the docs validate cleanly.

♻️ Proposed fix
-```
+```bash
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
```
genswarms start <config> start a swarm as a daemon
genswarms status [name] lifecycle + agent state
genswarms task <name> … send a task into the swarm
genswarms msg <name> … send a message to an agent
genswarms logs / events stream logs / the event log
genswarms scale <name> … grow/shrink an agent group live
genswarms overlay / snapshot inspect/mutate the running swarm's IR
genswarms stop | restart lifecycle
genswarms list-skills | build | config | check | init | dashboard(up)/down | env
```
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 38-38: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/genswarms/skills/genswarms-use/SKILL.md` around lines 38 - 48, Add
the missing language tag to the fenced CLI example block in SKILL.md by updating
the code fence around the genswarms commands to use bash. Keep the block
contents unchanged and ensure the markdown example is identified as a bash
snippet so markdownlint passes cleanly.

Source: Linters/SAST tools

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