mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-01-11 14:30:24 +01:00
909 B
909 B
Project Rules
General Development
- NEVER commit or push without explicit confirmation
Build and Lint
- ALWAYS run
npm run lintafter modifying TypeScript or JavaScript files - Run
npm run bootstrapafter changing plugin runtime or MCP server code
Plugin System
Backend Constraints
- Always use
UpdateSource::Pluginwhen calling database methods from plugin events - Never send timestamps (
createdAt,updatedAt) from TypeScript - Rust backend controls these - Backend uses
NaiveDateTime(no timezone) so avoid sending ISO timestamp strings
MCP Server
- MCP server has no active window context - cannot call
window.workspaceId() - Get workspace ID from
workspaceCtx.yaak.workspace.list()instead
Rust Type Generation
- Run
cargo test --package yaak-plugins(and for other crates) to regenerate TypeScript bindings after modifying Rust event types