agentleFS
iovisoriovisor/ubpf/.github/skills/evolve/SKILL.md

evolve

Skill996 starsChanged 9 months agoApache-2.0View on GitHub

Evolve uBPF through a gated spec-first workflow that propagates approved changes through requirements, design, validation, implementation, and RFC alignment artifacts.

We split this skill into the rules it gives an agent

21 rules. 0 are common, 18 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 33 edited versions we read keep these.

  • 18

    Distinctive

    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
  1. Very specific:

    If the change touches ISA behavior or target backends, you MUST update docs/specs/isa-reconciliation.md and any affected …

    line 23
  2. Distinctive:

    If you find yourself writing code before the spec gate passes, STOP and return to the current phase.

    line 26
  3. Distinctive:

    If the request is vague, ask for concrete acceptance criteria, measurable bounds, and compatibility expectations before proceeding.

    line 66
  4. Distinctive:

    If the request affects ISA semantics, identify whether the change is:

    line 91
  5. Distinctive:

    Update the affected requirements.

    line 107
  6. Distinctive:

    Update design sections explaining the realization strategy.

    line 108
  7. Distinctive:

    Update validation coverage and any traceability matrices.

    line 109
  8. Very specific:

    Update docs/specs/isa-reconciliation.md when the change affects RFC-facing behavior.

    line 110
  9. Very specific:

    Update any affected specialized spec artifacts under docs/specs/.

    line 112
  10. Distinctive:

    Check completeness, conflicts, and unchanged invariants.

    line 113
  11. Distinctive:

    Check that RFC or ISA reconciliation claims are supported by cited evidence.

    line 127
  12. Distinctive:

    Keep interpreter, JIT, loader, validator, and test expectations aligned.

    line 155
  13. Distinctive:

    If the change adds a target ISA or RFC behavior, ensure the runtime artifacts read from the updated specs rather than hardcoding stale …

    line 156
  14. Distinctive:

    Do not start deliverable packaging from a partially updated tree.

    line 162
  15. Distinctive:

    Verify every approved spec change is implemented.

    line 168
  16. Distinctive:

    Verify no undocumented behavior was introduced.

    line 169
  17. Distinctive:

    Verify tests cover the changed acceptance criteria.

    line 170
  18. Distinctive:

    Commit/PR summary that traces intent -> specs -> implementation -> verification

    line 186
  19. Distinctive:

    Do not skip the spec gate just because the implementation looks obvious.

    line 190
  20. Distinctive:

    Do not silently widen scope beyond the approved change request.

    line 191
  21. Distinctive:

    Do not leave RFC-facing reconciliation stale when behavior changes.

    line 192

“Common” is measured: kept by at least 6 in 10 of the 33 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md
<!-- Generated by PromptKit — edit with care -->

You are evolving uBPF through a spec-first change workflow. Start from the current semantic baseline in docs/specs/, then propagate approved changes through specs, implementation, tests, and RFC-facing reconciliation artifacts.

Critical Constraints - Read Before Doing Anything

  • Execute phases one at a time, in order.
  • In Phase 1 you MUST NOT change code or spec files. Discover and challenge the request first.
  • In Phase 2 you MUST update requirements, design, validation, and reconciliation artifacts before implementation.
  • In Phase 3 you MUST audit the proposed spec changes before touching code.
  • In Phase 4 you MUST obtain user approval of the spec change set before implementation.
  • In Phase 5 you MAY change code and tests, but only to realize approved specification changes.
  • In Phase 6 you MUST audit implementation and verification changes before closing the loop.
  • If the change touches ISA behavior or target backends, you MUST update docs/specs/isa-reconciliation.md and any affected docs/specs/jit-*.md artifact as part of the spec phase, not as an afterthought.
  • If you find yourself writing code before the spec gate passes, STOP and return to the current phase.
  • Why this pipeline exists: uBPF needs deterministic extension work for new ISA features and new target ISAs. Code-first changes without spec propagation make future RFC audits and backend evolution unreliable.

Current Pass Tracking

At the start of the workflow and after every phase transition, announce:

CURRENT PHASE: Phase N - <name>
STATUS: In progress
NEXT: Phase N+1 - <name> (blocked until current gate passes)

Repository Context

  • Baseline artifacts:
    • docs/specs/requirements.md
    • docs/specs/design.md
    • docs/specs/validation.md
    • docs/specs/audit-report.md
    • docs/specs/isa-reconciliation.md
  • Specialized specs may also exist under docs/specs/, including JIT-specific design documents such as jit-*.md.
  • Likely implementation roots:
    • vm/ for VM, JIT, loader, and validator changes
    • ubpf/ for assembler/disassembler changes
    • tests/, test_framework/, custom_tests/, and libfuzzer/ for verification

Inputs

Expect the user to provide:

  • The desired change
  • Optional affected RFC sections, new RFCs, or target ISA notes
  • Optional focus files or subsystems
  • Optional constraints such as portability, compatibility, or rollout boundaries

If the request is vague, ask for concrete acceptance criteria, measurable bounds, and compatibility expectations before proceeding.

Required Outputs

Produce a traceable change package containing:

  1. A requirements patch or requirements update
  2. A specification patch covering design, validation, and reconciliation artifacts
  3. Implementation and test changes
  4. At least one spec audit result
  5. At least one implementation audit result
  6. A summary of what changed, what did not change, and any deferred follow-up

Workflow

Phase 1 - Requirements Discovery

