create-issue
Create a comprehensive, well-structured GitHub issue with embedded agent instructions for autonomous PR lifecycle management.
Interactive, Claude-guided setup for metaswarm in your project. Detects your stack, asks targeted questions, and customizes everything automatically.
$ npx -y skills add dsifry/metaswarm --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
/metaswarm-setupContext preview
What this command does when you run it.
Interactive, Claude-guided setup for metaswarm in your project. Detects your stack, asks targeted questions, and customizes everything automatically.
Interactive, Claude-guided setup for metaswarm in your project. Detects your stack, asks targeted questions, and customizes everything automatically.
/metaswarm-setup
---
Before anything else, verify that metaswarm components are installed.
Use the Glob tool to check if `.claude/plugins/metaswarm/` exists:
Glob: .claude/plugins/metaswarm/**/*
npx metaswarm install
Wait for the command to complete. If it fails, tell the user to check their Node.js installation and try `npm install -g metaswarm` manually.
Use the Glob tool to check if `.metaswarm/project-profile.json` exists.
---
You MUST detect all of the following automatically by scanning the project directory. Use the Glob and Read tools — do NOT ask the user for any of this information. Detect everything silently, then present the results.
Check for these marker files using Glob at the project root:
| Marker File | Language | |---|---| | `package.json` | Node.js / JavaScript | | `tsconfig.json` | TypeScript (refines Node.js to TypeScript) | | `pyproject.toml` OR `setup.py` OR `requirements.txt` | Python | | `go.mod` | Go | | `Cargo.toml` | Rust | | `pom.xml` OR `build.gradle` OR `build.gradle.kts` | Java | | `Gemfile` | Ruby |
If multiple languages are detected, note all of them but use the primary one (the one with the most infrastructure) for command generation.
If `tsconfig.json` exists alongside `package.json`, the language is "TypeScript" (not just "Node.js").
If `package.json` exists, Read it and check `dependencies` and `devDependencies` for:
| Dependency | Framework | |---|---| | `next` | Next.js | | `nuxt` OR `nuxt3` | Nuxt | | `@angular/core` | Angular | | `svelte` OR `@sveltejs/kit` | SvelteKit | | `react` (without next/nuxt) | React | | `vue` (without nuxt) | Vue | | `express` | Express | | `fastify` | Fastify | | `hono` | Hono | | `@nestjs/core` | NestJS |
If `pyproject.toml` or `requirements.txt` exists, check for:
| Dependency | Framework | |---|---| | `fastapi` | FastAPI | | `django` | Django | | `flask` | Flask |
If `go.mod` exists, Read it and check for:
| Module | Framework | |---|---| | `github.com/gin-gonic/gin` | Gin | | `github.com/labstack/echo` | Echo | | `github.com/gofiber/fiber` | Fiber |
If no framework is detected, set framework to `null`.
If the language is Node.js or TypeScript, check for lock files:
| Lock File | Package Manager | |---|---| | `pnpm-lock.yaml` | pnpm | | `yarn.lock` | yarn | | `bun.lockb` | bun | | `package-lock.json` | npm |
If no lock file is found, default to `npm`.
For non-Node.js languages, set package_manager to `null`.
Check in this order (first match wins per ecosystem):
**Node.js / TypeScript:** 1. Glob for `vitest.config.*` — if found, test runner is `vitest` 2. Read `package.json` → if `vitest` in `devDependencies`, test runner is `vitest` 3. Glob for `jest.config.*` — if found, test runner is `jest` 4. Read `package.json` → if `jest` in `devDependencies`, test runner is `jest` 5. Read `package.json` → if `mocha` in `devDependencies`, test runner is `mocha`
**Python:** 1. Read `pyproject.toml` → if `[tool.pytest]` section exists, test runner is `pytest` 2. Check Python dependencies for `pytest` → test runner is `pytest` 3. Default: `pytest` (standard for Python)
**Go:**
**Rust:**
**Java:**
| Marker | Linter | |---|---| | `.eslintrc*` OR `eslint.config.*` files exist, OR `eslint` in devDependencies | eslint | | `biome.json` OR `@biomejs/biome` in devDependencies | biome | | `[tool.ruff]` section in `pyproject.toml` OR `ruff.toml` exists | ruff | | `.golangci.yml` OR `.golangci.yaml` exists | golangci-lint | | `clippy` section in Cargo.toml or `.clippy.toml` exists | clippy |
| Marker | Formatter | |---|---| | `.prettierrc*` files exist OR `prettier` in devDependencies | prettier | | `biome.json` exists (biome also formats) | biome | | `black` in Python dependencies | black | | `[tool.ruff.format]` section in `pyproject.toml` | ruff format | | `rustfmt.toml` OR `.rustfmt.toml` exists | rustfmt |
Note: If biome is detected as both linter and formatter, report it once as "Biome (lint + format)".
| Marker | Type Checker | |---|---| | `tsconfig.json` exists | tsc | | `mypy` in Python deps OR `[tool.mypy]` in `pyproject.toml` | mypy | | `pyright` in Python deps OR `pyrightconfig.json` exists | pyright |
For Go (`go vet`) and Rust (`cargo check`), type checking is built-in — note this but don't list as a separate tool.
| Marker | CI System | |---|---| | `.github/workflows/` directory exists (with .yml files inside) | GitHub Actions | | `.gitlab-ci.yml` exists | GitLab CI
A self-improving multi-agent orchestration framework for Claude Code, Gemini CLI, and Codex CLI.
Create a comprehensive, well-structured GitHub issue with embedded agent instructions for autonomous PR lifecycle management.
Check the status of external AI tools (Codex CLI, Gemini CLI) and their configuration.
Handle review comments on pull requests with appropriate responses and resolutions.
Analyze the session and write a self-contained handoff document so a fresh agent can resume the work — outputs a single "Read…
Monitor a PR through to merge - handles CI failures, reviews, and thread resolution
Load relevant knowledge base facts into context before starting work