+
+### For Git Source Workflows
+
+| Tool | Version | Purpose |
+|------|---------|---------|
+| **Git** | 2.25+ | Clone and fetch community skill sources |
+
+Required when using `aam source add`, `aam source update`, or `aam source enable-defaults` to manage git-based package sources.
+
+
+
+
+
+### For MCP / IDE Integration
+
+| Tool | Version | Purpose |
+|------|---------|---------|
+| **Cursor**, **Claude Desktop**, **VS Code**, or any MCP client | Latest | Connect to AAM's MCP server |
+
+AAM ships with a built-in MCP server. No extra install needed --- just configure your IDE to spawn `aam mcp serve`.
+
+
+
+
+
+### For Package Authoring & Publishing
+
+| Tool | Version | Purpose |
+|------|---------|---------|
+| **Text editor** | Any | Edit `aam.yaml` manifests and artifact files |
+| **Git** | 2.25+ | Version control your packages |
+
+Use `aam pkg create` or `aam pkg init` to scaffold packages, then `aam pkg publish` to share them.
+
+
+
+
+
+!!! tip "Check your environment"
+ Run `aam doctor` at any time to verify your setup. It checks Python version, configuration files, registry accessibility, and package integrity.
+
+---
+
+## Get Started
-### Getting Started
+### :material-download: Install AAM
+
+Install with pip, set your default AI platform, and configure a local registry. Everything you need in five minutes.
+
+[Installation guide](getting-started/installation.md){ .md-button .md-button--primary }
+
+
+
+
+
+### :material-rocket-launch: Quick Start
-Install AAM, configure your platform, and install your first package in under five minutes.
+Create a registry, build a package, publish it, and install it --- all in a single walkthrough.
-[Start here](getting-started/index.md){ .md-button }
+[Quick start](getting-started/quickstart.md){ .md-button .md-button--primary }
+### :material-package-variant: Your First Package
+
+Build a complete package with skills, agents, prompts, and instructions from scratch.
+
+[First package](getting-started/first-package.md){ .md-button .md-button--primary }
+
+
+
+
+
+---
+
+## CLI Reference
+
+AAM provides a comprehensive CLI organized into command groups. Every command is also available as an MCP tool for IDE agents.
+
+| Command Group | Key Commands | What It Does |
+|---------------|-------------|--------------|
+| **Getting Started** | [`aam init`](cli/init.md) | Set up AAM (platform, default sources) |
+| **Package Management** | [`aam install`](cli/install.md), [`aam search`](cli/search.md), [`aam list`](cli/list.md) | Install, search, list, upgrade, and remove packages |
+| **Package Integrity** | [`aam verify`](cli/verify.md), [`aam diff`](cli/diff.md) | Verify checksums and show diffs for modified files |
+| **Package Authoring** | [`aam pkg create`](cli/create-package.md), [`aam pkg publish`](cli/publish.md) | Create, validate, pack, and publish packages |
+| **Source Management** | [`aam source add`](cli/source-add.md), [`aam source scan`](cli/source-scan.md) | Manage git-based package sources |
+| **Registry Management** | [`aam registry init`](cli/registry-init.md), [`aam registry add`](cli/registry-add.md) | Create and configure local or remote registries |
+| **Configuration** | [`aam config set`](cli/config-set.md), [`aam config list`](cli/config-list.md) | Get and set configuration values |
+| **Diagnostics** | [`aam doctor`](cli/doctor.md) | Run health checks on your AAM setup |
+
+[Full CLI reference](cli/index.md){ .md-button }
+
+---
+
+## MCP Interface
+
+AAM ships with a built-in **MCP (Model Context Protocol) server** that lets AI agents in your IDE manage packages directly --- no terminal required.
+
+
+
+
+
+### Read-Only Tools (17)
+
+Search packages, list sources, check configuration, verify integrity, and run diagnostics. Always safe, always available.
+
+
+
+### Resources (9)
+
+Passive data endpoints: installed packages, configuration, registries, source lists, and manifest data. Available to any connected agent.
+
+
+
+
+
+### IDE Integration
+
+Works with **Cursor**, **Claude Desktop**, **VS Code**, **Windsurf**, and any MCP-compatible client. One line of config to connect.
+
+
+
+
+
+```bash
+# Start MCP server (read-only, safe for exploration)
+aam mcp serve
+
+# Start with full read/write access
+aam mcp serve --allow-write
+```
+
+[MCP Interface documentation](mcp/index.md){ .md-button }
+
+---
+
+## Where to Go Next
+
+
+
+
+
### Tutorials
Step-by-step guides for common tasks: packaging existing skills, building packages, and deploying to multiple platforms.
@@ -128,11 +293,21 @@ Step-by-step guides for common tasks: packaging existing skills, building packag
-### CLI Reference
+### Platform Guides
+
+Deploy artifacts to Cursor, Claude Desktop, GitHub Copilot, and OpenAI Codex with platform-specific configuration.
+
+[Platform guides](platforms/index.md){ .md-button }
+
+
+
+
+
+### Concepts
-Complete reference for every AAM command, flag, and option.
+Understand packages, artifacts, git sources, registries, dependency resolution, and platform adapters.
-[View commands](cli/index.md){ .md-button }
+[Learn concepts](concepts/index.md){ .md-button }
diff --git a/docs/user_docs/docs/mcp/index.md b/docs/user_docs/docs/mcp/index.md
new file mode 100644
index 0000000..47411cd
--- /dev/null
+++ b/docs/user_docs/docs/mcp/index.md
@@ -0,0 +1,256 @@
+# MCP Interface
+
+AAM exposes its full functionality as an **MCP (Model Context Protocol) server**, allowing AI agents and IDE integrations to manage packages, sources, and configuration programmatically. Any MCP-compatible client --- Cursor, VS Code, Claude Desktop, Windsurf, or custom toolchains --- can connect to AAM and operate it directly.
+
+---
+
+## What Is the MCP Interface?
+
+The Model Context Protocol (MCP) is an open standard that lets AI agents call tools and read resources from external services over a structured transport (stdio or HTTP/SSE). AAM implements an MCP server using [FastMCP](https://github.com/jlowin/fastmcp), exposing CLI functionality as **tools** (callable actions) and **resources** (passive data endpoints).
+
+```mermaid
+flowchart LR
+ IDE["IDE / AI Agent (Cursor, Claude Desktop, etc.)"] -->|MCP protocol| AAM["AAM MCP Server (aam mcp serve)"]
+ AAM -->|reads/writes| Config["~/.aam/config.yaml"]
+ AAM -->|manages| Packages["~/.aam/packages/"]
+ AAM -->|clones/fetches| Sources["~/.aam/cache/git/"]
+
+ style IDE fill:#e3f2fd
+ style AAM fill:#f3e5f5
+ style Config fill:#e8f5e9
+ style Packages fill:#e8f5e9
+ style Sources fill:#e8f5e9
+```
+
+Instead of typing `aam install @author/my-skill` in a terminal, your AI agent calls the `aam_install` tool through MCP and gets structured results back.
+
+---
+
+## Starting the MCP Server
+
+### Basic (Read-Only)
+
+```bash
+aam mcp serve
+```
+
+By default the server starts in **read-only mode** on **stdio** transport. This is the safest option --- agents can search, list, and inspect packages but cannot modify anything.
+
+### With Write Access
+
+```bash
+aam mcp serve --allow-write
+```
+
+Enables mutating tools (install, uninstall, publish, etc.). Use this when you trust the connected agent to make changes.
+
+### Full Options
+
+| Option | Default | Description |
+|--------|---------|-------------|
+| `--transport` | `stdio` | Transport protocol: `stdio` or `http` |
+| `--port` | `8000` | HTTP port (only for `http` transport) |
+| `--allow-write` | `false` | Enable write/mutating tools |
+| `--log-file` | stderr | Path to log file |
+| `--log-level` | `INFO` | Logging level: `DEBUG`, `INFO`, `WARNING`, `ERROR` |
+
+### Example: HTTP Transport
+
+```bash
+aam mcp serve --transport http --port 9000 --allow-write
+```
+
+This starts an SSE server on port 9000 with full read/write access, suitable for remote or multi-client setups.
+
+---
+
+## IDE Integration
+
+### Cursor
+
+Add AAM as an MCP server in your Cursor settings (`.cursor/mcp.json`):
+
+```json
+{
+ "mcpServers": {
+ "aam": {
+ "command": "aam",
+ "args": ["mcp", "serve", "--allow-write"]
+ }
+ }
+}
+```
+
+Once configured, Cursor's AI agent can call AAM tools directly --- searching for packages, installing skills, managing sources --- all without leaving the editor.
+
+### Claude Desktop
+
+Add to your Claude Desktop configuration (`claude_desktop_config.json`):
+
+```json
+{
+ "mcpServers": {
+ "aam": {
+ "command": "aam",
+ "args": ["mcp", "serve", "--allow-write"]
+ }
+ }
+}
+```
+
+### VS Code / Other MCP Clients
+
+Any client that supports the MCP stdio transport can connect by spawning `aam mcp serve` as a subprocess.
+
+---
+
+## Available Tools
+
+AAM exposes **29 tools** split into two categories with a safety-first design: read tools are always available, write tools require explicit opt-in.
+
+### Read Tools (17 tools, always available)
+
+These tools are safe to call at any time --- they never modify state.
+
+#### Package Discovery
+
+| Tool | Description |
+|------|-------------|
+| `aam_search` | Search registries and sources for packages (relevance-ranked) |
+| `aam_list` | List installed packages |
+| `aam_available` | List all available packages from sources |
+| `aam_info` | Show detailed package metadata |
+| `aam_recommend_skills` | Get AI-powered skill recommendations for the current project |
+
+#### Package Integrity
+
+| Tool | Description |
+|------|-------------|
+| `aam_validate` | Validate a package manifest |
+| `aam_verify` | Verify installed file checksums |
+| `aam_diff` | Show unified diffs for modified installed files |
+| `aam_outdated` | Check for outdated packages |
+
+#### Source Management
+
+| Tool | Description |
+|------|-------------|
+| `aam_source_list` | List configured git sources |
+| `aam_source_scan` | Scan a source for artifacts |
+| `aam_source_candidates` | List unpackaged artifact candidates in a source |
+| `aam_source_diff` | Show what changed in a source since last update |
+
+#### Configuration & Diagnostics
+
+| Tool | Description |
+|------|-------------|
+| `aam_config_get` | Read a configuration value |
+| `aam_registry_list` | List configured registries |
+| `aam_doctor` | Run health checks on the AAM installation |
+| `aam_init_info` | Get client initialization status |
+
+### Write Tools (12 tools, require `--allow-write`)
+
+These tools modify state and are excluded by default for safety.
+
+#### Package Management
+
+| Tool | Description |
+|------|-------------|
+| `aam_install` | Install a package and its dependencies |
+| `aam_uninstall` | Remove an installed package |
+| `aam_upgrade` | Upgrade outdated packages |
+| `aam_publish` | Publish a package to a registry |
+
+#### Package Authoring
+
+| Tool | Description |
+|------|-------------|
+| `aam_create_package` | Create a new package from an existing project |
+| `aam_init_package` | Scaffold a new package from scratch |
+
+#### Source Management
+
+| Tool | Description |
+|------|-------------|
+| `aam_source_add` | Add a remote git repository as a source |
+| `aam_source_remove` | Remove a configured source |
+| `aam_source_update` | Fetch upstream changes for sources |
+
+#### Configuration
+
+| Tool | Description |
+|------|-------------|
+| `aam_config_set` | Set a configuration value |
+| `aam_registry_add` | Add a registry endpoint |
+| `aam_init` | Run first-time client initialization |
+
+---
+
+## Available Resources
+
+Resources provide passive, read-only data that agents can fetch at any time without side effects.
+
+| Resource URI | Description |
+|-------------|-------------|
+| `aam://config` | Full merged configuration (global + project) |
+| `aam://packages/installed` | List of all installed packages |
+| `aam://packages/{name}` | Detailed info for a specific package |
+| `aam://registries` | List of configured registries |
+| `aam://manifest` | Current directory's `aam.yaml` manifest |
+| `aam://sources` | List of configured git sources |
+| `aam://sources/{source_id}` | Detailed source info with discovered artifacts |
+| `aam://sources/{source_id}/candidates` | Unpackaged candidate artifacts from a source |
+| `aam://init_status` | Client initialization status |
+
+!!! tip "Scoped package names in resource URIs"
+ For scoped packages like `@author/my-skill`, replace the `/` with `--` in the URI: `aam://packages/author--my-skill`.
+
+---
+
+## Safety Model
+
+AAM's MCP server follows a **read-only-by-default** principle:
+
+| Mode | Read Tools | Write Tools | Use Case |
+|------|-----------|------------|----------|
+| Default (`aam mcp serve`) | 17 tools | Excluded | Safe exploration, search, diagnostics |
+| Write-enabled (`--allow-write`) | 17 tools | 12 tools | Full package management |
+
+This design ensures that agents cannot accidentally install, remove, or publish packages unless explicitly authorized.
+
+---
+
+## Example Agent Workflows
+
+### Discover and Install a Skill
+
+An AI agent connected via MCP might follow this workflow:
+
+1. **Search** for relevant skills: call `aam_search` with a query
+2. **Inspect** a candidate: call `aam_info` for metadata and dependencies
+3. **Install** the skill: call `aam_install` with the package name
+4. **Verify** the installation: call `aam_verify` to check file integrity
+
+### Audit Installed Packages
+
+1. **List** installed packages: call `aam_list`
+2. **Check** for outdated versions: call `aam_outdated`
+3. **Upgrade** stale packages: call `aam_upgrade`
+4. **Run diagnostics**: call `aam_doctor` to confirm health
+
+### Explore Available Sources
+
+1. **List** configured sources: call `aam_source_list`
+2. **Scan** a source: call `aam_source_scan` to discover artifacts
+3. **Find candidates**: call `aam_source_candidates` for unpackaged artifacts
+4. **Add a new source**: call `aam_source_add` with the git URL
+
+---
+
+## Related Documentation
+
+- [Getting Started](../getting-started/installation.md) --- Install AAM and configure your environment
+- [CLI Reference](../cli/index.md) --- The same commands exposed as MCP tools
+- [Platform Guides](../platforms/index.md) --- Deploy artifacts to Cursor, Claude, Copilot, and Codex
+- [Configuration](../configuration/global.md) --- Configure AAM behavior
diff --git a/docs/user_docs/docs/platforms/claude.md b/docs/user_docs/docs/platforms/claude.md
index 4ebf0aa..2889e91 100644
--- a/docs/user_docs/docs/platforms/claude.md
+++ b/docs/user_docs/docs/platforms/claude.md
@@ -2,13 +2,13 @@
## Overview
-**Claude Desktop** is Anthropic's AI assistant application. Projects using Claude Desktop use a `CLAUDE.md` file for project-specific instructions. AAM integrates with Claude by merging agents and instructions into `CLAUDE.md` using marker-based sections, while deploying skills and prompts to the `.claude/` directory.
+**Claude Desktop** is Anthropic's AI assistant application. Projects using Claude Desktop use a `CLAUDE.md` file for project-specific instructions and a `.claude/agents/` directory for custom subagents. AAM integrates with Claude by deploying agents as discrete files in `.claude/agents/`, merging instructions into `CLAUDE.md` using marker-based sections, and deploying skills and prompts to the `.claude/` directory.
**Key features:**
-- Marker-based merging into `CLAUDE.md`
+- Discrete agent files in `.claude/agents/`
+- Marker-based merging of instructions into `CLAUDE.md`
- Preserves user-written content outside markers
- Native SKILL.md support
-- Clean separation of AAM-managed vs manual content
- Project-based instruction organization
## Deployment Mapping
@@ -16,7 +16,7 @@
| Artifact Type | Claude Location | Format | Merging |
|---------------|----------------|--------|---------|
| **Skill** | `.claude/skills//SKILL.md` | SKILL.md (as-is) | No |
-| **Agent** | `CLAUDE.md` | Markdown section | Yes (markers) |
+| **Agent** | `.claude/agents/.md` | Markdown file | No |
| **Prompt** | `.claude/prompts/.md` | Markdown (as-is) | No |
| **Instruction** | `CLAUDE.md` | Markdown section | Yes (markers) |
@@ -56,7 +56,7 @@ Skills are copied as-is to `.claude/skills/`. The entire skill directory structu
### Agents
-Agents are merged into `CLAUDE.md` as markdown sections with AAM markers. The system prompt content is included directly between markers.
+Agents are deployed as discrete `.md` files in `.claude/agents/`. Each agent gets its own file following Claude Code's [custom subagents convention](https://code.claude.com/docs/en/sub-agents).
**Source** (`agents/asvc-audit/`):
@@ -86,12 +86,9 @@ configurations, and documentation against ASVC framework requirements.
- Provide remediation recommendations
```
-**Merged into `CLAUDE.md`:**
+**Deployed to** `.claude/agents/asvc-audit.md`:
```markdown
-
-# ASVC Compliance Auditor
-
You are an ASVC compliance auditor. Your role is to analyze codebases,
configurations, and documentation against ASVC framework requirements.
@@ -100,25 +97,14 @@ configurations, and documentation against ASVC framework requirements.
- Identify compliance gaps against ASVC standards
- Generate structured audit findings
- Provide remediation recommendations
-
-## Available Skills
-
-- asvc-report: Generate ASVC audit reports
-- generic-auditor: General-purpose code auditing
-
-## Available Prompts
-
-- audit-finding: Use for documenting individual findings
-- audit-summary: Use for executive summaries
-
```
**Conversion rules:**
-1. Content wrapped in `` and `` markers
-2. Marker includes artifact name and type (e.g., `asvc-audit agent`)
-3. System prompt content included directly
-4. Skills and prompts listed as references
-5. No YAML frontmatter in merged content
+1. Each agent is a separate `.md` file in `.claude/agents/`
+2. System prompt content written directly to the file
+3. File naming: `.md`
+4. Re-deploying overwrites the existing agent file
+5. `CLAUDE.md` is not modified by agent deployments
### Prompts
@@ -296,12 +282,14 @@ platforms:
| Option | Values | Default | Description |
|--------|--------|---------|-------------|
-| `merge_instructions` | `true`, `false` | `true` | Whether to merge agents/instructions into CLAUDE.md |
+| `merge_instructions` | `true`, `false` | `true` | Whether to merge instructions into CLAUDE.md |
**merge_instructions:**
-- `true`: Agents and instructions merge into `CLAUDE.md` (recommended)
-- `false`: Would deploy as separate files (not typical for Claude)
+- `true`: Instructions merge into `CLAUDE.md` (recommended)
+- `false`: Would deploy instructions as separate files (not typical for Claude)
+
+> **Note:** Agents are always deployed as discrete files in `.claude/agents/` regardless of this setting.
## Installation Example
@@ -331,36 +319,13 @@ aam install @author/asvc-auditor
### After Installation
-**CLAUDE.md** (created or updated):
+**CLAUDE.md** (instructions merged):
```markdown
# My Project
This is my custom project description...
-
-# ASVC Compliance Auditor
-
-You are an ASVC compliance auditor. Your role is to analyze codebases,
-configurations, and documentation against ASVC framework requirements.
-
-## Core Responsibilities
-
-- Identify compliance gaps against ASVC standards
-- Generate structured audit findings
-- Provide remediation recommendations
-
-## Available Skills
-
-- asvc-report: Generate ASVC audit reports
-- generic-auditor: General-purpose code auditing
-
-## Available Prompts
-
-- audit-finding: Use for documenting individual findings
-- audit-summary: Use for executive summaries
-
-
# Python Coding Standards
@@ -381,8 +346,10 @@ configurations, and documentation against ASVC framework requirements.
```
my-project/
-├── CLAUDE.md # Merged agents + instructions
+├── CLAUDE.md # Instructions (marker-based)
├── .claude/
+│ ├── agents/
+│ │ └── asvc-audit.md # Agent file
│ ├── skills/
│ │ ├── author--asvc-report/
│ │ │ ├── SKILL.md
@@ -412,7 +379,7 @@ Downloaded 2 packages (145 KB)
Deployed to claude:
skill: author--asvc-report -> .claude/skills/author--asvc-report/
skill: author--generic-auditor -> .claude/skills/author--generic-auditor/
- agent: asvc-audit -> CLAUDE.md (merged)
+ agent: asvc-audit -> .claude/agents/asvc-audit.md
prompt: audit-finding -> .claude/prompts/author--audit-finding.md
prompt: audit-summary -> .claude/prompts/author--audit-summary.md
instruction: python-standards -> CLAUDE.md (merged)
@@ -424,15 +391,23 @@ Successfully installed @author/asvc-auditor@1.0.0
After deployment, verify that artifacts are correctly placed:
+### Check Agents
+
+```bash
+# List deployed agents
+ls .claude/agents/
+
+# Expected output:
+# asvc-audit.md
+```
+
### Check CLAUDE.md
```bash
-# View CLAUDE.md
+# View CLAUDE.md (instructions only)
cat CLAUDE.md
-# Should contain AAM markers:
-#
-#
+# Should contain instruction markers:
#
#
```
@@ -440,7 +415,7 @@ cat CLAUDE.md
### Check Markers
```bash
-# Find all AAM markers
+# Find all AAM markers in CLAUDE.md
grep "BEGIN AAM" CLAUDE.md
# Expected output:
@@ -479,7 +454,7 @@ ls .claude/prompts/
## Tips & Best Practices
-### Preserve User Content
+### Preserve User Content in CLAUDE.md
**Always write your own content outside AAM markers:**
@@ -488,9 +463,9 @@ ls .claude/prompts/
-
+
...AAM-managed content...
-
+
```
@@ -509,15 +484,6 @@ Structure your `CLAUDE.md` logically:
## Overview
Project description...
-## AAM Agents
-
-...
-
-
-
-...
-
-
## AAM Instructions
...
@@ -537,20 +503,13 @@ aam install @author/code-reviewer
aam install @author/doc-writer
```
-Each agent gets its own marked section in `CLAUDE.md`:
+Each agent gets its own file in `.claude/agents/`:
-```markdown
-
-...
-
-
-
-...
-
-
-
-...
-
+```
+.claude/agents/
+├── asvc-audit.md
+├── code-reviewer.md
+└── doc-writer.md
```
### Skill References
@@ -577,7 +536,7 @@ AAM should never touch content outside markers, but it's good practice.
**Symptom:** `aam install` succeeds but `CLAUDE.md` doesn't exist.
-**Cause:** No agents or instructions in the package.
+**Cause:** No instructions in the package (agents go to `.claude/agents/`, not `CLAUDE.md`).
**Solution:**
@@ -586,7 +545,8 @@ Check what was deployed:
```bash
aam list
-# If only skills/prompts are deployed, CLAUDE.md won't be created
+# If only skills/prompts/agents are deployed, CLAUDE.md won't be created
+# CLAUDE.md is only created when instructions are deployed
```
### Markers Appear in Claude Output
@@ -599,7 +559,7 @@ aam list
### Content Between Markers Disappears
-**Symptom:** Manual edits inside AAM markers are lost.
+**Symptom:** Manual edits inside AAM instruction markers are lost.
**Cause:** AAM overwrites content between markers on deployment.
@@ -610,16 +570,16 @@ Move your custom content outside AAM markers:
```markdown
-
+
...AAM content...
-
+
```
### Duplicate Markers
-**Symptom:** Multiple `` sections.
+**Symptom:** Multiple `` sections.
**Cause:** Manual duplication or AAM deployment bug.
@@ -657,19 +617,25 @@ nano CLAUDE.md
### Cannot Undeploy
-**Symptom:** `aam undeploy` fails to remove markers.
+**Symptom:** `aam undeploy` fails to remove an artifact.
-**Cause:** Markers manually edited or deleted.
+**Cause:** File or markers manually edited or deleted.
**Solution:**
-Manually remove AAM sections from `CLAUDE.md`:
+For agents, manually delete the file:
+
+```bash
+rm .claude/agents/artifact-name.md
+```
+
+For instructions, manually remove AAM sections from `CLAUDE.md`:
```bash
# Edit CLAUDE.md and remove:
-#
+#
# ...content...
-#
+#
```
## Next Steps
diff --git a/docs/user_docs/docs/platforms/copilot.md b/docs/user_docs/docs/platforms/copilot.md
index f539264..3e8dc50 100644
--- a/docs/user_docs/docs/platforms/copilot.md
+++ b/docs/user_docs/docs/platforms/copilot.md
@@ -2,23 +2,23 @@
## Overview
-**GitHub Copilot** is GitHub's AI pair programming tool. It uses `.github/copilot-instructions.md` for project-specific instructions and coding guidelines. AAM integrates with Copilot by merging agents and instructions into `copilot-instructions.md` using marker-based sections, while deploying skills and prompts to the `.github/` directory.
+**GitHub Copilot** is GitHub's AI pair programming tool. It supports custom agents via `.github/agents/*.agent.md`, conditional instructions via `.github/instructions/*.instructions.md`, and reusable prompts via `.github/prompts/`. AAM integrates with Copilot by deploying discrete files into the `.github/` directory structure.
**Key features:**
-- Marker-based merging into `copilot-instructions.md`
-- Preserves user-written content outside markers
+- Discrete agent files in `.github/agents/`
+- Conditional instruction files in `.github/instructions/`
- SKILL.md support in `.github/skills/`
- GitHub-native directory structure
-- Clean separation of AAM-managed vs manual content
+- Prompt files in `.github/prompts/`
## Deployment Mapping
| Artifact Type | Copilot Location | Format | Merging |
|---------------|-----------------|--------|---------|
| **Skill** | `.github/skills//SKILL.md` | SKILL.md (as-is) | No |
-| **Agent** | `.github/copilot-instructions.md` | Markdown section | Yes (markers) |
+| **Agent** | `.github/agents/.agent.md` | Markdown file | No |
| **Prompt** | `.github/prompts/.md` | Markdown (as-is) | No |
-| **Instruction** | `.github/copilot-instructions.md` | Markdown section | Yes (markers) |
+| **Instruction** | `.github/instructions/.instructions.md` | Markdown file | No |
> **Note:** `` uses the double-hyphen convention for scoped packages: `@author/name` becomes `author--name`.
@@ -58,7 +58,7 @@ Skills are copied as-is to `.github/skills/`. The entire skill directory structu
### Agents
-Agents are merged into `.github/copilot-instructions.md` as markdown sections with AAM markers. The system prompt content is included directly between markers.
+Agents are deployed as discrete `.agent.md` files in `.github/agents/`. Each agent gets its own file following Copilot's [custom agents convention](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents).
**Source** (`agents/asvc-audit/`):
@@ -88,12 +88,9 @@ configurations, and documentation against ASVC framework requirements.
- Provide remediation recommendations
```
-**Merged into `.github/copilot-instructions.md`:**
+**Deployed to** `.github/agents/asvc-audit.agent.md`:
```markdown
-
-# ASVC Compliance Auditor
-
You are an ASVC compliance auditor. Your role is to analyze codebases,
configurations, and documentation against ASVC framework requirements.
@@ -102,25 +99,13 @@ configurations, and documentation against ASVC framework requirements.
- Identify compliance gaps against ASVC standards
- Generate structured audit findings
- Provide remediation recommendations
-
-## Available Skills
-
-- asvc-report: Generate ASVC audit reports
-- generic-auditor: General-purpose code auditing
-
-## Available Prompts
-
-- audit-finding: Use for documenting individual findings
-- audit-summary: Use for executive summaries
-
```
**Conversion rules:**
-1. Content wrapped in `` and `` markers
-2. Marker includes artifact name and type (e.g., `asvc-audit agent`)
-3. System prompt content included directly
-4. Skills and prompts listed as references
-5. No YAML frontmatter in merged content
+1. Each agent is a separate `.agent.md` file in `.github/agents/`
+2. System prompt content written directly to the file
+3. File naming: `.agent.md`
+4. Re-deploying overwrites the existing agent file
### Prompts
@@ -174,7 +159,7 @@ description: "Template for documenting audit findings"
### Instructions
-Instructions are merged into `.github/copilot-instructions.md` as markdown sections with AAM markers.
+Instructions are deployed as discrete `.instructions.md` files in `.github/instructions/`. This follows Copilot's [custom instructions convention](https://code.visualstudio.com/docs/copilot/customization/custom-instructions), which supports conditional application via glob patterns.
**Source** (`instructions/python-standards.md`):
@@ -204,10 +189,15 @@ scope: project
- Use Google-style docstring format
```
-**Merged into `.github/copilot-instructions.md`:**
+**Deployed to** `.github/instructions/python-standards.instructions.md`:
```markdown
-
+---
+name: python-standards
+description: "Python coding standards"
+applyTo: "**"
+---
+
# Python Coding Standards
## Type Hints
@@ -225,68 +215,45 @@ scope: project
- Docstrings for all public functions
- Use Google-style docstring format
-
```
-## Marker-Based Merging
+## File-Based Deployment
-AAM uses HTML comment markers to manage sections in `copilot-instructions.md`:
+AAM deploys agents and instructions as discrete files in the `.github/` directory:
-```markdown
-
-...content...
-
-```
+- **Agents:** `.github/agents/.agent.md`
+- **Instructions:** `.github/instructions/.instructions.md`
### How It Works
-1. **First deployment:** If `copilot-instructions.md` doesn't exist, AAM creates it with AAM sections
-2. **Subsequent deployments:** AAM finds existing markers and updates only the content between them
-3. **User content preserved:** Any content outside AAM markers is never modified
-4. **Undeploy:** AAM removes the entire marked section, including markers
-
-### Example copilot-instructions.md
-
-```markdown
-# Coding Guidelines for This Project
-
-Our team follows these standards when writing code...
+1. **First deployment:** AAM creates the target directory and writes the file
+2. **Subsequent deployments:** AAM overwrites the existing file with updated content
+3. **Undeploy:** AAM deletes the file
-## General Principles
+### Example Directory Structure
-- Write clean, readable code
-- Test thoroughly
-- Document complex logic
-
-
-# ASVC Compliance Auditor
-
-You are an ASVC compliance auditor...
-
-
-## Project-Specific Context
-
-This is a compliance auditing tool built for enterprise clients...
-
-
-# Python Coding Standards
-
-- Use type hints on all functions...
-
-
-## Additional Resources
-
-- [Internal wiki](https://wiki.example.com)
-- [Architecture docs](./docs/architecture.md)
+```
+.github/
+├── agents/
+│ └── asvc-audit.agent.md
+├── instructions/
+│ └── python-standards.instructions.md
+├── skills/
+│ └── author--asvc-report/
+│ └── SKILL.md
+├── prompts/
+│ └── author--audit-finding.md
+└── workflows/ # Existing GitHub Actions (untouched)
+ └── ci.yml
```
### Benefits
-- **Coexistence:** AAM-managed and user-written content live together
-- **Clean updates:** Re-deploying updates only AAM sections
-- **Clear boundaries:** Easy to see what AAM manages vs what you wrote
-- **Safe removal:** Undeploying removes only AAM sections
-- **GitHub integration:** Lives in `.github/` with other GitHub configs
+- **Discrete files:** Each agent and instruction is a separate file
+- **Conditional instructions:** `.instructions.md` files support glob-based conditional application
+- **GitHub-native:** Follows official Copilot directory conventions
+- **Clean updates:** Re-deploying overwrites only the specific file
+- **Easy management:** Standard file operations for adding/removing artifacts
## Platform-Specific Configuration
@@ -295,19 +262,14 @@ This is a compliance auditing tool built for enterprise clients...
platforms:
copilot:
- merge_instructions: true # Merge into copilot-instructions.md (default)
+ enabled: true
```
### Configuration Options
| Option | Values | Default | Description |
|--------|--------|---------|-------------|
-| `merge_instructions` | `true`, `false` | `true` | Whether to merge agents/instructions into copilot-instructions.md |
-
-**merge_instructions:**
-
-- `true`: Agents and instructions merge into `copilot-instructions.md` (recommended)
-- `false`: Would deploy as separate files (not typical for Copilot)
+| `enabled` | `true`, `false` | `true` | Whether to deploy artifacts for Copilot |
## Installation Example
@@ -316,10 +278,6 @@ Let's install the `@author/asvc-auditor` package and see how it deploys to GitHu
### Before Installation
```bash
-# Check if copilot-instructions.md exists
-cat .github/copilot-instructions.md
-# File might not exist or contains only user content
-
# Check .github/ directory
ls -R .github/
# Directory might not exist or contains only GitHub workflows
@@ -337,58 +295,15 @@ aam install @author/asvc-auditor
### After Installation
-**.github/copilot-instructions.md** (created or updated):
-
-```markdown
-# Project Instructions
-
-This project implements ASVC compliance auditing...
-
-
-# ASVC Compliance Auditor
-
-You are an ASVC compliance auditor. Your role is to analyze codebases,
-configurations, and documentation against ASVC framework requirements.
-
-## Core Responsibilities
-
-- Identify compliance gaps against ASVC standards
-- Generate structured audit findings
-- Provide remediation recommendations
-
-## Available Skills
-
-- asvc-report: Generate ASVC audit reports
-- generic-auditor: General-purpose code auditing
-
-## Available Prompts
-
-- audit-finding: Use for documenting individual findings
-- audit-summary: Use for executive summaries
-
-
-
-# Python Coding Standards
-
-## Type Hints
-
-- Use type hints on all functions
-- Import from `typing` for complex types
-
-## Style
-
-- Follow PEP 8 style guide
-- Use 4 spaces for indentation
-- Maximum line length: 88 characters
-
-```
-
**Directory structure:**
```
my-project/
├── .github/
-│ ├── copilot-instructions.md # Merged agents + instructions
+│ ├── agents/
+│ │ └── asvc-audit.agent.md # Agent definition
+│ ├── instructions/
+│ │ └── python-standards.instructions.md # Instruction file
│ ├── skills/
│ │ ├── author--asvc-report/
│ │ │ ├── SKILL.md
@@ -420,10 +335,10 @@ Downloaded 2 packages (145 KB)
Deployed to copilot:
skill: author--asvc-report -> .github/skills/author--asvc-report/
skill: author--generic-auditor -> .github/skills/author--generic-auditor/
- agent: asvc-audit -> .github/copilot-instructions.md (merged)
+ agent: asvc-audit -> .github/agents/asvc-audit.agent.md
prompt: audit-finding -> .github/prompts/author--audit-finding.md
prompt: audit-summary -> .github/prompts/author--audit-summary.md
- instruction: python-standards -> .github/copilot-instructions.md (merged)
+ instruction: python-standards -> .github/instructions/python-standards.instructions.md
Successfully installed @author/asvc-auditor@1.0.0
```
@@ -432,28 +347,24 @@ Successfully installed @author/asvc-auditor@1.0.0
After deployment, verify that artifacts are correctly placed:
-### Check copilot-instructions.md
+### Check Agents
```bash
-# View copilot-instructions.md
-cat .github/copilot-instructions.md
-
-# Should contain AAM markers:
-#
-#
-#
-#
+# List deployed agents
+ls .github/agents/
+
+# Expected output:
+# asvc-audit.agent.md
```
-### Check Markers
+### Check Instructions
```bash
-# Find all AAM markers
-grep "BEGIN AAM" .github/copilot-instructions.md
+# List deployed instructions
+ls .github/instructions/
# Expected output:
-#
-#
+# python-standards.instructions.md
```
### Check Skills
@@ -482,38 +393,21 @@ ls .github/prompts/
1. Open project in VS Code or your IDE
2. Ensure GitHub Copilot extension is installed
-3. Copilot automatically reads `.github/copilot-instructions.md`
+3. Copilot automatically reads `.github/agents/` and `.github/instructions/`
4. Test Copilot suggestions reflect the deployed instructions
## Tips & Best Practices
-### Preserve User Content
-
-**Always write your own content outside AAM markers:**
-
-```markdown
-# Our Team's Coding Guidelines
-
-
-
-
-...AAM-managed content...
-
-
-
-```
-
-**Never edit content between markers:**
-
-AAM will overwrite any manual changes inside markers on the next deployment.
-
### GitHub Integration
Copilot's `.github/` directory coexists with other GitHub features:
```
.github/
-├── copilot-instructions.md # AAM-managed + custom instructions
+├── agents/ # AAM-deployed agents
+│ └── asvc-audit.agent.md
+├── instructions/ # AAM-deployed instructions
+│ └── python-standards.instructions.md
├── skills/ # AAM-deployed skills
├── prompts/ # AAM-deployed prompts
├── workflows/ # GitHub Actions (unrelated to AAM)
@@ -523,39 +417,7 @@ Copilot's `.github/` directory coexists with other GitHub features:
└── pull_request_template.md # PR templates (unrelated)
```
-AAM only touches `copilot-instructions.md`, `skills/`, and `prompts/`.
-
-### Organize copilot-instructions.md
-
-Structure your instructions logically:
-
-```markdown
-# Project Instructions
-
-## Overview
-Project description and general guidelines...
-
-## AAM Agents
-
-...
-
-
-
-...
-
-
-## AAM Coding Standards
-
-...
-
-
-
-...
-
-
-## Team-Specific Guidelines
-Your custom guidelines that aren't managed by AAM...
-```
+AAM only touches `agents/`, `instructions/`, `skills/`, and `prompts/`.
### Multiple Instruction Sets
@@ -567,59 +429,27 @@ aam install @standards/typescript
aam install @standards/rust
```
-Each gets its own marked section in `copilot-instructions.md`:
+Each gets its own file in `.github/instructions/`:
-```markdown
-
-...Python guidelines...
-
-
-
-...TypeScript guidelines...
-
-
-
-...Rust guidelines...
-
+```
+.github/instructions/
+├── python-standards.instructions.md
+├── typescript-standards.instructions.md
+└── rust-standards.instructions.md
```
### Copilot Instruction Processing
-GitHub Copilot reads `copilot-instructions.md` and uses it to guide code suggestions. Instructions are most effective when:
+GitHub Copilot reads `.github/instructions/` files and uses them to guide code suggestions. Instructions are most effective when:
- **Clear and specific:** Concrete rules work better than vague guidelines
- **Well-structured:** Use headings to organize by topic
- **Example-driven:** Include code examples where appropriate
- **Focused:** Instructions should be relevant to your project
-
-### Backup Before Major Changes
-
-Before significant updates, backup your instructions:
-
-```bash
-cp .github/copilot-instructions.md .github/copilot-instructions.md.backup
-```
-
-AAM should never touch content outside markers, but it's good practice.
+- **Conditionally scoped:** Use `applyTo` frontmatter for file-type-specific instructions
## Troubleshooting
-### copilot-instructions.md Not Created
-
-**Symptom:** `aam install` succeeds but `copilot-instructions.md` doesn't exist.
-
-**Cause:** No agents or instructions in the package.
-
-**Solution:**
-
-Check what was deployed:
-
-```bash
-aam list
-
-# If only skills/prompts are deployed, copilot-instructions.md won't be created
-```
-
### Copilot Not Following Instructions
**Symptom:** Copilot suggestions don't reflect deployed instructions.
@@ -627,7 +457,7 @@ aam list
**Possible causes:**
1. **Copilot cache:** Copilot might cache instructions
-2. **Content location:** Instructions must be in `.github/copilot-instructions.md`
+2. **Content location:** Instructions must be in `.github/instructions/`
3. **Instruction clarity:** Vague instructions are harder for Copilot to follow
**Solutions:**
@@ -636,9 +466,10 @@ aam list
- Close and reopen VS Code
- Or restart the Copilot extension
-2. **Verify file location:**
+2. **Verify file locations:**
```bash
- ls -la .github/copilot-instructions.md
+ ls -la .github/agents/
+ ls -la .github/instructions/
```
3. **Check instruction clarity:**
@@ -646,60 +477,17 @@ aam list
- Use concrete examples
- Focus on actionable guidelines
-### Markers Appear in Copilot Context
-
-**Symptom:** HTML comments visible in Copilot's context window.
-
-**Cause:** This is expected - HTML comments are standard markdown.
-
-**Solution:** Copilot typically ignores HTML comments. If they're affecting behavior, it's a Copilot issue, not AAM.
-
-### Content Between Markers Disappears
-
-**Symptom:** Manual edits inside AAM markers are lost.
-
-**Cause:** AAM overwrites content between markers on deployment.
-
-**Solution:**
-
-Move your custom content outside AAM markers:
-
-```markdown
-
-
-
-...AAM content...
-
-
-
-```
-
-### Duplicate Markers
-
-**Symptom:** Multiple `` sections.
-
-**Cause:** Manual duplication or AAM deployment bug.
-
-**Solution:**
-
-Manually remove duplicate sections, keeping only one:
-
-```bash
-# Edit copilot-instructions.md and remove duplicate marker pairs
-code .github/copilot-instructions.md
-```
-
### Skills Not Recognized
**Symptom:** Skills in `.github/skills/` not available in Copilot.
**Cause:** GitHub Copilot's skill support is experimental and may not be fully functional.
-**Note:** As of early 2024, Copilot's SKILL.md support is limited. AAM deploys skills to `.github/skills/` for future compatibility, but Copilot may not use them yet.
+**Note:** Copilot's SKILL.md support is limited. AAM deploys skills to `.github/skills/` for future compatibility, but Copilot may not use them yet.
**Workaround:**
-Reference skills in `copilot-instructions.md`:
+Reference skills in an instruction file in `.github/instructions/`:
```markdown
## Available Skills
@@ -713,20 +501,20 @@ Skills are located in `.github/skills/`:
### Cannot Undeploy
-**Symptom:** `aam undeploy` fails to remove markers.
+**Symptom:** `aam undeploy` fails to remove an agent or instruction.
-**Cause:** Markers manually edited or deleted.
+**Cause:** File may have been manually renamed or deleted.
**Solution:**
-Manually remove AAM sections from `copilot-instructions.md`:
+Manually delete the file:
```bash
-# Edit and remove:
-#
-# ...content...
-#
-code .github/copilot-instructions.md
+# Remove agent file
+rm .github/agents/artifact-name.agent.md
+
+# Remove instruction file
+rm .github/instructions/artifact-name.instructions.md
```
## Next Steps
diff --git a/docs/user_docs/docs/platforms/index.md b/docs/user_docs/docs/platforms/index.md
index c498a3a..6f516a7 100644
--- a/docs/user_docs/docs/platforms/index.md
+++ b/docs/user_docs/docs/platforms/index.md
@@ -302,6 +302,27 @@ aam platforms
# Valid platforms: cursor, copilot, claude, codex
```
+## Converting Between Platforms
+
+Use `aam convert` to migrate existing platform configurations between any two platforms:
+
+```bash
+# Convert Cursor configs to Copilot format
+aam convert -s cursor -t copilot
+
+# Preview conversion without writing files
+aam convert -s copilot -t claude --dry-run
+
+# Convert only instructions
+aam convert -s cursor -t claude --type instruction
+```
+
+The convert command handles field mapping (e.g. Cursor `globs` ↔ Copilot `applyTo`),
+strips unsupported metadata, and warns about lossy conversions. Skills use a
+universal format and are directly copied.
+
+See [`aam convert`](../cli/convert.md) for the full reference.
+
## Next Steps
Explore each platform's detailed deployment guide:
@@ -314,5 +335,6 @@ Explore each platform's detailed deployment guide:
Or continue learning:
- [Platform Adapters Concept](../concepts/platform-adapters.md) - Deep dive into adapter architecture
+- [`aam convert` CLI Reference](../cli/convert.md) - Cross-platform conversion command
- [Configuration: Project config](../configuration/project.md) - Platform settings in config
- [Getting Started: Quick Start](../getting-started/quickstart.md) - Hands-on package installation
diff --git a/docs/user_docs/docs/troubleshooting/migration.md b/docs/user_docs/docs/troubleshooting/migration.md
index 484097f..df51055 100644
--- a/docs/user_docs/docs/troubleshooting/migration.md
+++ b/docs/user_docs/docs/troubleshooting/migration.md
@@ -241,20 +241,52 @@ aam registry add file:///home/user/local-registry --name local --default
## Migrating Between Platforms
+### Using `aam convert` (Recommended)
+
+The `aam convert` command directly converts platform configuration files
+between Cursor, Copilot, Claude, and Codex:
+
+```bash
+# Preview the conversion first
+aam convert -s cursor -t claude --dry-run
+
+# Run the conversion
+aam convert -s cursor -t claude
+
+# Convert only specific artifact types
+aam convert -s cursor -t copilot --type instruction
+
+# Force overwrite existing targets (creates .bak backups)
+aam convert -s copilot -t cursor --force
+```
+
+This handles instructions, agents, prompts, and skills — mapping platform-specific
+fields where possible and warning about metadata that cannot be converted.
+
+See [`aam convert`](../cli/convert.md) for the full reference.
+
### Cursor to Claude
-#### 1. Install Package
+#### 1. Convert existing configs
+
+```bash
+aam convert -s cursor -t claude
+```
+
+This converts:
+- `.cursor/rules/*.mdc` → Appended to `CLAUDE.md` with section markers
+- `.cursor/agents/*.md` → `.claude/agents/*.md`
+- `.cursor/prompts/*.md` → `.claude/prompts/*.md`
+- `.cursor/skills/*/` → `.claude/skills/*/`
+
+#### 2. Install AAM packages for the new platform
```bash
aam config set active_platforms claude
aam install @author/my-package
```
-AAM automatically converts:
-- `.cursor/skills/` → `.claude/skills/`
-- `.cursor/rules/` → `CLAUDE.md`
-
-#### 2. Verify Deployment
+#### 3. Verify Deployment
```bash
ls .claude/skills/
diff --git a/docs/user_docs/docs/tutorials/index.md b/docs/user_docs/docs/tutorials/index.md
index b0018fd..1b978fa 100644
--- a/docs/user_docs/docs/tutorials/index.md
+++ b/docs/user_docs/docs/tutorials/index.md
@@ -14,7 +14,7 @@ All tutorials include:
- **Clear explanations** of what's happening at each step
!!! tip "New to AAM?"
- Start with [Packaging Existing Skills](package-existing-skills.md) to learn the basics, then move on to [Building a Code Review Package](build-code-review-package.md) for a complete end-to-end example.
+ Start with [Installing Skills from Sources](install-from-sources.md) to get up and running quickly, then try [Skill Consolidation](skill-consolidation.md) to build a curated team package. For package authoring, begin with [Packaging Existing Skills](package-existing-skills.md).
---
@@ -22,6 +22,17 @@ All tutorials include:
+- :material-download:{ .lg .middle } __Installing Skills from Sources__ {#install-from-sources}
+
+ ---
+
+ Set up AAM, connect to community skill repositories, discover artifacts, and install skills into your project.
+
+ **Difficulty:** Beginner
+ **Time:** 10 minutes
+
+ [:octicons-arrow-right-24: Start tutorial](install-from-sources.md)
+
- :material-package-variant:{ .lg .middle } __Packaging Existing Skills__ {#packaging-existing-skills}
---
@@ -66,6 +77,17 @@ All tutorials include:
[:octicons-arrow-right-24: Start tutorial](multi-platform-deployment.md)
+- :material-layers-triple:{ .lg .middle } __Skill Consolidation__ {#skill-consolidation}
+
+ ---
+
+ Cherry-pick skills from multiple community sources and your own project, then bundle them into a single curated team package.
+
+ **Difficulty:** Intermediate
+ **Time:** 20 minutes
+
+ [:octicons-arrow-right-24: Start tutorial](skill-consolidation.md)
+
- :material-graph:{ .lg .middle } __Working with Dependencies__
---
@@ -97,6 +119,8 @@ Some tutorials have additional prerequisites, which are listed at the start of e
Once you've completed these tutorials, you'll be ready to:
+- Install and manage community skills from upstream sources
+- Consolidate skills from multiple sources into curated team packages
- Package your own skills and agents for distribution
- Set up a team registry for sharing artifacts
- Deploy packages across multiple AI platforms
diff --git a/docs/user_docs/docs/tutorials/install-from-sources.md b/docs/user_docs/docs/tutorials/install-from-sources.md
new file mode 100644
index 0000000..0b91082
--- /dev/null
+++ b/docs/user_docs/docs/tutorials/install-from-sources.md
@@ -0,0 +1,542 @@
+# Tutorial: Installing Skills from Sources
+
+**Difficulty:** Beginner
+**Time:** 10 minutes
+
+## What You'll Learn
+
+In this tutorial, you'll walk through the complete workflow of setting up AAM, connecting to community skill sources, discovering artifacts, and installing them into your project. By the end, you'll have community skills deployed and working in your IDE.
+
+## Prerequisites
+
+- AAM installed (`aam --version` works)
+- A project directory where you want to use skills
+- Git installed (for source cloning)
+
+---
+
+## The Scenario
+
+You've just started a new project and want to supercharge your AI coding assistant with community skills. Rather than writing everything from scratch, you'll:
+
+1. Initialize AAM and connect to community skill repositories
+2. Browse and search for useful skills
+3. Install skills directly into your project
+4. Verify the installation and manage updates
+
+---
+
+## Step 1: Initialize AAM
+
+Navigate to your project directory and run the setup:
+
+```bash
+cd ~/my-project
+aam init
+```
+
+AAM detects your IDE platform and walks you through setup:
+
+```
+ Detected platform: cursor
+Choose platform [cursor]:
+Register community artifact sources? [Y/n] y
+
+✓ AAM initialized successfully.
+ Platform: cursor
+ Config: ~/.aam/config.yaml
+ Sources: 4 community source(s) added
+
+Next steps:
+ aam search — Find packages to install
+ aam install — Install a package
+ aam list --available — Browse source artifacts
+ aam pkg init — Create a new package
+```
+
+!!! info "What just happened?"
+ `aam init` did two things:
+
+ 1. **Set your platform** — AAM knows to deploy skills to `.cursor/skills/`, agents to `.cursor/rules/`, etc.
+ 2. **Registered default sources** — Added 4 curated community repositories as git sources:
+ - `github/awesome-copilot`
+ - `openai/skills:.curated`
+ - `anthropics/skills`
+ - `microsoft/skills`
+
+ If you missed adding default sources during init, run `aam source enable-defaults` at any time.
+
+For non-interactive setup (e.g., in CI or scripts):
+
+```bash
+aam init --yes
+```
+
+This auto-detects the platform and registers default sources without prompting.
+
+---
+
+## Step 2: Update Source Caches
+
+The sources are registered but not yet cloned. Fetch them:
+
+```bash
+aam source update --all
+```
+
+```
+Updating all sources...
+
+ github/awesome-copilot
+ ✓ Cloned https://github.com/github/awesome-copilot (main)
+ Found 12 artifacts (8 skills, 2 agents, 2 prompts)
+
+ openai/skills:.curated
+ ✓ Cloned https://github.com/openai/skills (main) → skills/.curated
+ Found 6 artifacts (6 skills)
+
+ anthropics/skills
+ ✓ Cloned https://github.com/anthropics/skills (main)
+ Found 4 artifacts (3 skills, 1 agent)
+
+ microsoft/skills
+ ✓ Cloned https://github.com/microsoft/skills (main) → .github/skills
+ Found 5 artifacts (5 skills)
+
+✓ Updated 4 sources (27 artifacts total)
+```
+
+!!! tip "Where are the clones?"
+ Source repositories are cached at `~/.aam/cache/git/{host}/{owner}/{repo}/`. This cache is shared across all your projects — you only clone once.
+
+---
+
+## Step 3: Browse Available Skills
+
+See everything available across all sources:
+
+```bash
+aam list --available
+```
+
+```
+Source: github/awesome-copilot
+ Type Name Description
+ skill commit-message-writer Write conventional commit messages
+ skill code-reviewer Review code for best practices
+ skill test-generator Generate unit tests
+ skill documentation-writer Write project documentation
+ ...
+
+Source: openai/skills:.curated
+ Type Name Description
+ skill code-review Comprehensive code review
+ skill refactoring Suggest refactoring improvements
+ ...
+
+Source: anthropics/skills
+ Type Name Description
+ skill skill-creator Create new skills from descriptions
+ skill debugging-assistant Systematic debugging helper
+ ...
+```
+
+### Search for Specific Skills
+
+Use `aam search` to find skills by keyword:
+
+```bash
+aam search review
+```
+
+```
+Search results for "review" (3 matches)
+
+Name Version Type Source Description
+code-reviewer — skill github/awesome-copilot Review code for best practices
+code-review — skill openai/skills:.curated Comprehensive code review
+```
+
+Filter by artifact type:
+
+```bash
+aam search deploy --type skill
+```
+
+---
+
+## Step 4: Install a Skill
+
+Install a skill by name:
+
+```bash
+aam install code-reviewer
+```
+
+```
+Searching sources for 'code-reviewer'...
+ Found code-reviewer (skill) in source github/awesome-copilot
+
+Installing code-reviewer from source github/awesome-copilot...
+ ✓ Copied skill files
+ ✓ Generated manifest
+ ✓ Computed checksums
+ ✓ Deployed to .cursor/skills/code-reviewer/
+
+✓ Installed code-reviewer from source github/awesome-copilot @ a1b2c3d
+```
+
+That's it — the skill is now installed and deployed to your IDE.
+
+### What Happened Under the Hood
+
+1. **Resolved** — AAM searched all configured sources and found `code-reviewer` in `github/awesome-copilot`
+2. **Copied** — Skill files were copied from the source cache to `.aam/packages/code-reviewer/`
+3. **Manifest** — An `aam.yaml` was generated with provenance metadata (source URL, commit SHA)
+4. **Checksums** — Per-file SHA-256 checksums were computed for integrity verification
+5. **Deployed** — The skill was deployed to `.cursor/skills/code-reviewer/` (based on your configured platform)
+6. **Locked** — The lock file (`.aam/aam-lock.yaml`) was updated with the exact version and commit
+
+---
+
+## Step 5: Install from a Specific Source
+
+When multiple sources have skills with similar names, use the **qualified name** to be explicit:
+
+```bash
+# Install from a specific source using: source-name/artifact-name
+aam install openai/skills:.curated/code-review
+```
+
+```
+Searching sources for 'openai/skills:.curated/code-review'...
+ Found code-review (skill) in source openai/skills:.curated
+
+✓ Installed code-review from source openai/skills:.curated @ d4e5f6a
+```
+
+!!! tip "Finding qualified names"
+ The qualified name format is `source-name/artifact-name`. You can discover these from:
+
+ - `aam search ` — the **Source** column shows the source name
+ - `aam list --available` — the group header is the source name
+ - `aam info source-name/artifact-name` — shows details and the install command
+
+---
+
+## Step 6: Verify the Installation
+
+Check what's installed:
+
+```bash
+aam list
+```
+
+```
+Installed packages:
+ code-reviewer — 1 artifact (1 skill) source: github/awesome-copilot
+ code-review — 1 artifact (1 skill) source: openai/skills:.curated
+```
+
+Verify file integrity:
+
+```bash
+aam verify
+```
+
+```
+Verifying installed packages...
+
+ code-reviewer
+ ✓ All files match checksums (2 files)
+
+ code-review
+ ✓ All files match checksums (3 files)
+
+✓ All packages verified
+```
+
+Check what was deployed to your IDE:
+
+```bash
+ls .cursor/skills/
+```
+
+```
+code-review/
+code-reviewer/
+```
+
+---
+
+## Step 7: Get Package Details
+
+View detailed information about an installed package:
+
+```bash
+aam info code-reviewer
+```
+
+```
+code-reviewer
+ Type: skill
+ Source: github/awesome-copilot
+ Commit: a1b2c3d
+ Installed: .aam/packages/code-reviewer/
+ Deployed: .cursor/skills/code-reviewer/
+
+ Provenance:
+ source_url: https://github.com/github/awesome-copilot
+ source_ref: main
+ source_commit: a1b2c3d4e5f6
+ fetched_at: 2026-02-13T10:30:00Z
+```
+
+---
+
+## Step 8: Check for Updates
+
+After some time, check if upstream sources have new content:
+
+```bash
+# Fetch latest from all sources
+aam source update --all
+```
+
+```
+Updating all sources...
+
+ github/awesome-copilot
+ ✓ Updated (a1b2c3d → f7g8h9i)
+ 2 new artifacts, 1 modified
+
+ openai/skills:.curated
+ ✓ Already up to date
+
+ anthropics/skills
+ ✓ Updated (j1k2l3m → n4o5p6q)
+ 1 new artifact
+```
+
+Check which installed packages have upstream changes:
+
+```bash
+aam outdated
+```
+
+```
+Outdated packages:
+
+ Package Current Commit Latest Commit Source
+ code-reviewer a1b2c3d f7g8h9i github/awesome-copilot
+```
+
+Upgrade outdated packages:
+
+```bash
+aam upgrade code-reviewer
+```
+
+```
+Upgrading code-reviewer...
+ Source: github/awesome-copilot
+ a1b2c3d → f7g8h9i
+
+ ✓ Updated skill files
+ ✓ Recomputed checksums
+ ✓ Redeployed to .cursor/skills/code-reviewer/
+
+✓ Upgraded code-reviewer
+```
+
+Or upgrade everything at once:
+
+```bash
+aam upgrade
+```
+
+---
+
+## Step 9: Add Your Own Sources
+
+Beyond the defaults, add any Git repository as a source:
+
+```bash
+# GitHub shorthand
+aam source add myorg/ai-skills
+
+# Full HTTPS URL
+aam source add https://github.com/myorg/ai-skills
+
+# With a branch and subdirectory
+aam source add myorg/monorepo@develop:skills/curated
+
+# SSH URL
+aam source add git@github.com:myorg/private-skills.git
+```
+
+After adding, update and browse:
+
+```bash
+aam source update myorg/ai-skills
+aam list --available
+```
+
+### Manage Sources
+
+```bash
+# List all configured sources
+aam source list
+
+# Scan a specific source for artifacts
+aam source scan anthropics/skills
+
+# Remove a source (optionally delete cached clone)
+aam source remove myorg/old-skills --purge-cache
+```
+
+---
+
+## Step 10: Uninstall a Package
+
+If you no longer need a skill:
+
+```bash
+aam uninstall code-review
+```
+
+```
+Uninstalling code-review...
+ ✓ Removed from .aam/packages/code-review/
+ ✓ Undeployed from .cursor/skills/code-review/
+ ✓ Updated lock file
+
+✓ Uninstalled code-review
+```
+
+---
+
+## Install Options Reference
+
+Here's a quick reference for `aam install` options:
+
+```bash
+# Install latest from any source
+aam install
+
+# Install from a specific source (qualified name)
+aam install /
+
+# Install from a local directory
+aam install ./path/to/package/
+
+# Install from an .aam archive
+aam install my-package-1.0.0.aam
+
+# Install without deploying to IDE
+aam install --no-deploy
+
+# Force reinstall
+aam install --force
+
+# Preview what would happen
+aam install --dry-run
+
+# Install to a specific platform
+aam install --platform claude
+
+# Install globally (available across all projects)
+aam install -g
+```
+
+---
+
+## Next Steps
+
+Now that you know how to discover and install skills, you can:
+
+- **Consolidate skills** — Bundle favorites into a team package with [Skill Consolidation](skill-consolidation.md)
+- **Create your own** — Build a package from scratch in [Building a Code Review Package](build-code-review-package.md)
+- **Package existing skills** — Wrap what you already have in [Packaging Existing Skills](package-existing-skills.md)
+- **Deploy to multiple platforms** — Configure multi-platform deployment in [Multi-Platform Deployment](multi-platform-deployment.md)
+- **Manage dependencies** — Learn about dependency resolution in [Working with Dependencies](working-with-dependencies.md)
+
+---
+
+## Troubleshooting
+
+### Source clone fails
+
+**Problem:** `aam source update` fails with a git error
+
+**Solutions:**
+
+- Check your internet connection
+- Verify the repository URL is correct: `aam source list`
+- For private repos, ensure SSH keys or credentials are configured
+- Try removing and re-adding: `aam source remove --purge-cache` then `aam source add `
+
+### Artifact not found
+
+**Problem:** `aam install my-skill` says "not found"
+
+**Solutions:**
+
+- Run `aam source update --all` to refresh caches
+- Search to verify the name: `aam search my-skill`
+- Use `aam list --available` to see all available artifacts
+- Check if the skill requires a qualified name: `aam search my-skill` and note the Source column
+
+### Deployment fails
+
+**Problem:** Skill is installed but not deployed to the IDE
+
+**Solutions:**
+
+- Check your platform: `aam config get default_platform`
+- Try redeploying: `aam install --force`
+- Verify the deploy path exists: `ls .cursor/skills/` (for Cursor)
+- Restart your IDE to pick up new skills
+
+### Lock file conflicts
+
+**Problem:** Multiple team members get different versions
+
+**Solution:** Commit `.aam/aam-lock.yaml` to version control. The lock file records exact source commits, so everyone gets the same versions:
+
+```bash
+git add .aam/aam-lock.yaml
+git commit -m "Lock AAM package versions"
+```
+
+---
+
+## Summary
+
+In this tutorial, you learned how to:
+
+- Initialize AAM and configure your platform with `aam init`
+- Update source caches with `aam source update --all`
+- Browse available artifacts with `aam list --available` and `aam search`
+- Install skills from sources with `aam install`
+- Use qualified names to install from a specific source
+- Verify installations with `aam verify`
+- Check for and apply updates with `aam outdated` and `aam upgrade`
+- Add custom git sources with `aam source add`
+- Uninstall packages with `aam uninstall`
+
+**Key Commands:**
+
+```bash
+aam init # Set up AAM (platform + sources)
+aam source update --all # Clone/refresh source caches
+aam list --available # Browse all available artifacts
+aam search # Search for skills
+aam install # Install a skill
+aam install / # Install from specific source
+aam verify # Check file integrity
+aam outdated # List outdated packages
+aam upgrade # Upgrade to latest versions
+```
+
+Ready to consolidate your favorite skills into a team package? Continue to [Skill Consolidation](skill-consolidation.md)!
diff --git a/docs/user_docs/docs/tutorials/skill-consolidation.md b/docs/user_docs/docs/tutorials/skill-consolidation.md
new file mode 100644
index 0000000..ac472f9
--- /dev/null
+++ b/docs/user_docs/docs/tutorials/skill-consolidation.md
@@ -0,0 +1,606 @@
+# Tutorial: Skill Consolidation
+
+**Difficulty:** Intermediate
+**Time:** 20 minutes
+
+## What You'll Learn
+
+In this tutorial, you'll learn how to consolidate skills from multiple upstream sources and your own project into a single, curated AAM package. This is the "playlist" approach — pick the best skills from the community, add your own, and distribute a single package that gives your team everything they need.
+
+## Prerequisites
+
+- AAM installed (`aam --version` works)
+- `aam init` completed (platform configured, default sources registered)
+- Basic familiarity with `aam source` and `aam install` commands
+
+!!! tip "New to sources?"
+ If you haven't set up sources yet, run `aam init` first, then `aam source update --all` to clone the default community repositories. See [Git Sources](../concepts/git-sources.md) for background.
+
+---
+
+## The Scenario
+
+Your team uses skills from several places:
+
+- **Community sources** — Useful skills from `openai/skills`, `anthropics/skills`, and `github/awesome-copilot`
+- **Internal skills** — Custom skills you've written for your specific stack (e.g., internal API conventions, deployment workflows)
+- **Modified community skills** — Community skills you've tweaked to fit your team's coding standards
+
+You want to:
+
+1. Cherry-pick the best community skills
+2. Combine them with your internal skills
+3. Bundle everything into a single team package
+4. Version and distribute it so everyone stays in sync
+
+---
+
+## Step 1: Review Available Skills
+
+First, let's see what's available across all configured sources:
+
+```bash
+aam list --available
+```
+
+**Expected output:**
+
+```
+Source: github/awesome-copilot
+ skill commit-message-writer Write conventional commit messages
+ skill code-reviewer Review code for best practices
+ skill test-generator Generate unit tests
+
+Source: openai/skills:.curated
+ skill code-review Comprehensive code review
+ skill refactoring Suggest refactoring improvements
+ skill documentation-writer Generate documentation
+
+Source: anthropics/skills
+ skill skill-creator Create new skills from descriptions
+ skill debugging-assistant Systematic debugging helper
+
+Source: microsoft/skills
+ skill csharp-analyzer C# code analysis
+ skill azure-deployer Azure deployment helper
+```
+
+You can also search for specific skills:
+
+```bash
+aam search review --type skill
+```
+
+```
+Search results for "review" (3 matches)
+
+Name Version Type Source Description
+code-reviewer — skill github/awesome-copilot Review code for best practices
+code-review — skill openai/skills:.curated Comprehensive code review
+```
+
+---
+
+## Step 2: Create the Consolidation Package
+
+Create a directory for your consolidated package:
+
+```bash
+mkdir team-skills && cd team-skills
+```
+
+Now use `aam pkg create --from-source` to pull skills from remote sources. Start with the first source:
+
+```bash
+aam pkg create --from-source anthropics/skills \
+ --type skill \
+ --name @myteam/consolidated-skills \
+ --version 1.0.0 \
+ --description "Curated team skill set" \
+ --author "My Team" \
+ --output-dir . \
+ --yes
+```
+
+**Expected output:**
+
+```
+Scanning source 'anthropics/skills' for skill artifacts...
+
+Found 2 artifacts:
+ [x] 1. skill-creator skills/skill-creator/SKILL.md
+ [x] 2. debugging-assistant skills/debugging-assistant/SKILL.md
+
+Creating package...
+ ✓ Created aam.yaml
+ ✓ Copied skill-creator → skills/skill-creator/
+ ✓ Copied debugging-assistant → skills/debugging-assistant/
+ ✓ Added provenance metadata
+ ✓ Computed file checksums
+
+✓ Package created: @myteam/consolidated-skills@1.0.0
+ 2 artifacts (2 skills)
+```
+
+!!! info "What's `--from-source`?"
+ The `--from-source` flag tells `aam pkg create` to pull artifacts from a registered git source instead of scanning the local project directory. AAM copies the files from the source cache and records provenance (source URL, commit SHA, fetch timestamp) in the manifest.
+
+---
+
+## Step 3: Add Skills from Other Sources
+
+Now add skills from additional sources. Use `aam pkg create --from-source` with `--artifacts` to cherry-pick specific skills:
+
+```bash
+# Add just the code-review skill from openai/skills:.curated
+aam pkg create --from-source openai/skills:.curated \
+ --artifacts code-review \
+ --output-dir . \
+ --yes
+```
+
+```
+Found 1 matching artifact:
+ [x] 1. code-review skills/.curated/code-review/SKILL.md
+
+ ✓ Copied code-review → skills/code-review/
+ ✓ Updated aam.yaml (3 skills total)
+```
+
+```bash
+# Add the commit-message-writer from github/awesome-copilot
+aam pkg create --from-source github/awesome-copilot \
+ --artifacts commit-message-writer \
+ --output-dir . \
+ --yes
+```
+
+```
+ ✓ Copied commit-message-writer → skills/commit-message-writer/
+ ✓ Updated aam.yaml (4 skills total)
+```
+
+!!! tip "Cherry-picking with `--artifacts`"
+ Use `--artifacts` to select specific artifacts by name. You can specify multiple names separated by commas: `--artifacts code-review,refactoring`. Without `--artifacts`, all discovered artifacts from the source are included.
+
+---
+
+## Step 4: Add Your Own Internal Skills
+
+Now add your team's custom skills. Create them directly in the package:
+
+```bash
+# Create a custom skill for your internal API conventions
+mkdir -p skills/internal-api-conventions
+cat > skills/internal-api-conventions/SKILL.md << 'EOF'
+---
+name: internal-api-conventions
+description: Enforce team API design conventions and patterns
+---
+
+# Internal API Conventions
+
+## When to Use
+
+Use this skill when designing or reviewing REST API endpoints.
+
+## Conventions
+
+### Naming
+- Use kebab-case for URL paths: `/user-profiles/`, not `/userProfiles/`
+- Use plural nouns for collections: `/users/`, not `/user/`
+- Use `snake_case` for JSON field names
+
+### Versioning
+- Always version APIs: `/api/v1/...`
+- Never break backward compatibility in the same major version
+
+### Error Responses
+- Always return structured errors:
+ ```json
+ {"error": {"code": "NOT_FOUND", "message": "User not found", "details": {}}}
+ ```
+- Use standard HTTP status codes
+
+### Pagination
+- Use cursor-based pagination for lists
+- Always include `next_cursor` and `has_more` fields
+
+## Review Checklist
+
+When reviewing API changes:
+
+1. ✅ Endpoints follow naming conventions
+2. ✅ Error responses use the standard format
+3. ✅ New fields don't break existing clients
+4. ✅ Pagination is implemented for list endpoints
+5. ✅ Input validation returns 422 with field-level errors
+EOF
+```
+
+```bash
+# Create a deployment workflow skill
+mkdir -p skills/deploy-workflow
+cat > skills/deploy-workflow/SKILL.md << 'EOF'
+---
+name: deploy-workflow
+description: Guide through the team deployment process
+---
+
+# Deployment Workflow
+
+## When to Use
+
+Use this skill when preparing or executing a deployment.
+
+## Pre-Deployment Checklist
+
+1. **Tests pass** — All CI checks are green
+2. **Changelog updated** — Version bump and changelog entry added
+3. **Database migrations** — Any pending migrations are reviewed
+4. **Feature flags** — New features are behind flags if needed
+5. **Rollback plan** — Know how to revert if something goes wrong
+
+## Deployment Steps
+
+### Staging
+```bash
+git tag -a v{version}-rc.1 -m "Release candidate"
+git push origin v{version}-rc.1
+# Wait for staging deploy to complete
+# Run smoke tests against staging
+```
+
+### Production
+```bash
+git tag -a v{version} -m "Release v{version}"
+git push origin v{version}
+# Monitor error rates for 30 minutes
+# Verify key user flows
+```
+
+## Rollback
+
+If issues are detected:
+```bash
+# Revert to previous version
+git revert HEAD
+git push origin main
+# Or: redeploy the previous tag
+```
+EOF
+```
+
+Now update the manifest to include your custom skills:
+
+```bash
+cat >> aam.yaml << 'EOF'
+
+# Added manually — custom skills below are appended to the artifacts list
+EOF
+```
+
+Or better yet, just edit `aam.yaml` to add them to the existing artifacts list:
+
+```yaml title="aam.yaml (updated)"
+name: "@myteam/consolidated-skills"
+version: 1.0.0
+description: Curated team skill set
+author: My Team
+license: Apache-2.0
+
+artifacts:
+ skills:
+ # From anthropics/skills
+ - name: skill-creator
+ path: skills/skill-creator/
+ description: Create new skills from descriptions
+ - name: debugging-assistant
+ path: skills/debugging-assistant/
+ description: Systematic debugging helper
+
+ # From openai/skills:.curated
+ - name: code-review
+ path: skills/code-review/
+ description: Comprehensive code review
+
+ # From github/awesome-copilot
+ - name: commit-message-writer
+ path: skills/commit-message-writer/
+ description: Write conventional commit messages
+
+ # Internal team skills
+ - name: internal-api-conventions
+ path: skills/internal-api-conventions/
+ description: Enforce team API design conventions and patterns
+ - name: deploy-workflow
+ path: skills/deploy-workflow/
+ description: Guide through the team deployment process
+
+dependencies: {}
+
+platforms:
+ cursor:
+ skill_scope: project
+ claude:
+ merge_instructions: true
+ copilot:
+ merge_instructions: true
+```
+
+---
+
+## Step 5: Review the Package Structure
+
+Your consolidated package should now look like this:
+
+```bash
+tree -L 2
+```
+
+```
+.
+├── aam.yaml
+└── skills/
+ ├── code-review/
+ ├── commit-message-writer/
+ ├── debugging-assistant/
+ ├── deploy-workflow/
+ ├── internal-api-conventions/
+ └── skill-creator/
+```
+
+Six skills from three different sources plus your own — all in one package.
+
+---
+
+## Step 6: Validate and Pack
+
+Validate the consolidated package:
+
+```bash
+aam pkg validate
+```
+
+```
+Validating @myteam/consolidated-skills@1.0.0...
+
+Manifest:
+ ✓ name: valid scoped format
+ ✓ version: valid semver (1.0.0)
+ ✓ description: present
+ ✓ author: present
+
+Artifacts:
+ ✓ skill: skill-creator
+ ✓ skill: debugging-assistant
+ ✓ skill: code-review
+ ✓ skill: commit-message-writer
+ ✓ skill: internal-api-conventions
+ ✓ skill: deploy-workflow
+
+✓ Package is valid and ready to publish
+```
+
+Build the archive:
+
+```bash
+aam pkg pack
+```
+
+```
+Building @myteam/consolidated-skills@1.0.0...
+
+✓ Built myteam-consolidated-skills-1.0.0.aam (18.5 KB)
+ 6 skills, checksums computed
+```
+
+---
+
+## Step 7: Distribute to Your Team
+
+### Option A: Publish to a Registry
+
+```bash
+# Publish to your team's registry
+aam pkg publish --registry team-registry
+```
+
+Your teammates can then install with a single command:
+
+```bash
+aam install @myteam/consolidated-skills
+```
+
+### Option B: Share the Archive Directly
+
+Share the `.aam` file via Slack, email, or a shared drive:
+
+```bash
+# Teammate installs from the archive
+aam install ./myteam-consolidated-skills-1.0.0.aam
+```
+
+### Option C: Use a Git Repository as a Source
+
+Commit the package to a Git repository and add it as a source:
+
+```bash
+# In the package directory
+git init && git add . && git commit -m "Initial consolidated skills"
+git remote add origin git@github.com:myteam/team-skills.git
+git push -u origin main
+
+# Teammates add it as a source
+aam source add myteam/team-skills
+aam install consolidated-skills
+```
+
+---
+
+## Step 8: Keep It Updated
+
+When upstream sources release new skills or updates, you can refresh your package:
+
+```bash
+# Update all sources to fetch latest changes
+aam source update --all
+
+# Check what changed
+aam outdated
+
+# Re-create from source to pick up changes
+aam pkg create --from-source anthropics/skills \
+ --artifacts skill-creator,debugging-assistant \
+ --output-dir . \
+ --yes
+```
+
+Bump the version in `aam.yaml`, then validate, pack, and publish the update:
+
+```bash
+# Edit aam.yaml: version: 1.0.0 → 1.1.0
+aam pkg validate
+aam pkg pack
+aam pkg publish --registry team-registry
+```
+
+Your teammates upgrade with:
+
+```bash
+aam upgrade @myteam/consolidated-skills
+```
+
+---
+
+## Consolidation Patterns
+
+Here are common patterns for skill consolidation:
+
+### Pattern 1: Role-Based Packages
+
+Create separate packages for different roles:
+
+```
+@myteam/frontend-skills → React, CSS, accessibility skills
+@myteam/backend-skills → API, database, security skills
+@myteam/devops-skills → CI/CD, Docker, monitoring skills
+```
+
+### Pattern 2: Project-Specific Packages
+
+Bundle skills relevant to a specific project:
+
+```
+@myteam/project-alpha → API conventions + deploy workflow + code review
+@myteam/project-beta → ML pipeline + data validation + notebook helpers
+```
+
+### Pattern 3: Onboarding Package
+
+A single package for new team members:
+
+```
+@myteam/onboarding → Coding standards + git workflow + deploy process + code review
+```
+
+### Pattern 4: Layered Packages with Dependencies
+
+Use dependencies to create a layered structure:
+
+```yaml
+# @myteam/base-skills/aam.yaml
+name: "@myteam/base-skills"
+artifacts:
+ skills:
+ - name: code-review
+ - name: commit-message-writer
+```
+
+```yaml
+# @myteam/frontend-skills/aam.yaml
+name: "@myteam/frontend-skills"
+dependencies:
+ "@myteam/base-skills": "^1.0.0"
+artifacts:
+ skills:
+ - name: react-patterns
+ - name: css-conventions
+```
+
+---
+
+## Next Steps
+
+Now that you've consolidated skills, you can:
+
+- **Install across platforms** — Follow the [Multi-Platform Deployment](multi-platform-deployment.md) tutorial
+- **Add dependencies** — Learn about dependencies in [Working with Dependencies](working-with-dependencies.md)
+- **Share with your team** — Follow the [Sharing with Your Team](share-with-team.md) tutorial
+- **Keep skills updated** — Use `aam outdated` and `aam upgrade` to stay current
+
+---
+
+## Troubleshooting
+
+### Source not found
+
+**Problem:** `aam pkg create --from-source myrepo` fails with "source not found"
+
+**Solution:** Make sure the source is registered:
+
+```bash
+aam source list # Check registered sources
+aam source add github.com/org/repo # Add missing source
+aam source update org/repo # Ensure cache is fresh
+```
+
+### Artifact name conflicts
+
+**Problem:** Two sources have skills with the same name
+
+**Solution:** Use qualified names when installing or rename one skill in your package:
+
+```bash
+# Install with qualified name
+aam install openai/skills:.curated/code-review
+
+# Or rename in your package by editing the name in aam.yaml
+# and renaming the directory
+```
+
+### Stale source cache
+
+**Problem:** Source shows old artifacts that have been removed upstream
+
+**Solution:** Update the source cache:
+
+```bash
+aam source update --all
+```
+
+---
+
+## Summary
+
+In this tutorial, you learned how to:
+
+- Browse available skills across multiple sources with `aam list --available` and `aam search`
+- Pull skills from remote sources with `aam pkg create --from-source`
+- Cherry-pick specific artifacts with `--artifacts`
+- Add your own custom skills alongside community ones
+- Validate, pack, and distribute a consolidated package
+- Keep the package updated as upstream sources change
+
+**Key Commands:**
+
+```bash
+aam list --available # Browse all source artifacts
+aam search --type skill # Search for specific skills
+aam pkg create --from-source --artifacts # Pull from source
+aam pkg validate # Verify package
+aam pkg pack # Build archive
+aam source update --all # Refresh source caches
+```
+
+Ready to share your consolidated package? Continue to [Sharing with Your Team](share-with-team.md)!
diff --git a/docs/user_docs/mkdocs.yml b/docs/user_docs/mkdocs.yml
index 0907312..1dd2b87 100644
--- a/docs/user_docs/mkdocs.yml
+++ b/docs/user_docs/mkdocs.yml
@@ -116,10 +116,12 @@ nav:
- Your First Package: getting-started/first-package.md
- Tutorials:
- tutorials/index.md
+ - Install Skills from Sources: tutorials/install-from-sources.md
- Package Existing Skills: tutorials/package-existing-skills.md
- Build a Code Review Package: tutorials/build-code-review-package.md
- Share Packages with Your Team: tutorials/share-with-team.md
- Multi-Platform Deployment: tutorials/multi-platform-deployment.md
+ - Skill Consolidation: tutorials/skill-consolidation.md
- Working with Dependencies: tutorials/working-with-dependencies.md
- Concepts:
- concepts/index.md
@@ -172,7 +174,10 @@ nav:
- aam config list: cli/config-list.md
- Utilities:
- aam doctor: cli/doctor.md
+ - aam convert: cli/convert.md
- Global Options: cli/global-options.md
+ - MCP Interface:
+ - mcp/index.md
- Configuration:
- configuration/index.md
- Global Config: configuration/global.md
diff --git a/package-lock.json b/package-lock.json
index 0379487..56f65d4 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7,6 +7,7 @@
"": {
"name": "@aam/monorepo",
"version": "0.1.0",
+ "license": "Apache-2.0",
"workspaces": [
"apps/*",
"libs/*"