Clarify the requested change before editing anything.

  1. Restate the requested change.
  2. Identify affected requirements, new requirements, retired requirements, and impacted invariants.
  3. Challenge hidden assumptions, especially around portability, interpreter/JIT parity, verifier assumptions, and RFC compatibility.
  4. If the request affects ISA semantics, identify whether the change is:
    • Implementation catch-up to current RFC behavior
    • An intentional extension
    • Preparation for a future RFC
    • A new target ISA/backend capability
  5. Produce a scoped requirements change summary.

Critical Rule

Do NOT proceed to Phase 2 until the user explicitly says discovery is complete. Present the scoped requirements change summary, ask for confirmation, and WAIT.

Phase 2 - Specification Changes

Propagate the approved requirements intent downstream.

  1. Update the affected requirements.
  2. Update design sections explaining the realization strategy.
  3. Update validation coverage and any traceability matrices.
  4. Update docs/specs/isa-reconciliation.md when the change affects RFC-facing behavior.
  5. Update any affected specialized spec artifacts under docs/specs/.
  6. Check completeness, conflicts, and unchanged invariants.

Critical Rule

Do NOT proceed to Phase 3 until the specification change set is complete. The only permitted outputs of this phase are spec artifacts and traceability updates, not code.

Phase 3 - Specification Audit

Adversarially verify the spec package.

  1. Reconstruct the user intent.
  2. Trace requirements forward into design and validation.
  3. Trace design and validation backward to requirements.
  4. Check that RFC or ISA reconciliation claims are supported by cited evidence.
  5. Record findings with explicit evidence and why disproof failed.
  6. Produce a verdict: PASS, REVISE, or RESTART.

Critical Rule

Do NOT proceed to Phase 4 unless the spec audit verdict is PASS or the user explicitly accepts the remaining issues. If the verdict is REVISE or RESTART, loop back.

Phase 4 - User Review of Specifications

Present:

  1. The requirements change set
  2. The specification change set
  3. The spec audit findings and verdict
  4. A summary of affected and unaffected behavior

Critical Rule

Do NOT proceed to Phase 5 until the user approves the specification changes.

Phase 5 - Implementation and Verification Changes

Realize the approved spec changes.

  1. Identify implementation files and tests affected by the approved spec delta.
  2. Make the minimum code and test changes needed to realize the new behavior.
  3. Keep interpreter, JIT, loader, validator, and test expectations aligned.
  4. If the change adds a target ISA or RFC behavior, ensure the runtime artifacts read from the updated specs rather than hardcoding stale assumptions.

Critical Rule

Do NOT proceed to Phase 6 until implementation and verification changes are complete. Do not start deliverable packaging from a partially updated tree.

Phase 6 - Implementation Audit

Audit the realized change.

  1. Verify every approved spec change is implemented.
  2. Verify no undocumented behavior was introduced.
  3. Verify tests cover the changed acceptance criteria.
  4. Re-check interpreter/JIT parity and target-specific implications when relevant.
  5. Produce a verdict: PASS, REVISE-IMPLEMENTATION, REVISE-SPEC, or RESTART.

Critical Rule

Do NOT close the workflow while unresolved high-severity audit findings remain. Loop back to the correct phase instead.

Phase 7 - Delivery

Produce the final handoff:

  1. Updated artifacts and code
  2. Audit results
  3. Coverage statement
  4. Commit/PR summary that traces intent -> specs -> implementation -> verification

Non-Goals

  • Do not skip the spec gate just because the implementation looks obvious.
  • Do not silently widen scope beyond the approved change request.
  • Do not leave RFC-facing reconciliation stale when behavior changes.

Download now (ZIP)

  • Other versions38 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 38

    1. revfactory/harness★ 9.1ksame name
    2. Q00/ouroboros★ 6.3ksame name
    3. yologdev/yoyo-evolve★ 1.9ksame name
    4. SethGammon/Citadel★ 927same name
    5. GAIR-NLP/ASI-Evolve★ 867same name
    6. Kanevry/session-orchestrator★ 53same name
    7. mycelium-hq/ai-brain-starter★ 43same name
    8. unclejobs-ai/second-claude-code★ 40same name
    9. epicsagas/epic-harness★ 19same name
    10. YehudaFrankel/clankbrain★ 16same name

    28 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.

  • Used alongsideProjects with it also use instinct-export, instinct-import 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.
    • TheKREATORSSkill

      instinct-export

      Export instincts from project/global scope to a file

      Also in 4 projects that use this

    • TheKREATORSSkill

      instinct-import

      Import instincts from file or URL into project/global scope

      Also in 4 projects that use this

    • diego-tobalinaSkill

      build-fix

      Fix build and compilation errors systematically. Run when build fails.

      Also in 3 projects that use this

    • launch52-aiSkill

      skill-create

      Create and validate Claude Code skills with proper structure, checklists, and validation scripts. Use when creating a new skill, auditing existing skills, or ensuring skills meet quality standards. Generates complete skill scaffolds with SKILL.md, check scripts, guides, and templates.

      Also in 3 projects that use this

    • qtzx06Skill

      eval

      Evaluate trained YOLO model accuracy with mAP metrics and per-class error analysis. Identifies failure cases for targeted improvement. Use after training.

      Also in 5 projects that use this

    • AWSSkill

      map

      Map verified service capabilities against customer-provided control framework and threat model. Produces mapping-results.json, controls-catalog.md, and framework-mapping.md. Supports pluggable frameworks: CCMv4, NIST 800-53, CIS Benchmarks, ISO 27001, etc. Split into 4 focused sub-skills for better accuracy; this skill orchestrates them.

      Also in 4 projects that use this

    • +1 more from TheKREATORS
  • In this repository5 other files it gives its agents.

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.