Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

238 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Harmon DevKit

My personal developer kit: reusable code templates and boilerplates for various stacks (Docker Compose, Ansible, shell scripts, serverless functions, etc.), standalone scripts, and AI assets (skills, prompts, agents). Also a general home for code that doesn't really fit anywhere else.

Author: Evan Harmon

Build & Validate Devcontainer Build Open in Dev Containers Latest Release Renovate License: MIT Copier Maintained Contributions Welcome

Part of harmon-platform

This repo is part of harmon-platform — my custom development platform with machine configuration, DevOps systems, homelab infrastructure, and automation repos that work together to help me develop software and manage my homelab.

Repo What it is
harmon-init Copier template that bootstraps & standardizes new repos (CI/CD, devcontainers, AI steering, tooling).
harmon-devkit (this repo) Reusable boilerplates & code templates, standalone scripts, and AI assets (skills, prompts, agents).
harmon-dotfiles Shell & app dotfiles, managed declaratively with chezmoi.
harmon-infra Homelab infrastructure as code — Terraform, Ansible, and Docker Compose services.

Repository Structure

Directory Contents
templates/ Copy-paste boilerplates organized by category — see the template index below
scripts/ Standalone scripts and utilities (AppleScript/Automator apps, command snippets)
ai/ AI assets — skills, prompts, agents, rules, evals, etc. — see the AI assets index below
snippets/ Small reusable code snippets (work in progress)
docs/ Project docs, e.g. the harmon-init post-generation checklist

Template Index

