new-modality
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.zipInstalls 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)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
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:
- Proto definition: Add message type to
proto/lifelog.protoand enum variant toDataModalityinproto/lifelog_types.proto - Rebuild proto:
just checkto regenerate code - Proto impls: Add
DataType+Modalitytrait impls incommon/lifelog-proto/src/lib.rs(follow existing patterns like ScreenFrame) - DB schema: Add
TableSchemaentry inserver/src/schema.rswith fields and indexes - Collector module: Create
collector/src/modules/<name>.rswith the collection logic - Register module: Add
pub mod <name>;incollector/src/modules/mod.rsand wire into collector startup - Validate: Run
just validateto 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.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| new-modality (this skill) | 0 | 6mo | No flags | Advanced |
| tauri | 76 | 1mo | Review | Advanced |
| qdrant-vector-search | 18 | 8mo | Review | Advanced |
| arm-cortex-expert | 29 | 3mo | No flags | Advanced |
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.
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.
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.
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.
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.
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.