OmniRoute Backup and Sync CLI
diegosouzapw/OmniRoute
Backup and restore OmniRoute data from the CLI. Trigger incremental snapshots, sync to cloud storage, manage backup schedules, and restore from archive files.
Business continuity and disaster recovery: 30-day retention, quarterly restore tests, RTO/RPO targets per ISO 27001 A.17
$ npx skills add Hack23/cia --skill backup-recovery-policy -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Hack23/cia backup-recovery-policy --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/Hack23/cia.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/backup-recovery-policy .claude/skills/backup-recovery-policy && 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 "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .claude/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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/Hack23/cia/tree/master/.github/skills/backup-recovery-policyType 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 Hack23/cia --skill backup-recovery-policy -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Hack23/cia backup-recovery-policy --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Hack23/cia.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/backup-recovery-policy .agents/skills/backup-recovery-policy && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .agents/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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 Hack23/cia --skill backup-recovery-policy -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Hack23/cia backup-recovery-policy --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Hack23/cia.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/backup-recovery-policy .cursor/skills/backup-recovery-policy && 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 "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .cursor/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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/Hack23/cia.git --path .github/skills/backup-recovery-policy--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 Hack23/cia --skill backup-recovery-policy -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Hack23/cia backup-recovery-policy --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Hack23/cia.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/backup-recovery-policy .gemini/skills/backup-recovery-policy && 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 "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .gemini/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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 Hack23/cia backup-recovery-policyInstalls 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 Hack23/cia --skill backup-recovery-policy -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Hack23/cia.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/backup-recovery-policy .github/skills/backup-recovery-policy && 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 "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .github/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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 Hack23/cia --skill backup-recovery-policy -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Hack23/cia backup-recovery-policy --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Hack23/cia.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/backup-recovery-policy .opencode/skills/backup-recovery-policy && 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 "backup-recovery-policy" agent skill from https://github.com/Hack23/cia/tree/master/.github/skills/backup-recovery-policy into .opencode/skills/backup-recovery-policy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "backup-recovery-policy", 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.
backup-recovery-policyBusiness continuity and disaster recovery: 30-day retention, quarterly restore tests, RTO/RPO targets per ISO 27001 A.17
Backup Recovery Policy is an agent skill from Hack23/cia. Business continuity and disaster recovery: 30-day retention, quarterly restore tests, RTO/RPO targets per ISO 27001 A.17
Its SKILL.md is about 4.7k 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 DevOps & Cloud, covering Backup and disaster recovery. The repository describes itself as: Citizen Intelligence Agency. Open-source intelligence platform analyzing Swedish political activities using AI and data visualization. Tracks politicians, government… The licence is Apache-2.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 495fd7d. 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:
awspsqlFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.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.
Backup Recovery Policy loads about 4.7k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 1,019 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 Hack23/cia at commit 495fd7d, republished under its Apache-2.0 licence (© Hack23). 1,019 words, ~4,651 tokens.
.claude/skills/backup-recovery-policy/SKILL.md (or your agent's skills folder).This skill provides systematic guidance for implementing business continuity and disaster recovery within the CIA platform, ensuring data protection aligns with business impact analysis, RTO/RPO targets, and ISO 27001 Annex A.17 requirements.
Apply this skill when:
Do NOT skip for:
| Classification | Business Impact | RPO Target | RTO Target | Backup Frequency | Retention |
|---|---|---|---|---|---|
| RESTRICTED | Extreme | <15 minutes | <1 hour | Continuous replication | 30 days minimum |
| CONFIDENTIAL | Very High | <4 hours | <4 hours | Hourly | 7 years (financial data) |
| INTERNAL | Moderate | <24 hours | <24 hours | Daily | 3 years |
| PUBLIC | Low | >24 hours | >72 hours | Weekly | Indefinite |
graph TD
START["💾 Backup Need"] --> CLASSIFY{"🏷️ Data Classification?"}
CLASSIFY -->|RESTRICTED| CRITICAL["🔴 Critical Backup<br/>Continuous Replication"]
CLASSIFY -->|CONFIDENTIAL| HIGH["🟠 High Priority<br/>Hourly Backups"]
CLASSIFY -->|INTERNAL| MEDIUM["🟡 Medium Priority<br/>Daily Backups"]
CLASSIFY -->|PUBLIC| STANDARD["🟢 Standard<br/>Weekly Backups"]
CRITICAL --> IMPACT{"📊 Business Impact?"}
HIGH --> IMPACT
MEDIUM --> IMPACT
STANDARD --> IMPACT
IMPACT -->|Financial System| FINANCE["💰 Financial Data<br/>7-year retention"]
IMPACT -->|Core Operations| CORE["🏗️ Core Systems<br/>1-year retention"]
IMPACT -->|Support Functions| SUPPORT["🛠️ Support Systems<br/>3-month retention"]
FINANCE --> METHOD{"🔧 Backup Method?"}
CORE --> METHOD
SUPPORT --> METHOD
METHOD -->|Database| RDS["📊 AWS RDS<br/>Automated Snapshots"]
METHOD -->|Files| S3["📁 AWS S3<br/>Versioning + Lifecycle"]
METHOD -->|Infrastructure| IaC["🏗️ Infrastructure as Code<br/>Git + CloudFormation"]
RDS --> TEST["🧪 Quarterly Restore Test"]
S3 --> TEST
IaC --> TEST
TEST --> MONITOR["📈 Monitoring & Alerts"]
style CRITICAL fill:#D32F2F
style HIGH fill:#FF9800
style MEDIUM fill:#FDD835
style STANDARD fill:#4CAF50Definition: Complete copy of all data at a point in time.
Use Cases:
AWS Implementation:
# CloudFormation template for full database backup
Resources:
DatabaseFullBackupFunction:
Type: AWS::Lambda::Function
Properties:
FunctionName: cia-database-full-backup
Runtime: python3.12
Handler: index.lambda_handler
Role: !GetAtt BackupFunctionRole.Arn
Timeout: 900 # 15 minutes
Environment:
Variables:
RDS_INSTANCE_ID: !Ref CIADatabase
BACKUP_BUCKET: !Ref BackupBucket
Code:
ZipFile: |
import boto3
import datetime
import os
rds = boto3.client('rds')
def lambda_handler(event, context):
"""
Create full RDS snapshot
"""
instance_id = os.environ['RDS_INSTANCE_ID']
timestamp = datetime.datetime.now().strftime('%Y%m%d-%H%M%S')
snapshot_id = f"{instance_id}-full-{timestamp}"
# Create snapshot
response = rds.create_db_snapshot(
DBSnapshotIdentifier=snapshot_id,
DBInstanceIdentifier=instance_id,
Tags=[
{'Key': 'BackupType', 'Value': 'Full'},
{'Key': 'CreatedBy', 'Value': 'Automated'},
{'Key': 'Retention', 'Value': '30days'}
]
)
print(f"Full backup initiated: {snapshot_id}")
return {
'statusCode': 200,
'body': snapshot_id
}
# Schedule monthly full backups
FullBackupSchedule:
Type: AWS::Events::Rule
Properties:
Name: cia-monthly-full-backup
Description: Monthly full database backup
ScheduleExpression: cron(0 2 1 * ? *) # 1st of month at 2 AM UTC
State: ENABLED
Targets:
- Arn: !GetAtt DatabaseFullBackupFunction.Arn
Id: FullBackupTargetDefinition: Maximum acceptable time to restore service after an outage.
RTO Tiers:
| RTO Level | Time Window | Business Function Example | Implementation |
|---|---|---|---|
| Instant | <5 minutes | Financial transactions | Multi-AZ failover |
| Critical | 5-60 minutes | Core database | Automated failover |
| High | 1-4 hours | Application services | Blue-green deployment |
| Medium | 4-24 hours | Analytics systems | Manual restore from backup |
| Standard | >24 hours | Historical archives | Restore on demand |
RTO Configuration Example:
# Multi-AZ RDS for instant failover (RTO <5 minutes)
CIADatabase:
Type: AWS::RDS::DBInstance
Properties:
DBInstanceIdentifier: cia-production-db
Engine: postgres
EngineVersion: "18.3"
DBInstanceClass: db.t3.medium
AllocatedStorage: 100
StorageType: gp3
StorageEncrypted: true
KmsKeyId: !Ref DatabaseEncryptionKey
# Multi-AZ for high availability (automatic failover)
MultiAZ: true
# Automated backups for point-in-time recovery
BackupRetentionPeriod: 35
PreferredBackupWindow: "03:00-04:00"
# Deletion protection
DeletionProtection: true
Tags:
- Key: RTO
Value: Critical-5to60min
- Key: RPO
Value: NearRealtime-1to15min
- Key: BusinessImpact
Value: VeryHighDefinition: Maximum acceptable data loss measured in time.
RPO Tiers:
| RPO Level | Data Loss Window | Business Function Example | Backup Frequency |
|---|---|---|---|
| Zero Loss | <1 minute | Financial records | Synchronous replication |
| Near Real-time | 1-15 minutes | Core database | Continuous backup |
| Minimal | 15-60 minutes | Application data | 15-minute snapshots |
| Hourly | 1-4 hours | User activity logs | Hourly backups |
| Daily | 4-24 hours | Analytics data | Daily backups |
| Extended | >24 hours | Archived data | Weekly backups |
Objective: Verify backup integrity and validate RTO/RPO targets.
Frequency: Quarterly minimum (ISO 27001 A.17.1.3)
Test Checklist:
Automated Restore Test Script:
#!/bin/bash
# Quarterly backup restore test
# Tests RTO/RPO compliance and backup integrity
set -euo pipefail
TEST_DATE=$(date +%Y%m%d-%H%M%S)
TEST_REPORT="backup-restore-test-${TEST_DATE}.md"
TEST_INSTANCE="cia-restore-test-${TEST_DATE}"
log() {
echo "[$(date -u +"%Y-%m-%d %H:%M:%S UTC")] $*" | tee -a "${TEST_REPORT}"
}
# Start restore test
log "# Quarterly Backup Restore Test"
log ""
log "**Test Date**: $(date -u +"%Y-%m-%d %H:%M:%S UTC")"
log "**Tester**: CEO"
log "**Test Instance**: ${TEST_INSTANCE}"
log ""
# Step 1: Identify latest backup
log "## Step 1: Identify Latest Backup"
SNAPSHOT_ID=$(aws rds describe-db-snapshots \
--db-instance-identifier cia-production-db \
--query 'DBSnapshots | sort_by(@, &SnapshotCreateTime) | [-1].DBSnapshotIdentifier' \
--output text)
log "- Latest snapshot: ${SNAPSHOT_ID}"
SNAPSHOT_TIME=$(aws rds describe-db-snapshots \
--db-snapshot-identifier "${SNAPSHOT_ID}" \
--query 'DBSnapshots[0].SnapshotCreateTime' \
--output text)
log "- Snapshot time: ${SNAPSHOT_TIME}"
log ""
# Step 2: Restore snapshot to test instance
log "## Step 2: Restore Database"
START_TIME=$(date +%s)
log "- Initiating restore..."
aws rds restore-db-instance-from-db-snapshot \
--db-instance-identifier "${TEST_INSTANCE}" \
--db-snapshot-identifier "${SNAPSHOT_ID}" \
--db-instance-class db.t3.small \
--publicly-accessible false \
--no-multi-az \
--tags Key=Purpose,Value=RestoreTest Key=TestDate,Value="${TEST_DATE}"
# Wait for instance to be available
log "- Waiting for instance to become available..."
aws rds wait db-instance-available --db-instance-identifier "${TEST_INSTANCE}"
END_TIME=$(date +%s)
RESTORE_DURATION=$((END_TIME - START_TIME))
log "- ✅ Restore completed in ${RESTORE_DURATION} seconds"
log ""
# Step 3: Verify data integrity
log "## Step 3: Data Integrity Verification"
# Get endpoint
DB_ENDPOINT=$(aws rds describe-db-instances \
--db-instance-identifier "${TEST_INSTANCE}" \
--query 'DBInstances[0].Endpoint.Address' \
--output text)
log "- Database endpoint: ${DB_ENDPOINT}"
# Verify row counts
log "- Verifying table row counts..."
psql -h "${DB_ENDPOINT}" -U cia_user -d cia_database -c "\
SELECT schemaname, tablename, n_live_tup as row_count \
FROM pg_stat_user_tables \
ORDER BY n_live_tup DESC \
LIMIT 10;" | tee -a "${TEST_REPORT}"
# Step 4: Cleanup
log "## Step 4: Cleanup"
log "- Deleting test instance..."
aws rds delete-db-instance \
--db-instance-identifier "${TEST_INSTANCE}" \
--skip-final-snapshot \
--delete-automated-backups
log "- ✅ Test instance cleanup initiated"
log ""
# Summary
log "## Test Summary"
log ""
log "| Metric | Target | Actual | Status |"
log "|--------|--------|--------|--------|"
log "| RTO | <4 hours | $(($RESTORE_DURATION / 60)) minutes | ✅ Pass |"
log "| Data Integrity | 100% | Verified | ✅ Pass |"
log ""
echo "✅ Restore test completed. Report: ${TEST_REPORT}"| Classification | Retention Period | Rationale | Disposal Method |
|---|---|---|---|
| RESTRICTED | Minimum required | Compliance, immediate disposal after expiry | Secure deletion (multi-pass overwrite) |
| CONFIDENTIAL | 7 years | Financial/legal requirements (Swedish law) | Secure deletion with audit trail |
| INTERNAL | 3 years | Operational history | Standard deletion |
| PUBLIC | Indefinite | Historical value, public interest | Standard deletion (if needed) |
BackupBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: cia-backups
BucketEncryption:
ServerSideEncryptionConfiguration:
- ServerSideEncryptionByDefault:
SSEAlgorithm: aws:kms
KMSMasterKeyID: !Ref BackupEncryptionKey
VersioningConfiguration:
Status: Enabled
LifecycleConfiguration:
Rules:
# CONFIDENTIAL financial data: 7-year retention
- Id: ConfidentialFinancialRetention
Status: Enabled
Prefix: confidential/financial/
ExpirationInDays: 2555 # 7 years
NoncurrentVersionExpirationInDays: 90
Transitions:
- TransitionInDays: 90
StorageClass: STANDARD_IA
- TransitionInDays: 365
StorageClass: GLACIER
# INTERNAL data: 3-year retention
- Id: InternalDataRetention
Status: Enabled
Prefix: internal/
ExpirationInDays: 1095 # 3 years
NoncurrentVersionExpirationInDays: 30
Transitions:
- TransitionInDays: 30
StorageClass: STANDARD_IA
- TransitionInDays: 180
StorageClass: GLACIER
PublicAccessBlockConfiguration:
BlockPublicAcls: true
BlockPublicPolicy: true
IgnorePublicAcls: true
RestrictPublicBuckets: true
Tags:
- Key: Purpose
Value: BackupStorage
- Key: DataClassification
Value: MixedTrigger: Application detects data integrity issues, corrupted records.
Recovery Procedure:
Immediate Actions (0-15 minutes)
Point-in-Time Recovery (15-60 minutes)
Application Cutover (60-90 minutes)
Post-Recovery (90+ minutes)
Expected RTO: 2 hours
Expected RPO: <15 minutes (point-in-time recovery)
Trigger: AWS region unavailable, all services unreachable.
Recovery Procedure:
Immediate Actions (0-30 minutes)
Database Recovery (30-120 minutes)
Application Deployment (120-180 minutes)
Validation (180-240 minutes)
Expected RTO: 4 hours
Expected RPO: <4 hours (cross-region snapshot lag)
Control Objective: Organization shall establish, document, implement and maintain processes, procedures and controls to ensure the required level of continuity for information security during an adverse situation.
Implementation:
Control Objective: Organization shall verify established and implemented information security continuity controls at regular intervals.
Implementation:
PR.IP-4: Backups of information conducted, maintained, tested
RC.RP-1: Recovery plan executed during or after incident
CIS Control 11: Data Recovery
© Hack23, 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 .github/skills/backup-recovery-policy of Hack23/cia.
Open the folder on GitHubat commit 495fd7d
Backup Recovery Policy 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 |
|---|---|---|---|---|---|---|
| Backup Recovery Policy this skillHack23/cia | 239 | — | ~4.7k | Automated safety check: Pass | Apache-2.0 | |
| OmniRoute Backup and Sync CLIdiegosouzapw/OmniRoute | 74k | — | ~948 | Automated safety check: Pass | MIT | |
| Pymobiledevice3 Device Operatordoronz88/pymobiledevice3 | 2.9k | — | ~1.8k | Automated safety check: Notes | GPL-3.0 | |
| Myclaw BackupLeoYeAI/openclaw-backup | 659 | — | ~1.8k | Automated safety check: Pass | MIT | |
| OmniRoute Database Backupsdiegosouzapw/OmniRoute | 74k | — | ~395 | Automated safety check: Pass | MIT | |
| Tempsgotempsh/temps | 828 | — | ~2k | Automated safety check: Pass | Apache-2.0 |
diegosouzapw/OmniRoute
Backup and restore OmniRoute data from the CLI. Trigger incremental snapshots, sync to cloud storage, manage backup schedules, and restore from archive files.
doronz88/pymobiledevice3
Operate iOS and iPadOS devices with pymobiledevice3, from a local checkout or straight from PyPI via uvx on a fresh workstation.
LeoYeAI/openclaw-backup
Backup and restore all OpenClaw configuration, agent memory, skills, and workspace data.
diegosouzapw/OmniRoute
Trigger system backups, restore from backup files, and manage the SQLite database lifecycle. Supports export, import, and incremental snapshot strategies.
gotempsh/temps
Manage, deploy, operate, and instrument applications with Temps.
OnlyTerp/hermes-optimization-guide
Set up encrypted off-machine Hermes backups. An agent skill from OnlyTerp/hermes-optimization-guide.
Hack23/cia
WCAG 2.1 AA compliance, ARIA attributes, keyboard navigation, screen reader optimization for accessible political data platforms
Hack23/cia
Advanced chart types, D3.js/Vaadin Charts patterns, political data visualization, time series analysis
Hack23/cia
AI governance, EU AI Act compliance, OWASP LLM security, responsible AI practices for GitHub Copilot agents
Hack23/cia
External API integration patterns, retry logic, circuit breakers, caching, rate limiting for government data APIs
Hack23/cia
AWS CloudWatch metrics, alarms, dashboards, log insights, and application monitoring for the CIA platform
Hack23/cia
AWS security best practices, VPC security, IAM, KMS, CloudTrail, GuardDuty for CIA platform deployment
Categories
Business continuity and disaster recovery: 30-day retention, quarterly restore tests, RTO/RPO targets per ISO 27001 A.17. Backup Recovery Policy is an agent skill from Hack23/cia.
Backup Recovery Policy fits situations like: tasks that involve Backup and disaster recovery.
Run `npx skills add Hack23/cia --skill backup-recovery-policy -a claude-code`. Or copy the skill folder (.github/skills/backup-recovery-policy in Hack23/cia) into .claude/skills/backup-recovery-policy in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Hack23/cia --skill backup-recovery-policy -a codex`. Or copy the skill folder (.github/skills/backup-recovery-policy in Hack23/cia) into .agents/skills/backup-recovery-policy 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 Hack23/cia --skill backup-recovery-policy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/backup-recovery-policy, .gemini/skills/backup-recovery-policy, .github/skills/backup-recovery-policy and .opencode/skills/backup-recovery-policy in your project.
Going by SKILL.md and its folder, Backup Recovery Policy needs the command-line tools its instructions call (aws and psql).
SKILL.md names 1 domain. As links in the text: github.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.
Backup Recovery Policy is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.7k tokens (SKILL.md is roughly 19k 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 Backup Recovery Policy: OmniRoute Backup and Sync CLI (diegosouzapw/OmniRoute, 74k stars), Pymobiledevice3 Device Operator (doronz88/pymobiledevice3, 2.9k stars), Myclaw Backup (LeoYeAI/openclaw-backup, 659 stars) and OmniRoute Database Backups (diegosouzapw/OmniRoute, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Hack23 (a GitHub organization) maintains it in Hack23/cia, which has 239 GitHub stars. The repository holds 78 skills in this directory. The repository was last updated on October 9, 2026.
Source: Hack23/cia on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.