Compare commits
16
Commits
5e26e13aa7
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b01084482f | ||
|
|
66b1dc72f5 | ||
|
|
0db970c161 | ||
|
|
516f9d74e0 | ||
|
|
7926491466 | ||
|
|
a9cf13abd4 | ||
|
|
4dec87ebc7 | ||
|
|
53de70bf4f | ||
|
|
206ee46d4f | ||
|
|
4ac8d6fb9a | ||
|
|
a22ff06004 | ||
|
|
acbf02c3e1 | ||
|
|
128391afb2 | ||
|
|
92244b5f02 | ||
|
|
7b3ef4a2c3 | ||
|
|
2aac223e77 |
+132
-4
@@ -783,6 +783,19 @@
|
||||
},
|
||||
"path": "skills/engineering/ask-matt"
|
||||
},
|
||||
"batch-grill-me": {
|
||||
"entry": "skills/in-progress/batch-grill-me/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "A relentless interview that asks every frontier question at once, round by round.",
|
||||
"name": "batch-grill-me",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/in-progress/batch-grill-me"
|
||||
},
|
||||
"claude-handoff": {
|
||||
"entry": "skills/in-progress/claude-handoff/SKILL.md",
|
||||
"licenseFiles": [
|
||||
@@ -919,7 +932,7 @@
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "Grill the user relentlessly about a plan or design. Use when the user wants to stress-test a plan before building, or uses any 'grill' trigger phrases.",
|
||||
"description": "Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.",
|
||||
"name": "grilling",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
@@ -1108,6 +1121,19 @@
|
||||
},
|
||||
"path": "skills/misc/setup-pre-commit"
|
||||
},
|
||||
"setup-ts-deep-modules": {
|
||||
"entry": "skills/in-progress/setup-ts-deep-modules/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.",
|
||||
"name": "setup-ts-deep-modules",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/in-progress/setup-ts-deep-modules"
|
||||
},
|
||||
"tdd": {
|
||||
"entry": "skills/engineering/tdd/SKILL.md",
|
||||
"licenseFiles": [
|
||||
@@ -1134,6 +1160,19 @@
|
||||
},
|
||||
"path": "skills/productivity/teach"
|
||||
},
|
||||
"to-questionnaire": {
|
||||
"entry": "skills/in-progress/to-questionnaire/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "Turn a decision you can't fully answer into a questionnaire for someone else to fill in.",
|
||||
"name": "to-questionnaire",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/in-progress/to-questionnaire"
|
||||
},
|
||||
"to-spec": {
|
||||
"entry": "skills/engineering/to-spec/SKILL.md",
|
||||
"licenseFiles": [
|
||||
@@ -1192,7 +1231,7 @@
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "Plan a huge chunk of work — more than one agent session can hold — as a shared map of investigation tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.",
|
||||
"description": "Plan a huge chunk of work — more than one agent session can hold — as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.",
|
||||
"name": "wayfinder",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
@@ -1267,14 +1306,103 @@
|
||||
},
|
||||
"tools": {}
|
||||
},
|
||||
"narHash": "sha256:7fa8729eedd68eb10218d1c37868952cbe73913e46c23d5d251afcf4b5a72e8d",
|
||||
"narHash": "sha256:51778614e8086c70f3382b8076425f1a6c9edaa6f926e0771e21d10315d2f118",
|
||||
"ref": null,
|
||||
"rev": "89d370d181e7397c1cf4e9da47391dd26cd416b1",
|
||||
"rev": "ed37663cc5fbef691ddfecd080dff42f7e7e350d",
|
||||
"root": ".",
|
||||
"type": "git",
|
||||
"url": "https://github.com/mattpocock/skills",
|
||||
"warnings": []
|
||||
},
|
||||
"okf": {
|
||||
"discovery": {
|
||||
"agents": {
|
||||
"include": [
|
||||
"**/AGENT.md"
|
||||
],
|
||||
"paths": [
|
||||
"agents"
|
||||
]
|
||||
},
|
||||
"prompts": {
|
||||
"include": [
|
||||
"**/PROMPT.md"
|
||||
],
|
||||
"paths": [
|
||||
"prompts"
|
||||
]
|
||||
},
|
||||
"skills": {
|
||||
"include": [
|
||||
"**/SKILL.md"
|
||||
],
|
||||
"paths": [
|
||||
"skills"
|
||||
]
|
||||
},
|
||||
"tools": {
|
||||
"include": [
|
||||
"**/TOOL.md"
|
||||
],
|
||||
"paths": [
|
||||
"tools"
|
||||
]
|
||||
}
|
||||
},
|
||||
"items": {
|
||||
"agents": {},
|
||||
"prompts": {},
|
||||
"skills": {
|
||||
"okf": {
|
||||
"entry": "skills/okf/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": ">-",
|
||||
"name": "okf",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/okf"
|
||||
},
|
||||
"validate": {
|
||||
"entry": "skills/validate/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": ">-",
|
||||
"name": "validate",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/validate"
|
||||
},
|
||||
"visualize": {
|
||||
"entry": "skills/visualize/SKILL.md",
|
||||
"licenseFiles": [
|
||||
"LICENSE"
|
||||
],
|
||||
"metadata": {
|
||||
"description": ">-",
|
||||
"name": "visualize",
|
||||
"requires": [],
|
||||
"tags": []
|
||||
},
|
||||
"path": "skills/visualize"
|
||||
}
|
||||
},
|
||||
"tools": {}
|
||||
},
|
||||
"narHash": "sha256:7491a95f121a0e5d045381113955252bd6d401009fe2b9b27752f3caeeb6682e",
|
||||
"ref": null,
|
||||
"rev": "cb5c0a9973c81ea3702f677e0b8852d93b47be80",
|
||||
"root": ".",
|
||||
"type": "git",
|
||||
"url": "https://github.com/scaccogatto/okf-skills",
|
||||
"warnings": []
|
||||
},
|
||||
"superpowers": {
|
||||
"discovery": {
|
||||
"agents": {
|
||||
|
||||
Generated
+151
-52
@@ -62,11 +62,11 @@
|
||||
"agents_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1780133320,
|
||||
"narHash": "sha256-8AiN9tV9PBb5xblJiPlhumBbKj61qLjzqXXFtkj3vvY=",
|
||||
"lastModified": 1783016143,
|
||||
"narHash": "sha256-3qejDAo4g2XfzTyWCaX8RVKH17JXnw/fujsbXQA+Mzc=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "920c00313ae242bd93275c30131b9ab1e52ee2fb",
|
||||
"revCount": 88,
|
||||
"rev": "83284d752d2ac325d4bf3ab7b38acad1c2fffe3a",
|
||||
"revCount": 98,
|
||||
"type": "git",
|
||||
"url": "https://code.m3ta.dev/m3tam3re/AGENTS"
|
||||
},
|
||||
@@ -99,16 +99,16 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774505501,
|
||||
"narHash": "sha256-7UiRrDptj7yuEFwToOfdunUMz/i3jRLR7CmMoYQjq6k=",
|
||||
"lastModified": 1785348116,
|
||||
"narHash": "sha256-AVycTcomtfvQJ/AHvMg5xu7lVoOzDXxjN+pV7mqUIQ4=",
|
||||
"owner": "basecamp",
|
||||
"repo": "basecamp-cli",
|
||||
"rev": "f087e6ef84002503d0dbc75ea1c8c928a8928d9e",
|
||||
"rev": "e1059fb123a03295ce6176272e4bbaf43d7971c6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "basecamp",
|
||||
"ref": "v0.7.2",
|
||||
"ref": "v0.8.0-rc.1",
|
||||
"repo": "basecamp-cli",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -143,11 +143,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783529634,
|
||||
"narHash": "sha256-zdHsPGPE5MVi/y+uIt548XScTfZjQzdF21dME7ISEJM=",
|
||||
"lastModified": 1785111455,
|
||||
"narHash": "sha256-aTNuC9NDBnYAeEtFsleeUwmGX3AZlKOutbl+LQRPkmQ=",
|
||||
"owner": "AvengeMedia",
|
||||
"repo": "DankMaterialShell",
|
||||
"rev": "bdfd565b72cbb416441a9ab828efcac4fd516c70",
|
||||
"rev": "069ddab041c738236a8910e4c39b65d9628d3018",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -164,11 +164,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783591397,
|
||||
"narHash": "sha256-e4DDmVAas6IPwwY+gfSDKh3PMzW/FXLCbjyWXOnnnbM=",
|
||||
"lastModified": 1785375021,
|
||||
"narHash": "sha256-SV24PP3ctDSAuQjg0LdYAvzN7GEustIrtZfciiSrgRI=",
|
||||
"owner": "AvengeMedia",
|
||||
"repo": "dms-plugin-registry",
|
||||
"rev": "8b61e8fca730986e673737529fa56802dc9326bb",
|
||||
"rev": "672e213a1e20b980708d81bd82df9bf85c15a590",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -243,19 +243,20 @@
|
||||
],
|
||||
"npm-lockfile-fix": "npm-lockfile-fix",
|
||||
"pyproject-build-systems": "pyproject-build-systems",
|
||||
"pyproject-nix": "pyproject-nix",
|
||||
"uv2nix": "uv2nix"
|
||||
"pyproject-nix": "pyproject-nix_2",
|
||||
"uv2nix": "uv2nix_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783592259,
|
||||
"narHash": "sha256-4b01+K9g1iBpLUaeiioQufWVowPW7uYk4QCe0L0nHiI=",
|
||||
"lastModified": 1782936460,
|
||||
"narHash": "sha256-Wt72AQtA6Eizi7Ubj23JBhwZ7GKYcjY4mcV6upqHOaU=",
|
||||
"owner": "NousResearch",
|
||||
"repo": "hermes-agent",
|
||||
"rev": "73b611ad19720d70308dad6b0fb64648aaadc216",
|
||||
"rev": "7c1a029553d87c43ecff8a3821336bc95872213b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NousResearch",
|
||||
"ref": "v2026.7.1",
|
||||
"repo": "hermes-agent",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -288,11 +289,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783550008,
|
||||
"narHash": "sha256-qbbZUk9IG9dLNwCPwdPBs6I5clxwugRpP+1YU+GPK20=",
|
||||
"lastModified": 1785306346,
|
||||
"narHash": "sha256-DScBkW0fOgpGPK2trNoX3ryLTlaC14+gglFo/BhGJ4g=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "f4d01c1d87c7c2ec909549165d5a8338f1bd3315",
|
||||
"rev": "e705714e918c3b11affcdd15db2cbe3a070420a0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -309,14 +310,15 @@
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"opencode": "opencode",
|
||||
"openspec": "openspec"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783269665,
|
||||
"narHash": "sha256-bA4PooGV1x3vtmhs6NEprZbWErwaEJdgxoKfAWaH0do=",
|
||||
"lastModified": 1785670526,
|
||||
"narHash": "sha256-tC1CW+Kxh9ZZxJC0y472i0KoieMqNwNi+AiCmS4n7To=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "f279ae9c89d59f3e0deb0fd6307800f4cb993815",
|
||||
"revCount": 356,
|
||||
"rev": "69fce234a8607cd3e71233831564b8ceeba70626",
|
||||
"revCount": 374,
|
||||
"type": "git",
|
||||
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/nixpkgs"
|
||||
},
|
||||
@@ -377,11 +379,11 @@
|
||||
},
|
||||
"nixpkgs-master": {
|
||||
"locked": {
|
||||
"lastModified": 1782540244,
|
||||
"narHash": "sha256-3skOZJEfAUG7LSB/Ok2AQUiqeagYLSq+8wKjtS1hOyc=",
|
||||
"lastModified": 1785386845,
|
||||
"narHash": "sha256-CvXXTgWxbwTn6Diev4nLTP5+8tsFtth/SQAtaR9iVY0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a65184fc373636356fcaf460dc09655a919c66ea",
|
||||
"rev": "3c5a718ce27c9283364d4c664fac4e4a23acdfb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -409,11 +411,27 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1783224372,
|
||||
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
||||
"lastModified": 1776683584,
|
||||
"narHash": "sha256-NuTLMrr10Tng72hurYG8jYQ4XKK8wnpJmOGcPiis96g=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d407951447dcd00442e97087bf374aad70c04cea",
|
||||
"rev": "9dd5558b06dbdacbf635a3dd36dce1b1a7ee3a89",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1785318670,
|
||||
"narHash": "sha256-dN6Ou5x/+23FZLEpYP3IffO+NyJFzUlGumt1uu3MMaY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0954f7ee2f6bb3dc7d4e3d0d8bcb8fd4bde4cfc5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -423,13 +441,13 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1783224372,
|
||||
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
||||
"lastModified": 1785318670,
|
||||
"narHash": "sha256-dN6Ou5x/+23FZLEpYP3IffO+NyJFzUlGumt1uu3MMaY=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d407951447dcd00442e97087bf374aad70c04cea",
|
||||
"rev": "0954f7ee2f6bb3dc7d4e3d0d8bcb8fd4bde4cfc5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -463,14 +481,14 @@
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783593872,
|
||||
"narHash": "sha256-KvFRxsi81gBoK7JOTHD2LoR1y2sWobHkrHGPhM3v/NY=",
|
||||
"lastModified": 1785395064,
|
||||
"narHash": "sha256-ZZoXKpTETeIU93xQOxleE27JWT1FcpF9pe1nSPrFbuw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "73078fa6f0d34686ad26808f90cc74e81039ba9f",
|
||||
"rev": "cce2408845d0298ae0dcc42582c1d8b390de105c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -479,6 +497,25 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"opencode": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1785386452,
|
||||
"narHash": "sha256-iYfkMmn1ZKbi0cv8XIAXVgPH4idzsVSK4cWyi/KGMJQ=",
|
||||
"owner": "anomalyco",
|
||||
"repo": "opencode",
|
||||
"rev": "f7204902192624481e526b1852cdedaadb914e24",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "anomalyco",
|
||||
"ref": "dev",
|
||||
"repo": "opencode",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"openspec": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -487,11 +524,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782291243,
|
||||
"narHash": "sha256-0pVn5pDqlKpqSgzf4eG9TFCjkjzOtnmGTpbILso7GwI=",
|
||||
"lastModified": 1785371113,
|
||||
"narHash": "sha256-r3fwnb5gMTV9UXBj7bqkKpTZIWwF4AgghULOIv2Fr4c=",
|
||||
"owner": "Fission-AI",
|
||||
"repo": "OpenSpec",
|
||||
"rev": "737518b36fe4b6fdb09c83eeaf8d873a428c92e6",
|
||||
"rev": "2b3d368539132be6311e55db58899abbf5306b81",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -506,14 +543,8 @@
|
||||
"hermes-agent",
|
||||
"nixpkgs"
|
||||
],
|
||||
"pyproject-nix": [
|
||||
"hermes-agent",
|
||||
"pyproject-nix"
|
||||
],
|
||||
"uv2nix": [
|
||||
"hermes-agent",
|
||||
"uv2nix"
|
||||
]
|
||||
"pyproject-nix": "pyproject-nix",
|
||||
"uv2nix": "uv2nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772555609,
|
||||
@@ -530,6 +561,28 @@
|
||||
}
|
||||
},
|
||||
"pyproject-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hermes-agent",
|
||||
"pyproject-build-systems",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769936401,
|
||||
"narHash": "sha256-kwCOegKLZJM9v/e/7cqwg1p/YjjTAukKPqmxKnAZRgA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "pyproject.nix",
|
||||
"rev": "b0d513eeeebed6d45b4f2e874f9afba2021f7812",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "pyproject.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pyproject-nix_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hermes-agent",
|
||||
@@ -550,6 +603,28 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pyproject-nix_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hermes-agent",
|
||||
"uv2nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771518446,
|
||||
"narHash": "sha256-nFJSfD89vWTu92KyuJWDoTQJuoDuddkJV3TlOl1cOic=",
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "pyproject.nix",
|
||||
"rev": "eb204c6b3335698dec6c7fc1da0ebc3c6df05937",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "pyproject.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
@@ -561,7 +636,7 @@
|
||||
"home-manager": "home-manager_2",
|
||||
"m3ta-nixpkgs": "m3ta-nixpkgs",
|
||||
"nix-colors": "nix-colors",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nur": "nur"
|
||||
}
|
||||
},
|
||||
@@ -584,13 +659,37 @@
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hermes-agent",
|
||||
"pyproject-build-systems",
|
||||
"nixpkgs"
|
||||
],
|
||||
"pyproject-nix": [
|
||||
"hermes-agent",
|
||||
"pyproject-build-systems",
|
||||
"pyproject-nix"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770770348,
|
||||
"narHash": "sha256-A2GzkmzdYvdgmMEu5yxW+xhossP+txrYb7RuzRaqhlg=",
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "uv2nix",
|
||||
"rev": "5d1b2cb4fe3158043fbafbbe2e46238abbc954b0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "uv2nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"uv2nix_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hermes-agent",
|
||||
"nixpkgs"
|
||||
],
|
||||
"pyproject-nix": "pyproject-nix_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773039484,
|
||||
"narHash": "sha256-+boo33KYkJDw9KItpeEXXv8+65f7hHv/earxpcyzQ0I=",
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
agent-lib = {
|
||||
# url = "path:/home/m3tam3re/p/NIX/agent-lib";
|
||||
url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib";
|
||||
url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib-legacy";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
./packages.nix
|
||||
./television.nix
|
||||
./zellij.nix
|
||||
./zellij-ps.nix
|
||||
./zoxide.nix
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
# Zellij-ps — project-aware Zellij session manager from m3ta-nixpkgs.
|
||||
# Delegates to `cli.zellij-ps` — the home-manager module namespace provided by
|
||||
# m3ta-nixpkgs. Requires m3ta-nixpkgs overlays to be applied to pkgs
|
||||
# (via home-manager.useGlobalPkgs = true in NixOS, or overlays in standalone).
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.base.cliTools.zellijPs;
|
||||
in {
|
||||
options.base.cliTools.zellijPs = {
|
||||
# Enabled by default — base modules are always-on.
|
||||
enable = (mkEnableOption "enable zellij-ps project session manager") // {default = true;};
|
||||
|
||||
projectFolders = mkOption {
|
||||
type = types.listOf types.path;
|
||||
description = "Project root folders scanned by zellij-ps.";
|
||||
default = ["${config.home.homeDirectory}/p"];
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
cli.zellij-ps = {
|
||||
enable = true;
|
||||
projectFolders = cfg.projectFolders;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -6,95 +6,148 @@
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.desktop.wm.hyprland;
|
||||
lua = lib.generators.mkLuaInline;
|
||||
luaString = builtins.toJSON;
|
||||
|
||||
mkEnvVar = name: value: {
|
||||
_args = [
|
||||
name
|
||||
value
|
||||
];
|
||||
};
|
||||
|
||||
modKey = key: lua ''mainMod .. " + ${key}"'';
|
||||
mkDispatcher = expression: lua expression;
|
||||
execCmd = command: "hl.dsp.exec_cmd(${luaString command})";
|
||||
execExpr = expression: "hl.dsp.exec_cmd(${expression})";
|
||||
|
||||
mkBinding = keys: dispatcher: {
|
||||
_args = [
|
||||
keys
|
||||
(mkDispatcher dispatcher)
|
||||
];
|
||||
};
|
||||
mkBindingWithOptions = keys: dispatcher: options: {
|
||||
_args = [
|
||||
keys
|
||||
(mkDispatcher dispatcher)
|
||||
options
|
||||
];
|
||||
};
|
||||
|
||||
startupCommand = command: {
|
||||
_args = [
|
||||
"hyprland.start"
|
||||
(lua ''
|
||||
function()
|
||||
hl.exec_cmd(${luaString command})
|
||||
end
|
||||
'')
|
||||
];
|
||||
};
|
||||
|
||||
focusWorkspace = workspace: "hl.dsp.focus({ workspace = ${luaString workspace} })";
|
||||
moveToWorkspace = workspace: "hl.dsp.window.move({ workspace = ${luaString workspace} })";
|
||||
in {
|
||||
options.desktop.wm.hyprland.enable = mkEnableOption "Hyprland window manager";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
wayland.windowManager.hyprland = {
|
||||
configType = "hyprlang";
|
||||
configType = "lua";
|
||||
extraLuaFiles."00-dms" = {
|
||||
autoLoad = true;
|
||||
content = ''
|
||||
-- DMS setup/runtime owns these modules. Load only the Lua equivalents
|
||||
-- of the pre-migration active sources, before local Home Manager
|
||||
-- settings, preserving the old source-first order without enabling new
|
||||
-- DMS default binds or rules.
|
||||
--
|
||||
-- Keep fresh Home Manager generations usable before DMS has written
|
||||
-- ~/.config/hypr/dms/*.lua.
|
||||
local function require_if_present(module)
|
||||
if package.searchpath(module, package.path) ~= nil then
|
||||
require(module)
|
||||
end
|
||||
end
|
||||
|
||||
require_if_present("dms.colors")
|
||||
require_if_present("dms.layout")
|
||||
require_if_present("dms.outputs")
|
||||
'';
|
||||
};
|
||||
settings = {
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
mainMod = {
|
||||
_var = "SUPER";
|
||||
};
|
||||
source = [
|
||||
"~/.config/hypr/dms/colors.conf"
|
||||
"~/.config/hypr/dms/layout.conf"
|
||||
"~/.config/hypr/dms/outputs.conf"
|
||||
];
|
||||
exec-once = [
|
||||
"vibetyper"
|
||||
];
|
||||
|
||||
env = [
|
||||
"XCURSOR_SIZE,32"
|
||||
"HYPRCURSOR_THEME,Bibata-Modern-Ice"
|
||||
"WLR_NO_HARDWARE_CURSORS,1"
|
||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||
"XDG_SESSION_TYPE,wayland"
|
||||
"XDG_SESSION_DESKTOP,Hyprland"
|
||||
"XKB_DEFAULT_LAYOUT,de"
|
||||
"NIXOS_OZONE_WL,1"
|
||||
"QT_QPA_PLATFORM,wayland;xcb"
|
||||
"QT_QPA_PLATFORMTHEME,gtk3"
|
||||
"QT_QPA_PLATFORMTHEME_QT6,gtk3"
|
||||
];
|
||||
|
||||
input = {
|
||||
kb_layout = "us";
|
||||
kb_variant = "";
|
||||
kb_model = "";
|
||||
kb_rules = "";
|
||||
kb_options = "ctrl:nocaps";
|
||||
follow_mouse = 1;
|
||||
terminal = {
|
||||
_var = "ghostty";
|
||||
};
|
||||
|
||||
general = {
|
||||
gaps_in = 5;
|
||||
gaps_out = 5;
|
||||
border_size = 1;
|
||||
layout = "dwindle";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 60;
|
||||
render_power = 3;
|
||||
# color = "rgba(${config.colorScheme.palette.base00}66)";
|
||||
offset = "1 2";
|
||||
scale = 0.97;
|
||||
config = {
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
};
|
||||
rounding = 8;
|
||||
blur = {
|
||||
input = {
|
||||
kb_layout = "us";
|
||||
kb_variant = "";
|
||||
kb_model = "";
|
||||
kb_rules = "";
|
||||
kb_options = "ctrl:nocaps";
|
||||
follow_mouse = 1;
|
||||
};
|
||||
general = {
|
||||
gaps_in = 5;
|
||||
gaps_out = 5;
|
||||
border_size = 1;
|
||||
layout = "dwindle";
|
||||
};
|
||||
decoration = {
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 60;
|
||||
render_power = 3;
|
||||
# color = "rgba(${config.colorScheme.palette.base00}66)";
|
||||
offset = "1 2";
|
||||
scale = 0.97;
|
||||
};
|
||||
rounding = 8;
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 3;
|
||||
};
|
||||
active_opacity = 0.9;
|
||||
inactive_opacity = 0.5;
|
||||
};
|
||||
animations = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 3;
|
||||
};
|
||||
dwindle = {
|
||||
# pseudotile = true; # TODO
|
||||
preserve_split = true;
|
||||
};
|
||||
master = {
|
||||
new_status = "master";
|
||||
};
|
||||
active_opacity = 0.9;
|
||||
inactive_opacity = 0.5;
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = true;
|
||||
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
|
||||
animation = [
|
||||
"windows, 1, 7, myBezier"
|
||||
"windowsOut, 1, 7, default, popin 80%"
|
||||
"border, 1, 10, default"
|
||||
"borderangle, 1, 8, default"
|
||||
"fade, 1, 7, default"
|
||||
"workspaces, 1, 6, default"
|
||||
];
|
||||
};
|
||||
on = [
|
||||
(startupCommand "vibetyper")
|
||||
];
|
||||
|
||||
dwindle = {
|
||||
# pseudotile = true; # TODO
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
master = {
|
||||
new_status = "master";
|
||||
};
|
||||
"env" = [
|
||||
(mkEnvVar "XCURSOR_SIZE" "32")
|
||||
(mkEnvVar "HYPRCURSOR_THEME" "Bibata-Modern-Ice")
|
||||
(mkEnvVar "WLR_NO_HARDWARE_CURSORS" "1")
|
||||
(mkEnvVar "XDG_CURRENT_DESKTOP" "Hyprland")
|
||||
(mkEnvVar "XDG_SESSION_TYPE" "wayland")
|
||||
(mkEnvVar "XDG_SESSION_DESKTOP" "Hyprland")
|
||||
(mkEnvVar "XKB_DEFAULT_LAYOUT" "de")
|
||||
(mkEnvVar "NIXOS_OZONE_WL" "1")
|
||||
(mkEnvVar "QT_QPA_PLATFORM" "wayland;xcb")
|
||||
(mkEnvVar "QT_QPA_PLATFORMTHEME" "gtk3")
|
||||
(mkEnvVar "QT_QPA_PLATFORMTHEME_QT6" "gtk3")
|
||||
];
|
||||
|
||||
device = [
|
||||
# Alle normalen Keyboards explizit auf de setzen:
|
||||
@@ -141,114 +194,298 @@ in {
|
||||
}
|
||||
];
|
||||
|
||||
windowrule = [
|
||||
"match:class file_progress, float on"
|
||||
"match:class confirm, float on"
|
||||
"match:class dialog, float on"
|
||||
"match:class download, float on"
|
||||
"match:class notification, float on"
|
||||
"match:class error, float on"
|
||||
"match:class splash, float on"
|
||||
"match:class confirmreset, float on"
|
||||
"match:title Open File, float on"
|
||||
"match:title branchdialog, float on"
|
||||
"match:class pavucontrol-qt, float on"
|
||||
"match:class pavucontrol, float on"
|
||||
"match:class class:^(espanso)$, float on"
|
||||
"match:class wlogout, fullscreen on"
|
||||
"match:title wlogout, float on"
|
||||
"match:title wlogout, fullscreen on"
|
||||
"match:class mpv, float on"
|
||||
"match:class mpv, idle_inhibit focus"
|
||||
"match:class mpv, opacity 1.0 override"
|
||||
"match:title ^(Media viewer)$, float on"
|
||||
"match:title ^(Volume Control)$, float on"
|
||||
"match:title ^(Picture-in-Picture)$, float on"
|
||||
"match:title ^(floating-pomodoro)$, float on"
|
||||
"match:title ^(floating-pomodoro)$, size 250 50"
|
||||
"match:title ^(floating-pomodoro)$, move 12 (monitor_h-150)"
|
||||
"match:title ^(floating-pomodoro)$, pin on"
|
||||
"match:initial_title .*streamlabs.com.*, float on"
|
||||
"match:initial_title .*streamlabs.com.*, pin on"
|
||||
"match:initial_title .*streamlabs.com.*, size 800 400"
|
||||
"match:initial_title .*alert-box.*, move 100%-820 102"
|
||||
"match:initial_title .*chat-box.*, move 100%-820 512"
|
||||
"match:initial_title .*streamlabs.com.*, opacity 0.5 override"
|
||||
"match:initial_title .*streamlabs.com.*, idle_inhibit focus"
|
||||
"match:initial_title .*streamlabs.com.*, no_anim on"
|
||||
"match:initial_title .*streamlabs.com.*, decorate off"
|
||||
"match:initial_title .*streamlabs.com.*, no_shadow on"
|
||||
"match:initial_title .*streamlabs.com.*, no_blur on"
|
||||
"match:class ^vibe-typer$, match:title ^Recording Indicator$, no_blur on"
|
||||
"match:class ^vibe-typer$, match:title ^Recording Indicator$, no_shadow on"
|
||||
"match:class ^vibe-typer$, match:title ^Recording Indicator$, no_anim on"
|
||||
"match:class ^vibe-typer$, match:title ^Recording Indicator$, border_size 0"
|
||||
"match:class ^vibe-typer$, match:title ^Recording Indicator$, no_focus on"
|
||||
"border_color rgb(ffffff), match:xwayland 1"
|
||||
curve = {
|
||||
_args = [
|
||||
"myBezier"
|
||||
(lua ''{ type = "bezier", points = { { 0.05, 0.9 }, { 0.1, 1.05 } } }'')
|
||||
];
|
||||
};
|
||||
|
||||
animation = [
|
||||
{
|
||||
leaf = "windows";
|
||||
enabled = true;
|
||||
speed = 7;
|
||||
bezier = "myBezier";
|
||||
}
|
||||
{
|
||||
leaf = "windowsOut";
|
||||
enabled = true;
|
||||
speed = 7;
|
||||
bezier = "default";
|
||||
style = "popin 80%";
|
||||
}
|
||||
{
|
||||
leaf = "border";
|
||||
enabled = true;
|
||||
speed = 10;
|
||||
bezier = "default";
|
||||
}
|
||||
{
|
||||
leaf = "borderangle";
|
||||
enabled = true;
|
||||
speed = 8;
|
||||
bezier = "default";
|
||||
}
|
||||
{
|
||||
leaf = "fade";
|
||||
enabled = true;
|
||||
speed = 7;
|
||||
bezier = "default";
|
||||
}
|
||||
{
|
||||
leaf = "workspaces";
|
||||
enabled = true;
|
||||
speed = 6;
|
||||
bezier = "default";
|
||||
}
|
||||
];
|
||||
|
||||
"$mainMod" = "SUPER";
|
||||
"$terminal" = "ghostty";
|
||||
|
||||
bind = [
|
||||
"$mainMod, return, exec, $terminal nu -c zellij-ps"
|
||||
"$mainMod, t, exec, $terminal -e nu -c 'nitch; exec nu'"
|
||||
"$mainMod SHIFT, t, exec, launch-timer"
|
||||
"$mainMod, n, exec, $terminal -e nvim"
|
||||
"$mainMod, z, exec, uwsm app -- zeditor"
|
||||
"$mainMod, o, exec, hyprctl dispatch setprop activewindow opaque toggle"
|
||||
"$mainMod, r, exec, hyprctl dispatch focuswindow \"initialtitle:.*alert-box.*\" && hyprctl dispatch moveactive exact 4300 102 && hyprctl dispatch focuswindow \"initialtitle:.*chat-box.*\" && hyprctl dispatch moveactive exact 4300 512"
|
||||
"$mainMod, b, exec, uwsm app -- thunar"
|
||||
"$mainMod SHIFT, B, exec, uwsm app -- vivaldi"
|
||||
"$mainMod, Escape, exec, uwsm app -- dms ipc call powermenu toggle"
|
||||
# "$mainMod, Space, togglefloating"
|
||||
"$mainMod, q, killactive"
|
||||
"$mainMod, M, exit"
|
||||
"$mainMod, F, fullscreen"
|
||||
"$mainMod SHIFT, V, togglefloating"
|
||||
"$mainMod, D, exec, uwsm app -- dms ipc call spotlight toggle"
|
||||
"$mainMod, V, exec, uwsm app -- dms ipc call clipboard toggle"
|
||||
"$mainMod, C, exec, bash -c 'FILE=/tmp/screenshot_$(date +%s).png; grim -g \"$(slurp)\" \"$FILE\" && ksnip \"$FILE\"'"
|
||||
"$mainMod SHIFT, S, exec, uwsm app -- rofi -show emoji"
|
||||
"$mainMod, P, exec, uwsm app -- rofi-pass"
|
||||
"$mainMod SHIFT, P, pseudo"
|
||||
"$mainMod, R, exec, stt-ptt start"
|
||||
"$mainMod, S, exec, stt-ptt start"
|
||||
# "$mainMod, J, togglesplit" # TODO
|
||||
"$mainMod, h, movefocus, l"
|
||||
"$mainMod, l, movefocus, r"
|
||||
"$mainMod, k, movefocus, u"
|
||||
"$mainMod, j, movefocus, d"
|
||||
"$mainMod, 1, workspace, 1"
|
||||
"$mainMod, 2, workspace, 2"
|
||||
"$mainMod, 3, workspace, 3"
|
||||
"$mainMod, 4, workspace, 4"
|
||||
"$mainMod, 5, workspace, 5"
|
||||
"$mainMod, 6, workspace, 6"
|
||||
"$mainMod, 7, workspace, 7"
|
||||
"$mainMod, 8, workspace, 8"
|
||||
"$mainMod, 9, workspace, 9"
|
||||
"$mainMod, 0, workspace, 10"
|
||||
"$mainMod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mainMod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mainMod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mainMod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mainMod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mainMod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mainMod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mainMod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mainMod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mainMod SHIFT, 0, movetoworkspace, 10"
|
||||
"$mainMod, mouse_down, workspace, e+1"
|
||||
"$mainMod, mouse_up, workspace, e-1"
|
||||
window_rule = [
|
||||
{
|
||||
match.class = "file_progress";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "confirm";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "dialog";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "download";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "notification";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "error";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "splash";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "confirmreset";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "Open File";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "branchdialog";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "pavucontrol-qt";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "pavucontrol";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "class:^(espanso)$";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "wlogout";
|
||||
fullscreen = true;
|
||||
}
|
||||
{
|
||||
match.title = "wlogout";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "wlogout";
|
||||
fullscreen = true;
|
||||
}
|
||||
{
|
||||
match.class = "mpv";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.class = "mpv";
|
||||
idle_inhibit = "focus";
|
||||
}
|
||||
{
|
||||
match.class = "mpv";
|
||||
opacity = "1.0 override";
|
||||
}
|
||||
{
|
||||
match.title = "^(Media viewer)$";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "^(Volume Control)$";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "^(Picture-in-Picture)$";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "^(floating-pomodoro)$";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.title = "^(floating-pomodoro)$";
|
||||
size = "250 50";
|
||||
}
|
||||
{
|
||||
match.title = "^(floating-pomodoro)$";
|
||||
move = "12 (monitor_h-150)";
|
||||
}
|
||||
{
|
||||
match.title = "^(floating-pomodoro)$";
|
||||
pin = true;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
float = true;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
pin = true;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
size = "800 400";
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*alert-box.*";
|
||||
move = "100%-820 102";
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*chat-box.*";
|
||||
move = "100%-820 512";
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
opacity = "0.5 override";
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
idle_inhibit = "focus";
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
no_anim = true;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
decorate = false;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
no_shadow = true;
|
||||
}
|
||||
{
|
||||
match.initial_title = ".*streamlabs.com.*";
|
||||
no_blur = true;
|
||||
}
|
||||
{
|
||||
match = {
|
||||
class = "^vibe-typer$";
|
||||
title = "^Recording Indicator$";
|
||||
};
|
||||
no_blur = true;
|
||||
}
|
||||
{
|
||||
match = {
|
||||
class = "^vibe-typer$";
|
||||
title = "^Recording Indicator$";
|
||||
};
|
||||
no_shadow = true;
|
||||
}
|
||||
{
|
||||
match = {
|
||||
class = "^vibe-typer$";
|
||||
title = "^Recording Indicator$";
|
||||
};
|
||||
no_anim = true;
|
||||
}
|
||||
{
|
||||
match = {
|
||||
class = "^vibe-typer$";
|
||||
title = "^Recording Indicator$";
|
||||
};
|
||||
border_size = 0;
|
||||
}
|
||||
{
|
||||
match = {
|
||||
class = "^vibe-typer$";
|
||||
title = "^Recording Indicator$";
|
||||
};
|
||||
no_focus = true;
|
||||
}
|
||||
{
|
||||
match.xwayland = true;
|
||||
border_color = "rgb(ffffff)";
|
||||
}
|
||||
];
|
||||
|
||||
bindr = [
|
||||
];
|
||||
|
||||
bindm = [
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
"bind" = [
|
||||
# mainMod + return intentionally remains disabled from the previous config.
|
||||
(mkBinding (modKey "t") (execExpr ''terminal .. " -e nu -c 'nitch; exec nu'"''))
|
||||
(mkBinding (modKey "SHIFT + t") (execCmd "launch-timer"))
|
||||
(mkBinding (modKey "n") (execExpr ''terminal .. " -e nvim"''))
|
||||
(mkBinding (modKey "z") (execCmd "uwsm app -- zeditor"))
|
||||
(mkBinding (modKey "o") ''hl.dsp.window.set_prop({ prop = "opaque", value = "toggle" })'')
|
||||
(mkBinding (modKey "r") (
|
||||
execCmd ''hyprctl dispatch focuswindow "initialtitle:.*alert-box.*" && hyprctl dispatch moveactive exact 4300 102 && hyprctl dispatch focuswindow "initialtitle:.*chat-box.*" && hyprctl dispatch moveactive exact 4300 512''
|
||||
))
|
||||
(mkBinding (modKey "b") (execCmd "uwsm app -- thunar"))
|
||||
(mkBinding (modKey "SHIFT + B") (execCmd "uwsm app -- vivaldi"))
|
||||
(mkBinding (modKey "Escape") (execCmd "uwsm app -- dms ipc call powermenu toggle"))
|
||||
(mkBinding (modKey "q") "hl.dsp.window.close()")
|
||||
(mkBinding (modKey "M") "hl.dsp.exit()")
|
||||
(mkBinding (modKey "F") "hl.dsp.window.fullscreen({})")
|
||||
(mkBinding (modKey "SHIFT + V") ''hl.dsp.window.float({ action = "toggle" })'')
|
||||
(mkBinding (modKey "D") (execCmd "uwsm app -- dms ipc call spotlight toggle"))
|
||||
(mkBinding (modKey "V") (execCmd "uwsm app -- dms ipc call clipboard toggle"))
|
||||
(mkBinding (modKey "C") (
|
||||
execCmd "bash -c 'FILE=/tmp/screenshot_$(date +%s).png; grim -g \"$(slurp)\" \"$FILE\" && ksnip \"$FILE\"'"
|
||||
))
|
||||
(mkBinding (modKey "SHIFT + S") (execCmd "uwsm app -- rofi -show emoji"))
|
||||
(mkBinding (modKey "P") (execCmd "uwsm app -- rofi-pass"))
|
||||
(mkBinding (modKey "SHIFT + P") "hl.dsp.window.pseudo({})")
|
||||
(mkBinding (modKey "R") (execCmd "stt-ptt start"))
|
||||
(mkBinding (modKey "S") (execCmd "stt-ptt start"))
|
||||
(mkBinding (modKey "h") ''hl.dsp.focus({ direction = "l" })'')
|
||||
(mkBinding (modKey "l") ''hl.dsp.focus({ direction = "r" })'')
|
||||
(mkBinding (modKey "k") ''hl.dsp.focus({ direction = "u" })'')
|
||||
(mkBinding (modKey "j") ''hl.dsp.focus({ direction = "d" })'')
|
||||
(mkBinding (modKey "1") (focusWorkspace "1"))
|
||||
(mkBinding (modKey "2") (focusWorkspace "2"))
|
||||
(mkBinding (modKey "3") (focusWorkspace "3"))
|
||||
(mkBinding (modKey "4") (focusWorkspace "4"))
|
||||
(mkBinding (modKey "5") (focusWorkspace "5"))
|
||||
(mkBinding (modKey "6") (focusWorkspace "6"))
|
||||
(mkBinding (modKey "7") (focusWorkspace "7"))
|
||||
(mkBinding (modKey "8") (focusWorkspace "8"))
|
||||
(mkBinding (modKey "9") (focusWorkspace "9"))
|
||||
(mkBinding (modKey "0") (focusWorkspace "10"))
|
||||
(mkBinding (modKey "SHIFT + 1") (moveToWorkspace "1"))
|
||||
(mkBinding (modKey "SHIFT + 2") (moveToWorkspace "2"))
|
||||
(mkBinding (modKey "SHIFT + 3") (moveToWorkspace "3"))
|
||||
(mkBinding (modKey "SHIFT + 4") (moveToWorkspace "4"))
|
||||
(mkBinding (modKey "SHIFT + 5") (moveToWorkspace "5"))
|
||||
(mkBinding (modKey "SHIFT + 6") (moveToWorkspace "6"))
|
||||
(mkBinding (modKey "SHIFT + 7") (moveToWorkspace "7"))
|
||||
(mkBinding (modKey "SHIFT + 8") (moveToWorkspace "8"))
|
||||
(mkBinding (modKey "SHIFT + 9") (moveToWorkspace "9"))
|
||||
(mkBinding (modKey "SHIFT + 0") (moveToWorkspace "10"))
|
||||
(mkBinding (modKey "mouse_down") (focusWorkspace "e+1"))
|
||||
(mkBinding (modKey "mouse_up") (focusWorkspace "e-1"))
|
||||
(mkBindingWithOptions (modKey "mouse:272") "hl.dsp.window.drag()" {mouse = true;})
|
||||
(mkBindingWithOptions (modKey "mouse:273") "hl.dsp.window.resize()" {mouse = true;})
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -26,6 +26,9 @@
|
||||
mattpocock.skills = {
|
||||
all = true;
|
||||
};
|
||||
okf.skills = {
|
||||
all = true;
|
||||
};
|
||||
superpowers.skills = {
|
||||
all = true;
|
||||
};
|
||||
|
||||
@@ -29,52 +29,52 @@
|
||||
programs.mcp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
ContextMode = {
|
||||
command = "bash";
|
||||
args = ["-c" "exec bunx context-mode@latest"];
|
||||
};
|
||||
DeepWiki = {
|
||||
url = "https://mcp.deepwiki.com/mcp";
|
||||
};
|
||||
Ref = {
|
||||
command = "bash";
|
||||
args = ["-c" "REF_API_KEY=$(cat /run/agenix/ref-key) exec bunx ref-tools-mcp@latest"];
|
||||
};
|
||||
Exa = {
|
||||
command = "bash";
|
||||
args = ["-c" "EXA_API_KEY=$(cat /run/agenix/exa-key) exec bunx exa-mcp-server@latest tools=web_search_exa"];
|
||||
};
|
||||
Fireflies = {
|
||||
url = "https://api.fireflies.ai/mcp";
|
||||
};
|
||||
Outline = {
|
||||
url = "https://wiki.az-gruppe.com/mcp";
|
||||
};
|
||||
ContextMode = {
|
||||
command = "bash";
|
||||
args = ["-c" "exec bunx context-mode@latest"];
|
||||
};
|
||||
Honcho = {
|
||||
command = "bash";
|
||||
args = [
|
||||
"-c"
|
||||
''exec bunx mcp-remote@latest https://mcp.honcho.dev --header "Authorization:Bearer $(cat /run/agenix/honcho-key)" --header "X-Honcho-User-Name:m3tam3re"''
|
||||
];
|
||||
};
|
||||
Playwright = {
|
||||
command = "bash";
|
||||
args = ["-c" "exec bunx @playwright/mcp@latest"];
|
||||
};
|
||||
Ref = {
|
||||
command = "bash";
|
||||
args = ["-c" "REF_API_KEY=$(cat /run/agenix/ref-key) exec bunx ref-tools-mcp@latest"];
|
||||
};
|
||||
Teams = {
|
||||
command = "bunx";
|
||||
args = ["-y" "@floriscornel/teams-mcp@latest"];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
agenix-cli
|
||||
agent-browser
|
||||
aionui
|
||||
m3taHomeInputs.agent-lib.packages.${pkgs.stdenv.hostPlatform.system}.agent-lib-cli
|
||||
beads
|
||||
crunch
|
||||
docker-sbx
|
||||
herdr
|
||||
pi-coding-agent
|
||||
(qmd.override {
|
||||
vulkanSupport = videoDrivers == ["amdgpu"];
|
||||
cudaSupport = videoDrivers == ["nvidia"];
|
||||
})
|
||||
# opencode-desktop
|
||||
opencode-desktop
|
||||
openshell
|
||||
openspec
|
||||
openwork
|
||||
|
||||
Reference in New Issue
Block a user