fluent-db-updater

Atomically update all Fluent learner databases with a single JSON payload.

286|46|Updated Nov 17, 2025
One-click install
npx skills add https://github.com/m98/fluent --skill fluent-db-updater
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fluent-db-updater
Source: https://github.com/m98/fluent/tree/main/.claude/skills/fluent-db-updater
Command: npx skills add https://github.com/m98/fluent --skill fluent-db-updater

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Atomically updates all Fluent learner databases at session end to prevent desynchronization and manual drift between components like learner-profile, progress, mistakes, mastery, spaced-repetition, and session-log.

Core Features & Use Cases

  • Atomic batch updates: apply changes to six databases in a single operation.
  • Safe backups and integrity: automatic backups plus fsync + rename to avoid partial writes.
  • Use Case: after every practice session (fluent-writing, fluent-vocab, fluent-speaking, fluent-reading, fluent-review, fluent-learn) push session results, errors, and new vocabulary for immediate availability.

Quick Start

Execute the update with a single session payload to persist results across all Fluent databases at the end of a practice session.

Frequently Asked Questions about fluent-db-updater

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I atomically update multiple learner databases at session end?

To atomically update multiple learner databases, you can use a single JSON payload to validate, back up, and write changes across all six databases simultaneously, preventing manual drift and desynchronization.

Why do my Fluent practice session results desynchronize across different databases?

Practice session results desynchronize when updates are not written atomically. Applying a single validated JSON payload across all components ensures session results, errors, and vocabulary persist immediately without partial writes.

What is the safest way to prevent partial writes when updating learner databases?

The safest way to prevent partial writes is using automatic backups combined with fsync and rename operations. This ensures integrity by writing changes atomically only after validation succeeds.

Can I use a single JSON payload to update learner-profile, progress, and mastery databases together?

Yes, you can use a single JSON payload to update learner-profile, progress, mistakes, mastery, spaced-repetition, and session-log databases together in one atomic batch operation at session end.

Does atomic database updating work with all Fluent practice modes like writing and vocab?

Yes, atomic database updating works with all Fluent practice modes including fluent-writing, fluent-vocab, fluent-speaking, fluent-reading, fluent-review, and fluent-learn to push session results and new vocabulary.

When should I not use atomic batch updates for my practice session data?

You should avoid atomic batch updates if your session payload cannot be validated into a single JSON structure, as the operation requires complete data to safely create backups and write across all six databases simultaneously.