协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
extend-repo-skill【开发与工程】Extends an existing repository-specific Agent Skill with new capabilities, deeper coverage, troubleshooting, scripts, and usability tests. Use when the user asks to expand, improve, deepen, or add coverage to an already implemented skill instead of creating a new skill from scratch. If the repository itself changed and the old skill may be stale, use…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this skill when the user already has a generated or hand-written Agent Skill and wants to expand it without losing the useful behavior it already provides.
Typical requests include:
If the user's main concern is that the repository code, docs, APIs, CLIs,
configs, or dependencies changed and the old skill may be stale, use the sibling
refresh-repo-skill skill instead.
The expected result is an edited runtime skill directory plus updated usability test cases and a verification/human-review package under the skill's review/test artifact directory. Do not create a separate replacement skill unless the user explicitly asks for a fork.
Gather or infer:
SKILL.md.~/.disco/agent or the active
DISCO_CODING_AGENT_DIR, when the existing skill may be a live managed copy.If the existing skill directory is missing or does not contain SKILL.md, stop and ask for the correct skill path.
Read these references as the workflow reaches each stage:
When useful, also read sibling workflow-skill references: ../create-repo-skill/references/ for canonical skill IDs, repository evidence discovery, installed-package inspection, planning, and writing, and ../verify-repo-skill/references/ for usability test-case format, verification review, and import/index routing guidance.
Resolve the existing skill directory, repository path, requested extension,
DisCo agent directory, and review/test artifact directory. If the user does
not specify an artifact directory, default to
<repository-path>/skills/tests/<skill-id>/, with usability cases under
test-cases/ and review reports under reports/. If the existing skill is
the live managed copy under
<agent-dir>/skills/repositories/repo-skills/<skill-id>/, copy only its runtime tree to a
working directory outside <agent-dir>/skills/, preserving the
<skill-id> directory basename. Keep that working copy until the dedicated
importer succeeds; never edit the live managed copy in place.
Read references/extension-planning.md. Audit current root/sub-skill routing, bundled references, bundled scripts, evals, usability tests, and known gaps before editing.
Gather targeted repository evidence for the requested extension. Use source code plus installed-package inspection for API facts; use docs, examples, tests, and configs for intent and workflows.
Write a concise extension plan that maps each new or changed capability to exactly one skill location, reference, script, or usability case.
Read references/editing-and-versioning.md. Edit the resolved source or external working copy while preserving useful current guidance, frontmatter IDs, and public structure. Preserve the canonical repo_id and skill_id unless the user explicitly requests an identity migration. Treat the current area-family assignments as the baseline. If the extension is only deeper coverage of already routed capabilities, retain those assignments. If it adds a distinct capability, removes a capability, changes the repository's scope, changes the taxonomy hash, or the user requests reclassification, create a new external area-family routing handoff with assignment-specific evidence and update the minimal v2 metadata to match it. Never hand-edit generated family pages or silently change routing in the skill prose.
Resolve and apply the repository license after the extension source commit is known and before verification:
node ../verify-repo-skill/scripts/resolve_repo_license.mjs \
--repository <owner/repository> \
--source-commit <40-hex-source-commit> \
--json > <artifact-root>/reports/license-resolution.json
node ../verify-repo-skill/scripts/apply_repo_license.mjs \
--skill-dir <external-runtime-skill-dir> \
--license <value-from-report>
Re-query on every extension and synchronize the one returned value over the
complete root/sub-skill tree. Record old value, new value, source commit,
status, and reason in the handoff. Preserve NOASSERTION as the accepted
source value and use NO_LICENSE only when the resolver is unavailable; this
fallback is a warning, not a legal conclusion, and does not by itself block
verification or import.
Add or update usability test cases for the new capability and at least one regression-sensitive existing workflow under test-cases/ in the review/test artifact directory.
Read references/verification-and-handoff.md. Run automatic verification, create a human review package under reports/ in the review/test artifact directory, and fix blocking issues.
After verification passes, follow verify-repo-skill's structured import
policy. Ask for import or overwrite approval unless the user already
authorized that exact action, then run
verify-repo-skill/scripts/import_repo_skill.mjs with the verified external
runtime directory and --routing-entry <repo-path>/skills/disco/routing_decision/classification.json. The external
handoff is mandatory for a normal classified import, even when the existing
area-family assignments are retained. Pass --overwrite only for the exact
approved existing managed skill. The importer installs the runtime tree and
rebuilds the sibling live repo-skills-router under one rollback-capable
global lock.
After success, DisCo Researcher can use the extended skill in a new session;
use import-repo-skills-to-agent only for an explicitly requested
cross-agent export.
<agent-dir>/skills/repositories/repo-skills/ directly.
Extend an external working copy, then let
verify-repo-skill/scripts/import_repo_skill.mjs replace the approved live
target.repo_id or skill_id; identity
changes are separate migrations that must update the central repository
index and all router references together.pip show locations, or machine-specific details into public skill files.scripts/ or
references/ tree before linking it.tests/ as a skill directory. It is the review/test artifact area.evals/, verification reports, human-review notes, publication checklists, prompt samples, benchmark notes, or other check-only artifacts inside the runtime skill directory. Put concrete usability cases under the review/test artifact directory's test-cases/ subtree and reports under its reports/ subtree, defaulting to <repository-path>/skills/tests/<skill-id>/.By the end, the user should have:
test-cases/ subtree.reports/ subtree.