diff --git a/.github/workflows/link-check.yml b/.github/workflows/link-check.yml new file mode 100644 index 0000000..0f12055 --- /dev/null +++ b/.github/workflows/link-check.yml @@ -0,0 +1,33 @@ +name: Link Check + +on: + push: + branches: [main] + pull_request: + branches: [main] + schedule: + # Run weekly on Monday at 08:00 UTC to catch links that rot over time + - cron: "0 8 * * 1" + workflow_dispatch: + +jobs: + link-check: + name: Check links and images + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 + + - name: Check links and images + uses: lycheeverse/lychee-action@8646ba30535128ac92d33dfc9133794bfdd9b411 # v2.8.0 + with: + args: > + --verbose + --no-progress + --exclude-loopback + --exclude "https://komarev.com" + --exclude "https://streak-stats.demolab.com" + --exclude "https://github-readme-stats.vercel.app" + --exclude "https://readme-typing-svg.demolab.com" + README.md + fail: true diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..a7861fc --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,107 @@ +# AGENTS.md + +Context and conventions for AI coding agents (Claude Code, GitHub Copilot, etc.) working in this repository. + +--- + +## Repository Purpose + +This is a GitHub profile README repository. The `README.md` is displayed publicly on [github.com/nitrocode](https://github.com/nitrocode). It functions as a portfolio and professional landing page. + +--- + +## Owner + +**RB** — Cloud Architect, CEO of RB Consulting. + +Focus areas: +- AWS multi-account architectures, FinOps +- Infrastructure as Code (Terraform, OpenTofu) +- Platform Engineering (Kubernetes, GitOps, internal developer platforms) +- AI-native engineering teams and agentic workflows +- Security: policy enforcement, compliance automation, zero-trust +- Leadership: project management, team building, client advisory + +--- + +## Writing Style + +Write in a direct, technical, first-person voice. Match the tone already established in `README.md`. + +**Avoid these AI writing artifacts:** +- Filler openers: "Certainly!", "Of course!", "Great question!", "Happy to help!" +- Redundant summaries that restate what was just said +- Hedge phrases: "I'll help you with that", "Let me assist you" +- Excessive em-dashes and parenthetical asides +- Vague superlatives: "cutting-edge", "robust", "seamless", "game-changer" +- Passive constructions where active voice reads better +- Bullet lists that pad short ideas into three-word fragments + +**Preferred patterns:** +- Short sentences. Active voice. +- Technical precision over marketing language +- Concrete examples over abstract claims +- If something can be said in one sentence, use one sentence + +--- + +## Content Guidelines + +- Keep the profile focused on Cloud, IaC, Platform Engineering, and AI-native engineering +- Highlight Claude Code and Claude Skills — these are current, in-use tools, not just listed buzzwords +- Do not add LangChain, CrewAI, or similar orchestration frameworks unless RB explicitly requests them +- Do not add technologies or skills that are not already present in the README unless explicitly asked +- Badges use `style=for-the-badge` and pull colors from each tool's official brand palette +- The "If you touched it twice, it should be code." quote is intentional — do not modify or remove it +- The profile links (Resume, Blog, Contact) point to: `https://0xfeed.gitlab.io/resume.html`, `https://0xfeed.gitlab.io`, and `https://bit.ly/2K7e76D` respectively + +--- + +## Link and Image Health + +A weekly GitHub Actions workflow (`.github/workflows/link-check.yml`) uses [lychee](https://github.com/lycheeverse/lychee-action) to verify all links and images in `README.md`. + +Dynamic badge widgets are excluded from checks because they return SVG rather than standard HTTP responses: +- `https://komarev.com` +- `https://streak-stats.demolab.com` +- `https://github-readme-stats.vercel.app` +- `https://readme-typing-svg.demolab.com` + +If adding a new link or image, make sure it resolves to a stable URL. Avoid short-lived demo URLs or localhost references. + +--- + +## File Structure + +``` +README.md — public GitHub profile page +AGENTS.md — this file; AI agent context and conventions +CLAUDE.md -> AGENTS.md (symlink) +renovate.json5 — Renovate config; inherits best-practices, pins actions to SHAs +LICENSE +.github/ + workflows/ + link-check.yml — weekly dead-link/image checker +``` + +--- + +## Dependency Management + +GitHub Actions are pinned to full commit SHAs (`uses: owner/action@ # vX.Y.Z`). Renovate manages these via `renovate.json5`, which inherits `config:best-practices` and sets `pinDigests: true`. + +When adding a new workflow step, pin the action to its SHA and add a version comment. Find the SHA with: + +```sh +gh api repos///git/ref/tags/ --jq '.object.sha' +``` + +--- + + + +- Do not rewrite large portions of `README.md` speculatively — make targeted, minimal changes +- Do not add sections, stats widgets, or third-party integrations without being asked +- Do not remove the GitHub Stats or Streak sections +- Do not commit secrets, tokens, or personal contact details not already in the file +- Do not change badge colors or styles without an explicit reason diff --git a/CLAUDE.md b/CLAUDE.md new file mode 120000 index 0000000..47dc3e3 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +AGENTS.md \ No newline at end of file diff --git a/README.md b/README.md index 2453ed3..a1bdc90 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@
-Typing SVG +Typing SVG [![Profile views](https://komarev.com/ghpvc/?username=nitrocode&style=flat-square&color=00D9FF)](https://github.com/nitrocode) [![Resume](https://img.shields.io/badge/Resume-View-blue?style=flat-square&logo=read-the-docs)](https://0xfeed.gitlab.io/resume.html) @@ -13,12 +13,12 @@ ## 🚀 About Me -I'm RB, Cloud Architect and CEO of RB Consulting. I help companies bring their infrastructure under control by treating it as code - cloud, security, pipelines, the works. +I'm RB, Cloud Architect and CEO of RB Consulting. I help companies bring their infrastructure under control by treating it as code — and increasingly, with AI as a force multiplier at every layer of the stack. - 🏗️ IaC: Terraform, OpenTofu - ☁️ AWS: multi-account architectures, FinOps - ⚙️ Platform Engineering: Kubernetes, GitOps, internal developer platforms -- 🤖 AI tooling: using LLMs to ship faster and cut toil +- 🤖 AI-Native Engineering: autonomous AI agents, Claude Code, internal prompt libraries, LLM-powered workflows - 🔐 Security: policy enforcement, compliance automation, zero-trust - 🧑‍💼 Leadership: project management, team building, client advisory @@ -56,10 +56,33 @@ Security & Compliance ![Vault](https://img.shields.io/badge/Vault-FFEC6E?style=for-the-badge&logo=vault&logoColor=black) ![Trivy](https://img.shields.io/badge/Trivy-1904DA?style=for-the-badge&logo=aqua&logoColor=white) +AI & Agents + +![Claude](https://img.shields.io/badge/Claude_Code-D97757?style=for-the-badge&logo=anthropic&logoColor=white) +![Claude Skills](https://img.shields.io/badge/Claude_Skills-D97757?style=for-the-badge&logo=anthropic&logoColor=white) +![OpenAI](https://img.shields.io/badge/OpenAI-412991?style=for-the-badge&logo=openai&logoColor=white) +
--- +## 🤖 AI-Native Engineering + +I've gone deep on making AI a core part of how engineering teams operate — not just as a productivity hack, but as a fundamental shift in how work gets done. + +**What that looks like in practice:** + +- **Claude Code & agentic workflows** — using Claude Code for autonomous coding tasks, code review, and infrastructure generation end-to-end +- **Claude Skills** — building custom Claude Skills that plug domain-specific knowledge and tooling directly into developer workflows +- **Internal prompt libraries** — building versioned, reusable prompt libraries that encode your team's standards and patterns so every engineer benefits from collective knowledge +- **Autonomous AI agents** — designing multi-agent pipelines that handle repetitive ops tasks, security audits, and compliance checks without human-in-the-loop for every step +- **AI-native team transformation** — helping engineering orgs move from "AI as a tool" to "AI as a team member": workflows, guardrails, evaluation loops, and culture +- **LLM-powered platform tooling** — embedding LLMs into internal developer platforms to reduce toil and accelerate onboarding + +If you're thinking about how to actually operationalize AI in your engineering org — not just add a chatbot — let's talk. + +--- + ## 📊 GitHub Stats
@@ -79,7 +102,7 @@ Security & Compliance ## 📬 Let's Work Together -Dealing with messy infrastructure, security gaps, or just need to go faster? Reach out. +Dealing with messy infrastructure, security gaps, AI transformation, or just need to go faster? Reach out.
diff --git a/renovate.json5 b/renovate.json5 new file mode 100644 index 0000000..5907b97 --- /dev/null +++ b/renovate.json5 @@ -0,0 +1,9 @@ +{ + $schema: "https://docs.renovatebot.com/renovate-schema.json", + extends: [ + "config:best-practices", + ], + // Pin GitHub Actions to full commit SHAs for supply-chain security. + // Renovate will keep the pinned SHAs and version comments up to date. + pinDigests: true, +}