Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions guides/copilot-vs-claude-code.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,14 @@ unique capabilities.
| SQL Task Tracking | ✅ Built-in SQLite | ❌ File-based | Query todos, track state with SQL |
| Todo Dependencies | ✅ SQL dependency graph | ❌ Manual tracking | Automatically find "ready" tasks |
| Context compression hook | ✅ `preCompact` hook (notification-only, cannot block) | ✅ `PreCompact` hook (v2.1.105) | Both expose a compaction-lifecycle hook; Copilot's is observe-only, Claude's can act before compaction |
| Existing worktree entry | ⚠️ No command for entering an existing worktree; `/worktree`, `/move`, and experimental `/new-worktree` create and switch instead | ✅ `EnterWorktree` (v2.1.105) | Claude has a first-class existing-entry tool; Copilot has first-class create-and-switch surfaces |
| Existing worktree entry | ⚠️ No command for entering an existing worktree; the experimental `/worktree`, `/worktree new`, and `/move` create and switch instead | ✅ `EnterWorktree` (v2.1.105) | Claude has a first-class existing-entry tool; Copilot has first-class create-and-switch surfaces |
| **Memory & State** | | | |
| Session Database | ✅ SQL built-in | ❌ None | Structured state that survives compaction |
| Cross-Session Memory | ✅ `session_store` read-only DB (experimental) | ⚠️ `CLAUDE.md` + hooks + memory files | Both approaches are evolving; Claude Code has more options |
| Session Resume | ✅ events.jsonl | ⚠️ Similar | Both support session continuation |
| **Code Intelligence** | | | |
| LSP Support | ✅ First-class | ❌ None | Language-aware navigation |
| Code Search | ✅ ripgrep + glob | ✅ ripgrep + glob | Similar capabilities |
| Code Search | ✅ tgrep in large monorepos + glob | ✅ ripgrep + glob | Similar capabilities |
| GitHub Code Search | ✅ Native | ⚠️ MCP required | Search across all GitHub repos |
| **Multi-AI Orchestration** | | | |
| Multi-AI Hub | ⚠️ Community pattern (shell + MCP) | ❌ Claude only | Copilot can act as a hub via shell scripting and MCP — not a built-in native feature |
Expand Down
32 changes: 20 additions & 12 deletions skills/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,21 +50,29 @@ All skills in this repository follow the **[agentskills.io](https://agentskills.
## Installing Skills

> **Installation destination is not runtime discovery.** A third-party installer such as `ctx7`
> may copy files to a "universal" destination such as `.agents/skills`, but that convention can
> differ from the paths a CLI scans natively. Confirm loading with the target CLI. Antigravity
> sources currently disagree between `.agent/skills` and `.agents/skills`, so treat that
> singular/plural path as unconfirmed rather than a portable rule.
> may copy files to a "universal" destination, but that convention can differ from the paths a CLI
> scans natively. Confirm loading with the target CLI. Antigravity sources currently disagree
> between `.agent/skills` and `.agents/skills`, so treat that singular/plural path as unconfirmed
> for Antigravity rather than as a portable rule. Copilot CLI does natively discover
> `.agents/skills/` as described below.

### GitHub Copilot CLI

```bash
# Install a single skill (project-level)
# Copy each skill directory to: .github/skills/<skill-name>/SKILL.md
# Example: skills/development/fix-build-errors/ -> .github/skills/fix-build-errors/

# Install user-level (available in all projects)
# Copy to: ~/.copilot/skills/<category>/<skill-name>/SKILL.md
```
Copilot CLI discovers skills from these locations in priority order:

1. `.github/skills/` in the project
2. `.agents/skills/` in the project (alternative project location)
3. `.claude/skills/` in the project (Claude-compatible location)
4. `.github/skills/` in parent directories (for monorepos)
5. `~/.copilot/skills/` for personal skills
6. `~/.agents/skills/` for personal skills shared across agents
7. Plugin directories
8. Additional comma-separated directories from `COPILOT_SKILLS_DIRS`
9. Skills built into the CLI
10. Organization or enterprise skills projected through the AHP relay and fetched when invoked

Copy each skill directory beneath the chosen location, for example
`.github/skills/<skill-name>/SKILL.md` or `~/.copilot/skills/<category>/<skill-name>/SKILL.md`.

### Codex CLI

Expand Down
12 changes: 7 additions & 5 deletions skills/copilot-exclusive/sub-agent-sandboxing/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,11 +130,13 @@ if it excludes a required permission, report the failure explicitly.
CLI v1.0.77 release notes document that this managed floor can be delivered through native macOS
and Windows MDM settings.

CLI v1.0.78 also documents `allowDevToolCaches`, enabled by default, so sandboxed builds can use
development-tool caches, registries, and installation locations without additional setup. Set it
to `false` for tighter isolation. The release notes do not define exact directories or access
modes, so verify them in the installed runtime. Because the default broadens the sandbox surface
and can expose registry access, include it in the supply-chain review described by
CLI v1.0.79 documents `allowDevToolAccess`, enabled by default, so sandboxed builds can use
development-tool caches, config, registries, and installation locations without additional setup.
Set it to `false` for tighter isolation. The former `allowDevToolCaches` key is no longer read and
is silently ignored, so an existing `false` opt-out under that name reverts to the default (on).
The release notes do not define exact directories or access modes, so verify them in the installed
runtime. Because the default broadens the sandbox surface and can expose registry access, include
it in the supply-chain review described by
[`agent-supply-chain`](../../security/agent-supply-chain/SKILL.md).

## Who Owns This Sandbox?
Expand Down
14 changes: 14 additions & 0 deletions skills/development/skill-creator/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,20 @@ Ask (or determine from context):
to load a skill. If it is vague, the skill may be correct but still fail to trigger when
the user actually needs it.

### Skill frontmatter reference

Only `name` and `description` are selection signals. The other fields control behavior after a
skill is selected or invoked.

| Field | Type | Required | Description |
|-------|------|:--------:|-------------|
| `name` | string | Yes | Unique identifier using only letters, numbers, and hyphens; maximum 64 characters |
| `description` | string | Yes | What the skill does and when to use it; maximum 1024 characters |
| `argument-hint` | string | No | Expected argument hint shown in the skill picker, such as `"[target] [mode]"` |
| `allowed-tools` | string or string[] | No | Tools automatically allowed while the skill is active; `"*"` allows all tools |
| `user-invocable` | boolean | No | Whether users can invoke `/SKILL-NAME`; defaults to `true` |
| `disable-model-invocation` | boolean | No | Whether to prevent automatic model invocation; defaults to `false` |

### 2. Generate the SKILL.md

Use this template as a base and fill in the gathered information.
Expand Down
26 changes: 17 additions & 9 deletions skills/workflow/using-git-worktrees/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,19 +206,27 @@ Operational rules:

## Runtime Notes

### GitHub Copilot CLI: Create a Worktree In-Session
### GitHub Copilot CLI: Experimental Worktree Entry Points

Copilot CLI provides three create-and-switch surfaces; none is a dedicated way to enter an
already-existing worktree:
Copilot CLI's worktree feature is experimental and provides these entry points:

| Command | Behavior |
|---------|----------|
| `/worktree [branch\|task]` | Create a worktree from `HEAD`, switch to it, and leave uncommitted changes in the original checkout |
| `/move [branch\|task]` | Create a worktree, move the current uncommitted changes into it, and switch to it |
| `/new-worktree` | **Experimental:** create a worktree, switch to it, and start a new conversation there |

Use these when creation inside the session is the desired operation. For an existing checkout,
keep using the explicit path-boundary flow in [For Copilot Orchestrators](#for-copilot-orchestrators-direct-agents-into-the-right-worktree).
| `/worktree [branch\|task]` | Create a worktree for an optional branch or task and switch to it, leaving uncommitted changes behind |
| `/worktree new [PROMPT]` | Start a new conversation in a newly created Git worktree, optionally using the prompt |
| `/move [branch\|task]` | Move the current uncommitted changes into a new worktree and switch to it |
| `-w`, `--worktree[=NAME]` | Create or reuse an isolated worktree under `<repo>.worktrees/`, optionally with a name |

`/worktree`, `/worktree new`, and `--worktree` branch from the current checkout (`HEAD`) by
default. This became consistent in CLI v1.0.79; previously, `--worktree` started from the remote
default branch. To retain that older baseline intentionally, set `worktreeBaseRef` to
`"defaultBranch"` so new worktrees branch from the remote default branch instead. The reference
does not document `worktreeBaseRef` for `/move`.

`--worktree` conflicts with `--resume`, `--continue`, and `--connect`; do not combine those flags.
Use these entry points when creation inside the session is the desired operation. For an existing
checkout, keep using the explicit path-boundary flow in
[For Copilot Orchestrators](#for-copilot-orchestrators-direct-agents-into-the-right-worktree).
The Git-native `git worktree add` workflow remains the stable default.

### Claude Code: Enter an Existing Worktree
Expand Down