Token导航 LogoToken导航TokenDH.com
前端设计只读github未标认证来源可访问许可证需确认审计通过

dual-write双写

Agent Skill

dual-write 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

745

周安装

32

GitHub Stars

28

下载量

261
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dual-write(双写)
来源仓库:https://github.com/laurigates/claude-plugins
仓库路径:skills/dual-write
安装命令:
npx skills add https://github.com/laurigates/claude-plugins --skill dual-write
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/laurigates/claude-plugins --skill dual-write

简介

dual-write 实现新旧系统双写同步,保障数据迁移过程中的零停机与高可用性。

  • 适用于 Codex、Claude、Cursor、Gemini CLI 中数据库 schema 变更或存储后端切换场景。
  • 每次写操作同时作用于两个权威源,支持实时比对响应差异用于验证正确性。
  • 相比影子模式更适用于需要持久化写入的生产流量分流过渡期管理。
  • dual-write 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Dual Write Migration Pattern

Dual write keeps two data stores in sync by writing to both the old and new system on every mutation. This enables gradual migration with rollback safety.

When to Use This Skill

Use this skill when...Use shadow-mode instead when...
Migrating between databases or schemasValidating read-path behavior under real traffic
Switching storage backends (SQL to NoSQL, etc.)Testing a new service without writing to it
Need both systems to stay authoritative during transitionOnly need to compare responses, not persist data
Planning zero-downtime data migrationsMirroring traffic to a staging environment
Reviewing code that writes to multiple data storesEvaluating performance of a replacement system

Core Concepts

Migration Phases

PhasePrimary readsPrimary writesSecondary writesDuration
1. PrepareOldOldNoneSetup
2. Dual writeOldOld + NewNew (async or sync)Migration window
3. BackfillOldOld + NewNewUntil parity
4. Shadow readOld + New (compare)Old + NewNewValidation
5. CutoverNewNewOld (optional)Transition
6. CleanupNewNewNoneFinal

Write Strategies

StrategyConsistencyLatency impactFailure mode
SynchronousStrongHigher (2x write)Fail if either store fails
Async secondaryEventualMinimalSecondary may lag
Outbox patternEventualMinimalRequires message broker
Change data captureEventualNone (DB-level)Requires CDC infrastructure

Implementation Architecture

Synchronous Dual Write

Client Request
    │
    ▼
┌─────────────┐
│  Application │
│    Layer     │
└──────┬──────┘
       │ write(data)
       ▼
┌─────────────┐
│  Dual Write  │
│  Adapter     │
├──────┬──────┤
│      │      │
▼      │      ▼
Old DB │   New DB
       │
   Compare on
   read (optional)

Key Components

ComponentResponsibility
Write adapterRoutes writes to both stores, handles failures
Read comparatorReads from both, logs discrepancies, returns primary
Backfill jobCopies historical data from old to new store
ReconciliationDetects and resolves drift between stores
Feature flagsControls which phase is active per entity/tenant

Implementation Patterns

Write Adapter Pattern

The write adapter wraps both stores behind a single interface:

  1. Accept the write request
  2. Write to the primary (old) store first
  3. Write to the secondary (new) store
  4. If secondary fails: log the failure, enqueue for retry, do not fail the request
  5. Return the primary store's result to the caller

Read Comparison Pattern

During the shadow read phase:

  1. Read from the primary (old) store — this is the authoritative response
  2. Read from the secondary (new) store asynchronously
  3. Compare results field by field
  4. Log discrepancies with context (entity ID, field, old value, new value)
  5. Return the primary store's result
  6. Track comparison metrics (match rate, common divergence fields)

Backfill Strategy

  1. Snapshot the old store at a known point in time
  2. Begin dual writes for all new mutations
  3. Copy historical records in batches (oldest first or by priority)
  4. Track backfill progress per entity type
  5. Reconcile records modified during backfill (dual write wins over backfill)

Failure Handling

Failure scenarioResponseRecovery
Secondary write failsLog, continue, enqueue retryAsync retry with backoff
Primary write failsFail the request (do not write to secondary)Standard error handling
Both failFail the requestStandard error handling
Secondary write timeoutLog, continueAsync verification and repair
Inconsistency detectedLog with full contextManual or automated reconciliation

Consistency Guarantees

  • Primary store is always the source of truth until cutover
  • Secondary store may lag during async dual write
  • Reconciliation jobs detect and repair drift
  • Cutover only happens when match rate reaches threshold (e.g., 99.9%)

Cutover Decision Criteria

MetricThresholdHow to measure
Read comparison match rate> 99.9%Shadow read comparison logs
Backfill completion100%Backfill progress tracker
Secondary write success rate> 99.95%Write adapter metrics
P99 latency impact< 20% increaseApplication metrics
Reconciliation gap0 unresolvedReconciliation job output

Common Pitfalls

PitfallMitigation
Ordering issues between storesUse idempotent writes, include version/timestamp
Transaction boundaries differDesign writes to be independently valid
Schema mismatch between storesMap fields explicitly, handle nullability differences
Backfill conflicts with live writesLive dual writes take precedence over backfill
Performance degradationStart with async secondary writes
Partial failures leave inconsistencyReconciliation job as safety net
Forgetting to dual-write in all code pathsCentralize through write adapter, audit call sites

Rollback Plan

PhaseRollback actionData impact
Dual writeStop writing to new storeNo data loss
Shadow readStop comparing readsNo data loss
Cutover (reads)Switch reads back to oldNo data loss if still dual-writing
Cutover (writes)Reverse write orderMay need reconciliation
CleanupCannot rollbackOld store decommissioned

Monitoring Checklist

  • Write success rate per store
  • Write latency per store (P50, P95, P99)
  • Read comparison match rate
  • Backfill progress percentage
  • Reconciliation queue depth
  • Error rate by failure type
  • Feature flag state per tenant/entity

Agentic Optimizations

ContextApproach
Code reviewCheck that all write paths go through the dual-write adapter
Architecture reviewVerify failure handling, rollback plan, and cutover criteria
ImplementationStart with write adapter + async secondary, add comparison later
TestingSimulate secondary failures, verify primary is unaffected

Quick Reference

TermDefinition
Primary storeThe authoritative data store (old system during migration)
Secondary storeThe new data store being migrated to
BackfillCopying historical data from primary to secondary
ReconciliationDetecting and repairing differences between stores
CutoverSwitching the primary designation from old to new
Match ratePercentage of shadow reads that return identical results
Write adapterAbstraction layer that routes writes to both stores

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.67%
按下载量换算96

Claude

27.84%
按下载量换算73

Cursor

19.56%
按下载量换算51

Gemini CLI

9%
按下载量换算23

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills