feat: migrate skills from .squad/skills/ to .copilot/skills/ (#330, #354)#430
feat: migrate skills from .squad/skills/ to .copilot/skills/ (#330, #354)#430bradygaster merged 1 commit intodevfrom
Conversation
…l paths (bradygaster#440) * chore(squad): quality review findings — 7 issues filed Quality audit complete: 5 agents assessed CLI across testing, coverage, stability, accessibility, UX. Results: 4 P0 blockers (bradygaster#365–bradygaster#368), 3 P1 items (bradygaster#369–bradygaster#371). Blocking: Waingro dead sessions, ErrorBoundary, dropped input; Marquez help text consistency. Changes: - Logged session summary to .squad/log/2026-02-24T0205-quality-review-complete.md - Updated .squad/identity/now.md with quality review findings and new issue numbers Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(squad): merge decision — Marquez UX audit findings Quality assessment merged from inbox (Grade B): 11 improvements (3 P0, 4 P1, 4 P2). help text, stub commands, vocabulary, separators, roster. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix bradygaster#418: Add progress indicator for long operations Show 'Still working... (Xm Ys elapsed)' after 30 seconds, updating every 30 seconds during sendAndWait timeout. Prevents users from thinking the system has hung during long agent operations. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix bradygaster#428/bradygaster#401: Add pending input queue for disabled→enabled transition The ref-based buffer from bradygaster#381 handles keystrokes during disabled state, but fast typing during the disabled→enabled transition could race with React's useEffect. Added pendingInputRef queue to catch characters that arrive before the effect drains bufferRef. Edge cases fixed: - Paste events (rapid character arrival) - Fast typing during transition window - Race between useInput and useEffect restoration Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix bradygaster#430: Document and enhance coordinator streaming diagnostics Verified that coordinator message_delta event wiring is correct: - Both dispatchToCoordinator and dispatchToAgent use identical streaming patterns - message_delta listener registered BEFORE awaitStreamedResponse call - CopilotSessionAdapter maps 'message_delta' -> 'assistant.message_delta' correctly - Coordinator session created with streaming: true config Enhanced diagnostics: - Added session creation logging (sessionId, capabilities) - Added listener registration/removal logging - Added fallback path logging to track when sendAndWait content is used - Documented streaming architecture in function comments All 41 streaming tests pass. No functional changes, only diagnostic improvements. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update Kovash history: input buffering fix bradygaster#428/bradygaster#401 --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore(squad): quality review findings — 7 issues filed Quality audit complete: 5 agents assessed CLI across testing, coverage, stability, accessibility, UX. Results: 4 P0 blockers (bradygaster#365–bradygaster#368), 3 P1 items (bradygaster#369–bradygaster#371). Blocking: Waingro dead sessions, ErrorBoundary, dropped input; Marquez help text consistency. Changes: - Logged session summary to .squad/log/2026-02-24T0205-quality-review-complete.md - Updated .squad/identity/now.md with quality review findings and new issue numbers Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(squad): merge decision — Marquez UX audit findings Quality assessment merged from inbox (Grade B): 11 improvements (3 P0, 4 P1, 4 P2). help text, stub commands, vocabulary, separators, roster. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update Kovash history: Issue bradygaster#430 investigation Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
@bradygaster you say .copilot/skills but what about the .github/skills one? That is the one my github.com agents use at least... 🤷♂️ |
) Skills are now created in and read from .copilot/skills/ instead of .squad/skills/. This unifies Squad's skill system with Copilot's native skill discovery path. Changes: - LocalSkillSource checks .copilot/skills first, falls back to .squad/skills - GitHubSkillSource default pathPrefix updated to .copilot/skills - squad init creates .copilot/skills/ (not .squad/skills/) - squad_skill tool writes to .copilot/skills/, reads from both - New 0.9.0 migration auto-moves .squad/skills/ -> .copilot/skills/ - All 11 squad.agent.md refs updated (both template copies + this repo) - Template files updated: mcp-config.md, plugin-marketplace.md, skill.md - Template skills updated: reskill, squad-conventions, distributed-mesh - Export/import updated for new location with backward compat - 18 skills physically moved from .squad/skills/ to .copilot/skills/ - All tests updated and passing (4323 pass, 0 fail) Closes #330 Closes #354 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
c67a4d6 to
e3bbb52
Compare
|
@sturlath sorry i missed your comment here. pretty sure everyone's unifying around |
|
@bradygaster np I seem to have missed that announcement 😅 When I search the docs I find https://docs.github.com/?search-overlay-open=true&search-overlay-ask-ai=true&search-overlay-input=Skills
I only have one set of skills and they are placed in github/skills 🤔 Can you explain the difference and what I should be using? I btw starter using skills almost the same day they came out and lot did change then and probably has now again/also. |
The skills unification in bradygaster#430 migrated skills from .squad/skills/ to .copilot/skills/. This updates the APM skill command to: - Check .copilot/skills/ first, fall back to .squad/skills/ (backward compat) - Use resolveSkillsDir() helper matching LocalSkillSource pattern - Update all user-facing messages and apm.yml template paths - Fix installSkillsFromSquadDir candidate order Addresses review feedback from @Meir017. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The skills unification in bradygaster#430 migrated skills from .squad/skills/ to .copilot/skills/. This updates the APM skill command to: - Check .copilot/skills/ first, fall back to .squad/skills/ (backward compat) - Use resolveSkillsDir() helper matching LocalSkillSource pattern - Update all user-facing messages and apm.yml template paths - Fix installSkillsFromSquadDir candidate order Addresses review feedback from @Meir017. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#876) * Add enforcement wiring step to hiring process + workflow wiring guide (#592) Fixes #591 - Added step 7 (Wire enforcement) to Adding Team Members in squad.agent.md - Added workflow-wiring-guide.md with configuration surface area, wiring instructions, common mistakes, and verification checklist - Added appendix walkthroughs for code reviewer (gate pattern) and documenter (follow-up trigger pattern) Co-authored-by: Jonathan Ben Ami <jbenami@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * feat(agents): add Challenger / Devil's Advocate agent template + fact-checking skill (#603) * feat(skills): add fact-checking skill\n\nAdds challenger/fact-checking review pattern.\nVerified against 200+ issues in production squads.\nCloses #598 * feat(agents): add challenger agent charter template\n\nGeneric Devil's Advocate / Challenger template.\nProvides auto-spawn integration pattern for coordinators.\nCloses #598 * feat: add APM integration for skill publishing and installation Closes #824 ## Changes ### New command: squad skill - squad skill publish [<name>] — exports skill(s) to APM format, generating/updating apm.yml - squad skill install <source> — installs a skill from APM registry - Supports owner/repo, owner/repo/skill-name, and direct URLs - Uses GitHub CLI to fetch from repos that have apm.yml or .squad/skills/ - Writes .apm-source.json metadata to track skill origin - squad skill list — lists installed skills with source provenance ### Updated: squad init - Now generates �pm.yml at project root alongside .squad/ - Follows skipExisting semantics (safe to re-run) - apm.yml includes skills, instructions, and prompts sections ### Updated: squad help - Added skill command to help text with usage examples ## APM format apm.yml is the Agent Package Manager manifest — package.json for AI agent context. See: https://github.com/microsoft/apm The manifest declares skills, instructions, and prompts in a portable format that �pm install can deploy to .github/, .claude/, .cursor/ etc. * chore: add changeset for APM integration * docs: update CHANGELOG.md with APM integration entry * fix(skill): use .copilot/skills/ as primary path per #430 The skills unification in #430 migrated skills from .squad/skills/ to .copilot/skills/. This updates the APM skill command to: - Check .copilot/skills/ first, fall back to .squad/skills/ (backward compat) - Use resolveSkillsDir() helper matching LocalSkillSource pattern - Update all user-facing messages and apm.yml template paths - Fix installSkillsFromSquadDir candidate order Addresses review feedback from @Meir017. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: align CHANGELOG.md with dev branch Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: add missing fs import in init.ts Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: joniba <joniba@users.noreply.github.com> Co-authored-by: Jonathan Ben Ami <jbenami@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot <Copilot@users.noreply.github.com> Co-authored-by: Copilot <copilot@github.com>
The skills unification in bradygaster#430 migrated skills from .squad/skills/ to .copilot/skills/. This updates the APM skill command to: - Check .copilot/skills/ first, fall back to .squad/skills/ (backward compat) - Use resolveSkillsDir() helper matching LocalSkillSource pattern - Update all user-facing messages and apm.yml template paths - Fix installSkillsFromSquadDir candidate order Addresses review feedback from @Meir017. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#876) * Add enforcement wiring step to hiring process + workflow wiring guide (#592) Fixes #591 - Added step 7 (Wire enforcement) to Adding Team Members in squad.agent.md - Added workflow-wiring-guide.md with configuration surface area, wiring instructions, common mistakes, and verification checklist - Added appendix walkthroughs for code reviewer (gate pattern) and documenter (follow-up trigger pattern) Co-authored-by: Jonathan Ben Ami <jbenami@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * feat(agents): add Challenger / Devil's Advocate agent template + fact-checking skill (#603) * feat(skills): add fact-checking skill\n\nAdds challenger/fact-checking review pattern.\nVerified against 200+ issues in production squads.\nCloses #598 * feat(agents): add challenger agent charter template\n\nGeneric Devil's Advocate / Challenger template.\nProvides auto-spawn integration pattern for coordinators.\nCloses #598 * feat: add APM integration for skill publishing and installation Closes #824 ## Changes ### New command: squad skill - squad skill publish [<name>] — exports skill(s) to APM format, generating/updating apm.yml - squad skill install <source> — installs a skill from APM registry - Supports owner/repo, owner/repo/skill-name, and direct URLs - Uses GitHub CLI to fetch from repos that have apm.yml or .squad/skills/ - Writes .apm-source.json metadata to track skill origin - squad skill list — lists installed skills with source provenance ### Updated: squad init - Now generates �pm.yml at project root alongside .squad/ - Follows skipExisting semantics (safe to re-run) - apm.yml includes skills, instructions, and prompts sections ### Updated: squad help - Added skill command to help text with usage examples ## APM format apm.yml is the Agent Package Manager manifest — package.json for AI agent context. See: https://github.com/microsoft/apm The manifest declares skills, instructions, and prompts in a portable format that �pm install can deploy to .github/, .claude/, .cursor/ etc. * chore: add changeset for APM integration * docs: update CHANGELOG.md with APM integration entry * fix(skill): use .copilot/skills/ as primary path per #430 The skills unification in #430 migrated skills from .squad/skills/ to .copilot/skills/. This updates the APM skill command to: - Check .copilot/skills/ first, fall back to .squad/skills/ (backward compat) - Use resolveSkillsDir() helper matching LocalSkillSource pattern - Update all user-facing messages and apm.yml template paths - Fix installSkillsFromSquadDir candidate order Addresses review feedback from @Meir017. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: align CHANGELOG.md with dev branch Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: add missing fs import in init.ts Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: joniba <joniba@users.noreply.github.com> Co-authored-by: Jonathan Ben Ami <jbenami@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot <Copilot@users.noreply.github.com> Co-authored-by: Copilot <copilot@github.com>
Skills Unification — .squad/skills/ → .copilot/skills/
Closes #330 — Coordinator detects and enforces all three tooling layers
Closes #354 — Migrate Squad Skills from .squad/skills/ to .copilot/skills/
What changed
Skills now live in .copilot/skills/\ — Copilot's native skill discovery path — instead of .squad/skills/.
SDK/CLI code:
Governance:
This repo:
MCP validation: Confirmed spawned agents inherit MCP tools from coordinator session ✅
Upgrade experience
On next \squad upgrade, the 0.9.0 migration:
Test results