원클릭으로
diesel-orm
Type-safe Rust ORM with compile-time query validation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Type-safe Rust ORM with compile-time query validation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | Diesel ORM |
| description | Type-safe Rust ORM with compile-time query validation. |
| metadata | {"labels":["rust","diesel","orm","database","postgresql"],"triggers":{"files":["**/schema.rs","diesel.toml"],"keywords":["diesel","Queryable","Insertable","table"]}} |
// Generated by diesel migration run
// src/schema.rs
diesel::table! {
users (id) {
id -> Int4,
name -> Varchar,
email -> Varchar,
created_at -> Timestamp,
}
}
use diesel::prelude::*;
use crate::schema::users;
#[derive(Queryable, Selectable, Debug)]
#[diesel(table_name = users)]
pub struct User {
pub id: i32,
pub name: String,
pub email: String,
pub created_at: NaiveDateTime,
}
#[derive(Insertable)]
#[diesel(table_name = users)]
pub struct NewUser<'a> {
pub name: &'a str,
pub email: &'a str,
}
#[derive(AsChangeset)]
#[diesel(table_name = users)]
pub struct UpdateUser<'a> {
pub name: Option<&'a str>,
pub email: Option<&'a str>,
}
use diesel::pg::PgConnection;
use diesel::r2d2::{Pool, ConnectionManager};
type DbPool = Pool<ConnectionManager<PgConnection>>;
fn establish_pool(database_url: &str) -> DbPool {
let manager = ConnectionManager::<PgConnection>::new(database_url);
Pool::builder()
.max_size(15)
.build(manager)
.expect("Failed to create pool")
}
use diesel::prelude::*;
use crate::schema::users::dsl::*;
// Create
fn create_user(conn: &mut PgConnection, new_user: &NewUser) -> QueryResult<User> {
diesel::insert_into(users)
.values(new_user)
.get_result(conn)
}
// Read
fn find_user(conn: &mut PgConnection, user_id: i32) -> QueryResult<User> {
users.find(user_id).first(conn)
}
fn list_users(conn: &mut PgConnection) -> QueryResult<Vec<User>> {
users.load(conn)
}
// Update
fn update_user(conn: &mut PgConnection, user_id: i32, changes: &UpdateUser) -> QueryResult<User> {
diesel::update(users.find(user_id))
.set(changes)
.get_result(conn)
}
// Delete
fn delete_user(conn: &mut PgConnection, user_id: i32) -> QueryResult<usize> {
diesel::delete(users.find(user_id)).execute(conn)
}
// Filtering
let active_users = users
.filter(active.eq(true))
.filter(created_at.gt(cutoff_date))
.load::<User>(conn)?;
// Ordering and pagination
let page = users
.order(created_at.desc())
.limit(10)
.offset(20)
.load::<User>(conn)?;
// Select specific columns
let emails: Vec<String> = users
.select(email)
.load(conn)?;
// Joins
let user_posts = users
.inner_join(posts::table)
.select((users::name, posts::title))
.load::<(String, String)>(conn)?;
conn.transaction(|conn| {
diesel::insert_into(users)
.values(&new_user)
.execute(conn)?;
diesel::insert_into(audit_log)
.values(&log_entry)
.execute(conn)?;
Ok(())
})
# Create migration
diesel migration generate create_users
# Run pending migrations
diesel migration run
# Revert last migration
diesel migration revert
# Redo last migration
diesel migration redo
diesel migration run before compileQueryable for reads, Insertable for writesOption<T> for nullable columnssql_query() for complex queries when neededCreate a structured implementation plan for a feature request. Covers architecture, system design, module design, pattern selection, and milestone-based task planning with DoD. Use when the user describes a new feature, significant change, or multi-step implementation task.
Execute an implementation plan milestone-by-milestone. Reads the plan, reviews lessons, then implements tasks using agents for parallelizable work. Invoke with /scrum-implement <plan-file-path> or triggered when the user asks to implement/execute a plan.
Extract lessons from a retrospective and review skills/agents for improvements. Creates lesson files in ~/Claude/lessons/ and suggests concrete changes to scrum skills. Invoke with /scrum-lessons <retrospective-path> or after running /scrum-retro.
Generate a sprint retrospective from a plan file and tech lead feedback. Analyzes what was planned vs what was built, identifies root causes, and produces actionable takeaways. Invoke with /scrum-retro <plan-file-path> or triggered when the user asks to create a retrospective.
Temporal Python SDK (`temporalio`) patterns, determinism rules, error handling, and testing. Trigger: When writing Temporal workflows, activities, or workers in Python, or when the user mentions Temporal, durable workflows, or the Python SDK in the context of workflow orchestration. Activated when working on files importing `temporalio`, `@activity.defn`, `@workflow.defn`, in directories named `temporal_app/`, `workflows/`, `activities/`, or when user asks about Temporal concepts, determinism, replay, signals, or activity patterns.
Set up a new Python/Django project with uv, ruff, basedpyright, pre-commit hooks, Justfile, Docker Compose, and CI. Invoke when starting a new Python project or when asked to set up project tooling.