NE

Adds new data types to the lifelog system by scaffolding the necessary proto, schema, and collector logic.

Install

mkdir -p .claude/skills/new-modality && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12008" && unzip -o skill.zip -d .claude/skills/new-modality && rm skill.zip

Installs to .claude/skills/new-modality

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Add a new data modality to the lifelog system (proto, schema, collector module)
79 charsno explicit “when” trigger
Advanced

Key capabilities

  • Add message type to `proto/lifelog.proto`
  • Add enum variant to `DataModality` in `proto/lifelog_types.proto`
  • Add `DataType` and `Modality` trait implementations in `common/lifelog-proto/src/lib.rs`
  • Add `TableSchema` entry in `server/src/schema.rs`
  • Create collector module with collection logic
  • Register collector module in `collector/src/modules/mod.rs`

How it works

This skill guides the user through a checklist to add a new data modality to the lifelog system. It involves modifying proto definitions, rebuilding protos, implementing traits, updating the database schema, creating a collector module, and registering it.

Inputs & outputs

You give it
The name of the new data modality
You get back
Updated proto files, database schema, and collector module, with validation that everything compiles and tests pass

When to use new-modality

  • Add new sensor data type
  • Integrate custom data stream
  • Extend lifelog storage schema

About this skill

Add a new data modality called: $ARGUMENTS.

Follow this checklist in order:

  1. Proto definition: Add message type to proto/lifelog.proto and enum variant to DataModality in proto/lifelog_types.proto
  2. Rebuild proto: just check to regenerate code
  3. Proto impls: Add DataType + Modality trait impls in common/lifelog-proto/src/lib.rs (follow existing patterns like ScreenFrame)
  4. DB schema: Add TableSchema entry in server/src/schema.rs with fields and indexes
  5. Collector module: Create collector/src/modules/<name>.rs with the collection logic
  6. Register module: Add pub mod <name>; in collector/src/modules/mod.rs and wire into collector startup
  7. Validate: Run just validate to ensure everything compiles and tests pass

When not to use it

  • When the user does not want to add a new data modality to the lifelog system
  • When the user does not want to follow a checklist for adding a new data modality
  • When the user does not want to validate the changes by running `just validate`

Limitations

  • Requires manual modification of proto files
  • Requires manual modification of Rust source files
  • Requires running `just check` and `just validate` commands

How it compares

This skill provides a structured, step-by-step checklist for integrating a new data modality, ensuring all necessary components are updated and validated, unlike an unguided manual process.

Compared to similar skills

new-modality side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
new-modality (this skill)06moNo flagsAdvanced
tauri761moReviewAdvanced
qdrant-vector-search188moReviewAdvanced
arm-cortex-expert293moNo flagsAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

tauri

EpicenterHQ

Tauri path handling, cross-platform file operations, and API usage. Use when working with file paths in Tauri frontend code, accessing filesystem APIs, or handling platform differences in desktop apps.

76185

qdrant-vector-search

zechenzhangAGI

High-performance vector similarity search engine for RAG and semantic search. Use when building production RAG systems requiring fast nearest neighbor search, hybrid search with filtering, or scalable vector storage with Rust-powered performance.

18161

arm-cortex-expert

sickn33

Senior embedded software engineer specializing in firmware and driver development for ARM Cortex-M microcontrollers (Teensy, STM32, nRF52, SAMD). Decades of experience writing reliable, optimized, and maintainable embedded code with deep expertise in memory barriers, DMA/cache coherency, interrupt-driven I/O, and peripheral drivers.

2975

blockchain-developer

sickn33

Build production-ready Web3 applications, smart contracts, and decentralized systems. Implements DeFi protocols, NFT platforms, DAOs, and enterprise blockchain integrations. Use PROACTIVELY for smart contracts, Web3 apps, DeFi protocols, or blockchain infrastructure.

655

rust-async-patterns

wshobson

Master Rust async programming with Tokio, async traits, error handling, and concurrent patterns. Use when building async Rust applications, implementing concurrent systems, or debugging async code.

1132

rust-errors

EpicenterHQ

Rust to TypeScript error handling patterns for Tauri apps. Use when defining Rust errors that will be passed to TypeScript, handling Tauri command errors, or creating discriminated union error types.

521

Search skills

Search the agent skills registry