From obs-mgmt
Initialize the OBS management workspace — a user-owned folder (default ~/Documents/OBS-Workspace) that stores config backups, scene exports, and Claude-generated notes about the user's OBS setup. Optionally turns it into a private GitHub repo so the workspace is version-controlled and survives machine wipes. Run once during onboarding; safe to re-run (idempotent).
npx claudepluginhub danielrosehill/claude-code-plugins --plugin obs-mgmtThis skill uses the workspace's default tool permissions.
The **management workspace** is a single folder where everything Claude knows or generates about the user's OBS setup lives — config tarballs, exported scene collections, plugin install logs, hardware notes, and any Markdown docs Claude writes about the user's recording rig.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
The management workspace is a single folder where everything Claude knows or generates about the user's OBS setup lives — config tarballs, exported scene collections, plugin install logs, hardware notes, and any Markdown docs Claude writes about the user's recording rig.
This skill bootstraps that folder and (optionally) turns it into a private GitHub repo so it's backed up and versioned.
setup skill.Idempotent: running it twice on an existing workspace just reports the current state.
Order of resolution:
$OBS_WORKSPACE env var if set.workspace_path in $CLAUDE_USER_DATA/obs-mgmt/config.json.~/Documents/OBS-Workspace.Confirm the path with the user before creating anything.
Create this structure if missing:
$OBS_WORKSPACE/
├── README.md
├── backups/ # config tarballs from backup-config skill
├── scenes/ # exported scene collection JSON
├── plugins/ # downloaded OBS plugin artifacts + install logs
├── docs/ # Claude-generated notes (hardware, encoder choices, recording profiles)
└── .gitignore
Seed README.md with a one-paragraph description of the workspace and a pointer to this plugin. Seed .gitignore with:
# Large/regenerable artifacts
*.tar.gz
*.zip
*.AppImage
*.deb
# OS noise
.DS_Store
Thumbs.db
By default, ignore the actual backup tarballs — the user can override this if they want backups committed (rarely a good idea given size).
Ask the user: "Make this workspace a private GitHub repo so it's versioned and backed up?"
If yes:
Confirm gh is authenticated (gh auth status).
Decide repo name. Default: OBS-Workspace. Confirm.
Initialise and push:
cd "$OBS_WORKSPACE"
git init -q
git add -A
git commit -q -m "Initial OBS management workspace"
gh repo create <owner>/<repo-name> --private --source=. --push
Record the repo URL in $CLAUDE_USER_DATA/obs-mgmt/config.json:
{
"workspace_path": "/home/<user>/Documents/OBS-Workspace",
"workspace_repo": "git@github.com:<owner>/OBS-Workspace.git",
"workspace_is_git": true
}
If no, just record "workspace_is_git": false and note that the user can re-run this skill later to git-ify.
Suggest the user add to ~/.bashrc / ~/.zshrc:
export OBS_WORKSPACE="$HOME/Documents/OBS-Workspace"
Don't write to shell rc files automatically — show the line and let the user paste it.
Other skills in this plugin (backup-config, install-plugin) can opt into auto-committing their outputs to the workspace if workspace_is_git is true. Mention this to the user but don't enable it without asking — some users prefer to review and commit manually.
If $OBS_WORKSPACE already exists and is git-tracked, just print:
Workspace OK
Path: <path>
Repo: <url>
Last commit: <hash> <date> <subject>
If it exists but isn't git-tracked, offer to git-ify it now.