Skip to content

docs(skills): document .copilot/skills/ canonical path + .squad/skills/ fallback - #1242

Closed
tamirdresher wants to merge 1 commit into
devfrom
squad/1241-skills-path-docs
Closed

docs(skills): document .copilot/skills/ canonical path + .squad/skills/ fallback#1242
tamirdresher wants to merge 1 commit into
devfrom
squad/1241-skills-path-docs

Conversation

@tamirdresher

Copy link
Copy Markdown
Collaborator

Closes #1241

Summary

Resolves the drift between Skills documentation and actual code behavior. The CLI, SDK tool, sharing/consult, and squad init all use .copilot/skills/ as the write target, but the docs still described .squad/skills/ as canonical. This PR updates the docs to match the code (Option A from the issue).

What changed in the docs

  • features/skills.md.squad/skills/{name}/SKILL.md.copilot/skills/{name}/SKILL.md as the canonical path, plus a new "Skill directory precedence" section explaining the 5-path scan with .squad/skills/ retained as a legacy fallback (still scanned + still wins precedence when both contain a same-named skill).
  • concepts/portability.md — 4 references updated to reflect .copilot/skills/ as the write target while noting .squad/skills/ as a legacy fallback.
  • The session-recovery link at features/skills.md:79 is not broken — the skill file exists at .squad/skills/session-recovery/SKILL.md — so no fix needed.

What did NOT change

  • No code changes. The runtime is left as-is. This PR just makes the docs honest.
  • .squad/skills/ is still scanned and still wins precedence at read time. Existing repos with skills there continue to work.
  • State schema and listSkillIds() still reference .squad/skills/ — flagged in the issue for a future, separate decision.

Out of scope

  • Whether .squad/skills/ should eventually be removed entirely (would require migration tooling). That's a separate decision; this PR just stops misleading users.
  • Updating the squad.agent.md skill-aware routing precedence — left to maintainers.
  • Updating the state schema. The skills path in StatePathMap still maps to .squad/skills/{id}; that is a separate code-touching change.

Test plan

  • npm run build passes locally
  • Manual review of rendered Markdown
  • Verified session-recovery skill exists at .squad/skills/session-recovery/SKILL.md (link valid)
  • CI passes

…kills/ fallback

- features/skills.md: skills now live at .copilot/skills/{name}/SKILL.md
  (matches squad init, the CLI skill commands, the SDK skill tool, and
  the SkillSource fetcher's default)
- Add "Skill directory precedence" section explaining the 5-path read
  scan with .squad/skills/ > .copilot/skills/ > .github/skills/ > ...
  precedence ordering and dedup rule per .github/agents/squad.agent.md
- Note that .squad/skills/ is still scanned at read time (highest
  precedence) for backward compatibility with existing repos
- Update example path: .copilot/skills/ci-github-actions/SKILL.md
- The session-recovery link at line 79 is valid — skill exists at
  .squad/skills/session-recovery/SKILL.md (no fix needed)
- concepts/portability.md: update 4 references to .squad/skills/ to
  reflect .copilot/skills/ as the canonical write target, keeping
  .squad/skills/ noted as legacy fallback where relevant

Closes #1241

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 9, 2026 13:50
@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

🛫 PR Readiness Check

ℹ️ This comment updates on each push. Last checked: commit 0343ff0

PR Scope: 🔧 Infrastructure

⚠️ 2 item(s) to address before review

Status Check Details
Single commit 1 commit — clean history
Not in draft Ready for review
Branch up to date Up to date with dev
Copilot review No Copilot review yet — it may still be processing
Changeset present No source files changed — changeset not required
Scope clean No .squad/ or docs/proposals/ files
No merge conflicts No merge conflicts
Copilot threads resolved No Copilot review threads
CI passing 8 check(s) still running

Files Changed (2 files, +27 −8)

File +/−
docs/src/content/docs/concepts/portability.md +4 −4
docs/src/content/docs/features/skills.md +23 −4

Total: +27 −8


This check runs automatically on every push. Fix any ❌ items and push again.
See CONTRIBUTING.md and PR Requirements for details.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

🟢 Impact Analysis — PR #1242

Risk tier: 🟢 LOW

📊 Summary

Metric Count
Files changed 2
Files added 0
Files modified 2
Files deleted 0
Modules touched 1

🎯 Risk Factors

  • 2 files changed (≤5 → LOW)
  • 1 module(s) touched (≤1 → LOW)

📦 Modules Affected

docs (2 files)
  • docs/src/content/docs/concepts/portability.md
  • docs/src/content/docs/features/skills.md

This report is generated automatically for every PR. See #733 for details.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Skills documentation to align with the current default write location (.copilot/skills/) while documenting legacy .squad/skills/ support and directory precedence concepts.

Changes:

  • Switches canonical documented skill path from .squad/skills/{name}/SKILL.md to .copilot/skills/{name}/SKILL.md.
  • Adds a “Skill directory precedence” section describing multi-directory discovery and conflict resolution.
  • Updates portability docs to reference .copilot/skills/ while noting legacy fallback behavior.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.

File Description
docs/src/content/docs/features/skills.md Updates canonical skill path and adds a directory precedence section + refreshed examples.
docs/src/content/docs/concepts/portability.md Updates portability references to .copilot/skills/ and mentions legacy fallback.


Each skill is a directory containing a `SKILL.md` file. Skills are **team-wide knowledge** — not tied to individual agents. All agents can read and use any skill.

> **Note:** `.squad/skills/` is a supported legacy path. Skills there are still discovered at read time and take **highest** scan precedence. The CLI, SDK tool, and `squad init` all write to `.copilot/skills/` by default. See [Skill directory precedence](#skill-directory-precedence) below.
Comment on lines +41 to +42
Squad scans five directories for skills at read time. When the same skill name appears in more than one location, the highest-precedence copy wins:

Comment on lines +51 to +53
**Writes default to `.copilot/skills/`** — that is what the CLI `skill` commands, the SDK skill tool, sharing/consult, and `squad init` create. `.squad/skills/` is retained for backward compatibility; any skill already there continues to work and takes highest precedence if a same-named skill also exists in `.copilot/skills/`.

> **Tip:** If you have skills in `.squad/skills/` from an older install, they continue to work as-is. To consolidate, move them to `.copilot/skills/` — but remove the `.squad/skills/` copy first, otherwise the old location will shadow the new one.
| Agent histories | ✅ (split into portable vs project-specific) |
| Casting state | ✅ |
| Skills | ✅ All earned skills from `.squad/skills/` |
| Skills | ✅ All earned skills from `.copilot/skills/` (and `.squad/skills/` legacy fallback) |
### What Gets Inherited

- **Skills** — all `.squad/skills/*/SKILL.md` files
- **Skills** — all `.copilot/skills/*/SKILL.md` (and `.squad/skills/*/SKILL.md`) files
@tamirdresher

Copy link
Copy Markdown
Collaborator Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(skills): docs say .squad/skills/ but code writes to .copilot/skills/ — pick one and clarify

3 participants