CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

mdelapenya/coding-skills

Coding-agent skills for pull-request work and orchestration: an adversarial multi-pass PR reviewer, PR description and title writing, answering review comments, CI failure triage and PR nursing, a DAG orchestrator that delegates to cheaper subagents, and file-channel coordination between agents. Supports GitHub and GitLab.

1.88x
Quality

95%

Does it follow best practices?

Impact

98%

1.88x

Average score across 10 eval scenarios

SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

claude-code.mdskills/the-mister/references/agents/

Claude Code

Named claude-code.md on purpose: claude.md resolves as CLAUDE.md on a case-insensitive filesystem and may be auto-loaded as project instructions.

Models

TiermodelDisplay name for trailers
HardopusClaude Opus 5
MediumsonnetClaude Sonnet 5
Easy, GithaikuClaude Haiku 4.5 (Git never signs)

Trailer address: <noreply@anthropic.com>. The mister runs as Fable; never pass fable to a subagent. Record the model alias and subagent_type you passed in the node's done line; the alias is sufficient, and no exact backend generation is claimed beyond this table.

Shipped agents

Six definitions in this skill's agents/ directory (skills/the-mister/agents/), which the plugin manifest lists under agents: coding-skills:the-mister, coding-skills:engineer, coding-skills:reviewer, coding-skills:mechanic, coding-skills:inspector, coding-skills:git-operator under the plugin, or the-mister, engineer, reviewer, mechanic, inspector, git-operator when symlinked into ~/.claude/agents/. Definitions load at session start.

AgentToolsEnforced by the tool listInstruction only
the-misterRead, Grep, Glob, Agent, Write, Edit, SendMessage, AskUserQuestion, EnterPlanMode, ExitPlanModeno shellwrites only plan/orders/messages/reports/metrics under its state directory
engineerRead, Grep, Glob, Edit, Write, Bashcannot spawnnever runs git; edits only owned files
reviewerRead, Grep, Globcannot spawn; no edit tools and no shell, so read-only and git-freereviews against the request only; reports counterexamples rather than fixing
mechanicRead, Grep, Glob, Edit, Write, Bashcannot spawnnever runs git; edits only owned files
inspectorRead, Grep, Glob, Bashcannot spawn; no edit toolsno source writes or Git through Bash; only allowed checks and explicitly permitted test outputs
git-operatorBash(git *), Bash(gh *), Bash(glab *), Readcannot spawn; no edit tools; non-git commands that write are denied (observed: touch, and > redirection on a git command)runs only the listed commands; never summarises output. Read-only non-git commands such as ls were observed to run, and git itself can write (--output, commit, switch)

The git-operator row is from a test, not the documentation: the subagent docs (https://code.claude.com/docs/en/sub-agents.md) define tools as a list of tool names and say nothing about Bash(<pattern>) entries there; they say a disallowedTools entry with a pattern removes the whole tool. On Claude Code 2.1.284, a project-scope agent with tools: Bash(git *), Read run under bypassPermissions ran git status and ls -la and was denied touch; in a second run it was denied git status --short > file and stopped there, so a non-git command chained after && is untested. Only project scope was tested; plugin scope is assumed to behave the same because tools is not among the fields plugin agents ignore. Under default mode the same agent still asked for approval for git status: the pattern narrows Bash, it grants nothing. Re-test after a Claude Code upgrade. Plugin agents ignore hooks, mcpServers, and permissionMode (same page), so a PreToolUse hook cannot tighten the plugin copy further.

the-mister is opt-in: add context: fork and agent: the-mister to the skill frontmatter. Plan-mode approval and AskUserQuestion must still reach the user from the fork; test it in your setup first. Without it, the skill runs in the user's main session, which has Bash. A mister in that session can run git or any other command, against Principle 1. Prefer the fork; without it, the shell is off-limits by instruction only. Without the shipped agents, engineers fall back to general-purpose, whose tools include Agent and every shell command: "never spawn" and "never run git" are then instructions too. Compare each such worker's "Changed files" with the next Git node's git status --porcelain.

A user's hard host prohibition is enforced only by a permissions.deny rule in Claude Code settings; the update-config skill writes one with the user's approval.

Dispatch

One Agent call per ready node, all ready nodes in one message:

Agent(subagent_type: "engineer", model: "sonnet",
      description: "N02 add Widget model",
      prompt: <orders/N02-widget-model.md above the cut line>,
      run_in_background: true)
Rolesubagent_typeWithout the shipped agents
Engineer (Hard, Medium)engineer, with model set by tiergeneral-purpose with model set by tier; the preamble is then the only fence against spawning
Reviewer (step 7)reviewer, with model set by tier (Hard by default; Medium only with the written reason)general-purpose with the same model; read-only is then only the preamble. Not Explore: its one-question persona is too narrow for a whole-change review
Mechanicmechanicgeneral-purpose with model: "haiku"; the preamble is then the only fence
Inspectorinspector, with model: "haiku"fresh general-purpose with model: "haiku"; canonical Inspector preamble, no inherited conversation; restrictions are instructions
Git operatorgit-operatorgeneral-purpose with model: "haiku"; the preamble is then the only fence. Never Explore: its read-only persona may refuse git switch or git push
ExplorerExplore(built in) read-only by construction; pass model explicitly

Paste the order, do not summarise it: the worker has no other context. With run_in_background: true the harness notifies you as each finishes; do not poll. SendMessage continues a worker for a one-line clarification (a new worker turn counts as another dispatch/attempt); a real order gap means revising the order and re-dispatching.

Never use isolation: "worktree" on Agent or the EnterWorktree tool: both run git outside a Git node, and disjoint ownership already makes per-agent worktrees unnecessary.

Reports and inspection

Persist returned reports verbatim with attempt-numbered paths and log dispatch/terminal metrics using the shared evidence lifecycle. The mister's no-shell agent can write reports and metrics within state; workers do not save their own reports. Resume reads those reports and events before reconciling.

Use a new Agent call for each inspector, with no resume and only the Inspector package from evidence.md. Do not send Changes or implementer reports. The shipped inspector defaults to Haiku and can run permitted verification through Bash; having no Edit/Write tools does not prevent shell writes, so source-write denial is an instruction. It cannot spawn. No plugin hook is claimed to enforce Git denial: plugin agents ignore hooks, and no engineer/inspector shell allowlist was verified.

LICENSE

README.md

tile.json