Agent skill

Sync Cbl Docs

by cbl-dart in cbl-dart/cbl-dart

Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs.

Apache-2.0Auto-check passedMobile

Install Sync Cbl Docs

skills CLI
$ npx skills add cbl-dart/cbl-dart --skill sync-cbl-docs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install cbl-dart/cbl-dart sync-cbl-docs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/cbl-dart/cbl-dart.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/sync-cbl-docs .claude/skills/sync-cbl-docs && rm -rf skills-src

Use ~/.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/

Facts

Skill name
sync-cbl-docs
GitHub stars
152
Token cost
~2k tokens
SKILL.md length
1,025 words
Files
3 (incl. references)
Skills in repo
1
Repo updated
First seen
Licence
Apache-2.0

At a glance

Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs.

  • Works in 6 steps: Identify the page mapping → Fetch the official page → Read the current Dart page and build a… → …
  • The user wants to update
  • SKILL.md covers Overview, Workflow and Important guidelines
  • Calls curl and npm; reaches raw.githubusercontent.com

What it does

Sync Cbl Docs is an agent skill from cbl-dart/cbl-dart. Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs. Use this skill whenever the user wants to update, sync, refresh, or align a documentation page in the cbl-dart project with the upstream official Couchbase docs. Also use when the user mentions that docs are outdated, asks to check for upstream doc changes, or wants to port content from the official Couchbase Lite documentation. Trigger on phrases like "sync docs", "update the databases page", "check if our docs are current"…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/doc-conventions.md` and `references/page-mapping.md`).

It sits in Mobile, covering Cross-platform mobile apps. It works with Dart and Flutter. The repository describes itself as: Couchbase Lite for Dart and Flutter. The licence is Apache-2.0.

When your agent uses it

  • The user wants to update
  • Align a documentation page in the cbl-dart project with the upstream official Couchbase docs
  • The user mentions that docs are outdated
  • Asks to check for upstream doc changes

Example prompts

  • “sync docs”
  • “update the databases page”
  • “check if our docs are current”
  • “/sync-cbl-docs”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Identify the page mapping
  2. Fetch the official page
  3. Read the current Dart page and build a section map
  4. Check available Dart APIs and behavior
  5. Rewrite the Dart page
  6. Format and verify

What it can do on your machine

Read from SKILL.md and the folder at commit de9f1e5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • raw.githubusercontent.com

    Also links to:

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sync Cbl Docs loads about 2k tokens when it runs, and up to ~3.9k if it reads all its reference files. Until then it costs about 147 tokens; SKILL.md has 1,025 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~147
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.9k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from cbl-dart/cbl-dart at commit de9f1e5, republished under its Apache-2.0 licence (© cbl-dart). 1,025 words, ~2,024 tokens.

Download SKILL.mdSave it as .claude/skills/sync-cbl-docs/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
sync-cbl-docs
description
Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs. Use this skill whenever the user wants to update, sync, refresh, or align a documentation page in the cbl-dart project with the upstream official Couchbase docs. Also use when the user mentions that docs are outdated, asks to check for upstream doc changes, or wants to port content from the official Couchbase Lite documentation. Trigger on phrases like "sync docs", "update the databases page", "check if our docs are current", "port the official docs", "align with upstream docs".

Sync Couchbase Lite Docs

Sync a page in the Couchbase Lite for Dart documentation site with the official Couchbase Lite documentation from https://github.com/couchbase/docs-couchbase-lite.

Overview

The Dart docs at docs/docs/*.mdx mirror topics from the official Couchbase Lite docs. The official docs are written in AsciiDoc for Antora and use the Swift module as the primary reference implementation. This skill fetches the official page, compares it to the Dart version, and rewrites the Dart page to incorporate new or changed content — adapted for Dart APIs, MDX format, and the project's custom components.

Workflow

Step 1: Identify the page mapping

Use the page mapping in references/page-mapping.md to find which official doc file corresponds to the user's request. If the user gives you a Dart page name (e.g., "databases"), look up the corresponding official file path. If they give you an official page name, find the Dart counterpart.

After resolving the mapping, verify that the mapped Dart MDX file actually exists in docs/docs/. If the mapping is stale, find the current file in the repo and update references/page-mapping.md as part of the task.

Never derive the official AsciiDoc filename from the Dart page name or title. Always use the mapping file for the upstream page name.

Step 2: Fetch the official page

Use curl (via Bash) to fetch the raw AsciiDoc source from GitHub. Do not use WebFetch — it summarizes AsciiDoc content instead of returning the raw source, which causes sections to be lost.

bash
curl -sL "https://raw.githubusercontent.com/couchbase/docs-couchbase-lite/release/4.0/modules/swift/pages/{filename}.adoc"

The official docs use AsciiDoc with Antora conventions:

  • = Title for H1, == Section for H2, etc.
  • include:: directives pull in code snippets from example files — see below for how to fetch them
  • xref:swift:page.adoc[Label] for cross-references
  • Admonitions: NOTE:, TIP:, CAUTION:, IMPORTANT:
  • Code blocks: [source, swift] followed by ---- delimited blocks
  • Tags in code: tag::name[] / end::name[] delimit named regions
Fetching included code snippets

The AsciiDoc pages use include:: directives to pull in Swift code examples. These are available on GitHub and should be fetched so you can see the actual Swift code being shown in the official docs.

Include paths follow the Antora convention module:example$path. For example:

include::swift:example$code_snippets/SampleCodeTest.swift[tags="fts-index"]

maps to:

bash
curl -sL "https://raw.githubusercontent.com/couchbase/docs-couchbase-lite/release/4.0/modules/swift/examples/code_snippets/SampleCodeTest.swift"

The [tags="name"] attribute selects the region between // tag::name[] and // end::name[] markers in the source file. Use grep to extract the relevant tagged regions after fetching the file.

Seeing the original Swift code helps you write accurate Dart equivalents — you can see the exact API calls, parameter names, and patterns used.

Step 3: Read the current Dart page and build a section map

Read the existing MDX file from docs/docs/.

Before writing anything, build a section-by-section comparison between the official page and the Dart page. List every section heading from the official page and note whether it exists in the Dart page, is missing, or has different content. This prevents accidentally dropping sections during the rewrite.

The Dart page may be a stub (just a placeholder pointing to the Swift docs) or a full page with existing content. For stubs, you're writing the page from scratch based on the official docs. For full pages, you're doing a differential update. Either way, the section map ensures completeness.

Step 4: Check available Dart APIs and behavior

Before writing code examples or referencing APIs, verify they exist in the Dart codebase. The public API lives in packages/cbl/lib/src/. Key locations:

  • Database API: packages/cbl/lib/src/database/
  • Document API: packages/cbl/lib/src/document/
  • Query API: packages/cbl/lib/src/query/
  • Replicator: packages/cbl/lib/src/replication/
  • Blobs: packages/cbl/lib/src/document/blob.dart
  • Logging: packages/cbl/lib/src/log/

Use Grep/Glob to find the actual class names, method signatures, and enum values. The Dart API doesn't always have a 1:1 correspondence with Swift — for example, Dart has separate openAsync/openSync methods where Swift has a single initializer.

Differences between the Dart SDK behavior should be verified with runtime checks while implementing or updating docs. If a Dart-specific behavior could reasonably differ from the upstream documentation, verify it with an existing test or a focused runtime check before documenting it as fact.

Show full SKILL.md (389 more words)Show less
Step 5: Rewrite the Dart page

Produce an updated MDX file that:

  1. Incorporates new sections from the official docs that are missing in the Dart version
  2. Updates existing sections where the official docs have changed
  3. Removes sections that no longer exist in the official docs (use judgment — some Dart-specific sections like "Couchbase Lite for VSCode" should be kept)
  4. Preserves Dart-specific content that doesn't have an official equivalent (e.g., async/sync API tabs, Dart-specific tips)
  5. Writes Dart code examples instead of Swift ones, using actual Dart API names verified against the codebase

Read references/doc-conventions.md for the full MDX format conventions before writing.

Step 6: Format and verify

After writing the updated page:

  1. Run npm run prettier:write from the docs/ directory to format the file (the docs use Prettier, not daco format)
  2. Verify all api| references point to real APIs by spot-checking against the codebase
  3. Verify any behavior-sensitive Dart-specific claims you added or changed are backed by runtime checks or existing tests

Important guidelines

  • The official docs are the source of truth for conceptual content (what a feature does, why it matters, best practices). The Dart docs adapt this content for the Dart SDK.
  • Never blindly copy Swift code. All code examples must be valid Dart using the actual cbl package API.
  • Keep the existing page's voice. The Dart docs are slightly more concise than the official ones. Don't add verbosity.
  • Stay close to the official structure. Use the same section headings and organization as the official docs. Don't invent new sections, split content into standalone sections that don't exist upstream, or inline content that the official docs link to. Dart-specific additions (like async/sync API tabs) are fine, but the overall page skeleton should mirror the official page.
  • Distinguish between verified facts and inferences while adapting content. Do not present a Dart-specific inference as a fact unless it has been checked in source or at runtime.
  • Enterprise features should use the <EnterpriseFeatureCallout /> component, not raw text.
  • When the official docs reference platform-specific details (iOS Keychain, Android Keystore, etc.), adapt for the Dart context (which runs on all platforms).
  • Sections about features not supported in the Dart SDK should be omitted entirely, not included with "not supported" notes.
  • If you're unsure whether a feature exists in the Dart SDK, check the codebase before including it.

© cbl-dart, 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

Files

SKILL.md and 2 other files (references) in .agents/skills/sync-cbl-docs of cbl-dart/cbl-dart.

  • SKILL.md
  • references/doc-conventions.md
  • references/page-mapping.md

Open the folder on GitHubat commit de9f1e5

Compare with similar skills

Sync Cbl Docs 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.

Sync Cbl Docs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sync Cbl Docs this skillcbl-dart/cbl-dart152—~2kAutomated safety check: PassApache-2.0
Flutter Pub ReleaseMixinNetwork/flutter-plugins512—~1.3kAutomated safety check: PassMIT
Liquid Glass Widgetssdegenaar/liquid_glass_widgets711—~3.8kAutomated safety check: PassMIT
Flutter Bloc and Cubitandrewyng/context-hub14k—~998Automated safety check: PassMIT
Solidnank1ro/solid165—~3.1kAutomated safety check: PassMIT
Flutter SoLoud Audio Filtersalnitak/flutter_soloud424—~2.1kAutomated safety check: PassMIT

Similar skills

  • Flutter Pub Release

    MixinNetwork/flutter-plugins

    Prepare and draft a pub.dev release for a package in the flutter-plugins monorepo.

    512 GitHub stars~1.3k tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Liquid Glass Widgets

    sdegenaar/liquid_glass_widgets

    Mastery guide and architectural rules for liquidglasswidgets.

    711 GitHub stars~3.8k tokensUpdated yesterday
    MobileAuto-check passed
  • Flutter Bloc and Cubit

    andrewyng/context-hub

    Helps choose between Bloc and Cubit in Flutter and sets defaults for packages, lifecycle, widget binding and tests.

    14k GitHub stars~998 tokensUpdated 4 mo ago
    MobileAuto-check passed
  • Solid

    nank1ro/solid

    PRIORITY — read this skill FIRST before writing Dart code when pubspec.yaml declares solidannotations or solidgenerator.

    165 GitHub stars~3.1k tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Flutter SoLoud Audio Filters

    alnitak/flutter_soloud

    Explains how to add and tune flutter_soloud's 13 audio filters at global, per-sound and mixing-bus level, including activation order and parameter fades.

    424 GitHub stars~2.1k tokensUpdated yesterday
    MobileAuto-check passed
  • Flutter Expert

    FNOSP/FlyNarwhal

    A skill your agent uses when building cross-platform applications with Flutter 3+ and Dart.

    495 GitHub starsUsed in 2 repos~758 tokens
    MobileAuto-check passed

Works with

Categories

Questions about Sync Cbl Docs

What does Sync Cbl Docs do?

Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs. Sync Cbl Docs is an agent skill from cbl-dart/cbl-dart. Sync a Couchbase Lite for Dart documentation page with the official Couchbase Lite docs.

When should I use Sync Cbl Docs?

Sync Cbl Docs fits situations like: the user wants to update; align a documentation page in the cbl-dart project with the upstream official Couchbase docs; the user mentions that docs are outdated; asks to check for upstream doc changes.

How do I install Sync Cbl Docs in Claude Code?

Run `npx skills add cbl-dart/cbl-dart --skill sync-cbl-docs -a claude-code`. Or copy the skill folder (.agents/skills/sync-cbl-docs in cbl-dart/cbl-dart) into .claude/skills/sync-cbl-docs in your project. Claude Code loads it when a task matches its description.

How do I install Sync Cbl Docs in Codex?

Run `npx skills add cbl-dart/cbl-dart --skill sync-cbl-docs -a codex`. Or copy the skill folder (.agents/skills/sync-cbl-docs in cbl-dart/cbl-dart) into .agents/skills/sync-cbl-docs in your project. Codex loads it when a task matches its description.

Can I use Sync Cbl Docs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cbl-dart/cbl-dart --skill sync-cbl-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sync-cbl-docs, .gemini/skills/sync-cbl-docs, .github/skills/sync-cbl-docs and .opencode/skills/sync-cbl-docs in your project.

What does Sync Cbl Docs need to run?

Going by SKILL.md and its folder, Sync Cbl Docs needs the command-line tools its instructions call (curl and npm).

Does Sync Cbl Docs access the network?

SKILL.md names 2 domains. In commands or code: raw.githubusercontent.com; the agent is likely to contact it when it follows the instructions. As links in the text: github.com. This is read from the text; nothing was executed.

Is Sync Cbl Docs safe to install?

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.

What licence does Sync Cbl Docs use?

Sync Cbl Docs 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.

How many tokens does Sync Cbl Docs use?

About 2k tokens (SKILL.md is roughly 8.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.9k tokens, read only when the agent opens those files.

What are the alternatives to Sync Cbl Docs?

Skills that share tags, products or a category with Sync Cbl Docs: Flutter Pub Release (MixinNetwork/flutter-plugins, 512 stars), Liquid Glass Widgets (sdegenaar/liquid_glass_widgets, 711 stars), Flutter Bloc and Cubit (andrewyng/context-hub, 14k stars) and Solid (nank1ro/solid, 165 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sync Cbl Docs?

cbl-dart (a GitHub organization) maintains it in cbl-dart/cbl-dart, which has 152 GitHub stars. The repository was last updated on September 26, 2026.

Source: cbl-dart/cbl-dart on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.