<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Shortcuts on Jingyuan</title>
        <link>https://jingyuan-zheng.github.io/tags/shortcuts/</link>
        <description>Recent content in Shortcuts on Jingyuan</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en-US</language>
        <copyright>Jingyuan Zheng</copyright>
        <lastBuildDate>Thu, 22 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://jingyuan-zheng.github.io/tags/shortcuts/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>Run Shell Commands from Spotlight on Mac with SpotlightShell</title>
            <link>https://jingyuan-zheng.github.io/p/spotlight-shell/</link>
            <pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
            <guid>https://jingyuan-zheng.github.io/p/spotlight-shell/</guid>
            <description>&lt;img src=&#34;https://jingyuan-zheng.github.io/img/spotlight-shell/spotlight.png&#34; alt=&#34;Featured image of post Run Shell Commands from Spotlight on Mac with SpotlightShell&#34; /&gt;&lt;p&gt;SpotlightShell is a small native macOS 26+ app that exposes a Run Shell Command action to Spotlight and Shortcuts.&lt;/p&gt;&#xA;&lt;p&gt;For a short command such as checking the current directory or producing a small text result, opening Terminal can feel like an extra step. &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/SpotlightShell&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;SpotlightShell&lt;/a&gt; supplies a command field at runtime instead of maintaining a fixed catalogue of predefined commands.&lt;/p&gt;&#xA;&lt;p&gt;It uses ordinary user-level shell execution. It does not translate a natural-language request into a command, grant administrator rights, or make the command itself harmless.&lt;/p&gt;&#xA;&lt;h2 id=&#34;install-and-let-macos-discover-the-action&#34;&gt;Install and let macOS discover the action&#xA;&lt;/h2&gt;&lt;p&gt;A DMG is available in &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/SpotlightShell/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Releases&lt;/a&gt;. Follow the release instructions, open the installed app once, and allow macOS time to discover its App Shortcut.&lt;/p&gt;&#xA;&lt;p&gt;Open Spotlight with &lt;strong&gt;Command-Space&lt;/strong&gt;, use &lt;strong&gt;Command-3&lt;/strong&gt; to filter Actions, and search for &lt;strong&gt;Run Shell Command&lt;/strong&gt; or &lt;strong&gt;SpotlightShell&lt;/strong&gt; (see Figure 1). If the action is missing, check &lt;strong&gt;Shortcuts → Apps → SpotlightShell&lt;/strong&gt; and reopen the app before troubleshooting further.&lt;/p&gt;&#xA;&lt;div class=&#34;post-figure&#34;&gt;&#xA;&lt;img src=&#34;https://jingyuan-zheng.github.io/img/spotlight-shell/spotlight.png&#34; alt=&#34;Spotlight finding the SpotlightShell action&#34;&gt;&#xA;&lt;div class=&#34;caption&#34;&gt;Figure 1: Discover the action through Spotlight. Screenshot from the project repository.&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;To call up the action with &lt;code&gt;sh&lt;/code&gt;, find it in Spotlight, click &lt;strong&gt;Add quick keys&lt;/strong&gt; beside it, type &lt;code&gt;sh&lt;/code&gt;, and confirm. Then use &lt;strong&gt;Command-Space&lt;/strong&gt;, type &lt;code&gt;sh&lt;/code&gt;, and enter your command.&lt;/p&gt;&#xA;&lt;h2 id=&#34;start-with-a-harmless-command&#34;&gt;Start with a harmless command&#xA;&lt;/h2&gt;&lt;p&gt;Enter a command whose output you recognize:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;printf&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Hello from SpotlightShell\n&amp;#39;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;Run it in the background and inspect the report. The result includes stdout, stderr, and the exit status, rather than treating every nonempty message as success (see Figure 2).&lt;/p&gt;&#xA;&lt;div class=&#34;post-figure&#34;&gt;&#xA;&lt;img src=&#34;https://jingyuan-zheng.github.io/img/spotlight-shell/result.png&#34; alt=&#34;A shell-command result displayed in Spotlight&#34;&gt;&#xA;&lt;div class=&#34;caption&#34;&gt;Figure 2: Check both the output and exit status. Spotlight controls how much of the report is visible.&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;You can also try &lt;code&gt;printf &#39;example error\n&#39; &amp;gt;&amp;amp;2; exit 7&lt;/code&gt;: it produces an error message and exit status 7. This makes the difference between “printed something” and “succeeded” visible. In Shortcuts, the action returns text for Show Result; a workflow that branches on failure should inspect its status.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-background-or-terminal-deliberately&#34;&gt;Choose Background or Terminal deliberately&#xA;&lt;/h2&gt;&lt;p&gt;Background mode is for short, noninteractive commands. It runs login zsh with no interactive stdin, captures stdout and stderr separately, and enforces a 20-second execution limit. Each stream retains up to 64 KiB and reports truncation. The visible dialog can be shorter still.&lt;/p&gt;&#xA;&lt;p&gt;Commands needing a terminal, interactive input, or a longer session belong in &lt;strong&gt;Terminal&lt;/strong&gt; mode. This opens Apple Terminal and hands the command to a new session. Successful handoff means Terminal received the request, not that the program finished successfully; its output stays there.&lt;/p&gt;&#xA;&lt;p&gt;The working directory is a separate parameter. Use an absolute path, &lt;code&gt;~&lt;/code&gt;, or &lt;code&gt;~/…&lt;/code&gt;, without surrounding shell quotes in the directory field.&lt;/p&gt;&#xA;&lt;h2 id=&#34;fill-the-command-and-directory-separately&#34;&gt;Fill the command and directory separately&#xA;&lt;/h2&gt;&lt;p&gt;To inspect a project under Documents, put &lt;code&gt;~/Documents/My Project&lt;/code&gt; in the working-directory field and &lt;code&gt;pwd; ls&lt;/code&gt; in Command. The directory is a path parameter: spaces need no surrounding quotes. The command is shell source. Do not put a &lt;code&gt;cd&lt;/code&gt; command or a &lt;code&gt;$HOME&lt;/code&gt; expression into the directory field.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;pwd&lt;/code&gt; prints the starting location before &lt;code&gt;ls&lt;/code&gt; lists its contents. Keep this check while learning the action. An empty directory defaults to your home folder. Use a complete path rather than assuming Spotlight inherits the directory you last visited in Terminal.&lt;/p&gt;&#xA;&lt;p&gt;Quoting inside the command is different. A command that opens a filename containing spaces still needs normal shell quoting for that argument. The directory field says where to start; Command says what zsh should do. Keeping those responsibilities separate makes mistakes easier to locate.&lt;/p&gt;&#xA;&lt;h2 id=&#34;let-terminal-handle-interaction&#34;&gt;Let Terminal handle interaction&#xA;&lt;/h2&gt;&lt;p&gt;Try &lt;code&gt;printf &#39;hello\n&#39;; tty&lt;/code&gt; in Terminal mode. The text appears in a new Terminal window, and &lt;code&gt;tty&lt;/code&gt; identifies its terminal device. A continuously updating program such as &lt;code&gt;top&lt;/code&gt; also belongs here; press &lt;code&gt;q&lt;/code&gt; in Terminal to quit. A command that prints once in Background is not necessarily suited to long-running monitoring.&lt;/p&gt;&#xA;&lt;p&gt;macOS may ask whether SpotlightShell can control Terminal on the first handoff. This consent is used to open a terminal and send the command; Background does not need that handoff. If you previously denied it and Terminal fails to open, inspect Automation permissions before repeatedly submitting the command.&lt;/p&gt;&#xA;&lt;p&gt;After handoff, Terminal lives independently of SpotlightShell. Enter passwords or other interactive responses there. A handoff-success report means Terminal received the command, while completion and errors remain visible in its window. If transport times out, inspect Terminal before retrying so you do not accidentally run the same operation twice.&lt;/p&gt;&#xA;&lt;h2 id=&#34;save-a-frequent-check-in-shortcuts&#34;&gt;Save a frequent check in Shortcuts&#xA;&lt;/h2&gt;&lt;p&gt;For a recurring short command, create a Shortcut containing SpotlightShell’s &lt;strong&gt;Run Shell Command&lt;/strong&gt; action, set the directory and mode, and add Show Result. A fixed folder-listing check then avoids retyping the path each time. Begin with a short, read-only operation before adapting the flow to everyday work.&lt;/p&gt;&#xA;&lt;p&gt;Do not use the presence of output as your success condition. A command can print text and fail, or succeed silently. If another step will act on files, inspect the exit-status text first. Timeouts and truncation notices also require attention before trusting the report as a complete result.&lt;/p&gt;&#xA;&lt;p&gt;Use Terminal for a full, long log. Background works best as one input followed by a short result, while Terminal supports continuing interaction. Spotlight supplies a quick entry point; choosing the right destination keeps the workflow understandable.&lt;/p&gt;&#xA;&lt;h2 id=&#34;why-commands-can-behave-differently&#34;&gt;Why commands can behave differently&#xA;&lt;/h2&gt;&lt;p&gt;Background mode reads login-shell setup but does not load interactive &lt;code&gt;.zshrc&lt;/code&gt; configuration. Aliases, functions, or PATH changes defined only there may be unavailable. Terminal mode uses an interactive login shell and a TTY.&lt;/p&gt;&#xA;&lt;p&gt;Choose the mode by asking whether the command needs keyboard input or should keep running. Use &lt;strong&gt;Terminal&lt;/strong&gt; for those commands; use &lt;strong&gt;Background&lt;/strong&gt; for a short result.&lt;/p&gt;&#xA;&lt;p&gt;The app does not upload commands, but shell history, Terminal restoration, Spotlight, Shortcuts, and invoked programs can retain information according to their own settings. It runs with the current user&amp;rsquo;s abilities, so review a command before submitting it.&lt;/p&gt;&#xA;&lt;p&gt;For installation, signing, working-directory handling, and output limits, see the &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/SpotlightShell#readme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;project README&lt;/a&gt;. For a different Finder automation pattern, &lt;a class=&#34;link&#34; href=&#34;https://jingyuan-zheng.github.io/p/auto-filename-helper/&#34; &gt;Auto Filename Helper&lt;/a&gt; shows a Shortcut handing results to a native app.&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>Suggest Better Filenames on Mac with Shortcuts and Auto Filename Helper</title>
            <link>https://jingyuan-zheng.github.io/p/auto-filename-helper/</link>
            <pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
            <guid>https://jingyuan-zheng.github.io/p/auto-filename-helper/</guid>
            <description>&lt;img src=&#34;https://jingyuan-zheng.github.io/img/auto-filename-helper/featured.png&#34; alt=&#34;Featured image of post Suggest Better Filenames on Mac with Shortcuts and Auto Filename Helper&#34; /&gt;&lt;p&gt;Auto Filename Helper is a native macOS companion that validates and applies filename suggestions supplied by a Shortcut.&lt;/p&gt;&#xA;&lt;p&gt;A download called &lt;code&gt;document (3).pdf&lt;/code&gt; says little about its contents. A meaningful name makes later search easier, but an automated suggestion still needs checking: it may be too vague, contain an unsafe character, or collide with another file.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/AutoFilenameHelper&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Auto Filename Helper&lt;/a&gt; separates those jobs. The Shortcut derives the suggested name; the native app checks the request and handles the actual rename. The helper itself is not an AI model and does not inspect a document to invent its title.&lt;/p&gt;&#xA;&lt;h2 id=&#34;build-the-helper-and-connect-the-shortcut&#34;&gt;Build the helper and connect the Shortcut&#xA;&lt;/h2&gt;&lt;p&gt;The project currently provides source and an included &lt;strong&gt;Auto Filename.shortcut&lt;/strong&gt;, rather than a packaged GitHub Release. Building requires macOS 13 or later and Xcode Command Line Tools.&lt;/p&gt;&#xA;&lt;p&gt;Download the repository, inspect its installation script, then run:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./build_and_install.sh&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;The script installs &lt;code&gt;~/Applications/AutoFilenameHelper.app&lt;/code&gt;. Import &lt;strong&gt;Auto Filename.shortcut&lt;/strong&gt; into Shortcuts and replace its execution step with the repository&amp;rsquo;s &lt;code&gt;shortcut_shell_replacement.sh&lt;/code&gt;, as the README describes.&lt;/p&gt;&#xA;&lt;p&gt;This connection matters. Merely opening the app does not create a filename suggestion; the Shortcut must send the selected path and analysis result to the helper.&lt;/p&gt;&#xA;&lt;p&gt;Think of it as a handoff with a checkpoint: select a file such as &lt;code&gt;document (3).pdf&lt;/code&gt; in Finder, let the Shortcut propose a descriptive name, and let the helper check the path, extension, and possible conflict. A proposal such as “project meeting notes.pdf” is only an example; the real name depends on what the Shortcut derives from your file.&lt;/p&gt;&#xA;&lt;h2 id=&#34;try-one-file-before-a-batch&#34;&gt;Try one file before a batch&#xA;&lt;/h2&gt;&lt;p&gt;Start with a disposable copy of a supported file. Run the Shortcut from Finder, inspect the suggested filename and reason, and check the result in Finder.&lt;/p&gt;&#xA;&lt;p&gt;The helper receives fields including the path, suggestion, confidence, and reason. It validates the request, preserves the original extension by default, and uses moves that do not overwrite an existing file. It rejects unsafe or hidden names, symlinks, unsupported file types, and unchanged names.&lt;/p&gt;&#xA;&lt;p&gt;Those checks protect the rename operation; they do not prove that the proposed title describes the contents accurately. Keep names factual and easy to recognize later.&lt;/p&gt;&#xA;&lt;h2 id=&#34;decide-when-confirmation-is-required&#34;&gt;Decide when confirmation is required&#xA;&lt;/h2&gt;&lt;p&gt;The app&amp;rsquo;s settings include a rename threshold, extension handling, conflict behaviour, appearance, and English/Chinese interface choices. Ambiguous names, low-confidence suggestions, executables, and disabled automatic renaming can trigger confirmation.&lt;/p&gt;&#xA;&lt;p&gt;Quick Look, Reveal in Finder, and Copy Path help inspect the original before accepting. For files with uncertain contents, the right answer may simply be to keep the existing name until you have checked it.&lt;/p&gt;&#xA;&lt;p&gt;On the first run, use a copy and check three things: whether the proposed name really describes the content, whether &lt;code&gt;.pdf&lt;/code&gt; or another extension stays intact, and whether the folder already contains that name. Even a high confidence value is a reason to inspect the file, not a substitute for opening it.&lt;/p&gt;&#xA;&lt;p&gt;A confidence value is supplied by the workflow, not an independent certification from the helper. Moving the threshold should be a deliberate convenience choice, especially when filenames influence your later search or filing rules.&lt;/p&gt;&#xA;&lt;h2 id=&#34;find-the-project-folder-before-building&#34;&gt;Find the project folder before building&#xA;&lt;/h2&gt;&lt;p&gt;If you use &lt;strong&gt;Code → Download ZIP&lt;/strong&gt; on GitHub, unzip the archive and locate the folder containing &lt;code&gt;build_and_install.sh&lt;/code&gt;. That is the folder Terminal needs as its current directory. Type &lt;code&gt;cd &lt;/code&gt;, drag the folder into Terminal, and press Return before running the build command. This also handles spaces in the path.&lt;/p&gt;&#xA;&lt;p&gt;If the script reports missing Xcode Command Line Tools, run &lt;code&gt;xcode-select --install&lt;/code&gt;, complete the system installer, then return to the project. The script rebuilds and replaces &lt;code&gt;~/Applications/AutoFilenameHelper.app&lt;/code&gt;. Keep a copy first if you have customized an existing installation. The source folder is useful for future updates, while the Shortcut should call the executable inside the installed app.&lt;/p&gt;&#xA;&lt;p&gt;In the Shortcut editor, find the shell action that invokes the helper and preserve the preceding analysis actions. The supplied replacement script handles the handoff; it does not create a missing analysis workflow. If you choose a different app location, update that invocation too. Otherwise a suggested name may exist while the Shortcut cannot find the program that applies it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-a-naming-convention-you-can-keep-using&#34;&gt;Choose a naming convention you can keep using&#xA;&lt;/h2&gt;&lt;p&gt;Think about the words you will search for later. For meeting documents, a project, topic, and a date actually present in the document can be useful. For invoices, the supplier or invoice number may matter more. A polished title that invents a year, person, or version is harder to trust than a modest, accurate description.&lt;/p&gt;&#xA;&lt;p&gt;Renaming &lt;code&gt;document (3).pdf&lt;/code&gt; to &lt;code&gt;quarterly budget discussion.pdf&lt;/code&gt; helps if “budget” is what you will remember. If that name already exists, inspect both documents rather than relying on a numbered suffix to explain their relationship. Keeping the extension is sensible: changing &lt;code&gt;.pdf&lt;/code&gt; to &lt;code&gt;.docx&lt;/code&gt; does not convert a PDF into a Word document.&lt;/p&gt;&#xA;&lt;p&gt;Try several copies before choosing a threshold: a clearly named file, an ambiguous one, and a case that conflicts with an existing name. Watch which suggestions are accepted, questioned, or rejected. This gives the threshold a practical meaning in your own workflow instead of treating it as an abstract accuracy score.&lt;/p&gt;&#xA;&lt;h2 id=&#34;when-the-shortcut-runs-but-the-name-stays-unchanged&#34;&gt;When the Shortcut runs but the name stays unchanged&#xA;&lt;/h2&gt;&lt;p&gt;Follow the chain: selected file, generated suggestion, handoff, then rename. If only Settings opens, check whether the Shortcut is passing the payload to standard input. If a confirmation window appears, it may still be waiting for your decision. If the helper reports an unchanged name or unsupported type, resolve that message before rerunning the same input.&lt;/p&gt;&#xA;&lt;p&gt;Always verify the path. A similarly named document in Downloads, on the Desktop, and in a cloud folder can be three separate files. Use Reveal in Finder to locate the intended original, then check that folder after the rename. If a script or project configuration refers to the old filename, account for those references before changing it.&lt;/p&gt;&#xA;&lt;h2 id=&#34;local-renaming-and-upstream-analysis-are-separate&#34;&gt;Local renaming and upstream analysis are separate&#xA;&lt;/h2&gt;&lt;p&gt;The helper makes no network requests. The Shortcut is responsible for deriving the suggestion and may use an AI service depending on its actions and configuration.&lt;/p&gt;&#xA;&lt;p&gt;Review that Shortcut before applying it to personal documents. “The rename happens locally” does not automatically mean the whole analysis workflow stays on the Mac.&lt;/p&gt;&#xA;&lt;p&gt;For an explanation of an unfamiliar file before renaming it, see &lt;a class=&#34;link&#34; href=&#34;https://jingyuan-zheng.github.io/p/what-file-is-this/&#34; &gt;What File Is This&lt;/a&gt;. To find the renamed item later, &lt;a class=&#34;link&#34; href=&#34;https://jingyuan-zheng.github.io/p/machunt-native-file-search/&#34; &gt;MacHunt&lt;/a&gt; provides local filename search. Setup details remain in the &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/AutoFilenameHelper#readme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;project README&lt;/a&gt;.&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>What Is This File? Explain Unfamiliar Files from Finder on Mac</title>
            <link>https://jingyuan-zheng.github.io/p/what-file-is-this/</link>
            <pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
            <guid>https://jingyuan-zheng.github.io/p/what-file-is-this/</guid>
            <description>&lt;img src=&#34;https://jingyuan-zheng.github.io/img/what-file-is-this/result-en.png&#34; alt=&#34;Featured image of post What Is This File? Explain Unfamiliar Files from Finder on Mac&#34; /&gt;&lt;p&gt;What File Is This combines a Finder Shortcut with a native result window to explain an unfamiliar file or folder in plain language.&lt;/p&gt;&#xA;&lt;p&gt;An extension is not always enough to answer the useful questions: what produced this file, which app might open it, and is it a companion to something else? &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/What-File-Is-This&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;What File Is This&lt;/a&gt; gathers bounded local evidence through a Shortcut and displays the resulting analysis in a focused Mac window.&lt;/p&gt;&#xA;&lt;p&gt;The project&amp;rsquo;s README currently requires &lt;strong&gt;macOS 27 or later&lt;/strong&gt;. Check that requirement before downloading; this is not a tool to assume will run on every recent Mac.&lt;/p&gt;&#xA;&lt;h2 id=&#34;install-both-halves&#34;&gt;Install both halves&#xA;&lt;/h2&gt;&lt;p&gt;Download the DMG from &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/What-File-Is-This/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Releases&lt;/a&gt;, drag &lt;strong&gt;What File Is This&lt;/strong&gt; into Applications, and open it once. Import &lt;strong&gt;What file is this?.shortcut&lt;/strong&gt; into Shortcuts as well.&lt;/p&gt;&#xA;&lt;p&gt;The two components have different responsibilities. The Shortcut gathers evidence and performs the analysis; the app displays its output locally. The app is not an independent file-identification engine that can generate the same result without the Shortcut.&lt;/p&gt;&#xA;&lt;h2 id=&#34;run-it-from-finder&#34;&gt;Run it from Finder&#xA;&lt;/h2&gt;&lt;p&gt;Select one file or folder, open Finder&amp;rsquo;s contextual menu, and choose &lt;strong&gt;Quick Actions → What file is this?&lt;/strong&gt;. A loading window appears while analysis is prepared.&lt;/p&gt;&#xA;&lt;p&gt;The result can explain the likely type, associated software, ways to open it, and reasons for caution before removal. The repository&amp;rsquo;s DICOM example demonstrates the format rather than validating any medical interpretation (see Figure 1).&lt;/p&gt;&#xA;&lt;div class=&#34;post-figure&#34;&gt;&#xA;&lt;img src=&#34;https://jingyuan-zheng.github.io/img/what-file-is-this/result-en.png&#34; alt=&#34;An English file-analysis result for a DICOM sample&#34;&gt;&#xA;&lt;div class=&#34;caption&#34;&gt;Figure 1: A repository example shows the explanation alongside its evidence. This is a file-format example, not a medical assessment.&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Copy the result or reveal the original in Finder when you want to verify a detail. Separate runs receive separate windows; closing the final window quits the app.&lt;/p&gt;&#xA;&lt;h2 id=&#34;read-the-evidence-not-just-the-conclusion&#34;&gt;Read the evidence, not just the conclusion&#xA;&lt;/h2&gt;&lt;p&gt;A file&amp;rsquo;s name, signature, metadata, nearby companions, and readable fragments can suggest its purpose. They cannot always establish which application created it or whether a project still depends on it.&lt;/p&gt;&#xA;&lt;p&gt;An answer such as “possibly a cache” is a hypothesis. Check its location, the owning app, and any related files before deleting it. A confident explanation is also not a malware scan or a guarantee that opening a file is safe.&lt;/p&gt;&#xA;&lt;p&gt;For example, a same-named &lt;code&gt;.aae&lt;/code&gt; beside a photo may look disposable if you only know the extension. The neighbouring photo and its edit history suggest it could contain Apple Photos adjustments. Even then, whether you can remove it depends on whether you still need those edits.&lt;/p&gt;&#xA;&lt;p&gt;For an archive, &lt;a class=&#34;link&#34; href=&#34;https://jingyuan-zheng.github.io/p/archive-peek-macos-quick-look/&#34; &gt;Archive Peek&lt;/a&gt; can provide another view of its contents without immediately extracting it. For media parameters, &lt;a class=&#34;link&#34; href=&#34;https://jingyuan-zheng.github.io/p/view-media-info/&#34; &gt;View Media Info&lt;/a&gt; offers a more direct metadata view.&lt;/p&gt;&#xA;&lt;h2 id=&#34;interface-language-and-answer-language&#34;&gt;Interface language and answer language&#xA;&lt;/h2&gt;&lt;p&gt;The app&amp;rsquo;s English/Chinese interface setting takes effect after quitting and reopening. The Shortcut&amp;rsquo;s response language is configured separately.&lt;/p&gt;&#xA;&lt;p&gt;Open the Shortcut, find the text line &lt;code&gt;$language$ = Chinese&lt;/code&gt;, and change the language value if needed (see Figure 2). Switching the app interface alone does not rewrite the analysis prompt.&lt;/p&gt;&#xA;&lt;div class=&#34;post-figure&#34;&gt;&#xA;&lt;img src=&#34;https://jingyuan-zheng.github.io/img/what-file-is-this/language-setting.png&#34; alt=&#34;The response-language setting in the analysis Shortcut&#34;&gt;&#xA;&lt;div class=&#34;caption&#34;&gt;Figure 2: The Shortcut prompt controls the response language independently of the app interface.&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;read-the-answer-in-three-stages&#34;&gt;Read the answer in three stages&#xA;&lt;/h2&gt;&lt;p&gt;Start with a file whose origin you know but whose extension is unfamiliar, such as a camera sidecar or a configuration file from a known project. This provides a reference while you learn the result window, before investigating material with an uncertain history.&lt;/p&gt;&#xA;&lt;p&gt;Read the explanation as three questions: what kind of file is it, what can open it, and should you keep it here? The first can be answered from format clues. The last depends on its role in your current project. A configuration file opening in a text editor does not make it a disposable note; another program may still depend on it.&lt;/p&gt;&#xA;&lt;p&gt;When the analysis offers several possibilities, treat them as investigation leads. Reveal the item in Finder and inspect neighboring files, location, and origin. A lone download and a similarly named item inside an app’s resources can need different treatment. Returning to the folder puts the explanation back into context.&lt;/p&gt;&#xA;&lt;h2 id=&#34;investigate-a-folder-without-mistaking-a-summary-for-an-inventory&#34;&gt;Investigate a folder without mistaking a summary for an inventory&#xA;&lt;/h2&gt;&lt;p&gt;For an unfamiliar project directory, inspect the folder first to understand its likely purpose, then examine important files individually. The Shortcut gathers bounded evidence. A summary of a large directory does not imply every file or dependency was examined.&lt;/p&gt;&#xA;&lt;p&gt;A folder can contain source documents, generated output, and caches together. “Contains a cache” is not a reason to remove the entire project. Locate the specific subfolder and establish whether the originating software can recreate it. Keep original material, personal edits, and generated files distinguishable in Finder.&lt;/p&gt;&#xA;&lt;p&gt;For research or specialized formats, separate file identification from content interpretation. Recognizing DICOM can help locate an appropriate viewer, but does not interpret the image. Recognizing a database does not establish that its records can be changed safely. The explanation is most useful when it points you toward a concrete next check.&lt;/p&gt;&#xA;&lt;h2 id=&#34;diagnose-the-two-halves-separately&#34;&gt;Diagnose the two halves separately&#xA;&lt;/h2&gt;&lt;p&gt;If the Finder action is missing, confirm that the Shortcut was imported and configured to receive Finder Quick Action input. If it runs without opening a result window, open the installed app once and check that both components are present. Reinstalling one half may not fix a call to the other.&lt;/p&gt;&#xA;&lt;p&gt;If the result window stays loading, return to Shortcuts and inspect which stage stopped: reading input, preparing evidence, analysis, or delivery. Try a small, readable local file to distinguish a particular-file problem from a broken workflow. Confirm that a cloud item is actually accessible too.&lt;/p&gt;&#xA;&lt;p&gt;For mixed languages, check the correct setting: app menus come from Settings, while the analysis response comes from the Shortcut prompt. Change the prompt for an English answer under Chinese menus; quit and reopen the app when only its menus need updating. These independent controls serve different parts of the workflow.&lt;/p&gt;&#xA;&lt;h2 id=&#34;check-the-shortcut-before-sensitive-files&#34;&gt;Check the Shortcut before sensitive files&#xA;&lt;/h2&gt;&lt;p&gt;The app does not modify the selected item and displays results locally. Review the Shortcut&amp;rsquo;s evidence-gathering and analysis actions to understand what information it reads and whether an analysis service receives it.&lt;/p&gt;&#xA;&lt;p&gt;The useful role of this workflow is to make a file easier to investigate. For deletion decisions, irreplaceable data, or specialist material, the explanation should lead you back to verifiable evidence rather than replace it. Installation and transport details are in the &lt;a class=&#34;link&#34; href=&#34;https://github.com/Jingyuan-Zheng/What-File-Is-This#readme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;README&lt;/a&gt;.&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
