Agent skill

Create System Prompt

by pnp in pnp/copilot-prompts

This skill should be used when the user asks to "create an agent instruction", "add agent instructions", "scaffold an agent sample", "create a system prompt sample", "add a system prompt", "create a…

MITAuto-check passedAI & LLM Engineering

Install Create System Prompt

skills CLI
$ npx skills add pnp/copilot-prompts --skill create-system-prompt -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pnp/copilot-prompts create-system-prompt --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pnp/copilot-prompts.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/create-system-prompt .claude/skills/create-system-prompt && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-system-prompt
GitHub stars
892
Token cost
~3.1k tokens
SKILL.md length
986 words
Files
1
Skills in repo
3
Repo updated
First seen
Licence
MIT

At a glance

This skill should be used when the user asks to "create an agent instruction", "add agent instructions", "scaffold an agent sample", "create a system prompt sample", "add a system prompt", "create a…

  • Works in 3 steps: Create README.md → Create Metadata (assets/sample.json) → Remind About Screenshots
  • Asks to create an agent instruction
  • SKILL.md covers Before Starting, Sample Directory Structure, Step 1: Create README.md and Step 2: Create Metadata…, plus 4 more sections
  • Reaches m365-visitor-stats.azurewebsites.net and avatars.githubusercontent.com

What it does

Create System Prompt is an agent skill from pnp/copilot-prompts. This skill should be used when the user asks to "create an agent instruction", "add agent instructions", "scaffold an agent sample", "create a system prompt sample", "add a system prompt", "create a new agent", "build an agent", or needs to create a new agent instruction sample with proper folder structure, README, and sample.json metadata inside the agent-instructions folder. Do NOT use this skill for simple prompt samples that are not agent instructions.

Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in AI & LLM Engineering, covering Prompt engineering, Agent instruction files and Building AI agents. The repository describes itself as: Examples of prompts for Microsoft Copilot. The licence is MIT.

When your agent uses it

  • Asks to create an agent instruction
  • Add agent instructions
  • Scaffold an agent sample
  • Create a system prompt sample

Example prompts

  • “create an agent instruction”
  • “add agent instructions”
  • “scaffold an agent sample”
  • “/create-system-prompt”

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Create README.md
  2. Create Metadata (assets/sample.json)
  3. Remind About Screenshots

What it can do on your machine

Read from SKILL.md and the folder at commit ce45963. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown and json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • m365-visitor-stats.azurewebsites.net
    • avatars.githubusercontent.com
    • github.com
    • pnp.github.io
    • copilot.microsoft.com

    Also links to:

    • adoption.microsoft.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create System Prompt loads about 3.1k tokens when it runs. Until then it costs about 120 tokens; SKILL.md has 986 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~120
When it runs · the whole SKILL.md, loaded when a task matches
~3.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from pnp/copilot-prompts at commit ce45963, republished under its MIT licence (© pnp). 986 words, ~3,129 tokens.

