agentleFS
daniel-kindldaniel-kindl/dkstack/skills/bootstrap/SKILL.md

bootstrap

Skill1 starsChanged 8 days agoMITView on GitHub

Use when you create a new repository or a repository has no commit, branch or version rules yet. Sets up conventional commits, short-lived branches, semver, strict editorconfig, warnings as errors, deterministic checks and supply chain rules.

70 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use surprise-me, ppt-generation 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.
  • stophobiaSkill

    surprise-me

    Create a delightful, unexpected "wow" experience for the user by dynamically discovering and creatively combining other enabled skills. Triggers when the user says "surprise me" or any request expressing a desire for an unexpected creative showcase. Also triggers when the user is bored, wants inspiration, or asks for "something interesting".

    Also in 3 projects that use this

  • HK-hubSkill

    ppt-generation

    Use this skill when the user requests to generate, create, or make presentations (PPT/PPTX). Creates visually rich slides by generating images for each slide and composing them into a PowerPoint file.

    Also in 3 projects that use this

  • stophobiaSkill

    github-deep-research

    Conduct multi-round deep research on any GitHub Repo. Use when users request comprehensive analysis, timeline reconstruction, competitive analysis, or in-depth investigation of GitHub. Produces structured markdown reports with executive summaries, chronological timelines, metrics analysis, and Mermaid diagrams. Triggers on Github repository URL or open source projects.

    Also in 3 projects that use this

  • HK-hubSkill

    consulting-analysis

    Use this skill when the user requests to generate, create, or write professional research reports including but not limited to market analysis, consumer insights, brand analysis, financial analysis, industry research, competitive intelligence, investment due diligence, or any consulting-grade analytical report. This skill operates in two phases — (1) generating a structured analysis framework with chapter skeleton, data query requirements, and analysis logic, and (2) after data collection by other skills, producing the final consulting-grade report with structured narratives, embedded charts, and strategic insights.

    Also in 3 projects that use this

  • MicrosoftSkill

    podcast-generation

    Generate AI-powered podcast-style audio narratives using Azure OpenAI's GPT Realtime Mini model via WebSocket. Use when building text-to-speech features, audio narrative generation, podcast creation from content, or integrating with Azure OpenAI Realtime API for real audio output. Covers full-stack implementation from React frontend to Python FastAPI backend with WebSocket streaming.

    Also in 3 projects that use this

  • VercelSkill

    vercel-deploy

    Deploy applications and websites to Vercel with a claimable preview. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment". No authentication required - returns preview URL and claimable deployment link.

    Also in 4 projects that use this

  • +1 more from HK-hub

The file

Show its rules and text

We split this skill into the rules it gives an agent

21 rules. 0 are common, 17 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 62 edited versions we read keep these.

  • 17

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use when you set up a new repository or bring an existing one up to standard.

    line 8
  2. Very specific:

    Add or update .editorconfig with strict settings:

    line 14
  3. Distinctive:

    If the language has no such option, add a CI check that fails on any warning.

    line 33
  4. Distinctive:

    Document conventional commits and short-lived feature branches in the repo README or AGENTS.md.

    line 41
  5. Distinctive:

    Put the version in the project manifest.

    line 45
  6. Distinctive:

    Put the version in a comment on the same line.

    line 59
  7. Distinctive:

    Do not refer to an action by a branch name or a version tag.

    line 61
  8. Distinctive:

    Do not give all permissions.

    line 65
  9. Distinctive:

    Do not keep credentials in the checked-out code when a later step does not need them.

    line 66
  10. Distinctive:

    Commit the lockfile of the package manager.

    line 68
  11. Distinctive:

    Run a vulnerability audit of the dependencies in CI on every pull request.

    line 72
  12. Distinctive:

    Use the audit command of the package manager, or a dependency audit tool for the ecosystem.

    line 73
  13. Distinctive:

    Check for updates at least weekly.

    line 79
  14. Distinctive:

    Run the tracker preflight before you change the tracker.

    line 81
  15. Very specific:

    Run scripts/preflight.mjs with no arguments.

    line 83
  16. Very specific:

    Run scripts/preflight.mjs --apply to create missing labels.

    line 86
  17. Distinctive:

    Do not change protection, settings or infrastructure.

    line 87
  18. Very specific:

    Run scripts/preflight.mjs again with no arguments.

    line 88
  19. Distinctive:

    Do not weaken existing quality gates.

    line 92
  20. Distinctive:

    Prefer the smallest change that brings the repo into compliance.

    line 93
  21. Distinctive:

    After bootstrap, the repository must produce a clean build with zero warnings.

    line 94

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

Bootstrap

Use when you set up a new repository or bring an existing one up to standard.

Apply the rules from version-control, versioning, and coding sections. Steps 7 to 11 apply the supply chain rules in coding/dependencies.md.

Steps

  1. Add or update .editorconfig with strict settings:
    • root = true
    • charset = utf-8
    • end_of_line = lf
    • indent_style = space
    • trim_trailing_whitespace = true
    • insert_final_newline = true
    • Language-specific indent sizes as needed
    • trim_trailing_whitespace = false for Markdown
    • Follow brace style. For C# tools that read Roslyn settings, add [*.cs] with csharp_new_line_before_open_brace = all. For C and C++ with clang-format, merge BreakBeforeBraces: Allman into .clang-format. Check the result with the selected formatter and enforce it in CI. Keep Go on gofmt and use the documented exceptions. EditorConfig has no standard brace-placement property. If the tool has no supported setting, record the preference as documentation only. Keep existing quality gates.
  2. Configure the build so warnings are errors and the build produces zero warnings and zero hints.
    • Set the compiler or build option that treats warnings as errors.
    • If the language has no such option, add a CI check that fails on any warning.
  3. Set up CI that:
    • Runs on every push to the default branch and on every pull request
    • Installs dependencies
    • Runs the full check (build, test, lint)
    • Fails if any warning or error appears
  4. Document conventional commits and short-lived feature branches in the repo README or AGENTS.md.
  5. Set up semantic versioning.
  6. Ensure deterministic checks:
    • Pin dependency versions where practical.
    • Make test and build output stable.
    • Fail the build on any non-zero warning count.
    • Follow coding/naming.md. Configure naming rules that native tools can check reliably, such as supported Roslyn, ESLint or Ruff rules. Run those checks in CI as errors. An .editorconfig file alone does not enforce naming in every language. Leave unsupported or semantic rules to review.
  7. Pin each third-party CI action or reusable CI step to a full commit SHA.
    • Put the version in a comment on the same line.
    • Get the SHA from the release tag on the code host. Do not use the tag itself, because a tag can move to other code.
    • Do not refer to an action by a branch name or a version tag.
  8. Give each CI job the least privilege that it needs.
    • Set the default token permission to read-only for the repository contents.
    • Do not give all permissions. Give a write permission only to the one job that needs it.
    • Do not keep credentials in the checked-out code when a later step does not need them.
  9. Commit the lockfile of the package manager.
    • Install the dependencies once with the package manager. Then commit the lockfile that it writes.
    • In CI, install from the lockfile only. Use the package manager mode that fails when the lockfile does not agree with the dependency list.
  10. Run a vulnerability audit of the dependencies in CI on every pull request.
    • Use the audit command of the package manager, or a dependency audit tool for the ecosystem.
    • Make the job fail on high or critical findings.
  11. Turn on automated dependency update proposals and vulnerability alerts.
    • Cover the dependencies of the package manager.
    • Cover the pinned CI actions from step 7, because pinned versions do not update themselves.
    • Check for updates at least weekly.
  12. Run the tracker preflight before you change the tracker.
    • Read preflight.md.
    • Run scripts/preflight.mjs with no arguments. The command discovers the tracker for this repository. The default is a dry run.
    • Report each unsupported capability and its fallback. Report each unverified capability. Do not report an unverified capability as unsupported.
    • Run scripts/preflight.mjs --apply to create missing labels. That run creates only the missing catalog labels. It does not change an existing label. It does not remove a label. Do not pass a report file with --apply.
    • Do not change protection, settings or infrastructure.
    • Run scripts/preflight.mjs again with no arguments. The second plan has no new create.

Rules

  • Do not weaken existing quality gates.
  • Prefer the smallest change that brings the repo into compliance.
  • After bootstrap, the repository must produce a clean build with zero warnings.

See also:

Download now (ZIP)

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.