subagent-driven-development
OBobra/superpowers298k2,631 new stars in the last 7 days
Reviews and improves another DeepCode skill's SKILL.md description field, and guides Agent Skill installation into user or project .agents/skills roots. Use when the user asks to digest a skill, install an Agent Skill, install a skill to user/project scope, or says "消化技能" or "安装 agent skill".
Use this skill for two related tasks:
description field of another DeepCode skill..agents/skills root.Whenever user input is needed, call the AskUserQuestion tool. Do not ask follow-up questions as plain assistant text. This includes missing skill names or paths, install scope, language preference, duplicate matches, malformed frontmatter decisions, and whether to apply a recommended rewrite.
First classify the request:
Identify the target skill from the user's request.
If the user did not provide a skill name, use AskUserQuestion to ask for one.
Locate the skill by running the bundled Node script from this skill directory:
node ~/.deepcode/skills/skill-digester/scripts/find-skill.js "<skill-name-or-path>" "<project-root>"
If this skill is loaded from a project-level or different user-level path, use the scripts/find-skill.js file next to this SKILL.md instead.
The script searches the same roots Deep Code CLI scans, in priority order:
./.deepcode/skills/<folder>/SKILL.md./.agents/skills/<folder>/SKILL.md~/.deepcode/skills/<folder>/SKILL.md~/.agents/skills/<folder>/SKILL.mdTreat ./ as the current Deep Code project root only; do not scan parent directories unless the running project root is changed.
The script resolves each candidate's skill name the way Deep Code does: use the trimmed frontmatter name when present, otherwise use the folder name with underscores converted to hyphens.
Match the user's input against the resolved skill name first. If needed, also consider the folder name or an explicit path the user provided.
Treat the matched skill's path as the source SKILL.md to review.
Treat the matched skill's digestTarget.path as the only output SKILL.md path to create or edit.
digestTarget.path always points to the same scope's native Deep Code root:
./.deepcode/skills or ./.agents/skills digest to ./.deepcode/skills/<folder>/SKILL.md.~/.deepcode/skills or ~/.agents/skills digest to ~/.deepcode/skills/<folder>/SKILL.md.If the script returns one active match, use its path for reading and digestTarget.path for writing.
If the script returns active and shadowed matches, present each source path and digest target path, then use AskUserQuestion before using a shadowed source.
If the script returns no match, state that the skill was not found in Deep Code's scanned skill roots and use AskUserQuestion to ask whether the user wants to try another name.
Infer the user's preferred language before reviewing.
消化pdf技能, infer Chinese.AskUserQuestion in the inferred language. For Chinese, ask: 请选择您偏好的语言。English as a fallback. The UI provides an Other option, so the user can type a different language.description field.Read the source SKILL.md.
description field if the user approves a rewrite.AskUserQuestion before making structural repairs.Review the current description field against the Agent Skills specification.
SKILL.md body. Flag mismatches, missing capabilities, overbroad activation language, vague wording, or important trigger keywords that are absent.Present the review and recommendation.
AskUserQuestion to ask the user to choose one of three actions in the preferred language:
Apply the change only after explicit approval.
digestTarget.path; never write the digested result to .agents/skills.digestTarget.sameAsSource is true, update only the description field in that existing native SKILL.md.digestTarget.sameAsSource is false and digestTarget.exists is false, create the native target skill directory by copying the source skill directory first, then update only the target SKILL.md description. This preserves bundled scripts, references, and assets.digestTarget.sameAsSource is false and digestTarget.exists is true, update only the description field in the existing native target SKILL.md; do not overwrite its body or bundled files unless the user explicitly asks.name and any other frontmatter fields unchanged in the file being written.Use this workflow when the user asks to install an Agent Skill. Installation always writes to .agents/skills, not .deepcode/skills.
Identify the source skill directory.
~/... relative to the user's home directory../... relative to the current project root.SKILL.md path means its parent directory is the source skill directory.scripts/find-skill.js using the same command and match rules as the digest workflow.AskUserQuestion to ask for the source skill name or path.SKILL.md. If it does not, report that the path is not an Agent Skill and ask for another source only if the user still wants to install.Determine the installed skill folder name.
SKILL.md frontmatter.name when present.Ask exactly one installation scope question.
AskUserQuestion to ask whether to install the skill at user level or project level.~/.agents/skills/<skill-name>/./.agents/skills/<skill-name>/Copy the complete skill directory.
~/.agents/skills/<skill-name>/../.agents/skills/<skill-name>/.SKILL.md, references/, scripts/, templates/, examples, assets, and other support files..agents/skills parent directory if needed.Report the result.
Use one question at a time unless two decisions are tightly coupled. Each question must include options; rely on the UI's Other option for free-form input.
Examples:
{
"questions": [
{
"question": "请选择您偏好的语言。",
"options": [
{ "label": "中文", "description": "后续询问和推荐描述都使用中文。" },
{ "label": "English", "description": "Use English for follow-up questions and the recommended description." }
]
}
]
}
{
"questions": [
{
"question": "How should I proceed with this description recommendation?",
"options": [
{
"label": "Apply change",
"description": "Update only the description field in the native digest output SKILL.md."
},
{ "label": "Abandon change", "description": "Leave the file unchanged." },
{ "label": "Discuss wording", "description": "Continue refining the proposed description before editing." }
]
}
]
}
{
"questions": [
{
"question": "Where should I install this Agent Skill?",
"options": [
{ "label": "User-level", "description": "Install to ~/.agents/skills so it is available across projects." },
{ "label": "Project-level", "description": "Install to ./.agents/skills so it is available in this project." }
]
}
]
}
A strong description is short, concrete, and activation-oriented. Prefer this pattern:
<What the skill does>. Use when <task types, file types, tools, domains, or user phrases that should trigger it>.
Avoid descriptions that are only generic labels, marketing copy, or internal implementation notes.
.agents/skills; .agents/skills is only a source root for digestion..deepcode/skills; installation writes only to .agents/skills.OBobra/superpowers298k2,631 new stars in the last 7 days
MAmattpocock/skills288k10,178 new stars in the last 7 days
MAmattpocock/skills288k10,178 new stars in the last 7 days
MAmattpocock/skills288k10,178 new stars in the last 7 days
AFaffaan-m/ECC278k4,046 new stars in the last 7 days
AFaffaan-m/ECC278k4,046 new stars in the last 7 days