{"id":51278930,"url":"https://github.com/ravidsrk/agent-skills","last_synced_at":"2026-06-30T00:01:51.532Z","repository":{"id":366379022,"uuid":"1276072657","full_name":"ravidsrk/agent-skills","owner":"ravidsrk","description":"Public Agent Skills built to the agentskills.io specification — start with terminal-poster (5-cluster reusable infographic system).","archived":false,"fork":false,"pushed_at":"2026-06-21T14:26:51.000Z","size":3222,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-21T16:07:25.526Z","etag":null,"topics":["agent-skills","agentskills","ai-agents","claude-code","mogra","nano-banana-pro","openclaw","openrouter","skills","terminal-aesthetic"],"latest_commit_sha":null,"homepage":"https://agentskills.io","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ravidsrk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-21T14:05:18.000Z","updated_at":"2026-06-21T14:26:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ravidsrk/agent-skills","commit_stats":null,"previous_names":["ravidsrk/agent-skills"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ravidsrk/agent-skills","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravidsrk%2Fagent-skills","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravidsrk%2Fagent-skills/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravidsrk%2Fagent-skills/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravidsrk%2Fagent-skills/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ravidsrk","download_url":"https://codeload.github.com/ravidsrk/agent-skills/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravidsrk%2Fagent-skills/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34947088,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-skills","agentskills","ai-agents","claude-code","mogra","nano-banana-pro","openclaw","openrouter","skills","terminal-aesthetic"],"created_at":"2026-06-30T00:01:50.918Z","updated_at":"2026-06-30T00:01:51.526Z","avatar_url":"https://github.com/ravidsrk.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eAgent Skills\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eProduction-grade capability skills for AI agents.\u003c/strong\u003e\u003cbr/\u003e\n  DNS migration, AWS migration, deep research, and viral image generation — battle-tested in production, portable across runtimes.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ravidsrk/agent-skills/blob/main/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"MIT License\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://agentskills.io/specification\"\u003e\u003cimg src=\"https://img.shields.io/badge/spec-agentskills.io-orange.svg\" alt=\"agentskills.io spec\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/ravidsrk/agent-skills/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/ravidsrk/agent-skills.svg?style=flat\" alt=\"Stars\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/ravidsrk/agent-skills/commits/main\"\u003e\u003cimg src=\"https://img.shields.io/github/last-commit/ravidsrk/agent-skills.svg\" alt=\"Last commit\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/banner.jpg\" alt=\"agent-skills — production-grade skills for AI agents\" width=\"100%\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003csub\u003e↑ Generated by Nano Banana Pro via OpenRouter. Prompt: \u003ca href=\"scripts/banner/banner-prompt.txt\"\u003escripts/banner/banner-prompt.txt\u003c/a\u003e\u003c/sub\u003e\u003c/p\u003e\n\n---\n\n# What's inside\n\n5 skills, organized by what they do — not by SDLC phase. These are **discrete capabilities** an agent reaches for when the task fits, not lifecycle steps that fire in sequence.\n\n# 🌐 Infrastructure\n\n| Skill | What it does | Cost / latency |\n|---|---|---|\n| ☁️ **[cloudflare-dns](skills/cloudflare-dns/)** | End-to-end Cloudflare DNS migration and management. Move domains from any registrar, manage records via API, harden with DNSSEC + CAA + Origin CA, roll back cleanly. State persists in `./.dns-state/\u003cdomain\u003e/` for reuse + rollback. | Free + ~5 min/domain |\n| 🧾 **[namecheap-dns](skills/namecheap-dns/)** | Manage DNS records at Namecheap via the XML API — list, add, update, delete A/AAAA/CNAME/TXT/MX without the dashboard. Handles the two API quirks (IP allowlist, wholesale-replace `setHosts`) transparently. | Free + ~30s/change |\n| 🚀 **[fly-to-aws-migration](skills/fly-to-aws-migration/)** | End-to-end playbook for migrating a Fly.io project to AWS. 7 phases, 5 PRs, full rollback preserved. Postgres → Aurora, Machines → ECS Fargate, static sites → S3+CloudFront, DNS cutover via Cloudflare. Battle-tested with ≤9 min total downtime. | ~6 hours, ~$330–640/mo target spend |\n\n# 🔍 Research\n\n| Skill | What it does | Cost / latency |\n|---|---|---|\n| 🔬 **[deep-research](skills/deep-research/)** | Parallel multi-source research orchestrator. Fans out across **8 sources** (X, Reddit, HN, GitHub repos + issues, Polymarket, YouTube with transcripts, Exa neural search) via [monid](https://monid.dev). One auth, one balance, structured + human-readable evidence dumps. | ~$0.10–0.20 + ~60–90s/run |\n\n# 🎨 Creative\n\n| Skill | What it does | Cost / latency |\n|---|---|---|\n| 🎨 **[terminal-poster](skills/terminal-poster/)** | Generates dense, retro-cyberpunk infographic posters in a terminal aesthetic — pixel-bitmap headlines, ASCII box-drawing, monospace fonts. Five reusable templates (Cluster A–E). Cluster A audited at 99% fidelity. | ~$0.002 + ~30s/image |\n\n---\n\n# Quick Start\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🟢 Claude Code (recommended)\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/ravidsrk/agent-skills.git\ncd agent-skills\n\nmkdir -p ~/.claude/skills\nfor s in skills/*/; do\n  name=$(basename \"$s\")\n  ln -sf \"$(pwd)/$s\" \"$HOME/.claude/skills/$name\"\ndone\n```\n\n✅ All 5 skills are now available. Symlinks mean `git pull` keeps them up to date.\n\n📖 **Full guide:** [docs/claude-code-setup.md](docs/claude-code-setup.md)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🟢 Mogra\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ncd /workspace\ngit clone https://github.com/ravidsrk/agent-skills.git\n\nmkdir -p /workspace/.mogra/skills\nfor s in agent-skills/skills/*/; do\n  name=$(basename \"$s\")\n  ln -sf \"$(pwd)/$s\" \"/workspace/.mogra/skills/$name\"\ndone\n```\n\nRestart your Mogra session and the skills appear.\n\n📖 **Full guide:** [docs/mogra-setup.md](docs/mogra-setup.md)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🟡 Cursor\u003c/b\u003e\u003c/summary\u003e\n\nPer-project install — copy `SKILL.md` into `.cursor/rules/`:\n\n```bash\nmkdir -p .cursor/rules\ncp /path/to/agent-skills/skills/cloudflare-dns/SKILL.md .cursor/rules/cloudflare-dns.md\n```\n\n📖 **Full guide:** [docs/cursor-setup.md](docs/cursor-setup.md)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🟡 OpenCode\u003c/b\u003e\u003c/summary\u003e\n\nOpenCode reads `AGENTS.md` and the `skills/` directory automatically:\n\n```bash\ngit clone https://github.com/ravidsrk/agent-skills.git ~/.opencode/agent-skills\nln -s ~/.opencode/agent-skills/skills ~/.opencode/skills\n```\n\n📖 **Full guide:** [docs/opencode-setup.md](docs/opencode-setup.md)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🟡 Codex / GitHub Copilot / any other agent\u003c/b\u003e\u003c/summary\u003e\n\nSkills are plain Markdown — they work with any agent that accepts system prompts or instruction files.\n\nFor Copilot, concatenate skills into `.github/copilot-instructions.md`:\n\n```bash\ncat skills/cloudflare-dns/SKILL.md \\\n    skills/namecheap-dns/SKILL.md \\\n    \u003e .github/copilot-instructions.md\n```\n\n📖 **Full guide:** [docs/generic-setup.md](docs/generic-setup.md)\n\n\u003c/details\u003e\n\n# Set the env vars\n\nEach skill needs different secrets. Set them in your shell — never paste into prompts.\n\n```bash\n# cloudflare-dns\nexport CLOUDFLARE_API_KEY=cfat_...\nexport CLOUDFLARE_GLOBAL_API_KEY=...    # only for new-zone creation\nexport CLOUDFLARE_EMAIL=you@example.com\n\n# namecheap-dns\nexport NAMECHEAP_API_KEY=...\nexport NAMECHEAP_API_USER=your-account\n\n# fly-to-aws-migration\nexport AWS_PROFILE=migration\nexport FLY_API_TOKEN=...\n# (also uses CLOUDFLARE_API_KEY for the DNS cutover phase)\n\n# deep-research\nexport MONID_API_KEY=...\n\n# terminal-poster\nexport OPENROUTER_API_KEY=...\n```\n\n🔴 **All skills read env vars at runtime — they're never written to disk.** Don't commit `.env` files.\n\n---\n\n# Try it\n\nSkills auto-activate based on the `description` field in their `SKILL.md`. Just ask the agent for what you want.\n\n\u003e 💬 *\"Move example.com's DNS to Cloudflare\"* → activates `cloudflare-dns`\n\u003e\n\u003e 💬 *\"Add a CNAME for docs.example.com pointing at my Fly app\"* → activates `namecheap-dns`\n\u003e\n\u003e 💬 *\"Migrate my Fly project to AWS\"* → activates `fly-to-aws-migration`\n\u003e\n\u003e 💬 *\"Do a deep dive on AI agent harness engineering\"* → activates `deep-research`\n\u003e\n\u003e 💬 *\"Generate a terminal-style poster for our deployment pipeline\"* → activates `terminal-poster`\n\n---\n\n# Preview gallery\n\n\u003ca href=\"skills/terminal-poster/README.md#live-examples\"\u003e\n  \u003cimg src=\"skills/terminal-poster/assets/examples/cluster-c2-walkbot.jpg\" alt=\"Cluster C2 example — WalkBot\" width=\"240\"\u003e\n  \u003cimg src=\"skills/terminal-poster/assets/examples/cluster-a-stack.png\" alt=\"Cluster A example — agent stack\" width=\"240\"\u003e\n  \u003cimg src=\"skills/terminal-poster/assets/examples/cluster-b-maturity.png\" alt=\"Cluster B example — maturity ladder\" width=\"240\"\u003e\n\u003c/a\u003e\n\nThree real first-generation outputs from `terminal-poster`. [Audit scores + how to reproduce →](skills/terminal-poster/README.md#live-examples)\n\n---\n\n# How skills work\n\nEvery skill follows the same anatomy:\n\n```\n┌─────────────────────────────────────────────────┐\n│  SKILL.md                                       │\n│                                                 │\n│  ┌─ Frontmatter ─────────────────────────────┐  │\n│  │ name: lowercase-hyphen-name               │  │\n│  │ description: Does X. Use when…            │  │\n│  │ compatibility: needs $ENV_VAR, bash, curl │  │\n│  └───────────────────────────────────────────┘  │\n│                                                 │\n│  Overview         → What this skill does        │\n│  When to use      → Triggering conditions       │\n│  Setup            → Env vars + dependencies     │\n│  Workflow         → Step-by-step process        │\n│  Gotchas          → Known traps + fixes         │\n└─────────────────────────────────────────────────┘\n```\n\n**Key design choices:**\n\n- 🟢 **Process, not prose.** Skills are workflows agents follow, not reference docs they read.\n- 🟢 **Spec-compliant.** Every skill validates against the [agentskills.io](https://agentskills.io/specification) format.\n- 🟢 **Battle-tested.** These are the actual tools used in production, not theoretical patterns.\n- 🟢 **Progressive disclosure.** `SKILL.md` is the entry point. References load on demand to keep token usage low.\n- 🟢 **Capability-first, not SDLC-first.** Unlike skill packs that map to DEFINE → PLAN → BUILD → SHIP, these are discrete tools. Pick what you need.\n\n📖 Full spec: [docs/skill-anatomy.md](docs/skill-anatomy.md)\n\n---\n\n# Project Structure\n\n```\nagent-skills/\n├── README.md                     ← You are here\n├── AGENTS.md                     ← Runtime-agnostic agent guidance\n├── CLAUDE.md                     ← Claude Code session context\n├── CONTRIBUTING.md               ← How to add a skill\n├── LICENSE                       ← MIT\n├── plugin.json                   ← Claude Code plugin manifest\n├── assets/\n│   └── banner.png                ← Hero image (generated by terminal-poster)\n├── docs/                         ← Per-runtime setup + format spec\n│   ├── getting-started.md\n│   ├── skill-anatomy.md\n│   ├── claude-code-setup.md\n│   ├── mogra-setup.md\n│   ├── cursor-setup.md\n│   ├── opencode-setup.md\n│   └── generic-setup.md\n├── scripts/\n│   └── validate-skills.py        ← Validates SKILL.md against the spec\n└── skills/\n    ├── cloudflare-dns/           ← 🌐 DNS migration + zone hardening\n    ├── namecheap-dns/            ← 🌐 Namecheap XML API wrapper\n    ├── fly-to-aws-migration/     ← 🌐 Fly → AWS playbook (7 phases)\n    ├── deep-research/            ← 🔍 8-source parallel research\n    └── terminal-poster/          ← 🎨 Retro-cyberpunk image posters\n```\n\nEach skill folder contains:\n\n- `SKILL.md` — Agent-facing manifest (frontmatter + workflow)\n- `README.md` — Human install + usage docs\n- `scripts/` — Runnable helpers (optional)\n- `references/` — Long-form docs loaded on demand (optional)\n- `templates/` — Boilerplate users copy into their projects (optional)\n- `assets/` — Example outputs, fixtures (optional)\n\n---\n\n# Validation\n\nEvery push runs the validator. Run it locally before committing:\n\n```bash\npython3 scripts/validate-skills.py\n```\n\nOutput:\n\n```\n✅ cloudflare-dns\n✅ deep-research\n✅ fly-to-aws-migration\n✅ namecheap-dns\n✅ terminal-poster\n\n🟢 All 5 skills valid against agentskills.io spec.\n```\n\nThe validator enforces the spec rules (frontmatter shape, name/directory matching, description length). Non-zero exit code if any skill fails — perfect for CI.\n\n---\n\n# Why this repo exists\n\nMost agent skill packs are shaped like a software lifecycle — DEFINE → PLAN → BUILD → SHIP. That's useful for skills that encode process discipline (writing specs, doing TDD, reviewing code).\n\nThis repo is shaped differently. These are **capability skills** — tools the agent reaches for when the task fits. You don't migrate to AWS as part of a SDLC phase; you migrate when you migrate. You don't run deep research because the workflow says so; you run it when you need evidence.\n\nThe two styles are complementary. For SDLC discipline, [addyosmani/agent-skills](https://github.com/addyosmani/agent-skills) is excellent. For real-world infrastructure and content tooling, this repo is what I reach for.\n\nThe shared bet: **portable, public, spec-compliant** skills make agents better.\n\n---\n\n# Contributing\n\nPRs welcome — new skills, fixes to existing ones, better docs. Quality bar:\n\n- 🟢 **Specific:** actionable steps, not vague advice\n- 🟢 **Verifiable:** clear exit criteria with evidence requirements\n- 🟢 **Battle-tested:** based on real workflows you've shipped\n- 🟢 **Minimal:** only what's needed to guide the agent\n\n📖 See [CONTRIBUTING.md](CONTRIBUTING.md) and [docs/skill-anatomy.md](docs/skill-anatomy.md).\n\n**TL;DR:** create `skills/\u003cyour-skill\u003e/SKILL.md` + `README.md`, run `python3 scripts/validate-skills.py`, update the skills table, open a PR.\n\n---\n\n# Credits\n\n- 🏗️ **Repo structure** — inspired by [addyosmani/agent-skills](https://github.com/addyosmani/agent-skills). The plugin manifest pattern, multi-runtime setup docs, expandable installs, and `AGENTS.md` conventions came from there.\n- 🎨 **`terminal-poster`** — visual pattern reverse-engineered from public posts by [@shannholmberg](https://x.com/shannholmberg) on X. The skill makes the look reproducible across topics; Shann designed the look itself.\n- 🔍 **`deep-research`** — originally inspired by [`mvanhorn/last30days-skill`](https://github.com/mvanhorn/last30days-skill). The 30-day default window came from that upstream; the 8-source fan-out and monid routing were rebuilt from scratch.\n\n---\n\n# License\n\n[MIT](LICENSE) © [@ravidsrk](https://github.com/ravidsrk)\n\nIf you build something with these skills, I'd love to see it — tag me on [X](https://x.com/ravidsrk) or open an issue.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fravidsrk%2Fagent-skills","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fravidsrk%2Fagent-skills","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fravidsrk%2Fagent-skills/lists"}