OpenClaw · Skill
Gitignore Sync
Generate high-confidence .gitignore rules from real repo signals and gitignore.io, then update safely via a managed block so manual rules stay untouched.
Install
Start with the primary install command. Alternate entrypoints are included below for ClawHub and OpenClaw CLI users.
Primary command
clawhub install nikita-holban/gitignore-syncClawHub installer
npx clawhub@latest install nikita-holban/gitignore-syncOpenClaw CLI
openclaw skills install nikita-holban/gitignore-syncDirect OpenClaw install
openclaw install nikita-holban/gitignore-syncWhat this skill does
Generate high-confidence .gitignore rules from real repo signals and gitignore.io, then update safely via a managed block so manual rules stay untouched.
Why it matters
Using gitignore.io templates via a managed block prevents both hand-rolling incomplete rules and accidentally clobbering custom entries on re-runs.
Typical use cases
- Setting up .gitignore for a new Flutter + Firebase project
- Updating an existing repo's .gitignore after adding a new tool like VS Code
- Regenerating ignore rules without overwriting custom project-specific entries
- Bootstrapping .gitignore in a monorepo with mixed language environments
- Syncing .gitignore patterns when switching CI or adding Docker to a project
Source instructions
Gitignore Sync
Generate high-confidence .gitignore rules from real repo signals and gitignore.io, then update safely via a managed block so manual rules stay untouched.
Execution Rule
Use scripts/update_gitignore.py as the only execution path.
Do not fetch from the API directly in ad-hoc commands.
Do not manually compose or rewrite .gitignore when this skill is selected.
Workflow
- Infer requested templates from the user prompt.
- Detect likely templates from repository files and folders.
- Run
scripts/update_gitignore.pywith--prompt-textand/or--services. - Let the script fetch combined template rules from
https://www.toptal.com/developers/gitignore/api/<templates>. - Let the script write or update a managed block in
.gitignore. - Preserve non-managed user sections in
.gitignore.
Run
From the target repository root, run:
python3 <skill-path>/scripts/update_gitignore.py \
--prompt-text "create .gitignore for flutter firebase vscode" \
--repo .
Use explicit templates when the user names exact services:
python3 <skill-path>/scripts/update_gitignore.py \
--services flutter,firebase,visualstudiocode \
--repo .
Notes
- Prefer passing both
--prompt-textand--serviceswhen available. - Keep manual custom rules outside the managed block markers.
- Re-run safely; the script replaces only the managed block.
- Use
--rules-filefor offline/local testing when network access is blocked.