What problem does it solve? Yaklang scripts and plugins often need to persist structured results, share state across runs, or manage brute-force dictionaries, but the db library's real API shapes (error fields vs functions, tuple returns, iterator outputs) are easy to get wrong. This Skill documents the correct patterns with runnable, self-testing examples. ## Core Features & Use Cases - Temporary SQLite CRUD: Create tables, insert, and query with db.OpenTempSqliteDatabase, Exec, and db.ScanResult returning []map rows. - Key-Value & Project Config: Share state across scripts with db.SetKey/GetKey/SetKeyWithTTL and project-scoped db.SetProjectKey/GetProjectKey. - Payload Dictionary Management: Save and iterate brute-force dictionaries with db.SavePayload and db.YieldPayload, including cleanup conventions. - Use Case: A scanning plugin stores intermediate results in a temp SQLite table, queries them with SQL aggregation, and reads a shared config key set by another plugin. ## Quick Start Ask the AI to write a Yaklang script that creates a temporary SQLite table, inserts rows, queries them with db.ScanResult, and stores a config value with db.SetKey.