Quick logo

Quick

Community
joetawil7
quick

Quick mode for the rest of the session. Instead of CI's full checks, a change runs only the checks it can affect (format, lint, types and build, its own tests, and every unit, integration, flow and browser test that reaches the code it touched), and the rest of the suite is left for a full run such as a pull request's CI. Runs only when the user types it, and `/first-pass:quick off` turns it off.

Overview

Publisherjoetawil7
Repositoryfirst-pass
Skill namequick
Stars
113
Forks
0
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by joetawil7 on GitHub. Read the source before you install it.

Installation

Install the Quick AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/joetawil7/first-pass/tree/main/skills/quick
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/joetawil7/first-pass.git /tmp/first-pass
mkdir -p .claude/skills
cp -r /tmp/first-pass/skills/quick .claude/skills/quick
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Quick in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Quick on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Quick is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

quick

If the block above says off, or the user's message with this command does, quick mode is off from now on: write "Checks: full" in the task list, and every change runs CI's full checks as the rules say, a change already built included, before it is called done. Otherwise quick mode is on, for the rest of this session, until the user types /first-pass:quick off. Asking for CI's whole suite on one change runs it for that change and leaves the mode on; words like "check everything", "cover all cases" or "full review" do not: they ask for full checks inside the task's scope, which the chosen checks are. Only this typed command turns it on: "be quick", "hurry" or "fast" in a prompt does not.

Quick mode changes which tests run here, nothing else: committing, pushing, pull requests, merging and deploying stay as the rules say, each only when the user asks.

With quick mode on, wherever the rules, ship-check and review's fixes (its step 8) ask for CI's checks (in the clean checkout while the reviews run, and once more on the final change), the checks the change can affect run instead, in the same clean checkout, within the same machine limits, and under the same yes rules for runs that reach real people:

  • the format, lint, type and build checks of every package the change touches;
  • every test the change adds or changes, and the tests of every file it changes;
  • every unit, integration, flow and end-to-end (browser) test file that reaches the changed code, directly or through its callers: the feature's own flow, and every other feature that reads or writes the same data or calls the same code (the pre-mortem's neighbors);
  • a part it reaches through shared code runs whole when the change alters what that other code sees (a shared package's exports, a migration, a config value, a route's or event's shape);
  • when the change touches jobs, payments, publishing, deletion or auth, the whole integration suite, as ship-check step 4 asks;

Find them in two steps: first follow the callers of each changed module, function, route, event and table, caller by caller, until each path reaches something a test can drive (a route, a job, an event, a command or a screen); then search the tests for the change, those callers and those entry points. Where the test runner lists the tests related to changed files (Jest's --findRelatedTests, Vitest's related), add its list too. Write the list in the plan. Run the chosen files with the commands CI uses for their suites, with the servers and databases those suites need. In a repo with a parts recipe, they run through the runner (ship-check step 4): each part whose steps take a test list (parts <repo> check says takes --tests) gets the chosen files its test-list steps (those with {{tests}}) run, with --tests <part>=<file>,<file>, the other chosen parts run whole by name, and nothing runs by hand outside it. When no test that a part's test-list steps (those with {{tests}}) would run reaches the change, while that part also holds chosen checks (format, lint, type and build checks kept in one part with unit tests), it runs with --no-tests <part>: those steps do not run, its other steps run whole as always, and the report says that part ran without its tests. A part the list above runs whole (one reached through shared code when the change alters what that code sees, or the integration suite of a change to jobs, payments, publishing, deletion or auth) runs whole instead of with --tests or --no-tests. A chosen file the runner refuses (a path a test runner would read as a pattern, or one outside the folder the part's tests run in) means that part runs whole, never that the file is left out. After a run, check that each chosen file shows in the test runner's own result lines in that part's log, named from the folder the runner ran in and with either slash (Jest's PASS and FAIL lines, Playwright's lines for that file, the names of node --test's tests from it), never in the command line pnpm or npm repeats above them: one that does not, did not run. A test run that selects no tests (the test-list steps a --no-tests run skips do not count as one) is not a pass: fix the selection, or run that part whole. When unsure whether a test reaches the change, it runs. Everything else, test files that reach nothing the change touched, is not run here.

Nothing else changes: the test that fails first, the fresh review, looking at the UI running, and the words, monitoring and invariants checks all run as the rules say. A later edit reruns the checks it can affect, as always, and once the last edit is in, the chosen checks run once more on the final change unless each of them already ran after it.

Once the chosen checks pass (failures the base has too named) and every other step is done, the change is done. The report says "Full checks on the final change: not run (quick mode)" with what ran instead, so the user knows the rest of the suite is still to run, on a pull request's CI or when they ask for it.

Write "Checks: quick" in the plan, and in the task list as an item kept open while the mode is on, so it survives a compacted context; after a compaction, a task list without it means the full checks.

Frequently asked questions

What does the Quick AI skill do?

Quick mode for the rest of the session. Instead of CI's full checks, a change runs only the checks it can affect (format, lint, types and build, its own tests, and every unit, integration, flow and browser test that reaches the code it touched), and the rest of the suite is left for a full run such as a pull request's CI. Runs only when the user types it, and `/first-pass:quick off` turns it off.

Why use Quick on TypingMind?

Because you install it once and use it with any model. Quick is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Quick in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/joetawil7/first-pass/tree/main/skills/quick. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Quick?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Quick?

As many as you like. As long as a model supports skills, you can use Quick with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Quick AI skill free?

Yes. It is published on GitHub by joetawil7 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