{ "version": "https://jsonfeed.org/version/1", "title": "\u5206\u4eab\u521b\u9020", "description": "\u6b22\u8fce\u4f60\u5728\u8fd9\u91cc\u53d1\u5e03\u81ea\u5df1\u7684\u6700\u65b0\u4f5c\u54c1\uff01", "home_page_url": "go/create", "feed_url": "feed/create.json", "icon": "https://cdn.v2ex.com/navatar/70ef/df2e/17_large.png?m=1660301119", "favicon": "https://cdn.v2ex.com/navatar/70ef/df2e/17_normal.png?m=1660301119", "items": [ { "author": { "url": "member/finekewei", "name": "finekewei", "avatar": "https://cdn.v2ex.com/avatar/b2ab/808f/637585_large.png?m=1688851676" }, "url": "t/1183876", "title": "\u5199\u4e86\u628a\u5728\u7ebf\u5c3a\u5b50\uff0c\u6d4b\u8bd5\u5927\u6a21\u578b coding \u80fd\u529b", "id": "t/1183876", "date_published": "2026-01-07T15:52:32+00:00", "content_html": "\u4f5c\u4e3a AI \u4ea7\u54c1\u7ecf\u7406\uff0c\u627e\u4e86\u4e2a\u7eaf\u524d\u7aef\u9700\u6c42\u770b\u770b\u73b0\u5728\u5927\u6a21\u578b\u7684\u80fd\u529b\uff0c\u5f00\u53d1\u4e86\u4e2a\u5728\u7ebf\u5c3a\u5b50
https://ruler.im \u65e0\u75db\u5f00\u53d1\u7684\u4e09\u5929\uff0c\u8d28\u91cf\u80fd\u5230 85 \u5206\u5de6\u53f3\uff0c\u5982\u679c\u6211\u81ea\u5df1\u5199\u4ee3\u7801\uff0c\u6709\u75db\u5199\u4ee3\u7801\u4f30\u8ba1\u5f97 10 \u5929" }, { "author": { "url": "member/wjs9092", "name": "wjs9092", "avatar": "https://cdn.v2ex.com/gravatar/e2fd645cb963e6e50944e505439f67fc?s=73&d=retro" }, "url": "t/1183844", "title": "\u7528 AI \u5f00\u53d1\u4e86\u4e00\u4e2a\u623f\u8d37\u8ba1\u7b97\u5668\uff08\u652f\u6301\u8f93\u5165\u5229\u7387\u8c03\u6574\u8bb0\u5f55\u548c\u63d0\u524d\u8fd8\u8d37\u8bb0\u5f55\uff09\uff0c\u9080\u8bf7\u5927\u5bb6\u4f53\u9a8c\u4e00\u4e0b\uff0c\u6b22\u8fce\u63d0 bug", "id": "t/1183844", "date_published": "2026-01-07T12:00:17+00:00", "content_html": "\u9274\u4e8e\u6ca1\u6709\u627e\u5230\u4e00\u4e2a\u7b26\u5408\u9700\u6c42\u7684\u623f\u8d37\u8ba1\u7b97\u5668\uff0c\u7528 AI \u5f00\u53d1\u4e86\u4e00\u4e2a\uff0c\u5730\u5740\uff1a https://calc.wjss.workers.dev/ \u3002

\u6211\u7684\u4e3b\u8981\u9700\u6c42\u5f88\u7b80\u5355\uff0c\u5c31\u662f\u6709\u4e00\u4e2a\u623f\u8d37\u8ba1\u7b97\u5668\uff0c\u80fd\u591f\u8ba1\u7b97\u51fa\u7684\u8fd8\u6b3e\u660e\u7ec6\uff0c\u4e0e\u94f6\u884c App \u91cc\u7684\u8fd8\u6b3e\u8bb0\u5f55\u4e00\u6a21\u4e00\u6837\u3002

\u76ee\u524d\u5f00\u53d1\u8fd9\u4e2a\u8ba1\u7b97\u5668\u57fa\u672c\u80fd\u6ee1\u8db3\u6211\u7684\u9700\u6c42\uff0c\u5e76\u4e14\u8865\u5145\u4e86\u94f6\u884c App \u91cc\u7684\u8fd8\u6b3e\u660e\u7ec6\u7f3a\u5c11\u4e00\u4e9b\u4fe1\u606f\uff0c\u6bd4\u5982\uff1a\u5229\u7387\u8c03\u6574\u7684\u65f6\u95f4\u70b9\u3001\u7d2f\u8ba1\u652f\u4ed8\u7684\u5229\u606f\u7b49\uff0c\u4ee5\u53ca\u94f6\u884c App \u4e0d\u80fd\u6a21\u62df\u63d0\u524d\u8fd8\u8d37\u4ee5\u53ca\u8ba1\u7b97\u8282\u7701\u5229\u606f\u7b49

\u6b22\u8fce\u5927\u5bb6\u4f53\u9a8c\uff0c\u9ed8\u8ba4\u6570\u636e\u662f\u662f\u6839\u636e\u62ff\u771f\u5b9e\u6848\u4f8b\u548c\u4e2d\u56fd\u94f6\u884c\u91cc\u7684\u8fd8\u6b3e\u660e\u7ec6\u505a\u8fc7\u6bd4\u5bf9\u6ca1\u95ee\u9898\u3002\u5982\u679c\u5927\u5bb6\u8f93\u5165\u7684\u6848\u4f8b\u53d1\u73b0\u6709\u7b97\u4e0d\u5bf9\u7684\uff0c\u6b22\u8fce\u63d0 bug \u3002\u5e0c\u671b bug \u91cc\u5305\u542b\uff1a \u8f93\u5165\u7684\u53c2\u6570\uff0c\u7b97\u9519\u7684\u5730\u65b9\u548c\u671f\u671b\u7ed3\u679c\u3002" }, { "author": { "url": "member/freefreesea", "name": "freefreesea", "avatar": "https://cdn.v2ex.com/avatar/e23c/c61e/402347_large.png?m=1766391073" }, "url": "t/1183839", "title": "\u5f00\u6e90\u70ed\u699c\u7ad9\u65b0\u589e\u4e86 [\u7cd6\u679c\u6307\u6570] \uff0c\u7edd\u5bf9\u662f\u5168\u7f51\u6700\u5ba2\u89c2\u771f\u5b9e\u7684\u70ed\u699c", "id": "t/1183839", "date_published": "2026-01-07T11:25:20+00:00", "content_html": "

\u70ed\u699c\u7ad9\u5730\u5740

\n

https://tgmeng.com

\n

\u699c\u5355\u6570\u636e\u6765\u6e90

\n\n

\u699c\u5355\u751f\u6210\u89c4\u5219

\n\n

\u699c\u5355\u65f6\u6548\u6027

\n\n

\u699c\u5355\u5ba2\u89c2\u6027\u771f\u5b9e\u6027

\n\n

AI \u6d88\u8017

\n\n

\u7f51\u7ad9\u7406\u5ff5

\n\n

\"\"

\n" }, { "author": { "url": "member/nocmt", "name": "nocmt", "avatar": "https://cdn.v2ex.com/gravatar/6640001960b888da54f3ea01bd2fcb2d?s=73&d=retro" }, "url": "t/1183829", "title": "[\u9001\u7801] \u7ed9 Quest3 \u7528\u7684\u5b89\u5353\u5b9e\u65f6\u7ffb\u8bd1\u5b57\u5e55\u8f6f\u4ef6\uff0c\u652f\u6301\u81ea\u5b9a\u4e49 API\uff0c\u63d0\u4f9b ASR \u540e\u7aef\u670d\u52a1\u4e8c\u8fdb\u5236\u6587\u4ef6", "id": "t/1183829", "date_published": "2026-01-07T10:35:25+00:00", "content_html": "

\u82b1\u8d39\u4e86\u597d\u51e0\u5929\u8fed\u4ee3\u4f18\u5316\uff0c\u81ea\u7528\u611f\u89c9\u53ef\u4ee5\u4e86\uff0c\u7ed9\u5927\u5bb6\u5206\u4eab\u4e00\u4e0b\uff0c\u9001 50 \u4e2a\u6c38\u4e45\u6fc0\u6d3b\u7801\u3002

\n

\u622a\u56fe\uff1a

\n

\"\"

\n

\u5b98\u7f51\uff1ahttps://subflowai.nocmt.com/

\n

\u529f\u80fd\uff1a

\n\n

\u6587\u6863\u5730\u5740\uff08\u5305\u542b\u8f6f\u4ef6\u4e0b\u8f7d\uff09\uff1ahttps://www.yuque.com/u5007695/za0zmx/kaecw73nq7pmgbpr?singleDoc# \u300a\u5b9e\u65f6\u5b57\u5e55\u7ffb\u8bd1\u8f6f\u4ef6\u914d\u7f6e\u6307\u5357\u300b \u5bc6\u7801\uff1ahsyu

\n

\u5151\u6362\u5730\u5740\uff1ahttps://redeem.ym.si/IUYUSL\n\u5151\u6362\u72b6\u6001\uff1a\"SubFlow

\n

[\u5c0f\u7ea2\u4e66\u6587\u7ae0\u94fe\u63a5] http://xhslink.com/o/9TgssCFrIsB\n[\u54d4\u54e9\u54d4\u54e9] https://b23.tv/8TScjKT

\n

\u6b22\u8fce\u70b9\u8d5e\u3001\u8bc4\u8bba\u3001\u8f6c\u53d1\uff0c\u8c22\u8c22\u3002

\n

\u53e6\u5916\u4e5f\u63a8\u8350\u4e00\u4e0b\u6211\u505a\u7684\u8de8\u5e73\u53f0\u540c\u6b65\u526a\u8d34\u677f\u8f6f\u4ef6 --\u70fd\u7fce\uff0c\u90fd\u5feb\u997f\u6b7b\u4e86~~ :(

\n" }, { "author": { "url": "member/Cheesen", "name": "Cheesen", "avatar": "https://cdn.v2ex.com/avatar/a254/9302/286232_large.png?m=1767779700" }, "url": "t/1183825", "date_modified": "2026-01-07T10:06:33+00:00", "content_html": "

\u5386\u7ecf\u4e24\u4e2a\u534a\u661f\u671f\uff0c\u7ec8\u4e8e\u8fce\u6765 v1.16 \u7248\u672c\u5566\uff0c\u73b0\u5728\u652f\u6301\u65f6\u949f\u4fee\u6539\u989c\u8272\u4e86\u3002

\n

GitHub \u5730\u5740 -> https://github.com/teojs/clock-dashboard

\n

\u5728\u7ebf\u9884\u89c8 -> https://teojs.github.io/clock-dashboard/

\n

\"1\"

\n", "date_published": "2026-01-07T10:05:43+00:00", "title": "[\u66f4\u65b0 v1.16.0] \u5c06\u65e7 iPad \u7269\u5c3d\u5176\u7528\uff0c\u6211\u628a\u5b83\u53d8\u6210\u4e86\u4e00\u4e2a\u667a\u80fd\u5929\u6c14\u65f6\u949f", "id": "t/1183825" }, { "author": { "url": "member/jonty", "name": "jonty", "avatar": "https://cdn.v2ex.com/avatar/b8ce/9f31/585950_large.png?m=1745484378" }, "url": "t/1183816", "date_modified": "2026-01-07T09:38:00+00:00", "content_html": "

\u7528\u8fc7 TeslaMate \u7684\u8f66\u53cb\u5e94\u8be5\u90fd\u77e5\u9053\uff0c\u5b83\u529f\u80fd\u5f88\u5f3a\u5927\uff0c\u4f46\u6709\u4e2a\u95ee\u9898\uff1a\u540e\u7aef\u662f Elixir \u5199\u7684\uff0c\u4ee3\u7801\u770b\u4e0d\u61c2\u3002\u6211\u60f3\u505a\u7684\u4e8b\u60c5\u5f88\u7b80\u5355\uff1a\u6362\u6389 Grafana \u9762\u677f\uff0c\u505a\u4e00\u4e2a\u66f4\u73b0\u4ee3\u5316\u7684\u524d\u7aef\u3002\u7ed3\u679c\u6253\u5f00 TeslaMate \u6e90\u7801\u4e00\u770b\u2014\u2014\u5b8c\u5168\u4e0d\u77e5\u9053\u4ece\u54ea\u4e0b\u624b\u3002\u6240\u4ee5\u6211\u5728 ai \u534f\u52a9\u4e0b\uff0c\u7528 Go \u91cd\u5199\u4e86\u540e\u7aef\u3002

\n

tesgazer \u662f\u4ec0\u4e48\n\u4e00\u4e2a\u53ef\u8bfb\u3001\u53ef\u6539\u3001\u53ef\u6269\u5c55\u7684 Tesla \u6570\u636e\u8bb0\u5f55\u5668\u540e\u7aef\u3002

\n

\u6838\u5fc3\u80fd\u529b\n:automobile: \u884c\u7a0b\u8bb0\u5f55\uff08\u8f68\u8ff9\u3001\u8ddd\u79bb\u3001\u80fd\u8017\uff09

\n

:high_voltage: \u5145\u7535\u8bb0\u5f55\uff08\u529f\u7387\u66f2\u7ebf\u3001\u8d39\u7528\u8ba1\u7b97\uff09

\n

:sleeping_face: \u667a\u80fd\u4f11\u7720\uff08\u4e0d\u5438\u8840\uff0c\u8f66\u8f86\u8be5\u7761\u5c31\u7761\uff09

\n

:satellite_antenna: Streaming API \uff08\u4e9a\u79d2\u7ea7\u5524\u9192\u68c0\u6d4b\uff09

\n

:open_book: \u4ee3\u7801\u4f60\u770b\u5f97\u61c2

\n

\u4e3a\u4ec0\u4e48\u5f00\u6e90\u540e\u7aef\uff0c\u524d\u7aef\u8fd8\u6ca1\u5f00\u6e90\uff1f\n\u56e0\u4e3a\u524d\u7aef\u4ee3\u7801\u80fd\u529b\u4e3a 0 \uff0c\u8bd5\u56fe\u7528 cc/gemini3pro \u5199\uff0c\u4f46\u662f\u6548\u679c\u90fd\u4e0d\u592a\u7406\u60f3\uff0c\u6240\u4ee5\u6211\u5e0c\u671b\u793e\u533a\u4e00\u8d77\u53c2\u4e0e\uff0c\u540e\u7aef API \u6587\u6863\u5df2\u7ecf\u5199\u597d\u4e86\uff0c\u6b22\u8fce\u6765\u9020\u8f6e\u5b50\u3002

\n

\u94fe\u63a5\nGitHub: https://github.com/langchou/tesgazer

\n

\u8bb8\u53ef\u8bc1: GPL-3.0

\n

\u7075\u611f\u6765\u6e90: TeslaMate :heart:

\n", "date_published": "2026-01-07T09:28:24+00:00", "title": "[\u5f00\u6e90\u81ea\u8350] tegazer\uff0c\u6211\u4e3a\u4ec0\u4e48\u91cd\u5199\u4e86 teslamate \u540e\u7aef", "id": "t/1183816" }, { "author": { "url": "member/Plugcamp", "name": "Plugcamp", "avatar": "https://cdn.v2ex.com/avatar/b56e/0d38/770367_large.png?m=1760411145" }, "url": "t/1183811", "title": "[Show V2EX] Printery \u66f4\u65b0\uff1a 3 \u4e2a\u6708\u540e\u7684\u6570\u636e\u548c\u91cd\u5927\u6539\u8fdb\uff08\u539f Print for Figma\uff09", "id": "t/1183811", "date_published": "2026-01-07T09:19:15+00:00", "content_html": "

\u5927\u5bb6\u597d\uff0c

\n

\u4e4b\u524d\u5728 V2EX \u5206\u4eab\u8fc7\u6211\u505a\u7684 Figma CMYK \u5bfc\u51fa\u63d2\u4ef6\uff08 t/1168846 \uff09\uff0c\u5f53\u65f6\u53eb Print for Figma \u3002\u611f\u8c22\u5927\u5bb6\u7684\u652f\u6301\u548c\u53cd\u9988\uff01

\n

3 \u4e2a\u6708\u8fc7\u53bb\u4e86\uff0c\u4eca\u5929\u60f3\u548c\u5927\u5bb6\u5206\u4eab\u4e00\u4e0b\u4ea7\u54c1\u7684\u6f14\u53d8\u548c\u4e00\u4e9b\u6709\u8da3\u7684\u6570\u636e\u3002

\n

\ud83d\udcca \u8fd9 3 \u4e2a\u6708\u53d1\u751f\u4e86\u4ec0\u4e48

\n

\u7ecf\u8fc7\u6301\u7eed\u8fed\u4ee3\uff0c\u6211\u4eec\uff1a

\n\n

\ud83d\udd04 \u4e3b\u8981\u66f4\u65b0

\n

1. \u54c1\u724c\u5347\u7ea7\uff1aPrint for Figma \u2192 Printery

\n

\u6700\u521d\u8d77\u540d Print for Figma \u662f\u60f3\u76f4\u63a5\u4f20\u8fbe\u529f\u80fd\uff0c\u4f46\u540e\u6765\u53d1\u73b0\uff1a

\n\n

\u6240\u4ee5\u91cd\u65b0\u8bbe\u8ba1\u4e86\u54c1\u724c\uff0c\u5347\u7ea7\u4e3a Printery\uff08\u5370\u5237\u5382\u7684\u610f\u601d\uff09\uff0c\u6709\u4e86\u65b0\u5b98\u7f51\uff1ahttps://www.printery.app

\n

2. CMYK \u8f6c\u6362\u7b97\u6cd5\u4f18\u5316

\n

\u6536\u5230\u6700\u591a\u7684\u53cd\u9988\u662f\u5173\u4e8e CMYK \u8272\u5f69\u51c6\u786e\u5ea6\u3002\u5f88\u591a\u8bbe\u8ba1\u5e08\u53cd\u9988\uff1a

\n\n

\u6539\u8fdb\uff1a

\n\n

3. \u6027\u80fd\u5927\u5e45\u63d0\u5347

\n

\u4e4b\u524d\u5bfc\u51fa\u591a\u9875 PDF \uff08\u6bd4\u5982 50 \u9875\u7684\u753b\u518c\uff09\u4f1a\u6bd4\u8f83\u6162\uff0c\u73b0\u5728\uff1a

\n\n

4. \u65b0\u589e\u9ad8\u9891\u9700\u6c42\u529f\u80fd

\n\n

\ud83d\udca1 \u4e00\u4e9b\u610f\u5916\u7684\u53d1\u73b0

\n

\u4f7f\u7528\u573a\u666f\u6bd4\u60f3\u8c61\u7684\u5e7f

\n

\u6700\u521d\u4ee5\u4e3a\u4e3b\u8981\u7528\u6237\u662f\u5e73\u9762\u8bbe\u8ba1\u5e08\uff0c\u4f46\u5b9e\u9645\u6536\u5230\u7684\u53cd\u9988\u663e\u793a\uff1a

\n\n

\u6700\u5e38\u89c1\u7684\u95ee\u9898

\n
    \n
  1. \"CMYK \u8f6c\u6362\u51c6\u786e\u5417\uff1f\"\uff08\u5df2\u4f18\u5316\uff09
  2. \n
  3. \"\u652f\u6301 Pantone \u4e13\u8272\u5417\uff1f\"\uff08\u652f\u6301\uff09
  4. \n
  5. \"\u80fd\u5bfc\u51fa\u7b26\u5408\u5370\u5237\u6807\u51c6\u7684 PDF/X \u5417\uff1f\"\uff08\u652f\u6301 PDF/X-1a:2001 \uff09
  6. \n
  7. \"\u53ef\u4ee5\u8bbe\u7f6e\u51fa\u8840\u5417\uff1f\"\uff08\u53ef\u4ee5\u81ea\u5b9a\u4e49\uff09
  8. \n
\n

\u9047\u5230\u7684\u6280\u672f\u6311\u6218

\n

\u6700\u5927\u7684\u6311\u6218\u662f Figma API \u7684\u9650\u5236\uff1a

\n\n

\u89e3\u51b3\u65b9\u6848\u662f\u81ea\u5df1\u5b9e\u73b0\u4e86\u4e00\u5957 RGB \u2192 CMYK \u8f6c\u6362\u5f15\u64ce\uff0c\u5e76\u4e14\u652f\u6301 ICC \u914d\u7f6e\u6587\u4ef6\u3002

\n

\ud83c\udfaf \u63a5\u4e0b\u6765\u7684\u8ba1\u5212

\n

\u57fa\u4e8e\u7528\u6237\u53cd\u9988\uff0c\u6b63\u5728\u5f00\u53d1\uff1a

\n\n

\ud83d\udd17 \u94fe\u63a5

\n\n

\ud83d\ude4f \u611f\u8c22

\n

\u7279\u522b\u611f\u8c22 V2EX \u793e\u533a\u7684\u652f\u6301\uff0c\u5c24\u5176\u662f @xnplus \u4e4b\u524d\u63d0\u5230\u7684\u57df\u540d\u5efa\u8bae\uff08\u6211\u4eec\u786e\u5b9e\u6ce8\u518c\u4e86 .app \u57df\u540d \ud83d\ude04\uff09\u3002

\n

\u5982\u679c\u4f60\u662f\u8bbe\u8ba1\u5e08\u6216\u8005\u7ecf\u5e38\u9700\u8981\u5904\u7406\u5370\u5237\u6587\u4ef6\uff0c\u6b22\u8fce\u8bd5\u7528\u5e76\u7ed9\u6211\u53cd\u9988\u3002\u6709\u4efb\u4f55\u95ee\u9898\u6216\u5efa\u8bae\u90fd\u53ef\u4ee5\u5728\u8bc4\u8bba\u91cc\u8ba8\u8bba\uff01

\n
\n

P.S. \u5982\u679c\u4f60\u5728\u7528 Figma \u505a\u9700\u8981\u5370\u5237\u7684\u8bbe\u8ba1\uff0c\u9047\u5230\u8fc7\u4ec0\u4e48\u75db\u70b9\uff1f\u5f88\u60f3\u542c\u542c\u5927\u5bb6\u7684\u60f3\u6cd5\u3002

\n" }, { "author": { "url": "member/weishu", "name": "weishu", "avatar": "https://cdn.v2ex.com/avatar/1694/7b4b/137493_large.png?m=1685681033" }, "url": "t/1183809", "date_modified": "2026-01-07T09:59:38+00:00", "content_html": "

https://www.producthunt.com/products/hapi-2?launch=hapi-3

\n

\u6b22\u8fce\u4f7f\u7528\uff0c\u4e00\u8d77\u5171\u5efa~

\n", "date_published": "2026-01-07T09:12:37+00:00", "title": "\u8fdc\u7a0b\u4f7f\u7528 Claude Code / Codex \u7684\u5e94\u7528\u4e0a\u7ebf PH \u4e86", "id": "t/1183809" }, { "author": { "url": "member/realdexter1224", "name": "realdexter1224", "avatar": "https://cdn.v2ex.com/avatar/f2f0/f201/782347_large.png?m=1767775516" }, "url": "t/1183807", "title": "[\u5f00\u6e90] RepoReaper\uff1a\u4e00\u4e2a\u80fd\u8bfb\u61c2 GitHub \u9879\u76ee\u67b6\u6784\u7684 Agent\uff0c\u652f\u6301 AST \u89e3\u6790\u4e0e JIT \u52a8\u6001\u6293\u53d6", "id": "t/1183807", "date_published": "2026-01-07T09:02:25+00:00", "content_html": "

GitHub: https://github.com/tzzp1224/reporeaper

\n

\u8fd9\u662f\u4e00\u4e2a\u6a21\u4eff\u9ad8\u7ea7\u5de5\u7a0b\u5e08\u8ba4\u77e5\u6a21\u5f0f\u7684 GitHub \u4ee3\u7801\u5ba1\u8ba1\u5de5\u5177\uff0c\u65e8\u5728\u89e3\u51b3\u4f20\u7edf RAG \u903b\u8f91\u7834\u788e\u7684\u95ee\u9898\u3002

\n

\u6838\u5fc3\u7279\u6027\uff1a

\n
    \n
  1. \n

    \u62df\u4eba\u5316\u601d\u7ef4\uff1a\u6a21\u62df\u67b6\u6784\u5e08\u201c\u5148\u770b\u76ee\u5f55\u3001\u518d\u8bfb\u6838\u5fc3\u3001\u6700\u540e\u6263\u7ec6\u8282\u201d\u7684\u9605\u8bfb\u987a\u5e8f\uff0c\u5206\u6b65\u6784\u5efa\u9879\u76ee\u8ba4\u77e5\uff0c\u975e\u76f2\u76ee\u704c\u5165\u4e0a\u4e0b\u6587\u3002

    \n
  2. \n
  3. \n

    AST \u8bed\u4e49\u5207\u7247\uff1a\u57fa\u4e8e\u8bed\u6cd5\u6811\u6309 Class/Method \u8fb9\u754c\u5207\u5206\u5e76\u6ce8\u5165\u7236\u7c7b\u4e0a\u4e0b\u6587\uff0c\u5f7b\u5e95\u62d2\u7edd\u6587\u672c\u66b4\u529b\u622a\u65ad\u9020\u6210\u7684\u903b\u8f91\u4e22\u5931\u3002

    \n
  4. \n
  5. \n

    JIT \u52a8\u6001\u52a0\u8f7d\uff1aReAct \u9a71\u52a8\u7684 Cache Miss \u673a\u5236\uff0c\u5728\u5206\u6790\u4e2d\u53d1\u73b0\u4e0a\u4e0b\u6587\u7f3a\u5931\u65f6\uff0c\u4f1a\u81ea\u52a8\u53bb GitHub \u6293\u53d6\u4f9d\u8d56\u6587\u4ef6\u8865\u5168\u3002

    \n
  6. \n
  7. \n

    \u6df7\u5408\u68c0\u7d22\uff1a\u878d\u5408 Vector \u8bed\u4e49\u641c\u7d22\u4e0e BM25 \u5173\u952e\u8bcd\u5339\u914d\uff0c\u786e\u4fdd\u6a21\u7cca\u903b\u8f91\u6982\u5ff5\u548c\u5177\u4f53\u51fd\u6570\u540d\u5747\u80fd\u7cbe\u51c6\u5b9a\u4f4d\u3002

    \n
  8. \n
  9. \n

    \u9ad8\u6027\u80fd\u4e0e\u53ef\u89c6\u5316\uff1a\u57fa\u4e8e FastAPI+AsyncIO \u5b9e\u73b0\u5168\u94fe\u8def\u5f02\u6b65\u5e76\u53d1\u4e0e\u672c\u5730\u6301\u4e45\u5316\uff0c\u652f\u6301\u8f93\u51fa Mermaid \u67b6\u6784\u56fe\u4e0e\u8868\u683c\u3002

    \n
  10. \n
\n

\u5728\u7ebf Demo \u5165\u53e3\u89c1 README \uff0c\u652f\u6301 Docker \u4e00\u952e\u90e8\u7f72\uff0c\u6b22\u8fce Star \uff01\u4e5f\u6b22\u8fce\u5927\u5bb6\u63d0\u5efa\u8bae\u548c\u5e2e\u5fd9\u6307\u70b9 \uff01

\n" }, { "author": { "url": "member/wdxhl", "name": "wdxhl", "avatar": "https://cdn.v2ex.com/avatar/fb8d/64c7/280124_large.png?m=1767774141" }, "url": "t/1183806", "date_modified": "2026-01-07T09:10:11+00:00", "content_html": "

\u672c\u9879\u76ee (Q-Solver) \u4ec5\u4f9b\u6280\u672f\u7814\u7a76\u3001\u5b66\u4e60\u4ea4\u6d41\u53ca\u4e2a\u4eba\u6548\u7387\u63d0\u5347\u4f7f\u7528\u3002

\n

\u5927\u5bb6\u597d\uff0c\u6700\u8fd1\u7528 Go + Wails + Vue3 \u5f00\u53d1\u4e86\u4e00\u6b3e\u684c\u9762\u7aef AI \u8f85\u52a9\u5de5\u5177 \u2014\u2014 Q-Solver\u3002

\n

\ud83d\udd25 \u4e3a\u4ec0\u4e48\u505a\u8fd9\u4e2a\u5de5\u5177\uff1f

\n

\u5728\u9700\u8981 \u4e00\u8fb9\u770b\u9898/\u770b\u6587\u6863\uff0c\u4e00\u8fb9\u6c42\u52a9 AI \u7684\u573a\u666f\u4e0b\uff08\u6bd4\u5982\u5728\u7ebf\u7b14\u8bd5\u3001\u751a\u81f3\u662f\u8fdc\u7a0b\u9762\u8bd5\uff09\uff0c\u9891\u7e41\u5207\u6362\u7a97\u53e3\u975e\u5e38\u9ebb\u70e6\u3002\u6240\u4ee5\u6211\u505a\u4e86\u4e00\u4e2a\u684c\u9762 Copilot \u3002

\n

\u2728 \u529f\u80fd

\n
    \n
  1. \n

    \ud83d\udee1\ufe0f \u771f\u6b63\u7684\u9690\u8eab\u6a21\u5f0f (Stealth Mode)

    \n\n
  2. \n
  3. \n

    \ud83c\udf99\ufe0f \u96c6\u6210\u6700\u65b0 Gemini Live API (\u5b9e\u9a8c\u6027)

    \n\n
  4. \n
  5. \n

    \ud83d\udcc4 \u7b80\u5386/\u4e0a\u4e0b\u6587\u611f\u77e5

    \n\n
  6. \n
\n

\ud83d\udc40 \u9884\u89c8

\n

\"Q-Solver

\n

\ud83d\udd17 \u4ed3\u5e93\u5730\u5740

\n

GitHub: https://github.com/jym66/Q-Solver

\n", "date_published": "2026-01-07T09:00:33+00:00", "title": "\u7528 Go + Wails \u5199\u4e86\u4e00\u6b3e\"\u9690\u5f62\"\u7b14\u8bd5\u52a9\u624b Q-Solver", "id": "t/1183806" }, { "author": { "url": "member/Jay", "name": "Jay", "avatar": "https://cdn.v2ex.com/avatar/a87f/f679/4_large.png?m=1767395577" }, "url": "t/1183801", "date_modified": "2026-01-07T09:59:31+00:00", "content_html": "https://www.producthunt.com/products/yolog-dev-desktop

\u6b22\u8fce\u5927\u5bb6\u652f\u6301\uff0c\u591a\u63d0\u5b9d\u8d35\u610f\u89c1\u3002", "date_published": "2026-01-07T08:46:00+00:00", "title": "\u4eca\u5929\u6211\u7684\u65b0\u5e94\u7528\u4e0a\u7ebf PH \u4e86", "id": "t/1183801" }, { "author": { "url": "member/dreamOfLanpangzi", "name": "dreamOfLanpangzi", "avatar": "https://cdn.v2ex.com/gravatar/85d95e128193c56b3c7fe451f77179fa?s=73&d=retro" }, "url": "t/1183782", "title": "\u9762\u5bf9\u9762\u81ea\u4e60\u5ba4-\u5728\u7ebf\u81ea\u4e60\u5ba4&\u4e91\u540c\u684c&\u5b66\u4e60\u89c6\u9891\u6253\u5361\u5229\u5668", "id": "t/1183782", "date_published": "2026-01-07T07:52:33+00:00", "content_html": "

\u5b66\u4e60\u4e4b\u8def\u5927\u591a\u65f6\u5019\u603b\u662f\u5b64\u72ec\u4e0e\u8270\u8f9b\u7684\uff0c\u6211\u4eec\u66f4\u591a\u65f6\u5019\u5728\u8e3d\u8e3d\u72ec\u884c\uff0c\u5076\u7136\u62ac\u5934\uff0c\u80fd\u53d1\u73b0\u539f\u6765\u8fd8\u6709\u90a3\u4e48\u591a\u4eba\u4e00\u8d77\u5728\u6210\u957f\u9010\u68a6\u7684\u8def\u4e0a\uff0c\u7ed3\u4f34\u800c\u884c\uff0c\u672c\u8eab\u5c31\u662f\u4ef6\u5f88\u6e29\u6696\u548c\u9f13\u821e\u4eba\u5fc3\u7684\u4e8b\u60c5\u3002\u9762\u5bf9\u9762\u81ea\u4e60\u5ba4\u5c31\u60f3\u505a\u8fd9\u6837\u4e00\u4ef6\u6e29\u6696\u7684\u4e8b\u60c5\u3002

\n

\u4e3a\u4e86\u4fdd\u8bc1\u81ea\u4e60\u7684\u6d3b\u4eba\u611f\uff0c\u6211\u4eec\u53ef\u4ee5\u5728\u5c0f\u7ec4\u81ea\u4e60\u4e2d\u770b\u5230\u4e00\u8d77\u5b66\u4e60\u7684\u5c0f\u4f19\u4f34\uff0c\u5e76\u4e14\uff0c\u4e3a\u4e86\u5b66\u4e60\u4e0d\u88ab\u6253\u6270\uff0c\u6211\u4eec\u5e76\u4e0d\u4f1a\u5bf9\u5f00\u542f\u8bed\u97f3\uff0c\u53ea\u662f\u6bcf\u9694 30s \u5237\u65b0\u81ea\u4e60\u753b\u9762\u3002\n

\n

\u89c6\u9891\u5b66\u4e60\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u81ea\u52a8\u751f\u6210\u4e00\u5c0f\u6bb5\u5b66\u4e60 vlog \uff0c\u5982\u679c\u4f60\u662f\u8868\u6f14\u578b\u4eba\u683c\uff0c\u5e94\u8be5\u4f1a\u559c\u6b22\u4e0a\u8fd9\u4e2a\u529f\u80fd\u3002

\n\n\n

\u540c\u65f6\u6211\u4eec\u4e5f\u4f1a\u6709\u5b66\u4e60\u8f6f\u4ef6\u5fc5\u6709\u7684\u4e00\u4e9b\u529f\u80fd\uff0c\u5468\u8ba1\u5212\uff0c\u6708\u8ba1\u5212\uff0c\u8fd8\u80fd\u8fdb\u884c\u5b66\u4e60\u6570\u636e\u7edf\u8ba1\uff0c\u5b66\u4e60\u603b\u7ed3\u3002

\n

\u5e76\u4e14\u603b\u7ed3\u8fd8\u662f\u4ee5\u7ffb\u4e66\u5f0f\u7684\u624b\u8d26\u5f62\u5f0f\u3002\n

\n

\u4e0b\u8f7d\u5730\u5740

\n

https://apps.apple.com/cn/app/%E9%9D%A2%E5%AF%B9%E9%9D%A2%E8%87%AA%E4%B9%A0%E5%AE%A4-%E6%9E%81%E7%AE%80%E5%BE%85%E5%8A%9E%E4%B8%93%E6%B3%A8%E8%87%AA%E4%B9%A0%E5%AE%A4%E7%95%AA%E8%8C%84%E8%AE%A1%E6%97%B6%E5%99%A8%E6%97%B6%E9%97%B4%E7%AE%A1%E7%90%86/id6739164219

\n" }, { "author": { "url": "member/xiaolu627666", "name": "xiaolu627666", "avatar": "https://cdn.v2ex.com/avatar/d7f6/da09/769760_large.png?m=1767770693" }, "url": "t/1183772", "date_modified": "2026-01-07T07:26:48+00:00", "content_html": "

\u672c\u6765\u53ea\u662f\u60f3\u7ed9\u81ea\u5df1\u6362\u4e2a\u58c1\u7eb8\u3002\n\u7ed3\u679c\uff0c\u4e00\u4e0d\u5c0f\u5fc3\u628a\u5751\u8d8a\u6316\u8d8a\u6df1\ud83d\ude42

\n

\u4e8b\u60c5\u5927\u6982\u662f\u8fd9\u6837\u7684\uff1a

\n

\u4e4b\u524d\u6362\u58c1\u7eb8\u7684\u65f6\u5019\uff0c\u60f3\u627e\u4e00\u70b9 \u7c89\u8272\u7cfb\u3001\u597d\u770b\u3001\u4e0d\u571f\u3001\u6ca1\u6c34\u5370 \u7684\u58c1\u7eb8\u3002\n\u53bb\u5404\u5927\u7f51\u7ad9\u8f6c\u4e86\u4e00\u5708\uff0c\u53d1\u73b0\u4e0d\u662f\u5e7f\u544a\u591a\uff0c\u5c31\u662f\u753b\u98ce\u707e\u96be\uff0c\u6216\u8005\u8981\u767b\u9646\u4e0b\u8f7d\u3002

\n

\u540e\u6765\u5e72\u8106\u81ea\u5df1\u53bb\u627e\u56fe\u3001\u81ea\u5df1\u4fee\u3001\u81ea\u5df1\u88c1\u3002\n\u65f6\u95f4\u4e00\u957f\uff0c\u53d1\u73b0\u6211\u672c\u5730\u6587\u4ef6\u5939\u91cc\u5df2\u7ecf\u6709\u4e00\u5927\u5806\u7c89\u8272\u58c1\u7eb8\u4e86\u2026

\n

\u4e8e\u662f\u52a8\u4e86\u4e2a\u6b6a\u8111\u7b4b\uff1a\n\ud83d\udc49 \u8981\u4e0d\u6211\u628a\u8fd9\u4e9b\u6574\u7406\u4e00\u4e0b\uff0c\u505a\u6210\u4e00\u4e2a\u7f51\u7ad9\u7b97\u4e86\uff1f

\n

\u7136\u540e\u4e8b\u60c5\u5c31\u53d8\u6210\u73b0\u5728\u8fd9\u6837\u4e86\uff1a

\n

PinkCanvas\uff1a\u7c89\u8272\u58c1\u7eb8\u8d44\u6e90\u7ad9\nhttps://pinkcanvas.net\n\uff08\u6ca1\u5e7f\u544a\uff0c\u53ef\u4ee5\u968f\u4fbf\u901b\uff09

\n

\u76ee\u524d\u7f51\u7ad9\u5927\u6982\u6709\u8fd9\u4e9b\u529f\u80fd\uff1a\n\u2022\ud83d\udce5 \u624b\u673a / \u5e73\u677f / \u684c\u9762\u58c1\u7eb8\u4e00\u952e\u4e0b\u8f7d\n\u2022\ud83d\uddbc\ufe0f \u5206\u7c7b\uff1a\u53ef\u7231\u3001\u6781\u7b80\u3001\u82b1\u3001\u8d28\u611f\u3001\u68a6\u5e7b\u8fd9\u4e9b\n\u2022\ud83e\udd16 \u53ef\u4ee5\u7528 AI \u751f\u6210\u7c89\u8272\u58c1\u7eb8\n\u2022\ud83d\udee0\ufe0f \u4e5f\u53ef\u4ee5\u5728\u73b0\u6709\u58c1\u7eb8\u7684\u57fa\u7840\u4e0a\u7528 AI \u6539\n\u2022\ud83d\udce6 \u652f\u6301 4K

\n

\u8bf4\u51e0\u4e2a\u771f\u5b9e\u60c5\u51b5\uff1a\n\u2022\u8fd9\u4e2a\u7ad9\u4e0d\u662f\u5927\u5382\u80cc\u666f\uff0c\u5c31\u662f\u6211\u4e00\u4e2a\u4eba\u8fb9\u5b66\u8fb9\u505a\uff0c\u7b2c\u4e00\u6b21\u505a\u8fd9\u79cd\u590d\u6742\u7684\u7ad9\uff0c\u6574\u4e86\u4e00\u4e2a\u6708\u624d\u4e0a\u7ebf...\n\u2022UI \u6211\u5c3d\u91cf\u505a\u5f97\u201c\u522b\u592a\u50cf\u7a0b\u5e8f\u5458\u81ea\u5df1\u753b\u7684\u90a3\u79cd\u201d\ud83d\ude02\n\u2022\u670d\u52a1\u5668\u548c API \u94b1\u90fd\u662f\u81ea\u5df1\u5728\u638f\uff0c\u6240\u4ee5\u8bbe\u7f6e\u6210\u4e86\u6536\u8d39\u7684\uff0c\u4f46\u662f\u6709\u767b\u9646\u514d\u8d39\u4f53\u9a8c\uff0c\u666e\u901a\u58c1\u7eb8\u4e5f\u662f\u514d\u8d39\u65e0\u9650\u4e0b\u8f7d\u7684

\n

\u4e5f\u9047\u5230\u4e0d\u5c11\u5751\uff1a\n\u2022\tAI \u751f\u6210\u4e00\u5806\u5947\u602a\u751f\u7269\u548c\u8be1\u5f02\u624b\u6307\n\u2022\t\u67d0\u4e9b\u5730\u533a\u7684 CDN \u6b7b\u6162\n\u2022\t4K \u56fe\u592a\u5927\uff0c\u7ecf\u5e38\u628a\u81ea\u5df1\u5e26\u5bbd\u6253\u7206\n\u2022\t\u7b2c\u4e00\u6b21\u88ab\u4eba\u95ee\u201c\u8fd9\u4e2a\u80fd\u4e0d\u80fd\u5546\u7528\u201d\u7684\u65f6\u5019\u6211\u751a\u81f3\u6123\u4f4f\u4e86

\n

\u5982\u679c\u4f60\u521a\u597d\uff1a\n\u2022\t\u559c\u6b22\u7c89\u8272\n\u2022\t\u559c\u6b22\u5e72\u51c0\u7684\u8bbe\u8ba1\n\u2022\t\u60f3\u6298\u817e\u624b\u673a\u3001\u7535\u8111\u684c\u9762\n\u2022\t\u6216\u8005\u7eaf\u7cb9\u60f3\u770b\u770b\u522b\u4eba\u778e\u6298\u817e\u7684\u9879\u76ee

\n

\u53ef\u4ee5\u53bb\u73a9\u73a9\uff0c\u987a\u624b\u7ed9\u70b9\u5efa\u8bae\u66f4\u597d\uff1a

\n

\ud83d\udc49 \u7ad9\u70b9\u5730\u5740\nhttps://pinkcanvas.net

\n

\u5982\u679c\u4f60\u89c9\u5f97\u54ea\u5757\u5f88\u7cdf\u7cd5\u3001\u5f88\u571f\u3001\u4f53\u9a8c\u5f88\u70c2\n\u4e5f\u6b22\u8fce\u76f4\u63a5\u55b7\uff0c\u6211\u4f1a\u8ba4\u771f\u6539\uff0c\u771f\u7684

\n

\u5b8c\u3002\n\u6211\u7ee7\u7eed\u4fee bug \u4e86\ud83d\ude42

\n", "date_published": "2026-01-07T07:25:25+00:00", "title": "\u672c\u6765\u53ea\u662f\u60f3\u7ed9\u81ea\u5df1\u6362\u4e2a\u58c1\u7eb8\uff0c\u7ed3\u679c\u6574\u51fa\u4e86\u4e2a\u7c89\u8272\u58c1\u7eb8\u96c6\u5408\u7ad9", "id": "t/1183772" }, { "author": { "url": "member/wszzh", "name": "wszzh", "avatar": "https://cdn.v2ex.com/avatar/ef44/91cb/554353_large.png?m=1715330308" }, "url": "t/1183742", "title": "\u505a\u4e86\u4e00\u4e2a\u975e AI \u7684\u5de5\u5177\uff0c\u7528\u4e8e\u5c06\u7535\u5b50\u7167\u7247\u88c1\u526a\u6210\u62a4\u7167\u5c3a\u5bf8\u3002", "id": "t/1183742", "date_published": "2026-01-07T06:09:53+00:00", "content_html": "

\u53bb\u8d8a\u5357\u7684\u65f6\u5019\uff0c\u56e0\u4e3a\u5b8c\u5168\u4e0d\u4f1a ps \uff0c\u88ab\u62a4\u7167\u5c3a\u5bf8\uff0c\u7b7e\u8bc1\u7167\u7247\uff0c\u5f04\u7684\u5934\u75bc\uff0c\u4e8e\u662f\u505a\u4e86\u4e00\u4e2a\u7b80\u5355\u7684\u5de5\u5177\u3002

\n

1.\u53ea\u9700\u8981\u4e0a\u4f20\u7535\u5b50\u7167\n2.\u88c1\u526a\u6210\u62a4\u7167\u6240\u9700\u5c3a\u5bf8\n3.\u4e0b\u8f7d\u5355\u5f20\u56fe\u7247\uff0c\u6216\u4e0b\u8f7d\u6253\u5370\u6392\u7248

\n

https://passportsizephoto.net

\n" }, { "author": { "url": "member/guiyumin", "name": "guiyumin", "avatar": "https://cdn.v2ex.com/avatar/b03c/324e/527486_large.png?m=1746207275" }, "url": "t/1183737", "date_modified": "2026-01-07T05:56:18+00:00", "content_html": "

\u5404\u4f4d\u597d

\n

vget v0.12.1 \u53d1\u5e03\u4e86

\n

https://github.com/guiyumin/vget

\n

https://vget.io

\n

\u8fd9\u4e00\u7248\uff0c\u6709\u4e00\u4e2a\u91cd\u5927\u7684\u66f4\u65b0\uff1a \u8bed\u97f3\u8f6c\u6587\u5b57\uff0c\u82f1\u6587\u662f speech to text \uff0c\u6216\u8005\u662f Automatic Speech Recognition \uff08 ASR \uff09

\n

\u9996\u5148\uff0c\u4f60\u53ef\u4ee5\u7528 vget \u4e0b\u8f7d\u89c6\u9891\uff0c\u6216\u8005\u64ad\u5ba2

\n

\u7136\u540e\u4f7f\u7528\u8bed\u97f3\u8f6c\u6587\u5b57\u529f\u80fd\uff0c\u8f6c\u5f55\u4e3a\u5e26\u6709\u65f6\u95f4\u6233\u7684\u6587\u672c

\n

\u4e0b\u4e00\u6b65\uff0c\u4f60\u53ef\u4ee5\u7ee7\u7eed\u7528 openai api \u6765\u603b\u7ed3\u4e00\u4e0b\uff0c\u5f53\u7136\uff0c\u4e5f\u53ef\u4ee5\u590d\u5236\u7c98\u8d34\u53bb\u5176\u4ed6 ai \u505a\u4e00\u4e0b\u603b\u7ed3

\n

\u76ee\u524d\u652f\u6301\u7684\u5927\u6a21\u578b\u662f\u8fd9\u4e9b\uff1a

\n\n

\u547d\u4ee4\u884c\u4f7f\u7528

\n

\u5728 CLI \u4e2d\u4f7f\u7528 vget ai transcribe \u547d\u4ee4\u5373\u53ef\u8fdb\u884c\u8bed\u97f3\u8f6c\u6587\u5b57\uff1a

\n
# \u57fa\u7840\u7528\u6cd5\uff1a\u8f6c\u5199\u97f3\u9891\u6587\u4ef6\uff0c\u9ed8\u8ba4\u8f93\u51fa Markdown \u683c\u5f0f\nvget ai transcribe ./recording.mp3\n\n# \u6307\u5b9a\u8bed\u8a00\uff1a\u4f7f\u7528 -l \u53c2\u6570\u6307\u5b9a\u97f3\u9891\u8bed\u8a00\nvget ai transcribe -l zh ./interview.mp3\n\n# \u8f93\u51fa\u5b57\u5e55\u6587\u4ef6\uff1a\u4f7f\u7528 -o \u53c2\u6570\u6307\u5b9a\u8f93\u51fa\u4e3a SRT \u683c\u5f0f\nvget ai transcribe -l zh ./podcast.mp3 -o podcast.srt\n\n# \u8f6c\u5199\u89c6\u9891\u6587\u4ef6\uff1a\u81ea\u52a8\u63d0\u53d6\u97f3\u9891\u540e\u8fdb\u884c\u8f6c\u5199\nvget ai transcribe -l en ./lecture.mp4 -o lecture.srt\n
\n

Docker Web \u754c\u9762

\n

\u5728 Docker \u90e8\u7f72\u7684 Web \u754c\u9762\u4e2d\uff0c\u70b9\u51fb\u5de6\u4fa7\u5bfc\u822a\u680f\u7684 AI \u56fe\u6807\u5373\u53ef\u8bbf\u95ee\u8bed\u97f3\u8f6c\u6587\u5b57\u529f\u80fd\uff1a

\n
    \n
  1. \u9009\u62e9\u6587\u4ef6 - \u53ef\u4ee5\u4ece /home/vget/downloads \u76ee\u5f55\u9009\u62e9\u5df2\u4e0b\u8f7d\u7684\u6587\u4ef6\uff0c\u4e5f\u53ef\u4ee5\u76f4\u63a5\u4e0a\u4f20\u672c\u5730\u6587\u4ef6
  2. \n
  3. \u8bbe\u7f6e\u8bed\u8a00 - \u9009\u62e9\u97f3\u9891\u5bf9\u5e94\u7684\u8bed\u8a00\u4ee5\u83b7\u5f97\u6700\u4f73\u8bc6\u522b\u6548\u679c
  4. \n
  5. \u9009\u62e9\u683c\u5f0f - \u652f\u6301 Markdown \u6587\u672c\u6216 SRT \u5b57\u5e55\u683c\u5f0f\u8f93\u51fa
  6. \n
  7. \u5f00\u59cb\u8f6c\u5199 - \u70b9\u51fb\u6309\u94ae\u5373\u53ef\u5f00\u59cb\uff0c\u8f6c\u5199\u5b8c\u6210\u540e\u53ef\u76f4\u63a5\u4e0b\u8f7d\u7ed3\u679c
  8. \n
\n

\u652f\u6301\u7684\u6587\u4ef6\u683c\u5f0f

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u7c7b\u578b\u652f\u6301\u683c\u5f0f
\u97f3\u9891MP3, WAV, M4A, FLAC, OGG, AAC
\u89c6\u9891MP4, MKV, MOV, AVI, WebM
\n

\u5bf9\u4e8e\u89c6\u9891\u6587\u4ef6\uff0cvget \u4f1a\u81ea\u52a8\u63d0\u53d6\u97f3\u9891\u8f68\u9053\u540e\u8fdb\u884c\u8f6c\u5199\uff0c\u65e0\u9700\u624b\u52a8\u8f6c\u6362\u3002

\n
\n", "date_published": "2026-01-07T05:55:58+00:00", "title": "vget v0.12.1 \u53d1\u5e03\uff0c\u65b0\u589e AI \u529f\u80fd\uff0c\u8bed\u97f3\u8f6c\u6587\u5b57\uff0c \u6548\u679c\u6781\u597d", "id": "t/1183737" }, { "author": { "url": "member/yafoo", "name": "yafoo", "avatar": "https://cdn.v2ex.com/avatar/340c/ccd0/459440_large.png?m=1747065123" }, "url": "t/1183731", "title": "PushMe\uff1a\u8ba9\u4f60\u5173\u5fc3\u3001\u5173\u6ce8\u7684\u4efb\u610f\u6570\u636e\u5e38\u9a7b\u624b\u673a\u72b6\u6001\u680f", "id": "t/1183731", "date_published": "2026-01-07T05:38:23+00:00", "content_html": "
\n

\u63d0\u793a\uff1a\u4ec5\u652f\u6301\u5b89\u5353\uff0c\u6ca1\u6709\u82f9\u679c\u7aef\u3002

\n
\n

\u6700\u65b0\u7248\u7684 PushMe v5.0 \u65b0\u63a8\u51fa\u2014\u2014\u6570\u636e\u6d88\u606f\u60ac\u6d6e\u7a97\u529f\u80fd\uff0c\u80fd\u591f\u5c06\u6570\u636e\u6d88\u606f\u4ee5\u7b80\u6d01\u3001\u9192\u76ee\u7684\u65b9\u5f0f\u5e38\u9a7b\u5728\u624b\u673a\u72b6\u6001\u680f\u3002

\n

\u6548\u679c\u5982\u56fe\uff1a\"8.jpg\"

\n

PushMe \u4f5c\u4e3a\u4e00\u4e2a\u901a\u77e5\u7c7b APP \uff0c\u72ec\u6709\u7684\u7279\u8272\u529f\u80fd\u662f\u6570\u636e\u6d88\u606f\u548c\u6570\u636e\u5c0f\u5c4f\uff0c\u4f46\u662f\u5bf9\u4e8e\u5f53\u524d\u5173\u5fc3\u7684\u6570\u636e\uff0c\u67e5\u770b\u9700\u8981\u70b9\u51fb\u4e24\u6b21\u624d\u80fd\u770b\u5230\u6570\u636e\uff0c\u4e0d\u592a\u65b9\u4fbf\u3002\u6700\u65b0\u7248\u652f\u6301\u8bbe\u7f6e\u6570\u636e\u6d88\u606f\u5168\u5c40\u60ac\u6d6e\u663e\u793a\uff0c\u8fd9\u6837\u53ef\u4ee5\u968f\u65f6\u770b\u5230\u6570\u636e\uff0c\u975e\u5e38\u65b9\u4fbf\u3002

\n

\u8bbe\u7f6e\u65b9\u6cd5\uff1a

\n

\u8fdb\u5165\u6570\u636e\u5c0f\u5c4f\u9875\uff0c\u70b9\u51fb\u5bf9\u5e94\u6570\u636e\u8fdb\u5165\u8be6\u60c5\u9875\uff0c\u7136\u540e\u70b9\u51fb\u53f3\u4e0a\u89d2\u5c0f\u7a97\u56fe\u6807\uff08\u9700\u8981\u60ac\u6d6e\u7a97\u6743\u9650\uff09\uff0c\u5373\u53ef\u60ac\u6d6e\u663e\u793a\u3002

\n

\u9ed8\u8ba4\u7684\u60ac\u6d6e\u7a97\u5927\u5c0f\u4e3a 100*100 \uff0c\u53ef\u4ee5\u62d6\u52a8\u8c03\u6574\u4f4d\u7f6e\uff0c\u62d6\u5230\u624b\u673a\u5c4f\u5e55\u8fb9\u7f18\u65f6\uff0c\u4f1a\u81ea\u52a8\u5438\u9644\u3002\u4e5f\u53ef\u4ee5\u957f\u6309\u540e\u8c03\u6574\u60ac\u6d6e\u7a97\u5927\u5c0f\u3001\u5706\u89d2\u3001\u900f\u660e\u5ea6\u3002\u5f53\u628a\u60ac\u6d6e\u7a97\u62d6\u5230\u5c4f\u5e55\u5916\u65f6\uff0c\u4f1a\u81ea\u52a8\u6700\u5c0f\u5316\u5e76\u5438\u9644\u8fb9\u7f18\u3002\u628a\u60ac\u6d6e\u7a97\u62d6\u5230\u9876\u90e8\u5c4f\u5e55\u5916\u65f6\uff0c\u5c06\u81ea\u52a8\u6700\u5c0f\u5316\u5e76\u5bf9\u9f50\u5230\u72b6\u6001\u680f\u4f4d\u7f6e\uff0c\u81f3\u6b64\uff0c\u5b9e\u73b0\u6570\u636e\u5e38\u9a7b\u624b\u673a\u72b6\u6001\u680f\u3002

\n

\u7279\u522b\u63d0\u793a\uff1a\u5f53\u6700\u5c0f\u5316\u5230\u72b6\u6001\u680f\u65f6\uff0c\u56e0\u4e3a\u5b9e\u9645\u663e\u793a\u662f\u5728\u72b6\u6001\u680f\u4e0b\u65b9\uff0c\u4f1a\u9020\u6210\u65e0\u6cd5\u540e\u7eed\u62d6\u52a8\uff0c\u6b64\u65f6\u53ea\u9700\u518d\u6b21\u8fdb\u5165\u6570\u636e\u6d88\u606f\u8be6\u60c5\u9875\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u91cd\u7f6e\u56fe\u6807\uff0c\u5c06\u60ac\u6d6e\u7a97\u6837\u5f0f\u91cd\u7f6e\u5373\u53ef\u3002

\n

\u540c\u6837\uff0c\u5982\u679c\u6709\u5728\u7535\u8111\u4e0a\u663e\u793a\u5b9e\u65f6\u6570\u636e\u7684\u9700\u6c42\uff0c\u53ef\u4ee5\u5b89\u88c5\u7535\u8111\u7248\u7684 PushMe Clinet \u3002

\n

Github \u4e0b\u8f7d\u5730\u5740\uff1a https://github.com/yafoo/pushme/releases

\n

Gitee \u4e0b\u8f7d\u5730\u5740\uff1a https://gitee.com/yafu/pushme/releases

\n" }, { "author": { "url": "member/snowman231", "name": "snowman231", "avatar": "https://cdn.v2ex.com/gravatar/1a5d06ca37d76fa009cafcc715b62d3a?s=73&d=retro" }, "url": "t/1183730", "date_modified": "2026-01-07T05:39:11+00:00", "content_html": "

\u624b\u673a\u6d4f\u89c8\u5668\u4e0a\u7f51\uff0c\u4e3b\u6d41\u7684\u7f51\u7ad9\u5927\u591a\u6570\u90fd\u4e0d\u7ed9\u624b\u673a\u6d4f\u89c8\u5668\u7528\u6237\u4f7f\u7528\u4e3b\u8981\u529f\u80fd\uff0c\u8981\u7528\u5c31\u8981\u4e0b\u8f7d app \u3002\n\"68ed50365c2f29118bbf6b57ad5ea9c3.jpeg\"\n\u4e8e\u662f\u6211\u5c31\u60f3\u7740\u9488\u5bf9\u8fd9\u4e2a\u573a\u666f\u505a\u4e00\u4e2a\u5bfc\u822a\u7ad9\uff0c\u4e13\u95e8\u6536\u96c6\u4e00\u6279\u7ed9\u624b\u673a\u7528\u7684\u7f51\u7ad9\u2014\u2014\u201c\u9488\u5bf9\u624b\u673a\u8fdb\u884c\u4e86\u9002\u914d\uff0c\u4e3b\u8981\u6838\u5fc3\u529f\u80fd\u4e0d\u7528\u4e0b\u8f7d app \u4e5f\u80fd\u7528\u7684\u7f51\u7ad9\u201d

\n

\"45ebcd89548cc3065d9032a77ef389e3.png\"

\n

\u6b22\u8fce\u5927\u5bb6\u4f53\u9a8c\uff01

\n

\u7f51\u5740\u5730\u5740\uff1a https://www.phone456.com

\n", "date_published": "2026-01-07T05:35:12+00:00", "title": "\u56fd\u5185\u624b\u673a\u6d4f\u89c8\u5668\u4e0a\u7f51\uff0c\u6253\u5f00\u6bcf\u4e2a\u4e3b\u6d41\u7f51\u7ad9\u51e0\u4e4e\u90fd\u8981\u5f39\u51fa\u4e0b\u8f7d app\u3002", "id": "t/1183730" }, { "author": { "url": "member/nexmoe", "name": "nexmoe", "avatar": "https://cdn.v2ex.com/avatar/8a0e/afd7/319621_large.png?m=1761450154" }, "url": "t/1183728", "title": "\u6211\u4e3a\u4ec0\u4e48\u505a\u4e86\u4e2a\u7eaf\u672c\u5730\u7684\u89c6\u9891\u5de5\u5177\u7bb1\uff08\u987a\u4fbf\u63a8\u8350\u51e0\u4e2a\u771f\u5e38\u7528\u7684\uff09", "id": "t/1183728", "date_published": "2026-01-07T05:26:18+00:00", "content_html": "

\u4f60\u6709\u6ca1\u6709\u9047\u5230\u8fc7\u8fd9\u79cd\u60c5\u51b5\uff0c\u53ea\u60f3\u526a\u6389\u7247\u5934 5 \u79d2\uff0c\u7ed3\u679c\u8fd8\u5f97\u628a\u67d0\u4e2a\u91cd\u91cf\u7ea7\u526a\u8f91\u8f6f\u4ef6\u62d6\u51fa\u6765\uff0c\u7b49\u5b83\u542f\u52a8\u3001\u7b49\u5b83\u52a0\u8f7d\u3002\u7b49\u5230\u7ec8\u4e8e\u80fd\u526a\u7684\u65f6\u5019\uff0c\u70ed\u60c5\u5df2\u7ecf\u51b7\u5374\u4e86

\n

\u66f4\u79bb\u8c31\u7684\u662f\uff0c\u5f88\u591a\u7ecf\u5178 APP \u8fd8\u8981\u5b89\u88c5\u3001\u8981\u914d\u7f6e\u3001\u754c\u9762\u590d\u6742\u3002\u683c\u5f0f\u5de5\u5382\u3001HandBrake \u8fd9\u4e9b\u5f53\u7136\u5f88\u5f3a\uff0c\u4f46\u6211\u8fd9\u79cd\u9700\u6c42\u901a\u5e38\u662f\u5c0f\u4fee\u5c0f\u6539\u3002\u4e3a\u8fd9\u70b9\u4e8b\u513f\u8ba9\u6211\u4e0b\u8f7d\u4e00\u4e2a\u5e94\u7528\uff0c\u6210\u672c\u592a\u9ad8

\n

\u6240\u4ee5\u6211\u5e72\u8106\u5199\u4e86\u4e2a\u7b80\u5355\u5feb\u6377\u7684\u5728\u7ebf\u5de5\u5177\u3002\u7528 ffmpeg-wasm \u628a FFmpeg \u642c\u8fdb\u6d4f\u89c8\u5668\u91cc\u8dd1\uff0c\u7eaf\u672c\u5730\u5904\u7406\uff0c\u4f60\u7684\u7d20\u6750\u9ed8\u8ba4\u4e0d\u79bb\u5f00\u8bbe\u5907

\n

\u6253\u5f00\u5c31\u80fd\u7528\uff0c\u7528\u5b8c\u5c31\u8d70\uff0c\u4e0d\u9700\u8981\u548c\u4efb\u4f55\u5b89\u88c5\u5411\u5bfc\u8c08\u604b\u7231

\n

\u6211\u6700\u5e38\u7528\u7684\u51e0\u4ef6\u4e8b

\n

\u6211\u4e0d\u6253\u7b97\u5217 31 \u4e2a\uff0c\u592a\u591a\u4e86\u4f60\u4e5f\u8bb0\u4e0d\u4f4f\u3002\u4e0b\u9762\u8fd9\u51e0\u9879\u662f\u6211\u81ea\u5df1\u6700\u5e38\u70b9\u7684\uff0c\u57fa\u672c\u8986\u76d6\u4e86\u65e5\u5e38 80% \u7684\u5c0f\u7834\u4e8b

\n

\"convert

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u4f60\u8981\u5e72\u5565\u6211\u641e\u7684\u5de5\u5177\u9002\u5408\u7684\u573a\u666f
\u526a\u6389\u7247\u5934\u7247\u5c3eTrim Video\u526a\u6389\u5f00\u5934 5 \u79d2\u5e9f\u8bdd\u3001\u5c3e\u5df4\u9ed1\u5c4f
\u5408\u5e76\u51e0\u4e2a\u7247\u6bb5Merge Videos\u624b\u673a\u5f55\u4e86\u597d\u51e0\u6bb5\uff0c\u60f3\u62fc\u6210\u4e00\u4e2a
\u7ad6\u5c4f\u5e73\u53f0\u88c1\u5207Crop Video\u6a2a\u7248\u89c6\u9891\u8981\u53d1\u7ad6\u5c4f\u6216\u65b9\u5f62
\u4f53\u79ef\u592a\u5927\u4f20\u4e0d\u4e0a\u53bbCompress to Target Size\u5e73\u53f0\u9650\u5236 50MB \u3001\u90ae\u7bb1 25MB
\u7edf\u4e00\u8f6c\u683c\u5f0fVideo ConverterMOV \u8f6c MP4 \u3001\u7edf\u4e00\u5bb9\u5668
\u52a0\u5b57\u5e55\u6216\u70e7\u5f55\u5b57\u5e55Add Subtitles\u9700\u8981\u5b57\u5e55\u63d0\u5347\u5b8c\u64ad\u3001\u53d1\u5916\u7f51
\u5b57\u5e55\u683c\u5f0f\u4e92\u8f6cSubtitle ConverterSRT \u3001VTT \u3001ASS \u4e92\u76f8\u4e0d\u5bf9\u4ed8
\u97f3\u9891\u54cd\u5ea6\u62c9\u9f50Loudness Normalizer\u8fd9\u4e00\u6bb5\u5c0f\u58f0\u90a3\u4e00\u6bb5\u70b8

\u4e3a\u4ec0\u4e48\u6211\u575a\u6301\u505a\u6210\u7eaf\u672c\u5730

\n

\u56e0\u4e3a\u6211\u81ea\u5df1\u5c31\u5f88\u8ba8\u538c\u4e0a\u4f20\uff0c\u9700\u8981\u7b49\u4e0a\u4f20\u534a\u5929\uff0c\u8fd8\u9700\u8981\u989d\u5916\u7b97\u529b\u652f\u51fa

\n\n

\u5f53\u7136\uff0c\u672c\u5730\u4e5f\u6709\u4ee3\u4ef7\uff0c\u7b2c\u4e00\u6b21\u52a0\u8f7d\u4f1a\u4e0b\u8f7d\u4e00\u5768 WASM \uff0c\u8bbe\u5907\u8d8a\u5f3a\u8dd1\u5f97\u8d8a\u5feb\u3002\u4f60\u8981\u662f\u62ff\u5341\u5e74\u524d\u7684\u7b14\u8bb0\u672c\u538b 4K \uff0c\u90a3\u786e\u5b9e\u4e5f\u6ca1\u529e\u6cd5

\n

\u6211\u662f\u600e\u4e48\u7528\u7684

\n

\u4e3e\u4e2a\u6700\u771f\u5b9e\u7684\u4f8b\u5b50\uff1a\u6211\u7ecf\u5e38\u9047\u5230\u8fd9\u79cd\u6d41\u7a0b

\n
    \n
  1. \u5fae\u4fe1\u91cc\u6709\u4eba\u7529\u6765\u4e00\u4e2a\u89c6\u9891\uff0c\u8bf4\u5e2e\u6211\u628a\u524d\u9762 3 \u79d2\u526a\u6389
  2. \n
  3. \u6211\u6253\u5f00\u7f51\u9875\uff0c\u62d6\u8fdb\u53bb\uff0c\u914d\u7f6e\u4e00\u4e0b
  4. \n
  5. \u5bfc\u51fa\uff0c\u53d1\u56de\u53bb\uff0c\u7ed3\u675f
  6. \n
  7. \u6574\u4e2a\u8fc7\u7a0b\u6ca1\u6709\u5b89\u88c5\u3001\u6ca1\u6709\u767b\u5f55\u3001\u6ca1\u6709\u5b66\u4e60\u6210\u672c\uff0c\u4e5f\u6ca1\u6709\u6211\u5bf9\u7740\u590d\u6742\u754c\u9762\u53d1\u5446\u7684\u4e94\u5206\u949f
  8. \n
\n

\u7ed3\u5c3e

\n

\u8fd9\u5957\u4e1c\u897f\u7684\u5171\u540c\u70b9\u5f88\u7b80\u5355\uff0c\u53ea\u505a\u4e00\u4ef6\u4e8b\uff0c\u5feb\uff0c\u7701\u4e8b\uff0c\u5c3d\u91cf\u522b\u8ba9\u7d20\u6750\u5230\u5904\u8dd1\u3002\u4e0b\u6b21\u4f60\u53ea\u662f\u60f3\u526a\u4e00\u526a\u3001\u538b\u4e00\u538b\u3001\u8f6c\u4e00\u4e0b\uff0c\u522b\u6025\u7740\u628a\u91cd\u578b\u8f6f\u4ef6\u53eb\u9192\uff0c\u5148\u7528\u7f51\u9875\u628a\u5b83\u89e3\u51b3\u6389\u3002

\n

\u5982\u679c\u4f60\u7528\u7740\u4e0d\u723d\uff0c\u6216\u8005\u4f60\u8fd8\u7f3a\u67d0\u4e2a\u529f\u80fd\uff0c\u7559\u8a00\u544a\u8bc9\u6211\u3002\u6211\u4f1a\u8ba4\u771f\u8003\u8651\uff0c\u6bd5\u7adf\u5199\u8fd9\u4e2a\u7684\u521d\u8877\u5c31\u662f\u8ba9\u6211\u81ea\u5df1\u5c11\u53d7\u70b9\u6298\u78e8\uff0c\u987a\u4fbf\u4e5f\u8ba9\u4f60\u5c11\u53d7\u70b9

\n" }, { "author": { "url": "member/game1024", "name": "game1024", "avatar": "https://cdn.v2ex.com/avatar/07ae/8c5f/749686_large.png?m=1767760321" }, "url": "t/1183726", "date_modified": "2026-01-07T05:04:24+00:00", "content_html": "

\u6211\u5199\u4e86\u4e00\u6b3e\u5c0f\u73a9\u610f\uff0c\u53ef\u4ee5\u7ed9\u4f60\u7684\u9f20\u6807\u70b9\u51fb\u6dfb\u52a0\u52a8\u753b\u7279\u6548\uff0c\u53ef\u4ee5\u8ba9\u4f60\u5728\u5f55\u5236\u89c6\u9891\u65f6\u7a81\u663e\u4f60\u7684\u5173\u952e\u64cd\u4f5c\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u5e94\u7528\u8fd8\u80fd\u5e2e\u52a9\u4f60\u5728\u6f14\u793a\u65f6\u56de\u663e\u4f60\u7684\u952e\u76d8\u6309\u952e\uff0c\u4ee5\u53ca\u5728\u5c4f\u5e55\u4e0a\u505a\u6807\u6ce8

\n\n

\u6f14\u793a\u6548\u679c\uff1a

\n

MacOS \u7cfb\u7edf\u4e0a\uff0c\u9700\u8981\u5728\u7cfb\u7edf\u8bbe\u7f6e > \u9690\u79c1\u4e0e\u5b89\u5168\u6027\u4e2d\uff0c\u7ed9 Penio \u6dfb\u52a0\"\u8f93\u5165\u76d1\u63a7\"\u548c\"\u8f85\u52a9\u529f\u80fd\"\u6743\u9650

\n

\u70b9\u51fb\u7279\u6548

\n

\"\"

\n

\u952e\u76d8\u56de\u663e

\n

\"\"

\n

\u5c4f\u5e55\u6807\u6ce8

\n

\"\"

\n

\u6fc0\u6d3b\u7801\u9886\u53d6\u65b9\u5f0f

\n

1.\u6dd8\u5b9d

\n

\u7b2c\u4e00\u79cd\uff0c\u4f60\u53ef\u4ee5\u5728\u6dd8\u5b9d\u94fe\u63a5\u4e0a\u8d2d\u4e70\u8282\u65e5\u8d60\u9001\u7801\uff08 1 \u5206\u94b1\uff0c\u6bcf\u4eba\u9650\u8d2d 1 \u4e2a\uff09\uff0c\u4ed8\u8d39\u540e\uff0c\u4f1a\u81ea\u52a8\u5c06\u6fc0\u6d3b\u7801\u53d1\u7ed9\u4f60

\n\n\u6dd8\u5b9d\u5e97\u94fa\u94fe\u63a5\n\n

\u6fc0\u6d3b\u7801\u8bf7\u5728\uff1a2026-2-1 \u53f7\u4e4b\u524d\u4f7f\u7528\uff0c\u8d85\u8fc7\u65e5\u671f\u540e\uff0c\u6fc0\u6d3b\u7801\u4f1a\u81ea\u52a8\u9500\u6bc1\uff0c\u5c4a\u65f6\u5c06\u65e0\u6cd5\u5151\u6362

\n

2.\u5728\u8bc4\u8bba\u533a\u7559\u4e0b\u4f60\u7684\u90ae\u7bb1

\n

\u7b2c\u4e8c\u79cd\uff0c\u5728\u8bc4\u8bba\u533a\u7559\u4e0b\u90ae\u7bb1\uff0c\u6211\u4e0b\u73ed\u540e\u4f1a\u5c06\u6fc0\u6d3b\u7801\u53d1\u7ed9\u4f60

\n", "date_published": "2026-01-07T04:59:50+00:00", "title": "Penio \u4e00\u6b3e\u53ef\u4ee5\u8ba9\u4f60\u7684\u89c6\u9891\u66f4\u7075\u52a8\u7684\u5c0f\u73a9\u610f\uff0c\u8d60\u9001\u6fc0\u6d3b\u7801", "id": "t/1183726" }, { "author": { "url": "member/lixinyang", "name": "lixinyang", "avatar": "https://cdn.v2ex.com/avatar/0628/b0fd/136144_large.png?m=1647153292" }, "url": "t/1183719", "title": "\u505a\u4e86\u4e00\u4e2a\u514d\u8d39\u7684 Figma \u672c\u5730\u5316\u7ffb\u8bd1\u63d2\u4ef6 \u8f7b\u677e\u591a\u8bed\u8a00 App Store \u56fe", "id": "t/1183719", "date_published": "2026-01-07T03:49:53+00:00", "content_html": "

\u6211\u6700\u8fd1\u5728\u4e0a\u67b6\u82f9\u679c Store APP \u7136\u540e\u53d1\u73b0\u672c\u5730\u5316\u771f\u7684\u662f\u8981\u547d\u554a\u5582

\n

\u8fd9\u4e48\u591a\u56fe\u3001\u8fd9\u4e48\u591a\u8bed\u8a00\u3001\u8981\u548b\u6574\u554a\uff1f\u5404\u79cd\u5de5\u5177\u8fd8\u8d35\u7684\u8981\u6b7b\u3002\u7b97\u4e86\u81ea\u5df1\u505a\u4e00\u4e2a\u5f00\u6e90\u63d2\u4ef6\u5427

\n

\u63d2\u4ef6\u8d85\u7ea7\u7b80\u5355 \u6ca1\u6709\u5305\u6708 \u5168\u90e8\u672c\u5730

\n\n

\u7136\u540e\u5c31\u4f1a\u81ea\u52a8\u628a\u57fa\u7840\u6b3e\u53d8\u6210\u591a\u8bed\u8a00\u6b3e\u5566\uff01

\n

\ud83d\ude3c https://github.com/wozi-x/AppSmartLocal

\n

\ud83c\udfa8 https://www.figma.com/community/plugin/1589498837344174364/smartlocal

\n

\"img\"

\n

\"img\"

\n" }, { "author": { "url": "member/nocmt", "name": "nocmt", "avatar": "https://cdn.v2ex.com/gravatar/6640001960b888da54f3ea01bd2fcb2d?s=73&d=retro" }, "url": "t/1183692", "title": "Visual Studio Code \u7aef\u53e3\u7ba1\u7406\u63d2\u4ef6\uff0c\u652f\u6301\u67e5\u770b\u7aef\u53e3\u3001\u8fdb\u7a0b\u540d\u79f0\u3001PID\uff0c\u5e76\u53ef\u505c\u6b62\u8fdb\u7a0b\u3002", "id": "t/1183692", "date_published": "2026-01-07T03:18:48+00:00", "content_html": "

\"\"

\n

\u505a\u4e86\u4e2a\u5c0f\u5de5\u5177\uff0c\u5076\u5c14\u61d2\u5f97\u8f93\u547d\u4ee4\u884c\uff0c\u6709\u5174\u8da3\u7684\u540c\u5b66\u53ef\u4ee5\u770b\u770b\u3002

\n

\u4e0b\u8f7d\u5730\u5740\uff1a https://marketplace.visualstudio.com/items?itemName=nocmt.xport-manager

\n

Visual Studio Code \u7684\u7aef\u53e3\u7ba1\u7406\u63d2\u4ef6\uff0c\u652f\u6301\u67e5\u770b\u7aef\u53e3\u3001\u8fdb\u7a0b\u540d\u79f0\u3001PID \uff0c\u5e76\u53ef\u505c\u6b62\u8fdb\u7a0b\u3002

\n

\u529f\u80fd\uff1a

\n\n

\u652f\u6301\u7cfb\u7edf\uff1a

\n\n

\u4f7f\u7528\u65b9\u6cd5\uff1a

\n

\u70b9\u51fb\u6d3b\u52a8\u680f\u4e0a\u7684 \"\u7aef\u53e3\u7ba1\u7406\" \u56fe\u6807\u3002\n\u5728\u89c6\u56fe\u4e2d\u67e5\u770b\u7aef\u53e3\u5217\u8868\u3002

\n

\u70b9\u51fb\u6807\u9898\u680f\u7684\u641c\u7d22\u56fe\u6807\u8fdb\u884c\u8fc7\u6ee4\u3002\n\u53f3\u952e\u70b9\u51fb\u6761\u76ee\u9009\u62e9 \"\u505c\u6b62\u8fdb\u7a0b\"\u3002

\n

\u4f9d\u8d56\uff1a

\n\n" }, { "author": { "url": "member/lixinyang", "name": "lixinyang", "avatar": "https://cdn.v2ex.com/avatar/0628/b0fd/136144_large.png?m=1647153292" }, "url": "t/1183691", "date_modified": "2026-01-07T03:20:43+00:00", "content_html": "

\u5927\u5bb6\u65b0\u5e74\u597d\u5440 \u6700\u8fd1\u6211\u505a\u7684\u8fd9\u4e2a iOS APP \u300a WoziGrow \u300b \u7ed9\u81ea\u5df1\u5a03\u8ba4\u8bc6\u751f\u5b57

\n

\u8d77\u56e0\u662f\u6bcf\u6b21\u4e00\u8d77\u548c\u5a03\u770b\u7ed8\u672c\u5979\u90fd\u6307\u7740\u95ee\u201c\u8fd9\u662f\u4ec0\u4e48\u554a\uff1f\u8fd9\u662f\u4ec0\u4e48\u5440\uff1f\u201d \u4e0d\u8fc7\u5e02\u9762\u4e0a\u7684\u8bc6\u5b57\u5361\u603b\u611f\u89c9\u4e0d\u662f\u5f88\u6709\u8da3\uff0c\u4e3b\u9898\u79cd\u7c7b\u4e5f\u6bd4\u8f83\u6709\u9650

\n

\u6240\u4ee5\u5c31\u81ea\u5df1\u8bbe\u8ba1\u81ea\u5df1\u505a\u4e86\u4e00\u4e2a\u591a\u8bed\u8a00\u7684\u6536\u96c6\u8d34\u7247\u7684\u300c\u8ba4\u5b57 APP \u300d\u4e5f\u6dfb\u52a0\u4e86\u5404\u79cd\u5979\u611f\u5174\u8da3\u7684\u4e3b\u9898\u50cf\u662f\u52a8\u7269\u3001\u6c34\u679c\u3001\u852c\u83dc\u3001\u5723\u8bde\u8282\u3001\u73a9\u5177\u3001\u6e38\u4e50\u573a\u5440

\n

\u8fd9\u6b21\u662f\u7b2c\u4e00\u6b21\u505a\u4ee5\u56fe\u4e3a\u4e3b\u7684\u8fd8\u6709\u4e0d\u5c11\u53ef\u4ee5\u751f\u63d0\u5347\u7684\u5730\u65b9\u5566\uff0c\u4e0d\u8fc7\u4f5c\u4e3a\u4e00\u4e2a\u5168\u65b0\u7684\u8bbe\u8ba1\u5c1d\u8bd5\u6574\u4e2a\u8fc7\u7a0b\u8fd8\u662f\u8d85\u6709\u8da3\u54d2\u3002\u73b0\u5728\u6bcf\u5929\u665a\u996d\u540e\u90fd\u4f1a\u4e00\u8d77\u5237\u5237\u65b0\u8bcd\uff0c\u4e0d\u8fc7\u771f\u662f\u611f\u53f9\u4eba\u7c7b\u5e7c\u5d3d\u7684\u8bb0\u5fc6\u91cc\u540a\u6253\u6210\u5e74\u4eba\u5440

\n

\u6628\u5929\u5c31\u5728\u65b0\u7248\u672c\u6dfb\u52a0\u4e86\u65e5\u8bed\u548c\u5176\u4ed6\u7684\u8bed\u8a00\u7684\u4e3b\u9898\u5355\u8bcd\u5462 \u73b0\u5728\u603b\u5171\u652f\u6301 16 \u4e2a\u8bed\u8a00\u5566\uff08\u65e5\u6cd5\u5fb7\u897f\u6cf0\u5e94\u6709\u5c3d\u6709\u5416\uff09\u975e\u5e38\u9002\u5408\u65b0\u624b\u5165\u95e8\u6216\u8005\u5e2e\u52a9\u5b9d\u5b9d\u8ba4\u5b57

\n

\u5982\u679c\u6709\u5a03\u7684\u540c\u5b66\u60f3\u8bd5\u8bd5\u770b\u7684\u8bdd \u53ef\u4ee5\u5c0f\u7ea2\u4e66\u79c1\u4fe1\u6211\u9886\u53d6\u5151\u6362\u7801\u5440\u201c\u6bcf\u4e2a\u4eba\u90fd\u6709\u5440\uff0c\u4e0d\u7528\u8bd5\u5230\u5e95\u90a3\u4e00\u4e2a\u7801\u53ef\u4ee5\u7528\u5566 \ud83d\udc36\u201d \u8fd9\u4e2a APP \u5c31\u662f\u56fe\u4e00\u4e50\u6240\u4ee5\u4e5f\u4e0d\u6253\u7b97\u52a0\u5185\u8d2d\u548c\u5305\u6708\u5566

\n

\u5982\u679c\u6709\u4ec0\u4e48\u5efa\u8bae\u4e5f\u6b22\u8fce\u968f\u65f6\u8054\u7cfb\u544a\u8bc9\u6211\u5440 [\ud83d\udd2e\u5c0f\u7ea2\u4e66\u4f20\u9001\u95e8\ud83d\udd2e]

\n

\"\u56fe

\n

\"\u56fe

\n", "date_published": "2026-01-07T03:17:30+00:00", "title": "\u6211\u7ed9\u5973\u513f\u505a\u7684\u8ba4\u5b57\u5361 APP [WoziGrow] \u53ef\u53ef\u7231\u7231\u5b66\u751f\u8bcd \ud83c\udf81 \u9001\u9001\u9001", "id": "t/1183691" }, { "author": { "url": "member/MAGICY", "name": "MAGICY", "avatar": "https://cdn.v2ex.com/avatar/6f0e/4470/86715_large.png?m=1738641881" }, "url": "t/1183679", "title": "\u6210\u957f\u624b\u518c\u4e0d\u7528\u6101\uff0c AI \u5e2e\u4f60\u6765\u89e3\u5fe7", "id": "t/1183679", "date_published": "2026-01-07T02:56:54+00:00", "content_html": "

\u524d\u6bb5\u65f6\u95f4\u63a5\u5230\u4e86\u5e7c\u513f\u56ed\u8001\u5e08\u7684\u4efb\u52a1\uff1a\u5e0c\u671b\u6bcf\u4e2a\u5bb6\u957f\u7ed9\u5b69\u5b50\u5236\u4f5c\u4e00\u4efd\u6210\u957f\u624b\u518c\uff0c\u7528\u4e8e\u8bb0\u5f55\u5b69\u5b50\u7684\u6210\u957f\u8f68\u8ff9\u3002

\n

\u867d\u7136\u8001\u5e08\u7ed9\u51fa\u7684\u6848\u4f8b\u90fd\u662f\u624b\u5de5\u5236\u4f5c\uff0c\u4f46\u662f\u4f5c\u4e3a\u5929\u5929\u88ab AI \u6d78\u6da6\u7684 90 \u540e\u5bb6\u957f\uff0c\u5c31\u60f3\u7740\u7528 AI \u5b9e\u73b0\u4e00\u4e0b\uff0c\u53e6\u5916\u4f7f\u7528 AI \u5236\u4f5c\u4f55\u5c1d\u4e0d\u662f\u53e6\u4e00\u79cd\u624b\u5de5\u5462\ud83d\udc36\uff1f\u800c\u4e14\u5e26\u7740\u5b69\u5b50\u4e00\u8d77\u4f7f\u7528 AI \u5236\u4f5c\u624b\u518c\uff0c\u4e5f\u7b97\u662f\u4ece\u5a03\u5a03\u6293\u8d77\u4e86\u3002

\n

\"image.png\"

\n

1. \u5148\u770b\u6548\u679c

\n

\u4e0b\u9762\u5c55\u793a\u4e86\u4e24\u79cd\u98ce\u683c\u7684\u6548\u679c\u56fe\uff0c\u5927\u5bb6\u53ef\u4ee5\u8bc4\u4f30\u4e00\u4e0b\u662f\u5426\u7b26\u5408\u9884\u671f\u3002

\n

\u4e0b\u9762\u662f\u5199\u5b9e\u98ce\u683c\u2193\u2193\u2193\u2193\u2193

\n

\"image.png\"

\n

\u4e0b\u9762\u662f\u7ae5\u8bdd\u7ed8\u672c\u98ce\u683c\u2193\u2193\u2193\u2193\u2193

\n

\"image.png\"

\n

2. \u5236\u4f5c\u601d\u8def

\n

\u8981\u60f3\u624b\u518c\u505a\u5f97\u597d\uff0c\u4e00\u5171\u5206\u4e09\u6b65

\n
    \n
  1. \u7ed9\u624b\u518c\u5b9a\u4e0b\u6574\u4f53\u7684\u89c6\u89c9\u98ce\u683c\uff1b
  2. \n
  3. \u786e\u5b9a\u6bcf\u9875\u7684\u4e3b\u9898\uff0c\u4f8b\u5982\u8fd0\u52a8\u3001\u8bfb\u4e66\u7b49\uff1b
  4. \n
  5. \u6839\u636e\u4e3b\u9898\u6765\u7b5b\u9009\u7d20\u6750\uff0c\u5305\u62ec\u7167\u7247\u3001\u6807\u9898\u3001\u7ae5\u8a00\u7ae5\u8bed\u7b49\uff1b
  6. \n
\n

\u4e0a\u9762\u7684\u5185\u5bb9\u4e2d\uff0c\u53ea\u6709 \u89c6\u89c9\u98ce\u683c \u662f\u6211\u7684\u77e5\u8bc6\u76f2\u533a\uff0c\u4f46\u662f\u6ca1\u5173\u7cfb\uff0cAI \u53ef\u4ee5\u5e2e\u6211\u4eec\u89e3\u51b3\uff0c\u4e0b\u9762\u662f AI \u7ed9\u51fa\u7684\u5177\u4f53\u53c2\u8003

\n
\n

\u68ee\u7cfb\u6c34\u5f69\u62fc\u8d34\u98ce (\u81ea\u7136\u3001\u7075\u52a8\u3001\u9ad8\u7ea7\u611f\u5f3a)\uff1a \u4e00\u5f20\u5927\u5e08\u7ea7\u624b\u7ed8\u513f\u7ae5\u6210\u957f\u76f8\u518c\u9875\u9762\uff0c\u6c34\u5f69\u63d2\u753b\u98ce\u683c\u3002\u9875\u9762\u91c7\u7528\u62fc\u8d34\u5e03\u5c40\uff0c\u8bbe\u8ba1\u4e86 3 \u5230 5 \u4e2a\u4e0d\u540c\u5927\u5c0f\u7684\u5b9d\u4e3d\u6765\u7167\u7247\u6846\u548c\u624b\u7ed8\u8fb9\u6846\uff0c\u9519\u843d\u6709\u81f4\u5730\u6392\u5217\u3002\u7167\u7247\u4e4b\u95f4\u7531\u67d4\u548c\u7684\u85e4\u8513\u3001\u5c0f\u82b1\u548c\u53ef\u7231\u7684\u68ee\u6797\u5c0f\u52a8\u7269\uff08\u5982\u677e\u9f20\u3001\u5c0f\u9e1f\uff09\u8fde\u63a5\u3002\u80cc\u666f\u662f\u7c73\u8272\u7eb9\u7406\u753b\u7eb8\u3002\u9884\u7559\u4e86\u51e0\u4e2a\u4e91\u6735\u5f62\u72b6\u7684\u6c14\u6ce1\u6846\uff0c\u91cc\u9762\u6709\u7740\u6025\u4fc3\u7684\u3001\u8721\u7b14\u8d28\u611f\u7684\u513f\u7ae5\u624b\u5199\u5b57\u6d82\u9e26\u3002\u6574\u4f53\u8272\u8c03\u662f\u67d4\u548c\u7684\u83ab\u5170\u8fea\u7eff\u548c\u6696\u9ec4\u8272\u3002\u6784\u56fe\u5e73\u8861\uff0c\u5145\u6ee1\u7ae5\u8da3\u4e14\u827a\u672f\u611f\u5341\u8db3\uff0c8 k \u5206\u8fa8\u7387\u3002

\n
\n
\n

\u5317\u6b27\u6781\u7b80\u624b\u8d26\u98ce (\u5e72\u51c0\u3001\u6e05\u723d\u3001\u73b0\u4ee3\u611f)\uff1a \u6781\u7b80\u53ef\u7231\u7684\u513f\u7ae5\u6863\u6848\u9875\u8bbe\u8ba1\uff0c\u5317\u6b27\u63d2\u753b\u98ce\u683c\u3002\u9875\u9762\u50cf\u662f\u4e00\u4e2a\u7cbe\u5fc3\u5236\u4f5c\u7684\u624b\u8d26\uff08 scrapbook \uff09\u3002\u4f7f\u7528\u624b\u7ed8\u7684\u5f69\u8272\u548c\u7eb8\u80f6\u5e26\u6548\u679c\u7c98\u8d34\u7740\u591a\u5f20\uff08 4-6 \u5f20\uff09\u65b9\u5f62\u548c\u77e9\u5f62\u7684\u7167\u7247\u3002\u7167\u7247\u5468\u56f4\u88c5\u9970\u7740\u7b80\u5355\u7684\u624b\u7ed8\u7ebf\u6761\u3001\u5706\u70b9\u548c\u661f\u661f\u3002\u6709\u4e00\u4e2a\u4e13\u95e8\u7684\u533a\u57df\u7528\u4e8e\u8bb0\u5f55\u65e5\u671f\u7b49\u5fc5\u8981\u4fe1\u606f\u3002\u53e6\u6709\u51e0\u4e2a\u5bf9\u8bdd\u6846\u533a\u57df\uff0c\u6a21\u62df\u7a1a\u5ae9\u7684\u513f\u7ae5\u7b14\u8ff9\u3002\u8272\u5f69\u6e05\u65b0\u660e\u5feb\uff08\u5a74\u513f\u84dd\u3001\u5976\u6cb9\u9ec4\u3001\u8584\u8377\u7eff\uff09\uff0c\u80cc\u666f\u5e72\u51c0\uff0c\u7559\u767d\u5145\u8db3\uff0c\u4e13\u4e1a\u6392\u7248\u8bbe\u8ba1\uff0c\u9ad8\u7ea7\u611f\u3002

\n
\n
\n

\u7ed8\u672c\u6545\u4e8b\u611f\u98ce\u683c (\u6e29\u99a8\u3001\u53d9\u4e8b\u6027\u5f3a)\uff1a \u5145\u6ee1\u7ae5\u8da3\u7684\u7ed8\u672c\u98ce\u683c\u6210\u957f\u76f8\u518c\u9875\uff0c\u5927\u5e08\u7ea7\u63d2\u753b\u3002\u573a\u666f\u662f\u4e00\u4e2a\u5947\u5e7b\u7684\u513f\u7ae5\u4e50\u56ed\u3002\u4e09\u5230\u56db\u5f20\u7167\u7247\u88ab\u8bbe\u8ba1\u878d\u5165\u5728\u573a\u666f\u4e2d\uff0c\u4f8b\u5982\uff1a\u4e00\u5f20\u7167\u7247\u5728\u4e00\u53ea\u5927\u624b\u7ed8\u70ed\u6c14\u7403\u7684\u7bee\u5b50\u91cc\uff0c\u53e6\u4e00\u5f20\u50cf\u662f\u5728\u5c0f\u706b\u8f66\u7684\u7a97\u6237\u91cc\uff0c\u8fd8\u6709\u4e00\u5f20\u88ab\u5927\u8c61\u7528\u9f3b\u5b50\u5377\u7740\u3002\u5468\u56f4\u73af\u7ed5\u7740\u6b22\u5feb\u7684\u624b\u7ed8\u5143\u7d20\u3002\u6587\u5b57\u533a\u57df\u81ea\u7136\u5730\u878d\u5165\u80cc\u666f\u4e2d\uff0c\u91c7\u7528\u53ef\u7231\u7684\u513f\u7ae5\u6d82\u9e26\u5b57\u4f53\u3002\u6696\u8272\u8c03\uff0c\u8d28\u611f\u7ec6\u817b\uff0c\u5149\u5f71\u67d4\u548c\uff0c\u50cf\u4e00\u9875\u7cbe\u7f8e\u7684\u7ae5\u4e66\u3002

\n
\n

3. \u6700\u7ec8\u7684\u63d0\u793a\u8bcd

\n

\u6211\u4eec\u4ee5 \u68ee\u7cfb\u6c34\u5f69\u62fc\u8d34\u98ce (\u81ea\u7136\u3001\u7075\u52a8\u3001\u9ad8\u7ea7\u611f\u5f3a) \u4e3a\u4f8b\uff0c\u6700\u7ec8\u7ed9\u51fa\u7684\u63d0\u793a\u8bcd\u5982\u4e0b

\n

\u6574\u4f53\u98ce\u683c\u63d0\u793a\u8bcd\uff1a

\n
\n

\u6211\u9700\u8981\u4e3a\u5b69\u5b50\u505a\u4e00\u4e2a\u6210\u957f\u6863\u6848\uff0c\u6bcf\u4e2a\u9875\u9762\u7684\u9700\u8981\u5305\u542b\u5982\u4e0b\u5143\u7d20

\n
    \n
  1. \u5fc5\u8981\u4fe1\u606f
  2. \n
  3. \u7ae5\u8a00\u7ae5\u8bed
  4. \n
  5. \u63d2\u56fe\u7167\u7247
  6. \n
\n

\u6bcf\u9875\u8981\u6ee1\u8db3\u5982\u4e0b\u8981\u6c42\uff1a
\n\u5927\u5e08\u7ea7\u624b\u7ed8\u513f\u7ae5\u6210\u957f\u76f8\u518c\u9875\u9762\uff0c\u6c34\u5f69\u63d2\u753b\u98ce\u683c\u3002\u9875\u9762\u91c7\u7528\u62fc\u8d34\u5e03\u5c40\uff0c\u8bbe\u8ba1\u4e86 3 \u5230 5 \u4e2a\u4e0d\u540c\u5927\u5c0f\u7684\u5b9d\u4e3d\u6765\u7167\u7247\u6846\u548c\u624b\u7ed8\u8fb9\u6846\uff0c\u9519\u843d\u6709\u81f4\u5730\u6392\u5217\u3002\u7167\u7247\u4e4b\u95f4\u7531\u67d4\u548c\u7684\u85e4\u8513\u3001\u5c0f\u82b1\u548c\u53ef\u7231\u7684\u68ee\u6797\u5c0f\u52a8\u7269\uff08\u5982\u677e\u9f20\u3001\u5c0f\u9e1f\uff09\u8fde\u63a5\u3002\u80cc\u666f\u662f\u7c73\u8272\u7eb9\u7406\u753b\u7eb8\u3002\u9884\u7559\u4e86\u51e0\u4e2a\u4e91\u6735\u5f62\u72b6\u7684\u6c14\u6ce1\u6846\uff0c\u91cc\u9762\u6709\u7740\u6025\u4fc3\u7684\u3001\u8721\u7b14\u8d28\u611f\u7684\u513f\u7ae5\u624b\u5199\u5b57\u6d82\u9e26\u3002\u6574\u4f53\u8272\u8c03\u662f\u67d4\u548c\u7684\u83ab\u5170\u8fea\u7eff\u548c\u6696\u9ec4\u8272\u3002\u6784\u56fe\u5e73\u8861\uff0c\u5145\u6ee1\u7ae5\u8da3\u4e14\u827a\u672f\u611f\u5341\u8db3\uff0c8 k \u5206\u8fa8\u7387\u3002

\n

\u4e0b\u9762\u6211\u4f1a\u8f93\u5165\u6bcf\u4e2a\u9875\u9762\u7684\u5177\u4f53\u4fe1\u606f\u4e0e\u56fe\u7247

\n
\n

\u5177\u4f53\u9875\u9762\u63d0\u793a\u8bcd\uff08\u4ee5\u7b2c\u4e00\u9875\u4e3a\u4f8b\uff09\uff1a

\n
\n
    \n
  1. \u9875\u9762\u540d\u79f0\uff1a\u5c0f\u8001\u864e\u51fa\u751f\u5566
  2. \n
  3. \u8868\u8fbe\u4fe1\u606f\uff1a\u5bf9\u4e16\u754c\u5145\u6ee1\u4e86\u597d\u5947\u4e0e\u671f\u5f85\uff0c\u60f3\u8ddf\u4e16\u754c\u53cb\u597d\u4e92\u52a8
  4. \n
  5. \u5b69\u5b50\u7684\u7167\u7247\u5982\u9644\u4ef6\u6240\u793a
  6. \n
\n
\n

\u9644\u4ef6\u7684\u7167\u7247\uff1a\n\"image.png\"

\n

4. \u4e0d\u540c AI \u7684\u6548\u679c\u5448\u73b0

\n

\u4e0b\u9762\u7684\u6848\u4f8b\u4e2d\uff0c\u5305\u542b\u4e86\u56fd\u5185\u5916\u4e3b\u6d41\u7684 AI \u6548\u679c

\n

4.1 \u56fd\u5185\u7684 AI \u6548\u679c\u5c55\u793a

\n

\u2193\u2193\u2193\u6263\u5b50\u7a7a\u95f4\u2193\u2193\u2193

\n

\"image.png\"

\n

\u2193\u2193\u2193\u8c46\u5305\u2193\u2193\u2193

\n

\"image.png\"

\n

\u2193\u2193\u2193\u5343\u95ee\u2193\u2193\u2193

\n

\"image.png\"

\n

\u2193\u2193\u2193\u5143\u5b9d\u2193\u2193\u2193

\n

\"image.png\"

\n

4.2 \u56fd\u5916\u7684 AI \u6548\u679c\u5c55\u793a

\n

\u2193\u2193\u2193ChatGPT\u2193\u2193\u2193

\n

\"image.png\"

\n

\u2193\u2193\u2193Gemini\u2193\u2193\u2193

\n

\"image.png\"

\n

\u2193\u2193\u2193lovart\u2193\u2193\u2193

\n

\"image.png\"

\n

5. \u6700\u7ec8\u6210\u679c\u5c55\u793a

\n

\u6700\u7ec8\u6211\u9009\u62e9\u4e86 lovart \u4f5c\u4e3a\u6700\u7ec8\u7684 AI \u5de5\u5177\uff0c\u5168\u90e8\u7684\u6548\u679c\u56fe\u5982\u4e0b\uff1a

\n

\"image.png\"

\n

\"image.png\"\n\"image.png\"\n\"image.png\"\n\"image.png\"\n\"image.png\"\n\"image.png\"\n\"image.png\"\n\"image.png\"

\n
\n

\"\"

\n" }, { "author": { "url": "member/tanszhe", "name": "tanszhe", "avatar": "https://cdn.v2ex.com/avatar/c43d/cc57/191761_large.png?m=1706679513" }, "url": "t/1183657", "title": "\u5206\u4eab\u4e00\u4e2a\u975e ai \u9879\u76ee\uff0c\u524d\u524d\u540e\u540e\u91cd\u6784 3 \u6b21\u4e86\uff0c", "id": "t/1183657", "date_published": "2026-01-07T02:16:33+00:00", "content_html": "

\u4ece\u7b2c\u4e00\u7248\u5230\u73b0\u5728\u4e5f\u6709 5 \u4e2a\u5e74\u5934\u4e86\uff0c\u4e00\u81f4\u6709\u65e0\u6cd5\u590d\u73b0\u7684 bug \u6240\u4ee5\u5c31\u91cd\u6784\u5427\u3002

\n

\u5148\u662f js \u540e\u6765\u6362\u6210 ts \u60c5\u51b5\u6539\u5584\u4e86\u5f88\u591a\u3002

\n

\u8fd9\u6b21\u8fd8\u6362\u4e86\u4e00\u4e2a\u54cd\u4eae\u7684\u57df\u540d https://gantt-online.com/

\n

\u8fd8\u589e\u52a0\u4e86 paypal \u6309\u94ae

\n" }, { "author": { "url": "member/tutouguai", "name": "tutouguai", "avatar": "https://cdn.v2ex.com/gravatar/2fea572945b86ecfa11b95485d94138f?s=73&d=retro" }, "url": "t/1183640", "title": "[\u72ec\u7acb\u5f00\u53d1] \u7528 Uniapp \u64b8\u4e86\u4e2a\u300a\u804c\u573a\u91cd\u5f00\u65e5\u8bb0\u300b\u5c0f\u7a0b\u5e8f\uff0c\u7eaf\u6587\u5b57 Roguelike\uff0c\u4e3b\u6253\u4e00\u4e2a\u771f\u5b9e", "id": "t/1183640", "date_published": "2026-01-07T01:39:04+00:00", "content_html": "

\u6700\u8fd1\u5229\u7528\u4e1a\u4f59\u65f6\u95f4\u505a\u4e86\u4e00\u4e2a\u7eaf\u6587\u5b57\u4e92\u52a8\u7684\u804c\u573a\u751f\u5b58\u6a21\u62df\u5668\u3002\u6ca1\u5565\u5927\u9053\u7406\uff0c\u4e3b\u6253\u4e00\u4e2a\u73a9\u6897\u3001\u53d1\u75af\u548c\u5e26\u85aa\u6478\u9c7c\u3002

\n

\u8d77\u56e0\u662f\u89c9\u5f97\u73b0\u5728\u4e0a\u73ed\u597d\u7d2f\uff0c\u9762\u4e34\u5404\u79cd\u9009\u62e9\uff0c\u53ef\u662f\u660e\u660e\u4e0d\u60f3\u8fd9\u4e48\u9009\u554a\uff01\uff01\uff01

\n

\u5b83\u662f\u73a9\u4ec0\u4e48\u7684\uff1f\n\u8fd9\u662f\u4e00\u4e2a\u804c\u573a\u9898\u6750\u7684 Roguelike \u6587\u5b57\u6e38\u620f\u3002

\n

\u6838\u5fc3\u673a\u5236\uff1a

\n

\u5f00\u5c40\u62bd\u5361\uff1a\u4ece\u201c\u5bb6\u91cc\u6709\u77ff\uff08 SSR \uff09\u201d\u3001\u201c\u7529\u9505\u5b97\u5e08\uff08 SR \uff09\u201d\u3001\u201c\u673a\u68b0\u952e\u76d8\u515a\uff08 R \uff09\u201d\u7b49\u5929\u8d4b\u4e2d\u4e09\u9009\u4e00\u3002

\n

\u6570\u503c\u751f\u5b58\uff1a\u4f60\u9700\u8981\u5e73\u8861 \u53d1\u91cf\uff08 HP \uff09\u3001\u6478\u9c7c\u503c\uff08 San \u503c\uff09 \u548c \u5b58\u6b3e\u3002\u5f53\u7136\u4f60\u8fd8\u9700\u8981\u901a\u8fc7\u83b7\u53d6\u7ee9\u6548\u70b9\u6765\u664b\u5347\u3002\u4efb\u4f55\u4e00\u9879\u5f52\u96f6\u90fd\u4f1a\u5bfc\u81f4 Game Over \u3002

\n

\u968f\u673a\u4e8b\u4ef6\u6d41\uff1a

\n

\u9762\u5bf9\u201c\u534a\u591c\u751f\u4ea7\u73af\u5883\u5220\u5e93\u201d\uff0c\u662f\u9009\u62e9\u201c\u6ed1\u8dea\u6c42\u9976\u201d\u8fd8\u662f\u201c\u8fde\u591c\u8dd1\u8def\u201d\uff1f

\n

\u9762\u5bf9\u201c\u884c\u653f\u8ba9\u642c A4 \u7eb8\u201d\uff0c\u662f\u9009\u62e9\u201c\u5f53\u725b\u505a\u9a6c\u201d\u8fd8\u662f\u201c\u6574\u987f\u804c\u573a\u201d\uff1f

\n

\u591a\u7ed3\u5c40\uff1a\u4ece\u201c\u8bd5\u7528\u671f\u88ab\u6302\u201d\u5230\u201c\u4e0a\u5e02\u6572\u949f\u201d\uff0c\u5171\u6709\u51e0\u5341\u79cd\u4e0d\u540c\u7684\u804c\u573a\u7ed3\u5c40\u3002

\n

\u4e24\u4e2a\u7279\u70b9\n\u201c\u65b0\u4e11\u98ce\u201d\u8bbe\u8ba1 \u629b\u5f03\u4e86\u5e38\u89c4\u7684\u6241\u5e73\u5316 UI \uff0c\u91c7\u7528\u9ad8\u9971\u548c\u5ea6\u914d\u8272 + \u7c97\u9ed1\u8fb9\u6846 + \u6b6a\u659c\u6392\u7248\u3002\u770b\u8d77\u6765\u6709\u70b9\u7c97\u7cd9\uff0c\u751a\u81f3\u6709\u70b9\u201c\u75af\u766b\u201d\uff0c\u4e3a\u4e86\u5951\u5408\u6253\u5de5\u4eba\u7684\u7cbe\u795e\u72b6\u6001\u3002

\n

\u5947\u8469\u9053\u5177\u7cfb\u7edf

\n

\u738b\u9738\u751f\u53d1\u4e39\uff1a\u7269\u7406\u5c42\u9762\u7684\u9632\u8131\u624b\u6bb5\u3002

\n

\u5de5\u4f4d\u751f\u6839\u6563\uff1a\u670d\u7528\u540e\u81c0\u90e8\u4e0e\u5de5\u4f4d\u9501\u6b7b\uff0c\u5373\u4fbf\u88ab\u88c1\u5458\uff0c\u8001\u677f\u4e5f\u6ca1\u6cd5\u628a\u4f60\u79fb\u8d70\uff08\u7269\u7406\u8d56\u7740\u4e0d\u8d70\uff09\u3002

\n

\u6280\u672f\u6808\n\u524d\u7aef\uff1aUniApp + Vue3

\n

\u6837\u5f0f\uff1aTailwind CSS

\n

\u903b\u8f91\uff1a\u7eaf\u524d\u7aef\u8ba1\u7b97\uff0cJSON \u9a71\u52a8\u4e8b\u4ef6\u6d41\uff0c\u65e0\u540e\u7aef\u538b\u529b \uff08\u5176\u5b9e\u4e91\u5f00\u53d1\u7684\u6392\u884c\u699c\u5199\u4e86\u4e00\u534a\u4e86\uff09

\n

\u4f53\u9a8c\u4e00\u4e0b\n\u6b22\u8fce\u8001\u54e5\u4eec\u63d0 Bug \u6216\u63d0\u4f9b\u66f4\u6709\u8da3\u7684\u804c\u573a\u6897\u3002\n\"7\"\n\"code\"

\n" }, { "author": { "url": "member/stephenyin", "name": "stephenyin", "avatar": "https://cdn.v2ex.com/avatar/11a8/0d04/190745_large.png?m=1767749402" }, "url": "t/1183637", "title": "\u5f31\u7f51\u6d4b\u8bd5\u65b0\u7269\u79cd\u518d\u8fdb\u5316", "id": "t/1183637", "date_published": "2026-01-07T01:31:54+00:00", "content_html": "
\n

\u8fd9\u662f\u534a\u5e74\u524d \u00a0NetHang \u7684\u51fa\u751f\u8bb0\u5f55\uff1a t/1139317

\n
\n

\u6700\u8fd1\u6709\u4e9b\u7a7a\u95f2\u65f6\u95f4\u7ed9\u6211\u00a0NetHang \u66f4\u65b0\u4e86\u51e0\u4e2a\u65b0\u529f\u80fd\uff1a

\n\n

\u5173\u4e8e Jitter \u4e71\u5e8f

\n

\u5e02\u9762\u4e0a\u7684\u5927\u591a\u6570\u5f31\u7f51\u5de5\u5177\u4ea7\u751f\u7684 Jitter \u9ed8\u8ba4\u914d\u7f6e\u90fd\u662f\u5141\u8bb8\u4e71\u5e8f\u7684\uff0c\u4f46\u662f\u73b0\u7f51\u6d4b\u8bd5\u7ed3\u679c\u8868\u660e\u5b9e\u9645\u7f51\u7edc\u4e2d\u53d1\u751f\u7684\u5305\u4e71\u5e8f\u6bd4\u4f8b\u662f\u6781\u4f4e\u7684\uff0c\u4ec5\u4ec5\u5728\u57fa\u7ad9\u5207\u6362\uff0c\u536b\u661f\u5207\u6362\u6216\u8005 Multipath \u4f20\u8f93\u4e4b\u7c7b\u7684\u77ac\u95f4\u6709\u53ef\u80fd\u53d1\u751f\u5e76\u4e14\u8f6c\u77ac\u5373\u901d\uff0c\u800c\u957f\u65f6\u95f4\u7684\u3001\u6301\u7eed\u7684\u4e71\u5e8f\u57fa\u672c\u90fd\u662f\u4eba\u4e3a\u5236\u9020\u7684\u3002\u6211\u4eec\u5728\u8ba8\u8bba\u7f51\u7edc\u8d28\u91cf\u65f6\u6240\u8ba8\u8bba\u7684 Jitter \u66f4\u8d34\u5207\u7684\u63cf\u8ff0\u5e94\u8be5\u662f\u7f51\u7edc\u4e2d\u7684\u5806\u79ef\u7a81\u53d1\uff08 Accumulate & Burst \uff09\uff0c\u56e0\u6b64\u5728 NetHang \u4e2d\u4f7f\u7528\u7684 \u5e26\u5206\u5e03\u7684\u5806\u79ef\u7a81\u53d1 \u6765\u5b9e\u73b0\u4e0d\u5141\u8bb8\u4e71\u5e8f\u7684 Jitter \u3002

\n

\u5173\u4e8e\u4e22\u5305\u5206\u5e03

\n

\u540c\u7406\uff0c\u5927\u5bb6\u5e73\u65f6\u6d4b\u8bd5\u7ecf\u5e38\u4f7f\u7528\u7684\u968f\u673a\u4e22\u5305\u5728\u5206\u5e03\u4e0a\u4e5f\u4e0e\u73b0\u7f51\u4e2d\u7684\u60c5\u51b5\u5927\u76f8\u5f84\u5ead\u3002\u73b0\u7f51\u4e2d\u4f20\u8f93\u5c42\uff08\u53ca\u4ee5\u4e0b\uff09\u7684\u5c0f\u4e22\u5305\u57fa\u672c\u90fd\u4f1a\u53d8\u6210\u5e94\u7528\u5c42\u7684\u5ef6\u8fdf\u548c Jitter \uff08\u7531\u4e8e\u5404\u79cd\u534f\u8bae\u7684\u4e22\u5305\u91cd\u4f20\u673a\u5236\u7684\u539f\u56e0\uff09\uff0c\u800c\u80fd\u89c2\u6d4b\u5230\u7684\u5927\u4e22\u5305\u57fa\u672c\u90fd\u662f\u4e0d\u540c\u8282\u70b9\u6027\u80fd\u8d44\u6e90\u9650\u5236\u548c\u961f\u5217\u63a7\u5236\u7684\u5171\u540c\u4f5c\u7528\u7ed3\u679c\uff0c\u4ece\u5206\u5e03\u4e0a\u6765\u8bf4\u90fd\u4e0d\u662f\u90a3\u4e48 \u201c\u968f\u673a\u201d \u7684\uff0c\u66f4\u591a\u7684\u5448\u73b0\u51fa\u4e00\u5b9a\u7684\u7a81\u53d1\u6027\u548c\u8fde\u7eed\u6027\u3002NetHang \u4e2d\u5b9e\u73b0\u7684 Loss Burst Low | Medium | High \u5206\u522b\u5bf9\u5e94\u7684\u5e73\u5747\u8fde\u7eed\u4e22\u5305\u6570\u662f 3 \u300110 \u548c 50 \u3002\u8fd9\u5728\u4e00\u5b9a\u7a0b\u5ea6\u4e0a\u80fd\u591f\u4f7f\u4e22\u5305\u66f4\u50cf\u771f\u5b9e\u4e16\u754c\u4e2d\u7684\u60c5\u51b5\uff0c\u800c\u8981\u771f\u6b63\u505a\u597d\u4e22\u5305\u548c\u5ef6\u8fdf\u9700\u8981\u7ed3\u5408\u5e26\u5bbd\u9650\u5236\u548c\u961f\u5217\u63a7\u5236\u4e00\u8d77\u6765\u8fdb\u5316\u3002

\n

Links

\n

\u6b22\u8fce\u5927\u5bb6\u8bd5\u7528\u548c\u63d0\u51fa\u5efa\u8bae

\n\n" }, { "author": { "url": "member/wings110", "name": "wings110", "avatar": "https://cdn.v2ex.com/gravatar/4ba3f3b18b7f7bae0a957737828ea842?s=73&d=retro" }, "url": "t/1183618", "title": "[\u5206\u4eab] \u81ea\u5df1\u505a\u7684\u6d4f\u89c8\u5668\u7aef\u89c6\u9891\u5e27\u63d0\u53d6\u5de5\u5177\uff0c\u9690\u79c1\u4f18\u5148 + AI \u8bc4\u5206\uff0c\u6c38\u4e45\u514d\u8d39\u65e0\u6c34\u5370", "id": "t/1183618", "date_published": "2026-01-06T16:48:23+00:00", "content_html": "

\u5927\u5bb6\u597d\u3002

\n

\u4f5c\u4e3a\u4e00\u540d\u5e73\u65f6\u9700\u8981\u505a\u89c6\u9891\u7684\u5185\u5bb9\u521b\u4f5c\u8005\uff0c\u7ecf\u5e38\u9700\u8981\u4ece\u89c6\u9891\u91cc\u622a\u53d6\u9ad8\u6e05\u5e27\u505a\u5c01\u9762\u3002\n\u75db\u70b9\u5927\u5bb6\u5e94\u8be5\u90fd\u61c2\uff1a\u5e02\u9762\u4e0a\u7684\u5728\u7ebf\u5de5\u5177\u5f80\u5f80\u9700\u8981\u4e0a\u4f20\u6587\u4ef6\uff08\u5927\u6587\u4ef6\u4f20\u5f97\u6162 + \u9690\u79c1\u62c5\u5fe7\uff09\uff0c\u800c\u666e\u901a\u7684\u622a\u56fe\u5de5\u5177\u5f80\u5f80\u753b\u8d28\u6709\u635f\uff0c\u6216\u8005\u5f88\u96be\u7cbe\u51c6\u5b9a\u4f4d\u5230\u90a3\u4e00\u77ac\u95f4\u3002

\n

\u4e00\u6c14\u4e4b\u4e0b\uff0c\u5229\u7528\u4e1a\u4f59\u65f6\u95f4\u81ea\u5df1\u64b8\u4e86\u4e00\u4e2a\u7eaf\u524d\u7aef\u7684\u5de5\u5177\uff1aVideo to Image Converter\u3002

\n

\u4e3b\u8981\u60f3\u89e3\u51b3\u8fd9\u51e0\u4e2a\u95ee\u9898\uff1a

\n
    \n
  1. \u9690\u79c1\u5b89\u5168\uff1a\u6838\u5fc3\u903b\u8f91\u5168\u9760\u6d4f\u89c8\u5668 API (Canvas) \u672c\u5730\u5904\u7406\uff0c\u89c6\u9891\u6587\u4ef6\u7edd\u5bf9\u4e0d\u4e0a\u4f20\u670d\u52a1\u5668\uff0c\u62d4\u4e86\u7f51\u7ebf\u4e5f\u80fd\u7528\u3002
  2. \n
  3. \u62d2\u7edd\u6a21\u7cca\uff1a\u5728\u524d\u7aef\u8dd1\u4e86\u4e00\u4e2a\u7b80\u5355\u7684 AI \u8bc4\u5206\u7b97\u6cd5\uff0c\u80fd\u81ea\u52a8\u5206\u6790\u753b\u9762\u7684\u6e05\u6670\u5ea6/\u5bf9\u6bd4\u5ea6\uff0c\u5e2e\u4f60\u6311\u51fa\u6700\u6e05\u6670\u7684\u4e00\u5e27\uff08\u4e0d\u7528\u81ea\u5df1\u4e00\u5e27\u5e27\u53bb\u627e\u4e86\uff09\u3002
  4. \n
  5. \u753b\u8d28\u65e0\u635f\uff1a\u89c6\u9891\u662f 4K \u7684\uff0c\u622a\u51fa\u6765\u7684\u56fe\u5c31\u662f 4K \u7684 PNG/JPG \uff0c\u6ca1\u6709\u538b\u7f29\u3002
  6. \n
  7. \u7b80\u5355\u7eaf\u7cb9\uff1a\u65e0\u5e7f\u544a\u3001\u65e0\u6c34\u5370\u3001\u65e0\u9700\u6ce8\u518c\uff0c\u6253\u5f00\u5373\u7528\u3002
  8. \n
\n

\u6280\u672f\u5b9e\u73b0\uff1a\n\u4e3b\u8981\u57fa\u4e8e HTML5 Video \u5143\u7d20\u548c Canvas API \uff0c\u5927\u6587\u4ef6\u5904\u7406\u4e0a\u505a\u4e86\u4e00\u4e9b\u5185\u5b58\u4f18\u5316\u3002\u76ee\u524d\u5728 Chrome/Edge \u4e0a\u4f53\u9a8c\u6700\u597d\uff0cFirefox/Safari \u5bf9\u90e8\u5206\u7279\u6b8a\u7f16\u7801\u7684\u652f\u6301\u53ef\u80fd\u53d7\u9650\u4e8e\u6d4f\u89c8\u5668\u672c\u8eab\uff0c\u8fd8\u5728\u6301\u7eed\u4f18\u5316\u4e2d\u3002

\n

\u9879\u76ee\u5730\u5740\uff1a\nhttps://video-to-image.com

\n

\u76ee\u524d\u5df2\u7ecf\u8fed\u4ee3\u4e86\u51e0\u4e2a\u7248\u672c\uff0c\u6b22\u8fce V \u53cb\u4eec\u8bd5\u7528\u3002\n\u5982\u679c\u6709\u9047\u5230\u517c\u5bb9\u6027\u95ee\u9898\uff08\u6bd4\u5982\u67d0\u4e9b\u683c\u5f0f\u8bfb\u4e0d\u51fa\u6765\uff09\uff0c\u6216\u8005\u6709\u65b0\u7684\u529f\u80fd\u5efa\u8bae\uff0c\u6b22\u8fce\u5728\u8bc4\u8bba\u533a\u7559\u8a00\uff0c\u6bcf\u4e00\u6761\u6211\u90fd\u4f1a\u770b\uff01

\n

\u611f\u8c22\u652f\u6301 \ud83d\ude4f

\n" }, { "author": { "url": "member/utodea", "name": "utodea", "avatar": "https://cdn.v2ex.com/avatar/a022/10db/238465_large.png?m=1765625519" }, "url": "t/1183612", "title": "[\u81ea\u8350-\u5f00\u6e90] \u4e00\u4e2a\u5b9e\u7528\u7684\u5c0f\u5de5\u5177\uff1a waylog\uff0c\u5e2e\u4f60\u628a Claude Code\uff0c Gemini CLI, Codex \u804a\u5929\u8bb0\u5f55\u4fdd\u5b58\u4e3a Markdown.", "id": "t/1183612", "date_published": "2026-01-06T15:58:27+00:00", "content_html": "

\u80cc\u666f

\n

\u4e4b\u524d\u505a\u4e86\u4e2a VS Code \u548c Cursor \u63d2\u4ef6\uff0c\u73b0\u5728\u5df2\u7ecf\u6709 1k+ \u7684\u4e0b\u8f7d\u4e86,\u8be6\u60c5\u89c1\u5e16\u5b50\u3002\u8fd9\u6b21\u7528 Rust \u505a\u4e86 CLI \u5de5\u5177\u7684\u652f\u6301\uff0c waylog-cli

\n

\u5b83\u80fd\u5e2e\u4f60\u628a Claude Code \u3001Gemini CLI \u7b49\u7ec8\u7aef AI \u52a9\u624b\u7684\u5bf9\u8bdd\u5386\u53f2\uff0c\u4fdd\u5b58\u4e3a\u6e05\u6670\u7684 Markdown \u6587\u6863\u3002

\n

\u5b89\u88c5\u4e0e\u4f7f\u7528

\n

\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u547d\u4ee4\u5b89\u88c5\uff1a

\n
brew install shayne-snap/tap/waylog\n
\n

\u6216\u8005

\n
cargo install waylog\n
\n

waylog pull \u793a\u4f8b

\n

\"\"

\n

\u8001\u5957\u8def

\n

\u6709\u7a7a\u7684\u70b9\u4e2a star https://github.com/shayne-snap/waylog-cli

\n" }, { "author": { "url": "member/kingddc314", "name": "kingddc314", "avatar": "https://cdn.v2ex.com/avatar/1a00/8067/128584_large.png?m=1767712627" }, "url": "t/1183608", "date_modified": "2026-01-06T15:31:52+00:00", "content_html": "

\u6700\u8fd1 Claude Max \u7684\u989d\u5ea6\u7528\u4e0d\u5b8c\u611f\u89c9\u4e5f\u662f\u6d6a\u8d39\uff0c\u7ffb\u4e86\u4e2a 10 \u5e74\u524d\u7684\u8001\u9879\u76ee\uff0c\u62ff\u51fa\u6765\u8ba9 Opus 4.5 \u91cd\u5199\uff0c\u7528\u4e86\u65b0\u7684 TUI \u5e93\uff0c\u4ee3\u7801\u770b\u4e0a\u53bb\u4f3c\u4e4e\u66f4\u4f18\u96c5\u4e86\uff0c\u6548\u679c\u6bd4\u4e4b\u524d\u597d\u770b\uff1b

\n

\u4ee5\u524d\u4e0d\u652f\u6301\u7684\u7ec8\u7aef\u8d85\u94fe\u63a5\u53ef\u70b9\u51fb\u6548\u679c\u3001\u4e3b\u9898\u5207\u6362\u73b0\u5728\u4e5f\u90fd\u6709\u4e86\uff0c\u50cf\u662f\u89e3\u6790 html \u5143\u7d20\u3001\u5b9e\u73b0\u7ffb\u9875\u6548\u679c\uff0c\u76f4\u63a5\u5c06 html \u4e0b\u8f7d\u5230\u672c\u5730\uff0c\u6a21\u578b\u542d\u54e7\u4e00\u987f\u89e3\u6790\uff0c\u6bd4\u4ee5\u524d\u4eba\u8089\u4e00\u4e2a\u4e2a\u63d0\u53d6\u5143\u7d20\u5bb9\u6613\u591a\u4e86\u3002

\n

\u4e0b\u4e00\u6b65\u51c6\u5907\u628a\u4ee5\u524d\u61d2\u5f97\u7ef4\u62a4\u7684\u9879\u76ee\u90fd\u62ff\u51fa\u6765\u8ba9 AI \u91cd\u6784\u4e00\u4e0b

\n

https://github.com/six-ddc/v2ex-tui

\n

\"\"\n\"\"

\n", "date_published": "2026-01-06T15:26:15+00:00", "title": "VibeCoding \u592a\u9002\u5408\u91cd\u5199\u4e86\uff0c\u51e0\u5c0f\u65f6\u7ffb\u65b0\u4e00\u4e2a 10 \u5e74\u524d\u7684\u8001\u9879\u76ee", "id": "t/1183608" }, { "author": { "url": "member/artshooter", "name": "artshooter", "avatar": "https://cdn.v2ex.com/avatar/6fdc/9813/595588_large.png?m=1767373948" }, "url": "t/1183605", "title": "\u5ef6\u7eed\u300c\u6c1b\u56f4\u611f Blog\u300d\uff0c\u6211\u505a\u4e86\u4e00\u4e2a\u6c89\u6d78\u5f0f\u63d2\u56fe\u98ce\u7684\u300c\u8bed\u6587\u8bfe\u300d\u7f51\u9875 Demo\uff0c\u53ca\u4e00\u4e9b\u601d\u8003", "id": "t/1183605", "date_published": "2026-01-06T15:17:08+00:00", "content_html": "

\u4e4b\u524d\u4e3a\u4e86\u53d1\u300c\u6c1b\u56f4\u611f Blog \u300d\u7684\u4ecb\u7ecd\uff0c\u6211\u7528\u51e0\u4e2a\u4e2d\u5b66\u8bfe\u6587\u4f5c\u4e3a\u7d20\u6750\u53bb\u505a\u4e86\u5bf9\u5e94\u7684\u7f51\u9875\u3002\n\u505a\u7684\u8fc7\u7a0b\u4e2d\uff0c\u6211\u53d1\u73b0\u90a3\u4e9b\u7ecf\u5178\u7684\u4e2d\u5b66\u8bfe\u6587\u4e2d\uff0c\u65e0\u4e00\u4e0d\u5305\u542b\u7740\u8d28\u6734\u3001\u5f3a\u70c8\u7684\u60c5\u611f\u3002\n\u65e0\u8bba\u7528\u4ec0\u4e48\u5a92\u4ecb\u53bb\u91cd\u5851\uff0c\u5b83\u4eec\u90fd\u8574\u542b\u7740\u6253\u52a8\u4eba\u5fc3\u7684\u529b\u91cf\u3002

\n

\u4e8e\u662f\u6211\u5f00\u59cb\u6000\u65e7\u8d77\u6765\uff0c\u6253\u7b97\u5c1d\u8bd5\u505a\u4e00\u4e2a\u7cfb\u5217\u3002

\n

\u76ee\u524d\u5148\u505a\u4e86\u4e00\u4e2a Demo \u3002\u5305\u542b\u4e00\u4e2a\u4e09\u7bc7\u7ecf\u5178\u6587\u7ae0+\u9996\u9875\u573a\u666f\u52a8\u753b

\n

\u4f53\u9a8c\u94fe\u63a5\uff1a https://chinese-class.ashooter.com/ \uff08\u9996\u9875\u52a0\u8f7d\u56fe\u8f83\u591a\uff0c\u53ef\u80fd\u6709\u70b9\u6162\uff09

\n

\u505a\u8fd9\u4e2a Demo \u8fc7\u7a0b\u4e2d\u7684\u611f\u53d7\u4e0e\u601d\u8003\uff1a

\n
    \n
  1. \n

    \u63d2\u56fe\u90fd\u662f\u7531 AI \u751f\u6210\u7684\u3002\u751f\u6210\u8fc7\u7a0b\u4e2d\uff0c\u6211\u9047\u5230\u4e00\u4e2a\u683c\u5f0f\u95ee\u9898\uff1a\u751f\u6210\u51fa\u6765\u7684\u57fa\u672c\u90fd\u662f\u6709\u80cc\u666f\u8272\u7684 png \u56fe\uff0c\u4f46\u6211\u60f3\u8981\u900f\u660e\u5e95\u7684 webp \u3002
    \u4e8e\u662f\u6211\u7528 Claude Code \u63d0\u70bc\u4e86\u4e00\u4e2a\u5f88\u5177\u4f53\u7684\u6d41\u7a0b\uff1a\u628a\u56fe\u4ece png \u8f6c\u6210 webp \uff0c\u540c\u65f6\u5e2e\u6211\u53bb\u9664\u80cc\u666f\u8272\u3002\n
    \u7136\u540e\u6211\u5c31\u53cd\u5e94\u8fc7\u6765\uff0c\u5176\u5b9e\u8fd9\u79cd\u5f88\u5c0f\u3001\u5f88\u5782\u76f4\u7684\u5de5\u5177\uff0c\u6211\u4eec\u4ee5\u524d\u90fd\u4f1a\u53bb\u627e\u90a3\u79cd\u5de5\u5177\u7ad9\uff0c\u4f46\u4ee5\u540e\u53ef\u80fd\u90fd\u4e0d\u9700\u8981\u4e86\u3002\u7528 AI \u5f88\u64c5\u957f\u7528\u4ee3\u7801\u53bb\u5feb\u901f\u89e3\u51b3\u4e00\u6279\u5177\u4f53\u7684\u95ee\u9898\u3002

    \n
  2. \n
  3. \n

    \u505a\u6587\u7ae0\u5c01\u9762\u56fe\u7684\u65f6\u5019\uff0c\u57fa\u672c\u6211\u90fd\u5199\u4e86\u5f88\u957f\u5f88\u957f\u7684 Prompt \u3002\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d\uff0c\u6211\u53d1\u73b0\u6709\u4e9b\u573a\u666f/\u52a8\u4f5c\u6211\u80fd\u60f3\u8c61\u51fa\u6765\uff0c\u4f46\u5b8c\u5168\u5199\u4e0d\u51fa\u6765 Prompt \u3002\n
    \u5199 Prompt \u8fd9\u4e2a\u8fc7\u7a0b\uff0c\u6709\u70b9\u50cf\u767d\u63cf\u624b\u6cd5\u7684\u5199\u4f5c\u7ec3\u4e60\uff0c\u4f60\u8981\u628a\u8111\u6d77\u91cc\u7684\u753b\u9762\uff0c\u7528\u6587\u5b57\u4e00\u70b9\u70b9\u6479\u51fa\u6765\u3002\u4f46\u5f88\u591a\u65f6\u5019\uff0c\u6211\u53d1\u73b0\u6211\u5c45\u7136\u627e\u4e0d\u5230\u4e00\u4e2a\u51c6\u786e\u7684\u8bcd\uff0c\u6765\u5f62\u5bb9\u8fd9\u4e2a\u52a8\u4f5c\u3002\n
    \u6bd4\u5982\u8bf4\u300a\u80cc\u5f71\u300b\u90a3\u5f20\u56fe\uff0c\u7236\u4eb2\u722c\u5411\u6708\u53f0\u7684\u65f6\u5019\uff0c\u6211\u8111\u5b50\u91cc\u662f\u6709\u753b\u9762\u7684\uff1a\u5de6\u811a\u6491\u7740\uff0c\u53f3\u811a\u722c\u4e0a\u53bb\u4e86\u4e00\u534a\uff0c\u6574\u4e2a\u4eba\u530d\u5310\u7740\uff0c\u59ff\u6001\u662f\u5f88\u72fc\u72c8\u7684\u3002\u91cd\u70b9\u5c31\u5728\u8fd9\u4e2a\u201c\u72fc\u72c8\u611f\u201d\u4e0a\uff0c\u5b83\u7684\u7cbe\u9ad3\u5230\u5e95\u5728\u54ea\uff1f\u4f60\u600e\u4e48\u7528\u6587\u5b57\u628a\u5b83\u63cf\u8ff0\u51fa\u6765\uff1f\n
    \u6709\u4e24\u70b9 \u4e2a\u4eba\u603b\u7ed3\uff1a1.\u8fd8\u662f\u5f97\u591a\u770b\u4e66\uff1b 2.\u6211\u5177\u4f53\u7684\u6267\u884c\u65b9\u5f0f\uff0c\u5c31\u662f\u53cd\u590d\u548c AI \u6765\u56de\u6c9f\u901a\u3002\u548c AI \u591a\u804a\u51e0\u8f6e\uff0c\u5148\u628a\u81ea\u5df1\u6df7\u4e71\u7684\u60f3\u8c61\u544a\u8bc9\u4ed6\uff0c\u8ba9\u4ed6\u751f\u6210 prompt \uff0c\u7136\u540e\u518d\u53bb\u6765\u56de\u8c03 prompt \uff0c\u4f60\u4eec\u4e00\u8d77\u6765\u6162\u6162\u903c\u8fd1\u4f60\u5fc3\u91cc\u771f\u6b63\u60f3\u8981\u7684\u90a3\u4e2a\u753b\u9762\u3002

    \n
  4. \n
  5. \n

    \uff08\u8fd9\u4e00\u70b9\u662f\u5bf9 AI \u6587\u751f\u56fe\u529f\u80fd\u7684\u7545\u60f3\uff09\uff1a\n
    \u6211\u5728\u505a\u7ffb\u9875\u52a8\u753b\u7684\u65f6\u5019\uff0c\u5148\u505a\u4e86\u7b2c\u4e00\u5f20\u201c\u4e66\u9875\u4e00\u89d2\u7fd8\u8d77\u6765\u201d\u7684\u56fe\uff0c\u7136\u540e\u6211\u60f3\u53bb\u505a\u8fde\u7eed\u7684\u597d\u51e0\u5e27\uff0c\u4f46\u53d1\u73b0\u5f88\u96be\u505a\u51fa\u6765\u3002\u7136\u540e\u6211\u5c31\u5728\u60f3\uff0c\u6216\u8bb8\u5728\u4eca\u5e74\u6216\u8005\u660e\u5e74\uff0c\u65b0\u7684\u6587\u751f\u56fe\u6a21\u578b\u80fd\u8ba9\u6211\u4eec\u5bf9\u4e00\u5f20\u56fe\u76f4\u63a5\u8fdb\u884c\u201c\u903b\u8f91\u4e0a\u7684\u4fee\u6539\u201d\u3002\n
    \u6709\u70b9\u7c7b\u4f3c\u628a\u4e00\u5f20\u5e73\u9762\u56fe\u5f53\u6210\u4e00\u4e2a\u4e09\u7ef4\u6a21\u578b\u6765\u7528\u3002\u5982\u679c\u56fe\u91cc\u662f\u4e00\u672c\u4e66\uff0c\u6211\u53ef\u4ee5\u9009\u4e2d\u5176\u4e2d\u4e00\u9875\uff0c\u7136\u540e\u9009\u4e2d\u3001\u62d6\u52a8\u5b83\uff0c\u8ba9\u8fd9\u4e00\u9875\u7ffb\u8fc7\u53bb\uff1b\u5982\u679c\u56fe\u91cc\u662f\u4e00\u4e2a\u4eba\uff0c\u6211\u53ef\u4ee5\u76f4\u63a5\u628a\u4ed6\u7684\u624b\u4e3e\u8d77\u6765\u3002\u76f8\u5f53\u4e8e\u628a\u4e00\u5f20\u9759\u6001\u56fe\u7247\uff0c\u53d8\u6210\u4e00\u4e2a AI \u53ef\u4ee5\u7406\u89e3\u548c\u64cd\u4f5c\u7684\u6a21\u578b\u3002

    \n
  6. \n
\n

\u8fd8\u662f\u4e00\u4e2a\u5c1d\u8bd5\u4e2d\u7684 Demo \uff0c\u6b22\u8fce\u5927\u5bb6\u53cd\u9988\uff5e

\n" }, { "author": { "url": "member/ssshooter", "name": "ssshooter", "avatar": "https://cdn.v2ex.com/avatar/9ee8/ae6e/256288_large.png?m=1636007997" }, "url": "t/1183602", "title": "\u5f00\u6e90\u535a\u5ba2\u97f3\u4e50\u64ad\u653e\u5668 + 1", "id": "t/1183602", "date_published": "2026-01-06T14:58:38+00:00", "content_html": "

\u5c3d\u7ba1\u6211\u672c\u6765\u4e0d\u662f\u60f3\u505a\u535a\u5ba2\u64ad\u653e\u5668\uff0c\u800c\u662f\u505a\u4e00\u4e2a\u6b4c\u8bcd\u89e3\u91ca\u5668\uff0c\u4f46\u662f\u505a\u90fd\u505a\u4e86\uff0c\u7a81\u7136\u53d1\u73b0\u505a\u6210\u5927\u6742\u70e9\u4e5f\u4e0d\u884c\uff0c\u4e8e\u662f\u5f00\u5e72\u5457~

\n

\u6700\u540e\u51fa\u6765\u7ed3\u679c\u8fd8\u4e0d\u9519\uff0c\u63a5\u4e0b\u6765\u7b80\u5355\u4ecb\u7ecd\u4e00\u4e0b\u8fd9\u4e2a\u5f00\u6e90\u9879\u76ee\uff1a

\n\n

\u7279\u522b\u9e23\u8c22 Meting\uff0c\u6ca1\u6709 Meting \u5c31\u6ca1\u6709\u8fd9\u4e2a\u9879\u76ee\uff01

\n

\u641c\u6b4c\u3001\u770b\u6b4c\u8bcd\u3001AI \u529f\u80fd\u5c31\u4e0d\u5728\u8fd9\u591a\u8bf4\u4e86\uff0c\u4e0b\u9762\u4e3b\u8981\u4ecb\u7ecd\u5176\u4f5c\u4e3a\u535a\u5ba2\u97f3\u4e50\u64ad\u653e\u5668\u7684\u80fd\u529b\uff0c\u4e3b\u8981\u662f 3 \u4e2a\u529f\u80fd\uff1a

\n\n

\u9996\u5148\u662f\u64ad\u653e\u5361\u7247\uff0c\u53ef\u4ee5\u64ad\u653e\u63d2\u5165\u7684\u6b4c\u66f2\uff0c\u4f46\u524d\u63d0\u662f\u5fc5\u987b\u63d0\u4f9b\u5bf9\u5e94\u97f3\u4e50\u5e73\u53f0\u7684 cookie\u3002\u867d\u7136\u4f53\u9a8c\u975e\u5e38\u597d\uff0c\u4e0d\u7528\u8df3\u8f6c\u76f4\u63a5\u64ad\u653e\uff0c\u4f46\u5bf9\u7ef4\u62a4\u8005\u6765\u8bf4\u5c31\u975e\u5e38\u9ebb\u70e6\u4e86\uff0c\u9700\u8981\u5728\u90e8\u7f72\u670d\u52a1\u65f6\u8bbe\u7f6e cookie \uff0c\u5e76\u4e14 cookie \u8fc7\u671f\u7684\u65f6\u5019\u9700\u8981\u53ca\u65f6\u66f4\u6362\uff0c\u5426\u5219\u65e0\u6cd5\u64ad\u653e\u3002

\n

\u4e3e\u4e2a QQ \u97f3\u4e50\u7684\u4f8b\u5b50\uff0c\u5728\u767b\u9646 QQ \u97f3\u4e50\u4e4b\u540e\u6309 F12 \uff0c\u6253\u5f00 Network \u627e\u5230\u8fd9\u4e2a cookie \u5728\u53d1\u5e03\u65f6\u586b\u5199\uff0c\u6216\u76f4\u63a5\u5728\u7f51\u9875\u914d\u7f6e\u9875\u586b\u5199\u90fd\u53ef\u4ee5~

\n

\"\"

\n
<iframe\n\tloading=\"lazy\"\n\theight=\"80px\"\n\twidth=\"100%\"\n\tstyle=\"border-radius: 15px;\"\n\tsrc=\"https://elixia-player.koyeb.app/embed/tencent/003cI52o4daJJL\"\n\tframeborder=\"0\"\n></iframe>\n
\n

\u586b\u597d\u4e86\u518d\u5d4c\u5165\u4ee5\u4e0a\u4ee3\u7801\uff0c\u65e0\u610f\u5916\u5c31\u80fd\u770b\u5230\u8fd9\u6837\u7684\u64ad\u653e\u5668\uff1a

\n

\"\"

\n

\u63a5\u7740\u5916\u94fe\u5361\u7247\uff0c\u662f\u4e00\u79cd\u6bd4\u8f83\u6298\u4e2d\u7684\u65b9\u5f0f\uff0c\u4e5f\u6700\u63a8\u8350\u7684\u65b9\u5f0f\uff1a

\n

\"\"

\n
<iframe\n\tloading=\"lazy\"\n\theight=\"80px\"\n\twidth=\"100%\"\n\tstyle=\"border-radius: 15px;\"\n\tsrc=\"https://elixia-player.koyeb.app/card/tencent/001t1qJd0DaKOs\"\n\tframeborder=\"0\"\n></iframe>\n
\n

\u6700\u540e\u662f\u5b8c\u5168\u4e22\u5f03 HTML \u7684\u56fe\u7247\u683c\u5f0f\uff0c\u5b8c\u5168\u56fa\u5b9a\u7684\u5185\u5bb9\u3002\u5f88\u591a UGC \u5e73\u53f0\u90fd\u4e0d\u80fd\u63d2\u5165 iframe\uff0c\u8fd9\u65f6\u5019\u5c31\u53ef\u4ee5\u76f4\u63a5\u7528\u751f\u6210\u7684 PNG \u56fe\u7247\uff1a

\n
![]( https://elixia-player.koyeb.app/card/tencent/002POzud0db9lK/image)\n
\n

\"Pretender\"

\n

\u5f53\u7136\u54af\u8fd8\u662f\u5efa\u8bae\u5927\u5bb6\u518d\u5957\u4e00\u5c42\u94fe\u63a5\uff0c\u8ba9\u7528\u6237\u80fd\u76f4\u63a5\u70b9\u51fb\u8df3\u8f6c\uff0c\u6240\u4ee5\u5b8c\u6574\u7248\u5982\u4e0b\uff1a

\n

\"\u6614\u6d9f\"

\n
[![\u6614\u6d9f]( https://elixia-player.koyeb.app/card/tencent/002rhFKO3EjKAg/image)]( https://y.qq.com/n/ryqq_v2/songDetail/002rhFKO3EjKAg)\n
\n

\u6ce8\u610f\uff0c\u6211\u8fd9\u4e2a\u767d\u5ad6\u670d\u52a1\u751f\u6210\u56fe\u7247\u975e\u5e38\u6162\uff0c\u5efa\u8bae\u8fd8\u662f\u4fdd\u5b58\u4e00\u4efd\u653e\u670d\u52a1\u5668\ud83d\ude02

\n

\u5176\u4ed6\u5b98\u65b9\u9009\u62e9\uff1a

\n

Spotify \u4ece\u8bbe\u8ba1\u548c\u52a0\u8f7d\u901f\u5ea6\u4e0a\u90fd\u4e0d\u5931\u4e3a\u4e00\u4e2a\u597d\u9009\u62e9\uff0c\u4f46\u6700\u81f4\u547d\u7684\u662f\u9700\u8981\u4e00\u4e9b\u9b54\u6cd5\u624d\u80fd\u8bbf\u95ee\uff0c\u800c\u4e14\u4f60\u603b\u4e0d\u80fd\u8981\u6c42\u4f60\u7684\u8bfb\u8005\u90fd\u4f1a\u7528\u9b54\u6cd5\ud83d\ude02

\n
<iframe\n\tstyle=\"border-radius:12px\"\n\tsrc=\"https://open.spotify.com/embed/track/2leJWl7tBdFVj5Imag5T8J?utm_source=generator\"\n\twidth=\"100%\"\n\theight=\"152\"\n\tframeborder=\"0\"\n\tallowfullscreen=\"\"\n\tallow=\"autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture\"\n\tloading=\"lazy\"\n></iframe>\n
\n

\u7f51\u6613\u4e91 \u4e5f\u4e0d\u662f\u4e0d\u884c\uff0c\u5c31\u662f\u52a0\u8f7d\u8d3c\u6162\uff0c\u4ee5\u524d\u5199\u4e8c\u6b21\u5143\u97f3\u4e50\u63a8\u8350\u7684\u65f6\u5019\u63d2\u5165\u4e86\u4e00\u5806\u7f51\u6613\u4e91 iframe\uff0c\u611f\u89c9\u52a0\u8f7d\u901f\u5ea6\u4e5f\u4e0d\u600e\u4e48\u6837\uff0c\u800c\u4e14\u6709\u70b9\u5acc\u5f03\u5b83\u7684\u989c\u503c\u2026\u2026

\n
<iframe\n\tframeborder=\"0\"\n\tborder=\"0\"\n\twidth=\"100%\"\n\theight=\"100\"\n\tsrc=\"//music.163.com/outchain/player?type=2&id=28915185&auto=0&height=66\"\n>\n</iframe>\n
\n

\u81f3\u4e8e QQ \u97f3\u4e50\uff0c\u597d\u50cf\u6ca1\u5728\u5b98\u7f51\u627e\u5230\u53ef\u5d4c\u5165\u64ad\u653e\u5668\u3002

\n

\u5927\u6982\u5c31\u662f\u8fd9\u4e48\u4e2a\u4e8b\uff0c\u6b22\u8fce\u5927\u5bb6\u76f4\u63a5\u4f7f\u7528\u6211\u5df2\u7ecf\u90e8\u7f72\u597d\u7684\u670d\u52a1\uff0c\u4e0d\u8fc7\u56e0\u4e3a\u662f\u767d\u5ad6\u670d\u52a1\u6240\u4ee5\u6253\u5f00\u53ef\u80fd\u4f1a\u6709\u70b9\u6162\u2026\u2026\u6240\u4ee5\u4e5f\u6b22\u8fce\u5927\u5bb6\u81ea\u5df1\u5728 koyeb \u90e8\u7f72 Elixia Player\uff0c\u8fd9\u6837\u670d\u52a1\u4e5f\u4e0d\u62e5\u6324\uff0c\u4f53\u9a8c\u597d\u90a3\u4e48\u4e00\u70b9\u3002

\n" }, { "author": { "url": "member/zgldh", "name": "zgldh", "avatar": "https://cdn.v2ex.com/gravatar/30fce28a60c11ce4e80876628d0a558c?s=73&d=retro" }, "url": "t/1183599", "date_modified": "2026-01-06T14:45:28+00:00", "content_html": "

\u5148\u653e\u5730\u5740 https://nav-warning-map.zgldh.com/

\n

\u5e38\u770b\u5230\u65b0\u95fb\u8bf4\u54ea\u513f\u54ea\u513f\u53c8\u6f14\u4e60\u4e86\uff0c\u6d77\u57df\u53c8\u7981\u822a\u4e86\u3002\u6807\u9898\u633a\u552c\u4eba\uff0c\u70b9\u8fdb\u53bb\u5168\u662f\u6587\u5b57\uff0c\u6211\u8d2b\u7620\u7684\u60f3\u8c61\u529b\u4e5f\u731c\u4e0d\u51fa\u5230\u5e95\u662f\u54ea\u513f\u554a\u3002

\n

\u5e72\u8106\u505a\u4e2a\u53ef\u89c6\u5316\u5730\u56fe\u5427\u3002

\n

\u6570\u636e\u6e90\uff1a

\n\n

\u5236\u4f5c\u601d\u8def\u548c\u6211\u4e4b\u524d\u90a3\u4e2a\u96f6\u98df\u63a8\u8350\u7cfb\u7edf\u4e00\u4e2a\u5957\u8def:

\n\n

\u53ef\u4ee5\u8fb9\u770b\u56fe\u8fb9\u9274\u8bc1\u4e86\u3002

\n

\"Imgur\"

\n", "date_published": "2026-01-06T14:43:43+00:00", "title": "\u4e2d\u56fd\u6d77\u4e8b\u5c40\u548c\u65e5\u672c\u6d77\u4e0a\u4fdd\u5b89\u5385\u822a\u884c\u8b66\u544a\u53ef\u89c6\u5316\u5730\u56fe", "id": "t/1183599" }, { "author": { "url": "member/plane", "name": "plane", "avatar": "https://cdn.v2ex.com/avatar/e860/c0fc/200723_large.png?m=1764256758" }, "url": "t/1183586", "date_modified": "2026-01-06T12:38:18+00:00", "content_html": "

2026 \u5e74\u4e86\uff0c\u6ca1\u6709\u4e00\u4e2a\u80fd\u591f\u50cf\u5f53\u5e74\u7684 macwk \u4e00\u6837\u6709\u8bbe\u8ba1\u611f\u4e14\u6709\u7528\u7684\u8f6f\u4ef6\u5bfc\u822a\u7ad9\u4e00\u6837\u7684\u5f00\u6e90\u9879\u76ee\u5bfc\u822a\u7ad9\u3002\u73b0\u5728\u8d8a\u6765\u8d8a\u4f9d\u9760\u77ed\u89c6\u9891\u83b7\u53d6\u597d\u9879\u76ee\u7684\u4fe1\u606f\uff0c\u975e\u5e38\u788e\u7247\u5316\uff0c\u5f88\u96be\u6536\u85cf\uff0c\u4f46\u662f\u8fd8\u8981\u53bb github \u770b\uff0c\u8fd8\u4e0d\u77e5\u9053\u600e\u4e48\u4e0b\u8f7d\u5b89\u88c5\u3002\u800c\u4e14\u5f88\u591a\u51b7\u95e8\u4f46\u662f\u6709\u610f\u601d\u7684\u9879\u76ee\u6ca1\u6709\u80fd\u591f\u88ab\u4eba\u53d1\u73b0\u3002

\n

\u56e0\u6b64\u6211\u60f3\u505a\u4e00\u4e2a\u8ba9\u6709\u8da3\u7684\u9879\u76ee\u6c47\u603b\u8d77\u6765\u8ba9\u5927\u5bb6\u770b\u5230\uff0c\u800c\u4e14\u80fd\u591f\u5f88\u5bb9\u6613\u5e2e\u4f60\u4e0b\u8f7d\u5b89\u88c5\u7684\u7f51\u7ad9\u5566\u3002

\n

\u7f51\u5740\uff1ahttps://repoview.dev/

\n

\u559c\u6b22\u53ef\u4ee5\u6536\u85cf\u8d77\u6765\u5440\u3002\u8fd8\u5728\u5f88\u5feb\u7684\u8fed\u4ee3\u66f4\u65b0\u4e2d\u3002\u9879\u76ee\u7edf\u8ba1\u5b89\u88c5\u4e0b\u8f7d\u7684\u529f\u80fd\u9a6c\u4e0a\u4e0a\u7ebf\u54df~

\n

\u5927\u5bb6\u60f3\u8981\u4ec0\u4e48\u529f\u80fd\u53ef\u4ee5\u7559\u8a00\u5440\uff0c\u542c\u529d\u3002

\n

\"\u622a\u56fe

\n", "date_published": "2026-01-06T12:33:53+00:00", "title": "\u505a\u4e86\u4e2a\u5f00\u6e90\u9879\u76ee\u5bfc\u822a\u7ad9\uff0c\u5e2e\u5927\u5bb6\u53d1\u73b0\u6536\u85cf\u5b89\u88c5\u597d\u7528\u6709\u8da3\u7684\u9879\u76ee", "id": "t/1183586" }, { "author": { "url": "member/Tiberisino", "name": "Tiberisino", "avatar": "https://cdn.v2ex.com/avatar/6e2a/d8ca/713983_large.png?m=1765288855" }, "url": "t/1183579", "title": "hacknews \u91cd\u5ea6\u7528\u6237\u770b\u8fc7\u6765 ,HN \u8bc4\u8bba\u9605\u8bfb\u589e\u5f3a\u811a\u672c\uff1a\u5361\u7247\u5316 + \u6298\u53e0/\u8df3 L0 + \u4e3b\u9898/\u6e10\u53d8 + \u50cf\u7d20\u5934\u50cf\uff08\u6c42\u5927\u4f6c\u4eec\u7684\u5ba1\u7f8e\u5efa\u8bae)", "id": "t/1183579", "date_published": "2026-01-06T10:41:36+00:00", "content_html": "

\u6253\u78e8\u4e86\u4e00\u5468\u7684\u5361\u7247\u5f0f ui \u5927\u4f6c\u4eec\u8fd8\u6709\u66f4\u591a\u7684 \u529f\u80fd/\u6837\u5f0f \u5efa\u8bae\u5417 \u51c6\u5907\u53d1\u5e03\u5566

\n

https://www.bilibili.com/video/BV16tqwBaE4n/

\n

\u5b83\u4e3b\u8981\u89e3\u51b3\u4ec0\u4e48\u95ee\u9898\uff1f

\n\n
\n

\u6838\u5fc3\u529f\u80fd\u4e00\u89c8\uff08\u5f53\u524d\u811a\u672c\u5df2\u5b9e\u73b0\uff09

\n

1) \u8bc4\u8bba\u533a\u5361\u7247\u5316\u91cd\u6392\uff08\u6838\u5fc3\uff09

\n\n

\u9002\u7528\u573a\u666f\uff1a\u957f\u8ba8\u8bba\u9605\u8bfb\u4f53\u9a8c\u4f1a\u660e\u663e\u63d0\u5347\uff0c\u5c24\u5176\u662f\u591a\u5c42\u56de\u590d\u3002

\n
\n

2) \u4e3b\u9898\u4e0e\u5916\u89c2\uff1a\u6d45\u8272/\u6df1\u8272/\u8ddf\u968f\u7cfb\u7edf + \u6e10\u53d8\u5c42\u7ea7\u80cc\u666f

\n\n

\u76ee\u6807\uff1a\u8ba9\u201c\u957f\u65f6\u95f4\u5237\u697c\u201d\u53d8\u5f97\u66f4\u8212\u670d\u3002

\n
\n

3) \u6298\u53e0/\u5c55\u5f00\uff08\u504f\u626b\u697c\u7528\uff09

\n

\u4e3a\u4e86\u5feb\u901f\u626b\u697c\uff0c\u5b83\u63d0\u4f9b\u591a\u79cd\u6298\u53e0\u7b56\u7565\uff08\u53ef\u5f00\u5173/\u53ef\u914d\u7f6e\uff09\uff1a

\n\n
\n

4) \u201c\u5c55\u5f00\u63d0\u793a\u201d + \u6570\u91cf\u989c\u8272\u63d0\u9192\uff08\u66f4\u597d\u626b\u5927\u697c\uff09

\n

\u5f53\u67d0\u6761\u8bc4\u8bba\u88ab\u6298\u53e0\u65f6\uff0c\u4f1a\u51fa\u73b0\u7c7b\u4f3c\uff1a

\n\n

\u5e76\u4e14\u8fd9\u4e2a\u6570\u5b57\u4f1a\u6839\u636e\u6570\u91cf\u53d8\u8272\uff08\u53ef\u8c03\u9608\u503c/\u989c\u8272\uff09\uff1a

\n\n

\u53e6\u5916\u652f\u6301\u628a\u8fd9\u4e2a\u63d0\u793a\u6309\u94ae\u653e\u5728\uff1a

\n\n
\n

5) L0 \u4e3b\u7ebf\u7a0b\u5bfc\u822a\uff08\u626b\u697c\u795e\u5668\uff09

\n

\u6bcf\u6761\u8bc4\u8bba\u53f3\u4e0a\u89d2\u4f1a\u6709\uff1a

\n\n

\uff08\u8fd9\u5757\u6211\u81ea\u5df1\u7528\u5f97\u6700\u591a\uff0c\u957f\u8ba8\u8bba\u57fa\u672c\u9760\u5b83\u5feb\u901f\u626b\u697c\u3002\uff09

\n
\n

6) Hover \u7236\u7ea7\u9ad8\u4eae\uff1a\u627e\u4e0a\u4e0b\u6587\u66f4\u5feb

\n

\u9f20\u6807\u60ac\u505c\u67d0\u6761\u8bc4\u8bba\u65f6\uff1a

\n\n
\n

7) OP \uff08\u697c\u4e3b\uff09\u9ad8\u4eae

