smithery.ai

Weight Track Database

Describes the structure of the weight tracker database that allows to store and read weight records for the user

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 1,723 B
  • docs SUMMARY.md 141 B

History

  1. First recorded snapshot · 1 installs

SKILL.md

Overview

The Weight Tracker database uses a JSON file to store weight entries provided by the user.

File Location

The data file is available at {root}/db/weight-tracker.json

Writing to the db

  1. Before writing into the db, identify which is the best approach:

- in-memory change: load the entire file in-memory, apply the change, serialize it back - text-based change: scan the file in text mode and apply the change as a patch

  1. Isolate the atomical change you want to apply
  1. Read existing data to understand which kind of operation is needed

- insert - update - delete

  1. Apply the change with the identified approach.

ALWAYS: explain the execution plan to the user as output in the chat

Reading from the DB

  1. Identify the best approach to the read request:
  • in-memory change: load the entire file in-memory, evaluate logic to perform the read
  • text-based change: scan the file in text mode and calculate the expected information as context
  1. Perform the read of the pertinent information
  1. Perform aggregations if needed

ALWAYS: explain the execution plan to the user as output in the chat

Data Structure

Always ensure the database keeps a data structure like this:

{
  "2025": {
    "11": {
      "10": 99.0,
      "12": 99.5
    }
  }
}

More info:

  • the indexing of the data is: year -> month -> day
  • the value of a day is a number, the database is unit agnostic
  • if a new writing request targets an existing day, override the value for the day