Grounding A Design
andrew-blake/melcloudhome
A skill your agent uses when about to propose, brainstorm, review or revise a design, fix approach or plan for a feature or behaviour change in this repo, including "brief" or "quick" design…
Architecture Decision Record (ADR) management skill. An agent skill from rvdbreemen/OTGW-firmware.
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install rvdbreemen/OTGW-firmware adr --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .claude/skills && cp -r skills-src/tools/adr-kit/skills/adr .claude/skills/adr && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .claude/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adrType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install rvdbreemen/OTGW-firmware adr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .agents/skills && cp -r skills-src/tools/adr-kit/skills/adr .agents/skills/adr && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .agents/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install rvdbreemen/OTGW-firmware adr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/tools/adr-kit/skills/adr .cursor/skills/adr && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .cursor/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/rvdbreemen/OTGW-firmware.git --path tools/adr-kit/skills/adr--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install rvdbreemen/OTGW-firmware adr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/tools/adr-kit/skills/adr .gemini/skills/adr && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .gemini/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install rvdbreemen/OTGW-firmware adrInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .github/skills && cp -r skills-src/tools/adr-kit/skills/adr .github/skills/adr && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .github/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rvdbreemen/OTGW-firmware --skill adr -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install rvdbreemen/OTGW-firmware adr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rvdbreemen/OTGW-firmware.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/tools/adr-kit/skills/adr .opencode/skills/adr && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "adr" agent skill from https://github.com/rvdbreemen/OTGW-firmware/tree/dev/tools/adr-kit/skills/adr into .opencode/skills/adr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "adr", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
adrArchitecture Decision Record (ADR) management skill. An agent skill from rvdbreemen/OTGW-firmware.
Adr is an agent skill from rvdbreemen/OTGW-firmware. Architecture Decision Record (ADR) management skill. Creates, maintains, and enforces architectural decisions with anti-rationalization guards and named verification gates. Drop into any project to give an AI coding agent a shared, enforceable ADR workflow.
Its SKILL.md is about 6.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Architecture decision records. It works with Home Assistant. The repository describes itself as: A ESP8266 devkit firmware for the Nodoshop version of the Opentherm Gateway (OTGW). The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5e66c3b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comadr.github.iocognitect.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Adr loads about 6.2k tokens when it runs. Until then it costs about 65 tokens; SKILL.md has 2,117 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from rvdbreemen/OTGW-firmware at commit 5e66c3b, republished under its MIT licence (© rvdbreemen). 2,117 words, ~6,199 tokens.
.claude/skills/adr/SKILL.md (or your agent's skills folder).This skill enables systematic creation, maintenance, and enforcement of Architecture Decision Records. ADRs document significant architectural choices along with their context, alternatives considered, and consequences. They serve as living documentation so current and future developers (and AI agents) understand why the system is built the way it is.
The skill bundles three patterns that distinguish it from a basic ADR template:
Proposed to Accepted. Reviewers can block on a single named gate.Decision Maker: attribution so user-driven choices are visible in the record, distinct from agent-generated ADRs.Use this skill automatically when:
Use this skill when the user mentions:
Create a new ADR when making a decision that:
ADRs fail not from lack of templates but from the agent (or human) talking themselves out of writing one. Below is a table of common excuses with their counter-arguments. When you hear yourself reaching for one of the left-column entries, stop and apply the right-column response.
| Excuse | Counter-argument |
|---|---|
| "This decision is obvious" | Obvious to you, today, with the context fresh in your head. Not obvious to a maintainer in six months, an open-source contributor, or an AI agent reviewing the PR. Document the why. |
| "I'll document it later" | You will not. The pattern goes in once and only comes out if a future bug forces it out. Cost of writing now: 15 to 30 minutes. Cost of re-deriving later: hours, sometimes a full incident. |
| "The code speaks for itself" | Code shows what and how. ADRs document why. The why is never derivable from source: it lives in the constraints, the alternatives that were rejected, and the trade-offs accepted. |
| "Everyone knows this pattern" | Everyone on the team today. Not the maintainer in three years. Not the contributor who shows up next week. Not the model running a future code review. |
| "This is just the framework default" | Then say so explicitly. "Status: Accepted. We took the framework default for X because Y." Defaults embed assumptions; an ADR makes those assumptions inspectable. |
| "It is too small to need an ADR" | Small architecturally? Then no ADR. Small implementation of a contract change? Still an ADR, because the contract is what future developers will trip over. |
| "We can always change it later" | Every architectural choice constrains the next one. Document the chosen path now so a future change is a deliberate supersede, not an accidental drift. |
| "I don't have time" | Pay 30 minutes now or pay hours when someone challenges the choice in code review six months from now and nobody can remember the rationale. |
| "There are no real alternatives" | Almost never true. If you cannot name one, the alternative is "do nothing" or "the framework default": that is an alternative. Document it and the reason it lost. |
This pattern was originally introduced by addyosmani/agent-skills and was first combined with verification gates in a single ADR skill by Jim van den Breemen's adr-skill; adr-kit adapts that pairing.
When introducing this skill to an existing codebase, perform a comprehensive architectural analysis to identify and document existing but undocumented decisions.
Step 1: identify architectural patterns. Areas to analyse:
Step 2: ask critical questions. For each pattern discovered:
Step 3: generate ADRs systematically. For each undocumented decision:
Status: Accepted (since already implemented).Step 4: prioritize. Start with foundational decisions that:
"Analyze this codebase to identify undocumented architectural decisions"
"Generate ADRs for existing architectural patterns in this codebase"
"What architectural decisions should be documented in this project?"GOOD AVOID
Write for future developers Use jargon without explanation
Include code examples Assume reader knows the context
Reference related ADRs Skip alternatives ("only way")
Use clear, simple language Make assumptions unstated
Document driving constraints Forget to update status when superseding
Explain consequences both ways Be vague ("better", "improves performance")
Link to implementation Skip negative consequences
Be critical, document risks Write marketing copy
Provide specific evidence Use jargon without defining itAn ADR moves from Status: Proposed to Status: Accepted only after all four gates pass. The gates are intentionally named so a reviewer can cite a single gate when blocking acceptance: "This ADR fails the Evidence gate, please add measurements."
The ADR has filled every load-bearing section.
Every claim that a reader could challenge is backed by something verifiable.
file:line so the reviewer can verifyA reader who has never seen this codebase can follow the argument.
The ADR fits the existing record without creating contradictions.
Accepted ADR; if there is, this ADR is a supersede with explicit referenceThis pattern was originally introduced by trailofbits/skills and was first combined with anti-rationalization guards in a single ADR skill by Jim van den Breemen's adr-skill; adr-kit adapts that pairing.
Default template. Override with project specifics in your project's local copy of this file.
# ADR-XXX Title in title case
## Status
Accepted. Date: YYYY-MM-DD.
(Or: Proposed; Deprecated; Superseded by ADR-YYY; Amended by ADR-YYY.)
## Context
One paragraph stating the problem clearly enough for a reader who has never seen this codebase. Include the constraints that drove the decision and the existing state that triggered the choice.
## Decision
A single declarative sentence stating what was chosen. Optionally followed by 2 to 4 short paragraphs unpacking the choice.
## Alternatives Considered
### Alternative A: name
Description and rejection reasoning.
### Alternative B: name
(repeat structure)
### Alternative C: do nothing
If "do nothing" was rejected, document why. If it was the right choice, this ADR is probably not needed.
## Consequences
**Benefits**
- Specific positive outcomes, with measurements when achievable.
**Trade-offs**
- The cost we accepted by making this choice.
**Risks and mitigations**
- *Risk*: what could go wrong. *Mitigation*: how we address it.
## Related Decisions
- **ADR-YYY (Title)**: how it relates (supersedes, amends, depends on, complements).
## References
- Implementation tasks or issue IDs.
- Source files affected (file:line).
- External specs, RFCs, vendor docs, or measurements.A clean copy is available at examples/ADR-template.md.
Format: ADR-XXX-short-descriptive-title.md
Where:
- XXX = zero-padded sequential number (001, 002, ..., 099, 100, etc.)
- short-descriptive-title = kebab-case description
Examples:
- ADR-001-postgresql-for-sensor-data.md
- ADR-014-rest-api-versioning.md
- ADR-042-grpc-internal-rpc.md
- ADR-099-deprecated-static-bundling.md
Wrong:
- ADR-1-postgresql.md (not zero-padded)
- adr-001-PostgreSQL.md (lowercase prefix, mixed case)
- ADR-001_PostgreSQL.md (underscore instead of hyphen)docs/adr/ for the highest number and increment.If your project uses a different convention (e.g. adr-NNNN- lowercase 4-digit, or 0001-... without prefix), override this section in your local copy of the skill and the agent. Mixing conventions in the same docs/adr/ directory is the worst outcome.
Group ADRs by architectural domain for navigation. The category list is project-specific; below is a neutral starting set you can replace:
In your docs/adr/README.md, replace these with categories that match your domain.
docs/adr/README.md index).Accepted ADR.Status: Proposed.ls docs/adr/ADR-*.md and increment).// See ADR-XXX for why we use this pattern.Proposed -> Accepted.Accepted. Date: YYYY-MM-DD.## Related Decisions entry to any other ADR that newly relates.docs/adr/README.md with the new ADR in the right category.## Related Decisions: "Supersedes ADR-XXX (Title)".Superseded by ADR-YYY.docs/adr/README.md to mark both ADRs.## Related Decisions: "Amends ADR-XXX (Title)".Amended by ADR-YYY (or leave as Accepted if the amend is content-additive).NEGATIVE
"This change violates ADR-NNN (Title).
Please refactor or write a superseding ADR."
POSITIVE
"This change aligns with ADR-NNN (Title). Good use of the documented pattern."
QUESTION
"This introduces a new architectural pattern.
Please create an ADR documenting the decision before merging."
STATUS NUDGE
"ADR-NNN is referenced but its Status is still 'Proposed'.
Please flip it to 'Accepted' since this PR implements it."## ADR Compliance Checklist
- [ ] Changes reviewed against existing ADRs
- [ ] No violations of architectural decisions (or a superseding ADR is included)
- [ ] New ADR created if needed (Status: Proposed)
- [ ] ADR Status updated if this PR implements an existing ADR
- [ ] Code comments reference relevant ADRs at non-obvious enforcement sites
- [ ] docs/adr/README.md updated if a new ADR was added
- [ ] All four verification gates pass on any new or amended ADRWhen a user explicitly makes an architectural choice, document it as a human decision so the attribution survives.
# ADR-XXX Title
## Status
Accepted. Date: YYYY-MM-DD.
**Decision Maker:** User: [Name or role] <- IMPORTANT: mark as human decision
## Context
[User's problem or request]
## Decision
**User Decision:** [What the user chose]
The user explicitly chose [X] over [Y] because [reason given].
## Alternatives Considered
[What was presented to the user]
### Alternative A: [Option presented]
**User Feedback:** [User's reasoning for or against]
### Alternative B: [Option presented]
**User Feedback:** [User's reasoning]
## Rationale
**User's stated reasons:**
- Reason 1
- Reason 2
**Technical context (from the agent):**
[Agent's analysis of the decision's technical implications. Useful for future readers who want the technical lens alongside the user's intent.]The Decision Maker line is the load-bearing part: it tells future readers that the choice was a human one, not an agent-generated default.
WRONG (no example)
Use idempotent retry logic.
RIGHT (concrete example)
Use idempotent retry logic. Each request includes an Idempotency-Key
header derived from the client's request body hash, and the server
deduplicates within a 24-hour window.
Example client wrapper:
```python
def submit(payload):
key = hashlib.sha256(json.dumps(payload, sort_keys=True).encode()).hexdigest()
return http.post("/submit", json=payload, headers={"Idempotency-Key": key})
### Diagrams when helpful
[Client] -- POST /submit (with Idempotency-Key) --> [Gateway] | v [Dedup Cache (24h)] | cache miss | cache hit v | v [Worker] | [Return cached response] | | v | [Response] |
ASCII diagrams travel well across tools and reviewers.
---
## ADR Index Management
Maintain `docs/adr/README.md` as the navigation hub. Required sections:
1. **What are ADRs?** Brief explanation for new readers.
2. **Quick Navigation** with category counts.
3. **ADR Index**: full categorized list with one-line summaries.
4. **ADR Template**: link to or embed the template.
5. **Key Architectural Themes**: cross-cutting concerns referenced by multiple ADRs.
6. **Architectural Dependencies**: which ADRs depend on which.
7. **When to Create an ADR**: guidance for new contributors.
8. **Superseding ADRs**: how to handle changes.
9. **Resources**: links to ADR best practices and external references.
When adding a new ADR:
1. Add an entry under the appropriate category.
2. Update the category count in Quick Navigation.
3. Update "Foundational ADRs" if the new one is highly referenced.
4. Add cross-references in any older ADRs that relate.
---
## ADR Metrics and Maintenance
### Health indicators (healthy repository)
- All ADRs have a clear Status.
- Superseded ADRs reference their replacement.
- Code references match existing ADRs.
- README index is up to date.
- Recent ADRs include implementation dates.
- Each ADR has at least 2 alternatives documented.
### Needs attention
- Multiple ADRs with `Proposed` status for >30 days (review and accept or deprecate).
- ADR numbers with gaps (consolidate or document the gap).
- Code comments referencing non-existent ADRs (broken links).
- ADRs without an alternatives section (low quality).
- README categories that do not match actual ADRs (drift).
### Periodic review (quarterly)
---
## Quick Reference
### ADR creation checklist
```markdown
Creating a new ADR? Check these:
- [ ] Next sequential number assigned (check docs/adr/)
- [ ] Filename follows convention
- [ ] Status field present
- [ ] Date field present (YYYY-MM-DD)
- [ ] Decision Maker identified (Agent or User: Name)
- [ ] Context section explains the problem clearly
- [ ] At least 2 to 3 alternatives documented
- [ ] Pros and cons listed for each alternative
- [ ] "Why not chosen" for each rejected alternative
- [ ] Consequences section complete (positive, negative, risks)
- [ ] Code examples included (if applicable)
- [ ] Related ADRs referenced
- [ ] Implementation notes with affected files
- [ ] Added to docs/adr/README.md index
- [ ] Category assigned
- [ ] References / external links included
- [ ] Four verification gates pass- Writing "we should use X" without explaining why
- Skipping alternatives ("this is the only way")
- No code examples for technical decisions
- Forgetting to update status after implementation
- Not referencing related ADRs
- Vague consequences ("it will be better")
- No decision maker attribution
- Missing constraints that drove the decision
- Modifying accepted ADRs instead of superseding
- Not updating README.md index
- Using jargon without defining it
- Being superficial: not digging into the "why" behind constraints
- Hiding negative consequences
- Writing marketing copy instead of honest technical analysis
- Skipping measurements ("faster" vs "68% latency reduction")
- Not explaining technical trade-offs in understandable termsAsk these questions:
If you answered "No" to any of these, improve the ADR.
Remember: ADRs are living documentation stored as docs-as-code in the same repository as the implementation. They should be consulted during development, referenced in code reviews, and evolved through supersession (not modification). Good ADRs make architectural decisions visible, understandable, and enforceable.
© rvdbreemen, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in tools/adr-kit/skills/adr of rvdbreemen/OTGW-firmware.
Open the folder on GitHubat commit 5e66c3b
Adr next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Adr this skillrvdbreemen/OTGW-firmware | 207 | — | ~6.2k | Automated safety check: Pass | MIT | |
| Grounding A Designandrew-blake/melcloudhome | 142 | — | ~1.1k | Automated safety check: Pass | MIT | |
| PR Design DocOpenHands/OpenHands | 91k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Cto AdvisorIbrahim-3d/orchestrator-supaconductor | 381 | 4 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Domain Modelingbrim-borium/spotify_sdk | 166 | 7 repos | ~806 | Automated safety check: Pass | Apache-2.0 | |
| Architecture DecisionDonchitos/Claude-Code-Game-Studios | 26k | — | ~1.7k | Automated safety check: Pass | MIT |
andrew-blake/melcloudhome
A skill your agent uses when about to propose, brainstorm, review or revise a design, fix approach or plan for a feature or behaviour change in this repo, including "brief" or "quick" design…
OpenHands/OpenHands
For a non-trivial pull request, write a self-contained HTML design doc under the temporary .pr/ directory and link a visibility-appropriate preview in the PR description, so maintainers grasp the…
Ibrahim-3d/orchestrator-supaconductor
Technical leadership guidance for engineering teams, architecture decisions, and technology strategy.
brim-borium/spotify_sdk
Build and sharpen a project's domain model. An agent skill from brim-borium/spotify_sdk.
Donchitos/Claude-Code-Game-Studios
Create an ADR documenting a technical decision: context, alternatives considered, consequences.
ywwynm/EverythingDone
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/.
rvdbreemen/OTGW-firmware
A skill your agent uses whenever the user wants to create, read, edit, or manipulate Word documents (.docx files).
rvdbreemen/OTGW-firmware
Use this skill any time a .pptx file is involved in any way — as input, output, or both.
rvdbreemen/OTGW-firmware
Use this skill any time a spreadsheet file is the primary input or output.
rvdbreemen/OTGW-firmware
Drive the autonomous 2.0.0 ESP32-S3-only async + FreeRTOS migration (epic TASK-865).
rvdbreemen/OTGW-firmware
Publish an OTGW-firmware beta prerelease — bump VERSIONPRERELEASE, push to otgw-1.x.x, tag, and let CI build + publish the GitHub prerelease
rvdbreemen/OTGW-firmware
Lints existing Architecture Decision Records against the four verification gates (Completeness, Evidence, Clarity, Consistency).
Works with
Categories
Architecture Decision Record (ADR) management skill. An agent skill from rvdbreemen/OTGW-firmware. Adr is an agent skill from rvdbreemen/OTGW-firmware. Architecture Decision Record (ADR) management skill.
Adr fits situations like: tasks that involve Architecture decision records.
Run `npx skills add rvdbreemen/OTGW-firmware --skill adr -a claude-code`. Or copy the skill folder (tools/adr-kit/skills/adr in rvdbreemen/OTGW-firmware) into .claude/skills/adr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add rvdbreemen/OTGW-firmware --skill adr -a codex`. Or copy the skill folder (tools/adr-kit/skills/adr in rvdbreemen/OTGW-firmware) into .agents/skills/adr in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rvdbreemen/OTGW-firmware --skill adr -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/adr, .gemini/skills/adr, .github/skills/adr and .opencode/skills/adr in your project.
SKILL.md names no scripts, command-line tools or credentials: Adr is instructions for the agent only.
SKILL.md names 3 domains. As links in the text: github.com, adr.github.io and cognitect.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Adr is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 6.2k tokens (SKILL.md is roughly 25k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Adr: Grounding A Design (andrew-blake/melcloudhome, 142 stars), PR Design Doc (OpenHands/OpenHands, 91k stars), Cto Advisor (Ibrahim-3d/orchestrator-supaconductor, 381 stars) and Domain Modeling (brim-borium/spotify_sdk, 166 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
rvdbreemen (a GitHub user) maintains it in rvdbreemen/OTGW-firmware, which has 207 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 6, 2026.
Source: rvdbreemen/OTGW-firmware on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.