skills/workshop-create/SKILL.md
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.
npx skillsauth add williamlimasilva/.copilot workshop-createInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Set up a new workshop — the root directory where desks live.
The operator already has a folder they want to use. Maybe it's a repo they cloned, maybe it's a local project folder.
desks/ or classroom/
folders, a workshop.md, CAIRN.md, or hands-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.<path>/
desks/ # where desks live
bench/ # shared workspace
CAIRN.md # operating disposition
README.md # workshop map
git init. The directory may already be a git repo, or
the operator may not want one yet. Leave git state alone.The operator wants a fresh workshop backed by a GitHub repo.
gh repo create --clone clones
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:
git -C <parent-dir> rev-parse --is-inside-work-tree
If that prints true, pick a different parent — otherwise the new
repo nests inside the existing one. Create the parent if needed.cd <parent-dir>
gh repo create <owner>/<name> --private --clone
Use the operator's signed-in GitHub account as <owner>.<name>/
desks/.gitkeep
bench/.gitkeep
CAIRN.md
README.md
.gitkeep placeholders.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:
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.
Tell the operator:
desk-opendevelopment
Anxiety-aware, evidence-driven collaboration for stalled or high-stakes work when a user says uncertainty, repeated setbacks, or lack of visible progress is causing significant anxiety or distress. Use immediately when explicitly invoked; when this fit is only inferred from the user's own account, ask permission before applying it. Preserve the user's ideal and turn grounded perspective-taking into persistent, bounded problem solving. Do not use to diagnose, provide therapy, manufacture certainty, or lower goals for reassurance.
development
Build, review, debug, package, and test Roslyn diagnostic analyzers, code fix providers, and incremental source generators. Use for DiagnosticAnalyzer, CodeFixProvider, IIncrementalGenerator, IOperation analysis, Microsoft.CodeAnalysis dependency pinning, Roslyn test harnesses, C#/VB tests, and analyzer NuGet packaging.
testing
Migrates a project that uses checked-in .designer.cs files behind .resx to using a source-generator instead
development
Polish any GitHub repository's surface — labels (emoji rating tiers, P0–P3 priority, impact severity), issue forms, PR template, CI workflows, CODEOWNERS, rulesets, docs. Repo meta & config only — no code logic touched. Use when creating a new repo or polishing an existing one.