Airsc is free for everyone. If it helps you, support it with $2–$20.

Support
PluginCautionAgent workflow & memorySome setup

sub-agents-skills

shinpr · shinpr/sub-agents-skills

A set of Agent Skills for orchestrating sub-agents written in Markdown, allowing tasks to be routed to different AI coding backends like Claude Code or Cursor.

Cross-LLM sub-agent orchestration as an Agent Skills. Route tasks to Codex, Claude Code, Grok, GLM, Kimi, Cursor, Gemini, OpenCode, or Command Code from any compatible tool.

91 stars17License: MITUpdated last month0 opens

Preview

▍

What you can do with it

  • Run specific sub-agents on different LLMs based on their strengths for a given task.
  • Manage agent definitions consistently across multiple AI coding tools.
  • Route implementation tasks to one LLM and review tasks to another for optimized workflow.

Safety check

Caution

Usable, but read the notes first.

  • ●Installer downloads a remote script and pipes it to the shell.install.sh

Automated scan of the repo files. Always review code you run.

From the README

Sub-Agents Skills

English | 简体中文 | Русский | Deutsch | Español

Run task-specific agents on different AI coding backends from a single parent tool.

Write an agent once in Markdown, then choose the backend that runs it. Send implementation, review, investigation, and verification work to different coding tools without duplicating the agent definition.

The skill itself follows the Agent Skills standard; the agents it runs are Markdown files under .agents/.

Quick Start

Requirements: Python 3.9+ and at least one supported backend installed.

1. Install the Skill

Codex (plugin):

codex plugin marketplace add shinpr/sub-agents-skills

Then open the plugin picker, install Runner, and restart Codex:

/plugins

After restart, invoke the skill as $runner:sub-agents.

Claude Code (plugin):

/plugin marketplace add shinpr/sub-agents-skills
/plugin install runner@sub-agents-skills
/reload-plugins

Grok Build (plugin):

grok plugin marketplace add shinpr/sub-agents-skills
grok plugin install runner --trust

Google Antigravity (plugin):

agy plugin install https://github.com/shinpr/sub-agents-skills/tree/main/plugins/runner

Other clients (Cursor CLI, VS Code, etc.):

Use the install script to copy the skill into the client's skill path:

# Cursor
curl -fsSL https://raw.githubusercontent.com/shinpr/sub-agents-skills/main/install.sh | bash -s -- --target ~/.cursor/skills

# VS Code / Copilot (project-scoped)
curl -fsSL https://raw.githubusercontent.com/shinpr/sub-agents-skills/main/install.sh | bash -s -- --target .github/skills

# Gemini CLI
curl -fsSL https://raw.githubusercontent.com/shinpr/sub-agents-skills/main/install.sh | bash -s -- --target ~/.gemini/skills

Or clone manually:

git clone https://github.com/shinpr/sub-agents-skills.git
cd sub-agents-skills
./install.sh --target <client-skill-path>

2. Create Your First Agent

Create a .agents/ folder in your project and add code-reviewer.md:

---
run-agent: codex
permission: read-only
---

# Code Reviewer

Review code for quality and maintainability issues.

## Task
- Find bugs and potential issues
- Suggest improvements
- Check code style consistency

## Done When
- All target files reviewed
- Issues listed with explanations

The run-agent frontmatter specifies which backend executes this agent. See Writing Agents for more on agent design.

3. Run It

Ask your parent AI tool:

Use the code-reviewer agent to review the authentication changes.

The parent tool invokes the agent with the selected backend and returns its result.

Why Use It?

Most AI coding tools provide sub-agents tied to their own models. Claude Code delegates to Claude, and Codex delegates to GPT. Their built-in delegation does not provide a portable way to route a task to another provider's model.

Sub-Agents Skills separates an agent's role from its execution backend. The Markdown file defines what the agent does, while run-agent selects where it runs. Changing the backend does not require rewriting the role, task, or output instructions.

Because the runner is packaged as an Agent Skill, the same .agents/ definitions can be used from different supported parent tools.

Usage Examples

To run an agent, describe the task in your prompt:

Use the code-reviewer agent to check my UserService class.
Use the test-writer agent to create unit tests for the auth module.
Use the doc-writer agent to add JSDoc comments to all public methods.

Mixing Backends in One Project

Agents using different backends can live side by side:

.agents/
├── test-writer.md         # run-agent: codex
├── code-reviewer.md       # run-agent: claude
├── kimi-implementer.md    # run-agent: kimi
└── alternate-reviewer.md  # run-agent: grok
Use the code-reviewer and alternate-reviewer agents in parallel, then send the agreed changes to kimi-implementer.

Name both the agent and the task in the request; an agent name alone does not provide a task.

Supported Backends

Set run-agent in each agent definition. The value selects a backend; some backends share an underlying executable.

run-agentBackendExecuted CLI
codexCodexcodex
claudeClaude Codeclaude
cursor-agentCursor CLIcursor-agent
glmGLM (Z.ai)claude with the Z.ai endpoint
kimiKimiclaude with the Kimi endpoint
grokGrok Buildgrok
antigravityGoogle Antigravityagy
geminiGemini CLI (compatibility)gemini
opencodeOpenCodeopencode
command-codeCommand Codecommand-code

Install only the CLIs you plan to use. For Google models, prefer Antigravity CLI 1.1.12 or later; existing Gemini CLI configurations remain supported.

Writing Agents

Agent definitions are .md or .txt files under .agents/. For normal use, include run-agent in the YAML frontmatter and keep the task instructions in the body.

---
run-agent: claude
model: opus
effort: high
permission: safe-edit
---

# Agent Name

One-sentence purpose.

## Task
- Action 1
- Action 2

## Done When
- Criterion 1
- Criterion 2

Frontmatter reference

Frontmatter Options

FieldValuesDescription
run-agentcodex, claude, cursor-agent, glm, kimi, grok, antigravity, gemini, opencode, command-codeWhich backend executes this agent
modelBackend-specific model name (optional)Model passed to the selected CLI; omit to use its configured default
effortBackend/model-specific value (optional)Reasoning-effort override; omit to use the backend/model defau
View source on GitHub