PR Design Doc
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…
A skill your agent uses when writing, proposing, or accepting Architecture Decision Records (ADRs) in this repo.
$ npx skills add fullsend-ai/fullsend --skill writing-adrs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install fullsend-ai/fullsend writing-adrs --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/fullsend-ai/fullsend.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/writing-adrs .claude/skills/writing-adrs && 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 "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .claude/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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/fullsend-ai/fullsend/tree/main/skills/writing-adrsType 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 fullsend-ai/fullsend --skill writing-adrs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install fullsend-ai/fullsend writing-adrs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/fullsend-ai/fullsend.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/writing-adrs .agents/skills/writing-adrs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .agents/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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 fullsend-ai/fullsend --skill writing-adrs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install fullsend-ai/fullsend writing-adrs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/fullsend-ai/fullsend.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/writing-adrs .cursor/skills/writing-adrs && 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 "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .cursor/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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/fullsend-ai/fullsend.git --path skills/writing-adrs--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 fullsend-ai/fullsend --skill writing-adrs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install fullsend-ai/fullsend writing-adrs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/fullsend-ai/fullsend.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/writing-adrs .gemini/skills/writing-adrs && 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 "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .gemini/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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 fullsend-ai/fullsend writing-adrsInstalls 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 fullsend-ai/fullsend --skill writing-adrs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/fullsend-ai/fullsend.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/writing-adrs .github/skills/writing-adrs && 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 "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .github/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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 fullsend-ai/fullsend --skill writing-adrs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install fullsend-ai/fullsend writing-adrs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/fullsend-ai/fullsend.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/writing-adrs .opencode/skills/writing-adrs && 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 "writing-adrs" agent skill from https://github.com/fullsend-ai/fullsend/tree/main/skills/writing-adrs into .opencode/skills/writing-adrs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-adrs", 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.
writing-adrsA skill your agent uses when writing, proposing, or accepting Architecture Decision Records (ADRs) in this repo.
Writing Adrs is an agent skill from fullsend-ai/fullsend. Use when writing, proposing, or accepting Architecture Decision Records (ADRs) in this repo. Use when a decision has crystallized from a problem doc and needs to be recorded, or when updating living documents after an ADR is accepted.
Its SKILL.md is about 2.3k 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. The repository describes itself as: On the path to fully autonomous agentic engineering. The licence is Apache-2.0.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e05aed3. 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.
Shell commands in SKILL.md call:
makeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From 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.
Writing Adrs loads about 2.3k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 1,111 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 fullsend-ai/fullsend at commit e05aed3, republished under its Apache-2.0 licence (© fullsend-ai). 1,111 words, ~2,306 tokens.
.claude/skills/writing-adrs/SKILL.md (or your agent's skills folder).An ADR records exactly one decision. Problem docs explore; ADRs decide.
docs/architecture.md and problem docs are the current state (mutable). ADRs
are point-in-time records that can receive minor annotations but should not be
substantially rewritten.
An ADR captures a decision and the context that existed when it was made. It is
not a living design document -- that role belongs to docs/architecture.md.
That said, accepted ADRs are not 100% frozen. Minor annotations after the fact are welcome and encouraged:
Acceptable modifications to an accepted ADR:
status (e.g., from Accepted to Deprecated or Superseded)These annotations keep ADRs useful as navigational aids rather than dead-end documents. When a reader lands on an older ADR, links to subsequent decisions help them find the current state of thinking.
Not acceptable -- write a new ADR instead:
If a decision turned out to be wrong, that is what supersession is for. The
original ADR remains as a historical record of what was decided and why. For
ongoing design narrative, use docs/architecture.md.
Unlike ADRs, docs/architecture.md is a living document. It must always
reflect the current state of architectural decisions. When a new ADR is accepted
(or when an ADR supersedes an older one), docs/architecture.md must be updated
to reflect the latest decision. It is the single place a reader can go to
understand what is true now, without tracing a chain of ADRs.
Do NOT use for open-ended exploration -- that belongs in problem docs.
Each ADR decides a single thing. If you find yourself writing "Additionally, we decide..." or "We also require...", stop. That is a second ADR.
| Section | Target | Anti-pattern |
|---|---|---|
| Context | 1-3 paragraphs | Restating entire problem docs |
| Options (if any) | 1 paragraph each | Multi-page analysis per option |
| Decision | Direct statement + brief rationale | Burying the decision in prose |
| Consequences | 3-5 one-sentence bullets | Essay-length explanations |
Problem docs exist. Architecture.md exists. Reference them:
# Good
The threat model establishes least-privilege as a cross-cutting principle
(see [security-threat-model.md](../problems/security-threat-model.md)).
# Bad
[3 paragraphs restating the threat model's least-privilege section]If this decision builds on or relates to another ADR, say so in Context.
docs/normative/)docs/normative/<topic>/v<major>/...; the
normative folder holds the detailed, versioned contract (v1, v2, …).Follow these steps in order:
docs/ADRs/ on current main, then scan
open pull requests for new docs/ADRs/NNNN-*.md files so you do not
collide with in-flight ADRs. Pick the lowest unused four-digit NNNN.docs/ADRs/0000-adr-template.md exactly.relates_to must reference existing filenames
(without .md) from docs/problems/. Use "*" only for ADRs that truly
apply to all problem areas. The status in frontmatter must match the
## Status heading in the body (the linter enforces this). The number in
the title field and the # heading must have no leading zeros
(e.g., "1. Use ADRs", not "0001. Use ADRs"). The four-digit
zero-padded format is only for filenames.make lint and fix any errors before committing.When an ADR is accepted, the current-state documents must reflect the decision.
Add a "Decided:" line or short paragraph under the relevant component. Keep the existing structure -- do NOT rewrite entire sections. Add a link to the ADR. Remove or annotate open questions that the ADR resolves. Add new open questions for consequences that surface new unknowns.
## Agent Sandbox
[existing description unchanged]
**Decided:**
- Filesystem access model: ephemeral read-only source mounts with separate
writable workspace ([ADR 0002](ADRs/0002-ephemeral-sandbox-filesystems.md)).
**Open questions:**
- [remaining unanswered questions]
- [any new questions raised by the ADR's consequences]If an ADR resolves an open question in a problem doc, annotate that question with a link to the ADR. Do NOT delete the question -- mark it answered:
- ~~How do agents access source code?~~ Decided in
[ADR 0002](../ADRs/0002-ephemeral-sandbox-filesystems.md).If the ADR partially answers a question, add a parenthetical:
- How do we provide agents with resources? (Filesystem access decided in
[ADR 0002](../ADRs/0002-ephemeral-sandbox-filesystems.md); tool and API
access remain open.)relates_to problem areas.relates_to lists more than 3 problem docs -- the decision may be too broadmake lint -- stop and do itdocs/architecture.md for evolving design narrative| Mistake | Fix |
|---|---|
| Bundling multiple decisions | Split into separate ADRs |
| Verbose context | Link to problem docs |
Forgetting frontmatter relates_to | Check template, list problem doc filenames |
| Not updating architecture.md | Follow the update checklist above |
| Rewriting existing doc sections | Make surgical additions only |
| Skipping linters | Stage changes, then run make lint before committing |
| Wrong ADR number | Check existing files in docs/ADRs/ first |
| Substantially rewriting an accepted ADR | Write a new ADR that supersedes it |
| Omitting cross-references to related ADRs | Link older ADRs to newer related decisions |
| Treating old ADRs as evolving design docs | Use docs/architecture.md for living narrative |
| Forgetting to update architecture.md | It must always reflect current decisions |
| Leading zeros in title number | Use "1. Title" not "0001. Title" — zero-padded numbers are only for filenames |
© fullsend-ai, Apache-2.0. 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 skills/writing-adrs of fullsend-ai/fullsend.
Open the folder on GitHubat commit e05aed3
Writing Adrs 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 |
|---|---|---|---|---|---|---|
| Writing Adrs this skillfullsend-ai/fullsend | 149 | — | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| PR Design DocOpenHands/OpenHands | 90k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Cto AdvisorIbrahim-3d/orchestrator-supaconductor | 381 | 4 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Architecture DecisionDonchitos/Claude-Code-Game-Studios | 26k | — | ~1.7k | Automated safety check: Pass | MIT | |
| Improve Codebase Architectureywwynm/EverythingDone | 144 | 15 repos | ~1.3k | Automated safety check: Pass | GPL-3.0 | |
| Domain Modelingbrim-borium/spotify_sdk | 166 | 5 repos | ~806 | Automated safety check: Pass | Apache-2.0 |
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.
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/.
brim-borium/spotify_sdk
Build and sharpen a project's domain model. An agent skill from brim-borium/spotify_sdk.
SpillwaveSolutions/design-doc-mermaid
Create Mermaid diagrams (flowchart, sequence, class, ER, state, C4, architecture) from text or source code.
fullsend-ai/fullsend
A skill your agent uses when the user wants to tag a release, cut a release candidate, or ship a new version.
fullsend-ai/fullsend
Build a merged RICE priority table: top unassigned backlog issues plus issues assigned to the current user.
fullsend-ai/fullsend
A skill your agent uses when preparing the Fullsend user forum "What's New" agenda, a Tuesday-to-Tuesday recap, forum-host talk-track notes, or copy-paste HTML of shipped changes for users.
fullsend-ai/fullsend
Find open GitHub pull requests that add or change Architecture Decision Records and report attribution, summaries, discussion points, and dates.
fullsend-ai/fullsend
Build a readiness-oriented queue of open issues/PRs — assigned work plus their open GitHub blockers — and recommend the next action for each.
fullsend-ai/fullsend
Analyze fullsend agent run transcripts from GitHub Actions artifacts.
Categories
A skill your agent uses when writing, proposing, or accepting Architecture Decision Records (ADRs) in this repo. Writing Adrs is an agent skill from fullsend-ai/fullsend. Use when writing, proposing, or accepting Architecture Decision Records (ADRs) in this repo.
Writing Adrs fits situations like: accepting Architecture Decision Records (ADRs) in this repo; A decision has crystallized from a problem doc and needs to be recorded; updating living documents after an ADR is accepted.
Run `npx skills add fullsend-ai/fullsend --skill writing-adrs -a claude-code`. Or copy the skill folder (skills/writing-adrs in fullsend-ai/fullsend) into .claude/skills/writing-adrs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add fullsend-ai/fullsend --skill writing-adrs -a codex`. Or copy the skill folder (skills/writing-adrs in fullsend-ai/fullsend) into .agents/skills/writing-adrs 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 fullsend-ai/fullsend --skill writing-adrs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/writing-adrs, .gemini/skills/writing-adrs, .github/skills/writing-adrs and .opencode/skills/writing-adrs in your project.
Going by SKILL.md and its folder, Writing Adrs needs the command-line tools its instructions call (make).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Writing Adrs is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.2k 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 Writing Adrs: PR Design Doc (OpenHands/OpenHands, 90k stars), Cto Advisor (Ibrahim-3d/orchestrator-supaconductor, 381 stars), Architecture Decision (Donchitos/Claude-Code-Game-Studios, 26k stars) and Improve Codebase Architecture (ywwynm/EverythingDone, 144 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
fullsend-ai (a GitHub organization) maintains it in fullsend-ai/fullsend, which has 149 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 10, 2026.
Source: fullsend-ai/fullsend on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.