feature-development-workflow
Skill1 starsChanged 4 months agoApache-2.0View on GitHub
Deliver a GitHub issue from pickup to PR handoff. Use when you are asked to pick up, plan, implement, test, review, push, or open/update a PR for a feature, adapter, worker lane, runtime change, results/persistence change, approval/HITL progression, observability work, or a stacked change against an existing branch.
In this repository13 other files it gives its agents.
- gh-release-train-mergeSkill
- github-project-boardSkill
- implement-issueSkill
- nist-buildSkill
- nist-designSkill
- nist-planSkill
- nist-releaseSkill
- nist-respondSkill
- nist-testSkill
- plan-to-issueSkill
- prettifySkill
- pr-from-branchSkill
- release-candidate-reviewSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
19 rules. About 0 are common, 13 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈13
Distinctive · estimate
This author's own choices. Worth a look.
6
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
- Distinctive: line 8
Use this skill to take an issue from assignment to a merge-ready PR: clear intake, scoped plan, correct branch shape, safe implementation, …
- Very specific: line 12
Read the repo's contributor docs (AGENTS.md, tasks/lessons.md, architecture docs) before editing.
- Very specific: line 16
Write tasks/todo.md before implementation.
- Very specific: line 17
Keep tasks/todo.md current while delivering the issue: mark progress as tasks complete and add the final review/results section before PR …
- Distinctive: line 18
Check in with the user before coding when the change is architectural, high-risk, or materially ambiguous.
- Distinctive: line 26
Use subagents only for bounded work that can run in parallel: issue/PR research, architecture gap analysis, disjoint implementation slices, …
- Distinctive: line 27
Use Subagents to do adversary redteam design reviews, looking for secruity or implementation issuies, loop this untill the design is agreed …
- Distinctive: line 33
Keep commits focused and reviewable.
- Very specific: line 37
Follow the build-phase secure-coding practices in the nist-build skill (code protection, secure coding, build-tool hardening).
- Distinctive: line 38
Follow existing package boundaries.
- Distinctive: line 39
Treat the system of record as the source of truth.
- Distinctive: line 41
Keep behavior configuration-driven and generic where the architecture calls for it, so future variants are supported without migrations.
- Distinctive: line 49
Add focused unit/regression tests for every new function, branch, and failure mode.
- Very specific: line 57
Run targeted tests first, then package gates.
- Distinctive: line 63
Call out any broad bootstrap file whose whole-file coverage remains low even when the new helper branches are directly covered.
- Distinctive: line 67
Commit only after tests and gates pass.
- Distinctive: line 68
Use a subagent for post-commit bug/security review when the user requested subagents or the change touches runtime, persistence, or …
- Very specific: line 72
Check remote PR status with gh pr checks or the GitHub checks surface after pushing.
- Distinctive: line 73
Keep the working tree clean and report any skipped validation with the exact reason.
≈ “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
Issue Delivery
Use this skill to take an issue from assignment to a merge-ready PR: clear intake, scoped plan, correct branch shape, safe implementation, regression tests, independent review, and clean handoff.
Pick Up The Issue
- Read the repo's contributor docs (
AGENTS.md,tasks/lessons.md, architecture docs) before editing. Reconcile the issue with the architecture source of truth. - Fetch the GitHub issue and any linked PRs. Extract acceptance criteria, constraints, open questions, expected tests, target base branch, and whether the work is stacked on an existing PR.
- Claim or mark the issue in progress when the repo workflow expects it, using the existing issue labels, assignees, project status, or a concise comment.
- If the issue builds on a parent PR branch, fetch and inspect the parent PR head/base before branching. Only mutate or push the parent branch when the user owns that branch, explicitly asked for the update, or approved it after inspection; otherwise base the child branch on the remote parent as-is and report the stale-parent risk. Prefer a normal merge from latest
mainover rewriting history unless the repo workflow explicitly requires a rebase. - Write
tasks/todo.mdbefore implementation. Include issue context, architecture impact, branch/PR shape, implementation slices, test/coverageplan, gates, subagent review, and push/PR steps. - Keep
tasks/todo.mdcurrent while delivering the issue: mark progress as tasks complete and add the final review/results section before PR handoff. - Check in with the user before coding when the change is architectural, high-risk, or materially ambiguous. Otherwise proceed from the written plan.
Plan The Work
- Translate the issue into small deliverables with explicit files/packages, behavior changes, failure modes, and regression coverage.
- Decide what kind of change this is: a config/manifest addition, a runtime refactor, a persistence change, a route/API change, a UI change, or a documentation-only update.
- Challenge migrations. Prefer additive configuration/adapter changes over schema changes when the existing generic types can carry the new behavior.
- Identify architecture documentation updates up front. Update the architecture docs in the same PR when changing package boundaries, route families, queues, durable resource types, persisted state, security controls, configuration conventions, or integration patterns.
- Use subagents only for bounded work that can run in parallel: issue/PR research, architecture gap analysis, disjoint implementation slices, or post-commit review. Give coding agents disjoint write scopes and remind them not to revert others' edits.
- Use Subagents to do adversary redteam design reviews, looking for secruity or implementation issuies, loop this untill the design is agreed as good.
Branch And Stack
- Inspect
git statusbefore changing branches. Preserve user edits. - Fetch refs and create a feature branch from the correct base. For stacked work, base the child PR on the parent PR branch, not
main, and avoid pushing parent-branch changes unless ownership/approval is clear. - Keep commits focused and reviewable. Do not merge the PR unless the user explicitly asks for that action in the current turn.
Implement
- Follow the build-phase secure-coding practices in the
nist-buildskill (code protection, secure coding, build-tool hardening). - Follow existing package boundaries. Keep durable state and runtime-neutral contracts, schemas, fixtures, and pure helpers in the packages the architecture designates for them.
- Treat the system of record as the source of truth. Transport/queue layers are wakeups, not durable state.
- Route data-access calls through the existing safe transaction/access wrappers. Do not weaken isolation or access boundaries.
- Keep behavior configuration-driven and generic where the architecture calls for it, so future variants are supported without migrations.
- Register adapters/handlers explicitly, declare what they support, validate input/output with schemas, preserve lane/boundary separation, and use realistic dummy data in tests.
- Make transitions idempotent and fail-closed. Persist output, results, state advancement, and approval activation transactionally before best-effort wakeups.
- Preserve side-by-side compatibility with legacy paths unless the issue explicitly requests cutover.
- Make failures observable. If a step is marked failed without throwing, emit a structured log/capture event. Persist sanitized failure output only, guard logging callbacks, and never forward raw adapter/provider exception objects to logs or telemetry.
Testing
Add focused unit/regression tests for every new function, branch, and failure mode. Map each acceptance criterion to at least one test. Cover the common areas for the kind of change you made, for example:
- Validation for declarations, mismatches, duplicate ids, dependencies, and checked-in fixtures.
- Repository/persistence tests for creation, claiming, state advancement, approval activation, result persistence, and correct linkage.
- Worker/handler tests for input validation, execution, credential resolution, output validation, missing handlers, boundary mismatch, wake-up failures, and reporter failures.
- Adapter tests with realistic dummy data and mocked dependencies.
- Migration tests for each supported backend when schema changes occur.
Run targeted tests first, then package gates. For touched packages, run the coverage command and verify touched files are at least 80% line/function coverage. Finish with the repo's format/lint/typecheck gates and:
git diff --checkCall out any broad bootstrap file whose whole-file coverage remains low even when the new helper branches are directly covered.
Review And Handoff
- Commit only after tests and gates pass.
- Use a subagent for post-commit bug/security review when the user requested subagents or the change touches runtime, persistence, or security.
- Fix actionable review findings, rerun the relevant tests/gates, and amend or add a follow-up commit.
- Push the branch and open/update the PR against the correct base. For stacked work, the child PR targets the parent PR branch.
- The PR body should list summary, issue link, parent PR link when stacked, implementation notes, subagent review status, tests, coverage notes, and explicit follow-ups. Link the PR back to the issue so GitHub can track the delivery path.
- Check remote PR status with
gh pr checksor the GitHub checks surface after pushing. Report pending/failing checks by exact name and fix failures that are in scope. - Keep the working tree clean and report any skipped validation with the exact reason.
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.

