Generate tailored AI agent instruction files via AgentRC instructions command. Produces .github/copilot-instructions.md (default, recommended for Copilot in VS Code) plus optional per-area .instructions.md files with applyTo globs for monorepos. Use after running /acreadiness-assess to close gaps in the AI Tooling pillar.
npx skills add https://github.com/github/awesome-copilot --skill acreadiness-generate-instructions
Use this skill whenever the user wants to create, regenerate, or refresh their custom instructions for AI coding agents (Copilot, Claude, etc.). This is the *Generate* step in AgentRC's Measure → Generate → Maintain loop and the single highest-leverage action for the AI Tooling pillar.
VS Code recognises several instruction file types — AgentRC generates the most common ones:
| File | Scope | When to use |
|---|---|---|
| .github/copilot-instructions.md | Always-on, whole workspace | Default — VS Code Copilot's native instruction file |
| AGENTS.md | Always-on, whole workspace | Multi-agent repos (Copilot + Claude + others) |
| .github/instructions/*.instructions.md | Scoped by applyTo glob | Per-area / per-language rules in monorepos |
| CLAUDE.md | Claude-specific | Add via --claude-md (nested only) |
flat *(default)* — single .github/copilot-instructions.md at the chosen path. Simple, easy to review.nested — hub at .github/copilot-instructions.md + per-topic detail files at .github/instructions/<topic>.instructions.md, each with an applyTo glob so VS Code only loads the topic when it's relevant. Better for large or multi-stack repos.> Why .github/instructions/ and not .agents/? AgentRC's default nested layout writes to .agents/, which is the right home for *agent-agnostic* repos (Copilot + Claude + Cursor reading AGENTS.md). For VS Code Copilot specifically, the native location is .github/instructions/ with applyTo frontmatter — that's what Copilot auto-discovers. This skill rewrites AgentRC's nested output to the VS Code-native location whenever the main output is .github/copilot-instructions.md. If you instead chose --output AGENTS.md, nested keeps AgentRC's default .agents/ layout.
For monorepos, generate area-scoped instructions with --areas, --area <name>, or --areas-only. Areas are defined in agentrc.config.json. Per-area output is written as VS Code .instructions.md files with an applyTo glob (see below).
.instructions.md filesBoth end up in .github/instructions/ but they answer different questions:
| Kind | Filename example | applyTo example | Where it comes from |
|---|---|---|---|
| Topic (nested) | testing.instructions.md | **/*.{test,spec}.{ts,tsx,js} | AgentRC --strategy nested topic split |
| Area (monorepo) | frontend.instructions.md | apps/frontend/** | agentrc.config.json areas + --areas |
You can have both at once: a nested set of topic files plus per-area files for a monorepo.
applyToWhen the user opts into areas, emit one VS Code-native .instructions.md file per area at .github/instructions/<area>.instructions.md. Each file MUST start with frontmatter declaring the glob the rules apply to:
---
applyTo: "apps/frontend/**"
---
# Frontend area instructions
…AgentRC-generated content for this area…
Workflow:
agentrc.config.json to discover declared areas and their paths / globs. If paths is missing, ask the user for the glob (e.g. src/api/**).agentrc instructions --areas (or --area <name>) to produce the per-area body content..github/instructions/<area>.instructions.md with the applyTo frontmatter taken from the area's paths. If the user passed --apply-to <glob> on a single-area call, use that glob verbatim..github/copilot-instructions.md stays as the always-on instructions; .instructions.md files only kick in for matching paths.Naming: lowercase, kebab-case area name. Examples: .github/instructions/frontend.instructions.md, .github/instructions/api.instructions.md, .github/instructions/infra.instructions.md.
.github/copilot-instructions.md. Switch to AGENTS.md only if the user mentions multi-agent / Claude / Cursor support.flat or nested — unless the user already specified one in their message or via --strategy. Present the trade-off briefly:.github/copilot-instructions.md. Simple, easy to review in a single PR. Best for small/medium repos with one stack..github/copilot-instructions.md + per-topic .github/instructions/<topic>.instructions.md files (each with an applyTo glob so VS Code only loads them when relevant). Best for large or multi-stack repos. Add --claude-md to also emit CLAUDE.md.Recommend nested proactively when the repo has > 5 top-level directories, multiple stacks, or already uses a monorepo tool (turbo/nx/pnpm workspaces).
agentrc.config.json. If areas exist, ask the user whether they want per-area .instructions.md files with applyTo in addition to the root file. Default to "yes" when agentrc.config.json declares areas. npx -y github:microsoft/agentrc instructions --output <file> --strategy <flat|nested> [--areas|--area <name>] [--claude-md] --dry-run
applyTo globs, model used (default claude-sonnet-4.6).--dry-run (and optionally --force if files already exist).--output ends in copilot-instructions.md and strategy is nested: move/rewrite AgentRC's .agents/<topic>.md files to .github/instructions/<topic>.instructions.md. Add frontmatter to each file with an appropriate applyTo glob (see "Topic applyTo defaults" below). Delete the now-empty .agents/ directory.--areas was used: also write .github/instructions/<area>.instructions.md for every area, using each area's paths from agentrc.config.json as the applyTo glob (override with --apply-to for single-area calls).--output AGENTS.md was chosen: keep AgentRC's native .agents/ layout for nested — agent-agnostic readers expect it there.Create the .github/instructions/ directory if missing.
applyTo defaultsWhen promoting AgentRC's nested topic files to .instructions.md, use these defaults unless the user specifies otherwise:
| Topic | Default applyTo |
|---|---|
| testing | **/*.{test,spec}.{ts,tsx,js,jsx,mjs,cjs} |
| style / code-quality / formatting | **/*.{ts,tsx,js,jsx,mjs,cjs,py,go,rs,java,kt,cs} |
| build / ci | /{package.json,turbo.json,nx.json,.github/workflows/} |
| docs | **/*.md |
| security | ** |
| anything else / hub-level | ** |
.instructions.md files with their globs.assess skill to confirm the AI Tooling pillar score improved.copilot-instructions.md and AGENTS.md, recommend consolidating to a single source of truth (AgentRC flags this at maturity Level 2+).--claude-md (nested strategy only) also emits CLAUDE.md..instructions.md files automatically when the active file matches applyTo. The root .github/copilot-instructions.md always loads.This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
Build agentic applications with GitHub Copilot SDK. Use when embedding AI agents in apps, creating custom tools, implementing streaming responses, managing sessions, connecting to MCP servers, or creating custom agents. Triggers on Copilot SDK, GitHub SDK, agentic app, embed Copilot, programmable agent, MCP server, custom agent.
Coding Agent Session Search - unified CLI/TUI to index and search local coding agent history from Claude Code, Codex, Gemini, Cursor, Aider, ChatGPT, Pi-Agent, Factory, and more. Purpose-built for AI agent consumption with robot mode.
Destructive Command Guard - High-performance Rust hook for Claude Code that blocks dangerous commands before execution. SIMD-accelerated, modular pack system, whitelist-first architecture. Essential safety layer for agent workflows.
Makepad UI development skills for Rust apps: setup, patterns, shaders, packaging, and troubleshooting.
Secure environment variable management ensuring secrets are never exposed in Claude sessions, terminals, logs, or git commits
Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree Refinement (HTR) from the Arbor paper. Use this whenever someone wants to iteratively optimize something over many experiments without overfitting — e.g. "get my model's eval score up", "improve this agent/harness", "tune this pipeline", "beat the baseline on this benchmark", "run a search over approaches and keep the best", "do an MLE-bench / Kaggle-style optimization", or any long-horizon "make this artifact better and don't just memorize the dev set" task. Trigger it even when the user doesn't say "Arbor" or "hypothesis tree" but describes repeated experiment-and-evaluate loops, branching exploration of competing ideas, or worries about a dev/test gap. Runs Claude itself as the coordinator with subagent executors in isolated git worktrees; for the standalone `arbor` CLI tool see references/arbor-upstream.md.
Take github/acreadiness-generate-instructions from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npx.
Without those the skill loads but fails at the first command.