mirror of
https://github.com/magnus919/agent-skills.git
synced 2026-09-17 14:36:29 +03:00
Squash-merge verified routing remediation at exact head 690f9c14b0. Required validate and paired evaluation checks passed; advisory droid review had no blocking findings.
238 lines
15 KiB
Markdown
238 lines
15 KiB
Markdown
---
|
|
name: neckbeard
|
|
description: >-
|
|
Use when asked to fix, build, refactor, review, verify, or release software and the work
|
|
is non-trivial — including delivering a change request through planning, gates,
|
|
implementation, review, verified PR, and authorized release; continuing work started
|
|
elsewhere with no packet via evidence-based position assessment; or operating tracked
|
|
work items in Linear, Jira, or Notion via their tooling skills. neckbeard routes the
|
|
change through framing, discovery, design, implementation, review, verification, and
|
|
learning — choosing the smallest *safe* intervention, proving it at the real delivery
|
|
boundary, and leaving an inspectable evidence ledger. For issue-to-PR work, conditionally
|
|
loads a 9-phase journey with gates and lifecycle integration. Composes specialist catalog
|
|
skills rather than replacing them. Not a persona or LOC-minimizer. Do not use this skill
|
|
for unrelated requests; route to the nearest named specialist.
|
|
license: MIT
|
|
compatibility: Agent harness with file read/write, terminal, and skill loading. No network or runtime dependency required by the bundle itself.
|
|
metadata:
|
|
spec-version: "1.0"
|
|
tags: sdlc, delivery, evidence, verification, workflow
|
|
---
|
|
|
|
# neckbeard
|
|
|
|
A disciplined operating model for software delivery. It does not perform a
|
|
character. It makes an agent do six things reliably: frame the change, discover
|
|
the real system before designing, pick the smallest *safe* intervention, execute
|
|
by stage, record evidence, and stop or escalate when the evidence runs out.
|
|
|
|
The name is a joke about the "10x developer in a Markdown file" trope. The
|
|
substance is the opposite of that trope: effectiveness here is earned by
|
|
observable outcomes and scoped claims, never asserted by a persona.
|
|
|
|
## When to load this
|
|
|
|
Load neckbeard when a request is a non-trivial software change — a bug to
|
|
diagnose, a feature to build, a refactor, a review, a release to verify — and
|
|
you need a bounded, stage-aware way to carry it to a defensible "done."
|
|
|
|
## When not to use
|
|
|
|
Do **not** load it for:
|
|
- A single factual question or lookup (answer directly).
|
|
- A one-line edit whose contract is already fully specified (just do it, but
|
|
still verify at the boundary).
|
|
- A task already owned end-to-end by a more specific skill (route there; see
|
|
[references/routing-table.md](references/routing-table.md)).
|
|
|
|
## Core loop
|
|
|
|
Every run moves through the same spine. Each stage has entry conditions,
|
|
required evidence, exit conditions, and escalation rules detailed in
|
|
[references/stages.md](references/stages.md).
|
|
|
|
1. **Frame the change contract.** State the user-visible problem, constraints,
|
|
system boundary, risks, and explicit non-goals. Distinguish *authority to
|
|
explore* from *authority to modify, publish, deploy, or merge*. Stop early if
|
|
no change is justified, and keep the evidence for that decision.
|
|
Template: [templates/change-contract.md](templates/change-contract.md).
|
|
|
|
2. **Discover before designing.** Inspect the actual repository, contribution
|
|
guidance, architecture, callers, tests, config, and recent changes *before*
|
|
proposing a fix. Prefer primary evidence (code, tests, runtime output,
|
|
project docs) over plausible architecture narratives. Make unverified
|
|
assumptions and missing access explicit.
|
|
|
|
3. **Select the smallest safe intervention.** Reuse existing code and platform
|
|
capabilities first; then the smallest implementation that satisfies the
|
|
verified contract. Treat "smallest diff" as a *consequence of understanding*,
|
|
not an optimization target. Never trade away trust-boundary validation, data
|
|
safety, security, accessibility, observability, operational recovery, or
|
|
explicitly requested behavior. Record any deliberate ceiling and its upgrade
|
|
trigger.
|
|
|
|
Classify a test-hardening request explicitly when production behavior is
|
|
already correct and the work adds a focused guard for a coverage gap or named
|
|
mutation. That is a lightweight-path subtype, not an ordinary production
|
|
bugfix: use baseline-pass / mutant-fail evidence instead of requiring the new
|
|
test to fail on clean `main`. Load
|
|
[references/lightweight-test-hardening.md](references/lightweight-test-hardening.md)
|
|
for the bounded contract and escalation triggers.
|
|
|
|
4. **Execute by SDLC stage.** Route the work to the stage that owns it —
|
|
discovery/requirements, design, implementation, verification, delivery,
|
|
learning. Load the matching specialist skill where one exists rather than
|
|
re-deriving its method (see routing table).
|
|
|
|
5. **Keep an evidence ledger.** Each non-trivial run emits a compact record:
|
|
intent, inspected artifacts, assumptions, rejected alternatives, files
|
|
changed, commands/checks run, observed outputs, unverified boundaries,
|
|
rollback/follow-up triggers. Distinguish a component check from an
|
|
end-to-end or production-boundary check. Format and rules:
|
|
[references/evidence-ledger.md](references/evidence-ledger.md).
|
|
Template: [templates/evidence-ledger.md](templates/evidence-ledger.md).
|
|
|
|
6. **Stop and escalate by rule.** Stop and report when the task has no verified
|
|
need, a risk/authority boundary needs a human, or two materially different
|
|
approaches have failed. Never trade persistence for privilege escalation,
|
|
destructive recovery, or unbounded workaround churn. Rules:
|
|
[references/risk-authority-gates.md](references/risk-authority-gates.md).
|
|
|
|
## Change-request work (conditional)
|
|
|
|
When the request is a change request — an issue, ticket, or tracked request that
|
|
will produce a pull request or an equivalent reviewable deliverable — the 6-step
|
|
core loop above still governs each stage, but the run also follows the canonical
|
|
9-phase change-request journey:
|
|
|
|
→ **[references/journey.md](references/journey.md)** — intake → discovery →
|
|
design → spec → test plan → implementation → review → readiness → authorized
|
|
release.
|
|
|
|
The journey adds gates, a delivery packet for cross-phase state, and platform
|
|
lifecycle mechanics (GitHub or enterprise). It does **not** replace the core loop
|
|
or create a second orchestrator.
|
|
|
|
**Do not load the journey for:** a simple fix, refactor, or review that has no
|
|
issue/ticket trajectory. That work uses the core loop and the stage references
|
|
below without the journey's phases, packet, or gates.
|
|
|
|
### Mid-flight engagement (conditional)
|
|
|
|
When the request is to **continue delivery work that started elsewhere** — a
|
|
half-implemented branch, an adopted spec, a change request another contributor
|
|
began — and no delivery packet exists, do not restart at phase 1 and do not
|
|
trust narrative summaries of what was done. Run position assessment first:
|
|
inventory observable artifacts, score them against phase exit conditions, emit
|
|
a position report (current step, satisfied gates with evidence pointers,
|
|
remaining checklist), then bootstrap a packet and continue under the normal
|
|
journey.
|
|
|
|
Procedure: [references/position-assessment.md](references/position-assessment.md).
|
|
Load it only for mid-flight engagement; fresh change requests start at phase 1,
|
|
and existing packets govern resumability through
|
|
[references/delivery-packet.md](references/delivery-packet.md).
|
|
|
|
## Path selection before ceremony
|
|
|
|
Select the delivery path immediately after current-state discovery and before
|
|
creating path-specific artifacts. Use the affected surface and risk, not line
|
|
count alone.
|
|
|
|
For a test-hardening request, choose the lightweight path only when production
|
|
behavior is already correct, production code remains unchanged, the change is
|
|
confined to tests or fixtures, and a focused deterministic check plus a bounded
|
|
controlled weakening can expose the regression. Record the invariant, the clean
|
|
baseline evidence, the named mutation, and the non-goals. Do not apply the
|
|
ordinary bugfix requirement that a new test fail on clean `main`.
|
|
|
|
For expensive or serialized CI, local design, hermeticity, focused tests,
|
|
targeted mutation, lint, compilation, and scope checks must pass before the
|
|
first push. Freeze the candidate before requesting one bounded final review or
|
|
the repository's required platform review. A timed-out review is inconclusive,
|
|
not a reason to launch repeated review rounds. Material changes invalidate the
|
|
relevant verification and bind the replacement verdicts to the new exact head.
|
|
|
|
The detailed test-hardening contract and escalation triggers are in
|
|
[references/lightweight-test-hardening.md](references/lightweight-test-hardening.md).
|
|
|
|
## The one rule that defines "done"
|
|
|
|
> "Done" is prohibited unless the declared verification target has actually been
|
|
> exercised. If it has not, report the unverified gap honestly instead of
|
|
> claiming completion.
|
|
|
|
A passing unit test is not the same as exercising the delivery boundary. A local
|
|
render is not production. State which boundary was checked and which was not.
|
|
Verification method: load the catalog skill `verification-methodology`.
|
|
|
|
## Minimalism, correctly
|
|
|
|
Minimalism in this bundle is a *conditional* design choice made **after**
|
|
real-flow understanding — not an unconditional "fewest lines wins" reflex. The
|
|
correct answer is sometimes a larger change, a new dependency, a process change,
|
|
or no code change at all. The evaluation fixtures include adversarial cases
|
|
specifically so the bundle cannot win by reflexively deleting or compressing.
|
|
See [references/stages.md](references/stages.md) §3.
|
|
|
|
## Routing: compose, don't swallow
|
|
|
|
neckbeard owns the *cross-stage contracts* — the change contract, evidence
|
|
ledger, stop rules, and evaluation protocol. It does **not** own domain method.
|
|
When a stage has a specialist skill, load it and follow it. The full table with
|
|
"use existing skill instead" conditions is
|
|
[references/routing-table.md](references/routing-table.md). Summary:
|
|
|
|
| Stage / need | Load this catalog skill instead of re-deriving |
|
|
|---|---|
|
|
| Stakeholder discovery, requirements, ACs | `product-discovery` |
|
|
| User-facing behavior, interaction, information architecture | `product-design-and-ux` |
|
|
| Formal specification, phase gates | `spec-driven-development` |
|
|
| Reverse-engineering an existing codebase | `software-architecture-analysis` |
|
|
| Designing or evolving an API / interface contract | `api-design-and-evolution` |
|
|
| Root-cause debugging | `systematic-debugging` |
|
|
| Security review, threat modeling, secure design | `secure-software-engineering` |
|
|
| Accessibility (WCAG, keyboard/focus, error recovery) | `web-accessibility` |
|
|
| Test strategy, regression testing, CI quality gates | `qa-methodology` |
|
|
| Mobile app implementation (iOS/Android/Flutter/React Native) | `mobile-development` |
|
|
| Docs / README / API reference | `technical-documentation` |
|
|
| Verification verdicts and evidence | `verification-methodology` |
|
|
| Intent contracts, work classification, autonomy gating, failure routing across a run | `bmad` |
|
|
| Release planning, versioning, pipeline promotion, readiness, rollout, or rollback design | `release-engineering` |
|
|
| Reliability, incident response, or operational recovery | `site-reliability-engineering` |
|
|
|
|
If a specialist skill is not installed, neckbeard's stage references provide a
|
|
minimal fallback method — but note in the ledger that the specialist was absent.
|
|
|
|
## Evaluation is a first-class deliverable
|
|
|
|
This bundle ships a versioned evaluation harness in [eval/](eval/). It measures
|
|
SDLC *outcomes* the bundle claims to improve — correctness, regression safety,
|
|
scope discipline, boundary verification, honest uncertainty — never LOC or
|
|
response brevity. Before claiming any improvement, run the public suite and
|
|
report holdout results through the maintainers' workflow. Methodology:
|
|
[references/evaluation.md](references/evaluation.md).
|
|
|
|
**Claims policy.** Scope every performance claim to the evaluated models,
|
|
harnesses, repositories, task classes, and dates. Do not use "10x developer,"
|
|
"always," "best," or any global performance claim without a published,
|
|
reproducible definition and evidence. LOC may appear only as diagnostic
|
|
metadata, never as a success proxy.
|
|
|
|
## File map
|
|
|
|
| Path | Loaded when |
|
|
|---|---|
|
|
| [references/stages.md](references/stages.md) | Entering any SDLC stage; defines entry/evidence/exit/escalation per stage |
|
|
| [references/evidence-ledger.md](references/evidence-ledger.md) | Building or auditing the ledger; defines required fields and boundary rules |
|
|
| [references/risk-authority-gates.md](references/risk-authority-gates.md) | Before any mutation, deploy, merge, or destructive act; and on stop/escalation |
|
|
| [references/routing-table.md](references/routing-table.md) | Deciding whether a specialist skill owns the current stage |
|
|
| [references/journey.md](references/journey.md) | **Change-request work only** — an issue/ticket/request that will produce a PR or equivalent reviewable deliverable. Defines the 9-phase intake→release sequence, gates, and paths. **Not loaded** for a simple fix, refactor, or review without an issue/ticket trajectory (that work uses the core loop above). |
|
|
| [references/lightweight-test-hardening.md](references/lightweight-test-hardening.md) | Test-only regression guards for already-correct production behavior: baseline-pass / mutant-fail evidence, hermeticity, finality-before-push, bounded review, and escalation triggers. |
|
|
| [references/lifecycle.md](references/lifecycle.md) | **Change-request work only** — platform mechanics (GitHub reference mode or enterprise mode) for intake, submission, CI/review monitoring, and authorized release. **Not loaded** for a simple fix, refactor, or review without an issue/ticket trajectory. |
|
|
| [references/delivery-packet.md](references/delivery-packet.md) | **Change-request work only** — carrying state across phases of a change-request run, or resuming after a context boundary; defines packet fields, artifact ownership, lifecycle states, and resumability. **Not loaded** for a simple fix, refactor, or review without an issue/ticket trajectory. |
|
|
| [references/position-assessment.md](references/position-assessment.md) | **Mid-flight engagement only** — continuing delivery work that started elsewhere with no delivery packet: artifact inventory, exit-condition scoring, position report, packet bootstrap. |
|
|
| [references/tracker-discovery.md](references/tracker-discovery.md) | **Change-request intake** — detecting which tracking system holds the work item and routing tracker operations to the matching catalog tooling skill; keeps the journey vocabulary tracker-neutral. |
|
|
| [references/evaluation.md](references/evaluation.md) | Designing, running, or reporting an evaluation |
|
|
| [templates/](templates/) | Change contract, decision record, evidence ledger, verification plan, eval report; plus [templates/delivery-packet.md](templates/delivery-packet.md) — the fillable packet, **for change-request work only** (not for a simple fix/refactor/review without an issue trajectory) |
|
|
| [eval/](eval/) | Task schema, rubric, baseline protocol, fixtures, runner | |