DeepTutor CLI
HKUDS/DeepTutor
Teaches the agent to set up and run DeepTutor from the command line: chat and capabilities, knowledge bases, partners, memory, sessions, notebooks and the server or Web app.
Vet open issues for autonomous resolution and queue the qualifying ones with the autopilot-queued label — the start-of-day "fill the queue" half of the triage → run split.
$ npx skills add joshukraine/dotfiles --skill autopilot-triage -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install joshukraine/dotfiles autopilot-triage --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/joshukraine/dotfiles.git skills-src && mkdir -p .claude/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .claude/skills/autopilot-triage && 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 "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .claude/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triageType 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 joshukraine/dotfiles --skill autopilot-triage -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install joshukraine/dotfiles autopilot-triage --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joshukraine/dotfiles.git skills-src && mkdir -p .agents/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .agents/skills/autopilot-triage && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .agents/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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 joshukraine/dotfiles --skill autopilot-triage -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install joshukraine/dotfiles autopilot-triage --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joshukraine/dotfiles.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .cursor/skills/autopilot-triage && 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 "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .cursor/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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/joshukraine/dotfiles.git --path claude/.claude/skills/autopilot-triage--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 joshukraine/dotfiles --skill autopilot-triage -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install joshukraine/dotfiles autopilot-triage --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joshukraine/dotfiles.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .gemini/skills/autopilot-triage && 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 "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .gemini/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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 joshukraine/dotfiles autopilot-triageInstalls 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 joshukraine/dotfiles --skill autopilot-triage -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/joshukraine/dotfiles.git skills-src && mkdir -p .github/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .github/skills/autopilot-triage && 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 "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .github/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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 joshukraine/dotfiles --skill autopilot-triage -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install joshukraine/dotfiles autopilot-triage --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joshukraine/dotfiles.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/claude/.claude/skills/autopilot-triage .opencode/skills/autopilot-triage && 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 "autopilot-triage" agent skill from https://github.com/joshukraine/dotfiles/tree/master/claude/.claude/skills/autopilot-triage into .opencode/skills/autopilot-triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "autopilot-triage", 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.
autopilot-triageVet open issues for autonomous resolution and queue the qualifying ones with the autopilot-queued label — the start-of-day "fill the queue" half of the triage → run split.
Autopilot Triage is an agent skill from joshukraine/dotfiles. Vet open issues for autonomous resolution and queue the qualifying ones with the autopilot-queued label — the start-of-day "fill the queue" half of the triage → run split.
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Education. The repository describes itself as: :roundpushpin: My dotfiles for macOS using Neovim, Zsh, and Ghostty + Tmux. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit b59ad5b. 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:
ghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.
From 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.
Autopilot Triage loads about 2.1k tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 1,082 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 joshukraine/dotfiles at commit b59ad5b, republished under its MIT licence (© joshukraine). 1,082 words, ~2,098 tokens.
.claude/skills/autopilot-triage/SKILL.md (or your agent's skills folder).Vet a pool of open issues against the autonomy rubric and, after your confirmation, tag the ones that qualify with the autopilot-queued label. /autopilot-batch later reads that label and runs the batch. This is the vet half of the triage → run split; the two are decoupled on purpose — triage once (cheap, start-of-day), run the batch whenever and from wherever.
The autopilot-queued label is membership only: it means "vetted and pending," nothing more. Tier is decided at run time by your --merge opt-in, never encoded in it. The build model rides on a separate, pre-existing label (model: fable / model: opus / model: sonnet) that issue triage assigns — this skill reports that label, it does not assign one.
Run from the target application repository — you need the issues and the code, because vetting scope means looking at what a fix would actually touch. Triage is read-only except for the label writes it makes after your confirm.
[label-or-filter] — narrow the candidate pool, e.g. a phase label or chore / fix. Passed through to gh issue list --label.An issue qualifies for autopilot when all hold:
An issue is disqualified when it trips any of /autopilot's own escape-hatch triggers — the same guardrails, applied before the run instead of during it:
When a candidate is borderline, disqualify it — a false negative costs you one manual issue; a false positive burns an unattended run on something that should have stopped. State a one-line reason for every skip; those reasons are useful signal.
For each qualifying issue, also note — as a preview, not a commitment:
Build model — report the issue's model: label if it has one; that label is what /autopilot-batch will actually build with (see ~/.claude/docs/model-selection-strategy.md). If it has none, preview the rubric fallback the batch will use instead — Opus for data-model / security / ambiguous / cross-cutting; Sonnet for bounded pattern-work (i18n / views / config / a single test / CRUD / docs) — and mark it as a preview, not a fact. Either way this is so you can eyeball and adjust before the run. (A --merge opt-in overrides both at run time: merge issues are always Fable-built, because the merge go/no-go runs at the build model and the merge floor is Fable.)
Missing model: label in an adopted repo — flag it. Check adoption once per run:
gh label list --json name --jq '[.[].name | select(startswith("model: "))]'A non-empty result means the repo has adopted the convention, so a queued issue without a model: label is a triage gap — worth fixing, but never a reason to skip the issue. The batch treats it as Opus by convention via the rubric. Do not apply the label yourself: model tiering is assigned when the issue is triaged, and quietly stamping a tier here would launder a guess into the record. Point the gap at /model-triage --maintenance, which is the skill that owns that write.
Merge-tier candidate? — flag issues that look safe for --to merge (confined to config / locales / views / copy; no migration / route / dependency). These are suggestions you opt into with --merge at run time; the batch defaults everything to --to pr.
Before proposing anything, clean the existing queue so an interrupted prior run can't leave stale membership:
gh issue list --label autopilot-queued --state open --json number,title.
For each, check whether a PR already exists for it — a branch named for the issue:
gh pr list --state all --json number,headRefName,state \
--jq '.[] | select(.headRefName | test("gh-<n>-"))'If a PR exists (open or merged), the issue is in-flight or done, not pending — strip the label: gh issue edit <n> --remove-label autopilot-queued.
Report what was reconciled (or "queue clean — nothing to reconcile").
gh issue list --state open [--label <filter>] --json number,title,labels,body.autopilot-queued (already vetted) or already carrying a PR (from Step 1's check).Assess each candidate against the rubric — read the issue body and, where scope is unclear, the code a fix would touch. Assign a verdict (queue / skip), a one-line why, and for queue candidates the build model (from its model: label, or a rubric preview if unlabeled) + merge-tier flag.
Present the triage table — proposed queue and skips together, so the exclusions are visible:
Queue:
#851 Sonnet (label) pr localize checkout flash messages — complete spec, i18n pattern
#863 Sonnet (label) merge? copy tweak on the about page — config/copy only, no code paths
#847 Opus (label) pr recompute shipment weight rounding — bounded but touches money math
#855 Opus (no label!) pr backfill the shipment CSV export — no `model:` label, rubric preview
Skip:
#870 needs a data-model decision (new column not in the schema)
#872 spec ambiguous — two conflicting acceptance criteria
Model-label gaps (adopted repo): #855 — run `/model-triage --maintenance` to fill it.CONFIRM GATE: This is the human gate the lifecycle requires — the label is applied only after you confirm. Present the proposed queue and wait. You may trim, add, or adjust a model call. Nothing is labeled before you say go.
Only after confirmation:
Ensure the label exists (first run bootstraps it): gh label list and look for autopilot-queued; if absent, create it:
gh label create autopilot-queued \
--description "Vetted by /autopilot-triage; pending an /autopilot-batch run" \
--color 5319e7For each confirmed issue: gh issue edit <n> --add-label autopilot-queued.
Summarize: how many were queued (list + build model with its source + which are merge-tier candidates), how many reconciled/removed, how many skipped (with reasons), and any model: label gaps in an adopted repo. Then the handoff:
Queue ready — N issues. Run it from this repo with
/autopilot-batch. To authorize merge for the flagged candidates, add--merge <#,#>.
autopilot-queued encodes neither model nor tier. Tier is a run-time decision; the model comes from the issue's own model: label (or the batch's rubric fallback). Do not invent autopilot-specific tier labels, and do not apply a model: label here — report what triage assigned, and flag what it missed.© joshukraine, 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 claude/.claude/skills/autopilot-triage of joshukraine/dotfiles.
Open the folder on GitHubat commit b59ad5b
Autopilot Triage 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 |
|---|---|---|---|---|---|---|
| Autopilot Triage this skilljoshukraine/dotfiles | 429 | — | ~2.1k | Automated safety check: Pass | MIT | |
| DeepTutor CLIHKUDS/DeepTutor | 41k | — | ~2.8k | Automated safety check: Pass | Apache-2.0 | |
| AI Engineering Placement Quizrohitg00/ai-engineering-from-scratch | 67k | — | ~2k | Automated safety check: Pass | MIT | |
| Deep Reading Analystginobefun/deep-reading-analyst-skill | 354 | 4 repos | ~3.6k | Automated safety check: Pass | MIT | |
| OpenMAIC Setup and ExtensionTHU-MAIC/OpenMAIC | 40k | — | ~1.7k | Automated safety check: Notes | MIT | |
| Codebase to Coursezarazhangrui/codebase-to-course | 5.7k | — | ~4.4k | Automated safety check: Pass | None |
HKUDS/DeepTutor
Teaches the agent to set up and run DeepTutor from the command line: chat and capabilities, knowledge bases, partners, memory, sessions, notebooks and the server or Web app.
rohitg00/ai-engineering-from-scratch
Runs a 10-question quiz across five areas to place a learner in the AI Engineering from Scratch curriculum, so they skip what they already know.
ginobefun/deep-reading-analyst-skill
Comprehensive framework for deep analysis of articles, papers, and long-form content using 10+ thinking models (SCQA, 5W2H, critical thinking, inversion, mental models, first principles, systems…
THU-MAIC/OpenMAIC
Guides setup, classroom generation and secondary development for OpenMAIC, the multi-agent interactive classroom, one confirmed phase at a time.
zarazhangrui/codebase-to-course
Turns a codebase into an interactive single-page HTML course for non-technical learners, with scroll modules, animated diagrams, quizzes and plain-English code translations.
rohitg00/ai-engineering-from-scratch
Tutors a learner through one stage of a hands-on AI engineering project per session: lesson, prediction, code, grader run and reflection, with hints but never full solutions.
joshukraine/dotfiles
Manage Todoist tasks, projects, labels, filters, sections, comments, reminders, and workspaces via the td CLI.
joshukraine/dotfiles
Quick 2-minute status update on current phase, completed work, blockers, and health check.
joshukraine/dotfiles
Create a pull request with auto-generated description, issue linking, ROADMAP updates, and PR-metadata validation.
joshukraine/dotfiles
Detailed technical walkthrough covering architecture, test coverage, product tour, and key design decisions.
joshukraine/dotfiles
Pre-PR advisory check for deviations from the project spec. An agent skill from joshukraine/dotfiles.
joshukraine/dotfiles
Assess a project that's been dormant for months and produce a prioritized re-entry plan — lifecycle stage, what's stale or broken, and how far the project's tooling has drifted from current…
Categories
Vet open issues for autonomous resolution and queue the qualifying ones with the autopilot-queued label — the start-of-day "fill the queue" half of the triage → run split. Autopilot Triage is an agent skill from joshukraine/dotfiles. Vet open issues for autonomous resolution and queue the qualifying ones with the autopilot-queued label — the start-of-day "fill the queue" half of the triage → run split.
Autopilot Triage fits situations like: education work in your project.
Run `npx skills add joshukraine/dotfiles --skill autopilot-triage -a claude-code`. Or copy the skill folder (claude/.claude/skills/autopilot-triage in joshukraine/dotfiles) into .claude/skills/autopilot-triage in your project. Claude Code loads it when a task matches its description.
Run `npx skills add joshukraine/dotfiles --skill autopilot-triage -a codex`. Or copy the skill folder (claude/.claude/skills/autopilot-triage in joshukraine/dotfiles) into .agents/skills/autopilot-triage 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 joshukraine/dotfiles --skill autopilot-triage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/autopilot-triage, .gemini/skills/autopilot-triage, .github/skills/autopilot-triage and .opencode/skills/autopilot-triage in your project.
Going by SKILL.md and its folder, Autopilot Triage needs the command-line tools its instructions call (gh).
SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. 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.
Autopilot Triage is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.4k 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 Autopilot Triage: DeepTutor CLI (HKUDS/DeepTutor, 41k stars), AI Engineering Placement Quiz (rohitg00/ai-engineering-from-scratch, 67k stars), Deep Reading Analyst (ginobefun/deep-reading-analyst-skill, 354 stars) and OpenMAIC Setup and Extension (THU-MAIC/OpenMAIC, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
joshukraine (a GitHub user) maintains it in joshukraine/dotfiles, which has 429 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 6, 2026.
Source: joshukraine/dotfiles on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.