
Workshop Create
OfficialFreeEasily set up or manage coding workshops.
Free · Opens the source repo
What Workshop Create does
The Workshop Create skill is designed for developers and teams looking to organize their work into structured workshops. It provides two main functionalities: using an existing local directory as a workshop or creating a new private GitHub repository for a fresh workshop. This flexibility allows users to choose the best approach based on their current projects and collaboration needs.
When opting to use an existing directory, the skill checks for the presence of specific workshop markers, such as desks/ or classroom/ folders, and ensures that any existing content is preserved. It then scaffolds the necessary structure by adding missing components like a CAIRN.md file and a README.md, without disrupting the current state of the directory. This is particularly useful for developers who want to transition an existing project into a more organized workshop environment without losing their previous work.
Alternatively, if a user prefers starting fresh, the skill can create a new private GitHub repository. It guides the user through the process of selecting a valid parent directory and ensures that the new repository does not get nested within an existing one. After creating the repository, it sets up the workshop structure within it, including necessary placeholders to ensure that the directory structure is maintained in future clones. This feature is ideal for teams that want to collaborate on new projects while keeping everything organized from the start.
Overall, Workshop Create streamlines the process of setting up workshops, making it easier for developers and teams to manage their projects effectively. Whether you are starting from scratch or adapting an existing project, this skill provides the tools needed to create a well-organized workspace.
When to use it
Use this skill when you want to create a new workshop or organize work under a shared root directory.
When not to use it
Avoid this skill if you need advanced project management features or if you are working in a collaborative environment that requires more than basic directory structure setup.
What you can build with it
Transitioning an Existing Project
You have a local project that you want to organize into a workshop structure without losing any existing files.
Starting a New Collaborative Project
You want to create a new private GitHub repository for a fresh workshop and ensure all team members have access to the same structure.
Maintaining Project Organization
You need a simple way to scaffold workshop directories across multiple projects to maintain consistency and organization.
How to install Workshop Create
View source1. Install with the skills CLI
npx skills add github/awesome-copilot/workshop-create --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by githubCreate a Workshop
Set up a new workshop — the root directory where desks live.
When to use
- The operator says "create a workshop" or "start a new workshop"
- The operator wants to organize work under a shared root
- The operator has an existing directory they want to use as a workshop
Two paths
Path A: Use an existing directory
The operator already has a folder they want to use. Maybe it's a repo they cloned, maybe it's a local project folder.
- Confirm the path exists. If not, ask the operator for a valid path.
- Detect existing workshop markers. Look for
desks/orclassroom/folders, aworkshop.md,CAIRN.md, orhands-up.md. Finding any of these tells you this is an existing workshop — but this is detection only, not a stopping point. Continue to the next step and add whatever is missing; never overwrite what is already there. - Scaffold the workshop structure (only what's missing):
<path>/ desks/ # where desks live bench/ # shared workspace CAIRN.md # operating disposition README.md # workshop map - Do NOT run
git init. The directory may already be a git repo, or the operator may not want one yet. Leave git state alone. - Do NOT create a GitHub repo. This path is local-only.
Path B: Create a new private GitHub repo
The operator wants a fresh workshop backed by a GitHub repo.
- Get the workshop name. Short, no spaces, kebab-case preferred.
- Pick and validate a clone parent.
gh repo create --cloneclones into the current working directory, so choose an explicit parent directory first (ask the operator, or use their configured workshops directory) and confirm it is not already inside a git repo:
If that printsgit -C <parent-dir> rev-parse --is-inside-work-treetrue, pick a different parent — otherwise the new repo nests inside the existing one. Create the parent if needed. - Create and clone the repo from that parent:
Use the operator's signed-in GitHub account ascd <parent-dir> gh repo create <owner>/<name> --private --clone<owner>. - Scaffold the workshop structure inside the cloned repo. Git does
not track empty directories, so add a placeholder in each otherwise
empty folder or the scaffold will not survive the next clone:
<name>/ desks/.gitkeep bench/.gitkeep CAIRN.md README.md - Commit and push the scaffold, including the
.gitkeepplaceholders.
Critical: Never nest repos
Never run git init inside a directory that is already inside a git
repository. Before initializing, check:
git -C <parent-dir> rev-parse --is-inside-work-tree
If that returns true, the parent is already a git repo. Do NOT create
another repo inside it. Either:
- Use Path A (just scaffold, no git)
- Or clone to a different location that isn't inside a repo
CAIRN.md content
The operating disposition every desk reads:
# cairn
the trail markers that say: someone was here, and they were honest.
## how a desk stands
- **stop is a valid finish.** don't force a result when the evidence
says stop. "this doesn't work" is a finding, not a failure.
- **"done" means it holds.** if you'd bet your desk on it, ship it.
if not, say what's uncertain and why.
- **hold scope.** touch only what the task needs. if you find something
outside scope, note it and move on — don't chase it.
- **never go silent, never bluff.** partial + honest > complete + wrong.
if you're stuck, say so. if you're unsure, say that too.
- **equal standing.** you can say "that's the wrong question." you can
disagree with another desk. you answer to evidence, not hierarchy.
## the bench
the shared workspace. leave your work where others can find it.
label it. if it supersedes earlier work, say so.
## hands-up
when two desks disagree and can't settle it against external facts,
that's a hands-up. it goes to the operator. this is the system
working, not failing.
After creation
Tell the operator:
- Where the workshop lives (full path)
- That they can now open desks in it with
desk-open - That Cairn will show signals once desks start emitting them
Principles
- A workshop is a place, not a product. Keep it simple.
- The operator decides where things go. Don't assume.
- If an existing directory already has work in it, preserve everything. Only add what's missing.
Frequently asked questions about Workshop Create
Similar skills
Spring Boot Testing
Master testing techniques for Spring Boot 4 applications.
GitHub Issues
Manage GitHub issues efficiently with MCP tools.
Geofeed Tuner
Optimize your IP geolocation feeds in CSV format.
Batch Files
Master Windows batch scripting for automation and task management.
Adobe Illustrator Scripting
Automate your Illustrator workflows with ExtendScript.
Plugin Structure
Create and organize Claude Code plugins effectively.
