repo-workflow
Skill0 starsChanged 15 days agoMITView on GitHub
Repository workflow for changes intended for version control. Use when preparing repository changes, committing, pushing branches or tags, creating or updating issues and pull requests, merging, or publishing releases.
In this repository5 other files it gives its agents.
- librenms-os-supportSkill
- repo-docsSkill
- setup-agent-skillsSkill
- unslopSkill
- writing-for-agentsSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 7 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
Follow the repository's code style.
- Very specific: line 21
Keep credentials and identifiable customer/network data out of committed files, logs, fixtures, screenshots and public discussion.
- Distinctive: line 22
Update affected documentation alongside behaviour.
- Distinctive: line 23
Run the build, tests and security checks relevant to the change, including repository-required checks.
- Distinctive: line 27
Before committing or pushing, inspect the complete intended diff and staged diff, confirm the file set, check whitespace errors, and …
- Distinctive: line 31
Use the same format for branch commit subjects, PR titles and issue titles:
- Distinctive: line 39
Start the description in lower case, omit the final full stop, and aim for a complete subject under 72 characters.
- Very specific: line 40
Keep issue numbers out of titles.
- Very specific: line 55
Use the PR title as the eventual squash-commit subject.
- Distinctive: line 58
Treat release publication as a separate action.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Repository workflow
Apply these shared conventions to the requested work. Read the repository's AGENTS.md, CLAUDE.md, developer guide and contribution instructions first; explicit repository conventions take precedence over these defaults. Derive commands, scopes, required checks and release triggers from the current checkout and hosting configuration.
Establish the change
- Inspect the repository root, remote, current branch, working tree and staged changes. Identify the intended base branch from repository guidance or the remote's default branch; DashyNMS desktop uses
master, while several sibling repos usemain. - Work on a topic branch with one issue or coherent outcome per PR. Preserve unrelated work and stage the intended paths or hunks explicitly. Use an existing issue when supplied; link or create issues within the user's requested scope rather than inventing issue numbers.
- Find the owner of shared code before editing. Fix libraries in their source repository, then update the consumer's package or submodule reference. Keep UI/platform adapters outside shared logic. Read the current dependency configuration: historical docs may describe a retired sharing arrangement.
Proceed when the base, intended change and ownership are established, and unrelated work is accounted for.
Prepare and validate
- Follow the repository's code style; use British spelling in user-facing text and explain non-obvious reasons in comments. DashyNMS .NET projects favour sealed classes and XML comments explaining why.
- Keep credentials and identifiable customer/network data out of committed files, logs, fixtures, screenshots and public discussion. Use synthetic names such as
example.netand documentation address ranges. - Update affected documentation alongside behaviour. Keep user-facing release notes distinct from implementation and PR notes.
- Run the build, tests and security checks relevant to the change, including repository-required checks. Use regression tests for changed behaviour; respect platform-specific test requirements. Report unavailable platform or credential-dependent checks as unverified.
- For a public API, schema or persisted-format change, identify affected consumers, migration and version implications. Apply the repository's version policy; breaking public contracts require the appropriate major version change.
- Preserve upstream licences and provenance when importing material. For generated artefacts, use pinned inputs and the repository's reproducibility checks. Apply CI permissions and publication rules from that repository rather than importing another project's release process.
Before committing or pushing, inspect the complete intended diff and staged diff, confirm the file set, check whitespace errors, and account for each applicable check as passed, failed or unavailable. Fix actionable failures; state any remaining limitation accurately.
Titles and commits
Use the same format for branch commit subjects, PR titles and issue titles:
type(scope): what changes, as the user would notice it- Types:
featfor new capability,fixfor corrected behaviour,perffor performance,refactorfor restructuring without behaviour changes,docs,test,buildfor packages/projects/versions,ci,chore,revert. - Choose a lower-case area from the repository's scope list. Separate two scopes with a comma; omit the scope when there is no single area. Add a new scope to the repository's documented list in the same PR when that convention applies.
- Start the description in lower case, omit the final full stop, and aim for a complete subject under 72 characters. Describe the result rather than a method or class edited.
- Keep issue numbers out of titles. Mark a breaking change with
!, such asfeat(api)!: …, and explain the break and migration in the body. - Word issue titles as the outcome the fixing PR delivers. Epics end with
(epic); use(blocked upstream)where the repository follows that convention. Labels carry other classifications. - Commits, PRs and release notes carry no AI attribution or
Co-Authored-Bylines.
Examples:
fix(alerts): acknowledging preserves the current filter
feat(settings): choose the default polling interval
docs: explain local development setupPull requests and merges
- Push the intended topic branch when authorised. Inspect the branch diff against the actual PR base, not just the latest commit.
- Use the PR title as the eventual squash-commit subject. Start the description with
Closes #NNwhen the change resolves an issue; qualify cross-repository references. For partial work, use a non-closing reference. Omit the closing line when there is no issue. - Briefly describe the resulting behaviour, why it matters and how it was checked. Include consumer actions, provenance or migration when relevant, and identify checks still pending. Keep the description aligned with the final scope after revisions.
- Squash-merge by default when a merge is requested and required checks and reviews permit it. Use a repository's documented exception where applicable: DashyNMS MCP permits rebase merges for larger branches whose individual commits are worth retaining. Preserve protected-branch requirements and published history.
- Treat release publication as a separate action. Inspect what a merge, tag or workflow dispatch will trigger before performing it. Follow the repository's release policy, preserve immutable published versions, and publish only within the user's authorised scope.
Finish with the commit or PR reference, a concise validation result, and any remaining checks or consumer steps. Distinguish pushed, merged and released states; report only states actually verified.
Basis
Adapted from DashyNMS desktop's CLAUDE.md and docs/DEVELOPMENT.md, mobile's CLAUDE.md and docs/DEVELOPING.md, Core's CLAUDE.md, MCP's CLAUDE.md and docs/DEVELOPMENT.md, and sensor-definitions' corresponding guides. These are shared defaults; product architecture, scope lists, build commands and release machinery remain repository-owned.
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.