Download SKILL.mdSave it as .claude/skills/create-system-prompt/SKILL.md (or your agent's skills folder).
name
create-system-prompt
description
This skill should be used when the user asks to "create an agent instruction", "add agent instructions", "scaffold an agent sample", "create a system prompt sample", "add a system prompt", "create a new agent", "build an agent", or needs to create a new agent instruction sample with proper folder structure, README, and sample.json metadata inside the agent-instructions folder. Do NOT use this skill for simple prompt samples that are not agent instructions.

Create an Agent Instruction / System Prompt Sample

This skill guides creating new agent instruction samples for the pnp/copilot-prompts repository. These samples live inside samples/agent-instructions/ and represent agents whose system prompt / instructions are the contribution. Contributors build an agent in Microsoft Copilot Studio and share the instructions (system prompt) that power it.

Before Starting

Critical: Always ask the user for the following information before scaffolding:

  1. Agent name — a short, descriptive name for the agent (e.g., "Communication Assistant", "Smart Crop Doctor", "Elevator Pitch Alchemist")
  2. Agent instructions / system prompt — the full system prompt text that defines the agent's behavior, personality, skills, and operating principles
  3. Summary — a short description of what the agent does and why it's useful
  4. Use case category — one or more categories the agent falls into:
    • 🎮 Gaming — AI-powered game ideas, NPC interactions, procedural storytelling
    • 📚 Storytelling & Creative Writing — Fiction, poetry, and immersive storytelling prompts
    • 🤖 AI Assistants — Virtual assistants, chatbots, and productivity helpers
    • 🛠️ Productivity & Tools — Code generation, automation, and workflow improvements
    • 🎓 Education — Learning aids, tutoring, and interactive teaching tools
    • 🏥 Healthcare & Wellbeing — AI for mental health, fitness, and well-being support
    • 🌎 Other — If the idea doesn't fit the above
  5. Author name — the contributor's full name
  6. Author GitHub username — the contributor's GitHub handle

If the user doesn't provide all details upfront, ask for the missing ones before proceeding.

Sample Directory Structure

Create the sample in samples/agent-instructions/{agent-name}/:

samples/agent-instructions/{agent-name}/
├── assets/
│   ├── demo.png             # Required static preview
│   └── sample.json          # Metadata for the M365 Solution Gallery
├── README.md                # Documentation with agent instructions

Folder naming rules:

  • Use lowercase and hyphens only (e.g., daily-chore-children, communication-assistant, peace-keeper-agent)
  • Do NOT use periods/dots in the folder name
  • Keep it concise but descriptive — it should hint at what the agent does
  • Do NOT include prefixes like m365- or github- — agent instruction folders use plain descriptive names

Step 1: Create README.md

Create samples/agent-instructions/{agent-name}/README.md using this structure:

markdown
# 🎯 {Agent Name}

## Summary

{Short summary of what this agent does, its purpose, and why it's useful.}

## Instruction

{The full agent instructions / system prompt goes here.

This is the core contribution — the complete system prompt that defines:

  • The agent's identity and purpose
  • Execution steps or workflow
  • Operating principles and guidelines
  • Tone and personality
  • Example interactions (optional)
  • Limitations and constraints (optional)}

## 🏆 Use Case Category

{Mark the applicable categories with [x]:}

- [ ] 🎮 **Gaming** – AI-powered game ideas, NPC interactions, procedural storytelling
- [ ] 📚 **Storytelling & Creative Writing** – Fiction, poetry, and immersive storytelling prompts
- [ ] 🤖 **AI Assistants** – Virtual assistants, chatbots, and productivity helpers
- [ ] 🛠️ **Productivity & Tools** – Code generation, automation, and workflow improvements
- [ ] 🎓 **Education** – Learning aids, tutoring, and interactive teaching tools
- [ ] 🏥 **Healthcare & Wellbeing** – AI for mental health, fitness, and well-being support
- [ ] 🌎 **Other** – If your idea doesn't fit the above, tell us what it's about!

## Contributors 👨💻

[{Author Name}](https://github.com/{github-username})

## Version history

Version|Date|Comments
-------|----|--------
1.0|{Month DD, YYYY}|Initial release

## Instructions 📝

- Make sure you have Microsoft 365 Copilot in your tenant.
- Access Copilot studio agent builder
- On the left-hand rail, select Create an agent - New agent
- Add description to refine agents behavior. Make sure to use short, precise and simple description.
- Paste the prompt in the Instructions field, and alter it according to your needs.
- Try out your agent in the same window.

## Prerequisites

Copilot License

## Help

We do not support samples, but this community is always willing to help, and we want to improve these samples. We use GitHub to track issues, which makes it easy for community members to volunteer their time and help resolve issues.

You can try looking at [issues related to this sample](https://github.com/pnp/copilot-prompts/issues?q=label%3A%22sample%3A%20{agent-name}%22) to see if anybody else is having the same issues.

If you encounter any issues using this sample, [create a new issue](https://github.com/pnp/copilot-prompts/issues/new).

Finally, if you have an idea for improvement, [make a suggestion](https://github.com/pnp/copilot-prompts/issues/new).

## Disclaimer

**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**

![](https://m365-visitor-stats.azurewebsites.net/copilot-prompts/copilotprompts-agent-{agent-name})

README rules:

  • NEVER rephrase, rewrite, or modify the user's system prompt / agent instructions. Copy the prompt exactly as provided by the user — word for word, character for character. The user's original wording is the contribution; do not "improve", shorten, expand, or restructure it.
  • The file must be named README.md
  • Include ![Screenshot of the agent in use](./assets/demo.png) after the title
  • The Instruction section is the most important part — it contains the full system prompt in a fenced code block
  • The system prompt should be well-structured with clear sections (Purpose, Execution Steps, Operating Principles, Tone, etc.)
  • The Instructions 📝 section (how to use) always describes the Copilot Studio agent builder workflow
  • The tracking image at the bottom MUST follow the pattern: https://m365-visitor-stats.azurewebsites.net/copilot-prompts/copilotprompts-agent-{agent-name}
  • Include the Help and Disclaimer sections exactly as shown
  • Use the current date for the version history in {Month DD, YYYY} format
  • Mark the correct Use Case Category checkboxes based on what the user selected

Step 2: Create Metadata (assets/sample.json)

Create samples/agent-instructions/{agent-name}/assets/sample.json:

json
[
  {
    "name": "copilotprompts-agent-{agent-name}",
    "source": "pnp",
    "title": "{Agent Title}",
    "shortDescription": "{Short description of what the agent does}",
    "url": "https://github.com/pnp/copilot-prompts/tree/main/samples/agent-instructions/{agent-name}",
    "downloadUrl": "https://pnp.github.io/download-partial/?url=https://github.com/pnp/copilot-prompts/tree/main/samples/agent-instructions/{agent-name}",
    "longDescription": [
      "{A longer description of what the agent does and why it's useful.}"
    ],
    "creationDateTime": "{YYYY-MM-DD}",
    "updateDateTime": "{YYYY-MM-DD}",
    "products": [
      "Copilot"
    ],
    "metadata": [],
    "thumbnails": [
      {
        "type": "image",
        "order": 100,
        "url": "https://github.com/pnp/copilot-prompts/raw/main/samples/agent-instructions/{agent-name}/assets/demo.png",
        "alt": "{Description of the agent screenshot}"
      }
    ],
    "authors": [
      {
        "gitHubAccount": "{github-username}",
        "pictureUrl": "https://avatars.githubusercontent.com/{github-username}",
        "name": "{Author Name}"
      }
    ],
    "references": [
      {
        "name": "Microsoft Copilot",
        "description": "Microsoft Copilot",
        "url": "https://copilot.microsoft.com/"
      }
    ]
  }
]

Key metadata rules:

  • name: Always copilotprompts-agent-{agent-name} where {agent-name} is the folder name
  • shortDescription and longDescription[0]: Should describe the agent's purpose; longDescription can be more detailed
  • creationDateTime and updateDateTime: Use YYYY-MM-DD format with the current date
  • products: Always ["Copilot"] for agent instruction samples
  • source: Always "pnp"
  • url: Points to samples/agent-instructions/{agent-name} on GitHub main branch
  • downloadUrl: Uses the pnp partial download service URL pointing to the same path
  • pictureUrl for authors: Use https://avatars.githubusercontent.com/{username}
  • thumbnails: Point to the required sample-specific static PNG and provide descriptive alt text
Show full SKILL.md (416 more words)Show less

Step 3: Remind About Screenshots

After creating the files, remind the user to:

  1. Add a screenshot of the agent in action as assets/demo.png
  2. Update the thumbnail URL and alt text if a different PNG filename is used
  3. Keep the screenshot reference in README.md aligned with that file
  4. Additional GIF, JPEG, or WebP media is optional, but at least one static PNG is required

Writing Good Agent Instructions

When helping a user craft their system prompt, encourage them to include these sections:

  1. Purpose / Identity — Who is the agent? What is its core mission?
  2. Execution Steps — Step-by-step workflow the agent follows
  3. Operating Principles / Guidelines — Rules and constraints for the agent's behavior
  4. Tone — How the agent should communicate (warm, professional, playful, etc.)
  5. Example Interactions (optional) — Sample conversations showing expected input/output
  6. Limitations (optional) — What the agent cannot or should not do
  7. Privacy and Safety (optional) — Any data handling or safety considerations

The system prompt should be detailed enough that anyone can paste it into Copilot Studio's Instructions field and get a working agent.

Validation Checklist

Before finalizing, verify:

  • Folder is inside samples/agent-instructions/ (NOT directly under samples/)
  • Folder name is lowercase with hyphens only, no dots, no app-host prefix
  • README.md exists
  • README.md contains the full system prompt in a fenced code block under the Instruction section
  • At least one Use Case Category is checked
  • assets/ folder exists
  • assets/ contains at least one sample-specific static PNG
  • assets/sample.json exists with valid JSON
  • sample.json name field matches pattern copilotprompts-agent-{agent-name}
  • sample.json products is ["Copilot"]
  • sample.json URLs include the full path samples/agent-instructions/{agent-name}
  • sample.json dates are in YYYY-MM-DD format
  • README tracking image URL matches copilotprompts-agent-{agent-name}
  • README contains Instructions, Help, and Disclaimer sections
  • Author information is filled in

Key Rules

  • NEVER rephrase, rewrite, or modify the user's system prompt / agent instructions. Always copy them verbatim into the README's Instruction section. The user's exact wording is the contribution.
  • This skill is for agent instruction / system prompt samples ONLY — not for simple prompt samples
  • Samples MUST go in samples/agent-instructions/{agent-name}/, never directly under samples/
  • Every sample requires README.md, assets/sample.json, and at least one sample-specific static PNG in assets/
  • The core contribution is the system prompt / agent instructions in the README's Instruction section
  • The products field in sample.json is always ["Copilot"] (these are Copilot Studio agents)
  • Prerequisites are always "Copilot License"
  • The Instructions section always describes the Copilot Studio agent builder workflow
  • The sample.json feeds the M365 Solution Gallery — accuracy matters
  • Follow existing naming patterns in the agent-instructions folder for consistency

© pnp, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. 1 hidden character (zero-width or bidirectional) removed. Raw file

Files

Just SKILL.md in .github/skills/create-system-prompt of pnp/copilot-prompts.

Open the folder on GitHubat commit ce45963

Compare with similar skills

Create System Prompt next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create System Prompt compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create System Prompt this skillpnp/copilot-prompts892—~3.1kAutomated safety check: PassMIT
Agent Prompt Engineeringagentailor/fullstack-langgraph-nextjs-agent132—~3.6kAutomated safety check: PassMIT
Microsoft Foundrymicrosoft/GitHub-Copilot-for-Azure2551 repos~6.7kAutomated safety check: PassMIT
Senior Prompt Engineermaslennikov-ig/claude-code-orchestrator-kit2604 repos~1.4kAutomated safety check: PassCustom licence
DSPy Language Model ProgrammingOrchestra-Research/AI-Research-SKILLs13k10 repos~3.8kAutomated safety check: PassMIT
Prompt Regressionagentscope-ai/OpenJudge868—~2.8kAutomated safety check: PassApache-2.0

Similar skills

  • Agent Prompt Engineering

    agentailor/fullstack-langgraph-nextjs-agent

    Comprehensive guide for designing, refining, and auditing system prompts for autonomous AI agents based on Anthropic's production practices.

    132 GitHub stars~3.6k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check passed
  • Microsoft Foundry

    microsoft/GitHub-Copilot-for-Azure

    Official

    Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.

    255 GitHub starsUsed in 1 repo~6.7k tokens
    AI & LLM EngineeringAuto-check passed
  • Senior Prompt Engineer

    maslennikov-ig/claude-code-orchestrator-kit

    Provides reference guides and Python scripts for prompt optimization, RAG evaluation, and agent orchestration when building or tuning LLM systems.

    260 GitHub starsUsed in 4 repos~1.4k tokens
    AI & LLM EngineeringAuto-check passed
  • DSPy Language Model Programming

    Orchestra-Research/AI-Research-SKILLs

    Teaches an agent to build LM pipelines, RAG systems and agents in DSPy using signatures, modules and optimizers instead of hand-tuned prompts.

    13k GitHub starsUsed in 10 repos~3.8k tokens
    AI & LLM EngineeringAuto-check passed
  • Prompt Regression

    agentscope-ai/OpenJudge

    A skill your agent uses when the user has changed a prompt (system prompt, RAG template, agent instruction, etc.) and wants to know whether the candidate is better or worse than the baseline.

    868 GitHub stars~2.8k tokensUpdated 27 days ago
    AI & LLM EngineeringAuto-check passed
  • Context Audit

    undefined-ui/second-brain-os

    Audit an agent's context layout against the four places: system prompt, tools, history, tail.

    1k GitHub stars~802 tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed

More from pnp/copilot-prompts

  • Create Simple Prompt

    pnp/copilot-prompts

    This skill should be used when the user asks to "create a new prompt sample", "add a new prompt sample", "scaffold a new prompt sample", "create a prompt contribution", "add a prompt", or needs to…

    892 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • Create Skill Sample

    pnp/copilot-prompts

    This skill should be used when the user asks to "create a new skill sample", "add a skill", "scaffold a new skill", "contribute a skill", "create a GitHub Copilot skill", "build a custom skill", or…

    892 GitHub stars~3.1k tokensUpdated 2 days ago
    Auto-check passed

Questions about Create System Prompt

What does Create System Prompt do?

This skill should be used when the user asks to "create an agent instruction", "add agent instructions", "scaffold an agent sample", "create a system prompt sample", "add a system prompt", "create a…. Create System Prompt is an agent skill from pnp/copilot-prompts.json metadata inside the agent-instructions folder.

When should I use Create System Prompt?

Create System Prompt fits situations like: asks to create an agent instruction; add agent instructions; scaffold an agent sample; create a system prompt sample.

How do I install Create System Prompt in Claude Code?

Run `npx skills add pnp/copilot-prompts --skill create-system-prompt -a claude-code`. Or copy the skill folder (.github/skills/create-system-prompt in pnp/copilot-prompts) into .claude/skills/create-system-prompt in your project. Claude Code loads it when a task matches its description.

How do I install Create System Prompt in Codex?

Run `npx skills add pnp/copilot-prompts --skill create-system-prompt -a codex`. Or copy the skill folder (.github/skills/create-system-prompt in pnp/copilot-prompts) into .agents/skills/create-system-prompt in your project. Codex loads it when a task matches its description.

Can I use Create System Prompt in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pnp/copilot-prompts --skill create-system-prompt -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-system-prompt, .gemini/skills/create-system-prompt, .github/skills/create-system-prompt and .opencode/skills/create-system-prompt in your project.

What does Create System Prompt need to run?

SKILL.md names no scripts, command-line tools or credentials: Create System Prompt is instructions for the agent only.

Does Create System Prompt access the network?

SKILL.md names 6 domains. In commands or code: m365-visitor-stats.azurewebsites.net, avatars.githubusercontent.com, github.com, pnp.github.io and copilot.microsoft.com; the agent is likely to contact these when it follows the instructions. As links in the text: adoption.microsoft.com. This is read from the text; nothing was executed.

Is Create System Prompt safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create System Prompt use?

Create System Prompt is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create System Prompt use?

About 3.1k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create System Prompt?

Skills that share tags, products or a category with Create System Prompt: Agent Prompt Engineering (agentailor/fullstack-langgraph-nextjs-agent, 132 stars), Microsoft Foundry (microsoft/GitHub-Copilot-for-Azure, 255 stars), Senior Prompt Engineer (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and DSPy Language Model Programming (Orchestra-Research/AI-Research-SKILLs, 13k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create System Prompt?

pnp (a GitHub organization) maintains it in pnp/copilot-prompts, which has 892 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 6, 2026.

Source: pnp/copilot-prompts on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.