{"id":"ea745175-733a-4a31-9976-a276ce1a9ce9","shortId":"LzFkvP","kind":"skill","title":"architecture-decision-records","tagline":"Comprehensive patterns for creating, maintaining, and managing Architecture Decision Records (ADRs) that capture the context and rationale behind significant technical decisions.","description":"# Architecture Decision Records\n\nComprehensive patterns for creating, maintaining, and managing Architecture Decision Records (ADRs) that capture the context and rationale behind significant technical decisions.\n\n## Use this skill when\n\n- Making significant architectural decisions\n- Documenting technology choices\n- Recording design trade-offs\n- Onboarding new team members\n- Reviewing historical decisions\n- Establishing decision-making processes\n\n## Do not use this skill when\n\n- You only need to document small implementation details\n- The change is a minor patch or routine maintenance\n- There is no architectural decision to capture\n\n## Instructions\n\n1. Capture the decision context, constraints, and drivers.\n2. Document considered options with tradeoffs.\n3. Record the decision, rationale, and consequences.\n4. Link related ADRs and update status over time.\n\n## Core Concepts\n\n### 1. What is an ADR?\n\nAn Architecture Decision Record captures:\n- **Context**: Why we needed to make a decision\n- **Decision**: What we decided\n- **Consequences**: What happens as a result\n\n### 2. When to Write an ADR\n\n| Write ADR | Skip ADR |\n|-----------|----------|\n| New framework adoption | Minor version upgrades |\n| Database technology choice | Bug fixes |\n| API design patterns | Implementation details |\n| Security architecture | Routine maintenance |\n| Integration patterns | Configuration changes |\n\n### 3. ADR Lifecycle\n\n```\nProposed → Accepted → Deprecated → Superseded\n              ↓\n           Rejected\n```\n\n## Templates\n\n### Template 1: Standard ADR (MADR Format)\n\n```markdown\n# ADR-0001: Use PostgreSQL as Primary Database\n\n## Status\n\nAccepted\n\n## Context\n\nWe need to select a primary database for our new e-commerce platform. The system\nwill handle:\n- ~10,000 concurrent users\n- Complex product catalog with hierarchical categories\n- Transaction processing for orders and payments\n- Full-text search for products\n- Geospatial queries for store locator\n\nThe team has experience with MySQL, PostgreSQL, and MongoDB. We need ACID\ncompliance for financial transactions.\n\n## Decision Drivers\n\n* **Must have ACID compliance** for payment processing\n* **Must support complex queries** for reporting\n* **Should support full-text search** to reduce infrastructure complexity\n* **Should have good JSON support** for flexible product attributes\n* **Team familiarity** reduces onboarding time\n\n## Considered Options\n\n### Option 1: PostgreSQL\n- **Pros**: ACID compliant, excellent JSON support (JSONB), built-in full-text\n  search, PostGIS for geospatial, team has experience\n- **Cons**: Slightly more complex replication setup than MySQL\n\n### Option 2: MySQL\n- **Pros**: Very familiar to team, simple replication, large community\n- **Cons**: Weaker JSON support, no built-in full-text search (need\n  Elasticsearch), no geospatial without extensions\n\n### Option 3: MongoDB\n- **Pros**: Flexible schema, native JSON, horizontal scaling\n- **Cons**: No ACID for multi-document transactions (at decision time),\n  team has limited experience, requires schema design discipline\n\n## Decision\n\nWe will use **PostgreSQL 15** as our primary database.\n\n## Rationale\n\nPostgreSQL provides the best balance of:\n1. **ACID compliance** essential for e-commerce transactions\n2. **Built-in capabilities** (full-text search, JSONB, PostGIS) reduce\n   infrastructure complexity\n3. **Team familiarity** with SQL databases reduces learning curve\n4. **Mature ecosystem** with excellent tooling and community support\n\nThe slight complexity in replication is outweighed by the reduction in\nadditional services (no separate Elasticsearch needed).\n\n## Consequences\n\n### Positive\n- Single database handles transactions, search, and geospatial queries\n- Reduced operational complexity (fewer services to manage)\n- Strong consistency guarantees for financial data\n- Team can leverage existing SQL expertise\n\n### Negative\n- Need to learn PostgreSQL-specific features (JSONB, full-text search syntax)\n- Vertical scaling limits may require read replicas sooner\n- Some team members need PostgreSQL-specific training\n\n### Risks\n- Full-text search may not scale as well as dedicated search engines\n- Mitigation: Design for potential Elasticsearch addition if needed\n\n## Implementation Notes\n\n- Use JSONB for flexible product attributes\n- Implement connection pooling with PgBouncer\n- Set up streaming replication for read replicas\n- Use pg_trgm extension for fuzzy search\n\n## Related Decisions\n\n- ADR-0002: Caching Strategy (Redis) - complements database choice\n- ADR-0005: Search Architecture - may supersede if Elasticsearch needed\n\n## References\n\n- [PostgreSQL JSON Documentation](https://www.postgresql.org/docs/current/datatype-json.html)\n- [PostgreSQL Full Text Search](https://www.postgresql.org/docs/current/textsearch.html)\n- Internal: Performance benchmarks in `/docs/benchmarks/database-comparison.md`\n```\n\n### Template 2: Lightweight ADR\n\n```markdown\n# ADR-0012: Adopt TypeScript for Frontend Development\n\n**Status**: Accepted\n**Date**: 2024-01-15\n**Deciders**: @alice, @bob, @charlie\n\n## Context\n\nOur React codebase has grown to 50+ components with increasing bug reports\nrelated to prop type mismatches and undefined errors. PropTypes provide\nruntime-only checking.\n\n## Decision\n\nAdopt TypeScript for all new frontend code. Migrate existing code incrementally.\n\n## Consequences\n\n**Good**: Catch type errors at compile time, better IDE support, self-documenting\ncode.\n\n**Bad**: Learning curve for team, initial slowdown, build complexity increase.\n\n**Mitigations**: TypeScript training sessions, allow gradual adoption with\n`allowJs: true`.\n```\n\n### Template 3: Y-Statement Format\n\n```markdown\n# ADR-0015: API Gateway Selection\n\nIn the context of **building a microservices architecture**,\nfacing **the need for centralized API management, authentication, and rate limiting**,\nwe decided for **Kong Gateway**\nand against **AWS API Gateway and custom Nginx solution**,\nto achieve **vendor independence, plugin extensibility, and team familiarity with Lua**,\naccepting that **we need to manage Kong infrastructure ourselves**.\n```\n\n### Template 4: ADR for Deprecation\n\n```markdown\n# ADR-0020: Deprecate MongoDB in Favor of PostgreSQL\n\n## Status\n\nAccepted (Supersedes ADR-0003)\n\n## Context\n\nADR-0003 (2021) chose MongoDB for user profile storage due to schema flexibility\nneeds. Since then:\n- MongoDB's multi-document transactions remain problematic for our use case\n- Our schema has stabilized and rarely changes\n- We now have PostgreSQL expertise from other services\n- Maintaining two databases increases operational burden\n\n## Decision\n\nDeprecate MongoDB and migrate user profiles to PostgreSQL.\n\n## Migration Plan\n\n1. **Phase 1** (Week 1-2): Create PostgreSQL schema, dual-write enabled\n2. **Phase 2** (Week 3-4): Backfill historical data, validate consistency\n3. **Phase 3** (Week 5): Switch reads to PostgreSQL, monitor\n4. **Phase 4** (Week 6): Remove MongoDB writes, decommission\n\n## Consequences\n\n### Positive\n- Single database technology reduces operational complexity\n- ACID transactions for user data\n- Team can focus PostgreSQL expertise\n\n### Negative\n- Migration effort (~4 weeks)\n- Risk of data issues during migration\n- Lose some schema flexibility\n\n## Lessons Learned\n\nDocument from ADR-0003 experience:\n- Schema flexibility benefits were overestimated\n- Operational cost of multiple databases was underestimated\n- Consider long-term maintenance in technology decisions\n```\n\n### Template 5: Request for Comments (RFC) Style\n\n```markdown\n# RFC-0025: Adopt Event Sourcing for Order Management\n\n## Summary\n\nPropose adopting event sourcing pattern for the order management domain to\nimprove auditability, enable temporal queries, and support business analytics.\n\n## Motivation\n\nCurrent challenges:\n1. Audit requirements need complete order history\n2. \"What was the order state at time X?\" queries are impossible\n3. Analytics team needs event stream for real-time dashboards\n4. Order state reconstruction for customer support is manual\n\n## Detailed Design\n\n### Event Store\n\n```\nOrderCreated { orderId, customerId, items[], timestamp }\nOrderItemAdded { orderId, item, timestamp }\nOrderItemRemoved { orderId, itemId, timestamp }\nPaymentReceived { orderId, amount, paymentId, timestamp }\nOrderShipped { orderId, trackingNumber, timestamp }\n```\n\n### Projections\n\n- **CurrentOrderState**: Materialized view for queries\n- **OrderHistory**: Complete timeline for audit\n- **DailyOrderMetrics**: Analytics aggregation\n\n### Technology\n\n- Event Store: EventStoreDB (purpose-built, handles projections)\n- Alternative considered: Kafka + custom projection service\n\n## Drawbacks\n\n- Learning curve for team\n- Increased complexity vs. CRUD\n- Need to design events carefully (immutable once stored)\n- Storage growth (events never deleted)\n\n## Alternatives\n\n1. **Audit tables**: Simpler but doesn't enable temporal queries\n2. **CDC from existing DB**: Complex, doesn't change data model\n3. **Hybrid**: Event source only for order state changes\n\n## Unresolved Questions\n\n- [ ] Event schema versioning strategy\n- [ ] Retention policy for events\n- [ ] Snapshot frequency for performance\n\n## Implementation Plan\n\n1. Prototype with single order type (2 weeks)\n2. Team training on event sourcing (1 week)\n3. Full implementation and migration (4 weeks)\n4. Monitoring and optimization (ongoing)\n\n## References\n\n- [Event Sourcing by Martin Fowler](https://martinfowler.com/eaaDev/EventSourcing.html)\n- [EventStoreDB Documentation](https://www.eventstore.com/docs)\n```\n\n## ADR Management\n\n### Directory Structure\n\n```\ndocs/\n├── adr/\n│   ├── README.md           # Index and guidelines\n│   ├── template.md         # Team's ADR template\n│   ├── 0001-use-postgresql.md\n│   ├── 0002-caching-strategy.md\n│   ├── 0003-mongodb-user-profiles.md  # [DEPRECATED]\n│   └── 0020-deprecate-mongodb.md      # Supersedes 0003\n```\n\n### ADR Index (README.md)\n\n```markdown\n# Architecture Decision Records\n\nThis directory contains Architecture Decision Records (ADRs) for [Project Name].\n\n## Index\n\n| ADR | Title | Status | Date |\n|-----|-------|--------|------|\n| 0001 | Use PostgreSQL as Primary Database | Accepted | 2024-01-10 |\n| 0002 | Caching Strategy with Redis | Accepted | 2024-01-12 |\n| 0003 | MongoDB for User Profiles | Deprecated | 2023-06-15 |\n| 0020 | Deprecate MongoDB | Accepted | 2024-01-15 |\n\n## Creating a New ADR\n\n1. Copy `template.md` to `NNNN-title-with-dashes.md`\n2. Fill in the template\n3. Submit PR for review\n4. Update this index after approval\n\n## ADR Status\n\n- **Proposed**: Under discussion\n- **Accepted**: Decision made, implementing\n- **Deprecated**: No longer relevant\n- **Superseded**: Replaced by another ADR\n- **Rejected**: Considered but not adopted\n```\n\n### Automation (adr-tools)\n\n```bash\n# Install adr-tools\nbrew install adr-tools\n\n# Initialize ADR directory\nadr init docs/adr\n\n# Create new ADR\nadr new \"Use PostgreSQL as Primary Database\"\n\n# Supersede an ADR\nadr new -s 3 \"Deprecate MongoDB in Favor of PostgreSQL\"\n\n# Generate table of contents\nadr generate toc > docs/adr/README.md\n\n# Link related ADRs\nadr link 2 \"Complements\" 1 \"Is complemented by\"\n```\n\n## Review Process\n\n```markdown\n## ADR Review Checklist\n\n### Before Submission\n- [ ] Context clearly explains the problem\n- [ ] All viable options considered\n- [ ] Pros/cons balanced and honest\n- [ ] Consequences (positive and negative) documented\n- [ ] Related ADRs linked\n\n### During Review\n- [ ] At least 2 senior engineers reviewed\n- [ ] Affected teams consulted\n- [ ] Security implications considered\n- [ ] Cost implications documented\n- [ ] Reversibility assessed\n\n### After Acceptance\n- [ ] ADR index updated\n- [ ] Team notified\n- [ ] Implementation tickets created\n- [ ] Related documentation updated\n```\n\n## Best Practices\n\n### Do's\n- **Write ADRs early** - Before implementation starts\n- **Keep them short** - 1-2 pages maximum\n- **Be honest about trade-offs** - Include real cons\n- **Link related decisions** - Build decision graph\n- **Update status** - Deprecate when superseded\n\n### Don'ts\n- **Don't change accepted ADRs** - Write new ones to supersede\n- **Don't skip context** - Future readers need background\n- **Don't hide failures** - Rejected decisions are valuable\n- **Don't be vague** - Specific decisions, specific consequences\n- **Don't forget implementation** - ADR without action is waste\n\n## Resources\n\n- [Documenting Architecture Decisions (Michael Nygard)](https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions)\n- [MADR Template](https://adr.github.io/madr/)\n- [ADR GitHub Organization](https://adr.github.io/)\n- [adr-tools](https://github.com/npryce/adr-tools)\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["architecture","decision","records","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding"],"capabilities":["skill","source-sickn33","skill-architecture-decision-records","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/architecture-decision-records","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34964 github stars · SKILL.md body (12,952 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-25T00:50:28.291Z","embedding":null,"createdAt":"2026-04-18T21:31:25.803Z","updatedAt":"2026-04-25T00:50:28.291Z","lastSeenAt":"2026-04-25T00:50:28.291Z","tsv":"'-0001':220 '-0002':607 '-0003':821,824,964 '-0005':615 '-0012':648 '-0015':746 '-0020':810 '-0025':995 '-01':658,1283,1292,1308 '-06':1301 '-10':1284 '-12':1293 '-15':659,1302,1309 '-2':888,1495 '-4':901 '/)':1582 '/blog/2011/11/15/documenting-architecture-decisions)':1571 '/docs)':1230 '/docs/benchmarks/database-comparison.md':641 '/docs/current/datatype-json.html)':629 '/docs/current/textsearch.html)':636 '/eaadev/eventsourcing.html)':1225 '/madr/)':1576 '/npryce/adr-tools)':1588 '000':248 '0001':1275 '0001-use-postgresql.md':1246 '0002':1285 '0002-caching-strategy.md':1247 '0003':1252,1294 '0003-mongodb-user-profiles.md':1248 '0020':1303 '0020-deprecate-mongodb.md':1250 '1':109,141,213,332,438,883,885,887,1026,1143,1189,1203,1314,1416,1494 '10':247 '15':426 '2':117,169,363,447,643,896,898,1033,1153,1195,1197,1319,1414,1453 '2021':825 '2023':1300 '2024':657,1282,1291,1307 '3':123,203,393,461,739,900,907,909,1045,1164,1205,1324,1394 '4':130,470,804,917,919,947,1056,1210,1212,1329 '5':911,987 '50':671 '6':921 'accept':207,227,655,794,818,1281,1290,1306,1340,1469,1523 'achiev':784 'acid':285,294,335,404,439,934 'action':1560 'addit':490,574 'adopt':181,649,692,734,996,1004,1357 'adr':15,39,133,145,174,176,178,204,215,219,606,614,645,647,745,805,809,820,823,963,1231,1236,1244,1253,1266,1271,1313,1335,1352,1360,1365,1370,1373,1375,1380,1381,1390,1391,1405,1411,1412,1423,1447,1470,1486,1524,1558,1577,1584 'adr-tool':1359,1364,1369,1583 'adr.github.io':1575,1581 'adr.github.io/)':1580 'adr.github.io/madr/)':1574 'affect':1457 'aggreg':1104 'alic':661 'allow':732 'allowj':736 'altern':1114,1142 'amount':1084 'analyt':1022,1046,1103 'anoth':1351 'api':190,747,763,777 'approv':1334 'architectur':2,12,26,36,56,104,147,196,617,757,1257,1263,1565 'architecture-decision-record':1 'ask':1622 'assess':1467 'attribut':323,584 'audit':1015,1027,1101,1144 'authent':765 'autom':1358 'aw':776 'backfil':902 'background':1537 'bad':718 'balanc':436,1438 'bash':1362 'behind':22,46 'benchmark':639 'benefit':968 'best':435,1481 'better':711 'bob':662 'boundari':1630 'brew':1367 'bug':188,675 'build':725,754,1510 'built':342,380,449,1111 'built-in':341,379,448 'burden':871 'busi':1021 'cach':608,1286 'capabl':451 'captur':17,41,107,110,150 'care':1133 'case':850 'catalog':253 'catch':705 'categori':256 'cdc':1154 'central':762 'challeng':1025 'chang':93,202,857,1161,1172,1522 'charli':663 'check':690 'checklist':1425 'choic':60,187,613 'chose':826 'clarif':1624 'clear':1429,1597 'code':698,701,717 'codebas':667 'cognitect.com':1570 'cognitect.com/blog/2011/11/15/documenting-architecture-decisions)':1569 'comment':990 'commerc':241,445 'communiti':373,477 'compil':709 'complement':611,1415,1418 'complet':1030,1098 'complex':251,301,314,357,460,481,508,726,933,1126,1158 'complianc':286,295,440 'compliant':336 'compon':672 'comprehens':5,29 'con':354,374,402,1506 'concept':140 'concurr':249 'configur':201 'connect':586 'consequ':129,163,496,703,926,1441,1553 'consid':119,329,978,1115,1354,1436,1462 'consist':514,906 'constraint':114 'consult':1459 'contain':1262 'content':1404 'context':19,43,113,151,228,664,752,822,1428,1533 'copi':1315 'core':139 'cost':972,1463 'creat':8,32,889,1310,1378,1477 'criteria':1633 'crud':1128 'current':1024 'currentorderst':1092 'curv':469,720,1122 'custom':780,1061,1117 'customerid':1071 'dailyordermetr':1102 'dashboard':1055 'data':518,904,938,951,1162 'databas':185,225,235,430,466,499,612,868,929,975,1280,1387 'date':656,1274 'db':1157 'decid':162,660,770 'decis':3,13,25,27,37,49,57,72,75,105,112,126,148,158,159,290,411,421,605,691,872,985,1258,1264,1341,1509,1511,1543,1551,1566 'decision-mak':74 'decommiss':925 'dedic':566 'delet':1141 'deprec':208,807,811,873,1249,1299,1304,1344,1395,1515 'describ':1601 'design':62,191,419,570,1066,1131 'detail':91,194,1065 'develop':653 'directori':1233,1261,1374 'disciplin':420 'discuss':1339 'doc':1235 'docs/adr':1377 'docs/adr/readme.md':1408 'document':58,88,118,408,626,716,843,961,1227,1445,1465,1479,1564 'doesn':1148,1159 'domain':1012 'drawback':1120 'driver':116,291 'dual':893 'dual-writ':892 'due':832 'e':240,444 'e-commerc':239,443 'earli':1487 'ecosystem':472 'effort':946 'elasticsearch':387,494,573,621 'enabl':895,1016,1150 'engin':568,1455 'environ':1613 'environment-specif':1612 'error':684,707 'essenti':441 'establish':73 'event':997,1005,1049,1067,1106,1132,1139,1166,1175,1182,1201,1218 'eventstoredb':1108,1226 'excel':337,474 'exist':522,700,1156 'experi':277,353,416,965 'expert':1618 'expertis':524,862,943 'explain':1430 'extens':391,600,788 'face':758 'failur':1541 'familiar':325,367,463,791 'favor':814,1398 'featur':532 'fewer':509 'fill':1320 'financi':288,517 'fix':189 'flexibl':321,396,582,835,958,967 'focus':941 'forget':1556 'format':217,743 'fowler':1222 'framework':180 'frequenc':1184 'frontend':652,697 'full':264,308,345,383,453,535,557,631,1206 'full-text':263,307,344,382,452,534,556 'futur':1534 'fuzzi':602 'gateway':748,773,778 'generat':1401,1406 'geospati':269,350,389,504 'github':1578 'github.com':1587 'github.com/npryce/adr-tools)':1586 'good':317,704 'gradual':733 'graph':1512 'grown':669 'growth':1138 'guarante':515 'guidelin':1240 'handl':246,500,1112 'happen':165 'hide':1540 'hierarch':255 'histor':71,903 'histori':1032 'honest':1440,1499 'horizont':400 'hybrid':1165 'ide':712 'immut':1134 'implement':90,193,577,585,1187,1207,1343,1475,1489,1557 'implic':1461,1464 'imposs':1044 'improv':1014 'includ':1504 'increas':674,727,869,1125 'increment':702 'independ':786 'index':1238,1254,1270,1332,1471 'infrastructur':313,459,801 'init':1376 'initi':723,1372 'input':1627 'instal':1363,1368 'instruct':108 'integr':199 'intern':637 'issu':952 'item':1072,1076 'itemid':1080 'json':318,338,376,399,625 'jsonb':340,456,533,580 'kafka':1116 'keep':1491 'kong':772,800 'larg':372 'learn':468,528,719,960,1121 'least':1452 'lesson':959 'leverag':521 'lifecycl':205 'lightweight':644 'limit':415,541,768,1589 'link':131,1409,1413,1448,1507 'locat':273 'long':980 'long-term':979 'longer':1346 'lose':955 'lua':793 'made':1342 'madr':216,1572 'maintain':9,33,866 'mainten':100,198,982 'make':54,76,156 'manag':11,35,512,764,799,1001,1011,1232 'manual':1064 'markdown':218,646,744,808,993,1256,1422 'martin':1221 'martinfowler.com':1224 'martinfowler.com/eaadev/eventsourcing.html)':1223 'match':1598 'materi':1093 'matur':471 'maximum':1497 'may':542,560,618 'member':69,549 'michael':1567 'microservic':756 'migrat':699,876,881,945,954,1209 'minor':96,182 'mismatch':681 'miss':1635 'mitig':569,728 'model':1163 'mongodb':282,394,812,827,839,874,923,1295,1305,1396 'monitor':916,1213 'motiv':1023 'multi':407,842 'multi-docu':406,841 'multipl':974 'must':292,299 'mysql':279,361,364 'name':1269 'nativ':398 'need':86,154,230,284,386,495,526,550,576,622,760,797,836,1029,1048,1129,1536 'negat':525,944,1444 'never':1140 'new':67,179,238,696,1312,1379,1382,1392,1526 'nginx':781 'nnnn-title-with-dashes.md':1318 'note':578 'notifi':1474 'nygard':1568 'off':65,1503 'onboard':66,327 'one':1527 'ongo':1216 'oper':507,870,932,971 'optim':1215 'option':120,330,331,362,392,1435 'order':260,1000,1010,1031,1037,1057,1170,1193 'ordercr':1069 'orderhistori':1097 'orderid':1070,1075,1079,1083,1088 'orderitemad':1074 'orderitemremov':1078 'ordership':1087 'organ':1579 'output':1607 'outweigh':485 'overestim':970 'page':1496 'patch':97 'pattern':6,30,192,200,1007 'payment':262,297 'paymentid':1085 'paymentreceiv':1082 'perform':638,1186 'permiss':1628 'pg':598 'pgbouncer':589 'phase':884,897,908,918 'plan':882,1188 'platform':242 'plugin':787 'polici':1180 'pool':587 'posit':497,927,1442 'postgi':348,457 'postgresql':222,280,333,425,432,530,552,624,630,816,861,880,890,915,942,1277,1384,1400 'postgresql-specif':529,551 'potenti':572 'pr':1326 'practic':1482 'primari':224,234,429,1279,1386 'problem':1432 'problemat':846 'process':77,258,298,1421 'product':252,268,322,583 'profil':830,878,1298 'project':1091,1113,1118,1268 'prop':679 'propos':206,1003,1337 'proptyp':685 'pros':334,365,395 'pros/cons':1437 'prototyp':1190 'provid':433,686 'purpos':1110 'purpose-built':1109 'queri':270,302,505,1018,1042,1096,1152 'question':1174 'rare':856 'rate':767 'rational':21,45,127,431 'react':666 'read':544,595,913 'reader':1535 'readme.md':1237,1255 'real':1053,1505 'real-tim':1052 'reconstruct':1059 'record':4,14,28,38,61,124,149,1259,1265 'redi':610,1289 'reduc':312,326,458,467,506,931 'reduct':488 'refer':623,1217 'reject':210,1353,1542 'relat':132,604,677,1410,1446,1478,1508 'relev':1347 'remain':845 'remov':922 'replac':1349 'replic':358,371,483,593 'replica':545,596 'report':304,676 'request':988 'requir':417,543,1028,1626 'resourc':1563 'result':168 'retent':1179 'revers':1466 'review':70,1328,1420,1424,1450,1456,1619 'rfc':991,994 'risk':555,949 'routin':99,197 'runtim':688 'runtime-on':687 'safeti':1629 'scale':401,540,562 'schema':397,418,834,852,891,957,966,1176 'scope':1600 'search':266,310,347,385,455,502,537,559,567,603,616,633 'secur':195,1460 'select':232,749 'self':715 'self-docu':714 'senior':1454 'separ':493 'servic':491,510,865,1119 'session':731 'set':590 'setup':359 'short':1493 'signific':23,47,55 'simpl':370 'simpler':1146 'sinc':837 'singl':498,928,1192 'skill':52,82,1592 'skill-architecture-decision-records' 'skip':177,1532 'slight':355,480 'slowdown':724 'small':89 'snapshot':1183 'solut':782 'sooner':546 'sourc':998,1006,1167,1202,1219 'source-sickn33' 'specif':531,553,1550,1552,1614 'sql':465,523 'stabil':854 'standard':214 'start':1490 'state':1038,1058,1171 'statement':742 'status':136,226,654,817,1273,1336,1514 'stop':1620 'storag':831,1137 'store':272,1068,1107,1136 'strategi':609,1178,1287 'stream':592,1050 'strong':513 'structur':1234 'style':992 'submiss':1427 'submit':1325 'substitut':1610 'success':1632 'summari':1002 'supersed':209,619,819,1251,1348,1388,1517,1529 'support':300,306,319,339,377,478,713,1020,1062 'switch':912 'syntax':538 'system':244 'tabl':1145,1402 'task':1596 'team':68,275,324,351,369,413,462,519,548,722,790,939,1047,1124,1198,1242,1458,1473 'technic':24,48 'technolog':59,186,930,984,1105 'templat':211,212,642,738,803,986,1245,1323,1573 'template.md':1241,1316 'tempor':1017,1151 'term':981 'test':1616 'text':265,309,346,384,454,536,558,632 'ticket':1476 'time':138,328,412,710,1040,1054 'timelin':1099 'timestamp':1073,1077,1081,1086,1090 'titl':1272 'toc':1407 'tool':475,1361,1366,1371,1585 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'trackingnumb':1089 'trade':64,1502 'trade-off':63,1501 'tradeoff':122 'train':554,730,1199 'transact':257,289,409,446,501,844,935 'treat':1605 'trgm':599 'true':737 'ts':1519 'two':867 'type':680,706,1194 'typescript':650,693,729 'undefin':683 'underestim':977 'unresolv':1173 'updat':135,1330,1472,1480,1513 'upgrad':184 'use':50,80,221,424,579,597,849,1276,1383,1590 'user':250,829,877,937,1297 'vagu':1549 'valid':905,1615 'valuabl':1545 'vendor':785 'version':183,1177 'vertic':539 'viabl':1434 'view':1094 'vs':1127 'wast':1562 'weaker':375 'week':886,899,910,920,948,1196,1204,1211 'well':564 'without':390,1559 'write':172,175,894,924,1485,1525 'www.eventstore.com':1229 'www.eventstore.com/docs)':1228 'www.postgresql.org':628,635 'www.postgresql.org/docs/current/datatype-json.html)':627 'www.postgresql.org/docs/current/textsearch.html)':634 'x':1041 'y':741 'y-statement':740","prices":[{"id":"b2f2fb01-6365-4be7-bbf0-2a669810ead4","listingId":"ea745175-733a-4a31-9976-a276ce1a9ce9","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:31:25.803Z"}],"sources":[{"listingId":"ea745175-733a-4a31-9976-a276ce1a9ce9","source":"github","sourceId":"sickn33/antigravity-awesome-skills/architecture-decision-records","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/architecture-decision-records","isPrimary":false,"firstSeenAt":"2026-04-18T21:31:25.803Z","lastSeenAt":"2026-04-25T00:50:28.291Z"}],"details":{"listingId":"ea745175-733a-4a31-9976-a276ce1a9ce9","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"architecture-decision-records","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34964,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-24T06:41:17Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"7d10c2ab6bcbcb70ab2563fbcf873f2edb47359a","skill_md_path":"skills/architecture-decision-records/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/architecture-decision-records"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"architecture-decision-records","description":"Comprehensive patterns for creating, maintaining, and managing Architecture Decision Records (ADRs) that capture the context and rationale behind significant technical decisions."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/architecture-decision-records"},"updatedAt":"2026-04-25T00:50:28.291Z"}}