From agent-team
Creates or updates role-specific skill packages (SKILL.md, role.yaml, system.md) for frontend/backend/product roles via field generation, skill selection with find-skills, and CLI execution to skills/ or team directories.
npx claudepluginhub jsonlee12138/agent-team --plugin agent-teamThis skill uses the workspace's default tool permissions.
Generate a role skill package in a fixed contract:
Guides step-by-step creation of new jaan-to skills with duplicate detection, template seeding, best practices checks, and git PR automation.
Creates, synthesizes, and iteratively improves agent skills per Agent Skills spec. Use for skill creation, source synthesis, example-based improvement, updates, and registration/validation.
Guides creation of agent skills via 6-step process: briefing requirements with targeted questions, loading references, planning structure, generating content, applying best practices, and presenting.
Share bugs, ideas, or general feedback.
Generate a role skill package in a fixed contract:
<target>/SKILL.md<target>/references/role.yaml<target>/system.mdTarget directory options:
skills/<role-name>/ — for open-source publishing (default).agent-team/teams/<role-name>/ — for team use with agent-team<custom-path>/<role-name>/ — for custom local output paths/brainstorming on rejection.find-skills recommendations, user selection, manual additions.agent-team role create with approved parameters.role-name must be kebab-case. The current CLI requires it as a positional argument.descriptionsystem goalin-scope (comma-separated)out-of-scope (comma-separated)/brainstorming skill for structured refinement.skills, .agent-team/teams, or a custom path).skills or .agent-team/teams, note that the CLI checks matching global roles in ~/.agents/roles/ unless --force is passed. If matches are found, the CLI prompts whether to continue creating the local role.find-skills to get recommendation candidates.jsonlee12138/prompts@design-patterns-principles).design-patterns-principles) when no matching remote skill is found and the skill exists only locally.skills: [] in references/role.yaml; otherwise persist skills[{name, description}] using the preferred identifier rule above.If find-skills is unavailable or returns empty, skip recommendations and ask for manual additions only. In that fallback path, still prefer a full remote identifier if the user already provides one; otherwise use a local short name only for local-only skills.
| Flag | Type | Required | Default | Description |
|---|---|---|---|---|
<role-name> | arg | yes | — | Role name (kebab-case) |
--description | string | yes | — | Role description |
--system-goal | string | yes | — | Primary objective for system.md |
--in-scope | string[] | no | (from description) | In-scope items (repeatable, comma-separated) |
--out-of-scope | string[] | no | fallback text | Out-of-scope items (repeatable, comma-separated) |
--skills | string | no | "" | Final selected skills (comma-separated) |
--recommended-skills | string | no | "" | Recommended skills from find-skills |
--add-skills | string | no | "" | Skills to add on top of selection |
--remove-skills | string | no | "" | Skills to remove from candidate list |
--manual-skills | string | no | "" | Manual fallback when recommendations unavailable |
--target-dir | string | no | skills | Target: skills, .agent-team/teams, or custom path |
--overwrite | string | no | ask | Overwrite mode: ask/yes/no |
--repo-root | string | no | . | Repository root path |
--force | bool | no | false | Skip global duplicate check |
Skills resolution priority: --skills > --recommended-skills > --manual-skills, then --add-skills appended, --remove-skills excluded.
For open-source publishing (default):
agent-team role create frontend-dev \
--description "Frontend role for UI implementation" \
--system-goal "Ship accessible and maintainable UI work" \
--in-scope "Build components,Improve accessibility" \
--out-of-scope "Database migrations,Backend API ownership" \
--skills "ui-ux-pro-max,better-icons"
For team use (agent-team integration):
agent-team role create frontend-dev \
--target-dir .agent-team/teams \
--description "Frontend role for UI implementation" \
--system-goal "Ship accessible and maintainable UI work" \
--in-scope "Build components,Improve accessibility" \
--out-of-scope "Database migrations,Backend API ownership" \
--skills "ui-ux-pro-max,better-icons"
Empty skills example:
agent-team role create product-manager \
--description "Product role for roadmap and PRD work" \
--system-goal "Define clear product requirements and priorities"
Verify three files against actual template structure:
SKILL.md — contains the role name, generated description frontmatter, and links to references/role.yaml and system.md.references/role.yaml — must contain:
name — role namedescription — role descriptionsystem_prompt_file: system.mdscope.in_scope — list of in-scope itemsscope.out_of_scope — list of out-of-scope itemsconstraints.single_role_focus: trueskills — selected skills as objects with name and description (or empty [])system.md — contains system goal and operating constraints.If any file is missing or contains unexpected content relative to the current templates, report the discrepancy and offer to regenerate.
--overwrite flag (ask/yes/no).SKILL.md, references/role.yaml, system.md); other files in the role directory are preserved.role.yaml is removed if present after generation.Generated roles should follow this behavior at runtime:
references/role.yaml, it should invoke find-skills to search for a matching skill.references/role.yaml for future sessions by regenerating the role.find-skills is unavailable or returns no match, the role should notify the user and proceed with best-effort execution.