\n

\u697c\u4e3b\uff08 story author \uff09\u7684\u8bc4\u8bba\u4f1a\u6709\u989d\u5916\u9ad8\u4eae\u63cf\u8fb9\uff0c\u65b9\u4fbf\u8ffd\u8e2a OP \u5728\u697c\u91cc\u8bf4\u4e86\u4ec0\u4e48\u3002

\n
\n

8) Dead \u8bc4\u8bba\u5904\u7406\uff08\u5355\u9009\u6a21\u5f0f\uff09

\n

\u5bf9\u88ab\u6807\u8bb0\u4e3a dead \u7684\u8bc4\u8bba\u53ef\u4ee5\u9009\u62e9\uff1a

\n\n
\n

9) \u50cf\u7d20\u5934\u50cf\uff08\u57fa\u4e8e\u7528\u6237\u540d\u751f\u6210\uff09

\n

\u6bcf\u4e2a\u7528\u6237\u540d\u65c1\u8fb9\u4f1a\u751f\u6210\u4e00\u4e2a \u5bf9\u79f0\u50cf\u7d20\u5934\u50cf\uff08\u7eaf\u524d\u7aef\u751f\u6210\uff0c\u65e0\u8bf7\u6c42\u5916\u90e8\u8d44\u6e90\uff09\uff1a

