agent-health
Reads production/traces/agent-metrics.jsonl and displays a per-agent performance summary table for the current or a specified session. Highlights agents with…
Provides distributed NoSQL patterns for Cassandra and DynamoDB covering query-first modeling, single-table design, and partition key strategies. Use when designing NoSQL schemas or when the user mentions Cassandra, DynamoDB, or NoSQL modeling.
$ npx -y skills add tranhieutt/software_development_department --skill nosql-expert --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/nosql-expertContext preview
The summary Claude sees to decide when to auto-load this skill.
Provides distributed NoSQL patterns for Cassandra and DynamoDB covering query-first modeling, single-table design, and partition key strategies. Use when designing NoSQL schemas or when the user mentions Cassandra, DynamoDB, or NoSQL modeling.
name: nosql-expert type: reference description: "Provides distributed NoSQL patterns for Cassandra and DynamoDB covering query-first modeling, single-table design, and partition key strategies. Use when designing NoSQL schemas or when the user mentions Cassandra, DynamoDB, or NoSQL modeling." paths: ["**/mongo*", "**/dynamo*", "**/cassandra*", "**/*.json"] effort: 3 allowed-tools: Read, Glob, Grep, Write, Edit, Bash user-invocable: true when_to_use: "When designing NoSQL database schemas with Cassandra or DynamoDB, applying query-first modeling or single-table design"
This skill provides professional mental models and design patterns for **distributed wide-column and key-value stores** (specifically Apache Cassandra and Amazon DynamoDB).
Unlike SQL (where you model data entities), or document stores (like MongoDB), these distributed systems require you to **model your queries first**.
| Feature | SQL (Relational) | Distributed NoSQL (Cassandra/DynamoDB) | | :--- | :--- | :--- | | **Data modeling** | Model Entities + Relationships | Model **Queries** (Access Patterns) | | **Joins** | CPU-intensive, at read time | **Pre-computed** (Denormalized) at write time | | **Storage cost** | Expensive (minimize duplication) | Cheap (duplicate data for read speed) | | **Consistency** | ACID (Strong) | **BASE (Eventual)** / Tunable | | **Scalability** | Vertical (Bigger machine) | **Horizontal** (More nodes/shards) |
> **The Golden Rule:** In SQL, you design the data model to answer *any* query. In NoSQL, you design the data model to answer *specific* queries efficiently.
You typically cannot "add a query later" without migration or creating a new table/index.
**Process:** 1. **List all Entities** (User, Order, Product). 2. **List all Access Patterns** ("Get User by Email", "Get Orders by User sorted by Date"). 3. **Design Table(s)** specifically to serve those patterns with a single lookup.
Data is distributed across physical nodes based on the **Partition Key (PK)**.
Within a partition, data is sorted on disk by the **Clustering Key (Cassandra)** or **Sort Key (DynamoDB)**.
*Primary use: DynamoDB (but concepts apply elsewhere)*
Storing multiple entity types in one table to enable pre-joined reads.
| PK (Partition) | SK (Sort) | Data Fields... | | :--- | :--- | :--- | | `USER#123` | `PROFILE` | `{ name: "Ian", email: "..." }` | | `USER#123` | `ORDER#998` | `{ total: 50.00, status: "shipped" }` | | `USER#123` | `ORDER#999` | `{ total: 12.00, status: "pending" }` |
Don't be afraid to store the same data in multiple tables to serve different query patterns.
*Trade-off: You must manage data consistency across tables (often using eventual consistency or batch writes).*
Before finalizing your NoSQL schema:
❌ **Scatter-Gather:** Querying *all* partitions to find one item (Scan). ❌
Repo: tranhieutt/software_development_department
Reads production/traces/agent-metrics.jsonl and displays a per-agent performance summary table for the current or a specified session. Highlights agents with…
Provides the vendored agent-style v0.3.5 prose rule pack as a portable Claude skill. Use when installing, syncing, applying, or auditing SDD Agent-Style…
Provides Angular best practices for components, modules, services, and reactive patterns. Use when working with Angular TypeScript files, component templates,…
Records unexpected API behaviors, undocumented caveats, version bugs, or non-obvious workarounds into .claude/memory/annotations.md. Use immediately when an…
Defines REST and GraphQL API contracts including endpoints, request/response schemas, auth flows, and versioning strategy. Use when designing a new API,…
Manages the ADR (Architecture Decision Record) registry. Use when recording tech-stack choices, design patterns, or infrastructure decisions with context,…