Workshop Create
Create a new workshop or use an existing directory as one.
by github · MIT
The skill
Create a new workshop or use an existing directory as one. Handles two paths: (A) use an existing local directory the operator points at, or (B) create a new private GitHub repo in the signed-in account. Never creates a repo inside another repo.
Create 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.
Use this skill
Connect your agent to the Skill Store MCP server and ask for it by ref: github/workshop-create-41937857840.
Details
- Publisher
- github
- Category
- AI & Agents › Misc
- License
- MIT
- Updated
- 2026-10-16
References
More from github
- Agentic Workflows Route gh-aw workflow design/create/debug/upgrade requests to the right prompts.
- Code Review Review pull requests for repository fit, meaningful value, trustworthy provenance, differentiatio…
- Create Canvas Extension Create or register a canvas extension in the awesome-copilot repository.
- Acquire Codebase Knowledge Use this skill when the user explicitly asks to map, document, or onboard into an existing codebase.