بنقرة واحدة
dev-setup
Initialize development project with Nix flake, direnv, devShell, and LSP configuration
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Initialize development project with Nix flake, direnv, devShell, and LSP configuration
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Run the self-improvement pipeline to analyze usage, plan, and apply Claude Code configuration improvements
Create, schedule, and manage autonomous AI-agent tasks with systemd timers
Create and manipulate Obsidian Canvas (.canvas) files using the JSON Canvas spec
Create a git commit with proper conventional commit message
Code generation, exploration, and image analysis via Codex CLI
Query Gemini CLI for quick lookups, deep research, and approach comparison
| name | dev-setup |
| description | Initialize development project with Nix flake, direnv, devShell, and LSP configuration |
Create reproducible, isolated Nix development environments with LSP support.
flake.nix - Dependencies, outputs, dev shells.envrc - Contains use flake for direnvshell.nix - Dev shell with tooling.claude/settings.local.json - LSP config{
description = "Project description";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
# Rust projects only:
# rust-overlay.url = "github:oxalica/rust-overlay";
};
outputs = { self, nixpkgs, flake-utils, ... }@inputs:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
# Python projects:
# python = pkgs.python312;
# pythonPackages = python.pkgs;
# Rust projects (requires rust-overlay input):
# overlays = [ (import inputs.rust-overlay) ];
# pkgs = import nixpkgs { inherit system overlays; };
# rust = pkgs.rust-bin.stable.latest.default.override {
# extensions = [ "rust-src" "rust-analyzer" ];
# };
in {
devShells.default = import ./shell.nix { inherit pkgs; };
# Python: { inherit pkgs python pythonPackages; }
# Rust: { inherit pkgs rust; }
# Optional package output:
# packages.default = pythonPackages.buildPythonApplication { ... };
# packages.default = pkgs.rustPlatform.buildRustPackage { ... };
# packages.default = pkgs.buildGoModule { vendorHash = null; ... };
formatter = pkgs.nixfmt-rfc-style;
}
);
}
{ pkgs
# Python: , python, pythonPackages
# Rust: , rust
}:
pkgs.mkShell {
name = "project-dev";
packages = with pkgs; [
# Always include
git
# Nix projects
nixd
nixfmt-rfc-style
# Python projects
# python
# pythonPackages.pip
# pythonPackages.pytest
# pyright
# Node/TypeScript projects
# nodejs
# pnpm
# typescript
# typescript-language-server
# Rust projects
# rust # from flake let bindings
# cargo-watch
# Go projects
# go
# gopls
# gotools
];
}
{
"lspServers": {
"nix": { "command": "nixd" },
"python": { "command": "pyright-langserver", "args": ["--stdio"] },
"typescript": { "command": "typescript-language-server", "args": ["--stdio"] },
"rust": { "command": "rust-analyzer" },
"go": { "command": "gopls" }
}
}
Include only the LSPs relevant to your project.