setup
Skill30 starsChanged 3 months agoMITView on GitHub
Configure Git Workflow for Claude Code or Codex, migrate legacy configuration, install Codex project agents, and optionally configure issue-tracker MCP servers. Use when the user asks to set up, install, configure, or migrate Git Workflow.
191 other projects use a version of this.
Adopted by
Most recently taken up by
- hydra-db/hydradb-claude-codetheir own version, first seen Nov 8, 2026
- WALKERKILLER/Look-Tongji-Notestheir own version, first seen Nov 8, 2026
- steerlabs/opensteertheir own version, first seen Nov 8, 2026
- ansvisor/ansvisortheir own version, first seen Nov 8, 2026
- dsifry/metaswarmtheir own version, first seen Nov 8, 2026
- anombyte93/prd-taskmastertheir own version, first seen Nov 8, 2026
Used with
Projects with it also use add-voice-transcription, add-discord and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
juancruzmunozalbeloSkilladd-voice-transcription
Add voice message transcription to NanoClaw using OpenAI's Whisper API. Automatically transcribes WhatsApp voice notes so the agent can read and respond to them.
Also in 5 projects that use this
MicrosoftSkilladd-discord
Add Discord bot channel integration via Chat SDK.
Also in 11 projects that use this
MicrosoftSkilladd-slack
Add Slack channel integration via Chat SDK.
Also in 11 projects that use this
juancruzmunozalbeloSkilladd-telegram-swarm
Add Agent Swarm (Teams) support to Telegram. Each subagent gets its own bot identity in the group. Requires Telegram channel to be set up first (use /add-telegram). Triggers on "agent swarm", "agent teams telegram", "telegram swarm", "bot pool".
Also in 7 projects that use this
- +8 more from microsoft
Other versions191 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 191
- anthropics/knowledge-work-plugins★ 35ksame name
- garrytan/gbrain★ 32ksame name
- gavrielc/nanoclaw★ 31ksame name
- nanocoai/nanoclaw★ 31ksame name
- qwibitai/nanoclaw★ 31ksame name
- Q00/ouroboros★ 6.3ksame name
- pytorch/executorch★ 5.2ksame name
- agenticnotetaking/arscontexta★ 3.5ksame name
- aws/agent-toolkit-for-aws★ 3.4ksame name
- spotify/portal-ai-plugins★ 2.8ksame name
181 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository23 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- change-briefSkill
- clean-goneSkill
- close-customer-loopSkill
- commitSkill
- finishSkill
- notificationsSkill
- plan-qaSkill
- plan-tddSkill
- release-notesSkill
- releaseSkill
- review-requestSkill
- reviewSkill
- review-watchSkill
- rfcSkill
- standupSkill
- start-qaSkill
- startSkill
- statusSkill
- syncSkill
- tddSkill
- updateSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. 0 are common, 6 are distinctive, and 8 are very specific to this project.
0
Common
Most of the 170 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Very specific: line 12
Follow runtime compatibility.
- Very specific: line 25
Only when the host does not expose the path, use PLUGIN_ROOT, then CLAUDE_PLUGIN_ROOT, to locate skills/setup/SKILL.md and verify that it …
- Distinctive: line 35
Never edit a user-global configuration unless the user explicitly selects global scope.
- Very specific: line 41
If only .claude/config.yaml exists, explain that it is the legacy location and offer to copy it to the canonical path.
- Very specific: line 42
Create .git-workflow/ before copying.
- Distinctive: line 43
Never delete or modify the legacy file automatically.
- Distinctive: line 44
If both files exist, use the canonical file.
- Very specific: line 45
If neither exists, ask only for values that differ from the documented defaults, then write the canonical file from …
- Very specific: line 47
Default commit attribution is disabled.
- Distinctive: line 53
Use the package synchronizer so classification, atomic replacement, and ledger behavior stay consistent:
- Very specific: line 59
After showing the result and receiving confirmation for customized files, rerun without --dry-run and add --force only for replacements the …
- Very specific: line 67
Create .codex/agents/ when needed.
- Distinctive: line 73
Ask which integrations are needed: none, Linear, Jira, GitHub Issues, or more than one.
- Distinctive: line 79
Never print or persist access tokens in workflow configuration.
“Common” is measured: kept by at least 6 in 10 of the 170 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Set up Git Workflow
Follow runtime compatibility. Claude Code users invoke this as /setup; Codex users invoke it as $setup.
1. Resolve roots and runtime
Parse these options before resolving paths:
--host <claude|codex|both>selects exactly which project assets to synchronize. When omitted, detect the active host and ask only if the target remains ambiguous.--dry-runpreviews migration and installation without creating directories, files, or ledgers.--forceis explicit approval to replace customized selected-host files, but differences must still be shown first.- Reject unknown options and missing option values without writing.
Resolve {SKILL_DIR} to the absolute, physical directory containing this loaded SKILL.md.
Codex includes that path in its skill metadata; Claude Code can resolve the loaded skill path too.
Only when the host does not expose the path, use PLUGIN_ROOT, then CLAUDE_PLUGIN_ROOT, to locate
skills/setup/SKILL.md and verify that it exists. Never substitute an empty variable or silently
fall back to /scripts.
Derive {PACKAGE_ROOT} as the physical {SKILL_DIR}/../.. directory and require
{PACKAGE_ROOT}/.codex-plugin/plugin.json. Resolve the project root with
git rev-parse --show-toplevel, falling back to the current directory.
Detect the active host from available environment and configuration. If both Claude and Codex appear active and the requested target is unclear, ask which host or hosts to configure.
Never edit a user-global configuration unless the user explicitly selects global scope.
2. Migrate workflow configuration
Canonical configuration is <project>/.git-workflow/config.yaml.
- If only
.claude/config.yamlexists, explain that it is the legacy location and offer to copy it to the canonical path. - Create
.git-workflow/before copying. - Never delete or modify the legacy file automatically.
- If both files exist, use the canonical file. Show a diff when they differ and do not merge or overwrite without an explicit user decision.
- If neither exists, ask only for values that differ from the documented defaults, then write the canonical file from
templates/config.yaml.template.
Default commit attribution is disabled. Preserve an existing explicit attribution.enabled or attribution.format value during migration.
3. Install Codex project agents
For Codex, copy every source <plugin>/.codex/agents/*.toml to <project>/.codex/agents/.
Use the package synchronizer so classification, atomic replacement, and ledger behavior stay consistent:
node "{SKILL_DIR}/scripts/sync-project.mjs" --source "{PACKAGE_ROOT}" --target <project> --host codex --migrate-config --initialize-config --dry-runAfter showing the result and receiving confirmation for customized files, rerun without --dry-run and add --force only for replacements the user approved. When the skill itself was invoked with --dry-run, do not perform the second run.
For each agent:
- Missing target: list it as
+and install it. - Identical target: list it as
=and leave it unchanged. - Different target: list it as
~, show a unified diff, and ask before overwriting.
Create .codex/agents/ when needed. Do not set a model, reasoning effort, concurrency limit, or permission mode; installed agents inherit the parent Codex session. The plugin-bundled Codex hook is discovered separately from hooks/hooks.json and requires the host's normal hook trust review.
Claude Code loads the existing plugin agents directly. For a manual Claude installation, synchronize skills/, agents/*.md, and the shared references/ directory into .claude/skills/, .claude/agents/, and .claude/references/ with the same missing/identical/different rules. Use --host claude (or both) with the synchronizer.
4. Configure issue-tracker MCP (optional)
Ask which integrations are needed: none, Linear, Jira, GitHub Issues, or more than one.
- Codex: update the selected project
.codex/config.tomlor explicit user~/.codex/config.tomlMCP tables without replacing unrelated settings. - Claude Code: update the selected
.claude/settings.jsonor explicit user~/.claude/settings.jsonMCP configuration without replacing unrelated settings. - GitHub Issues can use the authenticated
ghCLI and does not require an MCP server.
Never print or persist access tokens in workflow configuration. If a server needs credentials, reference environment variables and tell the user which variables must be set.
5. Record installation
The synchronizer writes .git-workflow/version.json with:
{
"version": "2.5.2",
"source": "<resolved-plugin-source>",
"installed_at": "<ISO-8601 timestamp>",
"hosts": ["codex"],
"managed_files": [".codex/agents/pr-reviewer.toml"]
}Report created, migrated, skipped, and user-preserved files separately. End with host-specific invocation examples, including /status for Claude Code and $status for Codex.
Failure handling
- Missing plugin source: stop before writing and report how source resolution failed.
- Invalid existing YAML, JSON, or TOML: report the file and parse error; do not replace it.
- Permission failure: report the exact target and leave existing files unchanged.
- Partial agent installation: report every completed and failed file so
$updateor/updatecan resume safely.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

