
{"id":13910,"date":"2026-10-25T17:46:52","date_gmt":"2026-10-25T09:46:52","guid":{"rendered":"https:\/\/infernews.com\/blog\/cli-anything\/"},"modified":"2026-10-25T17:48:22","modified_gmt":"2026-10-25T09:48:22","slug":"cli-anything","status":"publish","type":"post","link":"https:\/\/infernews.com\/blog\/cli-anything\/","title":{"rendered":"CLI-Anything \u8b93 AI \u4ee3\u7406\u76f4\u63a5\u64cd\u63a7\u8edf\u4ef6"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/infernews.com\/blog\/wp-content\/uploads\/2026\/10\/AI-CLI-Anything.jpg\" alt=\"icon\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u7576 AI \u4ee3\u7406\u9700\u8981\u88fd\u4f5c CAD\u30013D \u5834\u666f\u3001\u5716\u8868\u3001\u904a\u6232\u6216\u5b57\u5e55\uff0cCLI-Anything \u6703\u628a\u539f\u672c\u9762\u5411\u4eba\u985e\u64cd\u4f5c\u7684\u8edf\u4ef6\u8f49\u6210\u53ef\u8abf\u7528\u7684 CLI\u3002\u5b83\u5c6c\u65bc\u958b\u6e90\u7684 Agentic \u5de5\u5177\u8207 CLI \u751f\u6210\u6846\u67b6\uff0c\u8655\u7406\u7684\u662f\u4ee3\u7406\u7f3a\u4e4f\u4e00\u81f4\u4ecb\u9762\u3001\u96e3\u4ee5\u6301\u7e8c\u64cd\u4f5c\u8edf\u4ef6\u53ca\u7522\u51fa\u53ef\u9a57\u8b49\u6210\u679c\u7684\u554f\u984c\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u9805\u76ee\u4ee5 <code>\/cli-anything<\/code> \u4f5c\u70ba\u4e3b\u8981\u5165\u53e3\uff0c\u4e26\u914d\u5408\u9810\u89bd\u3001\u5373\u6642\u9810\u89bd\u53ca trajectory loops\uff0c\u8b93\u4ee3\u7406\u4e0d\u53ea\u767c\u51fa\u6307\u4ee4\uff0c\u9084\u80fd\u9010\u6b65\u7522\u751f\u548c\u6aa2\u67e5\u771f\u5be6 artifact\u3002README \u4ea6\u5217\u51fa Cursor plugin\u3001Hub \u53ca skills\uff0c\u53cd\u6620\u5b83\u540c\u6642\u7167\u9867 CLI \u751f\u6210\u7aef\u548c\u4ee3\u7406\u4f7f\u7528\u7aef\uff1b\u820a\u7248\u672c\u5247\u53ef\u80fd\u8981\u6539\u7528 <code>\/cli-anything:cli-anything<\/code>\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u548c\u53ea\u4f9d\u8cf4 GUI \u64cd\u4f5c\u6216\u500b\u5225 API \u6574\u5408\u7684\u505a\u6cd5\u76f8\u6bd4\uff0cCLI-Anything \u5617\u8a66\u70ba\u4e0d\u540c\u8edf\u4ef6\u5efa\u7acb\u8f03\u7d71\u4e00\u7684\u4ee3\u7406\u4ecb\u9762\uff0c\u65b9\u4fbf\u91cd\u7528\u6d41\u7a0b\uff0c\u4f46\u6548\u679c\u4ecd\u53d6\u6c7a\u65bc\u6bcf\u500b\u8edf\u4ef6\u7684 CLI harness \u662f\u5426\u5b8c\u6574\uff0c\u4ee5\u53ca\u4ee3\u7406\u80fd\u5426\u6b63\u78ba\u7406\u89e3\u5de5\u5177\u72c0\u614b\u3002\u9805\u76ee\u63d0\u4f9b CLI-Hub\uff0c\u4f7f\u7528\u8005\u53ef\u700f\u89bd\u3001\u5b89\u88dd\u53ca\u7ba1\u7406\u793e\u7fa4\u5efa\u7acb\u7684 CLI\uff1b\u539f\u59cb\u8cc7\u6599\u672a\u4ea4\u4ee3\u5404 harness \u7684\u8a73\u7d30\u5b89\u88dd\u6b65\u9a5f\u3001\u8cc7\u6e90\u8981\u6c42\u6216\u4e00\u81f4\u7684\u6027\u80fd\u57fa\u6e96\u3002<\/p>\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"lyte-wrapper\" title=\"CLI-Anything: Turn ANY App into a CLI for Claude Code &amp;amp; Codex (GIMP, Blender, LibreOffice &amp;amp; More!)\" style=\"width:853px;max-width:100%;margin:5px auto;\"><div class=\"lyMe\" id=\"WYL_0XQele28q0w\" itemprop=\"video\" itemscope itemtype=\"https:\/\/schema.org\/VideoObject\"><div><meta itemprop=\"thumbnailUrl\" content=\"https:\/\/infernews.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2F0XQele28q0w%2Fhqdefault.jpg\" \/><meta itemprop=\"embedURL\" content=\"https:\/\/www.youtube.com\/embed\/0XQele28q0w\" \/><meta itemprop=\"duration\" content=\"PT10M51S\" \/><meta itemprop=\"uploadDate\" content=\"2026-10-25T09:15:02Z\" \/><\/div><div id=\"lyte_0XQele28q0w\" data-src=\"https:\/\/infernews.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2F0XQele28q0w%2Fhqdefault.jpg\" class=\"pL\"><div class=\"tC\"><div class=\"tT\" itemprop=\"name\">CLI-Anything: Turn ANY App into a CLI for Claude Code &amp; Codex (GIMP, Blender, LibreOffice &amp; More!)<\/div><\/div><button tabindex=\"0\" class=\"play\"><\/button><div class=\"ctrl\"><div class=\"Lctrl\"><\/div><div class=\"Rctrl\"><\/div><\/div><\/div><noscript><a href=\"https:\/\/youtu.be\/0XQele28q0w\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/infernews.com\/blog\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2F0XQele28q0w%2F0.jpg\" alt=\"CLI-Anything: Turn ANY App into a CLI for Claude Code &amp;amp; Codex (GIMP, Blender, LibreOffice &amp;amp; More!)\" width=\"853\" height=\"460\" \/><br \/>Watch this video on YouTube<\/a><\/noscript><meta itemprop=\"description\" content=\"Join this channel to get access to perks: https:\/\/www.youtube.com\/channel\/@aicodeking\/join In this video, I&#039;ll show you CLI-Anything, an open-source project from HKUDS at the University of Hong Kong that gives any piece of software a command line interface your AI agent can use. I explain why a CLI with JSON output beats screenshot-based GUI automation, APIs and rewrites, and how it calls the real app instead of a toy copy. Then I show CLI-Hub, the package manager for ready-made CLIs, and the meta-skill that lets your agent find and install the right tool by itself. After that, I go through the CLI generator plugin in Claude Code and its seven phases, and we try the generated CLIs for GIMP, LibreOffice and Blender, plus the refine, test and validate commands. Finally, I cover HARNESS.md, the tests, the demos and the limitations. -- Key Takeaways: \ud83d\ude80 CLI-Anything takes the source code of an app like GIMP or Blender and has your coding agent build a full CLI for it, with tests, docs and a skill file. \ud83c\udf1f It comes from HKUDS, the lab behind LightRAG, has more than 54,000 stars and is fully open source under Apache 2.0. \ud83d\udcbb Every command has a help page and a --json flag, so the agent gets clean JSON instead of clicking on pixels. \u2705 It calls the real software: LibreOffice makes a real PDF in headless mode and Blender renders with real Blender. \ud83d\udce6 CLI-Hub is a package manager for these CLIs: pip install cli-anything-hub, then list, search, install, info and launch. \ud83e\udde0 The CLI-Hub meta-skill lets Claude Code, Codex and other agents find, install and use the right CLI on their own, like the Draw.io CLI for a diagram. \ud83d\udd00 The generator plugin runs seven phases: Analyze, Design, Implement, Plan Tests, Write Tests, Document and Publish. \ud83d\udd0d The refine command fills the gaps in a CLI, and the tests check real output files and fail instead of skipping when the app is missing. \u26a0\ufe0f It needs a frontier-class model, uses a lot of tokens, works best with source code, and often needs a few refine runs. \ud83d\udc4d Verdict: a really good idea, and I would install the free CLI-Hub meta-skill first, then try the generator on apps that are not in the hub.\"><\/div><\/div><div class=\"lL\" style=\"max-width:100%;width:853px;margin:5px auto;\"><\/div><figcaption><\/figcaption><\/figure>\n\n\n<p class=\"wp-block-paragraph\">\u2022 \u652f\u63f4\u628a\u591a\u985e\u8edf\u4ef6\u8f49\u6210 AI \u4ee3\u7406\u53ef\u8abf\u7528\u7684 CLI<br>\n\u2022 \u4ee5\u9810\u89bd\u8207 trajectory loops \u5354\u52a9\u7522\u751f\u53ef\u6aa2\u67e5\u7684\u6210\u679c<br>\n\u2022 \u63d0\u4f9b CLI-Hub \u7ba1\u7406\u793e\u7fa4 CLI<br>\n\u2022 \u9069\u5408\u9700\u8981\u4e32\u9023\u8a2d\u8a08\u3001\u88fd\u4f5c\u53ca\u81ea\u52d5\u5316\u6d41\u7a0b\u7684\u5718\u968a<br>\n\u2022 \u4ecd\u9700\u9010\u4e00\u78ba\u8a8d\u5404\u8edf\u4ef6 harness \u7684\u6210\u719f\u5ea6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c0d\u719f\u6089 Cursor \u6216\u5176\u4ed6\u4ee3\u7406\u5de5\u4f5c\u6d41\u7684\u958b\u767c\u8005\uff0c\u9019\u5957\u65b9\u6cd5\u9069\u5408\u7528\u4f86\u5ef6\u4f38\u5716\u50cf\u8655\u7406\u3001CAD\u30013D \u88fd\u4f5c\u53ca\u5167\u5bb9\u751f\u7522\u6d41\u7a0b\uff1b\u5c0d\u53ea\u60f3\u5373\u6642\u4f7f\u7528\u55ae\u4e00\u8edf\u4ef6\u7684\u4f7f\u7528\u8005\uff0c\u5247\u8981\u5148\u78ba\u8a8d\u6240\u9700 CLI \u662f\u5426\u5df2\u5efa\u7acb\u53ca\u53ef\u7528\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/HKUDS\/CLI-Anything\" rel=\"noopener noreferrer\"><strong>GitHub<\/strong><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CLI-Anything \u628a\u5716\u50cf\u3001CAD\u30013D \u7b49\u8edf\u4ef6\u5305\u88dd\u6210\u53ef\u4f9b AI \u4ee3\u7406\u64cd\u4f5c\u7684 CLI\uff0c\u6253\u901a\u4ee3\u7406\u8207\u65e2\u6709\u5de5\u5177\u4e4b\u9593\u7684\u65b7\u5c64\u3002<\/p>\n","protected":false},"author":8,"featured_media":13909,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"wpai_generated_summary":"","wpai_meta_description":"","footnotes":""},"categories":[133,169,116,137,30,210,197,24,38,158,132,146,201],"tags":[],"class_list":["post-13910","post","type-post","status-publish","format-standard","hentry","category-133","category-169","category-agentic","category-api","category-image","category-worldactionmodel","category-framework","category-aisoftware","category-38","category-ide","category-3d","category-146","category-skill-"],"_links":{"self":[{"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/posts\/13910","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/comments?post=13910"}],"version-history":[{"count":1,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/posts\/13910\/revisions"}],"predecessor-version":[{"id":13912,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/posts\/13910\/revisions\/13912"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/media\/13909"}],"wp:attachment":[{"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/media?parent=13910"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/categories?post=13910"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infernews.com\/blog\/wp-json\/wp\/v2\/tags?post=13910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}