\n\n

\u7528\u9014\uff1a\u5feb\u901f\u8bc6\u522b\u540c\u4e00\u4e2a\u4eba\u5728\u697c\u91cc\u51fa\u73b0\u7684\u56de\u590d\u3002

\n
\n

10) \u590d\u5236\u8bc4\u8bba\u76f4\u8fbe\u94fe\u63a5\uff08\u53ef\u9009\uff09

\n

\u6bcf\u6761\u8bc4\u8bba\u53f3\u4e0a\u89d2\u53ef\u4ee5\u663e\u793a copy\uff1a

\n\n
\n

11) \u9876\u90e8\u5bfc\u822a\u5438\u9644 + \u56de\u5230\u9876\u90e8

\n\n
\n

12) \u5feb\u6377\u952e\uff08\u53ef\u9009\uff09

\n

Alt + Shift\uff1a

\n\n" }, { "author": { "url": "member/moohng", "name": "moohng", "avatar": "https://cdn.v2ex.com/gravatar/5f17366ba4e4cd03a9526f2b7a92293e?s=73&d=retro" }, "url": "t/1183563", "title": "\u641e\u4e86\u4e00\u4e2a\u5fae\u4fe1\u516c\u4f17\u53f7\u7f16\u8f91\u3001\u6392\u7248\u5de5\u5177 Wedown\uff0c\u5148\u653e\u51fa\u6765\u7ed9\u5927\u5bb6\u514d\u8d39\u8bd5\u7528", "id": "t/1183563", "date_published": "2026-01-06T09:47:10+00:00", "content_html": "

\u5730\u5740\uff1ahttps://wedown.app

\n\n

\"\"

\n

\u57fa\u672c\u529f\u80fd\u90fd\u6709\u4e86\uff0c\u6211\u81ea\u5df1\u4e5f\u7528\u4e86\u8fd1\u534a\u4e2a\u591a\u6708\u4e86\u3002

\n

\u540e\u9762\u60f3\u96c6\u6210 AI \u8fdb\u6765\uff0c\u6253\u7b97\u5c06\u90e8\u5206\u529f\u80fd\u641e\u6210\u8ba2\u9605\u5236\uff0c\u4f46\u662f\u5361\u5728\u4e86\u652f\u4ed8\u8fd9\u4e00\u6b65\u3002

\n

\u672c\u6765\u60f3\u6ce8\u518c\u4e00\u4e2a\u4e2a\u4f53\u5de5\u5546\u6237\u7684\uff0c\u7ed3\u679c\u53cd\u590d\u7533\u8bf7\u4e86\u51e0\u6b21\u4e0d\u7ed9\u8fc7\uff0c\u90a3\u8fb9\u7684\u4eba\u6001\u5ea6\u592a\u5c4c\u4e86\uff0c\u591a\u95ee\u4e00\u4e0b\u5c31\u4e0d\u8010\u70e6\u6700\u540e\u76f4\u63a5\u8bf4\u4e2a\u4eba\u5f00\u53d1\u8005\u4e0d\u7ed9\u6ce8\u518c\u3002

\n

\u6211\u771f\u7684\u53d7\u591f\u90a3\u5e2e\u4eba\u4e86\uff0c\u5173\u4e8e\u7ebf\u4e0a\u652f\u4ed8\u5927\u5bb6\u8fd8\u6709\u6ca1\u6709\u4ec0\u4e48\u597d\u7684\u65b9\u6848\u554a\uff1f\u771f\u5fc3\u6c42\u6559\u4e00\u4e0b\u4e2a\u4eba\u5f00\u53d1\u8005\u600e\u4e48\u624d\u80fd\u8d70\u901a\u8fd9\u4e00\u6b65\u554a\uff1f

\n

\u4e4b\u524d\u4e86\u89e3\u8fc7 stripe \uff0c\u4f46\u56fd\u5185\u597d\u50cf\u4e0d\u592a\u597d\u7533\u8bf7\uff0c\u8fd8\u6709\u4e00\u4e9b\u5c0f\u4f17\u5e73\u53f0\u6536\u8d39\u6b7b\u8d35\u8fd8\u611f\u89c9\u4e0d\u592a\u9760\u8c31\u3002

\n

\u5728\u8d70\u901a\u8fd9\u4e00\u6b65\u4e4b\u524d\uff0c\u5148\u653e\u51fa\u6765\u7ed9\u5927\u5bb6\u514d\u8d39\u8bd5\u7528\u5427

\n

\u5982\u679c\u611f\u5174\u8da3\uff0c\u4e5f\u6b22\u8fce\u5927\u5bb6\u8d21\u732e\u4e3b\u9898\u6a21\u677f\uff1a

\n
https://github.com/wedown/wedown-themes\n
\n

\u8fd9\u662f\u4e00\u4e2a\u5f00\u6e90\u9879\u76ee\uff0c\u5982\u679c\u540e\u671f\u771f\u7684\u8d70\u901a\u4e86\u8fd9\u4e00\u6b65\uff0c\u4e3b\u9898\u4e5f\u4f1a\u5b8c\u5168\u514d\u8d39\u4f7f\u7528\u7684\u3002

\n

\u4e2a\u4eba\u5f00\u53d1\u8005\u771f\u7684\u592a\u96be\u4e86\uff0c\u671b\u5927\u795e\u4eec\u6307\u70b9\u4e00\u4e0b

\n\n" }, { "author": { "url": "member/vodmaker", "name": "vodmaker", "avatar": "https://cdn.v2ex.com/avatar/54ba/2d06/40481_large.png?m=1765535313" }, "url": "t/1183561", "title": "\u6211\u53c8 Vibe Coding \u4e86\u4e00\u4e2a Agent \u9879\u76ee", "id": "t/1183561", "date_published": "2026-01-06T09:40:40+00:00", "content_html": "

\u6700\u8fd1 Vibe coding \u548c Agent \u90fd\u6bd4\u8f83\u706b\uff0c\u6700\u8fd1\u8fd8\u662f\u6bd4\u8f83\u6709\u7a7a\uff0c\u5c31\u7528 Cursor \u968f\u624b\u64b8\u4e86\u4e00\u4e2a\u547d\u4ee4\u884c agent \u5de5\u5177\uff0c\u53d6\u540d shex \uff08 shell + execute \uff09\u3002

\n

\u8d77\u56e0

\n

\u6bcf\u6b21\u7528\u7ec8\u7aef\u7684\u65f6\u5019\uff0c\u603b\u6709\u90a3\u4e48\u51e0\u4e2a\u547d\u4ee4\u6b7b\u6d3b\u8bb0\u4e0d\u4f4f\u3002\u6bd4\u5982 tar \u7684\u53c2\u6570\u5230\u5e95\u662f -xvf \u8fd8\u662f -cvf \uff0cfind \u547d\u4ee4\u7684\u8bed\u6cd5\u53c8\u662f\u4ec0\u4e48\u6765\u7740... \u4ee5\u524d\u90fd\u662f\u73b0\u67e5\uff0c\u73b0\u5728\u6709\u4e86\u5927\u6a21\u578b\uff0c\u5e72\u8106\u8ba9\u5b83\u5e2e\u6211\u751f\u6210\u547d\u4ee4\u7b97\u4e86\u3002

\n

\u5e02\u9762\u4e0a\u7c7b\u4f3c\u7684\u5de5\u5177\u4e0d\u5c11\uff0c\u4f46\u8981\u4e48\u529f\u80fd\u592a\u91cd\uff0c\u8981\u4e48\u914d\u7f6e\u592a\u9ebb\u70e6\u3002\u6211\u5c31\u60f3\u8981\u4e00\u4e2a\u6700\u7b80\u5355\u7684\uff1a\u8f93\u5165\u81ea\u7136\u8bed\u8a00\uff0c\u6267\u884c\u547d\u4ee4\uff0c\u5b8c\u4e8b\u3002

\n

\u6548\u679c

\n

\u5b89\u88c5\uff1a

\n
pip install shex\n
\n

\u4f7f\u7528\uff1a

\n
shex \u5217\u51fa\u5f53\u524d\u76ee\u5f55\u6240\u6709\u6587\u4ef6\nshex \u67e5\u770b\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5\nshex \u627e\u51fa\u6240\u6709 python \u6587\u4ef6\nshex \u538b\u7f29 logs \u6587\u4ef6\u5939\n
\n

\u9996\u6b21\u8fd0\u884c\u4f1a\u5f15\u5bfc\u4f60\u9009\u8bed\u8a00\u3001\u9009\u5927\u6a21\u578b\u3001\u586b API Key \uff0c\u4e4b\u540e\u5c31\u53ef\u4ee5\u76f4\u63a5\u7528\u4e86\u3002

\n

\u7279\u6027

\n\n

\u5b9e\u73b0

\n

\u6838\u5fc3\u601d\u8def\u662f\u7528 OpenAI \u7684 Function Calling \uff08 Tool Calling \uff09\u673a\u5236\uff0c\u628a\u547d\u4ee4\u6267\u884c\u5c01\u88c5\u6210\u4e00\u4e2a tool \u3002\u7528\u6237\u8f93\u5165\u81ea\u7136\u8bed\u8a00\u540e\uff0c\u5927\u6a21\u578b\u51b3\u5b9a\u8981\u6267\u884c\u4ec0\u4e48\u547d\u4ee4\uff0c\u7136\u540e\u8c03\u7528\u8fd9\u4e2a tool \u3002

\n

\u5927\u6982\u67b6\u6784\uff1a

\n
\u7528\u6237\u8f93\u5165 -> LLM \u5206\u6790 -> Tool Call (execute_command) -> \u6267\u884c\u7ed3\u679c -> LLM \u5224\u65ad\u662f\u5426\u9700\u8981\u91cd\u8bd5\n
\n

\u5982\u679c\u6267\u884c\u5931\u8d25\uff0cLLM \u4f1a\u6839\u636e\u9519\u8bef\u4fe1\u606f\u81ea\u52a8\u5c1d\u8bd5\u5176\u4ed6\u65b9\u6cd5\uff0c\u6700\u591a\u91cd\u8bd5 3 \u6b21\u3002

\n

\u5371\u9669\u547d\u4ee4\u7684\u5224\u65ad\u4e5f\u4ea4\u7ed9 LLM \uff0c\u5b83\u4f1a\u5728\u8c03\u7528 tool \u65f6\u4f20\u4e00\u4e2a is_dangerous \u53c2\u6570\uff0c\u7a0b\u5e8f\u6839\u636e\u8fd9\u4e2a\u53c2\u6570\u51b3\u5b9a\u662f\u5426\u5f39\u786e\u8ba4\u3002

\n

\u4ee3\u7801

\n

\u9879\u76ee\u5df2\u7ecf\u53d1\u5230 PyPI \u4e86\uff0c\u6e90\u7801\u5728 GitHub\uff1a

\n\n

\u4ee3\u7801\u91cf\u4e0d\u5927\uff0c\u6838\u5fc3\u903b\u8f91\u5c31\u51e0\u767e\u884c\uff0c\u611f\u5174\u8da3\u7684\u53ef\u4ee5\u770b\u770b\u3002

\n

\u6700\u540e

\n

\u6574\u4e2a\u9879\u76ee\u4ece\u60f3\u6cd5\u5230\u53d1\u5e03\u5927\u6982\u82b1\u4e86\u4e00\u4e2a\u4e0b\u5348\uff0c\u5927\u90e8\u5206\u4ee3\u7801\u90fd\u662f Cursor \u5e2e\u5fd9\u5199\u7684\uff0c\u6211\u4e3b\u8981\u5c31\u662f\u63d0\u9700\u6c42\u3001\u8c03\u8c03 prompt \u3001\u4fee\u4fee bug \u3002\u4e0d\u5f97\u4e0d\u8bf4\u73b0\u5728 vibe coding \u7684\u6548\u7387\u786e\u5b9e\u9ad8\uff0c\u4ee5\u524d\u8fd9\u79cd\u5de5\u5177\u8d77\u7801\u5f97\u5199\u4e24\u4e09\u5929\u3002

\n

\u6b22\u8fce\u8bd5\u7528\uff0c\u6709\u95ee\u9898\u53ef\u4ee5\u63d0 Issue \u3002

\n

\u53e6\u5916\u518d\u9644\u4e0a\u4e0a\u4e00\u4e2a Agent \u9879\u76ee\u94fe\u63a5\uff1a https://fin-agent.chat

\n" }, { "author": { "url": "member/cyssxt", "name": "cyssxt", "avatar": "https://cdn.v2ex.com/gravatar/40ffd8cf89ec3a4a55c60950fd0d4716?s=73&d=retro" }, "url": "t/1183558", "date_modified": "2026-01-06T09:27:10+00:00", "content_html": "

\u5982\u9898\uff0c\u6709\u9700\u8981\u53ef\u4ee5\u8054\u7cfb aW5zcGVjdGlvbjEyMjM=

\n", "date_published": "2026-01-06T09:26:48+00:00", "title": "\u81ea\u7814\u4e00\u5957\u57fa\u4e8e bsc20 \u548c erc20 \u7684\u5f52\u96c6\u548c\u4e0a\u5206\u7cfb\u7edf", "id": "t/1183558" }, { "author": { "url": "member/ctrlz526", "name": "ctrlz526", "avatar": "https://cdn.v2ex.com/avatar/48c2/f591/772141_large.png?m=1766578809" }, "url": "t/1183554", "date_modified": "2026-01-06T09:19:17+00:00", "content_html": "

\u505a\u4e86\u4e00\u4e2a\u52a8\u6f2b\u5361\u7247 App \uff0c2.0 \u7248\u672c\u5df2\u7ecf\u652f\u6301\u756a\u7ec4\u8ba1\u5212\u540c\u6b65\uff0c\u5e76\u4e14\u52a0\u5165\u4e86\u6392\u884c\u699c\u529f\u80fd\uff0c\u5927\u5bb6\u53ef\u4ee5\u5bfc\u5165 bgm \u4e4b\u540e\uff0c\u76f4\u63a5\u6295\u699c\uff0c\u6295\u699c\u5185\u5bb9\u662f GIF + \u77ed\u8bc4\uff0c\u6240\u4ee5\u4e00\u952e\u5bfc\u5165\u540e\u53ea\u9700\u8981\u66f4\u6362 GIF \u56fe\u5373\u53ef\u5b9e\u73b0\u6295\u699c\u4e86\uff01

\n

\u5c3d\u60c5\u6295\u699c\uff0c\u7531\u5927\u5bb6\u9009\u51fa\u5468\u699c\u548c\u6708\u699c\uff0c\u6295\u699c\u8fd8\u6709\u79ef\u5206\u5956\u52b1\uff0c\u4efb\u4f55\u5546\u54c1\u90fd\u53ef\u4ee5\u901a\u8fc7\u79ef\u5206\u6362\u53d6\u3002

\n

\ud83d\udd17 BGM \u96c6\u6210

\n\n

\ud83c\udfc6 \u65b0\u589e\u6392\u884c\u699c

\n\n

\u2b50 \u79ef\u5206\u7cfb\u7edf

\n\n

\ud83d\udcf1 \u5176\u4ed6\u529f\u80fd

\n\n

App Store \u641c\u300c AniCard \u300d

\n

\u6b22\u8fce\u756a\u53cb\u6765\u4f53\u9a8c\u540c\u6b65\u529f\u80fd\uff0c\u6709\u95ee\u9898\u53ef\u4ee5\u5728\u8fd9\u91cc\u53cd\u9988\uff0c\u6216\u8005\u52a0 qq \u7fa4 970530442 \u3002

\n

\u73b0\u5728\u8bc4\u8bba\u533a\u9001 20 \u4e2a 100 \u79ef\u5206\u5151\u6362\u7801\u3002\n\u771f\u7684\u9700\u8981\u7684\u4eba\u518d\u9886\u53d6\uff0c\u62b1\u7740\u8bd5\u8bd5\u7684\u53ef\u4ee5\u76f4\u63a5\u4f53\u9a8c\u7684\uff0c\u6240\u6709\u529f\u80fd\u90fd\u6ca1\u6709\u5f88\u5927\u9650\u5236\uff0c\u5151\u6362\u7801\u4e0d\u662f\u5f88\u91cd\u8981\u3002

\n

2.0.0 \u7684\u4e0a\u7ebf\u5c31\u79bb\u4e0d\u5f00\u7b2c\u4e00\u6279\u7528\u6237\u7684\u53cd\u9988\uff0c\u8ba9\u4ea7\u54c1\u4ece\u4e00\u5f00\u59cb\u7684\u6666\u6da9\u96be\u61c2\u5230\u73b0\u5728\u53ef\u4ee5\u4e00\u773c\u770b\u61c2\u5f15\u5bfc\uff0c\u5728\u6b64\u90d1\u91cd\u8868\u793a\u611f\u8c22\u3002\n\u6211\u575a\u4fe1\u4ea7\u54c1\u8fd8\u9700\u8981\u6253\u78e8\u7684\uff0c\u6240\u4ee5\u6709\u4ec0\u4e48\u4f53\u9a8c\u4e0a\u7684\u95ee\u9898\u6b22\u8fce\u8bc4\u8bba\u533a\u6307\u51fa

\n", "date_published": "2026-01-06T09:18:44+00:00", "title": "[App] AniCard 2.0 - \u652f\u6301 BGM \u6536\u85cf\u540c\u6b65 \u6295\u7a3f\u51b2\u6392\u884c\u699c\u4ee5\u53ca\u52a8\u56fe\u5206\u4eab\uff0c\u628a\u4f60\u7684\u559c\u597d\u5206\u4eab\u51fa\u6765\u5427\uff01\u73b0\u5728\u8bc4\u8bba\u533a\u9001 20 \u4e2a 100 \u79ef\u5206\u5151\u6362\u7801", "id": "t/1183554" }, { "author": { "url": "member/t8y2", "name": "t8y2", "avatar": "https://cdn.v2ex.com/gravatar/afbe930635ecc5a4bb3ae6ffaa9326cb?s=73&d=retro" }, "url": "t/1183540", "title": "[\u5f00\u6e90\u53d1\u5e03] UniHub - \u8de8\u5e73\u53f0\u684c\u9762\u5de5\u5177\u96c6\uff0c\u652f\u6301\u63d2\u4ef6\u6269\u5c55\u7684\u6548\u7387\u795e\u5668 \ud83d\ude80", "id": "t/1183540", "date_published": "2026-01-06T08:28:54+00:00", "content_html": "

\u5f81\u96c6\u529f\u80fd\u5efa\u8bae&star

\n

\ud83d\udd17 GitHub: https://github.com/t8y2/unihub

\n

UniHub \u662f\u4e00\u4e2a \u63d2\u4ef6\u5316\u7684\u672c\u5730\u684c\u9762\u5de5\u5177\u7bb1\uff0c\u901a\u8fc7\u5b89\u88c5\u63d2\u4ef6\u6765\u6269\u5c55\u529f\u80fd\uff0c\u4e3b\u6253\u79bb\u7ebf\u53ef\u7528\u3001\u6570\u636e\u4e0d\u51fa\u672c\u673a\u3001\u53ef\u6298\u817e\u3002\n\"\u622a\u56fe\"

\n

v1.1.0 \u66f4\u65b0\u8981\u70b9\uff1a

\n

\u65b0\u589e\uff1a\u5b98\u65b9\u63d2\u4ef6-Excalidraw \u7ed8\u56fe\u5de5\u5177 - \u624b\u7ed8\u98ce\u683c\u7684\u56fe\u8868\u548c\u767d\u677f\u5de5\u5177\uff0c\u652f\u6301\u672c\u5730\u4fdd\u5b58\u548c\u52a0\u8f7d

\n

\u65b0\u589e\uff1a\u5b98\u65b9\u63d2\u4ef6-Ctool \u5f00\u53d1\u5de5\u5177\u96c6 - \u5305\u542b 40+\u4e2a\u5f00\u53d1\u5de5\u5177\uff1a\u54c8\u5e0c\u3001\u52a0\u5bc6\u89e3\u5bc6\u3001Base64 \u3001\u65f6\u95f4\u8f6c\u6362\u3001\u4e8c\u7ef4\u7801\u7b49

\n

\u65b0\u589e\uff1a\u5b98\u65b9\u63d2\u4ef6-\u5f85\u529e\u6e05\u5355 (TodoList) - \u4f18\u96c5\u5f85\u529e\u4e8b\u9879\u7ba1\u7406\u5de5\u5177\uff0c\u652f\u6301\u5206\u7c7b\u3001\u4f18\u5148\u7ea7\u3001\u65e5\u671f\u65f6\u95f4\u9009\u62e9\u548c\u672c\u5730\u5b58\u50a8

\n

\u65b0\u589e\uff1a\u7cfb\u7edf\u5e94\u7528\u626b\u63cf\u529f\u80fd\uff0c\u652f\u6301\u53d1\u73b0\u548c\u7edf\u4e00\u641c\u7d22\u672c\u5730\u5b89\u88c5\u7684\u5e94\u7528\u7a0b\u5e8f

\n

\u65b0\u589e\uff1a\u589e\u5f3a\u5168\u5c40\u641c\u7d22\u4f53\u9a8c\uff0c\u53ef\u4ee5\u5feb\u901f\u627e\u5230\u7cfb\u7edf\u4e2d\u7684\u5e94\u7528

\n

\u4f18\u5316\uff1a\u91cd\u6784\u4fa7\u8fb9\u680f\u8fb9\u6846\u6837\u5f0f\uff0c\u652f\u6301\u6761\u4ef6\u6e32\u67d3

\n

\u4f18\u5316\uff1a\u63d2\u4ef6\u7ba1\u7406\u9875\u9762\u7684 UI \u5e03\u5c40\u548c\u4ea4\u4e92\u4f53\u9a8c

\n

\u672a\u6765\u8ba1\u5212\uff1a\u66f4\u591a\u5185\u7f6e\u63d2\u4ef6\u3001\u63d2\u4ef6\u5e02\u573a\u5b8c\u5584\u3001\u66f4\u597d\u7684\u63d2\u4ef6\u5f00\u53d1\u5de5\u5177\u94fe\u3001AI \u652f\u6301

\n

\u4ee3\u7801\u53ef\u80fd\u8fd8\u6709\u5f88\u591a\u4e0d\u5b8c\u5584\u7684\u5730\u65b9\uff0c\u6b22\u8fce\u5927\u5bb6\u63d0\u51fa\u5efa\u8bae\u548c\u610f\u89c1\uff01\n\u5982\u679c\u4f60\u89c9\u5f97\u8fd9\u4e2a\u9879\u76ee\u6709\u7528\uff0c\u6b22\u8fce Star\ud83c\udf1f / Issue / PR / \u63d2\u4ef6\u5171\u5efa\u3002

\n" }, { "author": { "url": "member/blackmatch", "name": "blackmatch", "avatar": "https://cdn.v2ex.com/avatar/ee21/4396/254973_large.png?m=1767171627" }, "url": "t/1183517", "title": "vibe coding \u4e86\u4e00\u4e2a\u56fe\u7247\u53bb\u6c34\u5370\u5de5\u5177", "id": "t/1183517", "date_published": "2026-01-06T07:23:48+00:00", "content_html": "

\u4f53\u9a8c\u5730\u5740\uff1a http://117.72.202.189/

\n

\uff08\u767d\u5ad6\u7684\u673a\u5668\uff0c\u5927\u4f6c\u4eec\u8f7b\u70b9\u62cd\uff0c\u6027\u80fd\u5783\u573e\uff0c\u5904\u7406\u4e00\u5f20\u56fe\u7247\u8981 50 \u79d2\u5de6\u53f3\u3002\u3002\u3002\uff09

\n

\u7528\u7684\u662f cursor \uff0c\u4e3b\u8981\u662f Opus4.5 \u6a21\u578b\u3002

\n

\u8fd9\u7c7b\u5de5\u5177\u8c8c\u4f3c\u6bd4\u8f83\u654f\u611f\uff0cDDDD \u3002

\n

\u4f7f\u7528\u4e86\u51e0\u6b3e\u5de5\u5177\uff0c\u90fd\u4e0d\u5c3d\u4eba\u610f\uff0c\u8981\u4e48\u6548\u679c\u4e0d\u597d\uff0c\u8981\u4e48\u514d\u8d39\u989d\u5ea6\u4e0d\u591f\u7528\uff0c\u6240\u4ee5\u5c31\u5c1d\u8bd5\u627e\u627e\u5f00\u6e90\u7684\uff0c\u770b\u5230 IOPaint \u4e4b\u524d\u8c8c\u4f3c\u5f88\u706b\uff0c\u73b0\u5728\u4ee3\u7801\u4ed3\u5e93\u5df2\u7ecf\u5f52\u6863\u4e86\uff0c\u4e5f\u6709\u5176\u4ed6\u5927\u4f6c\u57fa\u4e8e\u8fd9\u4e2a\u4ee3\u7801\u4ed3\u5e93\u4fee\u6539\u7684\u7248\u672c\u3002

\n

\u5927\u6982\u4e86\u89e3\u4e86\u4e00\u4e0b\u53bb\u6c34\u5370\u7684\u539f\u7406\uff0c\u76ee\u524d\u4e3b\u6d41\u7684\u505a\u6cd5\u662f\uff1a\u901a\u8fc7\u7b97\u6cd5\u5bf9\u6c34\u5370\u533a\u57df\u8fdb\u884c\u8986\u76d6\u91cd\u65b0\u7ed8\u5236\uff0c\u5c3d\u53ef\u80fd\u4fdd\u8bc1\u8d34\u8fd1\u539f\u56fe\u3002

\n

\u5927\u4f6c\u4eec\u6478\u9c7c\u7684\u65f6\u5019\u53ef\u4ee5\u628a\u73a9\u4e00\u4e0b\uff0c\u6548\u679c\u5f88\u4e00\u822c\uff0c\u6c42\u63a8\u8350\u597d\u7528\u7684\u514d\u8d39\u7684\u53bb\u6c34\u5370\u5de5\u5177\u3002

\n" }, { "author": { "url": "member/convolution", "name": "convolution", "avatar": "https://cdn.v2ex.com/avatar/02f5/44cd/672135_large.png?m=1744252250" }, "url": "t/1183515", "title": "\u505a\u4e86\u4e2a AI \u63d0\u793a\u8bcd\u5e93 TrendingPrompt\uff0c\u4e13\u95e8\u7528\u6765\u6355\u6349\u548c\u5206\u4eab\u201c\u5f53\u4e0b\u6700\u706b\u201d\u7684 AI \u89c6\u89c9\u8d8b\u52bf", "id": "t/1183515", "date_published": "2026-01-06T07:19:07+00:00", "content_html": "

\u6700\u8fd1\u5728\u6298\u817e\u5404\u79cd AI \u751f\u56fe\u63d0\u793a\u8bcd\uff0cAI \u56fe\u50cf\u751f\u6210\u8fd9\u4e2a\u9886\u57df\uff0c\u8d8b\u52bf\u53d8\u5316\u7684\u901f\u5ea6\u7b80\u76f4\u662f\u6309\u5468\u7b97\u7684\u3002

\n

\u6211\u53d1\u73b0\uff0c\u201c\u8d8b\u52bf\u63d0\u793a\u8bcd\u201d\u624d\u662f\u771f\u6b63\u80fd\u51fa\u597d\u56fe\u7684\u5173\u952e\u3002\u90a3\u4e9b\u80fd\u8ba9\u4f60\u7684\u56fe\u5728\u793e\u4ea4\u5a92\u4f53\u4e0a\u8131\u9896\u800c\u51fa\u7684\uff0c\u5f80\u5f80\u662f\u6355\u6349\u4e86\u6700\u65b0\u6a21\u578b\u7279\u6027\u548c\u793e\u533a\u5ba1\u7f8e\u7684 Prompt \u3002\n\u6211\u6574\u7406\u5e76\u4e0a\u7ebf\u4e86\u4e00\u4e2a\u5c0f\u7ad9\uff1atrendingprompt.io

\n

\u8fd9\u4e2a\u7ad9\u7684\u521d\u8877\u5f88\u7b80\u5355\uff1a

\n
    \n
  1. \u8d8b\u52bf\u6355\u6349\uff1a\u53ea\u6536\u5f55\u90a3\u4e9b\u5728\u5404\u5927 AI \u793e\u533a\uff08 Reddit, Discord, X \u7b49\uff09\u88ab\u8bc1\u660e\u6709\u6548\u3001\u9ad8\u8d28\u91cf\u3001\u4e14\u6b63\u5728\u6d41\u884c\u7684\u89c6\u89c9\u98ce\u683c\u548c\u63d0\u793a\u8bcd\u3002
  2. \n
  3. \u524d\u6cbf\u9002\u914d\uff1a\u76ee\u524d\u91cd\u70b9\u6536\u5f55\u4e86 Gemini(Nano Banana)\u3001ChatGPT \u3001Midjunery \u7b49\u6a21\u578b\u7684\u63d0\u793a\u8bcd\u3002
  4. \n
  5. \u5b8c\u5168\u514d\u8d39\uff1a\u70b9\u5f00\u5373\u7528\u3002
  6. \n
\n

\u770b\u770b\u5927\u5bb6\u5728 AI \u521b\u4f5c\u4e0a\u8fd8\u6709\u54ea\u4e9b\u75db\u70b9\u3002\u5982\u679c\u4f60\u89c9\u5f97\u6709\u7528\uff0c\u6216\u8005\u6709\u66f4\u597d\u7684 Prompt \u613f\u610f\u5206\u4eab\uff0c\u6b22\u8fce\u7559\u8a00\u3002\u76ee\u524d\u8fd8\u5728\u521d\u671f\uff0cUI \u6bd4\u8f83\u7b80\u964b\uff0c\u5927\u5bb6\u8f7b\u55b7\u3002

\n" }, { "author": { "url": "member/hwhtj", "name": "hwhtj", "avatar": "https://cdn.v2ex.com/avatar/c7a8/558c/100031_large.png?m=1758201551" }, "url": "t/1183514", "title": "\u6781\u7b80\u5feb\u4f20\uff0c\u6211\u73b0\u5728\u5f00\u53d1\u4e86\u6d4f\u89c8\u5668\u63d2\u4ef6\uff0c\u53ef\u4ee5\u4e00\u952e\u5206\u4eab\u4e86", "id": "t/1183514", "date_published": "2026-01-06T07:13:41+00:00", "content_html": "

\u524d\u9762\u53d1\u7684\u5e16\u5b50\uff0chttps://v2ex.com/t/1182778\n\u5728\u539f\u6765\u7684\u57fa\u7840\u4e0a\uff0c\u5728\u6253\u901a\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7aef\u540e\uff0c\u63a5\u7740\u6211\u53c8\u5f00\u53d1\u4e86\u6d4f\u89c8\u5668\u63d2\u4ef6\uff0c\u53ef\u4ee5\u4e00\u952e\u5206\u4eab\u4e86\u3002\n\u76ee\u524d\u7535\u8111\u7aef\u3001\u624b\u673a\u7aef\u3001\u5fae\u4fe1\u7aef\u90fd\u662f\u901a\u7684\uff0c\n\u6b22\u8fce\u5927\u5bb6\u7ed9\u6211\u63d0\u5efa\u8bae\n123share.cn

\n" }, { "author": { "url": "member/Kasbert", "name": "Kasbert", "avatar": "https://cdn.v2ex.com/avatar/887c/a734/343296_large.png?m=1767699332" }, "url": "t/1183504", "date_modified": "2026-01-06T06:50:01+00:00", "content_html": "

\u5982\u9898\uff0c\u8bba\u5b8c\u6574\u5ea6\u7684\u8bdd\u8fd8\u5dee\u4e00\u622a\uff0c\u672c\u6765\u60f3\u7740\u5148\u4e0d\u63a8\u5e7f\uff0c\u5fc3\u60f3\u5df2\u7ecf\u662f\u53ef\u7528\u72b6\u6001\u4e86\uff0c\u4f55\u4e0d\u8fb9\u7528\u8fb9\u5b8c\u5584\uff0c\u4e8e\u662f\u5c31\u6765\u4e86\u3002

\n
\n

\u6bcf\u4e2a\u4eba\u505a\u4e00\u4e2a\u4ea7\u54c1\uff0c\u5176\u5b9e\u90fd\u662f\u6309\u7167\u81ea\u5df1\u7684\u4e00\u5957\u4ea7\u54c1\u903b\u8f91\u548c\u64cd\u4f5c\u903b\u8f91\u6765\u5b9e\u73b0\uff0c\u4ffa\u4e5f\u4e00\u6837\uff0c\u8fd9\u4e2a\u8f6f\u4ef6\u5f53\u524d\u7684\u72b6\u6001\uff0c\u5df2\u7ecf\u5f88\u7b26\u5408\u6211\u7684\u5404\u65b9\u9762\u8981\u6c42\uff0c\u7528\u5f97\u5f88\u8212\u670d\uff0c\u5269\u4e0b\u7684\u5c31\u662f\u628a\u9700\u8981\u7684\u529f\u80fd\u9010\u6b65\u5806\u4e0a\u6765\uff0c\u53ea\u662f\u90fd\u662f\u9760\u5de5\u4f5c\u5916\u7684\u65f6\u95f4\u53bb\u5b8c\u5584\uff0c\u4e00\u4e2a\u4eba\u627f\u62c5\u524d\u540e\u7aef\u7f16\u7801\u3001\u8bbe\u8ba1\u548c\u4ea4\u4e92\u903b\u8f91\u8bbe\u8ba1\uff0c\u8fdb\u5c55\u4f1a\u6bd4\u8f83\u6162\u3002

\n
\n

\u529f\u80fd\u7684\u8bdd\uff0c\u5305\u542b\u5982\u4e0b\uff1a

\n
\n\n
\n

\u8f6f\u4ef6 Swift \u5199\u7684\uff0c\u4f53\u79ef\u5c0f\uff0c\u6027\u80fd\u4e0d\u9519\uff0ciOS18 \u53ca\u4ee5\u4e0a\u7cfb\u7edf\u7248\u672c\u53ef\u7528\uff0c\u9002\u914d\u4e86 iOS 26 \u7684\u6db2\u6001\u73bb\u7483\u3002

\n

\u6709\u8bb0\u8d26\u9700\u6c42\u7684\u770b\u5b98\u4eec\u53ef\u4ee5\u7785\u7785\u662f\u5426\u6ee1\u8db3\u81ea\u5df1\u7684\u9700\u6c42\u3002\u54b1\u4e0d\u5174\u53d1\u7801\u90a3\u4e00\u5957\uff0c\u514d\u8d39\u7528\uff0c\u6ce8\u518c\u5c31\u80fd\u7528\ud83d\ude0c\uff0c\u597d\u7528\u7684\u8bdd\u8fd8\u8bf7\u4e0d\u541d\u5728 AppStore \u7ed9\u4e2a\u597d\u8bc4\u3002\u5982\u6709\u5efa\u8bae\u6216\u8005\u529f\u80fd\u9700\u6c42\uff0capp \u5185\u5efa\u53cd\u9988\u6e20\u9053\uff0c\u6b22\u8fce\u62cd\u6253\u3002

\n

\u540d\u5b57\u53eb Billr\uff0c\u4e2d\u6587\u540d \u5e01\u4e50\uff0c\u5e94\u7528\u5546\u5e97\u94fe\u63a5\uff1aBillr \uff08\u5e01\u4e50\uff09

\n", "date_published": "2026-01-06T06:45:08+00:00", "title": "\u8bb0\u8d26\u8f6f\u4ef6\u754c\u65b0\u661f Billr \u767b\u573a\ud83d\ude05", "id": "t/1183504" }, { "author": { "url": "member/TyCoding", "name": "TyCoding", "avatar": "https://cdn.v2ex.com/avatar/3bef/247a/321603_large.png?m=1732769882" }, "url": "t/1183491", "title": "\u57fa\u4e8e Vue3 \u7684\u5f00\u6e90 AI PPT \u4ea7\u54c1\uff0c\u8ba9\u4f60\u7684\u6587\u5b57\u6829\u6829\u5982\u751f", "id": "t/1183491", "date_published": "2026-01-06T06:07:36+00:00", "content_html": "

LangChat Slides - \u65b0\u4e00\u4ee3 AI \u5e7b\u706f\u7247\u751f\u6210\u5668

\n

LangChat Slides \u662f\u4e00\u6b3e\u57fa\u4e8e\u751f\u6210\u5f0f AI \u7684\u667a\u80fd\u5e7b\u706f\u7247\u751f\u6210\u5de5\u5177\uff0c\u7531 LangChat \u56e2\u961f\u5f00\u53d1\u3002

\n

\u6b22\u8fce\u5404\u4f4d\u5927\u4f6c Star

\n

\u5f00\u6e90\u5730\u5740\uff1a

\n\n

\u4f53\u9a8c\u5730\u5740\uff1a https://slides.langchat.cn/

\n
\n

\ud83d\udcd6 \u5173\u4e8e LangChat

\n

LangChat \u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7 AIGC \uff08 AI \u751f\u6210\u5185\u5bb9\uff09\u5e73\u53f0\uff0c\u57fa\u4e8e Spring Boot 3 + LangChain4j + Vue3 + VueFlow \u5f00\u53d1\u7684\u5168\u6808 AI \u5e94\u7528\u7cfb\u7edf\u3002

\n

LangChat Slides \u662f LangChat Pro \u7684\u65d7\u8230\u4ea7\u54c1\u4e4b\u4e00\uff0c\u5229\u7528 LangChat \u7684\u5f3a\u5927\u6a21\u578b\u80fd\u529b\u4e0e @antv/infographic \u7684\u53ef\u89c6\u5316\u5f15\u64ce\uff0c\u7528\u6237\u53ea\u9700\u8f93\u5165\u81ea\u7136\u8bed\u8a00\u63cf\u8ff0\uff0c\u5373\u53ef\u5b9e\u65f6\u751f\u6210\u7ed3\u6784\u6e05\u6670\u3001\u8bbe\u8ba1\u7cbe\u7f8e\u7684\u4fe1\u606f\u56fe\u5e7b\u706f\u7247\u3002

\n

\u4ea7\u54c1\u5b98\u7f51: http://langchat.cn/

\n

\u5f00\u6e90\u7248\u5730\u5740: https://github.com/tycoding/langchat (\u57fa\u7840\u529f\u80fd\u4f53\u9a8c)

\n

\u5546\u4e1a\u7248\u54a8\u8be2: \u6dfb\u52a0\u5fae\u4fe1 LangchainChat (\u5907\u6ce8:\u516c\u53f8\u540d\u79f0 + [\u5177\u4f53\u54a8\u8be2\u5185\u5bb9])

\n

\"workflows\"

\n
\n

\ud83c\udfaf \u4ea7\u54c1\u529f\u80fd

\n

\ud83c\udfa8 \u6838\u5fc3\u80fd\u529b

\n\n

\ud83c\udfa8 \u89c6\u89c9\u4f53\u9a8c

\n\n

\ud83e\udde0 AI \u667a\u80fd\u5316

\n\n

\ud83d\udee0\ufe0f \u9ad8\u7ea7\u529f\u80fd

\n\n
\n

\u9884\u89c8

\n

\"iShot_2026-01-06_12.03.00\"

\n

\"iShot_2026-01-06_12.03.00\"

\n

\"iShot_2026-01-06_12.21.06\"

\n" }, { "author": { "url": "member/coxier", "name": "coxier", "avatar": "https://cdn.v2ex.com/avatar/0e0b/b55e/248619_large.png?m=1767678571" }, "url": "t/1183488", "date_modified": "2026-01-06T06:00:22+00:00", "content_html": "

\u4e3a\u4e86\u4e24\u5e74\u591a\u540e\u9000\u4f11\uff0c\u6211\u60f3\u8bb0\u5f55\u4e00\u4e0b\u81ea\u5df1\u7684\u8d44\u4ea7\u53d8\u5316\u8d8b\u52bf\uff0c\u4e5f\u4f1a\u9010\u6b65\u7684\u56f4\u7ed5 \u300c\u63d0\u524d\u9000\u4f11\u300d\u8fd9\u4e2a\u8bdd\u9898\u8fdb\u884c\u9700\u6c42\u8fed\u4ee3\uff0c\u6bd4\u5982\u793e\u4fdd\u3001\u533b\u4fdd\u7b49\u3002

\n

\u6211\u4e2a\u4eba\u6bd4\u8f83\u559c\u6b22\u7b80\u6d01\u7684\u98ce\u683c\uff0c\u6240\u4ee5\u5f00\u53d1\u4e86\u300c\u5c0f\u65b0\u9000\u4f11\u300d\uff0c\u73b0\u5728 1.0.0 \u7248\u672c\u5df2\u7ecf\u4e0a\u7ebf\uff0c\u5730\u5740\uff1agofire.app\uff0c\u6b22\u8fce\u4f53\u9a8c\u3002\u5982\u679c\u9700\u8981\u9ad8\u7ea7\u4f1a\u5458\u7684\u670b\u53cb\uff0c\u53ef\u4ee5\u53d1\u9001\u4f60\u7684\u4f7f\u7528\u53cd\u9988\u5230\u90ae\u7bb1 justcoxier@gmail.com\uff0c\u5373\u53ef\u6362\u53d6\u4e00\u4e2a\u6fc0\u6d3b\u7801\u3002

\n

\u5e73\u53f0\u622a\u56fe\uff1a

\n

\"\"

\n

\"\u603b\u89c8\"

\n", "date_published": "2026-01-06T05:59:49+00:00", "title": "\u8bb0\u5f55\u8d44\u4ea7\u5185\u6d4b && \u514d\u8d39\u9001\u5151\u6362\u7801", "id": "t/1183488" }, { "author": { "url": "member/Cyron", "name": "Cyron", "avatar": "https://cdn.v2ex.com/avatar/8684/89ba/95031_large.png?m=1767664892" }, "url": "t/1183480", "title": "\u7ed9\u6211\u7684 Next.js \u684c\u6e38 App \u6dfb\u52a0\u4e86 Bot", "id": "t/1183480", "date_published": "2026-01-06T05:41:24+00:00", "content_html": "

\u4e4b\u524d\u8fd8\u6ca1\u6709 AI \u7684\u65f6\u5019\u7528 Next.js \u5199\u4e86\u4e2a\u684c\u6e38\uff0c\u4f46 Bot \u529f\u80fd\u4e00\u76f4\u6ca1\u505a\u51fa\u6765

\n

\u7528 React+Framer Motion \u5199\u4e86\u4e2a\u5728\u7ebf\u684c\u6e38

\n

\u73b0\u5728\u6709\u4e86 AI \u5494\u5494\u5c31\u52a0\u597d\u4e86\uff0c\u8bd5\u4e86\u4e00\u4e0b\u6548\u679c\u8fd8\u884c

\n

\u7f51\u5740\uff1a https://nana.cyron.space

\n

\"\"

\n

\u6b22\u8fce\u8bd5\u73a9\uff0c\u4ee3\u7801\u5df2\u5f00\u6e90\uff0c\u6b22\u8fce\u6539\u6539 UI \u548c Bug \uff5e

\n" }, { "author": { "url": "member/kuniseichi", "name": "kuniseichi", "avatar": "https://cdn.v2ex.com/gravatar/006424b640ae58b83614942ad79200ba?s=73&d=retro" }, "url": "t/1183464", "title": "\u5b89\u5229\u4e00\u4e2a notebooklm \u53bb\u6c34\u5370\u7684\u5de5\u5177", "id": "t/1183464", "date_published": "2026-01-06T03:54:01+00:00", "content_html": "

\u65e5\u5e38\u6709\u5f88\u591a\u5904\u7406 ppt \u7684\u9700\u6c42\uff0c\u65e0\u610f\u7684\u53d1\u73b0 notebookLM \u53ef\u4ee5\u751f\u6210\u901a\u4fd7\u6613\u61c2\u4e14\u5b8c\u6574\u7684 ppt \uff0c\u4f46\u662f\u53d1\u73b0\u4ed6\u751f\u6210\u7684 ppt \u65e0\u6cd5\u53bb\u6c34\u5370\uff0c\u5b98\u65b9\u53bb\u6c34\u5370\u9700\u8981 ultra \u4f1a\u5458\u4e00\u4e2a\u6708 200 \u591a\u5200\uff0c\u5b9e\u5728\u662f\u65e0\u6cd5\u63a5\u53d7\u3002

\n

\u4e8e\u662f\u5c1d\u8bd5\u81ea\u5df1\u4e0a\u624b\u6413\u4e86\u4e00\u4e2a ai \u5c0f\u5de5\u5177\uff0c\u5b9e\u73b0\u7684\u6548\u679c\u8fd8\u4e0d\u9519\uff01

\n

https://deckcleaner.xyz \u94fe\u63a5\u5728\u8fd9\u91cc\uff01

\n

\u76ee\u524d\u7684\u7248\u672c\u652f\u6301 PDF \u53bb\u6c34\u5370\u548c video \u53bb\u6c34\u5370\uff0c\u4e5f\u548c\u793e\u533a\u7684\u5927\u5bb6\u540c\u6b65\u5c0f\u4ea7\u54c1\u4e4b\u540e\u7684\u89c4\u5212\uff0c

\n\n

\u6b22\u8fce\u5927\u5bb6\u6709\u4efb\u4f55 idea \u6216\u8005\u9700\u6c42\u90fd\u5728\u5e16\u5b50\u4e0b\u9762\u8bc4\u8bba\uff0c\u6709\u9700\u8981\u7684\u670b\u53cb\uff0c\u56de\u590d\u300c deckcleaner \u300d\u524d 5 \u540d\u76f4\u63a5 lifetime \u514d\u8d39\u7528\ud83d\udc9c

\n" }, { "author": { "url": "member/supermama", "name": "supermama", "avatar": "https://cdn.v2ex.com/avatar/82f0/79e3/686591_large.png?m=1767671056" }, "url": "t/1183459", "title": "\u4ee3\u7801\u5199\u4e86\u4e00\u5468\uff0c Meta \u5ba1\u6838\u5173\u4e86\u6211\u4e24\u4e2a\u6708\uff1a DeleteThreads.net \u4e0a\u7ebf\u4e86", "id": "t/1183459", "date_published": "2026-01-06T03:44:53+00:00", "content_html": "

11 \u6708\u521d\u770b\u5230\u4e2a Paddle \u6a21\u7248\u624b\u75d2\uff0c\u5c31\u60f3\u627e\u70b9\u4e1c\u897f\u7ec3\u624b\u3002\u521a\u597d\u5e73\u65f6\u5728\u7528 Threads \uff0c\u7d22\u6027\u7528 AI \u64b8\u4e86\u4e2a\u6e05\u7406\u5c0f\u5de5\u5177\u3002

\n

\u5176\u5b9e\u4ee3\u7801\u4e00\u5468\u5c31\u5199\u5b8c\u4e86\uff0c\u4f46\u76f4\u5230 12 \u6708\u5e95\u624d\u6b63\u5f0f\u4e0a\u7ebf\u3002\u4e2d\u95f4\u6574\u6574\u4e24\u4e2a\u6708\u90fd\u5728\u8ddf Meta \u7684 API \u6743\u9650\u5ba1\u6838\u6597\u667a\u6597\u52c7\u3002Meta \u7684\u6d41\u7a0b\u7b80\u76f4\u6298\u78e8\u4eba\uff1a\u7533\u8bf7\u88ab\u6253\u56de\u6765 5 \u6b21\uff0c\u5173\u952e\u662f\u6bcf\u6b21\u5ba1\u6838\u95f4\u9694\u53c8\u4e45\u5f97\u79bb\u8c31\u3002

\n

\u8fd9\u662f\u6211\u7b2c\u4e00\u6b21\u57fa\u4e8e Meta \u4ea7\u54c1\u5f00\u53d1\u5de5\u5177\uff0c\u4f30\u8ba1\u4e5f\u662f\u6700\u540e\u4e00\u6b21\u4e86 \ud83d\ude04\ud83d\ude04\u3002\u5982\u679c\u6709\u7528 Threads \u7684\u670b\u53cb\u6b22\u8fce\u8bd5\u7528\u5e76\u63d0\u63d0\u5efa\u8bae\uff1a

\n

\u8bbf\u95ee\u5730\u5740\uff1a https://deletethreads.net/

\n" }, { "author": { "url": "member/flingjie", "name": "flingjie", "avatar": "https://cdn.v2ex.com/avatar/fd17/74a8/66861_large.png?m=1767314879" }, "url": "t/1183449", "title": "[\u5b9e\u6218\u6559\u7a0b\u5206\u4eab] 100 \u5929\u641e\u5b9a Agent \u5f00\u53d1", "id": "t/1183449", "date_published": "2026-01-06T03:18:06+00:00", "content_html": "

2025 \u5e74\uff0c\u662f Agent \u771f\u6b63\u5f00\u59cb\u7206\u53d1\u7684\u4e00\u5e74\u3002\u5b83\u4e0d\u518d\u53ea\u662f Demo \u3001Prompt \u6280\u5de7\u6216\u80fd\u529b\u5c55\u793a\uff0c\u800c\u662f\u88ab\u653e\u8fdb\u771f\u5b9e\u4e1a\u52a1\u7cfb\u7edf\u4e2d\uff0c\u5f00\u59cb\u627f\u62c5\u660e\u786e\u804c\u8d23\uff0c\u4e5f\u5f00\u59cb\u66b4\u9732\u771f\u5b9e\u95ee\u9898\u3002

\n

\u6211\u4ece 2024 \u5e74 \u5f00\u59cb\u505a LLM \u548c Agent \u76f8\u5173\u9879\u76ee\uff0c\u6709\u8fc7\u51e0\u6b21\u771f\u6b63\u843d\u5730\u7684\uff0c\u4e5f\u6709\u4e0d\u5c11\u56e0\u4e3a\u65b9\u5411\u5224\u65ad\u5931\u8bef\u3001\u5de5\u7a0b\u590d\u6742\u5ea6\u5931\u63a7\u800c\u4e2d\u9014\u7ec8\u6b62\u7684\u9879\u76ee\u3002

\n

\u8fc7\u7a0b\u4e2d\u8e29\u8fc7\u4e0d\u5c11\u5751\uff0c\u6709\u4e00\u4e9b\u6bd4\u8f83\u7b80\u5355\uff0c\u6bd4\u5982

\n\n

\u8fd8\u6709\u4e00\u4e9b\u6bd4\u8f83\u590d\u6742\uff0c\u662f\u67b6\u6784\u8bbe\u8ba1\u548c\u80fd\u529b\u8fb9\u754c\u7684\u95ee\u9898\uff0c\u6bd4\u5982

\n\n

\u5728\u4e0d\u65ad\u5931\u8d25\u3001\u590d\u76d8\u3001\u4fee\u6b63\u7684\u8fc7\u7a0b\u4e2d\uff0c\u6211\u5f00\u59cb\u7cfb\u7edf\u6027\u5730\u6574\u7406\u8fd9\u4e9b\u7ecf\u9a8c\uff0c\u5e76\u501f\u52a9 AI \u4e00\u8d77\u6821\u5bf9\u8ba4\u77e5\u4e0e\u8868\u8fbe\uff0c\u9010\u6b65\u6c89\u6dc0\u51fa\u4e86\u8fd9\u4efd **\u300a 100 \u5929\u641e\u5b9a Agent \u5f00\u53d1\u300b**\u3002

\n

\u5b83\u4e00\u65b9\u9762\u662f\u6211\u81ea\u5df1\u7684\u5de5\u7a0b\u7b14\u8bb0\u548c\u8ba4\u77e5\u590d\u76d8\uff0c\u53e6\u4e00\u65b9\u9762\uff0c\u4e5f\u5e0c\u671b\u80fd\u4e3a\u6b63\u5728\u6216\u51c6\u5907\u8fdb\u5165 Agent \u5f00\u53d1\u7684\u5de5\u7a0b\u5e08\uff0c\u5c11\u8d70\u4e00\u4e9b\u6211\u5df2\u7ecf\u8d70\u8fc7\u7684\u5f2f\u8def\u3002

\n

\u6574\u4e2a\u8def\u5f84\u4e2d\uff0c\u5927\u91cf\u5185\u5bb9\u57fa\u4e8e\u771f\u5b9e\u5de5\u7a0b\u5b9e\u8df5\uff0c\u914d\u5408\u4e3b\u6d41\u5f00\u6e90\u6846\u67b6\u7684\u5b9e\u6218\uff0c\u5305\u62ec\u4f46\u4e0d\u9650\u4e8e\uff1aLangChain \u3001LangGraph \u3001Gradio \u3001Agno \u3001Mem0 \u3001Vanna \u3001Langfuse \u7b49\u3002\n\u6574\u4e2a\u5b66\u4e60\u8def\u5f84\u7ed3\u6784\u5927\u81f4\u5982\u4e0b\uff1a

\n\n

\u8fd9\u662f\u4e00\u4efd\u8fd8\u5728\u6301\u7eed\u6253\u78e8\u4e2d\u7684\u5de5\u7a0b\u7b14\u8bb0\uff0c\u76ee\u524d\u53ea\u6574\u7406\u4e86\u524d\u4e24\u5468\u3002\n\u5982\u679c\u4f60\u5bf9 Agent \u5f00\u53d1\u4e5f\u6709\u5174\u8da3\uff0c\u6216\u8005\u6b63\u5728\u8e29\u7c7b\u4f3c\u7684\u5751\uff0c\n\u5f88\u6b22\u8fce\u4e00\u8d77\u4ea4\u6d41\u3001\u63d0\u610f\u89c1\uff0c\u751a\u81f3\u76f4\u63a5\u53c2\u4e0e\u5171\u5efa\u3002

\n

\ud83d\udc49 GitHub\uff1a https://github.com/flingjie/Agent-100-Days

\n

\u5b8c\u6574\u6559\u7a0b\u76ee\u5f55

\n

Week 1 \uff5c LLM \u57fa\u7840\u5165\u95e8

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5efa\u7acb\u5bf9\u5927\u8bed\u8a00\u6a21\u578b\u7684\u201c\u7b2c\u4e00\u6027\u7406\u89e3\u201d\uff1a

\n\n
\n

Day 1 \uff5c\u5927\u8bed\u8a00\u6a21\u578b\u5230\u5e95\u5728\u5e72\u4ec0\u4e48

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 2 \uff5c [Token \u3001Embedding \u4e0e\u5411\u91cf\u7a7a\u95f4](./week1/02.Token \u3001Embedding \u4e0e\u5411\u91cf\u7a7a\u95f4.ipynb)

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 3 \uff5c Transformer\uff1a\u6a21\u578b\u7684\u8ba1\u7b97\u5f15\u64ce

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 4 \uff5c\u4ece\u8bad\u7ec3\u5230\u63a8\u7406\uff1a\u6a21\u578b\u662f\u600e\u4e48\u201c\u5b66\u4f1a\u8bed\u8a00\u201d\u7684

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 5 \uff5c\u6982\u7387\u3001\u968f\u673a\u6027\u4e0e\u4e0d\u7a33\u5b9a\u6027

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 6 \uff5c[\u4e00\u6b21 LLM API \u8c03\u7528\uff0c\u5230\u5e95\u53d1\u751f\u4e86\u4ec0\u4e48\uff1f](./week1/06.\u4e00\u6b21%20LLM%20API%20 \u8c03\u7528\uff0c\u5230\u5e95\u53d1\u751f\u4e86\u4ec0\u4e48.ipynb)

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 7 \uff5c[\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599](./week1/07.\u601d\u8003%20&%20 \u8865\u5145\u5b66\u4e60\u8d44\u6599.md)

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 2 \uff5c\u57fa\u4e8e LangChain + Gradio \u7684\u5bf9\u8bdd Agent \u5b9e\u6218

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u57fa\u4e8e Langchain \u548c Gradio \u52a8\u624b\u5b9e\u73b0\u4e00\u4e2a\u82f1\u8bed\u5b66\u4e60 Agent

\n
\n

Day 8 \uff5c[\u7528 LLM \u751f\u6210\u82f1\u6587\u5b66\u4e60\u5185\u5bb9](./week2/08.\u7528 LLM \u751f\u6210\u82f1\u6587\u5b66\u4e60\u5185\u5bb9.md)

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 9 \uff5c \u524d\u7aef\u4ea4\u4e92

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 10 \uff5c\u591a\u8f6e\u5bf9\u8bdd

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 11 \uff5c\u6d41\u5f0f\u751f\u6210

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 12 \uff5c\u591a\u6a21\u6001

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 13 \uff5c\u6df1\u5ea6\u601d\u8003

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 14 \uff5c[\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599](./week2/14.\u601d\u8003%20&%20 \u8865\u5145\u5b66\u4e60\u8d44\u6599.md)

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 3 \uff5c\u63d0\u793a\u8bcd\u5de5\u7a0b\uff08 Prompt Engineering \uff09

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60\u63d0\u793a\u8bcd\u5de5\u7a0b\u7684\u6982\u5ff5\u3001\u901a\u7528\u6280\u5de7\u3001\u548c\u4f18\u5316\u8fed\u4ee3\u6280\u5de7

\n
\n

Day 15 \uff5c Prompt \u7684\u5de5\u7a0b\u5b9a\u4f4d

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 16 \uff5c Prompt \u7684\u901a\u7528\u6280\u5de7

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 17 \uff5c\u96f6\u6837\u672c\u63d0\u793a\u4e0e\u5c11\u6837\u672c\u63d0\u793a

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 18 \uff5c\u601d\u7ef4\u94fe CoT

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 19 \uff5c\u7ed3\u6784\u5316\u8f93\u51fa\u201d

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 20 \uff5c\u63d0\u793a\u8bcd\u7684\u4f18\u5316\u4e0e\u8fed\u4ee3

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 21 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 4 \u5de5\u5177\u4f7f\u7528

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60\u57fa\u4e8e LLM \u5de5\u5177\u8c03\u7528\u548c\u539f\u7406\uff0c\u57fa\u4e8e langchain \u7684\u5de5\u5177\u8c03\u7528\u5b9e\u73b0\u548c MCP \u7684\u8bbe\u8ba1\u5f00\u53d1

\n
\n

Day 22 \uff5c\u4e3a\u4ec0\u4e48 LLM \u4e00\u5b9a\u9700\u8981\u5de5\u5177

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 23 \uff5c \u5de5\u5177\u8c03\u7528\u7684\u57fa\u672c\u673a\u5236

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 24 \uff5c \u57fa\u4e8e Langchain \u7684\u5de5\u5177\u8c03\u7528\u793a\u4f8b

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 25 \uff5c MCP \u4ecb\u7ecd

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 26 \uff5c MCP \u5b9e\u6218

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 27 \uff5c\u6280\u80fd\u7684\u5b66\u4e60\u4e0e\u5f00\u53d1

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 28 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 5 \uff5c\u77e5\u8bc6\u5e93

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60\u77e5\u8bc6\u5e93\u76f8\u5173\u77e5\u8bc6\uff0c\u5e76\u57fa\u4e8e llamaindex \u548c lightRAG \u8fdb\u884c\u77e5\u8bc6\u5e93\u5b9e\u6218

\n
\n

Day 29 \uff5c\u4e3a\u4ec0\u4e48 Agent \u4e00\u5b9a\u9700\u8981\u77e5\u8bc6\u5e93

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 30 \uff5c RAG \u7684\u6700\u5c0f\u62bd\u8c61\u6a21\u578b

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 31 \uff5c LlamaIndex \u7684\u5b66\u4e60\u4f7f\u7528

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 32 \uff5c\u6570\u636e\u6e05\u6d17\u4e0e Chunk \u7b56\u7565

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 33 \uff5c LightRAG \u5b66\u4e60\u4f7f\u7528

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 34 \uff5c\u6784\u5efa\u4e00\u4e2a\u77e5\u8bc6\u5e93

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 35 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 6 \uff5c\u4e0a\u4e0b\u6587\u5de5\u7a0b\uff08 Context Engineering \uff09

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60\u4e0a\u4e0b\u6587\u5de5\u7a0b\u5e76\u57fa\u4e8e langchain \u8fdb\u884c\u5b9e\u6218

\n
\n

Day 36 \uff5c\u4ec0\u4e48\u662f\u4e0a\u4e0b\u6587\u5de5\u7a0b

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 37 \uff5c\u4e0a\u4e0b\u6587\u7684\u7ec4\u6210\u7ed3\u6784

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 38 \uff5c\u591a\u8f6e\u5bf9\u8bdd\u4e0e\u4e0a\u4e0b\u6587\u589e\u957f\u95ee\u9898

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 39 \uff5c\u4e0a\u4e0b\u6587\u88c1\u526a\u4e0e\u538b\u7f29\u7b56\u7565

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 40 \uff5c\u77e5\u8bc6\u5e93\u5185\u5bb9\u5982\u4f55\u8fdb\u5165\u4e0a\u4e0b\u6587

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 41 \uff5c\u4e0a\u4e0b\u6587\u5b9e\u6218

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 42 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 7 \uff5c\u8bb0\u5fc6\u7cfb\u7edf\uff08 Memory System \uff09

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u4e86\u89e3\u8bb0\u5fc6\u7cfb\u7edf\u53ca\u5e38\u89c1\u5206\u7c7b\uff0c\u5e76\u57fa\u4e8e langchain \u548c mem0 \u8fdb\u884c\u5b9e\u6218

\n
\n

Day 43 \uff5c\u4e3a\u4ec0\u4e48 Agent \u9700\u8981\u8bb0\u5fc6

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 44 \uff5c\u8bb0\u5fc6\u7684\u5206\u7c7b\u4e0e\u5199\u5165

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 45 \uff5c\u8bb0\u5fc6\u7684\u66f4\u65b0\u3001\u9057\u5fd8\u4e0e\u51b2\u7a81

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 46 \uff5c\u8bb0\u5fc6\u5982\u4f55\u8fdb\u5165\u4e0a\u4e0b\u6587

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 47 \uff5c langchain \u8bb0\u5fc6\u529f\u80fd\u5b9e\u6218

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 48 \uff5c mem0 \u8bb0\u5fc6\u529f\u80fd\u5b9e\u6218

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 49 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 8 \uff5c Agent \u67b6\u6784\u4e0e\u601d\u7ef4\u6a21\u5f0f\u7684\u8f6c\u53d8

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60 Agent \u7684\u57fa\u672c\u67b6\u6784\uff0c\u601d\u7ef4\u65b9\u5f0f\u7684\u8f6c\u53d8\uff0c\u4ee5\u53ca\u52a8\u624b\u5b9e\u73b0\u4e00\u4e2a Agent

\n
\n

Day 50 \uff5c\u4ec0\u4e48\u662f Agent

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 51 \uff5c Agent \u57fa\u672c\u7ec4\u6210

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 52 \uff5c Agent \u5f00\u53d1\u8005\u7684\u201c\u601d\u7ef4\u6a21\u5f0f\u201d\u8f6c\u53d8

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 53 \uff5c Agent \u7684\u5931\u8d25\u6a21\u5f0f

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 54 \uff5c \u57fa\u4e8e langchain \u5f00\u53d1 Agent

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 55 \uff5c \u57fa\u4e8e Agno \u5f00\u53d1 Agent

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 56 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 9 \uff5c\u53cd\u601d\u6a21\u5f0f\uff08 Reflection \uff09

\n

\u672c\u5468\u76ee\u6807

\n
\n

\u5b66\u4e60\u53cd\u601d\u6a21\u5f0f\u5e76\u8fdb\u884c\u5b9e\u6218\u5e94\u7528\u201d

\n
\n

Day 57 \uff5c\u4e3a\u4ec0\u4e48 Agent \u4e00\u5b9a\u9700\u8981\u53cd\u601d

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 58 \uff5c\u4ec0\u4e48\u662f\u53cd\u601d\u6a21\u5f0f

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 59 \uff5c\u53cd\u601d\u89e6\u53d1\u673a\u5236

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 60 \uff5c\u53cd\u601d\u7684\u8f93\u5165\u4e0e\u8f93\u51fa\u8bbe\u8ba1

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 61 \uff5c\u53cd\u601d\u4e0e\u4e0a\u4e0b\u6587

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 62 \uff5c\u5b9e\u6218\uff1a\u4e3a Agent \u52a0\u5165\u53cd\u601d\u8282\u70b9

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 63 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 10 \uff5c\u4efb\u52a1\u5206\u89e3\u6a21\u5f0f\uff08 Task Decomposition \uff09\uff1a

\n

\u672c\u5468\u76ee\u6807

\n\n

Day 64 \uff5c\u4e3a\u4ec0\u4e48\u4efb\u52a1\u5206\u89e3\u662f Agent \u7684\u6838\u5fc3\u80fd\u529b

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 65 \uff5c\u5206\u89e3\u7b56\u7565\u4e00\uff1a\u7ebf\u6027\u5206\u89e3

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 66 \uff5c\u5206\u89e3\u7b56\u7565\u4e8c\uff1a\u6811\u72b6\u5206\u89e3

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 67 \uff5c\u5206\u89e3\u7b56\u7565\u4e09\uff1a\u5e76\u884c\u4e0e\u6c47\u5408

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 68 \uff5c\u4efb\u52a1\u5206\u89e3\u7684\u5931\u8d25\u6a21\u5f0f\u4e0e\u4fee\u590d

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 69 \uff5c\u5b9e\u6218\uff1a\u4efb\u52a1\u5206\u89e3\u6a21\u5f0f Agent

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 70 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 11 \uff5c HITL \uff08 Human-in-the-Loop \uff09\u6a21\u5f0f

\n

\u672c\u5468\u76ee\u6807

\n
\n

HITL \u6a21\u5f0f\u7684\u5b66\u4e60\u3001\u8bbe\u8ba1\u4e0e\u5b9e\u6218

\n
\n

Day 71 \uff5c\u4e3a\u4ec0\u4e48 Agent \u7cfb\u7edf\u4e00\u5b9a\u9700\u8981\u4eba

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 72 \uff5c\u4ec0\u4e48\u662f HITL

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 73 \uff5c HITL \u7684\u4e09\u79cd\u4ecb\u5165\u6a21\u5f0f

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 74 \uff5c HITL \u7684\u89e6\u53d1\u6761\u4ef6\u8bbe\u8ba1

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 75 \uff5c HITL \u7684\u4e0a\u4e0b\u6587\u4e0e\u4fe1\u606f\u5448\u73b0

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 76 \uff5c\u5b9e\u6218\uff1a\u4e3a Agent \u52a0\u5165 HITL

\n

\u5b66\u4e60\u5185\u5bb9

\n\n

Day 77 \uff5c\u601d\u8003 & \u8865\u5145\u5b66\u4e60\u8d44\u6599

\n

\u53cd\u601d\u95ee\u9898

\n\n

Week 12 \uff5c\u5b9e\u6218\uff1a\u4e00\u4e2a\u652f\u6301\u8def\u7531\u7684\u591a Agent \u7cfb\u7edf

\n

Week 13 \uff5c\u5b9e\u6218\uff1aDeepResearch

\n

Week 14 \uff5c\u5b9e\u6218\uff1aChatBI

\n

Week 15 \uff5c\u5b9e\u6218\uff1a\u57fa\u4e8e Langfuse \u7684\u76d1\u63a7\u548c\u53ef\u89c2\u6d4b\u6027

\n" }, { "author": { "url": "member/JerrySu5379", "name": "JerrySu5379", "avatar": "https://cdn.v2ex.com/gravatar/01fd1e7468279ae05c04473ae6681ae3?s=73&d=retro" }, "url": "t/1183437", "date_modified": "2026-01-06T02:56:04+00:00", "content_html": "

Hotaru\uff1a\u4e00\u4e2a\u7406\u5ff5\u6784\u5efa\u7684 Rust Web \u6846\u67b6 \u2014 \u7aef\u70b9\u7684\u4e00\u5207\u90fd\u5e94\u8be5\u5728\u4e00\u8d77

\n

Hotaru \u662f\u4e00\u4e2a\u91c7\u7528\u5b8f\u8bed\u6cd5\u7684 Rust Web \u6846\u67b6\uff0c\u5c06 URL \u3001\u4e2d\u95f4\u4ef6\u3001\u914d\u7f6e\u548c\u5904\u7406\u5668\u6574\u5408\u5728\u4e00\u4e2a\u4ee3\u7801\u5757\u4e2d\u3002\u5982\u679c\u4f60\u6b63\u5728\u7528 Rust \u6784\u5efa Web \u670d\u52a1\uff0c\u5e76\u4e14\u89c9\u5f97\u5c5e\u6027\u5b8f\u5206\u6563\u5404\u5904\u4e0d\u591f\u4f18\u96c5\uff0c\u8fd9\u4e2a\u6846\u67b6\u53ef\u80fd\u9002\u5408\u4f60\u3002\u5e0c\u671b\u83b7\u5f97\u53cd\u9988\uff1aendpoint!/middleware! \u8bed\u6cd5\u662f\u5426\u76f4\u89c2\uff0c\u8fd8\u662f\u9690\u85cf\u4e86\u592a\u591a\u7ec6\u8282\uff1f

\n

\u4ed3\u5e93\u5730\u5740\uff1a https://github.com/Field-of-Dreams-Studio/hotaru

\n

\u6587\u6863\uff1a https://fds.rs/hotaru/tutorial/0.7.3/

\n
\n

\u4e3a\u4ec0\u4e48\u6211\u4eec\u8981\u6784\u5efa Hotaru

\n

\u6211\u662f\u4ece Python \u8f6c\u8fc7\u6765\u7684\uff0c\u4e4b\u524d\u7528 Flask \u3001FastAPI \u90a3\u4e00\u5957\u3002\u5f53\u6211\u8f6c\u5411 Rust \u65f6\uff0c\u5b89\u5168\u6027\u7684\u627f\u8bfa\u6253\u52a8\u4e86\u6211\u2014\u2014\u5185\u5b58\u5b89\u5168\u3001\u6ca1\u6709\u7a7a\u6307\u9488\u5f02\u5e38\u3001\u7f16\u8bd1\u5668\u5728\u8fd0\u884c\u524d\u5c31\u80fd\u6355\u83b7 bug \u3002\u8fd9\u4e9b\u786e\u5b9e\u5151\u73b0\u4e86\u3002

\n

\u4f46\u5f53\u6211\u5f00\u59cb\u7814\u7a76 Web \u6846\u67b6\u65f6\uff0c\u53d1\u73b0\u4e86\u4e00\u4e2a\u8ba9\u6211\u4e0d\u592a\u6ee1\u610f\u7684\u6a21\u5f0f\uff1a

\n
#[get(\"/users/<id>\")]\n#[middleware::auth]\n#[middleware::rate_limit(100)]\nasync fn get_user(...) -> impl Responder {\n
\n

\u5c5e\u6027\u5b8f\u8fd9\u79cd\u65b9\u5f0f\u786e\u5b9e\u53ef\u884c\uff0c\u5f88\u591a\u4eba\u7528\u5b83\u6765\u4ea4\u4ed8\u751f\u4ea7\u73af\u5883\u7684\u5e94\u7528\u3002\u4f46\u5bf9\u6211\u4e2a\u4eba\u800c\u8a00\uff0c\u914d\u7f6e\u5206\u6563\u5728\u51fd\u6570\u4e0a\u65b9\u7684\u611f\u89c9\u548c\u6211\u4e4b\u524d\u60f3\u8981\u6446\u8131\u7684\u88c5\u9970\u5668\u6a21\u5f0f\u5f88\u50cf\u3002\u800c\u4e14\u4f60\u8fd8\u9700\u8981\u5728\u522b\u7684\u5730\u65b9\u624b\u52a8\u6ce8\u518c\u8def\u7531\u3002\u6211\u60f3\u8981\u7684\u662f\u80fd\u5728\u4e00\u4e2a\u5730\u65b9\u770b\u5230\u7aef\u70b9\u7684\u6240\u6709\u4fe1\u606f\uff0c\u5e76\u4e14\u81ea\u52a8\u5b8c\u6210\u6ce8\u518c\u3002

\n

\u6240\u4ee5\u6211\u4eec\u5c1d\u8bd5\u4e86\u4e00\u79cd\u4e0d\u540c\u7684\u65b9\u5f0f\u3002

\n
\n

Hotaru \u7684\u8bbe\u8ba1\u7406\u5ff5

\n

\u6211\u4eec\u56f4\u7ed5\u4e00\u4e2a\u6838\u5fc3\u7406\u5ff5\u6784\u5efa\u4e86 Hotaru\uff1a\u7aef\u70b9\u7684\u6240\u6709\u4fe1\u606f\u90fd\u5e94\u8be5\u5728\u4e00\u8d77\uff0c\u5e76\u4e14\u81ea\u52a8\u6ce8\u518c\u3002URL \u3001\u4e2d\u95f4\u4ef6\u3001\u914d\u7f6e\u3001\u5904\u7406\u5668\u2014\u2014\u4e00\u4e2a\u4ee3\u7801\u5757\uff0c\u4e00\u76ee\u4e86\u7136\uff0c\u5b9a\u4e49\u5373\u6ce8\u518c\u3002

\n

\u57fa\u7840\u8bed\u6cd5

\n
endpoint! {\n APP.url(\"/users/<int:id>\"),\n middleware = [.., auth_check, rate_limit],\n cOnfig= [HttpSafety::new().with_allowed_methods(vec![GET, POST])],\n\n pub get_user <HTTP> {\n let user_id = req.param(\"id\").unwrap_or_default();\n json_response(object!({\n id: user_id,\n message: \"User endpoint\"\n }))\n }\n}\n
\n

\u8fd9\u5c31\u662f\u5b8c\u6574\u7684\u8bed\u6cd5\u3002URL \u6a21\u5f0f\uff08\u652f\u6301\u7c7b\u578b\u5316\u53c2\u6570\u5982 <int:id>\uff09\u3001\u4e2d\u95f4\u4ef6\u6808\u3001\u5b89\u5168\u914d\u7f6e\u548c\u5904\u7406\u5668\u4e3b\u4f53\u2014\u2014\u5168\u90e8\u5728\u4e00\u4e2a\u5730\u65b9\u3002req.param(\"id\") \u8fd4\u56de\u7684\u503c\u53ef\u4ee5\u8c03\u7528 .unwrap_or_default() \u6216 .string() \u83b7\u53d6\u539f\u59cb\u5b57\u7b26\u4e32\u3002\u65e0\u9700\u5355\u72ec\u7684\u6ce8\u518c\u6b65\u9aa4\u3002\u5b8f\u5728\u7f16\u8bd1\u65f6\u5c55\u5f00\u4e3a\u6807\u51c6\u7684\u5f02\u6b65 Rust \u4ee3\u7801\u3002

\n

\u65b0\u8bed\u6cd5\u8bd5\u9a8c\u4e2d

\n

\u6ce8\u610f\uff1a \u6211\u4eec\u6b63\u5728\u6d4b\u8bd5\u4e00\u79cd\u65b0\u7684\u8bed\u6cd5\u98ce\u683c\uff0c\u53ef\u4ee5\u4f7f\u7528\u66f4\u63a5\u8fd1 Rust \u51fd\u6570\u7684\u5199\u6cd5\u5e76\u81ea\u5b9a\u4e49\u8bf7\u6c42\u53d8\u91cf\u540d\u3002\u8fd9\u4e2a\u529f\u80fd\u8fd8\u5728\u8bd5\u9a8c\u9636\u6bb5\uff0c\u6b22\u8fce\u53cd\u9988\u3002

\n
endpoint! {\n APP.url(\"/new_syntax/<arg>\"),\n middleware: [..],\n config: [\"ConfigString\"],\n\n pub fn new_syntax_endpoint(ctx: HTTP) {\n let arg = ctx.pattern(\"arg\").unwrap_or_default();\n text_response(format!(\"New syntax endpoint called with arg: {}\", arg))\n }\n}\n
\n

\u4e24\u79cd\u5199\u6cd5\u5728\u5e95\u5c42\u7f16\u8bd1\u4e3a\u76f8\u540c\u7684\u4ee3\u7801\u3002\u6211\u4eec\u60f3\u77e5\u9053\uff1a\u540c\u65f6\u652f\u6301\u4e24\u79cd\u98ce\u683c\u662f\u63d0\u9ad8\u4e86\u6e05\u6670\u5ea6\uff0c\u8fd8\u662f\u5f15\u5165\u4e86\u4e0d\u5fc5\u8981\u7684\u4e0d\u4e00\u81f4\u6027\uff1f

\n
\n

\u6838\u5fc3\u7279\u6027

\n

1. \u81ea\u52a8\u6ce8\u518c

\n

\u5b9a\u4e49\u7aef\u70b9\u7684\u540c\u65f6\u81ea\u52a8\u6ce8\u518c\u3002\u4e0d\u9700\u8981\u624b\u52a8 router.register()\uff0c\u4e0d\u4f1a\u5fd8\u8bb0\u6ce8\u518c\uff0c\u4e5f\u4e0d\u7528\u5230\u5904\u627e\u8def\u7531\u5728\u54ea\u91cc\u7ec4\u88c5\u7684\u3002\u8fd9\u662f\u5927\u591a\u6570 Rust Web \u6846\u67b6\u7f3a\u5c11\u7684\u529f\u80fd\u3002

\n

2. \u4e2d\u95f4\u4ef6\u5b9a\u4e49

\n

\u5728\u5927\u591a\u6570\u6846\u67b6\u4e2d\u5b9a\u4e49\u4e2d\u95f4\u4ef6\u9700\u8981\u5b9e\u73b0 trait \u3001\u5305\u88c5\u670d\u52a1\u3001\u5904\u7406\u8fd4\u56de future \u7684 future \u3002\u76f8\u5f53\u7e41\u7410\u3002

\n

\u5728 Hotaru \u4e2d\uff1a

\n
middleware! {\n pub LogRequest <HTTP> {\n println!(\"[LOG] {} {}\", req.method(), req.path());\n let start = std::time::Instant::now();\n\n let result = next(req).await;\n\n println!(\"[LOG] Completed in {:?}\", start.elapsed());\n result\n }\n}\n
\n

\u5c31\u8fd9\u6837\u3002\u4f60\u62ff\u5230 req\uff08\u5373 HttpContext\uff09\uff0c\u8c03\u7528 next(req).await \u7ee7\u7eed\u6267\u884c\u94fe\uff0c\u53ef\u4ee5\u5728\u8fd4\u56de\u65f6\u4fee\u6539\u7ed3\u679c\u3002\u60f3\u8981\u77ed\u8def\uff1f\u4e0d\u8c03\u7528 next() \u5c31\u884c\uff1a

\n
middleware! {\n pub AuthCheck <HTTP> {\n let token = req.headers().get(\"Authorization\");\n\n if token.is_none() {\n req.respOnse= json_response(object!({\n error: \"unauthorized\"\n })).status(StatusCode::UNAUTHORIZED);\n return req;\n }\n\n // \u901a\u8fc7 locals \u5411\u4e0b\u6e38\u4f20\u9012\u7c7b\u578b\u5316\u6570\u636e\n req.locals.set(\"user_id\", \"user-123\".to_string());\n next(req).await\n }\n}\n
\n

\u65b0\u7684 fn \u98ce\u683c\u4e5f\u652f\u6301\u4e2d\u95f4\u4ef6\uff08\u8bd5\u9a8c\u4e2d\uff09\uff1a

\n
middleware! {\n pub fn Logger(req: HTTP) {\n println!(\"[LOG] {} {}\", req.method(), req.path());\n next(req).await\n }\n}\n
\n

3. .. \u6a21\u5f0f

\n

\u8fd9\u91cc\u6211\u4eec\u501f\u9274\u4e86 Rust \u7ed3\u6784\u4f53\u66f4\u65b0\u8bed\u6cd5\u7684\u8bbe\u8ba1\u3002\u5728\u5927\u591a\u6570\u6846\u67b6\u4e2d\uff0c\u4e2d\u95f4\u4ef6\u7ec4\u5408\u8981\u4e48\u5168\u6709\u8981\u4e48\u5168\u65e0\uff0c\u8981\u4e48\u9700\u8981\u5728\u6784\u5efa\u5668\u94fe\u4e2d\u4ed4\u7ec6\u6392\u5e8f\u3002

\n
// \u5e94\u7528\u7ea7\u5168\u5c40\u4e2d\u95f4\u4ef6\npub static APP: SApp = Lazy::new(|| {\n App::new()\n .binding(\"127.0.0.1:3000\")\n .append_middleware::<Logger>()\n .append_middleware::<Metrics>()\n .build()\n});\n\n// \u4ec5\u4f7f\u7528\u5168\u5c40\u4e2d\u95f4\u4ef6\nendpoint! {\n APP.url(\"/health\"),\n middleware = [..],\n pub health <HTTP> { text_response(\"ok\") }\n}\n\n// \u5168\u5c40 + \u8ba4\u8bc1\nendpoint! {\n APP.url(\"/api/users\"),\n middleware = [.., auth_required],\n pub users <HTTP> { /* ... */ }\n}\n\n// \u4e09\u660e\u6cbb\u7ed3\u6784\uff1atiming \u5148\u6267\u884c\uff0c\u7136\u540e\u662f\u5168\u5c40\u4e2d\u95f4\u4ef6\uff0c\u6700\u540e\u662f\u7f13\u5b58\u68c0\u67e5\nendpoint! {\n APP.url(\"/api/cached\"),\n middleware = [timing, .., cache_layer],\n pub cached <HTTP> { /* ... */ }\n}\n\n// \u5b8c\u5168\u8df3\u8fc7\u5168\u5c40\u4e2d\u95f4\u4ef6\nendpoint! {\n APP.url(\"/raw\"),\n middleware = [custom_only],\n pub raw <HTTP> { /* ... */ }\n}\n
\n

.. \u4f1a\u5c55\u5f00\u4e3a\u4f60\u7684\u5168\u5c40\u4e2d\u95f4\u4ef6\u3002\u4f60\u53ef\u4ee5\u5728\u5b83\u524d\u9762\u3001\u540e\u9762\u6dfb\u52a0\u5185\u5bb9\uff0c\u6216\u8005\u5b8c\u5168\u8df3\u8fc7\u3002\u53ea\u9700\u67e5\u770b\u7aef\u70b9\u5b9a\u4e49\uff0c\u5c31\u80fd\u51c6\u786e\u77e5\u9053\u6bcf\u4e2a\u8def\u7531\u4f1a\u6267\u884c\u54ea\u4e9b\u4e2d\u95f4\u4ef6\u3002

\n

4. \u5355\u7aef\u53e3\u591a\u534f\u8bae

\n

\u8fd9\u6700\u521d\u662f\u4e00\u4e2a\u5b9e\u9a8c\uff0c\u540e\u6765\u6210\u4e3a\u4e86\u67b6\u6784\u7684\u6838\u5fc3\u3002Hotaru \u53ef\u4ee5\u5728\u540c\u4e00\u4e2a\u7aef\u53e3\u4e0a\u63d0\u4f9b HTTP \u3001WebSocket \u548c\u81ea\u5b9a\u4e49 TCP \u534f\u8bae\u670d\u52a1\u3002

\n

\uff08\u6211\u4eec\u5b9e\u9645\u4e0a\u6b63\u5728\u5c06\u8fd9\u90e8\u5206\u5c01\u88c5\u6210\u66f4\u7b80\u6d01\u7684\u5b8f\u2014\u2014\u65b0\u8bed\u6cd5\u5373\u5c06\u63a8\u51fa\uff09

\n
pub static APP: SApp = Lazy::new(|| {\n App::new()\n .binding(\"127.0.0.1:3000\")\n .handle(\n HandlerBuilder::new()\n .protocol(ProtocolBuilder::new(HTTP::server(HttpSafety::default())))\n .protocol(ProtocolBuilder::new(WebSocketProtocol::new()))\n .protocol(ProtocolBuilder::new(CustomProtocol::new()))\n )\n .build()\n});\n
\n

\u6846\u67b6\u4f1a\u68c0\u67e5\u4f20\u5165\u7684\u5b57\u8282\u5e76\u8def\u7531\u5230\u6b63\u786e\u7684\u5904\u7406\u5668\u3002REST API \u3001WebSocket \u3001\u81ea\u5b9a\u4e49\u4e8c\u8fdb\u5236\u534f\u8bae\u2014\u2014\u540c\u4e00\u7aef\u53e3\uff0c\u5171\u4eab\u72b6\u6001\u3002

\n

\u65e0\u8bba\u4ec0\u4e48\u534f\u8bae\uff0c\u5904\u7406\u5668\u770b\u8d77\u6765\u90fd\u4e00\u6837\uff1a

\n
endpoint! {\n APP.url(\"/chat\"),\n pub chat_http <HTTP> {\n html_response(include_str!(\"chat.html\"))\n }\n}\n\nendpoint! {\n APP.url(\"/chat\"),\n pub chat_ws <WebSocket> {\n // \u76f8\u540c URL \uff0c\u4e0d\u540c\u534f\u8bae\n ws.on_message(|msg| { /* ... */ }).await\n }\n}\n
\n

5. Akari\uff1a\u6211\u4eec\u7684\u8f85\u52a9 Crate

\n

\u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2a\u8f7b\u91cf\u7ea7\u5de5\u5177 crate \u53eb Akari \uff0c\u7528\u4e8e\u5904\u7406 JSON \u548c\u6a21\u677f\uff0c\u65e0\u9700\u5f15\u5165 serde \u3002object! \u5b8f\u53ef\u4ee5\u5185\u8054\u6784\u5efa JSON\uff1a

\n
json_response(object!({\n status: \"success\",\n data: {\n users: [{id: 1, name: \"Alice\"}, {id: 2, name: \"Bob\"}],\n total: 2\n }\n}))\n
\n

\u4e0d\u9700\u8981\u6d3e\u751f\u5b8f\uff0c\u4e0d\u9700\u8981\u4e3a\u4e34\u65f6\u54cd\u5e94\u5b9a\u4e49\u7ed3\u6784\u4f53\u3002\u5982\u679c\u4f60\u60f3\u7528 serde \u4e5f\u53ef\u4ee5\u2014\u2014\u4e0d\u662f\u7981\u6b62\u4f7f\u7528\uff0c\u53ea\u662f\u4e0d\u5f3a\u5236\u8981\u6c42\u3002

\n
\n

\u65e9\u671f\u6027\u80fd\u6570\u636e

\n

\u6211\u4eec\u8fdb\u884c\u4e86\u4e00\u4e9b\u521d\u6b65\u57fa\u51c6\u6d4b\u8bd5\uff0c\u4ee5\u9a8c\u8bc1\u5b8f\u65b9\u6cd5\u4e0d\u4f1a\u589e\u52a0\u8fd0\u884c\u65f6\u5f00\u9500\u3002\u8fd9\u4e9b\u662f\u5355\u673a\u4e0a\u7684\u65e9\u671f\u6570\u636e\u2014\u2014\u4ec5\u4f9b\u53c2\u8003\u65b9\u5411\uff0c\u4e0d\u4f5c\u4e3a\u5b9a\u8bba\u3002

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u6846\u67b6\u8bf7\u6c42\u6570/\u79d2 (JSON)\u76f8\u5bf9\u6027\u80fd
Hotaru173,254100%
Rocket171,90499.2%
Actix-web149,24486.1%
Axum148,93486.0%

\u5728 Apple M \u7cfb\u5217\u82af\u7247\u4e0a\u6d4b\u8bd5\uff0c\u5355\u7ebf\u7a0b\uff0c\u7b80\u5355 JSON \u54cd\u5e94\u3002\u6211\u4eec\u5c06\u5f88\u5feb\u53d1\u5e03\u5b8c\u6574\u7684\u6d4b\u8bd5\u65b9\u6cd5\u548c\u4ee3\u7801\u3002

\n

\u5b8f\u5c55\u5f00\u540e\u5c31\u662f\u4f60\u624b\u5199\u7684\u666e\u901a\u5f02\u6b65\u51fd\u6570\u3002\u7f16\u8bd1\u5668\u770b\u5230\u7684\u662f\u5c55\u5f00\u540e\u7684\u666e\u901a Rust \u4ee3\u7801\uff0c\u5e76\u76f8\u5e94\u5730\u8fdb\u884c\u4f18\u5316\u3002

\n
\n

\u8bbe\u8ba1\u7406\u5ff5\uff1a\u4e3a\u4ec0\u4e48\u7528\u5b8f\uff1f

\n

\u4f20\u7edf\u5c5e\u6027\u5b8f\u7684\u95ee\u9898

\n

\u5728\u5927\u591a\u6570 Rust Web \u6846\u67b6\u4e2d\uff0c\u7aef\u70b9\u914d\u7f6e\u662f\u8fd9\u6837\u7684\uff1a

\n
#[get(\"/users/<id>\")]\n#[middleware::auth]\n#[middleware::rate_limit(100)]\nasync fn get_user(...) -> impl Responder {\n // \u5904\u7406\u5668\u4ee3\u7801\n}\n\n// \u7136\u540e\u5728\u522b\u7684\u5730\u65b9\uff0c\u4f60\u8fd8\u9700\u8981\u6ce8\u518c\u5b83\uff1a\n// router.register(get_user)\n
\n

\u914d\u7f6e\u5206\u6563\u5728\u51fd\u6570\u4e0a\u65b9\u3002\u6ce8\u518c\u5728\u522b\u7684\u5730\u65b9\u3002\u8981\u7406\u89e3\u4e00\u4e2a\u7aef\u70b9\u505a\u4ec0\u4e48\u2014\u2014\u4ee5\u53ca\u5b83\u662f\u5426\u771f\u7684\u751f\u6548\u2014\u2014\u4f60\u9700\u8981\u68c0\u67e5\u591a\u4e2a\u5730\u65b9\u3002

\n

\u6211\u4eec\u7684\u65b9\u6cd5

\n

\u4e00\u4e2a\u4ee3\u7801\u5757\u3002\u4e00\u4e2a\u5730\u65b9\u3002URL \u3001\u4e2d\u95f4\u4ef6\u3001\u914d\u7f6e\u3001\u5904\u7406\u5668\u2014\u2014\u4ee5\u53ca\u81ea\u52a8\u6ce8\u518c\u3002

\n

\u6838\u5fc3\u7279\u6027

\n
    \n
  1. \n

    \u81ea\u52a8\u6ce8\u518c\uff1a\u5b9a\u4e49\u7aef\u70b9\u7684\u540c\u65f6\u5c31\u6ce8\u518c\u4e86\u3002\u4e0d\u9700\u8981\u624b\u52a8 router.register()\uff0c\u4e0d\u4f1a\u5fd8\u8bb0\u6ce8\u518c\uff0c\u4e0d\u7528\u5230\u5904\u627e\u8def\u7531\u5728\u54ea\u91cc\u7ec4\u88c5\u7684\u3002\u8fd9\u662f\u5927\u591a\u6570 Rust Web \u6846\u67b6\u7f3a\u5c11\u7684\u529f\u80fd\u3002

    \n
  2. \n
  3. \n

    \u4e00\u773c\u770b\u6e05\uff1a\u7aef\u70b9\u7684\u6240\u6709\u4fe1\u606f\u90fd\u5728\u4e00\u4e2a\u5730\u65b9\u53ef\u89c1\u3002

    \n
  4. \n
  5. \n

    \u4e2d\u95f4\u4ef6\u7ec4\u5408\uff1a\u501f\u9274 Rust \u7684\u7ed3\u6784\u4f53\u66f4\u65b0\u8bed\u6cd5\u2014\u2014\u51c6\u786e\u770b\u5230\u6bcf\u4e2a\u8def\u7531\u8fd0\u884c\u54ea\u4e9b\u4e2d\u95f4\u4ef6\u3002

    \n
  6. \n
  7. \n

    \u7b80\u5316\u7684\u4e2d\u95f4\u4ef6\u5b9a\u4e49\uff1a\u6ca1\u6709 trait \u6837\u677f\u4ee3\u7801\u3002

    \n
  8. \n
  9. \n

    \u591a\u534f\u8bae\u652f\u6301\uff1a\u76f8\u540c URL \uff0c\u4e0d\u540c\u534f\u8bae\u2014\u2014\u8bed\u6cd5\u4e00\u81f4\u3002

    \n
  10. \n
\n

\u6743\u8861\u4e0e\u8def\u7ebf\u56fe

\n

\u6211\u4eec\u627f\u8ba4\u5f53\u524d\u7684\u5c40\u9650\u6027\uff1a

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u5c40\u9650\u6027\u72b6\u6001
\u81ea\u5b9a\u4e49\u8bed\u6cd5\u6709\u5b66\u4e60\u66f2\u7ebf\u7f16\u8bd1\u4e3a\u6807\u51c6\u5f02\u6b65 Rust
rustfmt \u652f\u6301\u6709\u9650\u8ba1\u5212\u4e2d\uff1a\u81ea\u5b9a\u4e49\u683c\u5f0f\u5316\u5de5\u5177
IDE \u652f\u6301\u53c2\u5dee\u4e0d\u9f50\u5df2\u9488\u5bf9 rust-analyzer \u4f18\u5316

\u6211\u4eec\u6b63\u5728\u6784\u5efa\u4e00\u4e2a\u5b8c\u6574\u7684\u5de5\u5177\u94fe\u2014\u2014\u5305\u62ec\u6211\u4eec\u81ea\u5df1\u7684\u683c\u5f0f\u5316\u5de5\u5177\u548c\u589e\u5f3a\u7684 IDE \u652f\u6301\u3002Hotaru \u6b63\u5728\u4ece\u4e00\u4e2a\u6846\u67b6\u6f14\u53d8\u4e3a\u4e00\u4e2a\u5e26\u6709\u5b8c\u6574\u5de5\u5177\u7684 Web \u7aef\u70b9 DSL \u3002

\n

\u7f16\u8bd1\u65f6\u4fdd\u8bc1

\n

\u6240\u6709\u5b8f\u90fd\u5728\u7f16\u8bd1\u65f6\u5c55\u5f00\u3002\u96f6\u8fd0\u884c\u65f6\u5f00\u9500\u2014\u2014\u7f16\u8bd1\u5668\u5728\u5c55\u5f00\u540e\u770b\u5230\u7684\u662f\u666e\u901a Rust \u3002

\n
\n

\u5f53\u524d\u72b6\u6001

\n

\u6211\u4eec\u76ee\u524d\u662f v0.7 \u7248\u672c\uff0c\u8fd8\u5728\u8d77\u6b65\u9636\u6bb5\u3002API \u6b63\u5728\u8d8b\u4e8e\u7a33\u5b9a\u4f46\u8fd8\u6ca1\u6709\u51bb\u7ed3\u3002\u6587\u6863\u5728\u6539\u8fdb\u4e2d\u4f46\u4ecd\u6709\u7f3a\u53e3\u3002\u4e0e\u6210\u719f\u6846\u67b6\u76f8\u6bd4\uff0c\u751f\u6001\u7cfb\u7edf\u8fd8\u5f88\u5c0f\u3002

\n

\u5173\u4e8e\u6d4b\u8bd5\uff1a \u7531\u4e8e\u6211\u4eec\u7684\u6570\u636e\u5e93\u5b9e\u73b0\u4ecd\u7136\u975e\u5e38\u62bd\u8c61\uff0c\u76ee\u524d\u7684\u57fa\u51c6\u6d4b\u8bd5\u53ea\u80fd\u8986\u76d6\u57fa\u7840\u7684 HTTP \u54cd\u5e94\u573a\u666f\u3002\u6211\u4eec\u6b63\u5728\u5b8c\u5584\u6570\u636e\u5e93\u5c42\u7684\u8bbe\u8ba1\uff0c\u4e4b\u540e\u4f1a\u8fdb\u884c\u66f4\u5168\u9762\u7684\u6d4b\u8bd5\u3002

\n

\u6211\u4eec\u7684\u5b9a\u4f4d\u662f\u4e00\u4e2a\u5bf9\u8bed\u6cd5\u6709\u72ec\u7279\u89c1\u89e3\u7684\u6846\u67b6\u3002\u6211\u4eec\u8ba4\u4e3a\u5904\u7406\u5668\u4ee3\u7801\u5e94\u8be5\u8bfb\u8d77\u6765\u5c31\u50cf\u5b83\u505a\u7684\u4e8b\u60c5\u4e00\u6837\u76f4\u89c2\u3002

\n
\n

\u8bd5\u8bd5\u770b

\n
use hotaru::prelude::*;\nuse hotaru::http::*;\n\npub static APP: SApp = Lazy::new(|| {\n App::new().binding(\"127.0.0.1:3000\").build()\n});\n\nendpoint! {\n APP.url(\"/\"),\n pub index <HTTP> {\n text_response(\"Hello from Hotaru\")\n }\n}\n\n#[tokio::main]\nasync fn main() {\n APP.clone().run().await;\n}\n
\n

\u4ed3\u5e93\u5730\u5740\uff1a https://github.com/Field-of-Dreams-Studio/hotaru

\n

\u6587\u6863\uff1a https://fds.rs/hotaru/tutorial/0.7.3/

\n
\n

\u6211\u4eec\u60f3\u542c\u542c\u4f60\u7684\u770b\u6cd5

\n\n

\u6211\u4eec\u62bc\u6ce8\u7684\u662f\uff1a\u7528\u4e00\u70b9\u5b8f\u9b54\u6cd5\u6362\u53d6\u66f4\u5c11\u7684\u6837\u677f\u4ee3\u7801\u548c\u81ea\u52a8\u6ce8\u518c\u662f\u503c\u5f97\u7684\u3002

\n
\n

\u8d21\u732e

\n

\u6211\u4eec\u662f\u4e00\u4e2a\u5c0f\u56e2\u961f\uff0c\u6b63\u5728\u6784\u5efa\u4e00\u4e9b\u6709\u91ce\u5fc3\u7684\u4e1c\u897f\u3002\u5982\u679c\u4f60\u5bf9\u4ee5\u4e0b\u65b9\u9762\u611f\u5174\u8da3\uff1a

\n\n

\u6211\u4eec\u5f88\u4e50\u610f\u542c\u5230\u4f60\u7684\u58f0\u97f3\u3002\u8bbf\u95ee\u6211\u4eec\u7684 GitHub \u6216\u8005\u63d0 issue \u5f00\u59cb\u5bf9\u8bdd\u3002

\n", "date_published": "2026-01-06T02:55:48+00:00", "title": "Hotaru\uff1a\u4e00\u4e2a\u7406\u5ff5\u6784\u5efa\u7684 Rust Web \u6846\u67b6 \u2014 \u7aef\u70b9\u7684\u4e00\u5207\u90fd\u5e94\u8be5\u5728\u4e00\u8d77", "id": "t/1183437" } ] } ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86