AcKeskin/contexture

My personal setup for working with AI; what I learned from existing plugins, plus a bunch of my own, built the way I like to work.

This repository also configures its own agents. See what contexture tells them →

2Stars on the repository
142Mods indexed here, across every type
yesterdayLast push, which is what freshness is scored on
MITLicence, which decides whether bodies are shown

android

01

AcKeskin/contexture

Cursor rule Cursor

Never hold a static or long-lived reference to an Activity, Fragment, View, or their Context. Use applicationContext for needs that outlive a single screen. A static Activity ref keeps the whole view hierarchy alive past onDestroy, leaking memory. (Android docs — Activity lifecycle).

not rated 2 yesterday A 0 tokens original MIT

bash

02

AcKeskin/contexture

Cursor rule Cursor

Quote every variable expansion: "$var", "${arr[@]}". Unquoted expansions word-split and glob-expand — the source of nearly every "works until a path has a space" bug. Use "$@" (not $, not unquoted $@) to forward arguments — it preserves each argument as a separate quoted word. $ joins them into one string. Use [[ ...…

not rated 2 yesterday A 0 tokens original MIT

codecs

03

AcKeskin/contexture

Cursor rule Cursor

Treat each hardware encode/decode session as an explicitly-owned scarce resource with a defined create→use→destroy lifetime; release it deterministically, never on GC/finalizer timing. Hardware codec engines (NVENC/NVDEC, VideoToolbox, MediaCodec) expose a small fixed number of concurrent sessions; a leaked session…

not rated 2 yesterday A 0 tokens original MIT

config-authoring

04

AcKeskin/contexture

Cursor rule Cursor

Why: the corpus already does this eight times over (leak scan, residue check, projection drift, byte and token budgets, symlink drift, stale spec pins, agent output contract) without ever having named it, so new contracts get written as prose by default and the pattern is rediscovered per-case. Naming it makes the…

not rated 2 yesterday C 0 tokens original MIT

core

05

AcKeskin/contexture

Cursor rule Cursor

Contexture working loop, stance and boundaries.

not rated 2 yesterday C 730 tokens original MIT

cpp

06

AcKeskin/contexture

Cursor rule Cursor

Use RAII lock guards (std::lockguard, std::scopedlock, std::uniquelock) — never bare mutex.lock() / unlock(). A manual unlock is skipped on every early return and every throw. (CP.20) Acquire multiple locks with std::scopedlock (or std::lock) in one statement — it orders acquisition to avoid deadlock. Never hand-order…

not rated 2 yesterday A 0 tokens original MIT

csharp

07

AcKeskin/contexture

Cursor rule Cursor

Async methods return Task / Task (or ValueTask for hot paths). Never async void except event handlers — an exception in async void cannot be caught and tears down the process. Name async methods with the Async suffix (LoadAsync). The suffix is the contract that the method is awaitable. Library code calls…

not rated 2 yesterday A 0 tokens original MIT

godot

08

AcKeskin/contexture

Cursor rule Cursor

Expose inspector-editable fields with [Export] on a C# property/field, the binding equivalent of GDScript's @export. Plain C# fields are invisible to the editor. (Godot docs — C# basics) Declare signals as [Signal] public delegate void NameEventHandler(...). The generated event is the typed, editor-visible signal…

not rated 2 yesterday A 0 tokens original MIT

linux

09

AcKeskin/contexture

Cursor rule Cursor

In a signal handler, call ONLY functions listed in the async-signal-safe set (man 7 signal-safety); malloc, printf, and most libc functions are NOT safe — they may hold internal locks that the signal interrupted, causing deadlock. (man 7 signal-safety, POSIX.1-2017 §2.4.3).

not rated 2 yesterday A 0 tokens original MIT

openxr

10

AcKeskin/contexture

Cursor rule Cursor

Call xrEnumerateInstanceExtensionProperties before constructing XrInstanceCreateInfo::enabledExtensionNames. Never pass extension names that have not been confirmed present; xrCreateInstance will return XRERROREXTENSIONNOTPRESENT and fail. (OpenXR: xrEnumerateInstanceExtensionProperties, XrInstanceCreateInfo…

not rated 2 yesterday A 0 tokens original MIT

python

11

AcKeskin/contexture

Cursor rule Cursor

Catch the most specific exception type. Never a bare except: — it swallows SystemExit and KeyboardInterrupt. Use except Exception: only at a top-level boundary, and re-raise or log. Keep the try body minimal — only the line that can raise. A fat try block catches failures you didn't mean to catch. Manage resources…

not rated 2 yesterday A 0 tokens original MIT

rendering

12

AcKeskin/contexture

Cursor rule Cursor

All lighting and shading calculations must be performed in linear light (scene-linear color space); sample sRGB textures through hardware linearization (GLSRGB8ALPHA8 / DXGIFORMATSRGB / MTLPixelFormatRGBA8UnormsRGB) so the hardware converts on read. Mixing gamma-encoded values with linear math produces physically…

not rated 2 yesterday A 0 tokens original MIT

rust

13

AcKeskin/contexture

Cursor rule Cursor

Why: dependability and debuggability are paid for in the type definition, not at the bug site. A panicking destructor or a Debug impl that returns "" are not noticed until production, by which point the cost of fixing is enormous.

not rated 2 yesterday A 0 tokens original MIT

sql

14

AcKeskin/contexture

Cursor rule Cursor

Reserved keywords in UPPERCASE (SELECT, FROM, WHERE, JOIN); identifiers in lowersnakecase. The case split makes structure scannable at a glance. Right-align root keywords to a "river" so clause bodies start at a common column. Keeps multi-clause queries readable as a block. One column per line in long SELECT lists…

not rated 2 yesterday A 0 tokens original MIT

typescript

15

AcKeskin/contexture

Cursor rule Cursor

Never leave a promise floating — await it, return it, or explicitly void it. An unawaited promise drops its rejection on the floor (unhandled rejection) and breaks ordering assumptions. Prefer async/await over .then() chains for sequential work — flatter, debuggable, and error handling is one try/catch instead of…

not rated 2 yesterday A 0 tokens original MIT

unity

16

AcKeskin/contexture

Cursor rule Cursor

Why: Unity's GameObject/component composition model fights inheritance. Working with the grain keeps prefabs reusable and testable.

not rated 2 yesterday A 0 tokens original MIT

universal

17

AcKeskin/contexture

Cursor rule Claude CodeCursor

Universal engineering rules. Read before writing or reviewing any code.

not rated 2 yesterday A 12 tokens original MIT

web

18

AcKeskin/contexture

Cursor rule Cursor

Why: async bugs dominate production incidents in web apps. Explicit patterns catch them at review time. Source: MDN AbortController; WHATWG HTML unhandledrejection.

not rated 2 yesterday A 0 tokens original MIT

webrtc

19

AcKeskin/contexture

Cursor rule Cursor

Choose ordered/reliable vs unreliable per use case deliberately. Set maxRetransmits or maxPacketLifeTime (never both) for partial reliability; leave both unset only when full reliability is actually required. State sync wants reliable; real-time telemetry wants unreliable. (W3C WebRTC — RTCDataChannel /…

not rated 2 yesterday A 0 tokens original MIT

At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: