Dynamic Workflow Mode
affaan-m/ECC
Design task-local harnesses, eval gates, and reusable skill extraction for Claude dynamic workflow mode and other adaptive agent harnesses.
RISC-V privileged architecture skill for M/S/U modes and traps.
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privileged --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/platform/riscv-privileged .claude/skills/riscv-privileged && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .claude/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privilegedType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privileged --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/platform/riscv-privileged .agents/skills/riscv-privileged && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .agents/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privileged --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/platform/riscv-privileged .cursor/skills/riscv-privileged && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .cursor/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mohitmishra786/low-level-dev-skills.git --path skills/platform/riscv-privileged--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privileged --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/platform/riscv-privileged .gemini/skills/riscv-privileged && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .gemini/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privilegedInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/platform/riscv-privileged .github/skills/riscv-privileged && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .github/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mohitmishra786/low-level-dev-skills riscv-privileged --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mohitmishra786/low-level-dev-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/platform/riscv-privileged .opencode/skills/riscv-privileged && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "riscv-privileged" agent skill from https://github.com/mohitmishra786/low-level-dev-skills/tree/main/skills/platform/riscv-privileged into .opencode/skills/riscv-privileged/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "riscv-privileged", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
riscv-privilegedRISC-V privileged architecture skill for M/S/U modes and traps.
Riscv Privileged is an agent skill from mohitmishra786/low-level-dev-skills. RISC-V privileged architecture skill for M/S/U modes and traps. Use when handling CSRs, trap handlers, PLIC/CLINT interrupts, OpenSBI integration, page tables Sv39/Sv48, or QEMU virt testing. Activates on queries about RISC-V privileged, mstatus, mtvec, satp, OpenSBI, PLIC, or Sv39.
Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: A curated suite of AI agent skills for systems and low-level programming with C/C++, Rust, and Zig toolchains, covering compilers, debuggers, profilers, build systems…. The licence is MIT.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bdc5847. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitmakeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Riscv Privileged loads about 1.6k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 290 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mohitmishra786/low-level-dev-skills at commit bdc5847, republished under its MIT licence (© mohitmishra786). 290 words, ~1,648 tokens.
.claude/skills/riscv-privileged/SKILL.md (or your agent's skills folder).Guide agents through the RISC-V privileged specification: M/S/U privilege modes, CSR registers, trap handling, PLIC and CLINT interrupt controllers, OpenSBI firmware integration, Sv39/Sv48 page tables, and QEMU virt machine testing.
RISC-V privilege stack
├── M-mode (Machine) — firmware, OpenSBI, most privileged
├── S-mode (Supervisor) — OS kernel
└── U-mode (User) — applications
Embedded (no S-mode): M + U only| CSR | Mode | Purpose |
|---|---|---|
mstatus / sstatus | M/S | Interrupt enable, privilege state |
mtvec / stvec | M/S | Trap vector base address |
mepc / sepc | M/S | Exception PC |
mcause / scause | M/S | Trap cause code |
mtval / stval | M/S | Faulting address/instruction |
satp | S | Page table root (mode + PPN) |
mie / sie | M/S | Interrupt enable bits |
mip / sip | M/S | Interrupt pending bits |
// Read CSR (GCC extended asm)
static inline uint64_t read_csr_satp(void) {
uint64_t val;
asm volatile("csrr %0, satp" : "=r"(val));
return val;
}
// Write CSR
static inline void write_csr_stvec(void *handler) {
asm volatile("csrw stvec, %0" :: "r"(handler));
}Trap types
├── Synchronous exceptions — ecall, page fault, illegal insn
└── Asynchronous interrupts — timer, external, software// scause encoding (top bit: 1=interrupt, 0=exception)
void handle_trap(uint64_t scause, uint64_t sepc, uint64_t stval) {
if (scause & (1UL << 63)) {
// Interrupt
switch (scause & 0xff) {
case 5: // Supervisor timer interrupt
timer_interrupt();
break;
case 9: // Supervisor external interrupt
external_interrupt();
break;
}
} else {
// Exception
switch (scause) {
case 8: // ecall from U-mode
handle_syscall();
break;
case 12: // Instruction page fault
case 13: // Load page fault
case 15: // Store page fault
handle_page_fault(stval, scause);
break;
}
}
}# trapvec.S — direct mode (all traps to one handler)
.section .text.trap
.globl trap_entry
.align 4
trap_entry:
# Save registers to trap frame
csrrw sp, sscratch, sp # switch to kernel stack
# ... save caller-saved ...
csrr a0, scause
csrr a1, sepc
csrr a2, stval
call handle_trap
# ... restore ...
sretwrite_csr_stvec(trap_entry);
// vectored mode: mtvec[1:0] = 01, base aligned to 4×entriesQEMU virt interrupt map
├── CLINT — timer and software interrupts (per-hart)
│ ├── mtime / mtimecmp — machine timer
│ └── msip — machine software interrupt
└── PLIC — external device interrupts (UART, virtio, etc.)
├── priority, pending, enable per source
└── claim/complete per hart context// Timer via SBI (preferred in S-mode) or direct CLINT in M-mode
// PLIC claim
uint32_t irq = plic_claim(hart_id);
handle_device_irq(irq);
plic_complete(hart_id, irq);# Build OpenSBI with payload (your kernel)
git clone https://github.com/riscv-software-src/opensbi
cd opensbi
make PLATFORM=generic FW_PAYLOAD_PATH=../kernel.elf FW_PAYLOAD_OFFSET=0x80200000
# Output: build/platform/generic/firmware/fw_payload.elfSBI calls from S-mode via ecall:
struct sbiret sbi_set_timer(uint64_t stime) {
return sbi_ecall(0x54494D45, 0, stime, 0, 0, 0, 0, 0);
// Extension ID 0x54494D45 = TIME
}Common SBI extensions: Base, Timer, IPI, RFENCE, HSM.
Sv39: 39-bit virtual addresses, 3 levels
VPN[2] → L2 PTE → L1 PTE → L0 PTE → physical page
satp: MODE(4) | ASID(9) | PPN(44)
MODE = 8 for Sv39, 9 for Sv48// PTE flags
#define PTE_V (1L << 0) // Valid
#define PTE_R (1L << 1) // Read
#define PTE_W (1L << 2) // Write
#define PTE_X (1L << 3) // Execute
#define PTE_U (1L << 4) // User accessible
uint64_t *walk_create(uint64_t *root, uint64_t va, int alloc);
void map_page(uint64_t *root, uint64_t va, uint64_t pa, int perm);Sv48: 4 levels, 48-bit virtual addresses (QEMU virt default on RV64).
qemu-system-riscv64 \
-machine virt \
-cpu rv64 \
-m 128M \
-kernel kernel.elf \
-bios default \
-serial mon:stdio \
-display none \
-no-reboot
# With OpenSBI payload
qemu-system-riscv64 \
-machine virt -m 128M \
-kernel opensbi/build/.../fw_payload.elf \
-serial stdio -nographic# GDB debug
qemu-system-riscv64 -s -S ... # port 1234, wait
riscv64-unknown-elf-gdb kernel.elf
(gdb) target remote :1234git clone https://github.com/mit-pdos/xv6-riscv
make qemu
# Study: kernel/trap.c, kernel/vm.c, kernel/start.c, kernel/plic.c| Symptom | Cause | Fix |
|---|---|---|
| Trap loop on boot | stvec misaligned | Align to 4 bytes; check handler |
| Page fault on entry | satp enabled before mapping | Identity-map kernel first |
| Timer not firing | SBI vs CLINT mismatch | Use sbi_set_timer in S-mode |
| PLIC no interrupts | Enable bit not set | Set priority, enable, threshold |
| OpenSBI hang | Wrong payload offset | Match FW_PAYLOAD_OFFSET to link addr |
| Illegal instruction | Compressed insn not supported | Enable C extension in CPU config |
skills/low-level-programming/assembly-riscv — RV32/RV64 ISA and psABIskills/kernel/os-dev-scratch — OS dev concepts (x86 parallel)skills/virtualization/qemu-kvm — QEMU usage patternsskills/embedded/zephyr — Zephyr on RISC-Vskills/kernel/kernel-internals — Linux VM and scheduler analogiesskills/platform/arm-sve — other architecture platform skills© mohitmishra786, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/platform/riscv-privileged of mohitmishra786/low-level-dev-skills.
Open the folder on GitHubat commit bdc5847
Riscv Privileged next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Riscv Privileged this skillmohitmishra786/low-level-dev-skills | 252 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Dynamic Workflow Modeaffaan-m/ECC | 276k | 1 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Agent GitHub Modesruvnet/ruflo | 74k | 2 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Consent Modethedaviddias/Front-End-Checklist | 74k | — | ~425 | Automated safety check: Pass | MIT | |
| Studio Moderemotion-dev/remotion | 63k | — | ~313 | Automated safety check: Pass | Custom licence | |
| Visual Moderemotion-dev/remotion | 63k | — | ~477 | Automated safety check: Pass | Custom licence |
affaan-m/ECC
Design task-local harnesses, eval gates, and reusable skill extraction for Claude dynamic workflow mode and other adaptive agent harnesses.
ruvnet/ruflo
Agent skill for github-modes - invoke with $agent-github-modes
thedaviddias/Front-End-Checklist
A skill your agent uses when auditing slow page loads, heavy assets, or rendering delays related to Implement Google Consent Mode v2.
remotion-dev/remotion
Understand the capabilities and restrictions of each Remotion Studio mode.
remotion-dev/remotion
Guidance for working on Remotion Studio Visual Mode, sequence identity, node paths, symbolicated stacks, override IDs, and hot reload behavior.
sickn33/agentic-awesome-skills
Web and App implementation guide for Dark Mode Design. An agent skill from sickn33/agentic-awesome-skills.
mohitmishra786/low-level-dev-skills
Guides reading and writing AArch64 and ARM Thumb assembly: compiler output, inline asm, registers, the AAPCS calling convention and NEON or SVE basics.
mohitmishra786/low-level-dev-skills
Reference for RISC-V assembly on RV32 and RV64: register names and calling convention, extension naming, GCC and Clang inline asm, and QEMU with GDB debugging.
mohitmishra786/low-level-dev-skills
Explains x86-64 registers, the System V AMD64 calling convention, and how to read compiler-generated or inline assembly.
mohitmishra786/low-level-dev-skills
Guides your agent through Bazel for C/C++ projects: BUILD files, Bzlmod dependencies, toolchain registration, remote execution, dependency queries and sandbox debugging.
mohitmishra786/low-level-dev-skills
Binary hardening skill for security-hardened C/C++ builds. An agent skill from mohitmishra786/low-level-dev-skills.
mohitmishra786/low-level-dev-skills
GNU binutils skill for binary manipulation and analysis. An agent skill from mohitmishra786/low-level-dev-skills.
RISC-V privileged architecture skill for M/S/U modes and traps. Riscv Privileged is an agent skill from mohitmishra786/low-level-dev-skills. RISC-V privileged architecture skill for M/S/U modes and traps.
Riscv Privileged fits situations like: PLIC/CLINT interrupts; openSBI integration; page tables Sv39/Sv48; QEMU virt testing.
Run `npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a claude-code`. Or copy the skill folder (skills/platform/riscv-privileged in mohitmishra786/low-level-dev-skills) into .claude/skills/riscv-privileged in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a codex`. Or copy the skill folder (skills/platform/riscv-privileged in mohitmishra786/low-level-dev-skills) into .agents/skills/riscv-privileged in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mohitmishra786/low-level-dev-skills --skill riscv-privileged -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/riscv-privileged, .gemini/skills/riscv-privileged, .github/skills/riscv-privileged and .opencode/skills/riscv-privileged in your project.
Going by SKILL.md and its folder, Riscv Privileged needs the command-line tools its instructions call (git and make).
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Riscv Privileged is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Riscv Privileged: Dynamic Workflow Mode (affaan-m/ECC, 276k stars), Agent GitHub Modes (ruvnet/ruflo, 74k stars), Consent Mode (thedaviddias/Front-End-Checklist, 74k stars) and Studio Mode (remotion-dev/remotion, 63k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mohitmishra786 (a GitHub user) maintains it in mohitmishra786/low-level-dev-skills, which has 252 GitHub stars. The repository holds 138 skills in this directory. The repository was last updated on June 27, 2026.
Source: mohitmishra786/low-level-dev-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.