Template Category Description
ansible.md Ansible Standard Ansible project directory structure and setup notes
docker/genericStack Docker Generic multi-service Compose sandbox (Ubuntu, nginx, optional DB stack with Postgres/memcached/Adminer) plus dc* helper scripts
docker/n8n-compose Docker n8n workflow automation behind Traefik with automatic HTTPS (Let's Encrypt)
scriptTemplates/shellScriptTemplate.sh Scripts Shell script starter with safe defaults, traps, and arg parsing
scriptTemplates/pythonScriptTemplate.py Scripts Python CLI starter with argparse, logging, and validation
scriptTemplates/goScriptTemplate.go Scripts Go CLI starter with flag parsing, logging, and validation
serverlessFunctionTemplates/awsLambda.py Serverless AWS Lambda handler (Python) with input validation and error responses
serverlessFunctionTemplates/gcpFunction.py Serverless Google Cloud Function (Python/Flask) with input validation and error responses
serverlessFunctionTemplates/netlifyFunction.js Serverless Netlify Function (Node.js) that fetches and returns JSON from an API
webTemplates/netlifyForm.html Web Netlify-ready HTML contact form with honeypot spam protection
skills-sync AI Pinned, pull-based vendoring of shared agent skills from harmon-devkit into a consumer repo — manifest-driven, category-selective (task sync:skills + CI drift check)
claude-hooks/session-end-archive AI Claude Code SessionEnd hook that gzips every session transcript into an archive dir before the cleanupPeriodDays retention deletes it (script + settings snippet)

See templates/README.md for conventions and per-category details.

AI Assets

ai/ collects reusable AI assets organized by type — skills/, agents/, prompts/, rules/, evals/, tools/, workflows/, mcp/, knowledge/, and memories/. Most are placeholders for now; the populated areas are skills (the Agent Skills convention — a SKILL.md with name/description frontmatter) and agents (shared subagents, one flat <name>.md each).

Skills are grouped into category subdirectories (universal/, backend/, frontend/, infra/, mobile/, repo/) so consumer repos can vendor a selected subset via the skills-sync template. Skill directory names must be unique across categories (they are flattened on vendor) — ai/skills/README.md documents the layout, the constraint, and how to add a skill.

Skill Status Description
frontend/explore-designs Draft Guides using Claude Design to explore design directions across your frontend stack
frontend/create-design-system Placeholder Design-system setup
frontend/implement-design Ready Implements a Claude Design .tar.gz handoff into a real codebase — reconcile an existing design system or bootstrap a new one (tokens → shadcn/Tailwind v4 OKLCH, /brand, contrast + licensing gates)
repo/standardize-repo Ready Applies the harmon-init Copier template's conventions to a repo — scaffold a new repo, adopt the template into an existing one, or audit drift from the standards. Bundles the authoritative repo-conventions catalog.
universal/kickoff Ready /kickoff — start-of-session ritual: get oriented in the repo and compose a descriptive session name (emits a copy-pasteable /rename)
universal/breakdown Ready /breakdown — decompose a lump of work (feature, epic, strategy doc, big issue) into GitHub issues sized for one session / one PR / one human review, with milestones and sub-issues where warranted, explicit blocked-by dependency edges, and the target repo's own labels — proposing the full plan for one human approval before any GitHub write
universal/claim Ready /claim — pre-implementation sanity check: verify the target issue and related PRs against the live repo, then claim the issue
universal/implement Ready /implement — drive a claimed issue to a ready-for-review PR: read it as a spec, work the repo's dev loop (check → verify → second-model review → CI mirror), tick acceptance criteria as verified, open the PR, then continue through the shepherd stage. Never claims, never merges
universal/retro Ready /retro — end-of-session retro: loose ends, follow-ups, improvement opportunities, and linked status tables for every PR/issue touched
universal/wrap Ready /wrap — end-of-session ritual: wrap up dangling work and emit the /rename done-<name> command
universal/shepherd Ready /shepherd — shepherd a draft PR to ready for review: watch CI and bot/human reviews, adjudicate findings as hypotheses, fix confirmed ones with per-thread replies, push, re-watch (max 4 rounds, or the repo's own cap; never merges)
universal/track-work Ready GitHub issue/PR tracking hygiene — fires automatically when writing a PR body that closes an issue, filing a follow-up, citing an issue, or closing one. Ships executable checks (Closes vs Refs, unticked items, perishable claims) that CI runs too, plus a narrowed ticking command for criteria you verify as you work

Agents are a flat directory — one <name>.md per subagent, no categories yet. They are deliberately thin: an agent is a delegated context, a skill is procedure, and the agents here point at skills rather than restating them. ai/agents/README.md documents the layout, the portability contract (Claude's format, minus the parts that would strand them in another harness), and the guard.

Agent Status Description
implementer Ready Implements a written plan — or a review finding the caller has already confirmed — in a fresh context, and returns a verified change plus a report. Refuses a brief that isn't self-contained. Never branches, adjudicates review findings, pushes, opens PRs, or merges

Inspired by Other Boilerplate Repos

Setup & Installation

If there isn't an existing template in this repo, start with looking at the https://github.com/ChristianLempa/boilerplates repo for an existing boilerplate there. There is a cli tool to use boilerplates from that repo and you can integrate other repos.

Requirements

  • Homebrew (installs the toolchain via Brewfile)
  • Taskfile (task runner)
  • Node (for npx-based tools: markdownlint-cli2, commitlint)
  • uv (runs the pinned Semgrep CE baseline)

Bootstrap

Install required software to run other project installers and task runners task bootstrap

Install

Install required dependencies task install

Usage

Templates are meant to be copied into your project and adapted — there is no scaffolding CLI (yet). Browse the template index, copy the file or directory you need, and edit the placeholders (names, ports, environment variables) for your project. Each template directory has a README with specifics.

Task Runner

Taskfile.yml

Verify

task check runs the fast lint gate. task verify is the definition-of-done gate (check + validation + Taskfile/hook/skills guards + tests); task ci adds security. task challenge / task review run optional Codex second-model reviews (adversarial / verification checkpoint — advisory, local-only; see docs/guides/codex-review.md).

Security

task security — Semgrep CE SAST + gitleaks secret scan + dependency audit.

Linting, formatting & conventions

Git hooks (managed by lefthook, lefthook.yml) and CI delegate to the same Taskfile targets. Config lives in .editorconfig, .shellcheckrc, .yamllint, .markdownlint.json, commitlint.config.mjs, and .gitleaks.toml.

About

My personal dev kit: reusable code templates and boilerplates for various stacks (Docker Compose, Ansible, shell scripts, serverless functions, etc.), standalone scripts, and AI assets (skills, prompts, agents), etc.

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages